Skip to content

DocPulse v1.0.0

Choose a tag to compare

@YoniRaviv YoniRaviv released this 12 Jun 08:12
· 21 commits to main since this release
dc31be1

Docs that stay in sync with the heartbeat of the codebase.

DocPulse detects documentation sections invalidated by a pull request's code changes and commits surgical fixes directly onto the PR branch. A deterministic layer (tree-sitter chunking → code↔doc link graph → diff-driven suspect selection) decides what to check; a bounded agentic layer (an LLM verifier with read/grep tools, then a style-preserving repairer with a validation pass) decides stale or not, and how to fix it.

Highlights

  • CI-native — ships as a GitHub Action (uses: YoniRaviv/DocPulse@v1) and a public container image for any other CI (ghcr.io/yoniraviv/docpulse).
  • Language-agnostic — tree-sitter chunking validated across Python, TypeScript, and C#.
  • Two modescheck comments on drift; repair commits the doc fix straight onto the PR branch (self-skips to avoid re-trigger loops).
  • Keyless optionheuristics-only: true builds the link graph from name mentions, no embedding key required.
  • Any modelmodel: accepts any LiteLLM string (Anthropic, OpenAI, …).

Usage

- uses: YoniRaviv/DocPulse@v1
  with:
    mode: repair
  env:
    ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
    OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
    GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
    DOCPULSE_PR_NUMBER: ${{ github.event.pull_request.number }}

See the README for configuration and the CLI.