Business Tracker
Auto-extract, continuously track, and maintain living documentation of business logic from any codebase.
Works with any tech stack: Flutter, Node.js, Go, Python, Java/Kotlin, .NET, Rust, Ruby, PHP, iOS (Swift/Objective-C).
How It Works
Trigger via /business-tracker + natural language. The skill matches user intent to the right command:
| User says |
Action |
Command file |
| "scan business logic", "biz scan", "scan src/services/" |
Scan |
commands/biz-scan.md |
| "record business change", "biz update", "update business docs" |
Track change |
commands/biz-update.md |
| "what's the payment rule?", "biz query", "query business rules" |
Query |
commands/biz-query.md |
| "关联 openspec", "link openspec", "biz link" |
Link to OpenSpec |
commands/biz-link-openspec.md |
Intent matching:
- Contains "scan" → run scan (if a path follows, scope to that path)
- Contains "record", "update", "change" → track a change
- Contains "query", "what rule", "how does X work" → query rules
- Contains "关联", "link" + "openspec" → link biz docs to openspec
- Ambiguous → ask the user
On receiving a command: read the corresponding file under this skill's commands/ directory and follow its instructions. Scan strategy and detection rules live in references/ — load them on demand, not upfront.
Output Structure
biz_scan/
├── index.md # Master index (project overview + module list)
├── modules/
│ ├── <module_name>.md # Detailed rules per business module
│ └── ...
├── changelog.md # Business change history (append-only)
└── .scan-cache.json # Scan cache (git hash + progress, do not edit)
Progressive Disclosure (@ references)
index.md contains only the project overview + one-line summary per module + @biz_scan/modules/xxx.md reference
- Queries load
index.md first, then only the relevant module file(s)
- Each module file is self-contained and small — context-friendly
Commit everything to Git for team sharing.
Core Principles
- Cover every rule — Every flow, every branch, every constraint gets documented. Not a high-level summary.
- Write product docs, not code manuals — Organize by process steps and natural language, not by code structure.
- Flows first, rules second — Describe end-to-end flows (numbered steps) before listing standalone rules.
- Don't repeat what code already tells you — Skip class names, field lists, method signatures, API params. Only keep entry-point file paths.
- Auto-split large files — When a module exceeds 150 lines, auto-split into sub-files by business topic.
- Record the why, not just the what — If the reason is unknown, mark it "reason TBD".
- Mark uncertainty — Uncertain rules get a
[speculative] tag. Encourage human confirmation.
- Transparent coverage — After scanning, report exactly what was scanned, skipped, and remaining.
- Human-AI collaboration — Auto-generate the first draft; encourage manual edits and additions.
- Match user's language — All generated documentation (index.md, module files, changelog, coverage report, progress output) MUST be written in the same language the user used to invoke the command. If the user writes in Chinese, all docs are in Chinese. If in English, all docs are in English. Code identifiers (class names, file paths, variable names) always stay in their original form.
Supported Stacks
The skill auto-detects project type and loads only the relevant scan rules:
- Mobile: Flutter/Dart, iOS (Swift/Objective-C)
- Frontend: React/Vue/Angular (TypeScript/JavaScript)
- Backend: Node.js, Go, Python (Django/FastAPI), Java/Kotlin (Spring), .NET, Rust, Ruby (Rails), PHP (Laravel)
- Monorepo: Detects each subdirectory independently
Reference Files
| File |
Content |
When to load |
references/scan-rules/common.md |
Project type detection, business signal patterns, batching strategy, cache format |
biz-scan and biz-update |
references/scan-rules/<stack>.md |
Stack-specific file priority rules (e.g., flutter.md, node.md) |
After detecting project type |
references/index-template.md |
Template for index.md |
First-time doc generation |
references/module-template.md |
Template for module files (single-file format) |
Creating new module files |
references/module-index-template.md |
Template for split module index |
When module exceeds 150 lines and needs splitting |
references/module-subfile-template.md |
Template for split module sub-topic files |
Creating sub-topic files under split modules |
references/changelog-template.md |
Template for changelog entries |
biz-update |
1---2name: business-tracker-23description: Auto-extract business logic from any codebase into living documentation. Scans code to discover business rules, tracks changes across sessions, and maintains always-up-to-date rule docs organized by module. Supports Flutter, Node.js, Go, Python, Java, .NET, Rust, Ruby, PHP, iOS. Triggers: 'biz scan', 'biz-scan', 'scan business logic', 'biz update', 'record business change', 'biz query', 'document business logic'. Use this skill when the user explicitly wants to scan, extract, document, or track business rules in a codebase. Do NOT trigger for general code questions, debugging, or feature development — only when the user's intent is specifically about business logic documentation.4---56# Business Tracker78Auto-extract, continuously track, and maintain living documentation of business logic from any codebase.910Works with any tech stack: Flutter, Node.js, Go, Python, Java/Kotlin, .NET, Rust, Ruby, PHP, iOS (Swift/Objective-C).1112## How It Works1314Trigger via `/business-tracker` + natural language. The skill matches user intent to the right command:1516| User says | Action | Command file |17|-----------|--------|-------------|18| "scan business logic", "biz scan", "scan src/services/" | Scan | `commands/biz-scan.md` |19| "record business change", "biz update", "update business docs" | Track change | `commands/biz-update.md` |20| "what's the payment rule?", "biz query", "query business rules" | Query | `commands/biz-query.md` |21| "关联 openspec", "link openspec", "biz link" | Link to OpenSpec | `commands/biz-link-openspec.md` |2223**Intent matching:**24- Contains "scan" → run scan (if a path follows, scope to that path)25- Contains "record", "update", "change" → track a change26- Contains "query", "what rule", "how does X work" → query rules27- Contains "关联", "link" + "openspec" → link biz docs to openspec28- Ambiguous → ask the user2930**On receiving a command:** read the corresponding file under this skill's `commands/` directory and follow its instructions. Scan strategy and detection rules live in `references/` — load them on demand, not upfront.3132## Output Structure3334```35biz_scan/36├── index.md # Master index (project overview + module list)37├── modules/38│ ├── <module_name>.md # Detailed rules per business module39│ └── ...40├── changelog.md # Business change history (append-only)41└── .scan-cache.json # Scan cache (git hash + progress, do not edit)42```4344### Progressive Disclosure (`@` references)4546- `index.md` contains only the project overview + one-line summary per module + `@biz_scan/modules/xxx.md` reference47- Queries load `index.md` first, then only the relevant module file(s)48- Each module file is self-contained and small — context-friendly4950Commit everything to Git for team sharing.5152## Core Principles53541. **Cover every rule** — Every flow, every branch, every constraint gets documented. Not a high-level summary.552. **Write product docs, not code manuals** — Organize by process steps and natural language, not by code structure.563. **Flows first, rules second** — Describe end-to-end flows (numbered steps) before listing standalone rules.574. **Don't repeat what code already tells you** — Skip class names, field lists, method signatures, API params. Only keep entry-point file paths.585. **Auto-split large files** — When a module exceeds 150 lines, auto-split into sub-files by business topic.596. **Record the why, not just the what** — If the reason is unknown, mark it "reason TBD".607. **Mark uncertainty** — Uncertain rules get a `[speculative]` tag. Encourage human confirmation.618. **Transparent coverage** — After scanning, report exactly what was scanned, skipped, and remaining.629. **Human-AI collaboration** — Auto-generate the first draft; encourage manual edits and additions.6310. **Match user's language** — All generated documentation (index.md, module files, changelog, coverage report, progress output) MUST be written in the same language the user used to invoke the command. If the user writes in Chinese, all docs are in Chinese. If in English, all docs are in English. Code identifiers (class names, file paths, variable names) always stay in their original form.6465## Supported Stacks6667The skill auto-detects project type and loads only the relevant scan rules:6869- **Mobile:** Flutter/Dart, iOS (Swift/Objective-C)70- **Frontend:** React/Vue/Angular (TypeScript/JavaScript)71- **Backend:** Node.js, Go, Python (Django/FastAPI), Java/Kotlin (Spring), .NET, Rust, Ruby (Rails), PHP (Laravel)72- **Monorepo:** Detects each subdirectory independently7374## Reference Files7576| File | Content | When to load |77|------|---------|-------------|78| `references/scan-rules/common.md` | Project type detection, business signal patterns, batching strategy, cache format | biz-scan and biz-update |79| `references/scan-rules/<stack>.md` | Stack-specific file priority rules (e.g., `flutter.md`, `node.md`) | After detecting project type |80| `references/index-template.md` | Template for index.md | First-time doc generation |81| `references/module-template.md` | Template for module files (single-file format) | Creating new module files |82| `references/module-index-template.md` | Template for split module index | When module exceeds 150 lines and needs splitting |83| `references/module-subfile-template.md` | Template for split module sub-topic files | Creating sub-topic files under split modules |84| `references/changelog-template.md` | Template for changelog entries | biz-update |