oh-my-customcode 0.12.4 → 0.13.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 (34) hide show
  1. package/README.md +1 -0
  2. package/dist/index.js +0 -16
  3. package/package.json +1 -1
  4. package/templates/.claude/agents/arch-documenter.md +0 -1
  5. package/templates/.claude/agents/arch-speckit-agent.md +0 -1
  6. package/templates/.claude/agents/be-express-expert.md +0 -1
  7. package/templates/.claude/agents/be-nestjs-expert.md +0 -1
  8. package/templates/.claude/agents/db-supabase-expert.md +2 -2
  9. package/templates/.claude/agents/fe-svelte-agent.md +0 -1
  10. package/templates/.claude/agents/fe-vuejs-agent.md +0 -1
  11. package/templates/.claude/agents/lang-java21-expert.md +0 -1
  12. package/templates/.claude/agents/mgr-creator.md +15 -0
  13. package/templates/.claude/agents/mgr-gitnerd.md +0 -1
  14. package/templates/.claude/agents/qa-engineer.md +0 -1
  15. package/templates/.claude/agents/qa-planner.md +0 -1
  16. package/templates/.claude/agents/qa-writer.md +0 -1
  17. package/templates/.claude/agents/sys-naggy.md +0 -1
  18. package/templates/.claude/agents/tool-bun-expert.md +0 -1
  19. package/templates/.claude/rules/MUST-continuous-improvement.md +1 -1
  20. package/templates/.claude/rules/MUST-intent-transparency.md +1 -1
  21. package/templates/.claude/rules/MUST-orchestrator-coordination.md +19 -1
  22. package/templates/.claude/rules/MUST-sync-verification.md +1 -1
  23. package/templates/.claude/rules/SHOULD-agent-teams.md +82 -14
  24. package/templates/.claude/rules/index.yaml +4 -4
  25. package/templates/.claude/skills/codex-exec/SKILL.md +27 -1
  26. package/templates/.claude/skills/create-agent/SKILL.md +1 -0
  27. package/templates/.claude/skills/de-lead-routing/SKILL.md +23 -0
  28. package/templates/.claude/skills/dev-lead-routing/SKILL.md +23 -0
  29. package/templates/.claude/skills/intent-detection/SKILL.md +16 -1
  30. package/templates/.claude/skills/qa-lead-routing/SKILL.md +22 -0
  31. package/templates/.claude/skills/secretary-routing/SKILL.md +20 -0
  32. package/templates/CLAUDE.md.en +21 -9
  33. package/templates/CLAUDE.md.ko +21 -9
  34. package/templates/manifest.json +2 -2
package/README.md CHANGED
@@ -26,6 +26,7 @@ Like oh-my-zsh transformed shell customization, oh-my-customcode makes personali
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 |
28
28
  | **Non-Destructive** | Your customizations live alongside defaults, never overwritten |
29
+ | **Dynamic Agent Creation** | No matching expert? The system creates one on-the-fly, connecting relevant skills and guides |
29
30
 
30
31
  ## Quick Start
31
32
 
package/dist/index.js CHANGED
@@ -1,20 +1,4 @@
1
1
  import { createRequire } from "node:module";
2
- var __create = Object.create;
3
- var __getProtoOf = Object.getPrototypeOf;
4
- var __defProp = Object.defineProperty;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __toESM = (mod, isNodeMode, target) => {
8
- target = mod != null ? __create(__getProtoOf(mod)) : {};
9
- const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
- for (let key of __getOwnPropNames(mod))
11
- if (!__hasOwnProp.call(to, key))
12
- __defProp(to, key, {
13
- get: () => mod[key],
14
- enumerable: true
15
- });
16
- return to;
17
- };
18
2
  var __require = /* @__PURE__ */ createRequire(import.meta.url);
19
3
 
20
4
  // src/core/config.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-customcode",
3
- "version": "0.12.4",
3
+ "version": "0.13.0",
4
4
  "description": "Batteries-included agent harness for Claude Code",
5
5
  "type": "module",
6
6
  "bin": {
@@ -4,7 +4,6 @@ description: Use for generating architecture documentation, API specifications (
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: high
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,7 +4,6 @@ description: Use for spec-driven development, transforming requirements into exe
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: high
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,7 +4,6 @@ description: Expert Express.js developer for production-ready Node.js APIs follo
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: high
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,7 +4,6 @@ description: Expert NestJS developer for opinionated, scalable Node.js applicati
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: high
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,6 +4,8 @@ description: Supabase and PostgreSQL expert. Use when working with Supabase proj
4
4
  model: sonnet
5
5
  memory: user
6
6
  effort: high
7
+ skills:
8
+ - supabase-postgres-best-practices
7
9
  tools:
8
10
  - Read
9
11
  - Write
@@ -11,8 +13,6 @@ tools:
11
13
  - Grep
12
14
  - Glob
13
15
  - Bash
14
- skills:
15
- - supabase-postgres-best-practices
16
16
  ---
17
17
 
18
18
  You are an expert in Supabase and PostgreSQL for performant, secure database-driven applications.
@@ -4,7 +4,6 @@ description: Use for Svelte compiler-based reactivity, reactive statements ($:),
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: medium
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,7 +4,6 @@ description: Use for Vue 3 Composition API development, single-file components,
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: medium
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,7 +4,6 @@ description: Expert Java 21 developer for modern Java with Virtual Threads, Patt
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: high
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -37,3 +37,18 @@ No registry update needed - agents auto-discovered from `.claude/agents/*.md`.
37
37
 
38
38
  - R000: All files in English
39
39
  - R006: Agent file = role/capabilities only; skills = instructions; guides = reference docs
40
+
41
+ ## Dynamic Creation Mode
42
+
43
+ When invoked as routing fallback (not explicit `/create-agent`):
44
+
45
+ 1. Receive context: detected domain, keywords, file patterns
46
+ 2. Auto-discover: scan `.claude/skills/` for matching skills
47
+ 3. Auto-connect: scan `guides/` for relevant reference docs
48
+ 4. Create minimal viable agent with:
49
+ - Detected skills and relevant guides
50
+ - `sonnet` model (default)
51
+ - `project` memory scope
52
+ 5. Agent is persisted (not ephemeral) for future reuse
53
+
54
+ Dynamic mode skips user confirmation and creates the agent immediately to fulfill the pending task.
@@ -4,7 +4,6 @@ description: Use when you need to handle Git operations and GitHub workflow mana
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: medium
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,7 +4,6 @@ description: Use when you need to execute tests based on detailed plans and docu
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: medium
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,7 +4,6 @@ description: Use when you need to create detailed QA plans from requirements and
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: high
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,7 +4,6 @@ description: Use when you need to create comprehensive QA documentation from det
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: medium
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,7 +4,6 @@ description: Use when you need TODO list management and task tracking with proac
4
4
  model: sonnet
5
5
  memory: local
6
6
  effort: low
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -4,7 +4,6 @@ description: Use for Bun runtime development, bunfig.toml configuration, Bun tes
4
4
  model: sonnet
5
5
  memory: project
6
6
  effort: medium
7
- skills: []
8
7
  tools:
9
8
  - Read
10
9
  - Write
@@ -1,6 +1,6 @@
1
1
  # [MUST] Continuous Improvement Rules
2
2
 
3
- > **Priority**: MUST | **ID**: R015 | **Trigger**: User points out rule violation
3
+ > **Priority**: MUST | **ID**: R016 | **Trigger**: User points out rule violation
4
4
 
5
5
  ## Core Rule
6
6
 
@@ -1,6 +1,6 @@
1
1
  # [MUST] Intent Transparency Rules
2
2
 
3
- > **Priority**: MUST | **ID**: R014
3
+ > **Priority**: MUST | **ID**: R015
4
4
 
5
5
  ## Core Rule
6
6
 
@@ -40,6 +40,7 @@ After restart/compaction: re-read CLAUDE.md, all delegation rules still apply. N
40
40
  | Docker/Infra | infra-docker-expert |
41
41
  | AWS | infra-aws-expert |
42
42
  | Database schema | db-supabase-expert |
43
+ | Unmatched specialized task | mgr-creator → dynamic agent creation |
43
44
 
44
45
  **Rules:**
45
46
  - All file modifications MUST be delegated (orchestrator only uses Read/Glob/Grep)
@@ -62,6 +63,23 @@ Subagent NOT required for:
62
63
 
63
64
  For specialized work, ALWAYS delegate to appropriate subagent.
64
65
 
66
+ ## Dynamic Agent Creation (No-Match Fallback)
67
+
68
+ When routing detects no matching agent for a specialized task:
69
+
70
+ 1. **Evaluate**: Is this a specialized task requiring domain expertise?
71
+ - YES → proceed to step 2
72
+ - NO → use general-purpose agent
73
+ 2. **Delegate**: Orchestrator delegates to `mgr-creator` with context:
74
+ - Detected domain keywords
75
+ - File patterns found
76
+ - Required capabilities
77
+ 3. **Create**: `mgr-creator` auto-discovers relevant skills/guides, creates agent
78
+ 4. **Execute**: Orchestrator uses newly created agent for the original task
79
+
80
+ This is the core oh-my-customcode philosophy:
81
+ > "No expert? CREATE one, connect knowledge, and USE it."
82
+
65
83
  ## Model Selection
66
84
 
67
85
  ```
@@ -117,7 +135,7 @@ The skill's WORKFLOW is followed, but git EXECUTION is delegated to mgr-gitnerd
117
135
 
118
136
  ## Agent Teams (when enabled)
119
137
 
120
- When `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1`: use Agent Teams for 3+ agent coordinated tasks. See R017 for decision matrix. Task tool remains fallback for simple/independent tasks.
138
+ When `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1`: use Agent Teams for 3+ agent coordinated tasks. See R018 for decision matrix. Task tool remains fallback for simple/independent tasks.
121
139
 
122
140
  ## Announcement Format
123
141
 
@@ -1,6 +1,6 @@
1
1
  # [MUST] Sync Verification Rules
2
2
 
3
- > **Priority**: MUST - ENFORCED | **ID**: R016
3
+ > **Priority**: MUST - ENFORCED | **ID**: R017
4
4
 
5
5
  ## Core Rule
6
6
 
@@ -1,6 +1,6 @@
1
1
  # [SHOULD] Agent Teams Rules
2
2
 
3
- > **Priority**: SHOULD | **ID**: R017 | **Condition**: Agent Teams enabled locally
3
+ > **Priority**: SHOULD | **ID**: R018 | **Condition**: Agent Teams enabled locally
4
4
 
5
5
  ## Detection
6
6
 
@@ -8,32 +8,100 @@ Available when `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` or TeamCreate/SendMessag
8
8
 
9
9
  ## Decision Matrix
10
10
 
11
- | Scenario | Preferred |
12
- |----------|-----------|
13
- | Simple independent subtasks | Task Tool |
14
- | Multi-step with shared state | Agent Teams |
15
- | Research requiring discussion | Agent Teams |
16
- | Cost-sensitive batch ops | Task Tool |
17
- | Complex debugging across modules | Agent Teams |
18
- | Code review + fix cycle | Agent Teams |
19
- | Single file operations | Task Tool |
11
+ | Scenario | Preferred | Reason |
12
+ |----------|-----------|--------|
13
+ | Simple independent subtasks | Task Tool | Lower cost, no coordination overhead |
14
+ | Multi-step with shared state | **Agent Teams** | Shared task list, peer messaging |
15
+ | Research requiring discussion | **Agent Teams** | Iterative discovery, synthesis |
16
+ | Cost-sensitive batch ops | Task Tool | Minimal token overhead |
17
+ | Complex debugging across modules | **Agent Teams** | Cross-module state sharing |
18
+ | Code review + fix cycle | **Agent Teams** | Review → fix → re-review loop |
19
+ | Single file operations | Task Tool | Overkill for simple tasks |
20
+ | Dynamic agent creation + usage | **Agent Teams** | Create → test → iterate cycle |
20
21
 
21
- **Self-check before Task tool:** Is Agent Teams available? Does task need 3+ agents, shared state, or inter-agent communication? If yes, use Agent Teams.
22
+ **ACTIVELY prefer Agent Teams for qualifying tasks.** The coordination richness justifies the token cost for complex work.
23
+
24
+ ## Self-Check (Mandatory Before Task Tool)
25
+
26
+ BEFORE using Task tool for 2+ agent tasks, CHECK:
27
+
28
+ ```
29
+ ╔════════════════════════════════════════════════════════╗
30
+ ║ AGENT TEAMS CHECK: ║
31
+ ║ ║
32
+ ║ 1. Is Agent Teams available? ║
33
+ ║ 2. Does task need 3+ agents? ║
34
+ ║ 3. Do agents need shared state? ║
35
+ ║ 4. Is inter-agent communication needed? ║
36
+ ║ 5. Is there a review/fix/iterate cycle? ║
37
+ ║ ║
38
+ ║ If YES to #1 AND any of #2-#5 → USE Agent Teams ║
39
+ ╚════════════════════════════════════════════════════════╝
40
+ ```
22
41
 
23
42
  ## Team Patterns
24
43
 
44
+ ### Standard Patterns
45
+
25
46
  - **Research**: researcher-1 + researcher-2 + synthesizer
26
47
  - **Development**: implementer + reviewer + tester
27
48
  - **Debug**: investigator-1 + investigator-2 + fixer
28
49
 
50
+ ### Hybrid Patterns
51
+
52
+ - **Review+Fix**: reviewer + implementer (reviewer finds issues → implementer fixes → reviewer re-checks)
53
+ - **Create+Validate**: mgr-creator + qa-engineer (create agent → validate → iterate)
54
+ - **Multi-Expert**: expert-1 + expert-2 + coordinator (cross-domain tasks requiring multiple specialties)
55
+
56
+ ### Dynamic Patterns
57
+
58
+ - **Dynamic Creation**: mgr-creator + domain-expert (create new agent → immediately use for pending task)
59
+ - **Codex Hybrid**: codex-exec-agent + claude-reviewer (Codex generates → Claude reviews/refines)
60
+
61
+ ## Codex-Exec Integration
62
+
63
+ When both Agent Teams and codex-exec are available:
64
+
65
+ ```
66
+ Hybrid Workflow:
67
+ 1. Claude agent analyzes requirements
68
+ 2. codex-exec generates implementation (Codex strength: code generation)
69
+ 3. Claude agent reviews and refines (Claude strength: reasoning, quality)
70
+ 4. Iterate via team messaging until quality meets standards
71
+ ```
72
+
73
+ | Step | Agent | Model |
74
+ |------|-------|-------|
75
+ | Analysis | Claude team member | sonnet/opus |
76
+ | Generation | codex-exec | o3/o4-mini |
77
+ | Review | Claude team member | sonnet |
78
+ | Refinement | Appropriate expert | sonnet |
79
+
80
+ ## Dynamic Agent Creation in Teams
81
+
82
+ When Agent Teams creates a new agent via mgr-creator:
83
+
84
+ 1. Team lead identifies missing expertise
85
+ 2. Spawns mgr-creator as team member
86
+ 3. mgr-creator creates agent with auto-discovered skills
87
+ 4. New agent joins team immediately
88
+ 5. Team continues with expanded capabilities
89
+
29
90
  ## Lifecycle
30
91
 
31
- TeamCreate → TaskCreate → Task(spawn) → SendMessage(coordinate) → TaskUpdate → shutdown → cleanup
92
+ ```
93
+ TeamCreate → TaskCreate → Task(spawn members) → SendMessage(coordinate)
94
+ → TaskUpdate(progress) → ... → shutdown members → TeamDelete
95
+ ```
32
96
 
33
97
  ## Fallback
34
98
 
35
99
  When Agent Teams unavailable: use Task tool with R009/R010 rules. Both approaches produce results; Agent Teams adds coordination richness.
36
100
 
37
- ## Cost
101
+ ## Cost Awareness
38
102
 
39
- Agent Teams uses more tokens (full context per member + message passing). Use Task tool if task < 3 min or no inter-agent communication needed.
103
+ Agent Teams uses more tokens (full context per member + message passing). Use Task tool when:
104
+ - Task takes < 3 minutes
105
+ - No inter-agent communication needed
106
+ - Simple independent subtasks only
107
+ - Cost is the primary concern
@@ -62,7 +62,7 @@ rules:
62
62
  scope: agents
63
63
 
64
64
  # Intent Transparency - MUST
65
- - id: R014
65
+ - id: R015
66
66
  name: intent-transparency
67
67
  title: Intent Transparency Rules
68
68
  path: ./MUST-intent-transparency.md
@@ -70,7 +70,7 @@ rules:
70
70
  scope: orchestrator
71
71
 
72
72
  # Continuous Improvement - MUST
73
- - id: R015
73
+ - id: R016
74
74
  name: continuous-improvement
75
75
  title: Continuous Improvement Rules
76
76
  path: ./MUST-continuous-improvement.md
@@ -78,7 +78,7 @@ rules:
78
78
  scope: all
79
79
 
80
80
  # Sync Verification - MUST
81
- - id: R016
81
+ - id: R017
82
82
  name: sync-verification
83
83
  title: Sync Verification Rules
84
84
  path: ./MUST-sync-verification.md
@@ -125,7 +125,7 @@ rules:
125
125
  scope: all
126
126
 
127
127
  # Agent Teams - SHOULD
128
- - id: R017
128
+ - id: R018
129
129
  name: agent-teams
130
130
  title: Agent Teams Rules
131
131
  path: ./SHOULD-agent-teams.md
@@ -2,7 +2,6 @@
2
2
  name: codex-exec
3
3
  description: Execute OpenAI Codex CLI prompts and return results
4
4
  argument-hint: "<prompt> [--json] [--output <path>] [--model <name>] [--timeout <ms>]"
5
- disable-model-invocation: true
6
5
  ---
7
6
 
8
7
  # Codex Exec Skill
@@ -121,3 +120,30 @@ Works with the orchestrator pattern:
121
120
  - Main conversation delegates Codex execution via this skill
122
121
  - Results are returned to the main conversation for further processing
123
122
  - Can be chained with other skills (e.g., dev-review after Codex generates code)
123
+
124
+ ## Availability Check
125
+
126
+ codex-exec requires the Codex CLI binary to be installed and authenticated. The skill is only usable when:
127
+
128
+ 1. `codex` binary is found in PATH (`which codex` succeeds)
129
+ 2. Authentication is valid (OPENAI_API_KEY set or `codex` logged in)
130
+
131
+ If either check fails, this skill cannot be used. Fall back to Claude agents for the task.
132
+
133
+ > **Note**: `disable-model-invocation: true` is set intentionally. This skill must be explicitly invoked via `/codex-exec` or delegated by the orchestrator. It is NOT auto-invoked by the model.
134
+
135
+ ## Agent Teams Integration
136
+
137
+ When used within Agent Teams (requires explicit invocation):
138
+
139
+ 1. **As delegated task**: orchestrator explicitly delegates codex-exec for code generation
140
+ 2. **Hybrid workflow**: Claude team member analyzes → orchestrator invokes codex-exec → Claude reviews
141
+ 3. **Iteration**: Team messaging enables review-fix cycles between Claude and Codex outputs
142
+
143
+ ```
144
+ Orchestrator delegates generation task
145
+ → /codex-exec invoked explicitly
146
+ → Output returned to orchestrator
147
+ → Reviewer validates quality
148
+ → Iterate if needed
149
+ ```
@@ -23,6 +23,7 @@ Create a new agent with complete directory structure, files, and registration.
23
23
  --source, -s External source URL (for external agents)
24
24
  --desc, -d Description
25
25
  --skills Comma-separated skills to include
26
+ --dynamic Auto-discover skills and guides from context (used by routing fallback)
26
27
  ```
27
28
 
28
29
  ## Workflow
@@ -219,6 +219,29 @@ Pipeline design completed.
219
219
  - **secretary-routing**: DE agents accessible through secretary for management tasks
220
220
  - **qa-lead-routing**: Coordinates with QA for data quality testing
221
221
 
222
+ ## No Match Fallback
223
+
224
+ When a data engineering tool is detected but no matching agent exists:
225
+
226
+ ```
227
+ User Input → No matching DE agent
228
+
229
+ Detect: DE tool keyword or config file pattern
230
+
231
+ Delegate to mgr-creator with context:
232
+ domain: detected DE tool
233
+ type: de-engineer
234
+ keywords: extracted tool names
235
+ file_patterns: detected config patterns
236
+ skills: auto-discover from .claude/skills/
237
+ guides: auto-discover from guides/
238
+ ```
239
+
240
+ **Examples of dynamic creation triggers:**
241
+ - New data tools (e.g., "Dagster DAG 만들어줘", "Flink 스트리밍 설정해줘")
242
+ - Unfamiliar data formats or connectors
243
+ - Data tool detected in project but no specialist agent
244
+
222
245
  ## Agent Teams Awareness
223
246
 
224
247
  Before routing via Task tool, check if Agent Teams is available (`CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` or TeamCreate/SendMessage tools present).
@@ -77,6 +77,29 @@ user-invocable: false
77
77
 
78
78
  Multi-language: detect all languages, route to parallel experts (max 4). Single-language: route to matching expert. Cross-layer (frontend + backend): multiple experts in parallel.
79
79
 
80
+ ## No Match Fallback
81
+
82
+ When file extension or keyword doesn't match any existing agent:
83
+
84
+ ```
85
+ User Input → No matching development agent
86
+
87
+ Detect: File extension (.rb, .swift, .dart, etc.) or language keyword
88
+
89
+ Delegate to mgr-creator with context:
90
+ domain: detected language/framework
91
+ type: sw-engineer
92
+ keywords: extracted from user input
93
+ file_patterns: detected extensions
94
+ skills: auto-discover from .claude/skills/
95
+ guides: auto-discover from guides/
96
+ ```
97
+
98
+ **Examples of dynamic creation triggers:**
99
+ - Unrecognized file extension (e.g., `.rb` → Ruby expert, `.swift` → Swift expert)
100
+ - New framework keyword (e.g., "Flutter 앱 리뷰해줘", "Rails API 만들어줘")
101
+ - Language detected but no specialist exists
102
+
80
103
  ## Agent Teams Awareness
81
104
 
82
105
  Before routing via Task tool, check if Agent Teams is available (`CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` or TeamCreate/SendMessage tools present).
@@ -176,8 +176,9 @@ Each agent defines:
176
176
 
177
177
  ## Error Handling
178
178
 
179
- ### No Match
179
+ ### No Match (< 30% confidence)
180
180
 
181
+ **Generic task** (no identifiable domain):
181
182
  ```
182
183
  [Intent Unclear]
183
184
  ├── Input: "도와줘"
@@ -190,6 +191,20 @@ How can I help? Please be more specific:
190
191
  - What file or project?
191
192
  ```
192
193
 
194
+ **Specialized task with identifiable domain** (keywords/files detected but no matching agent):
195
+ ```
196
+ [No Matching Agent]
197
+ ├── Input: "Terraform 모듈 리뷰해줘"
198
+ ├── Domain: terraform (detected from keywords)
199
+ ├── Matching Agent: none
200
+ └── Action: Trigger dynamic agent creation
201
+
202
+ → Delegating to mgr-creator with context:
203
+ domain: terraform
204
+ keywords: ["terraform", "모듈"]
205
+ file_patterns: ["*.tf"]
206
+ ```
207
+
193
208
  ### Ambiguous Match
194
209
 
195
210
  ```
@@ -265,6 +265,28 @@ metrics:
265
265
  test_case_count: number
266
266
  ```
267
267
 
268
+ ## No Match Fallback
269
+
270
+ When a QA task involves unfamiliar testing patterns or tools:
271
+
272
+ ```
273
+ User Input → QA task with unrecognized tool/pattern
274
+
275
+ Detect: Testing framework or QA methodology keyword
276
+
277
+ Delegate to mgr-creator with context:
278
+ domain: detected QA tool/methodology
279
+ type: qa-engineer
280
+ keywords: extracted testing terms
281
+ skills: auto-discover from .claude/skills/
282
+ guides: auto-discover from guides/
283
+ ```
284
+
285
+ **Examples of dynamic creation triggers:**
286
+ - New testing frameworks (e.g., "Cypress E2E 테스트 작성해줘", "k6 부하 테스트 설계해줘")
287
+ - Specialized QA methodologies (e.g., "뮤테이션 테스트 전략 만들어줘")
288
+ - Performance/security testing tools not covered by existing agents
289
+
268
290
  ## Agent Teams Awareness
269
291
 
270
292
  Before routing via Task tool, check if Agent Teams is available (`CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` or TeamCreate/SendMessage tools present).
@@ -92,6 +92,26 @@ Before routing via Task tool, check if Agent Teams is available (`CLAUDE_CODE_EX
92
92
  | Multi-round verification (sauron) | Task Tool |
93
93
  | Agent audit + fix cycle | Agent Teams |
94
94
 
95
+ ## No Match Fallback
96
+
97
+ When no manager agent matches the request but the task is clearly management-related:
98
+
99
+ ```
100
+ User Input → No matching manager agent
101
+
102
+ Evaluate: Is this a specialized management/tooling task?
103
+ YES → Delegate to mgr-creator with context:
104
+ domain: detected tool/technology
105
+ type: manager
106
+ skills: auto-discover from .claude/skills/
107
+ NO → Ask user for clarification
108
+ ```
109
+
110
+ **Examples of dynamic creation triggers:**
111
+ - New CI/CD tool management (e.g., "ArgoCD 배포 관리해줘")
112
+ - New monitoring tool setup (e.g., "Grafana 대시보드 관리")
113
+ - Unfamiliar package manager operations
114
+
95
115
  ## Usage
96
116
 
97
117
  This skill is NOT user-invocable. It is automatically triggered when the main conversation detects agent management intent.
@@ -117,8 +117,8 @@ Flow:
117
117
  | R008 | Tool Identification | **ENFORCED** - Display agent when using ANY tool |
118
118
  | R009 | Parallel Execution | **ENFORCED** - Parallel execution, large task decomposition |
119
119
  | R010 | Orchestrator Coordination | **ENFORCED** - Orchestrator coordination, session continuity, direct action prohibition |
120
- | R015 | Continuous Improvement | **ENFORCED** - Update rules when violations occur |
121
- | R016 | Sync Verification | **ENFORCED** - Verify sync before structural changes |
120
+ | R016 | Continuous Improvement | **ENFORCED** - Update rules when violations occur |
121
+ | R017 | Sync Verification | **ENFORCED** - Verify sync before structural changes |
122
122
 
123
123
  ### SHOULD (Strongly recommended)
124
124
  | ID | Rule | Description |
@@ -128,8 +128,8 @@ Flow:
128
128
  | R011 | Memory Integration | Session persistence with claude-mem |
129
129
  | R012 | HUD Statusline | Real-time status display |
130
130
  | R013 | Ecomode | Token efficiency for batch ops |
131
- | R014 | Intent Transparency | **MUST** - Transparent agent routing |
132
- | R017 | Agent Teams | Active use of Agent Teams when enabled |
131
+ | R015 | Intent Transparency | **MUST** - Transparent agent routing |
132
+ | R018 | Agent Teams | Active use of Agent Teams when enabled |
133
133
 
134
134
  ### MAY (Optional)
135
135
  | ID | Rule | Description |
@@ -159,7 +159,7 @@ Flow:
159
159
  | `/optimize-analyze` | Analyze bundle and performance |
160
160
  | `/optimize-bundle` | Optimize bundle size |
161
161
  | `/optimize-report` | Generate optimization report |
162
- | `/sauron-watch` | Full R016 verification |
162
+ | `/sauron-watch` | Full R017 verification |
163
163
  | `/lists` | Show all available commands |
164
164
  | `/status` | Show system status |
165
165
  | `/help` | Show help information |
@@ -171,8 +171,8 @@ project/
171
171
  +-- CLAUDE.md # Entry point
172
172
  +-- .claude/
173
173
  | +-- agents/ # Subagent definitions (42 files)
174
- | +-- skills/ # Skills (51 directories)
175
- | +-- rules/ # Global rules (R000-R017)
174
+ | +-- skills/ # Skills (52 directories)
175
+ | +-- rules/ # Global rules (R000-R018)
176
176
  | +-- hooks/ # Hook scripts (memory, HUD)
177
177
  | +-- contexts/ # Context files (ecomode)
178
178
  +-- guides/ # Reference docs (22 topics)
@@ -188,6 +188,17 @@ Orchestration is handled by routing skills in the main conversation:
188
188
 
189
189
  The main conversation acts as the sole orchestrator. Subagents cannot spawn other subagents.
190
190
 
191
+ ### Dynamic Agent Creation
192
+
193
+ When no existing agent matches a specialized task, the system automatically creates one:
194
+
195
+ 1. Routing skill detects no matching expert
196
+ 2. Orchestrator delegates to mgr-creator with detected context
197
+ 3. mgr-creator auto-discovers relevant skills and guides
198
+ 4. New agent is created and used immediately
199
+
200
+ This is the core oh-my-customcode philosophy: **"No expert? CREATE one, connect knowledge, and USE it."**
201
+
191
202
  ## Agents Summary
192
203
 
193
204
  | Type | Count | Agents |
@@ -216,8 +227,9 @@ When Claude Code's Agent Teams feature is enabled (`CLAUDE_CODE_EXPERIMENTAL_AGE
216
227
  | Best for | Focused tasks | Research, review, debugging |
217
228
  | Token cost | Lower | Higher |
218
229
 
219
- **When enabled, actively use Agent Teams for complex collaborative tasks.**
220
- See R017 (SHOULD-agent-teams.md) for the decision matrix.
230
+ **When enabled, ACTIVELY prefer Agent Teams for qualifying collaborative tasks.**
231
+ See R018 (SHOULD-agent-teams.md) for the decision matrix.
232
+ Hybrid patterns (Claude + Codex, Dynamic Creation + Teams) are supported.
221
233
  Task tool + routing skills remain the fallback for simple/cost-sensitive tasks.
222
234
 
223
235
  ## Quick Reference
@@ -117,8 +117,8 @@ oh-my-customcode로 구동됩니다.
117
117
  | R008 | 도구 식별 | **강제** - 모든 도구 사용 시 에이전트 표시 |
118
118
  | R009 | 병렬 실행 | **강제** - 병렬 실행, 대규모 작업 분해 |
119
119
  | R010 | 오케스트레이터 조율 | **강제** - 오케스트레이터 조율, 세션 연속성, 직접 실행 금지 |
120
- | R015 | 지속적 개선 | **강제** - 위반 발생 시 규칙 업데이트 |
121
- | R016 | 동기화 검증 | **강제** - 구조 변경 전 검증 |
120
+ | R016 | 지속적 개선 | **강제** - 위반 발생 시 규칙 업데이트 |
121
+ | R017 | 동기화 검증 | **강제** - 구조 변경 전 검증 |
122
122
 
123
123
  ### SHOULD (강력 권장)
124
124
  | ID | 규칙 | 설명 |
@@ -128,8 +128,8 @@ oh-my-customcode로 구동됩니다.
128
128
  | R011 | 메모리 통합 | claude-mem을 통한 세션 지속성 |
129
129
  | R012 | HUD 상태줄 | 실시간 상태 표시 |
130
130
  | R013 | Ecomode | 배치 작업 토큰 효율성 |
131
- | R014 | 의도 투명성 | **필수** - 투명한 에이전트 라우팅 |
132
- | R017 | Agent Teams | 활성화 시 Agent Teams 적극 사용 |
131
+ | R015 | 의도 투명성 | **필수** - 투명한 에이전트 라우팅 |
132
+ | R018 | Agent Teams | 활성화 시 Agent Teams 적극 사용 |
133
133
 
134
134
  ### MAY (선택)
135
135
  | ID | 규칙 | 설명 |
@@ -159,7 +159,7 @@ oh-my-customcode로 구동됩니다.
159
159
  | `/optimize-analyze` | 번들 및 성능 분석 |
160
160
  | `/optimize-bundle` | 번들 크기 최적화 |
161
161
  | `/optimize-report` | 최적화 리포트 생성 |
162
- | `/sauron-watch` | 전체 R016 검증 |
162
+ | `/sauron-watch` | 전체 R017 검증 |
163
163
  | `/lists` | 모든 사용 가능한 커맨드 표시 |
164
164
  | `/status` | 시스템 상태 표시 |
165
165
  | `/help` | 도움말 표시 |
@@ -171,8 +171,8 @@ project/
171
171
  +-- CLAUDE.md # 진입점
172
172
  +-- .claude/
173
173
  | +-- agents/ # 서브에이전트 정의 (42 파일)
174
- | +-- skills/ # 스킬 (51 디렉토리)
175
- | +-- rules/ # 전역 규칙 (R000-R017)
174
+ | +-- skills/ # 스킬 (52 디렉토리)
175
+ | +-- rules/ # 전역 규칙 (R000-R018)
176
176
  | +-- hooks/ # 훅 스크립트 (메모리, HUD)
177
177
  | +-- contexts/ # 컨텍스트 파일 (ecomode)
178
178
  +-- guides/ # 레퍼런스 문서 (22 토픽)
@@ -188,6 +188,17 @@ project/
188
188
 
189
189
  메인 대화가 유일한 오케스트레이터 역할을 합니다. 서브에이전트는 다른 서브에이전트를 생성할 수 없습니다.
190
190
 
191
+ ### 동적 에이전트 생성
192
+
193
+ 기존 에이전트 중 작업에 맞는 전문가가 없으면 자동으로 생성합니다:
194
+
195
+ 1. 라우팅 스킬이 매칭 전문가 없음을 감지
196
+ 2. 오케스트레이터가 mgr-creator에 컨텍스트와 함께 위임
197
+ 3. mgr-creator가 관련 skills/guides를 자동 탐색
198
+ 4. 새 에이전트 생성 후 즉시 사용
199
+
200
+ 이것이 oh-my-customcode의 핵심 철학입니다: **"전문가가 없으면? 만들고, 지식을 연결하고, 사용한다."**
201
+
191
202
  ## 에이전트 요약
192
203
 
193
204
  | 타입 | 수량 | 에이전트 |
@@ -216,8 +227,9 @@ Claude Code의 Agent Teams 기능이 활성화되어 있으면 (`CLAUDE_CODE_EXP
216
227
  | 적합한 작업 | 집중된 작업 | 리서치, 리뷰, 디버깅 |
217
228
  | 토큰 비용 | 낮음 | 높음 |
218
229
 
219
- **활성화 시, 복잡한 협업 작업에 Agent Teams를 적극 사용합니다.**
220
- 결정 매트릭스는 R017 (SHOULD-agent-teams.md)을 참조하세요.
230
+ **활성화 시, 적격한 협업 작업에 Agent Teams를 적극적으로 우선 사용합니다.**
231
+ 결정 매트릭스는 R018 (SHOULD-agent-teams.md)을 참조하세요.
232
+ 하이브리드 패턴 (Claude + Codex, 동적 생성 + Teams)이 지원됩니다.
221
233
  단순/비용 민감 작업에는 Task tool + 라우팅 스킬이 폴백으로 유지됩니다.
222
234
 
223
235
  ## 빠른 참조
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "0.2.0",
3
- "lastUpdated": "2026-02-08T07:00:00.000Z",
3
+ "lastUpdated": "2026-02-17T07:30:00.000Z",
4
4
  "components": [
5
5
  {
6
6
  "name": "rules",
@@ -36,7 +36,7 @@
36
36
  "name": "contexts",
37
37
  "path": ".claude/contexts",
38
38
  "description": "Context configuration files",
39
- "files": 1
39
+ "files": 4
40
40
  }
41
41
  ],
42
42
  "source": "https://github.com/baekenough/oh-my-customcode"