OpenClaw Integration: This skill is invoked by the Dojo Genesis plugin via /dojo run repo-status.
The agent receives project context automatically via the before_agent_start hook.
Use dojo_get_context for full state, dojo_save_artifact to persist outputs,
and dojo_update_state to record phase transitions and decisions.
Repo Status Skill
Version: 1.0
Created: 2026-02-08
Author: Cruz + Manus (Cowork)
Origin: Codified from a live repo-context-sync + strategic-scout + status-writing session on Dojo Genesis.
Lineage: status-writing + file-management + health-audit, distilled into a single repeatable workflow.
I. The Philosophy: See the Whole Before Touching a Part
Most codebases are explored piecemeal — someone reads a file, then another, then another, building a fragmentary picture that drifts as the project evolves. This skill takes the opposite approach: see the whole system first, as a living organism, then record what you see in a structured artifact that any future agent or human can use as a starting point.
The output is a .status.md file — a comprehensive, versioned snapshot that bridges three perspectives:
- Status Writer: Emoji-driven health indicators, workstream tracking, blockers, next steps. The "heartbeat" view.
- File Management: Annotated directory tree with per-folder status. The "anatomy" view.
- Health Supervisor: Critical/security/sustainability assessment. The "checkup" view.
A single document. One place to look. Updated over time like a living record.
II. When to Use This Skill
- Onboarding to a new project: Before writing a single line, run this skill to build your mental model.
- Periodic health check: Monthly or per-release, re-run to track drift and detect decay.
- Before a major refactor: Understand what exists before deciding what to change.
- When handing off context: Give another agent or team member a single file that tells them everything.
- When a project feels "big" or "messy": Structure reduces anxiety. This skill imposes structure on chaos.
III. The Workflow
This is a 5-phase process. Each phase builds on the previous one.
Phase 1: Grounding (Read Before You Judge)
Objective: Understand what the project is before evaluating how well it works.
- List the root directory. Get the top-level shape.
- Read core documents. In priority order:
README.md (what it is, how to run it)
STATUS.md or equivalent (where it is right now)
CHANGELOG.md or release notes (where it's been)
package.json, go.mod, Cargo.toml, pyproject.toml (tech stack, deps)
ARCHITECTURE.md, PHILOSOPHY.md if they exist (intent, design)
- Identify the tech stack. Language(s), framework(s), database(s), infra.
- Note the project's self-stated purpose. This becomes Section 1 of the output.
Time budget: ~10% of total effort. Resist the urge to explore deeply here.
Phase 2: Deep Inventory (Parallel Exploration)
Objective: Build a complete picture of everything in the repository.
Launch parallel exploration across the major layers. For most projects, these are:
| Layer |
What to Inventory |
| Frontend |
Components, routes, state management, styling, tests, LOC estimates |
| Backend |
Packages, handlers, services, models, LOC estimates |
| Data |
Migrations, schemas, seed data, vector stores |
| Knowledge |
Docs, skills, prompts, thinking artifacts, compressions |
| Infra |
CI/CD, Docker, scripts, deployment configs |
| Tests |
Unit, integration, e2e, coverage estimates |
For each layer, collect:
- File count
- Approximate LOC (use
wc -l or cloc if available)
- Package/module count
- Status (active, legacy, deprecated, empty)
Time budget: ~30% of total effort. Parallelize aggressively.
Phase 3: Semantic Clustering
Objective: Group everything by what the system does, not where files happen to live.
This is the distinctive step. Instead of just listing directories, map every feature to an action verb — a cluster that describes a behavioral capability of the system.
Read references/semantic-clusters.md for the full cluster framework and examples.
The process:
- Review the inventory from Phase 2.
- For each significant component, ask: "What verb describes what this does?"
- Assign it to a cluster. Create new clusters if needed.
- For each cluster, build a component table:
Component | Location | Status | LOC
- Write a health assessment per cluster.
- Identify cross-cluster components (things that serve multiple verbs).
- Identify orphans (components that don't fit any cluster) — these may signal architectural confusion.
Time budget: ~25% of total effort. This is where the insight lives.
Phase 4: Write the .status.md
Objective: Assemble everything into a single, structured document.
Read references/status-template.md for the complete output template.
The document has 10 sections:
- Vision & Purpose — One sentence + core principles (from Phase 1)
- Current State — Emoji table of major areas (from Phase 2)
- Directory Structure — Annotated tree with per-folder status (from Phase 2)
- Semantic Clusters — One subsection per verb, with component tables (from Phase 3)
- File Importance Ranking — 4 tiers (Critical, Important, Supporting, Knowledge)
- Health Assessment — Critical issues, security, sustainability (health-audit framework)
- Active Workstreams — What's being worked on right now
- Blockers & Dependencies — What's preventing progress
- Next Steps — Immediate actionable items
- Aggregate Statistics — Summary numbers table
Save to .status.md at the project root (dot-prefixed to stay out of the way but discoverable).
Time budget: ~25% of total effort.
Phase 5: Verification
Objective: Catch errors, fill gaps, and harden the document.
- Cross-check statistics programmatically. Run
find and wc -l to verify LOC claims. Check file counts against actual filesystem.
- Identify unmapped components. Walk the component directories and confirm every significant directory appears in at least one semantic cluster.
- Validate status emojis. Ensure every area marked "complete" actually has evidence of completeness.
- Apply corrections. Update the
.status.md with any discrepancies found.
- Note confidence level. If you couldn't verify something, say so.
Time budget: ~10% of total effort. This step prevents the document from being fiction.
IV. The Semantic Cluster Framework
The clusters are action verbs that describe what a system does. For the full reference with starter verbs and mapping guidance, read:
references/semantic-clusters.md
Starter set (adapt to your project):
| Verb |
Meaning |
Example Components |
| CONVERSE |
Chat, messaging, streaming |
Chat UI, SSE handlers, message models |
| REASON |
Thinking, planning, deciding |
Agent, intent classifier, orchestration |
| REMEMBER |
Storage, recall, learning |
Memory system, embeddings, seeds |
| OBSERVE |
Monitoring, tracing, metrics |
Trace logger, event bus, cost tracker |
| LEARN |
Adaptation, feedback, calibration |
Calibration engine, preference system |
| ACT |
Tool execution, side effects |
Tool registry, tool implementations |
| PROTECT |
Auth, security, boundaries |
Middleware, secure storage, auth context |
| CONNECT |
External integrations |
Plugins, APIs, bots, webhooks |
| PRESENT |
UI, rendering, layout |
Shell, sidebars, panels, components |
| PERSIST |
Database, migrations, storage |
DB manager, migrations, schemas |
| BUILD |
CI/CD, testing, deployment |
Workflows, Docker, scripts, tests |
| THINK |
Meta-cognition, knowledge |
Skills, prompts, documentation |
| ORCHESTRATE |
Multi-step coordination |
DAG engine, task decomposition |
Not every project will use all 13. Some projects may need verbs not on this list. The framework is a starting point, not a constraint.
V. File Importance Ranking
Rank files into 4 tiers based on runtime criticality and development importance:
| Tier |
Criteria |
Typical Count |
| Tier 1: Critical |
System won't function without these. Core agent, main state, primary API endpoint, database manager. |
10 files |
| Tier 2: Important |
Core features break without these. Supporting services, secondary state, routing. |
10 files |
| Tier 3: Supporting |
System degrades gracefully without these. Integrations, utilities, background tasks. |
20-30 files |
| Tier 4: Knowledge |
Essential for development, not runtime. Docs, specs, skills, prompts. |
Variable |
For each file in Tiers 1-2, include Rank | File | Why — a one-line justification.
VI. Health Assessment Framework
Borrowed directly from the health-audit skill. For each category, use a table with Area | Status | Notes.
| Category |
What to Check |
| Critical Issues |
Can it build? Critical dependency vulnerabilities? Main branch broken? |
| Security |
Secrets hardcoded? Auth implemented? RLS policies set? Encryption at rest? |
| Sustainability |
Test coverage adequate? CI/CD automated? Technical debt managed? Docs current? Manual processes documented? |
Be honest. Use emoji status indicators: ✅ good, ⚠️ concern, ❌ blocked.
VII. Best Practices
- Dot-prefix the output file.
.status.md stays discoverable but doesn't clutter the root alongside README and STATUS.
- Separate from STATUS.md. The lightweight
STATUS.md (per status-writing skill) is the human-facing dashboard. .status.md is the comprehensive agent-facing audit. They complement each other.
- Update incrementally. After the first generation, subsequent runs should diff against the existing
.status.md and update rather than regenerate from scratch.
- Statistics drift is normal. LOC counts change every commit. The goal is "accurate enough to be useful" — within 10% is fine.
- Semantic clusters are the crown jewel. The directory tree tells you where things are. The clusters tell you what things do. Prioritize cluster quality over tree completeness.
- Parallelize Phase 2. The deep inventory is the slowest phase. Use subagents or parallel exploration to cut time.
- Verification is not optional. A beautiful document full of wrong numbers is worse than no document. Always verify.
VIII. Quality Checklist
Before delivering the .status.md, confirm:
OpenClaw Tool Integration
When running inside the Dojo Genesis plugin:
- Start by calling
dojo_get_context to retrieve full project state, history, and artifacts
- During the skill, follow the workflow steps documented above
- Save outputs using
dojo_save_artifact with the artifacts output directory
- Update project state by calling
dojo_update_state to record skill completion and any phase transitions
1---2name: repo-status-23description: > **OpenClaw Integration:** This skill is invoked by the Dojo Genesis plugin via `/dojo run repo-status`.4---56> **OpenClaw Integration:** This skill is invoked by the Dojo Genesis plugin via `/dojo run repo-status`.7> The agent receives project context automatically via the `before_agent_start` hook.8> Use `dojo_get_context` for full state, `dojo_save_artifact` to persist outputs,9> and `dojo_update_state` to record phase transitions and decisions.1011# Repo Status Skill1213**Version:** 1.014**Created:** 2026-02-0815**Author:** Cruz + Manus (Cowork)16**Origin:** Codified from a live repo-context-sync + strategic-scout + status-writing session on Dojo Genesis.17**Lineage:** status-writing + file-management + health-audit, distilled into a single repeatable workflow.1819---2021## I. The Philosophy: See the Whole Before Touching a Part2223Most codebases are explored piecemeal — someone reads a file, then another, then another, building a fragmentary picture that drifts as the project evolves. This skill takes the opposite approach: **see the whole system first, as a living organism**, then record what you see in a structured artifact that any future agent or human can use as a starting point.2425The output is a `.status.md` file — a comprehensive, versioned snapshot that bridges three perspectives:2627- **Status Writer**: Emoji-driven health indicators, workstream tracking, blockers, next steps. The "heartbeat" view.28- **File Management**: Annotated directory tree with per-folder status. The "anatomy" view.29- **Health Supervisor**: Critical/security/sustainability assessment. The "checkup" view.3031A single document. One place to look. Updated over time like a living record.3233---3435## II. When to Use This Skill3637- **Onboarding to a new project:** Before writing a single line, run this skill to build your mental model.38- **Periodic health check:** Monthly or per-release, re-run to track drift and detect decay.39- **Before a major refactor:** Understand what exists before deciding what to change.40- **When handing off context:** Give another agent or team member a single file that tells them everything.41- **When a project feels "big" or "messy":** Structure reduces anxiety. This skill imposes structure on chaos.4243---4445## III. The Workflow4647This is a 5-phase process. Each phase builds on the previous one.4849### Phase 1: Grounding (Read Before You Judge)5051**Objective:** Understand what the project *is* before evaluating how well it works.52531. **List the root directory.** Get the top-level shape.542. **Read core documents.** In priority order:55 - `README.md` (what it is, how to run it)56 - `STATUS.md` or equivalent (where it is right now)57 - `CHANGELOG.md` or release notes (where it's been)58 - `package.json`, `go.mod`, `Cargo.toml`, `pyproject.toml` (tech stack, deps)59 - `ARCHITECTURE.md`, `PHILOSOPHY.md` if they exist (intent, design)603. **Identify the tech stack.** Language(s), framework(s), database(s), infra.614. **Note the project's self-stated purpose.** This becomes Section 1 of the output.6263*Time budget: ~10% of total effort. Resist the urge to explore deeply here.*6465### Phase 2: Deep Inventory (Parallel Exploration)6667**Objective:** Build a complete picture of everything in the repository.6869Launch parallel exploration across the major layers. For most projects, these are:7071| Layer | What to Inventory |72|-------|-------------------|73| **Frontend** | Components, routes, state management, styling, tests, LOC estimates |74| **Backend** | Packages, handlers, services, models, LOC estimates |75| **Data** | Migrations, schemas, seed data, vector stores |76| **Knowledge** | Docs, skills, prompts, thinking artifacts, compressions |77| **Infra** | CI/CD, Docker, scripts, deployment configs |78| **Tests** | Unit, integration, e2e, coverage estimates |7980For each layer, collect:81- File count82- Approximate LOC (use `wc -l` or `cloc` if available)83- Package/module count84- Status (active, legacy, deprecated, empty)8586*Time budget: ~30% of total effort. Parallelize aggressively.*8788### Phase 3: Semantic Clustering8990**Objective:** Group everything by *what the system does*, not where files happen to live.9192This is the distinctive step. Instead of just listing directories, map every feature to an **action verb** — a cluster that describes a behavioral capability of the system.9394Read `references/semantic-clusters.md` for the full cluster framework and examples.9596**The process:**97981. Review the inventory from Phase 2.992. For each significant component, ask: "What verb describes what this does?"1003. Assign it to a cluster. Create new clusters if needed.1014. For each cluster, build a component table: `Component | Location | Status | LOC`1025. Write a health assessment per cluster.1036. Identify cross-cluster components (things that serve multiple verbs).1047. Identify orphans (components that don't fit any cluster) — these may signal architectural confusion.105106*Time budget: ~25% of total effort. This is where the insight lives.*107108### Phase 4: Write the .status.md109110**Objective:** Assemble everything into a single, structured document.111112Read `references/status-template.md` for the complete output template.113114The document has 10 sections:1151161. **Vision & Purpose** — One sentence + core principles (from Phase 1)1172. **Current State** — Emoji table of major areas (from Phase 2)1183. **Directory Structure** — Annotated tree with per-folder status (from Phase 2)1194. **Semantic Clusters** — One subsection per verb, with component tables (from Phase 3)1205. **File Importance Ranking** — 4 tiers (Critical, Important, Supporting, Knowledge)1216. **Health Assessment** — Critical issues, security, sustainability (health-audit framework)1227. **Active Workstreams** — What's being worked on right now1238. **Blockers & Dependencies** — What's preventing progress1249. **Next Steps** — Immediate actionable items12510. **Aggregate Statistics** — Summary numbers table126127Save to `.status.md` at the project root (dot-prefixed to stay out of the way but discoverable).128129*Time budget: ~25% of total effort.*130131### Phase 5: Verification132133**Objective:** Catch errors, fill gaps, and harden the document.1341351. **Cross-check statistics programmatically.** Run `find` and `wc -l` to verify LOC claims. Check file counts against actual filesystem.1362. **Identify unmapped components.** Walk the component directories and confirm every significant directory appears in at least one semantic cluster.1373. **Validate status emojis.** Ensure every area marked "complete" actually has evidence of completeness.1384. **Apply corrections.** Update the `.status.md` with any discrepancies found.1395. **Note confidence level.** If you couldn't verify something, say so.140141*Time budget: ~10% of total effort. This step prevents the document from being fiction.*142143---144145## IV. The Semantic Cluster Framework146147The clusters are action verbs that describe what a system *does*. For the full reference with starter verbs and mapping guidance, read:148149```150references/semantic-clusters.md151```152153**Starter set (adapt to your project):**154155| Verb | Meaning | Example Components |156|------|---------|-------------------|157| CONVERSE | Chat, messaging, streaming | Chat UI, SSE handlers, message models |158| REASON | Thinking, planning, deciding | Agent, intent classifier, orchestration |159| REMEMBER | Storage, recall, learning | Memory system, embeddings, seeds |160| OBSERVE | Monitoring, tracing, metrics | Trace logger, event bus, cost tracker |161| LEARN | Adaptation, feedback, calibration | Calibration engine, preference system |162| ACT | Tool execution, side effects | Tool registry, tool implementations |163| PROTECT | Auth, security, boundaries | Middleware, secure storage, auth context |164| CONNECT | External integrations | Plugins, APIs, bots, webhooks |165| PRESENT | UI, rendering, layout | Shell, sidebars, panels, components |166| PERSIST | Database, migrations, storage | DB manager, migrations, schemas |167| BUILD | CI/CD, testing, deployment | Workflows, Docker, scripts, tests |168| THINK | Meta-cognition, knowledge | Skills, prompts, documentation |169| ORCHESTRATE | Multi-step coordination | DAG engine, task decomposition |170171Not every project will use all 13. Some projects may need verbs not on this list. The framework is a starting point, not a constraint.172173---174175## V. File Importance Ranking176177Rank files into 4 tiers based on runtime criticality and development importance:178179| Tier | Criteria | Typical Count |180|------|----------|---------------|181| **Tier 1: Critical** | System won't function without these. Core agent, main state, primary API endpoint, database manager. | 10 files |182| **Tier 2: Important** | Core features break without these. Supporting services, secondary state, routing. | 10 files |183| **Tier 3: Supporting** | System degrades gracefully without these. Integrations, utilities, background tasks. | 20-30 files |184| **Tier 4: Knowledge** | Essential for development, not runtime. Docs, specs, skills, prompts. | Variable |185186For each file in Tiers 1-2, include `Rank | File | Why` — a one-line justification.187188---189190## VI. Health Assessment Framework191192Borrowed directly from the health-audit skill. For each category, use a table with `Area | Status | Notes`.193194| Category | What to Check |195|----------|--------------|196| **Critical Issues** | Can it build? Critical dependency vulnerabilities? Main branch broken? |197| **Security** | Secrets hardcoded? Auth implemented? RLS policies set? Encryption at rest? |198| **Sustainability** | Test coverage adequate? CI/CD automated? Technical debt managed? Docs current? Manual processes documented? |199200Be honest. Use emoji status indicators: ✅ good, ⚠️ concern, ❌ blocked.201202---203204## VII. Best Practices205206- **Dot-prefix the output file.** `.status.md` stays discoverable but doesn't clutter the root alongside README and STATUS.207- **Separate from STATUS.md.** The lightweight `STATUS.md` (per status-writing skill) is the human-facing dashboard. `.status.md` is the comprehensive agent-facing audit. They complement each other.208- **Update incrementally.** After the first generation, subsequent runs should diff against the existing `.status.md` and update rather than regenerate from scratch.209- **Statistics drift is normal.** LOC counts change every commit. The goal is "accurate enough to be useful" — within 10% is fine.210- **Semantic clusters are the crown jewel.** The directory tree tells you *where* things are. The clusters tell you *what* things do. Prioritize cluster quality over tree completeness.211- **Parallelize Phase 2.** The deep inventory is the slowest phase. Use subagents or parallel exploration to cut time.212- **Verification is not optional.** A beautiful document full of wrong numbers is worse than no document. Always verify.213214---215216## VIII. Quality Checklist217218Before delivering the `.status.md`, confirm:219220- [ ] Vision statement is present and accurate221- [ ] Every major directory appears in the annotated tree222- [ ] Every significant component maps to at least one semantic cluster223- [ ] No orphan directories (unmapped components) remain unexplained224- [ ] File importance ranking has at least 10 Tier 1-2 files225- [ ] Health assessment covers critical, security, and sustainability226- [ ] Aggregate statistics are programmatically verified (within 10%)227- [ ] Active workstreams reflect actual current work228- [ ] Next steps are concrete and actionable229- [ ] The document reads coherently from top to bottom230---231232## OpenClaw Tool Integration233234When running inside the Dojo Genesis plugin:2352361. **Start** by calling `dojo_get_context` to retrieve full project state, history, and artifacts2372. **During** the skill, follow the workflow steps documented above2383. **Save** outputs using `dojo_save_artifact` with the `artifacts` output directory2394. **Update** project state by calling `dojo_update_state` to record skill completion and any phase transitions240