跳至主要内容
小龙虾小龙虾AI
🤖

DocSync

Generate and auto-sync documentation from code with git hooks; detect and fix doc drift using tree-sitter parsing and semantic diffs locally.

下载406
星标0
版本1.0.1
开发工具
安全通过
💬Prompt

技能说明


name: docsync description: Auto-generate docs from code and detect documentation drift via git hooks. Free README gen + paid living docs. homepage: https://docsync.pages.dev metadata: { "openclaw": { "emoji": "📖", "primaryEnv": "DOCSYNC_LICENSE_KEY", "requires": { "bins": ["git", "bash"] }, "install": [ { "id": "lefthook", "kind": "brew", "formula": "lefthook", "bins": ["lefthook"], "label": "Install lefthook (git hooks manager)" }, { "id": "tree-sitter", "kind": "brew", "formula": "tree-sitter", "bins": ["tree-sitter"], "label": "Install tree-sitter (code parser)" }, { "id": "difftastic", "kind": "brew", "formula": "difftastic", "bins": ["difft"], "label": "Install difftastic (semantic diff)" } ], "os": ["darwin", "linux", "win32"] } } user-invocable: true disable-model-invocation: false

DocSync — Living Documentation for Your Codebase

DocSync generates documentation from your code and keeps it in sync automatically. It uses tree-sitter for multi-language AST parsing, lefthook for git hook integration, and difftastic for semantic change detection.

Commands

Free Tier (No license required)

docsync generate <file-or-directory>

Generate a one-shot README or API doc for a single file or directory.

How to execute:

bash "<SKILL_DIR>/scripts/docsync.sh" generate <target>

What it does:

  1. Parses the target file(s) with tree-sitter to extract symbols (functions, classes, exports, types, interfaces)
  2. Applies the appropriate template from <SKILL_DIR>/templates/
  3. Generates a markdown documentation file alongside the source

Example usage scenarios:

  • "Generate docs for src/utils/auth.ts" → runs docsync generate src/utils/auth.ts
  • "Document this whole directory" → runs docsync generate src/api/
  • "Create a README for this project" → runs docsync generate .

Pro Tier ($29/user/month — requires DOCSYNC_LICENSE_KEY)

docsync drift [directory]

Scan for documentation drift — find where code has changed but docs haven't been updated.

How to execute:

bash "<SKILL_DIR>/scripts/docsync.sh" drift [directory]

What it does:

  1. Validates license key from config
  2. Parses all source files with tree-sitter
  3. Compares extracted symbols against existing documentation
  4. Reports: new undocumented symbols, changed signatures with stale docs, deleted symbols still in docs
  5. Outputs a drift report with severity levels (critical/warning/info)

docsync hooks install

Install git hooks that automatically check for doc drift on every commit.

How to execute:

bash "<SKILL_DIR>/scripts/docsync.sh" hooks install

What it does:

  1. Validates Pro+ license
  2. Copies lefthook config to project root
  3. Installs lefthook pre-commit hook
  4. On every commit: analyzes staged files, blocks commit if critical drift detected, offers auto-regen

docsync hooks uninstall

Remove DocSync git hooks.

bash "<SKILL_DIR>/scripts/docsync.sh" hooks uninstall

docsync auto-fix [directory]

Auto-regenerate stale documentation for files with detected drift.

bash "<SKILL_DIR>/scripts/docsync.sh" auto-fix [directory]

Team Tier ($49/user/month — requires DOCSYNC_LICENSE_KEY with team tier)

docsync onboarding [directory]

Generate a comprehensive onboarding guide for new developers.

bash "<SKILL_DIR>/scripts/docsync.sh" onboarding [directory]

docsync architecture [directory]

Generate architecture documentation showing module relationships and data flow.

bash "<SKILL_DIR>/scripts/docsync.sh" architecture [directory]

Supported Languages

DocSync uses tree-sitter grammars and supports:

  • JavaScript / TypeScript (including JSX/TSX)
  • Python
  • Rust
  • Go
  • Java
  • C / C++
  • Ruby
  • PHP
  • C#
  • Swift
  • Kotlin

Configuration

Users can configure DocSync in ~/.openclaw/openclaw.json:

{
  "skills": {
    "entries": {
      "docsync": {
        "enabled": true,
        "apiKey": "YOUR_LICENSE_KEY_HERE",
        "config": {
          "outputDir": "docs",
          "templateOverrides": {},
          "excludePatterns": ["**/node_modules/**", "**/dist/**", "**/.git/**"],
          "languages": ["typescript", "python", "go"],
          "driftThreshold": "warning",
          "autoFix": false
        }
      }
    }
  }
}

Important Notes

  • Free tier works immediately with no configuration
  • Pro/Team tiers require a license key from https://docsync.pages.dev
  • All processing happens locally — no code is sent to external servers
  • License validation is offline — no network calls needed
  • Git hooks use lefthook which must be installed (see install metadata above)
  • tree-sitter and difftastic are optional but recommended for best results; the skill falls back to regex-based parsing if unavailable

Error Handling

  • If tree-sitter is not installed, fall back to regex-based symbol extraction (less accurate but functional)
  • If lefthook is not installed and user tries hooks install, prompt to install it
  • If license key is invalid or expired, show clear message with link to https://docsync.pages.dev/renew
  • If a language grammar is not available, skip that file with a warning

When to Use DocSync

The user might say things like:

  • "Generate docs for this file/project"
  • "Are my docs up to date?"
  • "Check for documentation drift"
  • "Set up auto-docs on my commits"
  • "Create an onboarding guide"
  • "Document the architecture"
  • "What's undocumented in this codebase?"

如何使用「DocSync」?

  1. 打开小龙虾AI(Web 或 iOS App)
  2. 点击上方「立即使用」按钮,或在对话框中输入任务描述
  3. 小龙虾AI 会自动匹配并调用「DocSync」技能完成任务
  4. 结果即时呈现,支持继续对话优化

相关技能