Skip to main content

doc-updater

Review and update living documents using LLMs. Designed to run via GitHub Actions to periodically check if your documentation is outdated and create PRs with updates.

Features

  • Front-matter driven: Documents opt-in to review via auto_review: true
  • Custom prompts: Each document can specify what to focus on
  • Obsidian compatible: Standard YAML front-matter works everywhere
  • GitHub Actions ready: Includes workflow for automated PR creation
  • Pluggable providers: Start with Claude, add others as needed

Installation

# Using uv
uv pip install doc-updater

# Or from source
git clone https://github.com/your-org/doc-updater
cd doc-updater
uv pip install -e .

Quick Start

1. Add front-matter to your documents

---
auto_review: true
review_prompt: |
  Review this document for outdated information.
  Focus on the "Alternatives" section.
review_context: |
  This is a technical comparison for our engineering team.
last_reviewed: 2024-06-15
review_interval_days: 30
---

# Your Document Title

Your content here...

2. Run the review

# Set your API key
export ANTHROPIC_API_KEY=sk-ant-...

# Review all documents in a directory
doc-updater review ./docs

# Dry run (no changes)
doc-updater review ./docs --dry-run

# Review a single file
doc-updater review ./docs/platform-comparison.md

3. List documents due for review

doc-updater list ./docs

Front-Matter Schema

Field Type Required Description
auto_review boolean Yes Enable automatic review
review_prompt string No Custom prompt for this document
review_context string No Additional context for the LLM
last_reviewed date No Updated automatically after review
review_interval_days integer No Days between reviews (default: 30)

GitHub Actions Setup

1. Add the workflow

Copy .github/workflows/doc-review.yml to your repository.

2. Set up secrets

Add ANTHROPIC_API_KEY to your repository secrets.

3. Configure the schedule

Edit the cron expression in the workflow to set your review frequency:

on:
  schedule:
    - cron: "0 0 1 * *"  # Monthly on the 1st

4. Manual trigger

You can also trigger reviews manually from the Actions tab.

CLI Reference

Usage: doc-updater [OPTIONS] COMMAND [ARGS]...

Commands:
  review   Review and update documents marked with auto_review: true
  list     List all documents marked for auto-review
  version  Show version information

Options:
  --help  Show this message and exit

review

Usage: doc-updater review [OPTIONS] PATH

Arguments:
  PATH  Directory or file to review  [required]

Options:
  -p, --provider [claude]   LLM provider to use  [default: claude]
  -m, --model TEXT          Model to use (provider-specific)
  -n, --dry-run             Show what would be changed without modifying files
  -r, --recursive           Search for documents recursively  [default: True]
  -v, --verbose             Show detailed output
  -d, --debug               Enable debug logging
  --help                    Show this message and exit

Development

# Clone and install dev dependencies
git clone https://github.com/your-org/doc-updater
cd doc-updater
uv sync --group dev

# Run tests
uv run pytest

# Format code
uv run black src tests
uv run ruff check --fix src tests

License

MIT

Metadata

Release files for doc-updater 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for doc-updater 0.2.0
File Size Uploaded Provenance
doc_updater-0.2.0.tar.gz 39.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for doc-updater 0.2.0
File Interpreter ABI Platform
doc_updater-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 53.8 kB

Release files / doc_updater-0.2.0.tar.gz

Download URL doc_updater-0.2.0.tar.gz
Size 39.7 kB
Tags Source
SHA-256 checksum
How to use checksums
e6d6229d0750c8495de7292488f4bcb081d3c1e856d5ba0357b753ac99ac004d
BLAKE2b-256 checksum
How to use checksums
da7714c5c43980d0892e663b2f0e33ca04af2e1f8d92ce16ed58bf7a4feb372e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / doc_updater-0.2.0-py3-none-any.whl

Download URL doc_updater-0.2.0-py3-none-any.whl
Size 14.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c746aed204ea5ef0b842d2afd346d575a063bf3dd7d3b2dec15f7473140e40c2
BLAKE2b-256 checksum
How to use checksums
59cf262e55017fbf503363f1ff75aa3192f9277ea039006123de4af96f1c1dfc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for doc-updater 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page