oh-my-customcode 0.16.4 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/README.md +6 -7
  2. package/package.json +1 -1
  3. package/templates/.claude/agents/mgr-sauron.md +16 -19
  4. package/templates/.claude/agents/mgr-updater.md +1 -0
  5. package/templates/.claude/agents/sys-memory-keeper.md +16 -1
  6. package/templates/.claude/hooks/hooks.json +5 -1
  7. package/templates/.claude/ontology/agents.yaml +1 -13
  8. package/templates/.claude/ontology/graphs/agent-skill.json +1 -2
  9. package/templates/.claude/ontology/graphs/full-graph.json +2 -9
  10. package/templates/.claude/ontology/graphs/routing.json +0 -2
  11. package/templates/.claude/ontology/skills.yaml +1 -1
  12. package/templates/.claude/rules/MUST-orchestrator-coordination.md +42 -0
  13. package/templates/.claude/rules/MUST-sync-verification.md +2 -2
  14. package/templates/.claude/rules/SHOULD-hud-statusline.md +55 -11
  15. package/templates/.claude/rules/SHOULD-memory-integration.md +32 -0
  16. package/templates/.claude/skills/claude-code-bible/SKILL.md +5 -94
  17. package/templates/.claude/skills/intent-detection/patterns/agent-triggers.yaml +0 -8
  18. package/templates/.claude/skills/sauron-watch/SKILL.md +61 -49
  19. package/templates/.claude/skills/secretary-routing/SKILL.md +3 -6
  20. package/templates/.claude/statusline.sh +152 -0
  21. package/templates/CLAUDE.md.en +4 -4
  22. package/templates/CLAUDE.md.ko +4 -4
  23. package/templates/guides/claude-code/08-testing.md +0 -2
  24. package/templates/guides/claude-code/09-guardrails.md +0 -2
  25. package/templates/guides/claude-code/10-monitoring.md +0 -2
  26. package/templates/manifest.json +2 -2
  27. package/templates/.claude/agents/mgr-sync-checker.md +0 -38
package/README.md CHANGED
@@ -21,7 +21,7 @@ Like oh-my-zsh transformed shell customization, oh-my-customcode makes personali
21
21
 
22
22
  | Feature | Description |
23
23
  |---------|-------------|
24
- | **Batteries Included** | 42 agents, 55 skills, 22 guides, 18 rules, 2 hooks, 4 contexts, ontology graph - ready to use out of the box |
24
+ | **Batteries Included** | 41 agents, 55 skills, 22 guides, 18 rules, 2 hooks, 4 contexts, ontology graph - ready to use out of the box |
25
25
  | **Sub-Agent Model** | Supports hierarchical agent orchestration with specialized roles |
26
26
  | **Dead Simple Customization** | Create a folder + markdown file = new agent or skill |
27
27
  | **Mix and Match** | Use built-in components, create your own, or combine both |
@@ -85,8 +85,7 @@ Claude Code selects the appropriate model and parallelizes independent tasks (up
85
85
  ```
86
86
  /create-agent
87
87
  ├── mgr-creator:sonnet — agent scaffolding
88
- ├── mgr-supplier:haiku — dependency check
89
- └── mgr-sync-checker:haiku — registry verification
88
+ └── mgr-supplier:haiku — dependency check
90
89
 
91
90
  /code-review
92
91
  ├── lang-golang-expert:sonnet — Go implementation
@@ -108,11 +107,11 @@ Claude Code selects the appropriate model and parallelizes independent tasks (up
108
107
 
109
108
  ## What's Included
110
109
 
111
- ### Agents (42)
110
+ ### Agents (41)
112
111
 
113
112
  | Category | Count | Agents |
114
113
  |----------|-------|--------|
115
- | **Managers** | 7 | mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sync-checker, mgr-sauron, mgr-claude-code-bible |
114
+ | **Managers** | 6 | mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sauron, mgr-claude-code-bible |
116
115
  | **System** | 2 | sys-memory-keeper, sys-naggy |
117
116
  | **Languages** | 6 | lang-golang-expert, lang-python-expert, lang-rust-expert, lang-kotlin-expert, lang-typescript-expert, lang-java21-expert |
118
117
  | **Frontend** | 3 | fe-vercel-agent, fe-vuejs-agent, fe-svelte-agent |
@@ -123,7 +122,7 @@ Claude Code selects the appropriate model and parallelizes independent tasks (up
123
122
  | **Architecture** | 2 | arch-documenter, arch-speckit-agent |
124
123
  | **Infrastructure** | 2 | infra-docker-expert, infra-aws-expert |
125
124
  | **QA** | 3 | qa-planner, qa-writer, qa-engineer |
126
- | **Total** | **42** | |
125
+ | **Total** | **41** | |
127
126
 
128
127
  ### Skills (55)
129
128
 
@@ -221,7 +220,7 @@ your-project/
221
220
  ├── rules/ # Behavior rules (18 total)
222
221
  ├── hooks/ # Event hooks (2 total)
223
222
  ├── contexts/ # Context files (4 total)
224
- ├── agents/ # Agent definitions (42 flat .md files)
223
+ ├── agents/ # Agent definitions (41 flat .md files)
225
224
  │ ├── lang-golang-expert.md
226
225
  │ ├── be-fastapi-expert.md
227
226
  │ ├── mgr-creator.md
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-customcode",
3
- "version": "0.16.4",
3
+ "version": "0.17.0",
4
4
  "description": "Batteries-included agent harness for Claude Code",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: mgr-sauron
3
- description: Use when you need automated verification of R016 compliance, executing mandatory multi-round verification (5 manager rounds + 3 deep review rounds) before commits
3
+ description: Use when you need automated verification of R017 compliance, executing mandatory multi-round verification (5 manager rounds + 3 deep review rounds) before commits
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: high
@@ -15,26 +15,25 @@ tools:
15
15
  - Bash
16
16
  ---
17
17
 
18
- You are an automated verification specialist that executes the mandatory R016 verification process, acting as the "all-seeing eye" that ensures system integrity through comprehensive multi-round verification.
18
+ You are an automated verification specialist that executes the mandatory R017 verification process, acting as the "all-seeing eye" that ensures system integrity through comprehensive multi-round verification.
19
19
 
20
20
  ## Core Capabilities
21
21
 
22
22
  1. Execute mgr-supplier:audit automatically
23
- 2. Execute mgr-sync-checker:check automatically
24
- 3. Execute mgr-updater:docs automatically
25
- 4. Execute mgr-claude-code-bible:verify (official spec compliance)
26
- 5. Verify workflow alignment
27
- 6. Verify reference integrity (frontmatter, memory fields, skill refs)
28
- 7. Verify philosophy compliance (R006-R011)
29
- 8. Verify Claude-native compatibility
30
- 9. Auto-fix simple issues (count mismatches, missing fields)
31
- 10. Generate verification report
23
+ 2. Execute mgr-updater:docs automatically
24
+ 3. Execute mgr-claude-code-bible:verify (official spec compliance)
25
+ 4. Verify workflow alignment
26
+ 5. Verify reference integrity (frontmatter, memory fields, skill refs)
27
+ 6. Verify philosophy compliance (R006-R011)
28
+ 7. Verify Claude-native compatibility
29
+ 8. Auto-fix simple issues (count mismatches, missing fields)
30
+ 9. Generate verification report
32
31
 
33
32
  ## Commands
34
33
 
35
34
  | Command | Description |
36
35
  |---------|-------------|
37
- | `mgr-sauron:watch` | Full R016 verification (5+3 rounds) |
36
+ | `mgr-sauron:watch` | Full R017 verification (5+3 rounds) |
38
37
  | `mgr-sauron:quick` | Quick verification (single pass) |
39
38
  | `mgr-sauron:report` | Generate verification status report |
40
39
 
@@ -43,13 +42,12 @@ You are an automated verification specialist that executes the mandatory R016 ve
43
42
  ### Phase 1: Manager Verification (5 rounds)
44
43
 
45
44
  **Round 1-2: Basic Checks**
46
- - mgr-supplier:audit (all agents)
47
- - mgr-sync-checker:check
45
+ - mgr-supplier:audit (all agents, dependency validation)
46
+ - mgr-updater:docs (documentation sync check)
48
47
 
49
48
  **Round 3-4: Re-verify + Update**
50
49
  - Re-run mgr-supplier:audit
51
- - Re-run mgr-sync-checker:check
52
- - mgr-updater:docs (if changes detected)
50
+ - Re-run mgr-updater:docs (apply any detected changes)
53
51
 
54
52
  **Round 5: Final Count Verification**
55
53
  - Agent count: CLAUDE.md vs actual .md files
@@ -116,7 +114,7 @@ You are an automated verification specialist that executes the mandatory R016 ve
116
114
  [Round 1/5] mgr-supplier:audit
117
115
  - 34 agents checked
118
116
  - 3 issues found
119
- [Round 2/5] mgr-sync-checker:check
117
+ [Round 2/5] mgr-updater:docs
120
118
  - Documentation sync: OK
121
119
  ...
122
120
 
@@ -155,7 +153,6 @@ Run 'mgr-sauron:watch' for full verification
155
153
 
156
154
  Works with:
157
155
  - **mgr-supplier**: Dependency validation
158
- - **mgr-sync-checker**: Documentation sync
159
- - **mgr-updater**: Documentation updates
156
+ - **mgr-updater**: Documentation updates and sync
160
157
  - **mgr-claude-code-bible**: Official spec compliance
161
158
  - **secretary**: Orchestration coordination
@@ -6,6 +6,7 @@ memory: project
6
6
  effort: medium
7
7
  skills:
8
8
  - update-external
9
+ - update-docs
9
10
  tools:
10
11
  - Read
11
12
  - Write
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: sys-memory-keeper
3
- description: Use when you need to manage session memory persistence using claude-mem, save context before compaction, restore context on session start, or query past memories
3
+ description: Use when you need to manage session memory persistence using claude-mem, save context before compaction, restore context on session start, query past memories, or perform session-end dual-system auto-save
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: medium
@@ -41,3 +41,18 @@ Always include project name. Use task-based, temporal, or topic-based queries. A
41
41
  ## Config
42
42
 
43
43
  Provider: claude-mem | Collection: claude_memories | Archive: ~/.claude-mem/archives/
44
+
45
+ ## Session-End Auto-Save
46
+
47
+ When triggered by session-end signal from orchestrator:
48
+
49
+ 1. **Collect** session summary: completed tasks, key decisions, open items
50
+ 2. **Save to claude-mem** (if available): `mcp__claude-mem__save_memory` with project name, session date, and summary
51
+ 3. **Verify episodic-memory** (if available): `mcp__episodic-memory__search` to confirm session is indexed
52
+ 4. **Report** results to orchestrator: saved/skipped/failed per system
53
+
54
+ ### Failure Handling
55
+
56
+ - claude-mem unavailable → skip, report warning
57
+ - episodic-memory unavailable → skip, report warning
58
+ - Both unavailable → warn orchestrator, do not block session end
@@ -68,9 +68,13 @@
68
68
  {
69
69
  "type": "command",
70
70
  "command": "#!/bin/bash\ninput=$(cat)\nagent_type=$(echo \"$input\" | jq -r '.tool_input.subagent_type // \"unknown\"')\nmodel=$(echo \"$input\" | jq -r '.tool_input.model // \"inherit\"')\ndesc=$(echo \"$input\" | jq -r '.tool_input.description // \"\"' | head -c 40)\nresume=$(echo \"$input\" | jq -r '.tool_input.resume // empty')\nif [ -n \"$resume\" ]; then\n echo \"─── [Resume] ${agent_type}:${model} | ${desc} ───\" >&2\nelse\n echo \"─── [Spawn] ${agent_type}:${model} | ${desc} ───\" >&2\nfi\necho \"$input\""
71
+ },
72
+ {
73
+ "type": "command",
74
+ "command": "bash .claude/hooks/scripts/git-delegation-guard.sh"
71
75
  }
72
76
  ],
73
- "description": "HUD statusline - show subagent_type, model, and description on Task spawn"
77
+ "description": "HUD statusline + R010 git delegation guard on Task spawn"
74
78
  }
75
79
  ],
76
80
  "PostToolUse": [
@@ -33,7 +33,7 @@ classes:
33
33
  agents: [qa-planner, qa-writer, qa-engineer]
34
34
  description: "QA and testing"
35
35
  ManagerAgent:
36
- agents: [mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sync-checker, mgr-sauron, mgr-claude-code-bible]
36
+ agents: [mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sauron, mgr-claude-code-bible]
37
37
  description: "System management agents"
38
38
  SystemAgent:
39
39
  agents: [sys-memory-keeper, sys-naggy]
@@ -485,18 +485,6 @@ agents:
485
485
  keywords: [git, github, commit, branch, pull-request, conventional-commits, rebase, merge]
486
486
  file_patterns: [".git/*", ".github/*"]
487
487
 
488
- mgr-sync-checker:
489
- class: ManagerAgent
490
- description: "Use when you need to verify documentation and workflow synchronization, ensuring all docs, configs, and workflow definitions remain synchronized with the project structure"
491
- model: haiku
492
- memory: local
493
- effort: low
494
- skills: [update-docs]
495
- tools: [Read, Write, Edit, Grep, Glob, Bash]
496
- summary: "Documentation synchronization validator for project structure consistency"
497
- keywords: [synchronization, documentation, verification, consistency, agent-count, commands]
498
- file_patterns: ["CLAUDE.md", ".claude/agents/*.md", "commands/index.yaml"]
499
-
500
488
  mgr-sauron:
501
489
  class: ManagerAgent
502
490
  description: "Use when you need automated verification of R017 compliance, executing mandatory multi-round verification (5 manager rounds + 3 deep review rounds) before commits"
@@ -39,7 +39,6 @@
39
39
  "mgr-updater": ["update-external"],
40
40
  "mgr-supplier": ["audit-agents"],
41
41
  "mgr-gitnerd": [],
42
- "mgr-sync-checker": ["update-docs"],
43
42
  "mgr-sauron": ["sauron-watch"],
44
43
  "mgr-claude-code-bible": ["claude-code-bible"],
45
44
  "sys-memory-keeper": ["memory-management", "memory-save", "memory-recall"],
@@ -77,7 +76,7 @@
77
76
  "create-agent": ["mgr-creator"],
78
77
  "update-external": ["mgr-updater"],
79
78
  "audit-agents": ["mgr-supplier"],
80
- "update-docs": ["mgr-sync-checker"],
79
+ "update-docs": ["mgr-updater"],
81
80
  "sauron-watch": ["mgr-sauron"],
82
81
  "claude-code-bible": ["mgr-claude-code-bible"],
83
82
  "memory-management": ["sys-memory-keeper"],
@@ -39,7 +39,6 @@
39
39
  "mgr-updater": { "type": "Agent", "class": "ManagerAgent" },
40
40
  "mgr-supplier": { "type": "Agent", "class": "ManagerAgent" },
41
41
  "mgr-gitnerd": { "type": "Agent", "class": "ManagerAgent" },
42
- "mgr-sync-checker": { "type": "Agent", "class": "ManagerAgent" },
43
42
  "mgr-sauron": { "type": "Agent", "class": "ManagerAgent" },
44
43
  "mgr-claude-code-bible": { "type": "Agent", "class": "ManagerAgent" },
45
44
  "sys-memory-keeper": { "type": "Agent", "class": "SystemAgent" },
@@ -146,7 +145,6 @@
146
145
  { "source": "mgr-creator", "target": "create-agent", "relation": "requires" },
147
146
  { "source": "mgr-updater", "target": "update-external", "relation": "requires" },
148
147
  { "source": "mgr-supplier", "target": "audit-agents", "relation": "requires" },
149
- { "source": "mgr-sync-checker", "target": "update-docs", "relation": "requires" },
150
148
  { "source": "mgr-sauron", "target": "sauron-watch", "relation": "requires" },
151
149
  { "source": "mgr-claude-code-bible", "target": "claude-code-bible", "relation": "requires" },
152
150
  { "source": "sys-memory-keeper", "target": "memory-management", "relation": "requires" },
@@ -164,7 +162,6 @@
164
162
  { "source": "secretary-routing", "target": "mgr-updater", "relation": "routes_to" },
165
163
  { "source": "secretary-routing", "target": "mgr-supplier", "relation": "routes_to" },
166
164
  { "source": "secretary-routing", "target": "mgr-gitnerd", "relation": "routes_to" },
167
- { "source": "secretary-routing", "target": "mgr-sync-checker", "relation": "routes_to" },
168
165
  { "source": "secretary-routing", "target": "mgr-sauron", "relation": "routes_to" },
169
166
  { "source": "secretary-routing", "target": "mgr-claude-code-bible", "relation": "routes_to" },
170
167
  { "source": "secretary-routing", "target": "sys-memory-keeper", "relation": "routes_to" },
@@ -352,10 +349,6 @@
352
349
  "requires": [],
353
350
  "routed_by": ["secretary-routing"]
354
351
  },
355
- "mgr-sync-checker": {
356
- "requires": ["update-docs"],
357
- "routed_by": ["secretary-routing"]
358
- },
359
352
  "mgr-sauron": {
360
353
  "requires": ["sauron-watch"],
361
354
  "routed_by": ["secretary-routing"]
@@ -497,7 +490,7 @@
497
490
  "depends_on": []
498
491
  },
499
492
  "update-docs": {
500
- "required_by": ["mgr-sync-checker"],
493
+ "required_by": ["mgr-updater"],
501
494
  "depends_on": []
502
495
  },
503
496
  "sauron-watch": {
@@ -521,7 +514,7 @@
521
514
  "depends_on": ["R011"]
522
515
  },
523
516
  "secretary-routing": {
524
- "routes_to": ["mgr-creator", "mgr-updater", "mgr-supplier", "mgr-gitnerd", "mgr-sync-checker", "mgr-sauron", "mgr-claude-code-bible", "sys-memory-keeper", "sys-naggy"],
517
+ "routes_to": ["mgr-creator", "mgr-updater", "mgr-supplier", "mgr-gitnerd", "mgr-sauron", "mgr-claude-code-bible", "sys-memory-keeper", "sys-naggy"],
525
518
  "depends_on": []
526
519
  },
527
520
  "dev-lead-routing": {
@@ -8,7 +8,6 @@
8
8
  "mgr-updater",
9
9
  "mgr-supplier",
10
10
  "mgr-gitnerd",
11
- "mgr-sync-checker",
12
11
  "mgr-sauron",
13
12
  "mgr-claude-code-bible",
14
13
  "sys-memory-keeper",
@@ -70,7 +69,6 @@
70
69
  "mgr-updater": "secretary-routing",
71
70
  "mgr-supplier": "secretary-routing",
72
71
  "mgr-gitnerd": "secretary-routing",
73
- "mgr-sync-checker": "secretary-routing",
74
72
  "mgr-sauron": "secretary-routing",
75
73
  "mgr-claude-code-bible": "secretary-routing",
76
74
  "sys-memory-keeper": "secretary-routing",
@@ -448,7 +448,7 @@ skills:
448
448
  model_invocable: true
449
449
  summary: "Routes agent management tasks to appropriate manager agents"
450
450
  keywords: [routing, management, agent-creation, git, memory, verification]
451
- routes_to: [mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sync-checker, mgr-sauron, mgr-claude-code-bible, sys-memory-keeper, sys-naggy]
451
+ routes_to: [mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sauron, mgr-claude-code-bible, sys-memory-keeper, sys-naggy]
452
452
  rule_references: []
453
453
 
454
454
  snowflake-best-practices:
@@ -30,6 +30,32 @@ The main conversation is the **sole orchestrator**. It uses routing skills to de
30
30
  ╚══════════════════════════════════════════════════════════════════╝
31
31
  ```
32
32
 
33
+ ## Self-Check (Mandatory Before Delegating Tasks)
34
+
35
+ ```
36
+ ╔══════════════════════════════════════════════════════════════════╗
37
+ ║ BEFORE DELEGATING A TASK TO ANY AGENT, ASK YOURSELF: ║
38
+ ║ ║
39
+ ║ 1. Does the task prompt contain git commands? ║
40
+ ║ (commit, push, revert, merge, rebase, checkout, branch, ║
41
+ ║ reset, cherry-pick, tag) ║
42
+ ║ YES → The git part MUST go to mgr-gitnerd ║
43
+ ║ NO → Proceed ║
44
+ ║ ║
45
+ ║ 2. Am I bundling git operations with file editing? ║
46
+ ║ YES → STOP. Split into separate delegations: ║
47
+ ║ - File editing → appropriate specialist ║
48
+ ║ - Git operations → mgr-gitnerd ║
49
+ ║ NO → Good. Continue. ║
50
+ ║ ║
51
+ ║ 3. Is the target agent mgr-gitnerd for ALL git operations? ║
52
+ ║ YES → Good. Continue. ║
53
+ ║ NO → STOP. This is a VIOLATION. Re-route to mgr-gitnerd. ║
54
+ ║ ║
55
+ ║ If ANY answer is wrong → SPLIT THE TASK ║
56
+ ╚══════════════════════════════════════════════════════════════════╝
57
+ ```
58
+
33
59
  ## Architecture
34
60
 
35
61
  ```
@@ -72,6 +98,22 @@ Main Conversation (orchestrator)
72
98
 
73
99
  ✓ CORRECT: Always delegate, no matter how small
74
100
  Task(appropriate-agent) → create config file
101
+
102
+ ❌ WRONG: Bundling git operations with file editing in non-gitnerd agent
103
+ Main conversation → Task(general-purpose) → "git revert + edit file + git commit"
104
+ Main conversation → Task(lang-typescript-expert) → "fix bug and commit"
105
+
106
+ ✓ CORRECT: Separate file editing from git operations
107
+ Main conversation → Task(lang-typescript-expert) → "fix bug" (file edit only)
108
+ Main conversation → Task(mgr-gitnerd) → "git commit" (git operation only)
109
+
110
+ ❌ WRONG: Including git commands in non-gitnerd agent prompt for "convenience"
111
+ Task(general-purpose, prompt="revert the last commit, edit the file, then commit the fix")
112
+
113
+ ✓ CORRECT: Split into separate delegations
114
+ Task(mgr-gitnerd, prompt="revert the last commit")
115
+ Task(appropriate-expert, prompt="edit the file to fix the issue")
116
+ Task(mgr-gitnerd, prompt="commit the fix")
75
117
  ```
76
118
 
77
119
  ## Session Continuity
@@ -14,8 +14,8 @@ Every `git push` requires: `mgr-sauron:watch` → all pass → `git push`
14
14
 
15
15
  | Round | Actions |
16
16
  |-------|---------|
17
- | 1-2 | mgr-supplier:audit, mgr-sync-checker:check, fix issues |
18
- | 3-4 | Re-verify + mgr-updater:docs, fix remaining |
17
+ | 1-2 | mgr-supplier:audit, mgr-updater:docs (sync check), fix issues |
18
+ | 3-4 | Re-verify mgr-supplier:audit + re-run mgr-updater:docs, fix remaining |
19
19
  | 5 | Final: all counts match, frontmatter valid, skill refs exist, memory scopes valid, routing patterns updated |
20
20
 
21
21
  Also run: mgr-claude-code-bible:verify (official spec compliance)
@@ -2,26 +2,33 @@
2
2
 
3
3
  > **Priority**: SHOULD | **ID**: R012
4
4
 
5
- ## Format
5
+ ## Two-System Architecture
6
6
 
7
- ```
8
- ─── [Agent] {name} | [Progress] {n}/{total} | [Parallel] {count} ───
9
- ```
10
-
11
- ## When to Display
7
+ | Aspect | HUD Events | Statusline API |
8
+ |--------|-----------|----------------|
9
+ | Channel | stderr (hooks) | stdout (dedicated statusline) |
10
+ | Location | Inline in conversation log | Persistent bar at screen bottom |
11
+ | Trigger | PreToolUse (Task matcher) | Message update cycle (~300ms) |
12
+ | Role | Event notifications | Persistent session status |
12
13
 
13
- Multi-step tasks, parallel execution, long-running operations. Skip for single brief operations.
14
-
15
- ## Hook Implementation
14
+ ## HUD Events (Hook-based)
16
15
 
17
- Implemented in `.claude/hooks/hooks.json` (PreToolUse → Task matcher):
16
+ ### Format
18
17
 
19
18
  ```
20
19
  ─── [Spawn] {subagent_type}:{model} | {description} ───
21
20
  ─── [Resume] {subagent_type}:{model} | {description} ───
22
21
  ```
23
22
 
24
- ## Display with Parallel
23
+ ### When to Display
24
+
25
+ Multi-step tasks, parallel execution, long-running operations. Skip for single brief operations.
26
+
27
+ ### Implementation
28
+
29
+ Implemented in `.claude/hooks/hooks.json` (PreToolUse → Task matcher).
30
+
31
+ ### Parallel Display
25
32
 
26
33
  ```
27
34
  ─── [Agent] secretary | [Parallel] 4 ───
@@ -29,4 +36,41 @@ Implemented in `.claude/hooks/hooks.json` (PreToolUse → Task matcher):
29
36
  [2] Task(lang-golang-expert):haiku → Code review
30
37
  ```
31
38
 
39
+ ## Statusline API (Command-based)
40
+
41
+ ### Format
42
+
43
+ ```
44
+ {Cost} | {project} | {branch} | CTX:{usage}%
45
+ ```
46
+
47
+ Example: `$0.05 | my-project | develop | CTX:42%`
48
+
49
+ ### Configuration
50
+
51
+ ```json
52
+ {
53
+ "statusLine": {
54
+ "type": "command",
55
+ "command": ".claude/statusline.sh",
56
+ "padding": 0
57
+ }
58
+ }
59
+ ```
60
+
61
+ Set in `.claude/settings.local.json`. The command receives JSON via stdin with model, workspace, context window, and cost data.
62
+
63
+ ### Color Coding
64
+
65
+ | Element | Condition | Color |
66
+ |---------|-----------|-------|
67
+ | Cost | < $1.00 | Green |
68
+ | Cost | $1.00 - $4.99 | Yellow |
69
+ | Cost | >= $5.00 | Red |
70
+ | Context | < 60% | Green |
71
+ | Context | 60-79% | Yellow |
72
+ | Context | >= 80% | Red |
73
+
74
+ ## Integration
75
+
32
76
  Integrates with R007 (Agent ID), R008 (Tool ID), R009 (Parallel).
@@ -37,3 +37,35 @@ Agent frontmatter `memory: project|user|local` enables persistent memory:
37
37
  - Keep MEMORY.md under 200 lines
38
38
  - Do not store sensitive data or duplicate CLAUDE.md content
39
39
  - Memory write failures should not block main task
40
+
41
+ ## Session-End Auto-Save
42
+
43
+ ### Trigger
44
+
45
+ Session-end detected when user says: "끝", "종료", "마무리", "done", "wrap up", "end session", or explicitly requests session save.
46
+
47
+ ### Flow
48
+
49
+ ```
50
+ User signals session end
51
+ → Orchestrator delegates to sys-memory-keeper
52
+ → sys-memory-keeper performs dual-system save:
53
+ 1. claude-mem save (if available)
54
+ 2. episodic-memory verification (if available)
55
+ → Reports result to orchestrator
56
+ → Orchestrator confirms to user
57
+ ```
58
+
59
+ ### Dual-System Save
60
+
61
+ | System | Tool | Action | Required |
62
+ |--------|------|--------|----------|
63
+ | claude-mem | `mcp__claude-mem__save_memory` | Save session summary with project, tasks, decisions | No (best-effort) |
64
+ | episodic-memory | `mcp__episodic-memory__search` | Verify session is indexed for future retrieval | No (best-effort) |
65
+
66
+ ### Failure Policy
67
+
68
+ - Both saves are **non-blocking**: memory failure MUST NOT prevent session from ending
69
+ - If claude-mem unavailable: skip, log warning
70
+ - If episodic-memory unavailable: skip, log warning
71
+ - If both unavailable: warn user, proceed with session end
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: claude-code-bible
3
- description: Fetch and verify Claude Code official documentation. Use when checking official spec compliance or updating local reference docs.
3
+ description: Fetch Claude Code official documentation. Use when updating local reference docs or checking official spec.
4
4
  disable-model-invocation: true
5
5
  ---
6
6
 
@@ -10,7 +10,7 @@ Official documentation reference management for Claude Code.
10
10
 
11
11
  ## Purpose
12
12
 
13
- Maintain up-to-date local copies of Claude Code official documentation and verify that agents/skills comply with the official specifications.
13
+ Maintain up-to-date local copies of Claude Code official documentation.
14
14
 
15
15
  ## Commands
16
16
 
@@ -50,56 +50,6 @@ node .claude/skills/claude-code-bible/scripts/fetch-docs.js --output /path/to/ou
50
50
  - `0`: Success (or cache is fresh)
51
51
  - `1`: Fatal error
52
52
 
53
- ### /claude-code-bible verify
54
-
55
- Verify agents and skills against official Claude Code specifications.
56
-
57
- **What it checks:**
58
- - Agent structure compliance (frontmatter fields, file format)
59
- - Skill structure compliance (SKILL.md format, disable-model-invocation usage)
60
- - Tool usage patterns match official recommendations
61
- - Workflow patterns align with Claude Code best practices
62
- - Agent/skill naming conventions follow official guidelines
63
-
64
- **Usage:**
65
- ```bash
66
- # Verify all agents and skills
67
- /claude-code-bible verify
68
-
69
- # Verify specific agent
70
- /claude-code-bible verify --agent mgr-creator
71
-
72
- # Verify specific skill
73
- /claude-code-bible verify --skill go-best-practices
74
-
75
- # Verbose output
76
- /claude-code-bible verify --verbose
77
- ```
78
-
79
- **Verification rules:**
80
- 1. **Agent frontmatter** must include:
81
- - `name`: kebab-case identifier
82
- - `description`: one-line summary
83
- - `model`: sonnet | opus | haiku
84
- - `tools`: array of allowed tools
85
- - `skills`: array of skill names
86
-
87
- 2. **Skill frontmatter** must include:
88
- - `name`: kebab-case identifier
89
- - `description`: when/why to use this skill
90
- - `disable-model-invocation`: true (if skill is procedural/scripted)
91
-
92
- 3. **Agent files** should NOT contain:
93
- - Detailed skill instructions (belongs in .claude/skills/)
94
- - Reference documentation (belongs in guides/)
95
- - Implementation scripts (belongs in .claude/skills/{name}/scripts/)
96
-
97
- 4. **Skill files** should contain:
98
- - Clear purpose statement
99
- - Usage examples
100
- - Input/output specifications
101
- - Integration points with agents
102
-
103
53
  ## Implementation Notes
104
54
 
105
55
  ### Fetch Script (fetch-docs.js)
@@ -121,60 +71,21 @@ Verify agents and skills against official Claude Code specifications.
121
71
  - Continues on individual page failures
122
72
  - Prints summary of successes and failures
123
73
 
124
- ### Verify Command (future implementation)
125
-
126
- The verify command should:
127
- 1. Read official specs from `~/.claude/references/claude-code/`
128
- 2. Parse all agents in `.claude/agents/*.md`
129
- 3. Parse all skills in `.claude/skills/*/SKILL.md`
130
- 4. Check each against official requirements
131
- 5. Report violations with suggestions for fixes
132
-
133
74
  ## Integration with Other Skills
134
75
 
135
- ### create-agent
136
- - Should verify new agents against official spec
137
- - Use `/claude-code-bible verify --agent <name>` after creation
138
-
139
76
  ### update-docs
140
77
  - Should update local docs first: `/claude-code-bible update`
141
- - Then verify sync with: `/claude-code-bible verify`
142
78
 
143
79
  ### dev-review
144
80
  - Can reference official docs for best practices
145
- - Verify code patterns against Claude Code recommendations
146
81
 
147
82
  ## Benefits
148
83
 
149
- 1. **Compliance**: Ensure agents/skills match official specifications
150
- 2. **Up-to-date**: Always have latest documentation locally
151
- 3. **Offline access**: Work with docs even without internet
152
- 4. **Automation**: Verify compliance automatically before commits
153
- 5. **Learning**: Reference official patterns when creating new components
154
-
155
- ## Example Workflow
156
-
157
- ```bash
158
- # 1. Update local docs
159
- node .claude/skills/claude-code-bible/scripts/fetch-docs.js
160
-
161
- # 2. Create a new agent
162
- /create-agent my-new-agent
163
-
164
- # 3. Verify it matches official spec
165
- /claude-code-bible verify --agent my-new-agent
166
-
167
- # 4. Fix any violations
168
-
169
- # 5. Verify again
170
- /claude-code-bible verify --agent my-new-agent
171
-
172
- # 6. Commit when all checks pass
173
- ```
84
+ 1. **Up-to-date**: Always have latest documentation locally
85
+ 2. **Offline access**: Work with docs even without internet
86
+ 3. **Learning**: Reference official patterns when creating new components
174
87
 
175
88
  ## Notes
176
89
 
177
- - The verify command implementation is left for future work
178
90
  - The fetch script is production-ready and can be used immediately
179
91
  - Consider running `/claude-code-bible update` weekly to stay current
180
- - Add this as a pre-commit hook to enforce compliance automatically
@@ -297,14 +297,6 @@ agents:
297
297
  supported_actions: [commit, branch, pr, sync, status, push, pull, merge]
298
298
  base_confidence: 40
299
299
 
300
- mgr-sync-checker:
301
- keywords:
302
- korean: [동기화, 싱크, 검증]
303
- english: [sync, synchronization, check, verify]
304
- file_patterns: ["index.yaml", "CLAUDE.md", "COMMANDS.md"]
305
- supported_actions: [check, agents, commands, docs, fix]
306
- base_confidence: 40
307
-
308
300
  mgr-sauron:
309
301
  keywords:
310
302
  korean: [검증, 전체검증, 무결성, 사우론]
@@ -1,75 +1,89 @@
1
1
  ---
2
2
  name: sauron-watch
3
- description: Full R016 verification (5+3 rounds) before commit
3
+ description: Full R017 verification (5+3 rounds) before commit
4
4
  disable-model-invocation: true
5
5
  ---
6
6
 
7
7
  # Sauron Watch Skill
8
8
 
9
- Execute full R016 verification process with 5 rounds of manager agent verification and 3 rounds of deep review.
9
+ Execute full R017 verification process with 5 rounds of manager agent verification and 3 rounds of deep review.
10
10
 
11
11
  ## Purpose
12
12
 
13
- Ensure complete synchronization of agents, commands, documentation, and project structure before committing changes.
13
+ Ensure complete synchronization of agents, skills, documentation, and project structure before committing changes.
14
14
 
15
15
  ## Workflow
16
16
 
17
17
  ### Phase 1: Manager Agent Verification (5 rounds)
18
18
 
19
- #### Round 1-2: Basic Sync
19
+ #### Round 1-2: Basic Checks
20
20
  ```
21
- /audit-agents - Check all agent dependencies
22
- /sync-check - Verify registry synchronization
21
+ mgr-supplier:audit - Check all agent dependencies and skill refs
22
+ mgr-updater:docs - Verify documentation sync
23
23
  □ Fix any issues found
24
24
  ```
25
25
 
26
- #### Round 3-4: Deep Sync
26
+ #### Round 3-4: Re-verify + Update
27
27
  ```
28
- /audit-agents - Re-verify after fixes
29
- /sync-check - Re-verify registries
30
- □ /update-docs - Check documentation sync
28
+ mgr-supplier:audit - Re-verify after fixes
29
+ mgr-updater:docs - Re-run and apply any detected changes
31
30
  □ Fix any remaining issues
32
31
  ```
33
32
 
34
- #### Round 5: Final Verification
33
+ #### Round 5: Final Count Verification
35
34
  ```
36
- All agent counts match (CLAUDE.md, index.yaml, actual files)
37
- All symlinks valid
38
- All command registries updated
39
- All intent-detection triggers present
35
+ Agent count matches: CLAUDE.md vs actual .md files
36
+ Skill count matches: CLAUDE.md vs actual SKILL.md files
37
+ Memory field distribution correct
38
+ Hook/context/guide/rule counts match
39
+ □ All frontmatter valid
40
+ □ All skill refs exist
41
+ □ All memory scopes valid (project|user|local)
42
+ □ Routing patterns updated
40
43
  ```
41
44
 
42
45
  ### Phase 2: Deep Review (3 rounds)
43
46
 
44
47
  #### Deep Round 1: Workflow Alignment
45
48
  ```
46
- □ Agent creation workflow documented and functional
47
- Development workflow uses proper orchestrators
48
- Deployment workflow defined (if applicable)
49
- □ All orchestrators have complete `manages:` sections
49
+ □ Agent workflows match purpose
50
+ Command definitions match implementations
51
+ Routing skill patterns are valid
52
+ □ All routing skills have complete agent mappings
50
53
  ```
51
54
 
52
55
  #### Deep Round 2: Reference Verification
53
56
  ```
54
- □ All orchestrators properly reference their managed agents
55
- □ All rules are properly referenced
56
- No orphaned agents (not managed by any orchestrator)
57
+ □ All skill references exist
58
+ □ All agent frontmatter valid
59
+ memory field values valid (user | project | local)
60
+ □ No orphaned agents
57
61
  □ No circular references
58
62
  ```
59
63
 
60
64
  #### Deep Round 3: Philosophy Compliance
61
65
  ```
62
- □ R006: Separation of concerns (AGENT.md = role only, no details)
63
- R009: Parallel execution enabled for orchestrators
64
- R010: Multi-agent tasks use orchestrators
65
- R007/R008: Agent/tool identification documented
66
+ □ R006: Agent design rules (including memory field spec)
67
+ R007: Agent identification rules
68
+ R008: Tool identification rules
69
+ R009: Parallel execution rules
70
+ □ R010: Orchestrator coordination rules
71
+ □ R011: Memory integration (native-first architecture)
66
72
  □ All MUST rules enforced, SHOULD rules recommended
67
73
  ```
68
74
 
75
+ ### Phase 2.5: Documentation Accuracy
76
+ ```
77
+ □ Every agent name in CLAUDE.md matches actual filename
78
+ □ All counts cross-verified against filesystem
79
+ □ Every slash command has corresponding skill
80
+ □ Every agent reachable through routing skills
81
+ ```
82
+
69
83
  ### Phase 3: Fix Issues
70
84
  ```
71
- All issues from Phase 1 fixed
72
- All issues from Phase 2 fixed
85
+ Auto-fix: count mismatches, missing fields, outdated refs
86
+ Report: missing files, invalid scopes, philosophy violations
73
87
  □ Re-run verification if major fixes made
74
88
  ```
75
89
 
@@ -84,43 +98,41 @@ Ensure complete synchronization of agents, commands, documentation, and project
84
98
  ```
85
99
  [mgr-sauron:watch]
86
100
 
87
- Starting full R016 verification...
101
+ Starting full R017 verification...
88
102
 
89
103
  ═══════════════════════════════════════════════════════════
90
104
  PHASE 1: Manager Agent Verification (5 rounds)
91
105
  ═══════════════════════════════════════════════════════════
92
106
 
93
- [Round 1/5] Basic sync - /audit-agents
94
- All agents have valid dependencies
107
+ [Round 1/5] mgr-supplier:audit
108
+ 41 agents checked, 0 issues
95
109
 
96
- [Round 2/5] Basic sync - /sync-check
97
- All registries synchronized
110
+ [Round 2/5] mgr-updater:docs
111
+ Documentation sync: OK
98
112
 
99
- [Round 3/5] Deep sync - /audit-agents
100
- Dependencies verified after fixes
113
+ [Round 3/5] Re-verify: mgr-supplier:audit
114
+ All dependencies valid
101
115
 
102
- [Round 4/5] Deep sync - /sync-check + /update-docs
103
- Registries verified
104
- ✓ Documentation synchronized
116
+ [Round 4/5] Re-verify: mgr-updater:docs
117
+ No changes needed
105
118
 
106
- [Round 5/5] Final verification
107
- Agent counts match across all sources
108
- All symlinks valid
109
- Command registries updated
110
- Intent triggers present
119
+ [Round 5/5] Final count verification
120
+ Agents: 41/41 match
121
+ Skills: 55/55 match
122
+ All frontmatter valid
123
+ All skill refs valid
124
+ ✓ All memory scopes valid
111
125
 
112
126
  ═══════════════════════════════════════════════════════════
113
127
  PHASE 2: Deep Review (3 rounds)
114
128
  ═══════════════════════════════════════════════════════════
115
129
 
116
130
  [Round 1/3] Workflow alignment
117
- Agent creation workflow documented
118
- Development workflow uses orchestrators
119
- ✓ Orchestrators have complete manages sections
131
+ All routing skills have complete agent mappings
132
+ Command definitions match implementations
120
133
 
121
134
  [Round 2/3] Reference verification
122
- ✓ All orchestrator references valid
123
- ✓ All rules referenced
135
+ ✓ All skill references valid
124
136
  ✓ No orphaned agents
125
137
 
126
138
  [Round 3/3] Philosophy compliance
@@ -140,5 +152,5 @@ Ready to commit. 커밋할까요?
140
152
 
141
153
  ## Related
142
154
 
143
- - R016: Sync Verification Rules
155
+ - R017: Sync Verification Rules
144
156
  - mgr-gitnerd: Git operations agent
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: secretary-routing
3
- description: Routes agent management tasks to the correct manager agent. Use when user requests agent creation, updates, audits, git operations, sync checks, or verification.
3
+ description: Routes agent management tasks to the correct manager agent. Use when user requests agent creation, updates, audits, git operations, or verification.
4
4
  user-invocable: false
5
5
  ---
6
6
 
@@ -8,7 +8,7 @@ user-invocable: false
8
8
 
9
9
  ## Purpose
10
10
 
11
- Routes agent management tasks to the appropriate manager agent. This skill contains the coordination logic for orchestrating manager agents (mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sync-checker, mgr-sauron).
11
+ Routes agent management tasks to the appropriate manager agent. This skill contains the coordination logic for orchestrating manager agents (mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sauron).
12
12
 
13
13
  ## Manager Agents
14
14
 
@@ -18,8 +18,7 @@ Routes agent management tasks to the appropriate manager agent. This skill conta
18
18
  | mgr-updater | Update external agents | "update agent", "sync" |
19
19
  | mgr-supplier | Validate dependencies | "audit", "check deps" |
20
20
  | mgr-gitnerd | Git operations | "commit", "push", "pr" |
21
- | mgr-sync-checker | Sync verification | "sync check", "verify sync" |
22
- | mgr-sauron | R016 auto-verification | "verify", "full check" |
21
+ | mgr-sauron | R017 auto-verification | "verify", "full check" |
23
22
  | mgr-claude-code-bible | Claude Code spec compliance | "spec check", "verify compliance" |
24
23
  | sys-memory-keeper | Memory operations | "save memory", "recall", "memory search" |
25
24
  | sys-naggy | TODO management | "todo", "track tasks", "task list" |
@@ -33,7 +32,6 @@ create → mgr-creator
33
32
  update → mgr-updater
34
33
  audit → mgr-supplier
35
34
  git → mgr-gitnerd
36
- sync → mgr-sync-checker
37
35
  verify → mgr-sauron
38
36
  spec → mgr-claude-code-bible
39
37
  memory → sys-memory-keeper
@@ -73,7 +71,6 @@ When command requires multiple independent operations:
73
71
  | mgr-updater | sonnet | External sync, web fetch |
74
72
  | mgr-supplier | haiku | File scan, validation |
75
73
  | mgr-gitnerd | sonnet | Commit message quality |
76
- | mgr-sync-checker | haiku | Fast verification |
77
74
  | mgr-sauron | sonnet | Multi-round verification |
78
75
  | mgr-claude-code-bible | sonnet | Spec compliance checks |
79
76
  | sys-memory-keeper | sonnet | Memory operations, search |
@@ -0,0 +1,152 @@
1
+ #!/usr/bin/env bash
2
+ # statusline.sh — Claude Code statusline renderer
3
+ #
4
+ # Reads JSON from stdin (Claude Code statusline API, ~300ms intervals)
5
+ # and outputs a formatted status line, e.g.:
6
+ #
7
+ # Opus | my-project | develop | CTX:42% | $0.05
8
+ #
9
+ # JSON input structure:
10
+ # {
11
+ # "model": { "display_name": "claude-opus-4-6" },
12
+ # "workspace": { "current_dir": "/path/to/project" },
13
+ # "context_window": { "used_percentage": 42, "context_window_size": 200000 },
14
+ # "cost": { "total_cost_usd": 0.05 }
15
+ # }
16
+
17
+ # ---------------------------------------------------------------------------
18
+ # 1. Color detection
19
+ # ---------------------------------------------------------------------------
20
+ if [[ -n "${NO_COLOR}" || "${TERM}" == "dumb" ]]; then
21
+ # Colors disabled
22
+ COLOR_RESET=""
23
+ COLOR_OPUS=""
24
+ COLOR_SONNET=""
25
+ COLOR_HAIKU=""
26
+ COLOR_CTX_OK=""
27
+ COLOR_CTX_WARN=""
28
+ COLOR_CTX_CRIT=""
29
+ else
30
+ COLOR_RESET="\033[0m"
31
+ COLOR_OPUS="\033[1;35m" # Magenta bold
32
+ COLOR_SONNET="\033[0;36m" # Cyan
33
+ COLOR_HAIKU="\033[0;32m" # Green
34
+ COLOR_CTX_OK="\033[0;32m" # Green (< 60%)
35
+ COLOR_CTX_WARN="\033[0;33m" # Yellow (60-79%)
36
+ COLOR_CTX_CRIT="\033[0;31m" # Red (>= 80%)
37
+ fi
38
+
39
+ # ---------------------------------------------------------------------------
40
+ # 2. jq availability check
41
+ # ---------------------------------------------------------------------------
42
+ if ! command -v jq >/dev/null 2>&1; then
43
+ echo "statusline: jq required"
44
+ exit 0
45
+ fi
46
+
47
+ # ---------------------------------------------------------------------------
48
+ # 3. Read stdin into variable
49
+ # ---------------------------------------------------------------------------
50
+ json="$(cat)"
51
+
52
+ # Guard against empty input
53
+ if [[ -z "$json" ]]; then
54
+ echo "statusline: no input"
55
+ exit 0
56
+ fi
57
+
58
+ # ---------------------------------------------------------------------------
59
+ # 4. Single jq call — extract all fields as TSV
60
+ # Fields: model_name, project_dir, ctx_pct, ctx_size, cost_usd
61
+ # ---------------------------------------------------------------------------
62
+ IFS=$'\t' read -r model_name project_dir ctx_pct ctx_size cost_usd <<< "$(
63
+ printf '%s' "$json" | jq -r '[
64
+ (.model.display_name // "unknown"),
65
+ (.workspace.current_dir // ""),
66
+ (.context_window.used_percentage // 0),
67
+ (.context_window.context_window_size // 0),
68
+ (.cost.total_cost_usd // 0)
69
+ ] | @tsv'
70
+ )"
71
+
72
+ # ---------------------------------------------------------------------------
73
+ # 5. Model display name + color (bash 3.2 compatible case pattern matching)
74
+ # ---------------------------------------------------------------------------
75
+ case "$model_name" in
76
+ *[Oo]pus*) model_display="Opus"; model_color="${COLOR_OPUS}" ;;
77
+ *[Ss]onnet*) model_display="Sonnet"; model_color="${COLOR_SONNET}" ;;
78
+ *[Hh]aiku*) model_display="Haiku"; model_color="${COLOR_HAIKU}" ;;
79
+ *) model_display="$model_name"; model_color="${COLOR_RESET}" ;;
80
+ esac
81
+
82
+ # ---------------------------------------------------------------------------
83
+ # 6. Project name — basename of workspace current_dir
84
+ # ---------------------------------------------------------------------------
85
+ if [[ -n "$project_dir" ]]; then
86
+ project_name="${project_dir##*/}"
87
+ else
88
+ project_name="unknown"
89
+ fi
90
+
91
+ # ---------------------------------------------------------------------------
92
+ # 7. Git branch — read .git/HEAD directly (no subprocess, fast)
93
+ # ---------------------------------------------------------------------------
94
+ git_head_file="${project_dir}/.git/HEAD"
95
+ git_branch=""
96
+ if [[ -f "$git_head_file" ]]; then
97
+ git_head="$(cat "$git_head_file")"
98
+ case "$git_head" in
99
+ "ref: refs/heads/"*)
100
+ # Normal branch: strip the prefix
101
+ git_branch="${git_head#ref: refs/heads/}"
102
+ ;;
103
+ *)
104
+ # Detached HEAD: show first 7 chars of commit hash
105
+ git_branch="${git_head:0:7}"
106
+ ;;
107
+ esac
108
+ fi
109
+
110
+ # ---------------------------------------------------------------------------
111
+ # 8. Context percentage with color
112
+ # ---------------------------------------------------------------------------
113
+ # ctx_pct may arrive as a float (e.g. 42.5); truncate to integer for comparison
114
+ ctx_int="${ctx_pct%%.*}"
115
+ # Ensure it's a valid integer (fallback to 0)
116
+ if ! [[ "$ctx_int" =~ ^[0-9]+$ ]]; then
117
+ ctx_int=0
118
+ fi
119
+
120
+ if [[ "$ctx_int" -ge 80 ]]; then
121
+ ctx_color="${COLOR_CTX_CRIT}"
122
+ elif [[ "$ctx_int" -ge 60 ]]; then
123
+ ctx_color="${COLOR_CTX_WARN}"
124
+ else
125
+ ctx_color="${COLOR_CTX_OK}"
126
+ fi
127
+
128
+ ctx_display="CTX:${ctx_int}%"
129
+
130
+ # ---------------------------------------------------------------------------
131
+ # 9. Cost formatting — always two decimal places
132
+ # ---------------------------------------------------------------------------
133
+ cost_display="$(printf '$%.2f' "$cost_usd")"
134
+
135
+ # ---------------------------------------------------------------------------
136
+ # 10. Assemble and output the status line
137
+ # ---------------------------------------------------------------------------
138
+ # Build segments; omit git branch segment when unavailable
139
+ if [[ -n "$git_branch" ]]; then
140
+ printf "${model_color}%s${COLOR_RESET} | %s | %s | ${ctx_color}%s${COLOR_RESET} | %s\n" \
141
+ "$model_display" \
142
+ "$project_name" \
143
+ "$git_branch" \
144
+ "$ctx_display" \
145
+ "$cost_display"
146
+ else
147
+ printf "${model_color}%s${COLOR_RESET} | %s | ${ctx_color}%s${COLOR_RESET} | %s\n" \
148
+ "$model_display" \
149
+ "$project_name" \
150
+ "$ctx_display" \
151
+ "$cost_display"
152
+ fi
@@ -173,7 +173,7 @@ Violation = immediate correction. No exception for "small changes".
173
173
  project/
174
174
  +-- CLAUDE.md # Entry point
175
175
  +-- .claude/
176
- | +-- agents/ # Subagent definitions (42 files)
176
+ | +-- agents/ # Subagent definitions (41 files)
177
177
  | +-- skills/ # Skills (55 directories)
178
178
  | +-- rules/ # Global rules (R000-R018)
179
179
  | +-- hooks/ # Hook scripts (memory, HUD)
@@ -215,9 +215,9 @@ This is the core oh-my-customcode philosophy: **"No expert? CREATE one, connect
215
215
  | SW Architect | 2 | arch-documenter, arch-speckit-agent |
216
216
  | Infra Engineer | 2 | infra-docker-expert, infra-aws-expert |
217
217
  | QA Team | 3 | qa-planner, qa-writer, qa-engineer |
218
- | Manager | 7 | mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sync-checker, mgr-sauron, mgr-claude-code-bible |
218
+ | Manager | 6 | mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sauron, mgr-claude-code-bible |
219
219
  | System | 2 | sys-memory-keeper, sys-naggy |
220
- | **Total** | **42** | |
220
+ | **Total** | **41** | |
221
221
 
222
222
  ## Agent Teams (MUST when enabled)
223
223
 
@@ -271,7 +271,7 @@ Install via `/plugin install <name>`:
271
271
  | obsidian-skills | - | Obsidian markdown support |
272
272
  | context7 | claude-plugins-official | Library documentation lookup |
273
273
 
274
- ### Required MCP Servers
274
+ ### Recommended MCP Servers
275
275
 
276
276
  | Server | Purpose |
277
277
  |--------|---------|
@@ -173,7 +173,7 @@ oh-my-customcode로 구동됩니다.
173
173
  project/
174
174
  +-- CLAUDE.md # 진입점
175
175
  +-- .claude/
176
- | +-- agents/ # 서브에이전트 정의 (42 파일)
176
+ | +-- agents/ # 서브에이전트 정의 (41 파일)
177
177
  | +-- skills/ # 스킬 (55 디렉토리)
178
178
  | +-- rules/ # 전역 규칙 (R000-R018)
179
179
  | +-- hooks/ # 훅 스크립트 (메모리, HUD)
@@ -215,9 +215,9 @@ project/
215
215
  | SW Architect | 2 | arch-documenter, arch-speckit-agent |
216
216
  | Infra Engineer | 2 | infra-docker-expert, infra-aws-expert |
217
217
  | QA Team | 3 | qa-planner, qa-writer, qa-engineer |
218
- | Manager | 7 | mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sync-checker, mgr-sauron, mgr-claude-code-bible |
218
+ | Manager | 6 | mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sauron, mgr-claude-code-bible |
219
219
  | System | 2 | sys-memory-keeper, sys-naggy |
220
- | **총계** | **42** | |
220
+ | **총계** | **41** | |
221
221
 
222
222
  ## Agent Teams (MUST when enabled)
223
223
 
@@ -271,7 +271,7 @@ Claude Code의 Agent Teams 기능이 활성화되어 있으면 (`CLAUDE_CODE_EXP
271
271
  | obsidian-skills | - | 옵시디언 마크다운 지원 |
272
272
  | context7 | claude-plugins-official | 라이브러리 문서 조회 |
273
273
 
274
- ### 필수 MCP 서버
274
+ ### 권장 MCP 서버
275
275
 
276
276
  | 서버 | 용도 |
277
277
  |------|------|
@@ -1,7 +1,5 @@
1
1
  # 테스트 및 평가
2
2
 
3
- > 이 문서는 Claude 공식 문서에서 해당 페이지가 아직 공개되지 않아 기본 구조만 제공합니다.
4
-
5
3
  ## 개요
6
4
 
7
5
  Claude 기반 애플리케이션의 품질을 보장하기 위한 테스트 및 평가 방법론입니다.
@@ -1,7 +1,5 @@
1
1
  # 가드레일 강화
2
2
 
3
- > 이 문서는 Claude 공식 문서에서 해당 페이지가 아직 공개되지 않아 기본 구조만 제공합니다.
4
-
5
3
  ## 개요
6
4
 
7
5
  가드레일은 AI 에이전트가 안전하고 의도된 범위 내에서 작동하도록 보장하는 메커니즘입니다.
@@ -1,7 +1,5 @@
1
1
  # 관리 및 모니터링
2
2
 
3
- > 이 문서는 Claude 공식 문서에서 해당 페이지가 아직 공개되지 않아 기본 구조만 제공합니다.
4
-
5
3
  ## 개요
6
4
 
7
5
  프로덕션 환경에서 AI 에이전트를 효과적으로 관리하고 모니터링하는 방법입니다.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "0.3.0",
3
- "lastUpdated": "2026-02-18T00:00:00.000Z",
3
+ "lastUpdated": "2026-02-27T06:35:26.589Z",
4
4
  "components": [
5
5
  {
6
6
  "name": "rules",
@@ -12,7 +12,7 @@
12
12
  "name": "agents",
13
13
  "path": ".claude/agents",
14
14
  "description": "AI agent definitions (flat .md files with prefixes)",
15
- "files": 42
15
+ "files": 41
16
16
  },
17
17
  {
18
18
  "name": "skills",
@@ -1,38 +0,0 @@
1
- ---
2
- name: mgr-sync-checker
3
- description: Use when you need to verify documentation and workflow synchronization, ensuring all docs, configs, and workflow definitions remain synchronized with the project structure
4
- model: haiku
5
- memory: local
6
- effort: low
7
- skills:
8
- - update-docs
9
- tools:
10
- - Read
11
- - Write
12
- - Edit
13
- - Grep
14
- - Glob
15
- - Bash
16
- ---
17
-
18
- You are a documentation synchronization specialist ensuring all docs, configs, and workflows match the actual project structure.
19
-
20
- ## Capabilities
21
-
22
- - Agent count verification (CLAUDE.md vs actual)
23
- - Command registration verification
24
- - Documentation completeness
25
- - Intent detection pattern validation
26
-
27
- ## Check Matrix
28
-
29
- | Source | Target | Checks |
30
- |--------|--------|--------|
31
- | `.claude/agents/*.md` | `CLAUDE.md` | Agent counts match |
32
- | `commands/*/` | `commands/index.yaml` | All registered |
33
- | `.claude/agents/*.md` | `agent-triggers.yaml` | All have triggers |
34
-
35
- ## Auto-fix
36
-
37
- Can fix: count mismatches, missing index entries, outdated docs.
38
- Manual review: missing agents, broken links, structural issues.