一键导入
uw-help
Use when starting any reverse engineering task - establishes how to find and use Unwind skills for codebase analysis, service mapping, and documentation
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when starting any reverse engineering task - establishes how to find and use Unwind skills for codebase analysis, service mapping, and documentation
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use after unwind:uw-plan to EXECUTE the rebuild — interview the user about scope/order/target, dispatch technology-agnostic per-layer builder agents that reproduce the [MUST] contracts in the target stack, hold rebuild state in a local file, and maintain a source→target verification graph that measures completeness. Supports a loop-until-verified mode.
Use to visually explore the rebuild knowledge graph. Builds and launches the Unwind dashboard (React + React Flow + ELK) pointed at docs/unwind/rebuild-graph.json with coverage, priority, and contract views.
Optional. Publish the Unwind dashboard to the scanned project's GitHub Pages gh-pages branch so it's viewable at https://<owner>.github.io/<repo>/unwind/. Builds the dashboard at the correct sub-path and commits it into an `unwind/` subdir — never blatting an existing gh-pages branch. Confirms the target, then pushes.
Use when dispatched by unwind:uw-build to rebuild ONE layer/slice of a codebase in the target stack. Technology-agnostic builder that reproduces the layer's [MUST] contracts (API surface, data model, business rules) as idiomatic target-stack code and records the source→target mapping for verification.
Use after layer analysis is complete to interview the user about the rebuild strategy (target stack, what to keep vs rebuild, phasing, risk) and generate a data-grounded REBUILD-PLAN.md that records those decisions.
Start here. The entry point for reverse-engineering a codebase with Unwind — orients you, checks prerequisites, handles restart vs update, then runs the rebuild pipeline (scan → analyze → plan → dashboard) with a checkpoint at each phase. Use when beginning Unwind on a repo, or when unsure which uw- skill to run first.
| name | uw-help |
| description | Use when starting any reverse engineering task - establishes how to find and use Unwind skills for codebase analysis, service mapping, and documentation |
| allowed-tools | ["Read","Grep","Glob"] |
Unwind provides structured skills for reverse engineering codebases. Produces complete, machine-readable documentation with source links.
Unwind is hybrid: a deterministic scanner (@unwind/core, tree-sitter) builds
the verifiable ground truth — file inventory, structural symbols, import graph,
and a first-pass layer assignment — and the LLM specialists add the semantic
rebuild documentation (business logic, contracts, MUST/SHOULD/DON'T). Completeness
is then verified by set arithmetic, not asserted.
The scanner is built on first use (the skills run pnpm install && pnpm build
automatically via ensure_unwind_core). To pre-build manually:
pnpm install && pnpm build
Supported languages for symbol extraction: TypeScript/JavaScript, Python, Rust, Java, C#. Other languages still get full file-level coverage (graceful degradation), and if Node/pnpm is unavailable Unwind falls back to a pure-LLM flow.
See analysis-principles.md:
### name [MUST] <!-- id: ... --> so coverage is checked mechanicallyuw-start → entry point: orient, check prereqs, drive the pipeline
│
uw-scan → scan.mjs → scan-manifest.json (ground truth)
│ → architecture.md (derived + unassigned adjudicated)
│
uw-analyze
├── seed-layers.mjs → .cache/seeds/{layer}.json (candidate checklists)
│
├── uw-analyze-database → database/ (seeded)
├── uw-analyze-domain → domain-model/ (seeded)
├── uw-analyze-service → service-layer/ (seeded)
├── uw-analyze-api → api/ (seeded)
├── uw-analyze-messaging → messaging/ (if present)
├── uw-analyze-frontend → frontend/ (if present)
├── uw-analyze-unit-tests → unit-tests/
├── uw-analyze-integration-tests → integration-tests/
├── uw-analyze-e2e-tests → e2e-tests/
└── uw-analyze-infrastructure → infrastructure/ (seeded)
│
verify-coverage.mjs → DETERMINISTIC diff (manifest − docs)
│ → .cache/coverage/{layer}.json + gaps.md (missing items)
│
uw-complete → fills gaps.md, deletes it
│ (loop verify → complete until 100% coverage)
│
uw-plan → REBUILD-PLAN.md (strategic rebuild approach)
│
uw-build → executes the rebuild in the target stack (optional)
├── uw-build-layer → per-slice builder subagents (technology-agnostic)
├── merge-rebuild-map.mjs → rebuild-state.json + rebuild-progress.json
└── verify-rebuild.mjs → rebuild-verification-graph.json + rebuild-gaps.md
(re-scans the target; measures completeness)
| Skill | Output |
|---|---|
uw-start | Entry point — orients, checks prereqs, drives the pipeline |
uw-scan | architecture.md |
uw-analyze | Orchestrates layer analysis |
uw-verify | gaps.md per layer (work list) |
uw-complete | Fills gaps, deletes gaps.md |
uw-plan | REBUILD-PLAN.md |
uw-graph | rebuild-graph.json (graph + coverage) |
uw-dashboard | Launches the interactive graph dashboard |
uw-build | Executes the rebuild in the target stack + rebuild-verification-graph.json (completeness) |
uw-build-layer | Per-slice technology-agnostic builder (dispatched by uw-build) |
uw-refresh | Incremental update — re-analyzes only changed layers |
| Skill | Output |
|---|---|
uw-analyze-database | database.md |
uw-analyze-domain | domain-model.md |
uw-analyze-service | service-layer.md |
uw-analyze-api | api.md |
uw-analyze-messaging | messaging.md |
uw-analyze-frontend | frontend.md |
uw-analyze-infrastructure | infrastructure/ |
| Skill | Output |
|---|---|
uw-analyze-unit-tests | unit-tests.md |
uw-analyze-integration-tests | integration-tests.md |
uw-analyze-e2e-tests | e2e-tests.md |
docs/unwind/
├── architecture.md
├── .cache/ # deterministic intermediates
│ ├── scan-manifest.json # ground truth (inventory + symbols)
│ ├── meta.json # baseline fingerprints + commit (incremental)
│ ├── changes.json # detect-changes output (incremental refresh)
│ ├── seeds/{layer}.json # per-layer candidate checklists
│ └── coverage/{layer}.json # per-layer coverage reports
├── rebuild-graph.json # knowledge graph for the dashboard
├── layers/
│ ├── database/
│ │ ├── index.md
│ │ ├── schema.md
│ │ ├── repositories.md
│ │ └── verification.md
│ ├── domain-model/
│ │ ├── index.md
│ │ ├── entities.md
│ │ └── verification.md
│ ├── service-layer/
│ │ ├── index.md
│ │ ├── services.md
│ │ ├── formulas.md
│ │ └── verification.md
│ ├── api/
│ │ ├── index.md
│ │ ├── endpoints.md
│ │ └── verification.md
│ └── [other layers...]
└── REBUILD-PLAN.md
Each layer is a folder with index.md + section files for incremental writes.
New here? Just Use unwind:uw-start — it orients you, checks prerequisites, and
drives the whole pipeline with a checkpoint at each phase. The manual sequence is:
Use unwind:uw-scan — runs the deterministic scan, derives architecture.mddocs/unwind/architecture.mdUse unwind:uw-analyze — seeds specialists, analyzes, verifies coverageUse unwind:uw-verify — deterministic coverage diff (re-run any time)Use unwind:uw-planUse unwind:uw-dashboard — builds the graph and launches the viewer
(unwind:uw-graph is an optional raw-artifact export)After code changes: Use unwind:uw-refresh — fingerprints detect
what moved and only the affected layers are re-analyzed; changed contracts are
flagged stale / needs-recheck in the graph.
Note: Step 4 (verification) is a deterministic manifest − docs diff and is
integrated into uw-analyze; run it standalone to re-verify existing
documentation at any time.
Re-run any skill to update documentation. Changes highlighted in ## Changes Since Last Review section.