Skip to main content

Automatic README documentation bot for Odoo custom modules

Project description

odoo-readme-bot

Automatically detects outdated README files in Odoo custom module repositories and regenerates them using the Claude API. Designed to run as a scheduled GitLab CI job (once per day) on client repositories managed by Jarsa.

Features

  • SHA-based tracking — only processes modules that changed since the last documented commit
  • Two-model cost optimization — Claude Haiku decides if update is needed, Claude Sonnet generates
  • Bilingual output — technical English + functional Spanish per module
  • CI-friendly — exit code 42 when READMEs were updated, enabling downstream steps
  • Dry-run mode — analyze without writing files or pushing

Installation

pip install odoo-readme-bot

Usage

export ANTHROPIC_API_KEY="sk-ant-..."

# From any Odoo client repo root:
odoo-readme-bot run

# Dry run (no writes, no git ops):
odoo-readme-bot run --dry-run

# Force update all modules:
odoo-readme-bot run --force

# Single module only:
odoo-readme-bot run --module path/to/module_name

GitLab CI Integration

auto-update-readme:
  stage: auto-docs
  image: python:3.11-slim
  script:
    - pip install odoo-readme-bot -q
    - odoo-readme-bot run
  rules:
    - if: '$CI_PIPELINE_SOURCE == "schedule"'
  allow_failure: true

Required CI/CD variables:

Variable Description
ANTHROPIC_API_KEY Claude API key (protected, masked)
GITLAB_TOKEN Token with write_repository scope (protected, masked)

Exit Codes

Code Meaning
0 Success, no changes needed
42 Success, one or more READMEs updated and pushed
1 Unrecoverable error

License

MIT — Jarsa

Project details


Download files

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

Source Distribution

odoo_readme_bot-1.0.0.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

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

odoo_readme_bot-1.0.0-py3-none-any.whl (15.1 kB view details)

Uploaded Python 3

File details

Details for the file odoo_readme_bot-1.0.0.tar.gz.

File metadata

  • Download URL: odoo_readme_bot-1.0.0.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for odoo_readme_bot-1.0.0.tar.gz
Algorithm Hash digest
SHA256 ac3eb02617ef3894b012ce5a54d1092ec9fe23b656d5c570b95b7ecccdd614aa
MD5 0b0838a6e717884f30d600f5d8d980d1
BLAKE2b-256 08a91d4a6b260f21a7dc31d932c5d99d7a7388eea92b1a854d76915f4f48f2bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for odoo_readme_bot-1.0.0.tar.gz:

Publisher: publish.yml on Jarsa/odoo-readme-bot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file odoo_readme_bot-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for odoo_readme_bot-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cadf6995ad9e7215117f74921ec8fe34e30d81739318404279e8e1d804102433
MD5 8fa866369fe6afafd83d23882086b4d7
BLAKE2b-256 cc748f7fb996316e666764ec421c2fa5e76a1f3230973647ecb7b4e3c0e8a378

See more details on using hashes here.

Provenance

The following attestation bundles were made for odoo_readme_bot-1.0.0-py3-none-any.whl:

Publisher: publish.yml on Jarsa/odoo-readme-bot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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