create-merlin-brain 3.8.2 → 3.10.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 (138) hide show
  1. package/bin/install.cjs +126 -21
  2. package/dist/server/api/client.d.ts.map +1 -1
  3. package/dist/server/api/client.js +11 -7
  4. package/dist/server/api/client.js.map +1 -1
  5. package/dist/server/cost/classifier.d.ts +22 -0
  6. package/dist/server/cost/classifier.d.ts.map +1 -0
  7. package/dist/server/cost/classifier.js +137 -0
  8. package/dist/server/cost/classifier.js.map +1 -0
  9. package/dist/server/cost/tracker.d.ts +34 -0
  10. package/dist/server/cost/tracker.d.ts.map +1 -0
  11. package/dist/server/cost/tracker.js +81 -0
  12. package/dist/server/cost/tracker.js.map +1 -0
  13. package/dist/server/lang/detector.d.ts +17 -0
  14. package/dist/server/lang/detector.d.ts.map +1 -0
  15. package/dist/server/lang/detector.js +144 -0
  16. package/dist/server/lang/detector.js.map +1 -0
  17. package/dist/server/lang/rules.d.ts +21 -0
  18. package/dist/server/lang/rules.d.ts.map +1 -0
  19. package/dist/server/lang/rules.js +70 -0
  20. package/dist/server/lang/rules.js.map +1 -0
  21. package/dist/server/server.d.ts.map +1 -1
  22. package/dist/server/server.js +74 -26
  23. package/dist/server/server.js.map +1 -1
  24. package/dist/server/tools/adaptive.d.ts.map +1 -1
  25. package/dist/server/tools/adaptive.js +2 -1
  26. package/dist/server/tools/adaptive.js.map +1 -1
  27. package/dist/server/tools/agents-index.d.ts.map +1 -1
  28. package/dist/server/tools/agents-index.js +6 -3
  29. package/dist/server/tools/agents-index.js.map +1 -1
  30. package/dist/server/tools/agents.d.ts.map +1 -1
  31. package/dist/server/tools/agents.js +10 -5
  32. package/dist/server/tools/agents.js.map +1 -1
  33. package/dist/server/tools/auto-teach.d.ts.map +1 -1
  34. package/dist/server/tools/auto-teach.js +2 -1
  35. package/dist/server/tools/auto-teach.js.map +1 -1
  36. package/dist/server/tools/behaviors.d.ts.map +1 -1
  37. package/dist/server/tools/behaviors.js +8 -4
  38. package/dist/server/tools/behaviors.js.map +1 -1
  39. package/dist/server/tools/config-sync.d.ts.map +1 -1
  40. package/dist/server/tools/config-sync.js +8 -4
  41. package/dist/server/tools/config-sync.js.map +1 -1
  42. package/dist/server/tools/context.d.ts.map +1 -1
  43. package/dist/server/tools/context.js +66 -7
  44. package/dist/server/tools/context.js.map +1 -1
  45. package/dist/server/tools/cost.d.ts +7 -0
  46. package/dist/server/tools/cost.d.ts.map +1 -0
  47. package/dist/server/tools/cost.js +53 -0
  48. package/dist/server/tools/cost.js.map +1 -0
  49. package/dist/server/tools/discoveries.d.ts.map +1 -1
  50. package/dist/server/tools/discoveries.js +8 -11
  51. package/dist/server/tools/discoveries.js.map +1 -1
  52. package/dist/server/tools/lite.d.ts.map +1 -1
  53. package/dist/server/tools/lite.js +8 -4
  54. package/dist/server/tools/lite.js.map +1 -1
  55. package/dist/server/tools/project.d.ts.map +1 -1
  56. package/dist/server/tools/project.js +14 -7
  57. package/dist/server/tools/project.js.map +1 -1
  58. package/dist/server/tools/route.d.ts.map +1 -1
  59. package/dist/server/tools/route.js +145 -31
  60. package/dist/server/tools/route.js.map +1 -1
  61. package/dist/server/tools/sights-index.d.ts.map +1 -1
  62. package/dist/server/tools/sights-index.js +4 -2
  63. package/dist/server/tools/sights-index.js.map +1 -1
  64. package/dist/server/tools/smart-route.d.ts +12 -0
  65. package/dist/server/tools/smart-route.d.ts.map +1 -0
  66. package/dist/server/tools/smart-route.js +156 -0
  67. package/dist/server/tools/smart-route.js.map +1 -0
  68. package/dist/server/tools/verification.d.ts.map +1 -1
  69. package/dist/server/tools/verification.js +2 -1
  70. package/dist/server/tools/verification.js.map +1 -1
  71. package/files/agents/code-organization-supervisor.md +1 -0
  72. package/files/agents/context-guardian.md +1 -0
  73. package/files/agents/docs-keeper.md +1 -0
  74. package/files/agents/dry-refactor.md +1 -0
  75. package/files/agents/elite-code-refactorer.md +1 -0
  76. package/files/agents/hardening-guard.md +1 -0
  77. package/files/agents/implementation-dev.md +1 -0
  78. package/files/agents/merlin-api-designer.md +1 -0
  79. package/files/agents/merlin-codebase-mapper.md +4 -0
  80. package/files/agents/merlin-debugger.md +1 -0
  81. package/files/agents/merlin-executor.md +1 -0
  82. package/files/agents/merlin-frontend.md +1 -0
  83. package/files/agents/merlin-integration-checker.md +1 -0
  84. package/files/agents/merlin-migrator.md +1 -0
  85. package/files/agents/merlin-milestone-auditor.md +1 -0
  86. package/files/agents/merlin-performance.md +1 -0
  87. package/files/agents/merlin-planner.md +1 -0
  88. package/files/agents/merlin-researcher.md +4 -0
  89. package/files/agents/merlin-reviewer.md +1 -0
  90. package/files/agents/merlin-security.md +1 -0
  91. package/files/agents/merlin-verifier.md +1 -0
  92. package/files/agents/merlin-work-verifier.md +1 -0
  93. package/files/agents/merlin.md +19 -3
  94. package/files/agents/ops-railway.md +1 -0
  95. package/files/agents/orchestrator-retrofit.md +1 -0
  96. package/files/agents/product-spec.md +1 -0
  97. package/files/agents/remotion.md +1 -0
  98. package/files/agents/system-architect.md +1 -0
  99. package/files/agents/tests-qa.md +1 -0
  100. package/files/commands/merlin/help.md +11 -0
  101. package/files/commands/merlin/loop-recipes.md +73 -0
  102. package/files/hooks/agent-sync.sh +3 -0
  103. package/files/hooks/check-file-size.sh +12 -0
  104. package/files/hooks/config-change.sh +43 -0
  105. package/files/hooks/instructions-loaded.sh +34 -0
  106. package/files/hooks/session-start.sh +52 -2
  107. package/files/hooks/worktree-create.sh +44 -0
  108. package/files/hooks/worktree-remove.sh +36 -0
  109. package/files/loop/lib/agents.sh +3 -0
  110. package/files/loop/lib/blend-handoff.sh +3 -0
  111. package/files/loop/lib/blend-learn.sh +3 -0
  112. package/files/loop/lib/blend-parallel.sh +3 -0
  113. package/files/loop/lib/blend-verify.sh +3 -0
  114. package/files/loop/lib/blend.sh +3 -0
  115. package/files/loop/lib/boot.sh +3 -0
  116. package/files/loop/lib/context.sh +3 -0
  117. package/files/loop/lib/discuss.sh +3 -0
  118. package/files/loop/lib/modes.sh +3 -0
  119. package/files/loop/lib/progress.sh +3 -0
  120. package/files/loop/lib/safety.sh +3 -0
  121. package/files/loop/lib/session-end.sh +3 -0
  122. package/files/loop/lib/sights.sh +3 -0
  123. package/files/loop/lib/state.sh +3 -0
  124. package/files/loop/lib/teams.sh +3 -0
  125. package/files/loop/lib/timeout.sh +3 -0
  126. package/files/loop/lib/tui.sh +3 -0
  127. package/files/loop/lib/workflow-gen.sh +3 -0
  128. package/files/loop/lib/workflow-run.sh +3 -0
  129. package/files/loop/lib/workflow.sh +3 -0
  130. package/files/loop/merlin-loop.sh +3 -0
  131. package/files/loop/merlin-session.sh +3 -0
  132. package/package.json +2 -1
  133. package/rules/go.md +38 -0
  134. package/rules/java.md +36 -0
  135. package/rules/python.md +38 -0
  136. package/rules/rust.md +34 -0
  137. package/rules/swift.md +35 -0
  138. package/rules/typescript.md +38 -0
@@ -0,0 +1,156 @@
1
+ /**
2
+ * Smart Route Tool — Discovery-first routing
3
+ *
4
+ * Instead of requiring the caller to know which agent to use,
5
+ * this tool takes a task description and finds the best agent by:
6
+ * 1. Scoring installed local agents by keyword relevance
7
+ * 2. Searching the community catalog of 500+ graded agents
8
+ * 3. Ranking all candidates and recommending the best fit
9
+ */
10
+ import { z } from 'zod';
11
+ import { existsSync, readdirSync } from 'fs';
12
+ import { join } from 'path';
13
+ import { homedir } from 'os';
14
+ /** Known specialist agents and their roles (shared with route.ts) */
15
+ const AGENT_ROLES = {
16
+ 'product-spec': 'Feature specification and product definition',
17
+ 'system-architect': 'Architecture decisions and system design',
18
+ 'implementation-dev': 'Code implementation and feature building',
19
+ 'dry-refactor': 'Code cleanup, DRY refactoring, file organization',
20
+ 'hardening-guard': 'Security hardening, input validation, error handling',
21
+ 'tests-qa': 'Testing and quality assurance',
22
+ 'ops-railway': 'Deployment, ops, Railway, Google Cloud',
23
+ 'docs-keeper': 'Documentation updates',
24
+ };
25
+ /** Domain specialists with keyword matchers */
26
+ const DOMAIN_AGENTS = {
27
+ 'remotion': { keywords: /\b(video|animation|remotion|render)\b/, role: 'Programmatic video creation' },
28
+ 'merlin-frontend': { keywords: /\b(react|vue|frontend|ui|component|css|tailwind)\b/, role: 'Frontend development' },
29
+ 'merlin-security': { keywords: /\b(security|audit|pentest|owasp|vulnerabilit)\b/, role: 'Deep security audits' },
30
+ 'merlin-performance': { keywords: /\b(performance|optimiz|profile|benchmark|latency)\b/, role: 'Performance optimization' },
31
+ 'merlin-api-designer': { keywords: /\b(api|rest|graphql|endpoint|swagger|openapi)\b/, role: 'API design' },
32
+ 'merlin-migrator': { keywords: /\b(migrat|schema|database|alter|column)\b/, role: 'Database migrations' },
33
+ };
34
+ /** Keyword boost patterns for core agents */
35
+ const CORE_BOOSTS = {
36
+ 'implementation-dev': /\b(build|add|create|implement|write|code)\b/,
37
+ 'tests-qa': /\b(test|spec|coverage|e2e|unit)\b/,
38
+ 'hardening-guard': /\b(security|auth|valid|sanitiz|harden)\b/,
39
+ 'dry-refactor': /\b(refactor|cleanup|dry|dedup|organiz)\b/,
40
+ 'product-spec': /\b(spec|feature|product|idea|requirement)\b/,
41
+ 'system-architect': /\b(architect|design|model|schema|service)\b/,
42
+ 'ops-railway': /\b(deploy|railway|infra|ci|cd|env)\b/,
43
+ 'docs-keeper': /\b(doc|readme|comment|changelog)\b/,
44
+ };
45
+ function getAvailableAgents() {
46
+ const agents = new Set();
47
+ const globalDir = join(homedir(), '.claude', 'agents');
48
+ if (existsSync(globalDir)) {
49
+ readdirSync(globalDir).filter(f => f.endsWith('.md')).forEach(f => agents.add(f.replace('.md', '')));
50
+ }
51
+ const localDir = join(process.cwd(), '.claude', 'agents');
52
+ if (existsSync(localDir)) {
53
+ readdirSync(localDir).filter(f => f.endsWith('.md')).forEach(f => agents.add(f.replace('.md', '')));
54
+ }
55
+ return [...agents].sort();
56
+ }
57
+ export function registerSmartRouteTools(ctx) {
58
+ const { server, client } = ctx;
59
+ server.tool('merlin_smart_route', 'Discovery-first routing: describe WHAT you want done and Merlin finds the best agent — ' +
60
+ 'checking both installed local agents AND the community catalog of 500+ graded agents. ' +
61
+ 'Returns a ranked recommendation with the best match. ' +
62
+ 'Use this instead of merlin_route when you don\'t know which agent to pick, or want to check ' +
63
+ 'if a better specialist exists before defaulting to a built-in agent.', {
64
+ task: z.string().describe('What needs to be done (e.g., "add Stripe payments", "write E2E tests", "security audit")'),
65
+ context: z.string().optional().describe('Additional context for the task'),
66
+ }, async ({ task }) => {
67
+ const taskLower = task.toLowerCase();
68
+ // 1. Search catalog and check local agents in parallel
69
+ const [catalogResults, localAgents] = await Promise.all([
70
+ client.searchAgentsIndex(task, { limit: 5 }).catch(() => []),
71
+ Promise.resolve(getAvailableAgents()),
72
+ ]);
73
+ // 2. Score local agents
74
+ const scored = [];
75
+ for (const [agentName, role] of Object.entries(AGENT_ROLES)) {
76
+ if (!localAgents.includes(agentName))
77
+ continue;
78
+ const roleLower = role.toLowerCase();
79
+ const words = taskLower.split(/\s+/);
80
+ let score = 0;
81
+ for (const word of words) {
82
+ if (word.length >= 3 && roleLower.includes(word))
83
+ score += 2;
84
+ }
85
+ const boost = CORE_BOOSTS[agentName];
86
+ if (boost && boost.test(taskLower))
87
+ score += 3;
88
+ if (score > 0) {
89
+ scored.push({ name: agentName, source: 'local', score, description: role });
90
+ }
91
+ }
92
+ // Score domain specialists
93
+ for (const [agentName, { keywords, role }] of Object.entries(DOMAIN_AGENTS)) {
94
+ if (!localAgents.includes(agentName))
95
+ continue;
96
+ if (keywords.test(taskLower)) {
97
+ scored.push({ name: agentName, source: 'local', score: 5, description: role });
98
+ }
99
+ }
100
+ // Score catalog agents (grade-weighted)
101
+ for (const agent of catalogResults) {
102
+ const grade = (agent.grade || '').toUpperCase();
103
+ let gradeScore = 1;
104
+ if (grade === 'A++')
105
+ gradeScore = 5;
106
+ else if (grade === 'A+')
107
+ gradeScore = 4;
108
+ else if (grade === 'A')
109
+ gradeScore = 3;
110
+ else if (grade.startsWith('B'))
111
+ gradeScore = 2;
112
+ scored.push({
113
+ name: agent.name,
114
+ source: 'catalog',
115
+ score: gradeScore,
116
+ grade: agent.grade,
117
+ description: agent.description || '',
118
+ slug: agent.slug,
119
+ });
120
+ }
121
+ scored.sort((a, b) => b.score - a.score);
122
+ if (scored.length === 0) {
123
+ scored.push({ name: 'implementation-dev', source: 'local', score: 0, description: 'General code implementation (default)' });
124
+ }
125
+ const best = scored[0];
126
+ // 3. Build recommendation response
127
+ let response = `# Smart Route: Best Agent for Task\n\n`;
128
+ response += `**Task:** ${task}\n\n`;
129
+ response += `## Recommendation\n\n`;
130
+ const sourceTag = best.source === 'catalog' ? `Catalog (${best.grade})` : `Installed`;
131
+ response += `### Best Match: \`${best.name}\` — ${sourceTag}\n`;
132
+ response += `${best.description}\n\n`;
133
+ if (scored.length > 1) {
134
+ response += `### Alternatives\n\n`;
135
+ scored.slice(1, 5).forEach((alt, idx) => {
136
+ const tag = alt.source === 'catalog' ? `Catalog ${alt.grade || ''}` : `Installed`;
137
+ response += `${idx + 2}. \`${alt.name}\` (${tag}) — ${alt.description}\n`;
138
+ });
139
+ response += '\n';
140
+ }
141
+ if (best.source === 'catalog' && best.slug) {
142
+ response += `---\n\n`;
143
+ response += `The top match is a **community agent**. To use it:\n`;
144
+ response += `1. View details: \`merlin_get_agent_detail("${best.slug}")\`\n`;
145
+ response += `2. Install it, then route: \`merlin_route(agent="${best.slug}", task="...")\`\n\n`;
146
+ }
147
+ if (best.source === 'local') {
148
+ response += `---\n\n`;
149
+ response += `**Route now:** \`merlin_route(agent="${best.name}", task="${task.slice(0, 80)}")\`\n`;
150
+ }
151
+ return {
152
+ content: [{ type: 'text', text: response }],
153
+ };
154
+ });
155
+ }
156
+ //# sourceMappingURL=smart-route.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-route.js","sourceRoot":"","sources":["../../../src/server/tools/smart-route.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../src/server/tools/verification.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAiV9C,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,WAAW,GAAG;IAAE,eAAe,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CAAE,GAAG,IAAI,CAmEpH"}
1
+ {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../src/server/tools/verification.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAiV9C,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,WAAW,GAAG;IAAE,eAAe,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CAAE,GAAG,IAAI,CAoEpH"}
@@ -295,8 +295,9 @@ function formatReport(report) {
295
295
  }
296
296
  export function registerVerificationTools(ctx) {
297
297
  const { server, getRepoRootPath } = ctx;
298
+ // ── DEFERRED tool: loaded on-demand for quality assurance and validation ─
298
299
  // Tool: merlin_run_verification
299
- server.tool('merlin_run_verification', 'Run a 6-phase quality check: Build → Types → Lint → Tests → Security → Diff. Use after major changes or every 15 minutes during long sessions.', {
300
+ server.tool('merlin_run_verification', 'Run a 6-phase quality check pipeline: Build → TypeScript types → Lint → Tests → Security audit Git diff. Auto-detects package manager (npm/pnpm/yarn/bun) and available scripts. Returns pass/fail per phase with errors and output. Use after major changes, before committing, after refactoring, or every 15 minutes during long autonomous sessions. Specify phases to run only a subset.', {
300
301
  phases: z.array(z.enum(['build', 'types', 'lint', 'tests', 'security', 'diff'])).optional()
301
302
  .describe('Specific phases to run (default: all)'),
302
303
  format: z.enum(['full', 'summary']).optional().default('full')
@@ -1 +1 @@
1
- {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../../src/server/tools/verification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../../src/server/tools/verification.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ model: haiku
5
5
  color: blue
6
6
  version: "1.0.0"
7
7
  tools: Read, Write, Edit, Bash, Grep, Glob
8
+ effort: low
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 100
10
11
  ---
@@ -5,6 +5,7 @@ tools: Glob, Grep, Read, WebFetch, TodoWrite, WebSearch
5
5
  model: haiku
6
6
  color: green
7
7
  version: "1.0.0"
8
+ effort: low
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 30
10
11
  ---
@@ -5,6 +5,7 @@ model: sonnet
5
5
  color: green
6
6
  version: "1.0.0"
7
7
  tools: Read, Write, Edit, Grep, Glob
8
+ effort: low
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 50
10
11
  memory: user
@@ -5,6 +5,7 @@ model: sonnet
5
5
  color: purple
6
6
  version: "1.0.0"
7
7
  tools: Read, Write, Edit, Bash, Grep, Glob
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 100
10
11
  memory: project
@@ -5,6 +5,7 @@ model: opus
5
5
  color: green
6
6
  version: "1.0.0"
7
7
  tools: Read, Write, Edit, Bash, Grep, Glob
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 100
10
11
  memory: project
@@ -5,6 +5,7 @@ model: sonnet
5
5
  color: green
6
6
  version: "1.0.0"
7
7
  tools: Read, Write, Edit, Bash, Grep, Glob
8
+ effort: high
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 80
10
11
  memory: project
@@ -5,6 +5,7 @@ model: sonnet
5
5
  color: blue
6
6
  version: "1.0.0"
7
7
  tools: Read, Write, Edit, Bash, Grep, Glob
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 100
10
11
  memory: project
@@ -5,6 +5,7 @@ tools: Read, Write, Grep, Glob
5
5
  color: blue
6
6
  version: "1.0.0"
7
7
  model: sonnet
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 80
10
11
  memory: user
@@ -5,6 +5,7 @@ tools: Read, Bash, Grep, Glob, Write
5
5
  color: cyan
6
6
  version: "1.0.0"
7
7
  model: sonnet
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 150
10
11
  ---
@@ -12,6 +13,9 @@ maxTurns: 150
12
13
  <role>
13
14
  You are a Merlin codebase mapper. You explore a codebase for a specific focus area and write analysis documents directly to `.planning/codebase/`.
14
15
 
16
+ ## Context Window
17
+ You have access to a 1M token context window. Use it fully — read entire files, analyze complete codebases, don't truncate or summarize prematurely.
18
+
15
19
  You are spawned by `/merlin:map-codebase` with one of four focus areas:
16
20
  - **tech**: Analyze technology stack and external integrations → write STACK.md and INTEGRATIONS.md
17
21
  - **arch**: Analyze architecture and file structure → write ARCHITECTURE.md and STRUCTURE.md
@@ -5,6 +5,7 @@ tools: Read, Write, Edit, Bash, Grep, Glob, WebSearch
5
5
  color: orange
6
6
  version: "1.0.0"
7
7
  model: sonnet
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 150
10
11
  memory: project
@@ -5,6 +5,7 @@ tools: Read, Write, Edit, Bash, Grep, Glob
5
5
  color: yellow
6
6
  version: "1.0.0"
7
7
  model: sonnet
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 200
10
11
  ---
@@ -5,6 +5,7 @@ tools: Read, Write, Grep, Glob, Bash
5
5
  color: cyan
6
6
  version: "1.0.0"
7
7
  model: sonnet
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 100
10
11
  memory: project
@@ -5,6 +5,7 @@ tools: Read, Bash, Grep, Glob
5
5
  color: blue
6
6
  version: "1.0.0"
7
7
  model: sonnet
8
+ effort: low
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 80
10
11
  ---
@@ -5,6 +5,7 @@ tools: Read, Write, Bash, Grep, Glob
5
5
  color: yellow
6
6
  version: "1.0.0"
7
7
  model: sonnet
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 100
10
11
  memory: project
@@ -5,6 +5,7 @@ tools: Read, Bash, Grep, Glob, Task
5
5
  color: blue
6
6
  version: "1.0.0"
7
7
  model: opus
8
+ effort: low
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 50
10
11
  ---
@@ -5,6 +5,7 @@ tools: Read, Grep, Glob, Bash
5
5
  color: red
6
6
  version: "1.0.0"
7
7
  model: sonnet
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 80
10
11
  memory: user
@@ -6,6 +6,7 @@ color: blue
6
6
  version: "1.0.0"
7
7
  disallowedTools: [Edit, Write, NotebookEdit, Bash]
8
8
  model: opus
9
+ effort: high
9
10
  permissionMode: bypassPermissions
10
11
  maxTurns: 100
11
12
  ---
@@ -5,6 +5,7 @@ tools: Read, Write, Bash, Grep, Glob, WebSearch, WebFetch, mcp__context7__*
5
5
  color: cyan
6
6
  version: "1.0.0"
7
7
  model: opus
8
+ effort: high
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 100
10
11
  ---
@@ -12,6 +13,9 @@ maxTurns: 100
12
13
  <role>
13
14
  You are a Merlin researcher. You conduct comprehensive research using systematic methodology, source verification, and structured output.
14
15
 
16
+ ## Context Window
17
+ You have access to a 1M token context window. Use it fully — read entire files, analyze complete codebases, don't truncate or summarize prematurely.
18
+
15
19
  You are spawned by:
16
20
 
17
21
  - `/merlin:research-phase` orchestrator (phase-specific research before planning)
@@ -6,6 +6,7 @@ color: orange
6
6
  version: "1.0.0"
7
7
  disallowedTools: [Edit, Write, NotebookEdit]
8
8
  model: sonnet
9
+ effort: medium
9
10
  permissionMode: bypassPermissions
10
11
  maxTurns: 50
11
12
  memory: project
@@ -6,6 +6,7 @@ color: red
6
6
  version: "1.0.0"
7
7
  disallowedTools: [Edit, Write, NotebookEdit]
8
8
  model: sonnet
9
+ effort: high
9
10
  permissionMode: bypassPermissions
10
11
  maxTurns: 80
11
12
  memory: user
@@ -6,6 +6,7 @@ color: green
6
6
  version: "1.0.0"
7
7
  disallowedTools: [Edit, Write, NotebookEdit]
8
8
  model: sonnet
9
+ effort: low
9
10
  permissionMode: bypassPermissions
10
11
  maxTurns: 100
11
12
  ---
@@ -5,6 +5,7 @@ tools: Read, Bash, Grep, Glob, Edit, Write, AskUserQuestion
5
5
  color: green
6
6
  version: "1.0.0"
7
7
  model: sonnet
8
+ effort: low
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 50
10
11
  ---
@@ -4,6 +4,7 @@ description: The Merlin Brain - Master AI orchestrator. Routes to specialist age
4
4
  model: opus
5
5
  color: magenta
6
6
  version: "1.0.0"
7
+ effort: high
7
8
  permissionMode: bypassPermissions
8
9
  maxTurns: 50
9
10
  ---
@@ -149,9 +150,22 @@ Skip steps only when clearly irrelevant or user explicitly asks.
149
150
 
150
151
  ## Routing Rules
151
152
 
152
- **Two mechanisms — use the right one:**
153
+ **Three mechanisms — use the right one:**
153
154
 
154
- ### A. Specialist Routing (feature-level)
155
+ ### A. Smart Routing (PREFERRED — discovery-first)
156
+
157
+ When you're not sure which agent is best, or want to check if a better specialist exists:
158
+
159
+ ```
160
+ merlin_smart_route(task="what needs to be done")
161
+ ```
162
+
163
+ This searches **both** installed agents AND the catalog of 500+ community agents, scores them, and recommends the best fit. Use this when:
164
+ - The task doesn't obviously match a core agent
165
+ - You want to check if a community specialist exists (e.g., Stripe, Prisma, Next.js)
166
+ - The user asks for something you haven't routed before
167
+
168
+ ### B. Direct Routing (when you know the agent)
155
169
 
156
170
  Route via `/merlin:route` — spawns a FRESH Claude process with 200K context:
157
171
 
@@ -159,7 +173,7 @@ Route via `/merlin:route` — spawns a FRESH Claude process with 200K context:
159
173
  Skill("merlin:route", args='<agent-name> "<task description>"')
160
174
  ```
161
175
 
162
- **Core routing table (95% of tasks):**
176
+ **Core routing table (for obvious matches):**
163
177
 
164
178
  | User intent | Route to |
165
179
  |------------|----------|
@@ -183,6 +197,8 @@ Skill("merlin:route", args='<agent-name> "<task description>"')
183
197
  | API design, REST/GraphQL schema | `merlin-api-designer` |
184
198
  | Database migration, schema changes | `merlin-migrator` |
185
199
 
200
+ **When in doubt between A and B:** Use A. It's fast (parallel API call) and catches better specialists you might miss.
201
+
186
202
  **Multiple concerns?** Route agents in sequence. Each gets fresh context.
187
203
 
188
204
  ### B. Workflow Commands (project-level)
@@ -5,6 +5,7 @@ model: sonnet
5
5
  color: red
6
6
  version: "1.0.0"
7
7
  tools: Read, Write, Edit, Bash, Grep, Glob
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 80
10
11
  memory: project
@@ -5,6 +5,7 @@ model: opus
5
5
  color: purple
6
6
  version: "1.0.0"
7
7
  tools: Read, Write, Edit, Bash, Grep, Glob
8
+ effort: high
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 80
10
11
  ---
@@ -6,6 +6,7 @@ color: white
6
6
  version: "1.0.0"
7
7
  disallowedTools: [Edit, Write, NotebookEdit, Bash]
8
8
  tools: Read, Grep, Glob, WebSearch
9
+ effort: high
9
10
  permissionMode: bypassPermissions
10
11
  maxTurns: 30
11
12
  ---
@@ -5,6 +5,7 @@ model: sonnet
5
5
  tools: Read, Write, Edit, Bash, Grep, Glob, WebSearch
6
6
  color: red
7
7
  version: "1.0.0"
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 100
10
11
  ---
@@ -6,6 +6,7 @@ color: black
6
6
  version: "1.0.0"
7
7
  disallowedTools: [Edit, Write, NotebookEdit, Bash]
8
8
  tools: Read, Grep, Glob, Bash, WebSearch
9
+ effort: high
9
10
  permissionMode: bypassPermissions
10
11
  maxTurns: 50
11
12
  memory: user
@@ -5,6 +5,7 @@ model: sonnet
5
5
  color: yellow
6
6
  version: "1.0.0"
7
7
  tools: Read, Write, Edit, Bash, Grep, Glob
8
+ effort: medium
8
9
  permissionMode: bypassPermissions
9
10
  maxTurns: 100
10
11
  memory: project
@@ -291,6 +291,17 @@ List pending todos and select one to work on.
291
291
  Usage: `/merlin:check-todos`
292
292
  Usage: `/merlin:check-todos api`
293
293
 
294
+ ### Loop & Automation
295
+
296
+ **`/merlin:loop-recipes`**
297
+ Show pre-built `/loop` patterns for common Merlin workflows.
298
+
299
+ - Copy-paste recipes for development monitoring, code quality, deployments, and more
300
+ - Uses Claude Code's native `/loop` command (no scripts needed)
301
+ - Covers progress checks, security patrols, PR monitoring, doc freshness, and more
302
+
303
+ Usage: `/merlin:loop-recipes`
304
+
294
305
  ### Utility Commands
295
306
 
296
307
  **`/merlin:help`**