Your docs are lying.
doqtor keeps them honest.

Detects documentation drift after code changes and opens PRs with fixes. Automatic. Precise. Zero manual work.

Get started in seconds
$ npm install -g @doqtor/cli

What It Catches

Every drift type includes a confidence score so reviewers can prioritize.

Signature Mismatch

Detects when function parameters or return types changed but docs still show the old signature.

createUser(name, email) createUser(name)

Removed Symbol

Finds documentation referencing functions, classes, or types that no longer exist in the codebase.

getUserById() // deleted

Renamed Symbol

Catches symbols that were renamed in code but docs still reference the old name.

getUsersfetchUsers

Outdated Example

Spots code examples in docs that call functions with wrong parameters or outdated patterns.

connect(host, port) connect({ host, port })

How It Works

From PR merge to docs fix in seconds. No full-repo scans — only processes what changed.

01

PR Merged

A pull request merges into your repo. GitHub sends a webhook event.

02

Diff Analysis

Doqtor parses the diff and extracts changed functions, parameters, and types using AST analysis.

03

Doc Matching

Scans your configured documentation paths for references to the changed symbols.

04

Drift Detection

Compares code changes against docs to find mismatches, with confidence scoring for each.

05

Fix & PR

Generates patches and opens a pull request with the documentation fixes for your review.

Quick Start

CLI Local Usage

terminal
$ npm install -g @doqtor/cli

# Initialize config
$ doqtor init

# Check for drift
$ doqtor check

# Apply fixes
$ doqtor fix

# Preview without applying
$ doqtor fix --dry-run

GitHub App Automated

terminal
# Clone and configure
$ git clone https://github.com/cachevector/doqtor.git
$ cd doqtor
$ cp .env.example .env

# Edit .env with your GitHub App credentials
$ bun install

# Start the webhook server
$ bun run --cwd apps/backend dev

The backend listens for pull_request.closed webhook events and runs the full pipeline when a PR is merged.

Ready to keep your docs honest?

Read the full documentation to set up doqtor for your project.