Skip to main content

Documentor

An enterprise-grade AI documentation suite. It ingests a codebase, parses it semantically, generates accurate documentation using LLMs, and serves it via CLI, Web UI, and CI/CD pipelines.

Installation

Recommended Method (pipx)

Because Documentor is a standalone CLI tool, the best way to install it on modern Linux/macOS systems (which enforce PEP 668) is using pipx. This installs Documentor in an isolated environment while exposing the CLI globally.

# If you don't have pipx installed: python3 -m pip install --user pipx
pipx install documentor-ai

Alternative Methods

If you are inside an active virtual environment (like .venv/), you can use standard pip:

pip install documentor-ai

(Note: If you attempt this globally on newer Linux distributions without pipx, you will get an externally-managed-environment error. You can bypass this by appending --break-system-packages, though pipx is heavily preferred).

Upgrading an Existing Installation

To get the latest version (including new features like Interactive Chat), run the upgrade command corresponding to how you installed it:

# If you used pipx
pipx upgrade documentor-ai

# If you used standard pip
pip install --upgrade documentor-ai

BYO-LLM (Bring Your Own LLM)

Documentor uses LiteLLM under the hood, allowing you to use your preferred model (OpenAI, Anthropic, Gemini, DeepSeek, local models via Ollama, etc.).

Run the interactive setup command to configure your API keys:

documentor configure

(Alternatively, you can just export your keys directly in your terminal, e.g. export OPENAI_API_KEY="sk-...")

Usage

1. Command Line Interface (CLI)

To generate documentation for a repository, run:

documentor generate /path/to/your/repo --model gemini/gemini-3.6-flash

Note on Parsing: Documentor automatically ignores node_modules, dist, .env files, logs, and all .git ignored files by default. If you want to force Documentor to ignore specific files or folders, just create a .docignore file in the root of your project!

More Examples: Generate for the current directory (.) using Google's fast Gemini Flash model:

documentor generate . --model gemini/gemini-3.6-flash

Single/Multiple Specific Files: If you only want to generate or regenerate documentation for specific files (for instance, if you only updated a few files in a large project), you can specify them using the --file or -f flag. This will skip ARCHITECTURE.md and QUICKSTART.md and only document the targeted files:

documentor generate . -f src/main.py -f src/utils.py

Generate using Anthropic's Claude:

documentor generate . --model claude-3-5-sonnet-20240620

2. Chat with your Codebase (RAG)

Once the repository is indexed, you can ask questions about your codebase.

Interactive Chat Mode (Recommended): If you run chat without providing a specific question, it will drop you into an interactive terminal where you can chat continuously!

documentor chat --path . --model gemini/gemini-3.6-flash

Single Question Mode: If you just want a quick answer, you can provide the question directly:

documentor chat "How does the authentication system work?" --path . --model gemini/gemini-3.6-flash

3. Web UI (Playground)

Prefer a visual interface? Spin up the beautifully designed, glassmorphic Web UI:

documentor serve --port 8000

Then open http://localhost:8000 in your browser.

3. GitHub Action (CI/CD)

Documentor comes packaged as a lightning-fast Docker Action. You can automate documentation generation on your Pull Requests by creating .github/workflows/documentor.yml in your target repository:

name: Generate AI Docs
on:
  pull_request:
    branches: [ main ]
jobs:
  docs:
    runs-on: ubuntu-latest
    permissions:
      contents: write
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - uses: nirajmatere/documentor@main
        with:
          model: 'gemini/gemini-3.6-flash'
        env:
          GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
      - run: |
          git config --global user.name 'github-actions[bot]'
          git config --global user.email 'github-actions[bot]@users.noreply.github.com'
          git add documentor_docs/
          git commit -m "docs: Auto-update AI documentation" || echo "No changes to commit"
          git push

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

documentor_ai-0.1.12.tar.gz (20.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

documentor_ai-0.1.12-py3-none-any.whl (21.7 kB view details)

Uploaded Python 3

File details

Details for the file documentor_ai-0.1.12.tar.gz.

File metadata

  • Download URL: documentor_ai-0.1.12.tar.gz
  • Upload date:
  • Size: 20.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for documentor_ai-0.1.12.tar.gz
Algorithm Hash digest
SHA256 da490a1d2c9aca195dafb179fe39256016b5b947f439bf8340a37d4727f9ce93
MD5 8403a8f32899720f5e34cc8d322e9506
BLAKE2b-256 4e59bfcdff0859fdd87e2d21604e736d134afb1cb2dc25f6001eed45e41260bc

See more details on using hashes here.

File details

Details for the file documentor_ai-0.1.12-py3-none-any.whl.

File metadata

  • Download URL: documentor_ai-0.1.12-py3-none-any.whl
  • Upload date:
  • Size: 21.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for documentor_ai-0.1.12-py3-none-any.whl
Algorithm Hash digest
SHA256 7d4c974843aa883e2388fc79c7292bfa769fb7750312c776ea47048bd40f4fff
MD5 99b03d8e2ca3cf0b297f258abfd1c8a1
BLAKE2b-256 75dc7f305064517e4eb5e4261290d25460299b1c9e3018714a015d89dc49a2e3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page