oh-my-customcode 0.93.0 → 0.95.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.
- package/dist/cli/index.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/templates/.claude/hooks/hooks.json +1 -1
- package/templates/.claude/rules/MUST-agent-design.md +9 -2
- package/templates/.claude/rules/MUST-completion-verification.md +16 -4
- package/templates/.claude/rules/MUST-continuous-improvement.md +6 -2
- package/templates/.claude/rules/MUST-enforcement-policy.md +3 -1
- package/templates/.claude/rules/MUST-intent-transparency.md +6 -2
- package/templates/.claude/rules/MUST-orchestrator-coordination.md +45 -0
- package/templates/.claude/rules/MUST-parallel-execution.md +54 -0
- package/templates/.claude/rules/MUST-sync-verification.md +8 -3
- package/templates/.claude/rules/SHOULD-ecomode.md +12 -3
- package/templates/.claude/rules/SHOULD-interaction.md +3 -1
- package/templates/.claude/rules/SHOULD-wiki-sync.md +9 -3
- package/templates/CLAUDE.md +11 -55
- package/templates/manifest.json +1 -1
package/dist/cli/index.js
CHANGED
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -317,7 +317,7 @@
|
|
|
317
317
|
"hooks": [
|
|
318
318
|
{
|
|
319
319
|
"type": "prompt",
|
|
320
|
-
"prompt": "Context compacted. RULES ACTIVE.\n\nR007: next response MUST start with ┌─ Agent: claude (default) / └─ Task: {task}\nR008: before EVERY tool call → [claude][model] → Tool: Name / Target: path\nR010: write→delegate to subagent; orchestrator read-only (Read/Glob/Grep); git→mgr-gitnerd\nR009: 2+ independent tasks → parallel agents, same message\nR018: 3+ agents OR review cycle → Agent Teams\nR000: user communication in Korean (한국어); code/files in English — NON-NEGOTIABLE\n\nAutonomous mode: if /tmp/.claude-autonomous-$PPID exists → simple git (add/commit/push) may run directly; Write/Edit still delegates.\nbypassPermissions does NOT persist across compaction — re-enable if tasks seem blocked.\n\nRe-read CLAUDE.md NOW."
|
|
320
|
+
"prompt": "Context compacted. RULES ACTIVE.\n\nR007: next response MUST start with ┌─ Agent: claude (default) / └─ Task: {task}\nR008: before EVERY tool call → [claude][model] → Tool: Name / Target: path\nR010: write→delegate to subagent; orchestrator read-only (Read/Glob/Grep); git→mgr-gitnerd\nR009: 2+ independent tasks → parallel agents, same message\nR018: 3+ agents OR review cycle → Agent Teams\nR000: user communication in Korean (한국어); code/files in English — NON-NEGOTIABLE\nR001: prohibited actions (no secrets, no system files, no rm -rf); stop on violation → preserve state → report → wait\nR002: tool tiers (Read/Grep=free, Write/Edit=notify, Bash=approval); no writes outside project; no .env/.git/config\n\nAutonomous mode: if /tmp/.claude-autonomous-$PPID exists → simple git (add/commit/push) may run directly; Write/Edit still delegates.\nbypassPermissions does NOT persist across compaction — re-enable if tasks seem blocked.\n\nRe-read CLAUDE.md NOW."
|
|
321
321
|
}
|
|
322
322
|
],
|
|
323
323
|
"description": "Reinforce enforced rules after context compaction — prevents rule amnesia (v2.1.76+)"
|
|
@@ -65,11 +65,17 @@ disableSkillShellExecution: true # Disable inline shell execution in skills (v2
|
|
|
65
65
|
|
|
66
66
|
> **Note**: When `disableSkillShellExecution` is enabled (v2.1.91+), skills that rely on inline shell execution (e.g., `codex-exec`, `gemini-exec`, `rtk-exec`) will have their shell blocks disabled. This is a security hardening option.
|
|
67
67
|
|
|
68
|
-
> **Note**:
|
|
68
|
+
> **Note**: Optional frontmatter fields supported since CC v2.1.63+. Version-specific features listed in HTML comment below — access via Read tool.
|
|
69
|
+
|
|
70
|
+
<!-- DETAIL: CC Version Compatibility History
|
|
71
|
+
`isolation`, `background`, `maxTurns`, `maxTokens`, `mcpServers`, `hooks`, `permissionMode`, `disallowedTools`, `limitations` are supported in Claude Code v2.1.63+. Hook types `PostCompact`, `Elicitation`, `ElicitationResult` require v2.1.76+. `CwdChanged`, `FileChanged` hook events and `managed-settings.d/` drop-in directory require v2.1.83+. Conditional `if` field for hooks requires v2.1.85+. `PermissionDenied` hook event requires v2.1.88+. `refreshInterval` setting for status line auto-refresh interval added in v2.1.97+. Monitor tool and subprocess sandboxing (`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`, `CLAUDE_CODE_SCRIPT_CAPS`) added in v2.1.98+. Settings resilience (unrecognized hook event names no longer cause settings.json to be ignored) improved in v2.1.101+. PreCompact hook block support (exit 2 / `{"decision":"block"}`) added in v2.1.105+. Skill description listing cap raised from 250 to 1,536 characters in v2.1.105+. Plugin `monitors` manifest key for background monitors added in v2.1.105+. `ENABLE_PROMPT_CACHING_1H` and `FORCE_PROMPT_CACHING_5M` env vars for prompt cache TTL control added in v2.1.108+. Skill tool can now discover and invoke built-in slash commands (`/init`, `/review`, `/security-review`) in v2.1.108+. `/recap` session context feature and `/undo` alias for `/rewind` added in v2.1.108+. `/tui` command and `tui` setting for fullscreen rendering added in v2.1.110+. PushNotification tool for mobile push notifications (Remote Control + config required) added in v2.1.110+. `autoScrollEnabled` config for fullscreen mode added in v2.1.110+. SDK/headless `TRACEPARENT`/`TRACESTATE` distributed trace linking added in v2.1.110+. Bash tool maximum timeout enforcement added in v2.1.110+. Write tool IDE diff feedback (informs model when user edits proposed content) added in v2.1.110+. `--resume`/`--continue` now resurrects unexpired scheduled tasks in v2.1.110+. `/focus` command (separated from Ctrl+O) added in v2.1.110+. `xhigh` effort level for Opus 4.7 (between `high` and `max`; other models fall back to `high`) added in v2.1.111+. `/effort` interactive slider with arrow-key navigation (when called without arguments) added in v2.1.111+. Auto mode no longer requires `--enable-auto-mode` in v2.1.111+. PowerShell tool progressive rollout (`CLAUDE_CODE_USE_POWERSHELL_TOOL` env var) added in v2.1.111+. Read-only bash commands with glob patterns (`ls *.ts`) and `cd <project-dir> &&` prefix no longer trigger permission prompt in v2.1.111+. `/less-permission-prompts` built-in skill for permission allowlist scanning added in v2.1.111+. `/ultrareview` parallel multi-agent cloud code review added in v2.1.111+. `/skills` menu sorting by estimated token count (press `t`) added in v2.1.111+. `OTEL_LOG_RAW_API_BODIES` env var for full API request/response body logging added in v2.1.111+. Plan files named after prompt content (not random words) in v2.1.111+. Plugin error handling improvements (dependency conflict errors, stale version recovery, install recovery) in v2.1.111+.
|
|
72
|
+
-->
|
|
69
73
|
|
|
70
74
|
## Hook Event Types
|
|
71
75
|
|
|
72
|
-
|
|
76
|
+
20 event types supported: PreToolUse, PostToolUse, PreCompact, PostCompact, Stop, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit, Notification, CwdChanged, FileChanged, Elicitation, ElicitationResult, PostMessage, PermissionDenied, TeammateIdle, TaskCreated, TaskCompleted. 4 handler types: command, prompt, http, agent. See full reference table via Read tool.
|
|
77
|
+
|
|
78
|
+
<!-- DETAIL: Hook Event Types Full Reference
|
|
73
79
|
|
|
74
80
|
| Event | Trigger | Data Available | Handler Types | CC Version |
|
|
75
81
|
|-------|---------|---------------|---------------|------------|
|
|
@@ -137,6 +143,7 @@ hooks:
|
|
|
137
143
|
```
|
|
138
144
|
|
|
139
145
|
> **v2.1.85+**: `if` field supports permission rule syntax for conditional hook execution. **v2.1.88** extended `if` matching to support compound commands (`ls && git push`) and commands with env-var prefixes (`FOO=bar git push`).
|
|
146
|
+
-->
|
|
140
147
|
|
|
141
148
|
## Permission Mode Guidance
|
|
142
149
|
|
|
@@ -28,7 +28,9 @@ Before [Done]: (1) Verify ACTUAL outcome not just attempt — "ran command" ≠
|
|
|
28
28
|
4. Would I bet $100 this is truly complete? YES: Declare [Done] / NO: Identify uncertain and verify
|
|
29
29
|
-->
|
|
30
30
|
|
|
31
|
-
## Subagent Self-Report Verification
|
|
31
|
+
## Subagent Self-Report Verification — Verify "pre-existing" claims against base branch before acceptance. See details via Read tool.
|
|
32
|
+
|
|
33
|
+
<!-- DETAIL: Subagent Self-Report Verification
|
|
32
34
|
|
|
33
35
|
Subagents often report failures as "pre-existing", "baseline", or "unchanged". These claims MUST be verified against the base branch before acceptance.
|
|
34
36
|
|
|
@@ -40,8 +42,11 @@ Subagents often report failures as "pre-existing", "baseline", or "unchanged". T
|
|
|
40
42
|
| "Dependency issue not from this PR" | `git show {base}:package.json` compare |
|
|
41
43
|
|
|
42
44
|
Never accept "pre-existing" without direct base-branch evidence. A false "pre-existing" claim can mask a regression introduced by the current change.
|
|
45
|
+
-->
|
|
43
46
|
|
|
44
|
-
## Common False Completion Patterns
|
|
47
|
+
## Common False Completion Patterns — 7 anti-patterns including "Command executed" without exit code check, "Waiting for manual publish" when CI auto-publishes. See full table via Read tool.
|
|
48
|
+
|
|
49
|
+
<!-- DETAIL: Common False Completion Patterns
|
|
45
50
|
|
|
46
51
|
| Pattern | Reality | Fix |
|
|
47
52
|
|---------|---------|-----|
|
|
@@ -52,8 +57,11 @@ Never accept "pre-existing" without direct base-branch evidence. A false "pre-ex
|
|
|
52
57
|
| "Tests pass" | Only ran subset | Run full test suite |
|
|
53
58
|
| "Waiting for manual publish" | External CI/CD auto-publishes on merge | Check `.github/workflows/` BEFORE assuming manual step |
|
|
54
59
|
| "Subagent said pre-existing" | Claim not verified against base branch | Run test on base branch, compare directly |
|
|
60
|
+
-->
|
|
55
61
|
|
|
56
|
-
## Completion Contract Format
|
|
62
|
+
## Completion Contract Format — [Contract] + [Done] with criterion/evidence pairs. See template via Read tool.
|
|
63
|
+
|
|
64
|
+
<!-- DETAIL: Completion Contract Format
|
|
57
65
|
|
|
58
66
|
For complex tasks, declare completion contract upfront:
|
|
59
67
|
|
|
@@ -72,8 +80,11 @@ Then at completion:
|
|
|
72
80
|
├── ✓ Criterion 2: {evidence}
|
|
73
81
|
└── ✓ Criterion N: {evidence}
|
|
74
82
|
```
|
|
83
|
+
-->
|
|
75
84
|
|
|
76
|
-
## Autonomous Mode Entry Checklist
|
|
85
|
+
## Autonomous Mode Entry Checklist — 5-step inventory (workflows, runs, publish targets, manual points, cross-reference). See full checklist via Read tool.
|
|
86
|
+
|
|
87
|
+
<!-- DETAIL: Autonomous Mode Entry Checklist
|
|
77
88
|
|
|
78
89
|
When entering autonomous mode (user grants extended execution without per-step confirmation), perform this inventory BEFORE first action:
|
|
79
90
|
|
|
@@ -90,6 +101,7 @@ Record findings in session context. Failure to inventory automation is a R020 vi
|
|
|
90
101
|
Related memory records:
|
|
91
102
|
- `feedback_github_workflows_inventory.md` — original incident (v0.87.2~v0.88.0 session)
|
|
92
103
|
- `feedback_subagent_pre_existing_claims.md` — subagent false-positive pattern
|
|
104
|
+
-->
|
|
93
105
|
|
|
94
106
|
## Integration
|
|
95
107
|
|
|
@@ -48,18 +48,22 @@ When repeating agent failures or suboptimal routing is detected:
|
|
|
48
48
|
|
|
49
49
|
This connects R016's continuous improvement loop with the adaptive-harness skill's learning capability.
|
|
50
50
|
|
|
51
|
-
## Anti-Patterns
|
|
51
|
+
## Anti-Patterns — 4 patterns: "I'll update later", "one-time exception", "doesn't cover this", "finish task first". See table via Read tool.
|
|
52
52
|
|
|
53
|
+
<!-- DETAIL: Anti-Patterns
|
|
53
54
|
| Anti-Pattern | Why It's Wrong | Correct Action |
|
|
54
55
|
|-------------|----------------|----------------|
|
|
55
56
|
| "I'll update the rule later" | Deferred fixes are forgotten | Update rule NOW, before continuing |
|
|
56
57
|
| "This is a one-time exception" | Exceptions become patterns | If the rule is wrong, fix it; if it's right, follow it |
|
|
57
58
|
| "The rule doesn't cover this case" | Missing coverage = rule gap | Add the case to the rule immediately |
|
|
58
59
|
| "Let me finish the task first" | Rule violations compound | Fix rule first (5 min), then continue (prevents N future violations) |
|
|
60
|
+
-->
|
|
59
61
|
|
|
60
|
-
## Timing
|
|
62
|
+
## Timing — Rule updates MUST happen before continuing original task, in the same session.
|
|
61
63
|
|
|
64
|
+
<!-- DETAIL: Timing
|
|
62
65
|
Rule updates MUST happen:
|
|
63
66
|
- **Before** continuing the original task
|
|
64
67
|
- **In the same session** as the violation
|
|
65
68
|
- **Not** as a separate TODO or follow-up issue
|
|
69
|
+
-->
|
|
@@ -22,8 +22,9 @@ oh-my-customcode uses an **advisory-first enforcement model**. Most rules are en
|
|
|
22
22
|
3. **Composability**: External skills and internal rules can coexist without deadlocks
|
|
23
23
|
4. **PostCompact reinforcement**: R007/R008/R009/R010/R018 are re-injected after context compaction
|
|
24
24
|
|
|
25
|
-
## Hard Enforcement Candidates (
|
|
25
|
+
## Hard Enforcement Candidates — R010 git-delegation-guard (conditional), R007/R008 (conditional). Promoted: rule-deletion-guard.sh (2026-04-08). See details via Read tool.
|
|
26
26
|
|
|
27
|
+
<!-- DETAIL: Hard Enforcement Candidates (Future)
|
|
27
28
|
If advisory enforcement proves insufficient for specific rules, these are candidates for promotion to hard-block:
|
|
28
29
|
|
|
29
30
|
| Rule | Candidate Hook | Condition for Promotion |
|
|
@@ -38,6 +39,7 @@ Promotion requires: (1) measured violation rate data, (2) user approval, (3) rol
|
|
|
38
39
|
| Hook | Date | Justification |
|
|
39
40
|
|------|------|---------------|
|
|
40
41
|
| `rule-deletion-guard.sh` | 2026-04-08 | User-requested: rule files must require individual confirmation before deletion. Prevents accidental bulk deletion of project rules. |
|
|
42
|
+
-->
|
|
41
43
|
|
|
42
44
|
## Integration
|
|
43
45
|
|
|
@@ -24,21 +24,24 @@ Display reasoning when routing to agents. Users must always know which agent was
|
|
|
24
24
|
| 70-89% | Request confirmation, show alternatives |
|
|
25
25
|
| < 70% | List options for user to choose |
|
|
26
26
|
|
|
27
|
-
## Detection Factors
|
|
27
|
+
## Detection Factors — Weights: Keywords 40%, File patterns 30%, Action verbs 20%, Context 10%. See table via Read tool.
|
|
28
28
|
|
|
29
|
+
<!-- DETAIL: Detection Factors
|
|
29
30
|
| Factor | Weight | Examples |
|
|
30
31
|
|--------|--------|---------|
|
|
31
32
|
| Keywords | 40% | "Go", "Python", "리뷰" |
|
|
32
33
|
| File patterns | 30% | "*.go", "main.py" |
|
|
33
34
|
| Action verbs | 20% | "review", "create", "fix" |
|
|
34
35
|
| Context | 10% | Previous agent, working directory |
|
|
36
|
+
-->
|
|
35
37
|
|
|
36
38
|
## Override
|
|
37
39
|
|
|
38
40
|
Users can specify agent directly with `@{agent-name} {command}`. Override bypasses detection.
|
|
39
41
|
|
|
40
|
-
## User Directive Persistence
|
|
42
|
+
## User Directive Persistence — Named tool/skill/workflow preferences persist entire session. Anti-pattern: treating autonomous mode as clean slate. See full spec via Read tool.
|
|
41
43
|
|
|
44
|
+
<!-- DETAIL: User Directive Persistence
|
|
42
45
|
When a user explicitly names a tool, skill, or workflow (e.g., "use /pipeline auto-dev", "always run tests with bun test"), this preference persists for the entire session — including after autonomous mode transitions.
|
|
43
46
|
|
|
44
47
|
### Persistence Triggers
|
|
@@ -64,6 +67,7 @@ At the start of every work cycle (issue, task, release, or autonomous sub-loop):
|
|
|
64
67
|
### Cross-reference
|
|
65
68
|
|
|
66
69
|
- Related memory: session v0.87.2~v0.88.0 (issue #869) — `/pipeline auto-dev` preference was lost after autonomous mode transition
|
|
70
|
+
-->
|
|
67
71
|
|
|
68
72
|
## Agent Triggers
|
|
69
73
|
|
|
@@ -92,6 +92,12 @@ Key violations to avoid (file writes, git commands, bundled operations — all m
|
|
|
92
92
|
|
|
93
93
|
✓ CORRECT: Orchestrator delegates to specialist
|
|
94
94
|
Main conversation → Agent(lang-golang-expert) → Write("src/main.go", content)
|
|
95
|
+
|
|
96
|
+
❌ WRONG: External skill creates agent/skill/guide via general-purpose agent
|
|
97
|
+
Skill(brainstorming) → Agent(general-purpose) → Write(".claude/agents/new.md")
|
|
98
|
+
|
|
99
|
+
✓ CORRECT: Agent/skill/guide creation routed through mgr-creator
|
|
100
|
+
Skill(brainstorming) → Agent(mgr-creator) → Write(".claude/agents/new.md")
|
|
95
101
|
```
|
|
96
102
|
|
|
97
103
|
<!-- DETAIL: Common Violations (extended)
|
|
@@ -127,6 +133,17 @@ Key violations to avoid (file writes, git commands, bundled operations — all m
|
|
|
127
133
|
✓ CORRECT: Orchestrator delegates to infrastructure specialist
|
|
128
134
|
Main conversation → Agent(infra-docker-expert) → docker compose restart
|
|
129
135
|
Main conversation → Agent(infra-docker-expert) → deploy files to server
|
|
136
|
+
|
|
137
|
+
❌ WRONG: External skill creates agent/skill/guide via general-purpose agent
|
|
138
|
+
Skill(brainstorming) → Agent(general-purpose) → Write(".claude/agents/new-agent.md")
|
|
139
|
+
Skill(any-skill) → Agent(general-purpose) → Write(".claude/skills/new-skill/SKILL.md")
|
|
140
|
+
|
|
141
|
+
✓ CORRECT: Agent/skill/guide creation always routed through mgr-creator
|
|
142
|
+
Skill(brainstorming) → Agent(mgr-creator) → Write(".claude/agents/new-agent.md")
|
|
143
|
+
Skill(any-skill) → Agent(mgr-creator) → Write(".claude/skills/new-skill/SKILL.md")
|
|
144
|
+
|
|
145
|
+
The skill defines WHAT to create; mgr-creator handles HOW (R006 validation,
|
|
146
|
+
skill auto-discovery, frontmatter integrity).
|
|
130
147
|
```
|
|
131
148
|
-->
|
|
132
149
|
|
|
@@ -219,6 +236,8 @@ After restart/compaction: re-read CLAUDE.md, all delegation rules still apply. N
|
|
|
219
236
|
| Task Type | Required Agent |
|
|
220
237
|
|-----------|---------------|
|
|
221
238
|
| Create agent | mgr-creator |
|
|
239
|
+
| Create skill | mgr-creator |
|
|
240
|
+
| Create guide | mgr-creator (structure) / arch-documenter (content) |
|
|
222
241
|
| Update external | mgr-updater |
|
|
223
242
|
| Audit dependencies | mgr-supplier |
|
|
224
243
|
| Git operations | mgr-gitnerd |
|
|
@@ -243,6 +262,31 @@ After restart/compaction: re-read CLAUDE.md, all delegation rules still apply. N
|
|
|
243
262
|
- general-purpose only for truly generic tasks (file moves, simple scripts)
|
|
244
263
|
- No exceptions for "small" or "quick" changes
|
|
245
264
|
|
|
265
|
+
### Protected Paths (mgr-creator Required)
|
|
266
|
+
|
|
267
|
+
The following paths MUST be created or structurally modified ONLY through `mgr-creator`:
|
|
268
|
+
|
|
269
|
+
| Path Pattern | Scope | Reason |
|
|
270
|
+
|-------------|-------|--------|
|
|
271
|
+
| `.claude/agents/*.md` | Agent definitions | R006 frontmatter validation, skill auto-discovery |
|
|
272
|
+
| `.claude/skills/*/SKILL.md` | Skill definitions | R006 skill frontmatter, scope classification |
|
|
273
|
+
| `guides/*/` (new directories) | Reference guides | R006 separation of concerns, cross-reference integrity |
|
|
274
|
+
|
|
275
|
+
**Excluded from this rule** (handled by their own specialists):
|
|
276
|
+
- `.claude/agent-memory*/` — sys-memory-keeper
|
|
277
|
+
- `.claude/rules/` — R016 workflow (orchestrator delegates updates to appropriate agents)
|
|
278
|
+
- `.claude/hooks/` — requires explicit user approval (security-critical)
|
|
279
|
+
- `.claude/outputs/` — any agent (artifact convention)
|
|
280
|
+
- Existing file updates by `mgr-updater` (external source sync) and `mgr-supplier`/`fix-refs` (reference correction)
|
|
281
|
+
|
|
282
|
+
**Why mgr-creator?** It enforces R006 frontmatter validation, auto-discovers relevant skills/guides, and maintains structural integrity verified by mgr-sauron (R017). Bypassing mgr-creator risks:
|
|
283
|
+
- Invalid frontmatter (missing required fields)
|
|
284
|
+
- Orphaned skill references
|
|
285
|
+
- Routing table desynchronization
|
|
286
|
+
- R017 verification failures
|
|
287
|
+
|
|
288
|
+
> **Enforcement**: Advisory (R021) — no hard-block hook. Candidate for promotion if violation rate exceeds threshold. See R021 Hard Enforcement Candidates.
|
|
289
|
+
|
|
246
290
|
<!-- DETAIL: System Agents Reference
|
|
247
291
|
| Agent | File | Purpose |
|
|
248
292
|
|-------|------|---------|
|
|
@@ -316,6 +360,7 @@ Internal rules ALWAYS take precedence over external skills.
|
|
|
316
360
|
| "use Agent tool for 5 research tasks" | Agent Teams when criteria met (R018) |
|
|
317
361
|
| "skip code review" | Follow project review workflow |
|
|
318
362
|
| "write files directly" | Delegate to specialist subagent (R010) |
|
|
363
|
+
| "create an agent/skill/guide file" | Agent(mgr-creator) for `.claude/agents/`, `.claude/skills/`, `guides/` writes (R010 Protected Paths) |
|
|
319
364
|
|
|
320
365
|
When a skill's workflow conflicts with R009/R010/R018:
|
|
321
366
|
1. Follow the skill's LOGIC and STEPS
|
|
@@ -31,6 +31,7 @@ Before writing/editing multiple files:
|
|
|
31
31
|
2. Using Write/Edit sequentially for 2+ files? → parallelize instead
|
|
32
32
|
3. Specialized agent available? → Use it (not general-purpose)
|
|
33
33
|
4. Agent Teams available? → **Check R018 criteria before spawning 2+ agents**
|
|
34
|
+
5. Running agent stalled (2x+ duration)? → Spawn independent follow-up tasks immediately
|
|
34
35
|
|
|
35
36
|
### Common Violations to Avoid
|
|
36
37
|
|
|
@@ -66,6 +67,39 @@ Before writing/editing multiple files:
|
|
|
66
67
|
| Instance independence | Isolated context, no shared state |
|
|
67
68
|
| Large tasks (>3 min) | MUST split into parallel sub-tasks |
|
|
68
69
|
|
|
70
|
+
## Adaptive Parallel Splitting
|
|
71
|
+
|
|
72
|
+
Runtime detection and splitting of stalled parallel agents. Complements pre-execution parallelization.
|
|
73
|
+
|
|
74
|
+
### Detection
|
|
75
|
+
|
|
76
|
+
| Signal | Threshold | Action |
|
|
77
|
+
|--------|-----------|--------|
|
|
78
|
+
| Duration imbalance | Agent takes 2x+ longer than completed peers | Evaluate independent follow-up tasks |
|
|
79
|
+
| Task granularity | Agent assigned 10+ files | Consider layer-based splitting (domain → adapter → handler) |
|
|
80
|
+
| Pipeline bottleneck | One agent blocking subsequent phases | Spawn dependency-free next tasks immediately |
|
|
81
|
+
|
|
82
|
+
### Splitting Rules
|
|
83
|
+
|
|
84
|
+
1. **Dependency analysis first**: Only spawn tasks with NO dependency on the stalled agent
|
|
85
|
+
2. **Don't cancel the stalled agent**: Let it continue — spawn new agents for independent work
|
|
86
|
+
3. **Respect max instances**: New spawns still obey the 5 hard cap
|
|
87
|
+
4. **Report the split**: `[Split] Stalled: {agent} | Spawned: {new-agents} | Reason: {signal}`
|
|
88
|
+
|
|
89
|
+
### Example
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
Before (sequential bottleneck):
|
|
93
|
+
P3 ████████████████████░░░░░░░░░░░░ (stalled, 10+ files)
|
|
94
|
+
P4 (waiting — no P3 dependency)
|
|
95
|
+
P5 (waiting — no P3 dependency)
|
|
96
|
+
|
|
97
|
+
After (adaptive split):
|
|
98
|
+
P3 ████████████████████████████████ (continuing)
|
|
99
|
+
P4 ████████████████████████████████ (spawned immediately)
|
|
100
|
+
P5 ████████████████████████████████ (spawned immediately)
|
|
101
|
+
```
|
|
102
|
+
|
|
69
103
|
## Stability Testing Protocol
|
|
70
104
|
|
|
71
105
|
When testing 5 concurrent agents (above the soft default of 4):
|
|
@@ -96,6 +130,26 @@ Must use `[N] {subagent_type}:{model}` format. `[N]` is 1-indexed and MUST match
|
|
|
96
130
|
|
|
97
131
|
Single agent spawns do NOT use the `[N]` prefix.
|
|
98
132
|
|
|
133
|
+
## Narrative Announcement Format (Before Spawn)
|
|
134
|
+
|
|
135
|
+
When announcing a parallel dispatch in prose text (not the Agent tool call itself), use a markdown list rather than inline comma-separated description:
|
|
136
|
+
|
|
137
|
+
### Correct
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
병렬 실행:
|
|
141
|
+
- [1] {agent-a}: {task-a}
|
|
142
|
+
- [2] {agent-b}: {task-b}
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### Incorrect
|
|
146
|
+
|
|
147
|
+
```
|
|
148
|
+
병렬 실행: [1] {agent-a}가 {task-a}, [2] {agent-b}가 {task-b}.
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
The list form mirrors the tool-call `[N]` prefix pattern and scales better to 3+ concurrent agents.
|
|
152
|
+
|
|
99
153
|
## Result Aggregation
|
|
100
154
|
|
|
101
155
|
```
|
|
@@ -45,7 +45,9 @@ Wiki verification is also enforced by CI (`.github/workflows/wiki-sync.yml`).
|
|
|
45
45
|
|
|
46
46
|
### Phase 6: Push via mgr-gitnerd (only after sauron passes)
|
|
47
47
|
|
|
48
|
-
## Self-Check
|
|
48
|
+
## Self-Check — 6-point commit check + 3-point push check. See full checklist via Read tool.
|
|
49
|
+
|
|
50
|
+
<!-- DETAIL: Self-Check Before Commit and Push
|
|
49
51
|
|
|
50
52
|
```
|
|
51
53
|
╔══════════════════════════════════════════════════════════════════╗
|
|
@@ -73,16 +75,19 @@ Wiki verification is also enforced by CI (`.github/workflows/wiki-sync.yml`).
|
|
|
73
75
|
║ Sauron verification is required for all pushes. ║
|
|
74
76
|
╚══════════════════════════════════════════════════════════════════╝
|
|
75
77
|
```
|
|
78
|
+
-->
|
|
76
79
|
|
|
77
80
|
## When Required
|
|
78
81
|
|
|
79
82
|
Any change to: agents, agent frontmatter, skills, guides, routing patterns, rules, wiki pages.
|
|
80
83
|
|
|
81
|
-
## Quick Verification Commands
|
|
84
|
+
## Quick Verification Commands — agent/skill/guide/wiki counts via ls/find/wc. See commands via Read tool.
|
|
85
|
+
|
|
86
|
+
<!-- DETAIL: Quick Verification Commands
|
|
82
87
|
|
|
83
88
|
Key checks: agent count (`ls .claude/agents/*.md | wc -l`), skill count (`find .claude/skills -name "SKILL.md" | wc -l`), guide count (`find guides -mindepth 1 -maxdepth 1 -type d | wc -l`), wiki page count (`find wiki -name "*.md" ! -name "index.md" ! -name "log.md" | wc -l`).
|
|
84
89
|
|
|
85
|
-
|
|
90
|
+
Full verification bash scripts:
|
|
86
91
|
```bash
|
|
87
92
|
# Agent count check
|
|
88
93
|
ls .claude/agents/*.md | wc -l
|
|
@@ -36,7 +36,9 @@ Ecomode: `[lang-golang-expert] ✓ src/main.go reviewed: 1 naming issue (handle_
|
|
|
36
36
|
|
|
37
37
|
Disable with: "ecomode off", "verbose mode", or "show full details".
|
|
38
38
|
|
|
39
|
-
## Input Context Pruning
|
|
39
|
+
## Input Context Pruning — Active removal of irrelevant content. See full spec via Read tool.
|
|
40
|
+
|
|
41
|
+
<!-- DETAIL: Input Context Pruning
|
|
40
42
|
|
|
41
43
|
Active removal of irrelevant retrieved content from agent context. Complements output compression by managing the input side of token budget.
|
|
42
44
|
|
|
@@ -64,8 +66,11 @@ Active removal of irrelevant retrieved content from agent context. Complements o
|
|
|
64
66
|
- Prune at document/chunk level, not mid-sentence
|
|
65
67
|
- When in doubt, Summarize rather than Drop
|
|
66
68
|
- Track pruning decisions: `[Pruned] {N} chunks → {M} retained, {K} summarized, {J} dropped`
|
|
69
|
+
-->
|
|
70
|
+
|
|
71
|
+
## Context Budget Management — Task-type-aware thresholds (research 40%, implementation 50%, review 60%, management 70%, general 80%). See full spec via Read tool.
|
|
67
72
|
|
|
68
|
-
|
|
73
|
+
<!-- DETAIL: Context Budget Management
|
|
69
74
|
|
|
70
75
|
Task-type-aware context thresholds that trigger ecomode earlier for context-heavy operations.
|
|
71
76
|
|
|
@@ -103,8 +108,11 @@ The `context-budget-advisor.sh` hook monitors context usage and emits warnings w
|
|
|
103
108
|
- Does NOT override explicit user settings
|
|
104
109
|
- Advisory only — never blocks operations
|
|
105
110
|
- Context percentage from statusline data when available
|
|
111
|
+
-->
|
|
112
|
+
|
|
113
|
+
## Token Guardian Coexistence — R013 context budget (usage-based) + cc-token-saver Token Guardian (time-based) can run simultaneously.
|
|
106
114
|
|
|
107
|
-
|
|
115
|
+
<!-- DETAIL: Token Guardian Coexistence (cc-token-saver)
|
|
108
116
|
|
|
109
117
|
| Component | Trigger | Scope |
|
|
110
118
|
|-----------|---------|-------|
|
|
@@ -112,3 +120,4 @@ The `context-budget-advisor.sh` hook monitors context usage and emits warnings w
|
|
|
112
120
|
| Token Guardian (cc-token-saver) | 1h cache TTL idle detection | Cross-session cost |
|
|
113
121
|
|
|
114
122
|
Both can run simultaneously — different triggers, complementary coverage. R013's context budget is usage-based (approaching limit), Token Guardian is time-based (idle cache expiry).
|
|
123
|
+
-->
|
|
@@ -48,8 +48,9 @@
|
|
|
48
48
|
3. Agent effort level → Map to corresponding style
|
|
49
49
|
4. Default → `balanced`
|
|
50
50
|
|
|
51
|
-
### Style Examples
|
|
51
|
+
### Style Examples — See concise/balanced/explanatory examples via Read tool.
|
|
52
52
|
|
|
53
|
+
<!-- DETAIL: Style Examples
|
|
53
54
|
**Concise** (effort: low):
|
|
54
55
|
```
|
|
55
56
|
✓ 3 files updated, 0 errors
|
|
@@ -73,3 +74,4 @@ Changes:
|
|
|
73
74
|
|
|
74
75
|
Trade-offs: RS256 is ~10x slower than HS256 but enables asymmetric key management.
|
|
75
76
|
```
|
|
77
|
+
-->
|
|
@@ -28,8 +28,9 @@ When agents, skills, rules, or guides are created or modified, corresponding wik
|
|
|
28
28
|
| `/omcustom:wiki lint` | After major structural changes |
|
|
29
29
|
| Automatic (CI) | `.github/workflows/wiki-sync.yml` checks on PR |
|
|
30
30
|
|
|
31
|
-
## Delegation
|
|
31
|
+
## Delegation — All wiki writes via wiki-curator agent (R010). See workflow via Read tool.
|
|
32
32
|
|
|
33
|
+
<!-- DETAIL: Delegation
|
|
33
34
|
All wiki writes MUST go through the `wiki-curator` agent (R010). The orchestrator reads wiki pages freely but never writes them directly.
|
|
34
35
|
|
|
35
36
|
```
|
|
@@ -42,9 +43,11 @@ Orchestrator
|
|
|
42
43
|
│ └── Updates index.md
|
|
43
44
|
└── Verifies via wiki lint
|
|
44
45
|
```
|
|
46
|
+
-->
|
|
45
47
|
|
|
46
|
-
## Integration
|
|
48
|
+
## Integration — Interacts with R010, R017, R020, R006, R021. See table via Read tool.
|
|
47
49
|
|
|
50
|
+
<!-- DETAIL: Integration
|
|
48
51
|
| Rule | Interaction |
|
|
49
52
|
|------|-------------|
|
|
50
53
|
| R010 | Wiki writes delegated to wiki-curator agent |
|
|
@@ -52,16 +55,19 @@ Orchestrator
|
|
|
52
55
|
| R020 | Wiki-dependent tasks verify wiki is current before [Done] |
|
|
53
56
|
| R006 | Wiki pages follow same separation of concerns as source |
|
|
54
57
|
| R021 | SHOULD priority — advisory enforcement, CI check |
|
|
58
|
+
-->
|
|
55
59
|
|
|
56
60
|
## CI Enforcement
|
|
57
61
|
|
|
58
62
|
`.github/workflows/wiki-sync.yml` checks for missing wiki pages on every PR. Missing pages cause CI failure with guidance to run `/omcustom:wiki`.
|
|
59
63
|
|
|
60
|
-
## Self-Check
|
|
64
|
+
## Self-Check — 3 checks: wiki pages updated, index refreshed, lint passed. See details via Read tool.
|
|
61
65
|
|
|
66
|
+
<!-- DETAIL: Self-Check
|
|
62
67
|
Before completing a session that modified agents/skills/rules/guides:
|
|
63
68
|
1. Were wiki pages updated for all changes?
|
|
64
69
|
2. Was index.md refreshed?
|
|
65
70
|
3. Did wiki lint pass?
|
|
66
71
|
|
|
67
72
|
If any NO → run `/omcustom:wiki ingest` for affected paths.
|
|
73
|
+
-->
|
package/templates/CLAUDE.md
CHANGED
|
@@ -95,61 +95,17 @@ oh-my-customcode로 구동됩니다.
|
|
|
95
95
|
|
|
96
96
|
### 슬래시 커맨드 (스킬 기반)
|
|
97
97
|
|
|
98
|
-
| 커맨드 | 설명 |
|
|
99
|
-
|
|
100
|
-
| `/omcustom:analysis` |
|
|
101
|
-
| `/
|
|
102
|
-
| `/omcustom:
|
|
103
|
-
| `/omcustom
|
|
104
|
-
| `/omcustom:
|
|
105
|
-
| `/
|
|
106
|
-
| `/omcustom:
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
| `/omcustom:claude-native` | Claude Code 릴리즈 모니터링 및 이슈 자동 생성 |
|
|
110
|
-
| `/omcustom:wiki` | 코드베이스 위키 생성/유지 (Karpathy LLM Wiki 패턴) |
|
|
111
|
-
| `/omcustom:wiki-rag` | 위키 기반 코드베이스 질의응답 (RAG) |
|
|
112
|
-
| `/omcustom:improve-report` | eval-core 기반 개선 현황 리포트 |
|
|
113
|
-
| `/omcustom-takeover` | 기존 에이전트/스킬에서 canonical spec 추출 |
|
|
114
|
-
| `/adversarial-review` | 공격자 관점 보안 코드 리뷰 |
|
|
115
|
-
| `/omcustom:agora` | Multi-LLM 적대적 합의 루프 (설계/스펙 교차 검증) |
|
|
116
|
-
| `/ambiguity-gate` | 요청 모호성 분석 및 명확화 질문 (ouroboros 패턴) |
|
|
117
|
-
| `/dev-review` | 코드 베스트 프랙티스 리뷰 |
|
|
118
|
-
| `/dev-refactor` | 코드 리팩토링 |
|
|
119
|
-
| `/memory-save` | 세션 컨텍스트를 claude-mem에 저장 |
|
|
120
|
-
| `/memory-recall` | 메모리 검색 및 리콜 |
|
|
121
|
-
| `/omcustom:monitoring-setup` | OTel 콘솔 모니터링 활성화/비활성화 |
|
|
122
|
-
| `/omcustom:npm-publish` | npm 레지스트리에 패키지 배포 |
|
|
123
|
-
| `/omcustom:npm-version` | 시맨틱 버전 관리 |
|
|
124
|
-
| `/omcustom:npm-audit` | 의존성 감사 |
|
|
125
|
-
| `/omcustom-release-notes` | 릴리즈 노트 생성 (git 히스토리 기반) |
|
|
126
|
-
| `/omcustom-feedback` | 사용자 피드백을 GitHub Issue로 등록 |
|
|
127
|
-
| `/codex-exec` | Codex CLI 프롬프트 실행 |
|
|
128
|
-
| `/gemini-exec` | Gemini CLI 프롬프트 실행 |
|
|
129
|
-
| `/rtk-exec` | RTK CLI 프록시 실행 (토큰 압축) |
|
|
130
|
-
| `/optimize-analyze` | 번들 및 성능 분석 |
|
|
131
|
-
| `/optimize-bundle` | 번들 크기 최적화 |
|
|
132
|
-
| `/optimize-report` | 최적화 리포트 생성 |
|
|
133
|
-
| `/research` | 10-team 병렬 딥 분석 및 교차 검증 |
|
|
134
|
-
| `/scout` | 외부 URL 분석 및 프로젝트 적합성 평가 |
|
|
135
|
-
| `/skill-extractor` | 세션 성공 패턴에서 스킬 후보 추출 |
|
|
136
|
-
| `/deep-plan` | 연구 검증 기반 계획 수립 (research → plan → verify) |
|
|
137
|
-
| `/deep-verify` | 다중 관점 릴리즈 품질 검증 |
|
|
138
|
-
| `/harness-synthesizer` | 에이전트 액션 검증용 코드 하네스 합성 (AutoHarness 기반) |
|
|
139
|
-
| `/professor-triage` | 이슈 교차 분석 트리아지 (omc_issue_analyzer 댓글 기반) |
|
|
140
|
-
| `/release-plan` | verify-done 이슈 릴리즈 유닛 계획 생성 |
|
|
141
|
-
| `/pipeline` | YAML 파이프라인 실행 (예: /pipeline auto-dev) |
|
|
142
|
-
| `/pipeline resume` | 중단된 파이프라인 재개 |
|
|
143
|
-
| `/omcustom:sauron-watch` | 전체 R017 검증 |
|
|
144
|
-
| `/sdd-dev` | Spec-Driven Development 워크플로우 (sdd/ 폴더 기반) |
|
|
145
|
-
| `/structured-dev-cycle` | 6단계 구조적 개발 사이클 (Plan → Verify → Implement → Verify → Compound → Done) |
|
|
146
|
-
| `/omcustom:loop` | 백그라운드 에이전트 자동 계속 실행 |
|
|
147
|
-
| `/omcustom:lists` | 모든 사용 가능한 커맨드 표시 |
|
|
148
|
-
| `/omcustom:status` | 시스템 상태 표시 |
|
|
149
|
-
| `/omcustom-web` | 내장 Web UI 제어 및 검사 |
|
|
150
|
-
| `/skills-sh-search` | skills.sh 마켓플레이스 스킬 검색 및 설치 |
|
|
151
|
-
| `/vercel-deploy` | Vercel 배포 자동화 |
|
|
152
|
-
| `/omcustom:help` | 도움말 표시 |
|
|
98
|
+
| 카테고리 | 대표 커맨드 | 설명 |
|
|
99
|
+
|----------|------------|------|
|
|
100
|
+
| 프로젝트 관리 | `/omcustom:analysis`, `/omcustom:create-agent`, `/omcustom:audit-agents` | 분석, 에이전트/스킬 생성, 감사 |
|
|
101
|
+
| 개발 | `/dev-review`, `/dev-refactor`, `/sdd-dev`, `/structured-dev-cycle` | 코드 리뷰, 리팩토링, SDD |
|
|
102
|
+
| 검증 | `/omcustom:sauron-watch`, `/deep-verify`, `/adversarial-review` | R017 검증, 릴리즈 품질, 보안 리뷰 |
|
|
103
|
+
| 릴리즈 | `/pipeline auto-dev`, `/omcustom-release-notes`, `/release-plan` | 자동 개발, 릴리즈 노트 |
|
|
104
|
+
| 리서치 | `/research`, `/scout`, `/deep-plan`, `/omcustom:agora` | 병렬 분석, URL 평가, 연구 계획 |
|
|
105
|
+
| 메모리 | `/memory-save`, `/memory-recall` | 세션 메모리 관리 |
|
|
106
|
+
| 시스템 | `/omcustom:lists`, `/omcustom:status`, `/omcustom:help` | 전체 목록, 상태, 도움말 |
|
|
107
|
+
|
|
108
|
+
> 전체 커맨드 목록 (60+ 커맨드): `/omcustom:lists` 실행
|
|
153
109
|
|
|
154
110
|
## 프로젝트 구조
|
|
155
111
|
|
package/templates/manifest.json
CHANGED