Files
cleveragents-core/docs/development/docs-writer.md
T
HAL9000 c76433f756
CI / lint (pull_request) Successful in 39s
CI / push-validation (pull_request) Successful in 29s
CI / build (pull_request) Successful in 35s
CI / helm (pull_request) Successful in 34s
CI / quality (pull_request) Successful in 45s
CI / security (pull_request) Successful in 57s
CI / typecheck (pull_request) Successful in 1m4s
CI / e2e_tests (pull_request) Successful in 3m19s
CI / integration_tests (pull_request) Successful in 4m12s
CI / unit_tests (pull_request) Successful in 5m20s
CI / docker (pull_request) Successful in 11s
CI / coverage (pull_request) Successful in 13m7s
CI / status-check (pull_request) Successful in 9s
CI / benchmark-publish (pull_request) Has been cancelled
CI / benchmark-regression (pull_request) Has been cancelled
docs(tracking): document automation-tracking-manager centralization
2026-04-11 00:40:19 +00:00

3.8 KiB

Documentation Writer Agent

Agent: docs-writer Tracking Prefix: AUTO-DOCS Reporting Interval: Every 10 cycles (~3.3 hours)

The docs-writer agent is a continuous documentation monitoring and generation service. It runs in an isolated clone of the repository, polls for merged code and milestone completions, and keeps project documentation current without human intervention.


Responsibilities

Task Output
README updates README.md — new features appended to Highlights
API documentation docs/api/ — one file per module
Architecture overview docs/architecture.md — component map, data flow
Changelog entries CHANGELOG.md — Keep-a-Changelog format
Module documentation docs/modules/ — per-module usage guides

The agent extends existing documentation; it never overwrites content that is already accurate.


Monitoring Loop

last_sha = master HEAD
cycle = 0

LOOP:
    cycle += 1

    # Create tracking issue every 10 cycles
    if cycle % 10 == 0:
        automation-tracking-manager: CREATE_TRACKING_ISSUE
          agent_prefix: AUTO-DOCS
          tracking_type: Documentation Report

    # Pull latest code
    git fetch && git reset --hard origin/master
    current_sha = HEAD

    if current_sha == last_sha and cycle > 1:
        sleep 20 minutes
        continue

    last_sha = current_sha

    # Check for documentation-worthy changes
    query recently merged PRs
    check milestone completions
    run_docs_update() if changes found

    sleep 20 minutes

The agent uses sleep 1200 (20-minute intervals) between cycles and never voluntarily exits.


Automation Tracking

The docs-writer participates in the Automation Tracking System via the automation-tracking-manager subagent.

Tracking Issue Format

Title: [AUTO-DOCS] Documentation Report (Cycle N)

Default label (applied automatically by the manager):

Label Purpose
Automation Tracking Enables system-watchdog health monitoring

Additional labels (for example Type/Automation, State/In Progress, or Priority/Medium) can be added manually when teams need extra filtering, but they are optional and not applied by the manager today.

Cleanup Protocol

The automation-tracking-manager handles all cleanup:

  1. Finds the previous open [AUTO-DOCS] Documentation Report (Cycle N) issue
  2. Posts a closure comment
  3. Closes the issue
  4. Creates the new tracking issue with the Automation Tracking label

Announcement issues ([AUTO-DOCS] Announce: …) are never deleted.


Documentation Standards

All documentation produced by this agent follows the project's CONTRIBUTING.md documentation standards:

  • Continuous documentation — updated alongside code, not after the fact
  • Single documentation surface — one canonical location per doc type
  • Traceability — logical references, not line numbers
  • MkDocs-compatible — all files are valid MkDocs Markdown

Clone Isolation

The agent always works in an isolated clone at /tmp/docs-writer-<instance-id>/. It never modifies files in /app or any shared directory. The clone is deleted on exit (including on error).

Push conflicts are resolved with git pull --rebase origin master && git push. After five consecutive push failures the clone is deleted and re-cloned fresh.

Since master is a protected branch, all documentation changes are submitted as pull requests from a feature branch.