mustard-claude 2.0.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/README.md +198 -0
- package/bin/mustard.js +5 -0
- package/dist/analyzers/llm.d.ts +13 -0
- package/dist/analyzers/llm.js +339 -0
- package/dist/analyzers/llm.js.map +1 -0
- package/dist/analyzers/semantic.d.ts +13 -0
- package/dist/analyzers/semantic.js +215 -0
- package/dist/analyzers/semantic.js.map +1 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +42 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/init.d.ts +5 -0
- package/dist/commands/init.js +377 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/sync.d.ts +5 -0
- package/dist/commands/sync.js +235 -0
- package/dist/commands/sync.js.map +1 -0
- package/dist/commands/update.d.ts +8 -0
- package/dist/commands/update.js +237 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/generators/claude-md-llm.d.ts +5 -0
- package/dist/generators/claude-md-llm.js +101 -0
- package/dist/generators/claude-md-llm.js.map +1 -0
- package/dist/generators/claude-md-template.d.ts +5 -0
- package/dist/generators/claude-md-template.js +273 -0
- package/dist/generators/claude-md-template.js.map +1 -0
- package/dist/generators/commands.d.ts +17 -0
- package/dist/generators/commands.js +845 -0
- package/dist/generators/commands.js.map +1 -0
- package/dist/generators/context.d.ts +11 -0
- package/dist/generators/context.js +621 -0
- package/dist/generators/context.js.map +1 -0
- package/dist/generators/hooks.d.ts +5 -0
- package/dist/generators/hooks.js +128 -0
- package/dist/generators/hooks.js.map +1 -0
- package/dist/generators/index.d.ts +11 -0
- package/dist/generators/index.js +541 -0
- package/dist/generators/index.js.map +1 -0
- package/dist/generators/prompts.d.ts +13 -0
- package/dist/generators/prompts.js +579 -0
- package/dist/generators/prompts.js.map +1 -0
- package/dist/generators/registry.d.ts +5 -0
- package/dist/generators/registry.js +93 -0
- package/dist/generators/registry.js.map +1 -0
- package/dist/scanners/dependencies.d.ts +7 -0
- package/dist/scanners/dependencies.js +195 -0
- package/dist/scanners/dependencies.js.map +1 -0
- package/dist/scanners/index.d.ts +6 -0
- package/dist/scanners/index.js +37 -0
- package/dist/scanners/index.js.map +1 -0
- package/dist/scanners/samples.d.ts +8 -0
- package/dist/scanners/samples.js +193 -0
- package/dist/scanners/samples.js.map +1 -0
- package/dist/scanners/stack.d.ts +5 -0
- package/dist/scanners/stack.js +294 -0
- package/dist/scanners/stack.js.map +1 -0
- package/dist/scanners/structure.d.ts +5 -0
- package/dist/scanners/structure.js +274 -0
- package/dist/scanners/structure.js.map +1 -0
- package/dist/services/grepai.d.ts +25 -0
- package/dist/services/grepai.js +89 -0
- package/dist/services/grepai.js.map +1 -0
- package/dist/services/ollama.d.ts +22 -0
- package/dist/services/ollama.js +86 -0
- package/dist/services/ollama.js.map +1 -0
- package/dist/services/package-manager.d.ts +95 -0
- package/dist/services/package-manager.js +164 -0
- package/dist/services/package-manager.js.map +1 -0
- package/dist/types.d.ts +233 -0
- package/dist/types.js +5 -0
- package/dist/types.js.map +1 -0
- package/package.json +56 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude-md-llm.js","sourceRoot":"","sources":["../../src/generators/claude-md-llm.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
import { getRunCommand } from '../services/package-manager.js';
|
|
2
|
+
/**
|
|
3
|
+
* Generate CLAUDE.md using templates (fallback when Ollama is unavailable)
|
|
4
|
+
*/
|
|
5
|
+
export function generateClaudeMd(projectInfo, analysis) {
|
|
6
|
+
const sections = [
|
|
7
|
+
generateHeader(projectInfo),
|
|
8
|
+
generateQuickReference(projectInfo),
|
|
9
|
+
generateProjectState(projectInfo),
|
|
10
|
+
generateDelegation(),
|
|
11
|
+
generateCommands(projectInfo),
|
|
12
|
+
generatePipeline(),
|
|
13
|
+
generateEntityRegistry(projectInfo),
|
|
14
|
+
generateGrepai(),
|
|
15
|
+
generateRules(projectInfo, analysis),
|
|
16
|
+
generateLinks()
|
|
17
|
+
];
|
|
18
|
+
return sections.join('\n\n---\n\n');
|
|
19
|
+
}
|
|
20
|
+
function generateHeader(projectInfo) {
|
|
21
|
+
return `# ${projectInfo.name} - Instructions for Claude
|
|
22
|
+
|
|
23
|
+
> Auto-generated by **Mustard CLI v2.0**
|
|
24
|
+
|
|
25
|
+
Type: **${projectInfo.type}**
|
|
26
|
+
Package Manager: **${projectInfo.packageManager ?? 'npm'}**`;
|
|
27
|
+
}
|
|
28
|
+
function generateQuickReference(projectInfo) {
|
|
29
|
+
const patterns = projectInfo.patterns;
|
|
30
|
+
return `## 1. Quick Reference
|
|
31
|
+
|
|
32
|
+
\`\`\`
|
|
33
|
+
Entities: PascalCase singular → Contract, Person, Company
|
|
34
|
+
DB Tables: snake_case plural → contracts, people, companies
|
|
35
|
+
Endpoints: /api/kebab-case → /api/contracts, /api/people
|
|
36
|
+
Components: PascalCase.tsx → ContractForm.tsx
|
|
37
|
+
Hooks: use + camelCase → useContracts.ts
|
|
38
|
+
\`\`\`
|
|
39
|
+
|
|
40
|
+
### Detected Conventions
|
|
41
|
+
|
|
42
|
+
| Type | Pattern |
|
|
43
|
+
|------|---------|
|
|
44
|
+
| Classes | ${patterns?.classes ?? 'PascalCase'} |
|
|
45
|
+
| Files | ${typeof patterns?.files === 'object' ? JSON.stringify(patterns.files) : (patterns?.files ?? 'varies')} |
|
|
46
|
+
| Folders | ${patterns?.folders ?? 'plural'} |`;
|
|
47
|
+
}
|
|
48
|
+
function generateProjectState(projectInfo) {
|
|
49
|
+
const rows = projectInfo.stacks.map(s => {
|
|
50
|
+
const tech = s.name + (s.version ? ` ${s.version}` : '');
|
|
51
|
+
return `| ${s.path} | ${tech} | - | ✅ Detected |`;
|
|
52
|
+
}).join('\n');
|
|
53
|
+
return `## 2. Project State
|
|
54
|
+
|
|
55
|
+
| Project | Technology | Port | Status |
|
|
56
|
+
|---------|------------|------|--------|
|
|
57
|
+
${rows}`;
|
|
58
|
+
}
|
|
59
|
+
function generateDelegation() {
|
|
60
|
+
return `## 3. DELEGATION VIA TASK TOOL
|
|
61
|
+
|
|
62
|
+
> 💡 **RECOMMENDED:** Use Task tool to delegate tasks to specialized agents.
|
|
63
|
+
|
|
64
|
+
### Available Agents
|
|
65
|
+
|
|
66
|
+
| Agent | Usage | Model |
|
|
67
|
+
|-------|-------|-------|
|
|
68
|
+
| \`Explore\` | Explore codebase, find files | haiku |
|
|
69
|
+
| \`Plan\` | Plan complex implementations | sonnet |
|
|
70
|
+
| \`general-purpose\` | Implement code, bug fixes | opus/sonnet |
|
|
71
|
+
| \`Bash\` | Execute terminal commands | - |
|
|
72
|
+
|
|
73
|
+
### Delegation Map
|
|
74
|
+
|
|
75
|
+
| Request | Agent | Model |
|
|
76
|
+
|---------|-------|-------|
|
|
77
|
+
| Bug fix | \`general-purpose\` | opus |
|
|
78
|
+
| New feature | \`Plan\` → \`general-purpose\` | sonnet/opus |
|
|
79
|
+
| Explore code | \`Explore\` | haiku |
|
|
80
|
+
| Backend/Frontend/DB | \`general-purpose\` | opus |`;
|
|
81
|
+
}
|
|
82
|
+
function generateCommands(projectInfo) {
|
|
83
|
+
// Detect appropriate commands based on stack
|
|
84
|
+
const hasNode = projectInfo.stacks.some(s => ['react', 'nextjs', 'node'].includes(s.name));
|
|
85
|
+
const hasDotnet = projectInfo.stacks.some(s => s.name === 'dotnet');
|
|
86
|
+
const hasPython = projectInfo.stacks.some(s => s.name === 'python');
|
|
87
|
+
let runCmd = getRunCommand(projectInfo.packageManager ?? 'npm', 'dev');
|
|
88
|
+
if (hasNode)
|
|
89
|
+
runCmd = getRunCommand(projectInfo.packageManager ?? 'npm', 'dev');
|
|
90
|
+
if (hasDotnet)
|
|
91
|
+
runCmd = 'dotnet run';
|
|
92
|
+
if (hasPython)
|
|
93
|
+
runCmd = 'python main.py';
|
|
94
|
+
return `## 4. Available Commands
|
|
95
|
+
|
|
96
|
+
> **Note:** Mustard commands use the \`mtd-{category}-{action}\` pattern.
|
|
97
|
+
> They are in \`commands/mustard/\`. Create your own in \`commands/\` - preserved on updates.
|
|
98
|
+
|
|
99
|
+
### Pipeline
|
|
100
|
+
|
|
101
|
+
| Command | Description |
|
|
102
|
+
|---------|-------------|
|
|
103
|
+
| \`/mtd-pipeline-feature <name>\` | **Single entry point for features** - Starts full pipeline |
|
|
104
|
+
| \`/mtd-pipeline-bugfix <error>\` | **Single entry point for bugs** - Diagnosis + fix |
|
|
105
|
+
| \`/mtd-pipeline-approve\` | Approve spec and start implementation |
|
|
106
|
+
| \`/mtd-pipeline-complete\` | Finalize pipeline |
|
|
107
|
+
| \`/mtd-pipeline-resume\` | Resume active pipeline |
|
|
108
|
+
|
|
109
|
+
### Git
|
|
110
|
+
|
|
111
|
+
| Command | Description |
|
|
112
|
+
|---------|-------------|
|
|
113
|
+
| \`/mtd-git-commit\` | Simple commit |
|
|
114
|
+
| \`/mtd-git-push\` | Commit and push |
|
|
115
|
+
| \`/mtd-git-merge\` | Merge to main |
|
|
116
|
+
|
|
117
|
+
### Validate
|
|
118
|
+
|
|
119
|
+
| Command | Description |
|
|
120
|
+
|---------|-------------|
|
|
121
|
+
| \`/mtd-validate-build\` | Build + type-check |
|
|
122
|
+
| \`/mtd-validate-status\` | Consolidated status |
|
|
123
|
+
|
|
124
|
+
### Sync
|
|
125
|
+
|
|
126
|
+
| Command | Description |
|
|
127
|
+
|---------|-------------|
|
|
128
|
+
| \`/mtd-sync-registry\` | Update Entity Registry |
|
|
129
|
+
| \`/mtd-sync-dependencies\` | Install dependencies |
|
|
130
|
+
| \`/mtd-sync-context\` | Load project context |
|
|
131
|
+
|
|
132
|
+
### Report
|
|
133
|
+
|
|
134
|
+
| Command | Description |
|
|
135
|
+
|---------|-------------|
|
|
136
|
+
| \`/mtd-report-daily\` | Daily progress report |
|
|
137
|
+
| \`/mtd-report-weekly\` | Weekly progress report |
|
|
138
|
+
|
|
139
|
+
### Scan
|
|
140
|
+
|
|
141
|
+
| Command | Description |
|
|
142
|
+
|---------|-------------|
|
|
143
|
+
| \`/mtd-scan-project\` | Scan project structure |`;
|
|
144
|
+
}
|
|
145
|
+
function generatePipeline() {
|
|
146
|
+
return `## 5. Single Pipeline
|
|
147
|
+
|
|
148
|
+
\`\`\`
|
|
149
|
+
/mtd-pipeline-feature or /mtd-pipeline-bugfix
|
|
150
|
+
│
|
|
151
|
+
▼
|
|
152
|
+
EXPLORE (Task Explore)
|
|
153
|
+
│
|
|
154
|
+
▼
|
|
155
|
+
SPEC (spec/active/{name}/spec.md)
|
|
156
|
+
│
|
|
157
|
+
┌────┴────┐
|
|
158
|
+
▼ ▼
|
|
159
|
+
[APPROVED] [ITERATE]
|
|
160
|
+
│ │
|
|
161
|
+
▼ (back)
|
|
162
|
+
IMPLEMENT (Task general-purpose)
|
|
163
|
+
│
|
|
164
|
+
▼
|
|
165
|
+
REVIEW
|
|
166
|
+
│
|
|
167
|
+
▼
|
|
168
|
+
COMPLETED
|
|
169
|
+
\`\`\``;
|
|
170
|
+
}
|
|
171
|
+
function generateEntityRegistry(projectInfo) {
|
|
172
|
+
// Build patterns based on detected structure
|
|
173
|
+
const patterns = {};
|
|
174
|
+
const hasDrizzle = projectInfo.stacks.some(s => s.name === 'drizzle');
|
|
175
|
+
const hasDotnet = projectInfo.stacks.some(s => s.name === 'dotnet');
|
|
176
|
+
const hasReact = projectInfo.stacks.some(s => ['react', 'nextjs'].includes(s.name));
|
|
177
|
+
if (hasDrizzle) {
|
|
178
|
+
const dbPath = projectInfo.stacks.find(s => s.name === 'drizzle')?.path ?? 'database';
|
|
179
|
+
patterns.db = `${dbPath}/schema/{e}.ts`;
|
|
180
|
+
}
|
|
181
|
+
if (hasDotnet) {
|
|
182
|
+
const bePath = projectInfo.stacks.find(s => s.name === 'dotnet')?.path ?? 'backend';
|
|
183
|
+
patterns.be = `${bePath}/Modules/{E}/`;
|
|
184
|
+
}
|
|
185
|
+
if (hasReact) {
|
|
186
|
+
const fePath = projectInfo.stacks.find(s => ['react', 'nextjs'].includes(s.name))?.path ?? 'frontend';
|
|
187
|
+
patterns.fe = `${fePath}/src/features/{e}/`;
|
|
188
|
+
}
|
|
189
|
+
return `## 6. Entity Registry (REQUIRED)
|
|
190
|
+
|
|
191
|
+
**CRITICAL RULE**: Before searching for ANY entity files,
|
|
192
|
+
ALWAYS read \`.claude/entity-registry.json\` first.
|
|
193
|
+
|
|
194
|
+
### Format
|
|
195
|
+
|
|
196
|
+
\`\`\`json
|
|
197
|
+
{
|
|
198
|
+
"_meta": { "version": "2.1" },
|
|
199
|
+
"_p": ${JSON.stringify(patterns, null, 4)},
|
|
200
|
+
"e": {
|
|
201
|
+
"Entity1": 1,
|
|
202
|
+
"Entity2": 1
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
\`\`\`
|
|
206
|
+
|
|
207
|
+
Paths are derived from \`_p\` (patterns) + entity name.`;
|
|
208
|
+
}
|
|
209
|
+
function generateGrepai() {
|
|
210
|
+
return `## 7. grepai - Semantic Search
|
|
211
|
+
|
|
212
|
+
Use grepai as the preferred tool for code search:
|
|
213
|
+
|
|
214
|
+
\`\`\`javascript
|
|
215
|
+
// Semantic search
|
|
216
|
+
grepai_search({ query: "authentication flow" })
|
|
217
|
+
|
|
218
|
+
// Call tracing
|
|
219
|
+
grepai_trace_callers({ symbol: "SaveContract" })
|
|
220
|
+
grepai_trace_callees({ symbol: "ValidatePayment" })
|
|
221
|
+
\`\`\`
|
|
222
|
+
|
|
223
|
+
### Search Rules
|
|
224
|
+
|
|
225
|
+
| Tool | Recommendation |
|
|
226
|
+
|------|----------------|
|
|
227
|
+
| \`grepai_search\` | ✅ Prefer for semantic search |
|
|
228
|
+
| \`grepai_trace_*\` | ✅ Use to understand dependencies |
|
|
229
|
+
| \`Grep\` | ⚠️ Use only if grepai is unavailable |
|
|
230
|
+
| \`Glob\` | ⚠️ Use for specific file patterns |`;
|
|
231
|
+
}
|
|
232
|
+
function generateRules(projectInfo, analysis) {
|
|
233
|
+
const rules = analysis.rules ?? [];
|
|
234
|
+
const rulesText = rules.length > 0
|
|
235
|
+
? rules.map(r => `- ${r}`).join('\n')
|
|
236
|
+
: `- Follow project naming conventions
|
|
237
|
+
- Use dependency injection
|
|
238
|
+
- Keep code testable and modular
|
|
239
|
+
- Document public APIs`;
|
|
240
|
+
return `## 8. Rules
|
|
241
|
+
|
|
242
|
+
### Enforcement Rules
|
|
243
|
+
|
|
244
|
+
| Level | Rule | Description |
|
|
245
|
+
|-------|------|-------------|
|
|
246
|
+
| L0 | Delegation | Main Claude does NOT implement code |
|
|
247
|
+
| L1 | grepai | Prefer grepai for semantic search |
|
|
248
|
+
| L2 | Pipeline | Pipeline required for features/bugs |
|
|
249
|
+
| L3 | Patterns | Follow naming conventions |
|
|
250
|
+
|
|
251
|
+
### Project Rules
|
|
252
|
+
|
|
253
|
+
${rulesText}`;
|
|
254
|
+
}
|
|
255
|
+
function generateLinks() {
|
|
256
|
+
return `## 9. Links
|
|
257
|
+
|
|
258
|
+
### Core
|
|
259
|
+
- [Enforcement](./core/enforcement.md)
|
|
260
|
+
- [Naming Conventions](./core/naming-conventions.md)
|
|
261
|
+
- [Pipeline](./core/pipeline.md)
|
|
262
|
+
|
|
263
|
+
### Commands
|
|
264
|
+
- [Mustard Commands](./commands/mustard/) - Core commands (managed by Mustard)
|
|
265
|
+
- [User Commands](./commands/) - Custom commands (preserved on updates)
|
|
266
|
+
|
|
267
|
+
### Prompts
|
|
268
|
+
- [Prompts Index](./prompts/_index.md)
|
|
269
|
+
|
|
270
|
+
### Hooks
|
|
271
|
+
- [enforce-pipeline.js](./hooks/enforce-pipeline.js)`;
|
|
272
|
+
}
|
|
273
|
+
//# sourceMappingURL=claude-md-template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude-md-template.js","sourceRoot":"","sources":["../../src/generators/claude-md-template.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ProjectInfo, GeneratedCommands } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Mustard commands subfolder
|
|
4
|
+
* Commands generated by Mustard go in commands/mustard/
|
|
5
|
+
* User-created commands go directly in commands/
|
|
6
|
+
*/
|
|
7
|
+
export declare const MUSTARD_COMMANDS_FOLDER = "mustard";
|
|
8
|
+
/**
|
|
9
|
+
* Command prefix for Mustard commands
|
|
10
|
+
*/
|
|
11
|
+
export declare const MUSTARD_COMMAND_PREFIX = "mtd";
|
|
12
|
+
/**
|
|
13
|
+
* Generate command files
|
|
14
|
+
* All generated commands go in the mustard/ subfolder
|
|
15
|
+
* Pattern: mtd-{category}-{action}
|
|
16
|
+
*/
|
|
17
|
+
export declare function generateCommands(projectInfo: ProjectInfo): GeneratedCommands;
|