When to Use
- First time onboarding a project
- Rebuilding cache after major project structural changes
- Cache expired, needs updating
When NOT to Use
- Already familiar with project structure (read cache directly)
- Only need to find specific files (use Glob/Grep)
- Day-to-day development (cache already exists)
Workflow
Docs -> Entrypoints -> Tests Map -> Next Steps
Usage
bash scripts/run-skill.sh repo-intake intake_cached.js --mode auto --top 10
Manifest Map (declared dependency map)
Workspace topology anddeclareddependency graph for monorepo / multi-package repos. Edge semantics is
declares_dependency—what is written in the manifest does not prove import, call, or runtime impact.
Always fail-closed: if the entire file cannot be read / UTF-8 decoded, or the JSON document cannot be parsed, record
coverage skipped; unsupported constructs that have entered the Go/TOML recognizer are recorded as
partial. Never generate speculative edges.
bash scripts/run-skill.sh repo-intake manifest_map.js # overview (md)
bash scripts/run-skill.sh repo-intake manifest_map.js --format json # 完整 envelope
bash scripts/run-skill.sh repo-intake manifest_map.js --reverse <selector> # 誰宣告依賴它
bash scripts/run-skill.sh repo-intake manifest_map.js --cycles # 宣告環偵測
| Flag | Description |
|---|---|
--format md|json |
Default md; json is the complete artifact, not subject to --top truncation |
--top N |
md list truncation (default 12) |
--reverse <sel> |
selector: node ID (ws:node:packages/a) or name (node:lodash / lodash); multiple matches exit 2 and list candidates |
--cycles |
and --reverse are mutually exclusive |
--include-candidates |
Include candidate workspaces not confirmed by the controller into the architecture node set (excluded by default) |
Ecosystems: node / php / go / rust / python (for recognized manifests see
scripts/config/repo-intake.json the manifest_map section). Invalid argument exit 2.
Data model, parsing matrix, and frozen syntax contract:references/manifest-map.md; full specification:
docs/features/repo-intake-manifest-map/2-tech-spec.md。
Cache Location
Cache stored at: ~/.claude/cache/repo-intake/<repoKey>/
| File | Description |
|---|---|
latest.md |
Latest scan results |
latest.json |
Latest scan results (JSON) |
LATEST.json |
Cache metadata |
Output
## Overview
<summary>
## Entrypoints
- {CONFIG_FILE}
- {BOOTSTRAP_FILE}
## Test Map
| Type | Pattern |
| ----------- | ----------------- |
| Unit | test/unit/ |
| Integration | test/integration/ |
| E2E | test/e2e/ |
## Next Steps
- <questions>
Verification
- Output includes Overview, Entrypoints, Test Map, Next Steps
- Entrypoints correctly identify
{CONFIG_FILE},{BOOTSTRAP_FILE} - Test Map covers Unit/Integration/E2E layers
References
references/manifest-map.md— Manifest map data model, parsing matrix, frozen contract summaryreferences/archived/MIDWAY_HEURISTICS.md— Legacy MidwayJS heuristics (archived, for reference only)
Scripts
| Script | Purpose |
|---|---|
scripts/intake_cached.js |
Main intake with caching |
scripts/scan_repo.js |
Full repo scanner (framework-agnostic) |
scripts/scan_delta.js |
Delta scan for changed files |
scripts/manifest_map.js |
Workspace topology + declared dependency graph (overview / reverse / cycles) |
Examples
Input: /repo-intake
Action: Execute intake script -> Output project map
Input: /repo-intake save
Action: Execute intake script -> Output and write to docs/ai/intake/