@monoes/monomindcli 1.6.9 → 1.7.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.
@@ -0,0 +1,571 @@
1
+ /**
2
+ * Shared Instructions Generator
3
+ *
4
+ * Auto-detects project profile and generates:
5
+ * 1. .agents/shared_instructions.md — prepended to every agent prompt
6
+ * 2. Memory seeds — pre-loaded into AgentDB so agents start with project best practices
7
+ */
8
+ import * as fs from 'node:fs';
9
+ import * as path from 'node:path';
10
+ import { execSync } from 'node:child_process';
11
+ function readJSON(p) {
12
+ try {
13
+ return JSON.parse(fs.readFileSync(p, 'utf-8'));
14
+ }
15
+ catch {
16
+ return null;
17
+ }
18
+ }
19
+ function fileExists(cwd, ...parts) {
20
+ return fs.existsSync(path.join(cwd, ...parts));
21
+ }
22
+ function detectSrcDir(cwd) {
23
+ for (const d of ['src', 'packages', 'lib', 'app']) {
24
+ if (fs.existsSync(path.join(cwd, d)) && fs.statSync(path.join(cwd, d)).isDirectory()) {
25
+ return d;
26
+ }
27
+ }
28
+ return '';
29
+ }
30
+ function detectTestDir(cwd) {
31
+ for (const d of ['tests', 'test', '__tests__', 'spec']) {
32
+ if (fs.existsSync(path.join(cwd, d)) && fs.statSync(path.join(cwd, d)).isDirectory()) {
33
+ return d;
34
+ }
35
+ }
36
+ return '';
37
+ }
38
+ function extractMaxFileLines(claudeMd) {
39
+ const m = claudeMd.match(/(?:keep|max|under|limit).*?(\d{3,4})\s*lines/i);
40
+ return m ? parseInt(m[1], 10) : null;
41
+ }
42
+ export function detectProjectProfile(cwd) {
43
+ const profile = {
44
+ name: path.basename(cwd),
45
+ description: '',
46
+ language: 'unknown',
47
+ framework: [],
48
+ packageManager: 'unknown',
49
+ testFramework: [],
50
+ buildTool: [],
51
+ isMonorepo: false,
52
+ monorepoTool: '',
53
+ database: [],
54
+ hasDocker: false,
55
+ hasCi: false,
56
+ ciTool: '',
57
+ maxFileLines: null,
58
+ srcDir: detectSrcDir(cwd),
59
+ testDir: detectTestDir(cwd),
60
+ version: '0.0.0',
61
+ isPublicNpm: false,
62
+ };
63
+ // ── package.json (Node/TS/JS) ──────────────────────────────────────────────
64
+ const pkg = readJSON(path.join(cwd, 'package.json'));
65
+ if (pkg) {
66
+ profile.name = pkg['name'] || profile.name;
67
+ profile.description = pkg['description'] || '';
68
+ profile.version = pkg['version'] || '0.0.0';
69
+ profile.isPublicNpm = !pkg['private'];
70
+ const deps = {
71
+ ...(pkg['dependencies'] || {}),
72
+ ...(pkg['devDependencies'] || {}),
73
+ ...(pkg['peerDependencies'] || {}),
74
+ };
75
+ // Language
76
+ profile.language = deps['typescript'] || fileExists(cwd, 'tsconfig.json') ? 'typescript' : 'javascript';
77
+ // Package manager
78
+ if (fileExists(cwd, 'pnpm-lock.yaml') || fileExists(cwd, 'pnpm-workspace.yaml'))
79
+ profile.packageManager = 'pnpm';
80
+ else if (fileExists(cwd, 'yarn.lock'))
81
+ profile.packageManager = 'yarn';
82
+ else if (fileExists(cwd, 'bun.lockb'))
83
+ profile.packageManager = 'bun';
84
+ else
85
+ profile.packageManager = 'npm';
86
+ // Monorepo
87
+ if (fileExists(cwd, 'pnpm-workspace.yaml') || (pkg['workspaces'] && profile.packageManager === 'pnpm')) {
88
+ profile.isMonorepo = true;
89
+ profile.monorepoTool = 'pnpm-workspaces';
90
+ }
91
+ else if (pkg['workspaces']) {
92
+ profile.isMonorepo = true;
93
+ profile.monorepoTool = 'npm-workspaces';
94
+ }
95
+ if (deps['turbo'] || fileExists(cwd, 'turbo.json')) {
96
+ profile.isMonorepo = true;
97
+ profile.monorepoTool = 'turborepo';
98
+ }
99
+ if (deps['nx'] || fileExists(cwd, 'nx.json')) {
100
+ profile.isMonorepo = true;
101
+ profile.monorepoTool = 'nx';
102
+ }
103
+ // Framework
104
+ if (deps['next'])
105
+ profile.framework.push('nextjs');
106
+ else if (deps['react'])
107
+ profile.framework.push('react');
108
+ if (deps['vue'])
109
+ profile.framework.push('vue');
110
+ if (deps['nuxt'] || deps['nuxt3'])
111
+ profile.framework.push('nuxt');
112
+ if (deps['@angular/core'])
113
+ profile.framework.push('angular');
114
+ if (deps['svelte'] || deps['@sveltejs/kit'])
115
+ profile.framework.push('svelte');
116
+ if (deps['express'])
117
+ profile.framework.push('express');
118
+ if (deps['fastify'])
119
+ profile.framework.push('fastify');
120
+ if (deps['hono'])
121
+ profile.framework.push('hono');
122
+ if (deps['@nestjs/core'])
123
+ profile.framework.push('nestjs');
124
+ if (deps['elysia'])
125
+ profile.framework.push('elysia');
126
+ // Testing
127
+ if (deps['vitest'])
128
+ profile.testFramework.push('vitest');
129
+ if (deps['jest'] || deps['@jest/core'])
130
+ profile.testFramework.push('jest');
131
+ if (deps['mocha'])
132
+ profile.testFramework.push('mocha');
133
+ if (deps['@playwright/test'])
134
+ profile.testFramework.push('playwright');
135
+ if (deps['cypress'])
136
+ profile.testFramework.push('cypress');
137
+ // Build
138
+ if (deps['vite'] || fileExists(cwd, 'vite.config.ts') || fileExists(cwd, 'vite.config.js'))
139
+ profile.buildTool.push('vite');
140
+ if (deps['esbuild'])
141
+ profile.buildTool.push('esbuild');
142
+ if (deps['webpack'])
143
+ profile.buildTool.push('webpack');
144
+ if (deps['rollup'])
145
+ profile.buildTool.push('rollup');
146
+ if (fileExists(cwd, 'tsconfig.json') && profile.buildTool.length === 0)
147
+ profile.buildTool.push('tsc');
148
+ // Database
149
+ if (deps['pg'] || deps['postgres'] || deps['@neondatabase/serverless'])
150
+ profile.database.push('postgres');
151
+ if (deps['better-sqlite3'] || deps['@libsql/client'] || deps['sql.js'])
152
+ profile.database.push('sqlite');
153
+ if (deps['mongoose'] || deps['mongodb'])
154
+ profile.database.push('mongodb');
155
+ if (deps['redis'] || deps['ioredis'])
156
+ profile.database.push('redis');
157
+ if (deps['drizzle-orm'])
158
+ profile.database.push('drizzle');
159
+ if (deps['prisma'] || deps['@prisma/client'])
160
+ profile.database.push('prisma');
161
+ if (deps['@supabase/supabase-js'])
162
+ profile.database.push('supabase');
163
+ }
164
+ // ── Cargo.toml (Rust) ──────────────────────────────────────────────────────
165
+ if (fileExists(cwd, 'Cargo.toml') && profile.language === 'unknown') {
166
+ profile.language = 'rust';
167
+ profile.packageManager = 'cargo';
168
+ try {
169
+ const cargo = fs.readFileSync(path.join(cwd, 'Cargo.toml'), 'utf-8');
170
+ const nameM = cargo.match(/^name\s*=\s*"([^"]+)"/m);
171
+ if (nameM)
172
+ profile.name = nameM[1];
173
+ if (fileExists(cwd, 'Cargo.lock') && cargo.includes('[workspace]'))
174
+ profile.isMonorepo = true;
175
+ if (cargo.includes('axum') || cargo.includes('actix') || cargo.includes('warp'))
176
+ profile.framework.push('web');
177
+ if (cargo.includes('tokio'))
178
+ profile.framework.push('tokio');
179
+ if (cargo.includes('serde'))
180
+ profile.framework.push('serde');
181
+ }
182
+ catch { /* skip */ }
183
+ }
184
+ // ── pyproject.toml / requirements.txt (Python) ────────────────────────────
185
+ if ((fileExists(cwd, 'pyproject.toml') || fileExists(cwd, 'requirements.txt')) && profile.language === 'unknown') {
186
+ profile.language = 'python';
187
+ if (fileExists(cwd, 'poetry.lock'))
188
+ profile.packageManager = 'poetry';
189
+ else if (fileExists(cwd, 'uv.lock'))
190
+ profile.packageManager = 'uv';
191
+ else
192
+ profile.packageManager = 'pip';
193
+ try {
194
+ const pp = fs.readFileSync(path.join(cwd, 'pyproject.toml'), 'utf-8');
195
+ if (pp.includes('fastapi') || pp.includes('FastAPI'))
196
+ profile.framework.push('fastapi');
197
+ if (pp.includes('django'))
198
+ profile.framework.push('django');
199
+ if (pp.includes('flask'))
200
+ profile.framework.push('flask');
201
+ if (pp.includes('pytest'))
202
+ profile.testFramework.push('pytest');
203
+ if (pp.includes('sqlalchemy'))
204
+ profile.database.push('sqlalchemy');
205
+ }
206
+ catch { /* skip */ }
207
+ }
208
+ // ── go.mod (Go) ───────────────────────────────────────────────────────────
209
+ if (fileExists(cwd, 'go.mod') && profile.language === 'unknown') {
210
+ profile.language = 'go';
211
+ profile.packageManager = 'unknown'; // go mod doesn't have a separate PM
212
+ try {
213
+ const gomod = fs.readFileSync(path.join(cwd, 'go.mod'), 'utf-8');
214
+ if (gomod.includes('gin-gonic/gin'))
215
+ profile.framework.push('gin');
216
+ if (gomod.includes('labstack/echo'))
217
+ profile.framework.push('echo');
218
+ if (gomod.includes('gofiber/fiber'))
219
+ profile.framework.push('fiber');
220
+ }
221
+ catch { /* skip */ }
222
+ }
223
+ // ── Infrastructure detection ───────────────────────────────────────────────
224
+ profile.hasDocker = fileExists(cwd, 'Dockerfile') || fileExists(cwd, 'docker-compose.yml') || fileExists(cwd, 'docker-compose.yaml');
225
+ if (fileExists(cwd, '.github', 'workflows')) {
226
+ profile.hasCi = true;
227
+ profile.ciTool = 'github-actions';
228
+ }
229
+ else if (fileExists(cwd, '.circleci')) {
230
+ profile.hasCi = true;
231
+ profile.ciTool = 'circleci';
232
+ }
233
+ else if (fileExists(cwd, '.gitlab-ci.yml')) {
234
+ profile.hasCi = true;
235
+ profile.ciTool = 'gitlab-ci';
236
+ }
237
+ // ── CLAUDE.md conventions extraction ──────────────────────────────────────
238
+ try {
239
+ const claudeMd = fs.readFileSync(path.join(cwd, 'CLAUDE.md'), 'utf-8');
240
+ profile.maxFileLines = extractMaxFileLines(claudeMd);
241
+ }
242
+ catch { /* skip */ }
243
+ return profile;
244
+ }
245
+ // ── Shared Instructions Generator ────────────────────────────────────────────
246
+ function langBestPractices(profile) {
247
+ const { language, framework, testFramework, buildTool, packageManager, isMonorepo, database } = profile;
248
+ const sections = [];
249
+ if (language === 'typescript' || language === 'javascript') {
250
+ sections.push(`## TypeScript / Node.js Best Practices
251
+ - Use \`const\` by default; \`let\` only when the variable must be reassigned
252
+ - Prefer \`async/await\` over raw Promises or callbacks
253
+ - Always type function parameters and return values explicitly — no implicit \`any\`
254
+ - Use \`unknown\` instead of \`any\` at system boundaries; narrow with type guards
255
+ - Keep modules small and focused — one clear responsibility per file
256
+ - Prefer named exports over default exports (easier to refactor and search)
257
+ - Use \`satisfies\` operator to validate literals against types without widening
258
+ - Handle errors explicitly — never swallow them silently`);
259
+ if (language === 'typescript') {
260
+ sections.push(`## TypeScript Strictness
261
+ - Always enable \`strict: true\` in tsconfig
262
+ - Use \`readonly\` for arrays and objects that shouldn't be mutated
263
+ - Prefer \`interface\` for public API shapes, \`type\` for unions/intersections/computed
264
+ - Use discriminated unions for state machines and result types`);
265
+ }
266
+ }
267
+ if (language === 'python') {
268
+ sections.push(`## Python Best Practices
269
+ - Use type hints everywhere — run \`mypy\` or \`pyright\` in strict mode
270
+ - Prefer \`dataclasses\` or \`pydantic\` models over plain dicts for structured data
271
+ - Use \`pathlib.Path\` instead of \`os.path\`
272
+ - Prefer \`with\` statements for resource management
273
+ - Use \`logging\` module, never \`print\` in production code
274
+ - Keep functions under 50 lines; split long functions immediately`);
275
+ }
276
+ if (language === 'rust') {
277
+ sections.push(`## Rust Best Practices
278
+ - Prefer \`Result<T, E>\` over panics for recoverable errors
279
+ - Use \`?\` operator for error propagation
280
+ - Document all public items with \`///\` doc comments
281
+ - Run \`clippy\` before every commit
282
+ - Avoid \`unwrap()\` in production paths — use \`expect("reason")\` or proper handling
283
+ - Keep \`unsafe\` blocks minimal and always document the invariant they maintain`);
284
+ }
285
+ if (language === 'go') {
286
+ sections.push(`## Go Best Practices
287
+ - Errors are values — always handle them, never \`_\` a returned error in production
288
+ - Use \`context.Context\` as the first parameter of any function that does I/O
289
+ - Prefer table-driven tests with \`t.Run\`
290
+ - Keep interfaces small — prefer 1-3 methods
291
+ - Use \`defer\` for cleanup but be aware of loop-defer pitfalls`);
292
+ }
293
+ // Framework-specific
294
+ if (framework.includes('react') || framework.includes('nextjs')) {
295
+ sections.push(`## React / Next.js Best Practices
296
+ - Prefer Server Components by default in Next.js 13+ App Router
297
+ - Co-locate tests with the component they test
298
+ - Extract shared logic into custom hooks
299
+ - Use \`useCallback\` and \`useMemo\` only when profiling shows a real problem
300
+ - Keep components under 200 lines — split into sub-components when larger
301
+ - Never put business logic in components — keep it in hooks or server actions`);
302
+ }
303
+ if (framework.includes('nestjs')) {
304
+ sections.push(`## NestJS Best Practices
305
+ - Follow the module → service → controller layering strictly
306
+ - Use DTOs with class-validator for all input validation
307
+ - Inject dependencies via constructor — never instantiate services directly
308
+ - Use pipes for transformation, guards for authorization, interceptors for cross-cutting concerns`);
309
+ }
310
+ if (framework.includes('fastapi')) {
311
+ sections.push(`## FastAPI Best Practices
312
+ - Use Pydantic v2 models for all request/response schemas
313
+ - Separate router, service, and repository layers
314
+ - Use \`async def\` for all endpoints that do any I/O
315
+ - Handle errors with \`HTTPException\` — never let raw exceptions propagate`);
316
+ }
317
+ // Testing
318
+ if (testFramework.includes('vitest') || testFramework.includes('jest')) {
319
+ sections.push(`## Testing (${testFramework.join(' / ')})
320
+ - Follow London School TDD: write the failing test first, then the minimum implementation
321
+ - Mock at the boundary — mock HTTP clients and DB adapters, not business logic
322
+ - Test behavior, not implementation — avoid testing private methods
323
+ - Use \`describe\` / \`it\` blocks that read like documentation
324
+ - Keep each test file focused on one unit; integration tests live in a separate directory`);
325
+ }
326
+ if (testFramework.includes('pytest')) {
327
+ sections.push(`## Testing (pytest)
328
+ - Write tests before implementation (TDD)
329
+ - Use \`pytest.fixture\` for shared setup; prefer function-scoped fixtures
330
+ - Use \`pytest.mark.parametrize\` for data-driven tests
331
+ - Mock external calls with \`pytest-mock\` — never let tests hit the real network or DB`);
332
+ }
333
+ // Database
334
+ if (database.includes('postgres') || database.includes('sqlite')) {
335
+ sections.push(`## Database Best Practices
336
+ - Never run raw interpolated SQL — always use parameterized queries
337
+ - Keep migrations small and reversible
338
+ - Index foreign keys and columns used in WHERE/ORDER BY
339
+ - Use transactions for operations that must be atomic
340
+ - Do not fetch more columns than needed — avoid \`SELECT *\`${database.includes('drizzle') ? '\n- Use Drizzle schema objects for all query building — no raw SQL except for complex aggregates' : ''}${database.includes('prisma') ? '\n- Use Prisma transactions (\`prisma.$transaction\`) for multi-step writes' : ''}`);
341
+ }
342
+ // Monorepo
343
+ if (isMonorepo) {
344
+ const pmRun = packageManager === 'pnpm' ? 'pnpm' : packageManager === 'yarn' ? 'yarn' : 'npm run';
345
+ sections.push(`## Monorepo Conventions
346
+ - Make changes in the appropriate package — never write code that cuts across package boundaries without a clear interface
347
+ - Shared types live in a dedicated \`@<scope>/types\` or \`@<scope>/shared\` package
348
+ - Run \`${pmRun} build\` in changed packages before running tests that depend on them
349
+ - Use internal package references (workspace protocol) — never copy code between packages`);
350
+ }
351
+ // CI
352
+ if (profile.hasCi) {
353
+ sections.push(`## CI / CD
354
+ - All code must pass CI before merging — do not bypass checks
355
+ - Keep CI builds under 10 minutes — split slow jobs if needed
356
+ - Never commit secrets or API keys — use environment variables from the CI secret store
357
+ - Write commit messages that pass the conventional commits format: \`type(scope): description\``);
358
+ }
359
+ return sections.join('\n\n');
360
+ }
361
+ export function generateSharedInstructions(profile) {
362
+ const { name, description, language, framework, packageManager, srcDir, testDir, maxFileLines } = profile;
363
+ const runCmd = packageManager === 'pnpm' ? 'pnpm' :
364
+ packageManager === 'yarn' ? 'yarn' :
365
+ packageManager === 'bun' ? 'bun run' :
366
+ packageManager === 'cargo' ? 'cargo' :
367
+ packageManager === 'poetry' ? 'poetry run' :
368
+ packageManager === 'uv' ? 'uv run' :
369
+ 'npm run';
370
+ const langLabel = language === 'typescript' ? 'TypeScript' :
371
+ language === 'javascript' ? 'JavaScript' :
372
+ language === 'python' ? 'Python' :
373
+ language === 'rust' ? 'Rust' :
374
+ language === 'go' ? 'Go' : 'Unknown';
375
+ const frameworkStr = profile.framework.length ? ` · ${profile.framework.map(f => f.charAt(0).toUpperCase() + f.slice(1)).join(' + ')}` : '';
376
+ const dbStr = profile.database.length ? `\n- **Database:** ${profile.database.join(', ')}` : '';
377
+ const testStr = profile.testFramework.length ? `\n- **Test framework:** ${profile.testFramework.join(', ')}` : '';
378
+ const ciStr = profile.hasCi ? `\n- **CI:** ${profile.ciTool}` : '';
379
+ const monorepoStr = profile.isMonorepo ? `\n- **Monorepo:** yes (${profile.monorepoTool})` : '';
380
+ const maxLinesStr = maxFileLines ? `\n- **Max file size:** ${maxFileLines} lines` : '';
381
+ return `# ${name} — Shared Agent Instructions
382
+
383
+ > Auto-generated by \`monomind init\`. Edit freely — this file is prepended to every agent prompt.
384
+ > Stack: **${langLabel}${frameworkStr}**
385
+
386
+ ## Project Overview
387
+ ${description ? `\n${description}\n` : ''}
388
+ - **Language:** ${langLabel}
389
+ - **Package manager:** ${packageManager}
390
+ - **Source directory:** ${srcDir || '(root)'}
391
+ - **Test directory:** ${testDir || '(co-located)'}${maxLinesStr}${dbStr}${testStr}${ciStr}${monorepoStr}
392
+
393
+ ## How to Run
394
+ \`\`\`bash
395
+ # Install dependencies
396
+ ${packageManager === 'cargo' ? 'cargo build' :
397
+ packageManager === 'poetry' ? 'poetry install' :
398
+ packageManager === 'uv' ? 'uv sync' :
399
+ `${packageManager === 'pnpm' ? 'pnpm' : packageManager === 'yarn' ? 'yarn' : 'npm'} install`}
400
+
401
+ # Run tests
402
+ ${profile.testFramework.includes('vitest') ? `${runCmd} test` :
403
+ profile.testFramework.includes('jest') ? `${runCmd} test` :
404
+ profile.testFramework.includes('pytest') ? 'pytest' :
405
+ language === 'rust' ? 'cargo test' :
406
+ language === 'go' ? 'go test ./...' :
407
+ `${runCmd} test`}
408
+
409
+ # Type check / lint
410
+ ${language === 'typescript' ? `${runCmd} typecheck` :
411
+ language === 'python' ? 'mypy . && ruff check .' :
412
+ language === 'rust' ? 'cargo clippy' :
413
+ language === 'go' ? 'go vet ./...' :
414
+ `${runCmd} lint`}
415
+ \`\`\`
416
+
417
+ ## Critical Constraints
418
+ - **Never** modify files outside your assigned task scope
419
+ - **Always** run tests before reporting a task complete
420
+ - **Never** commit secrets, credentials, or .env files
421
+ - **Always** write tests alongside implementation (TDD)
422
+ - Prefer editing existing files over creating new ones
423
+ - Keep commits small and descriptive (conventional commits format)
424
+ ${maxFileLines ? `- Keep files under **${maxFileLines} lines** — split when approaching the limit\n` : ''}- NEVER save working files to the root directory — use ${srcDir || 'src'}/ for source, ${testDir || 'tests'}/ for tests
425
+
426
+ ## Code Quality Non-Negotiables
427
+ - No commented-out code in committed files
428
+ - No \`TODO\` comments without a linked issue
429
+ - All public functions/methods must have typed signatures
430
+ - Errors must be handled explicitly — never silently swallowed
431
+ - Remove debug logs before committing
432
+
433
+ ${langBestPractices(profile)}
434
+
435
+ ## Agent Collaboration Rules
436
+ - Write a brief ## Handoff Context block when completing a task in a chain
437
+ - Include: files changed, key decisions, what the next task needs to know
438
+ - If BLOCKED, stop immediately and report with full context — do not guess
439
+ - Search project memory before starting: \`npx monomind memory search --query "[task]"\`
440
+ - Store successful patterns after completion: \`npx monomind memory store --namespace patterns --key "[pattern]" --value "[what worked]"\`
441
+ `;
442
+ }
443
+ export function generateMemorySeeds(profile) {
444
+ const seeds = [];
445
+ // Project context seed
446
+ seeds.push({
447
+ key: `project-profile-${profile.name}`,
448
+ value: JSON.stringify({
449
+ name: profile.name,
450
+ language: profile.language,
451
+ framework: profile.framework,
452
+ packageManager: profile.packageManager,
453
+ testFramework: profile.testFramework,
454
+ isMonorepo: profile.isMonorepo,
455
+ database: profile.database,
456
+ srcDir: profile.srcDir,
457
+ testDir: profile.testDir,
458
+ }),
459
+ namespace: 'project',
460
+ });
461
+ // Stack-specific best practices
462
+ if (profile.language === 'typescript') {
463
+ seeds.push({
464
+ key: 'ts-error-handling',
465
+ value: 'Use Result<T, E> pattern with discriminated unions for recoverable errors. Never throw in library code. Use unknown instead of any at boundaries, narrow with type guards.',
466
+ namespace: 'patterns',
467
+ });
468
+ seeds.push({
469
+ key: 'ts-module-structure',
470
+ value: 'One responsibility per file. Named exports only. Types in .types.ts files co-located with implementation. Index barrel files only at package boundaries, not inside modules.',
471
+ namespace: 'patterns',
472
+ });
473
+ }
474
+ if (profile.language === 'python') {
475
+ seeds.push({
476
+ key: 'py-error-handling',
477
+ value: 'Use specific exception types, never bare except. Use contextlib.suppress only for truly ignorable errors. Log exceptions with traceback before re-raising or swallowing.',
478
+ namespace: 'patterns',
479
+ });
480
+ }
481
+ if (profile.language === 'rust') {
482
+ seeds.push({
483
+ key: 'rust-error-handling',
484
+ value: 'Use thiserror for library errors, anyhow for application errors. Avoid unwrap() in production paths. Document safety invariants in any unsafe block.',
485
+ namespace: 'patterns',
486
+ });
487
+ }
488
+ // Framework patterns
489
+ if (profile.framework.includes('react') || profile.framework.includes('nextjs')) {
490
+ seeds.push({
491
+ key: 'react-component-pattern',
492
+ value: 'Keep components under 200 lines. Extract business logic to custom hooks. Use Server Components by default in Next.js app router. Co-locate tests with components.',
493
+ namespace: 'patterns',
494
+ });
495
+ }
496
+ if (profile.framework.includes('nestjs')) {
497
+ seeds.push({
498
+ key: 'nestjs-layer-pattern',
499
+ value: 'Controller → Service → Repository layering. DTOs with class-validator for all input. Guards for auth, Interceptors for cross-cutting concerns. Never inject repositories directly into controllers.',
500
+ namespace: 'patterns',
501
+ });
502
+ }
503
+ // Database patterns
504
+ if (profile.database.includes('postgres') || profile.database.includes('sqlite')) {
505
+ seeds.push({
506
+ key: 'db-query-safety',
507
+ value: 'Always use parameterized queries. Never interpolate user input into SQL. Index foreign keys. Use transactions for multi-step writes. Prefer specific column selects over SELECT *.',
508
+ namespace: 'patterns',
509
+ });
510
+ }
511
+ if (profile.database.includes('drizzle')) {
512
+ seeds.push({
513
+ key: 'drizzle-patterns',
514
+ value: 'Always use drizzle schema objects for queries. Use db.transaction() for atomic operations. Keep schema definitions in schema.ts. Run drizzle-kit generate after schema changes.',
515
+ namespace: 'patterns',
516
+ });
517
+ }
518
+ // Testing patterns
519
+ if (profile.testFramework.includes('vitest') || profile.testFramework.includes('jest')) {
520
+ seeds.push({
521
+ key: 'tdd-pattern',
522
+ value: 'Red-Green-Refactor cycle. Write the failing test first. Mock at the boundary (HTTP clients, DB adapters). Test behavior not implementation. Each test describes one behavior.',
523
+ namespace: 'patterns',
524
+ });
525
+ }
526
+ // Monorepo patterns
527
+ if (profile.isMonorepo) {
528
+ seeds.push({
529
+ key: 'monorepo-conventions',
530
+ value: `Monorepo uses ${profile.monorepoTool}. Changes must stay within the relevant package. Shared types in dedicated packages. Use workspace protocol for internal deps. Build changed packages before running dependent tests.`,
531
+ namespace: 'patterns',
532
+ });
533
+ }
534
+ return seeds;
535
+ }
536
+ // ── Writer (called from executor.ts) ─────────────────────────────────────────
537
+ export function writeSharedInstructions(cwd, force, result) {
538
+ const agentsDir = path.join(cwd, '.agents');
539
+ const siPath = path.join(agentsDir, 'shared_instructions.md');
540
+ // Skip if already exists and not forcing
541
+ if (fs.existsSync(siPath) && !force) {
542
+ result.skipped.push('.agents/shared_instructions.md');
543
+ return;
544
+ }
545
+ try {
546
+ const profile = detectProjectProfile(cwd);
547
+ const content = generateSharedInstructions(profile);
548
+ if (!fs.existsSync(agentsDir)) {
549
+ fs.mkdirSync(agentsDir, { recursive: true });
550
+ }
551
+ fs.writeFileSync(siPath, content, 'utf-8');
552
+ result.created.files.push('.agents/shared_instructions.md');
553
+ // Seed memory (best-effort, non-blocking)
554
+ const seeds = generateMemorySeeds(profile);
555
+ for (const seed of seeds) {
556
+ try {
557
+ execSync(`npx --yes monomind@latest memory store --key "${seed.key}" --value ${JSON.stringify(seed.value)} --namespace ${seed.namespace}`, { cwd, stdio: 'ignore', timeout: 8000 });
558
+ }
559
+ catch {
560
+ // Non-critical — memory seeding is best-effort
561
+ }
562
+ }
563
+ if (seeds.length > 0) {
564
+ result.created.files.push(`.agents: ${seeds.length} memory patterns seeded`);
565
+ }
566
+ }
567
+ catch {
568
+ // Non-critical — shared instructions generation is best-effort
569
+ }
570
+ }
571
+ //# sourceMappingURL=shared-instructions-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-instructions-generator.js","sourceRoot":"","sources":["../../../src/init/shared-instructions-generator.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ export interface InitComponents {
24
24
  runtime: boolean;
25
25
  /** Create CLAUDE.md with swarm guidance */
26
26
  claudeMd: boolean;
27
- /** Build knowledge graph on init using @monoes/graph */
27
+ /** Build knowledge graph on init using graphify (Python) */
28
28
  graphify: boolean;
29
29
  }
30
30
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/init/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/init/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,8CAA8C;IAC9C,QAAQ,EAAE,OAAO,CAAC;IAClB,qCAAqC;IACrC,MAAM,EAAE,OAAO,CAAC;IAChB,yCAAyC;IACzC,QAAQ,EAAE,OAAO,CAAC;IAClB,qCAAqC;IACrC,MAAM,EAAE,OAAO,CAAC;IAChB,gDAAgD;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,2BAA2B;IAC3B,UAAU,EAAE,OAAO,CAAC;IACpB,+BAA+B;IAC/B,GAAG,EAAE,OAAO,CAAC;IACb,+CAA+C;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,2CAA2C;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAClB,4DAA4D;IAC5D,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAW;IAC1B,8BAA8B;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,+BAA+B;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,0CAA0C;IAC1C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gCAAgC;IAChC,YAAY,EAAE,OAAO,CAAC;IACtB,wBAAwB;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,uEAAuE;IACvE,UAAU,EAAE,OAAO,CAAC;IACpB,gCAAgC;IAChC,YAAY,EAAE,OAAO,CAAC;IACtB,0DAA0D;IAC1D,YAAY,EAAE,OAAO,CAAC;IACtB,gEAAgE;IAChE,aAAa,EAAE,OAAO,CAAC;IACvB,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,iDAAiD;IACjD,IAAI,EAAE,OAAO,CAAC;IACd,6BAA6B;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,wCAAwC;IACxC,MAAM,EAAE,OAAO,CAAC;IAChB,wDAAwD;IACxD,OAAO,EAAE,OAAO,CAAC;IACjB,uCAAuC;IACvC,EAAE,EAAE,OAAO,CAAC;IACZ,mCAAmC;IACnC,GAAG,EAAE,OAAO,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,4BAA4B;IAC5B,IAAI,EAAE,OAAO,CAAC;IACd,gCAAgC;IAChC,QAAQ,EAAE,OAAO,CAAC;IAClB,kCAAkC;IAClC,UAAU,EAAE,OAAO,CAAC;IACpB,8BAA8B;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,6BAA6B;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,kCAAkC;IAClC,UAAU,EAAE,OAAO,CAAC;IACpB,oCAAoC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,6BAA6B;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,2BAA2B;IAC3B,GAAG,EAAE,OAAO,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,oDAAoD;IACpD,IAAI,EAAE,OAAO,CAAC;IACd,+BAA+B;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,4BAA4B;IAC5B,MAAM,EAAE,OAAO,CAAC;IAChB,+BAA+B;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,2BAA2B;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,iCAAiC;IACjC,KAAK,EAAE,OAAO,CAAC;IACf,wDAAwD;IACxD,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,EAAE,EAAE,OAAO,CAAC;IACZ,kCAAkC;IAClC,YAAY,EAAE,OAAO,CAAC;IACtB,6BAA6B;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,yBAAyB;IACzB,GAAG,EAAE,OAAO,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wBAAwB;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,uBAAuB;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,2BAA2B;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,0BAA0B;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,yBAAyB;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,+BAA+B;IAC/B,eAAe,EAAE,OAAO,CAAC;IACzB,uCAAuC;IACvC,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,kCAAkC;IAClC,QAAQ,EAAE,OAAO,CAAC;IAClB,mCAAmC;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,kDAAkD;IAClD,QAAQ,EAAE,OAAO,CAAC;IAClB,4BAA4B;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,qBAAqB;IACrB,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,mBAAmB,GAAG,UAAU,CAAC;IACrE,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,qBAAqB;IACrB,aAAa,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC1D,2BAA2B;IAC3B,UAAU,EAAE,OAAO,CAAC;IACpB,6BAA6B;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,gFAAgF;IAChF,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,8DAA8D;IAC9D,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iCAAiC;IACjC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,sDAAsD;AACtD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,GAAG,aAAa,GAAG,MAAM,CAAC;AAErG;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iCAAiC;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB;IACpB,KAAK,EAAE,yBAAyB,GAAG,0BAA0B,GAAG,0BAA0B,GAAG,MAAM,CAAC;IACpG,mDAAmD;IACnD,UAAU,EAAE,OAAO,CAAC;IACpB,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,WAAW,EAAE,OAAO,CAAC;IACrB,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,uBAAuB;IACvB,EAAE,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;IACnC,mBAAmB;IACnB,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;IACvC,sBAAsB;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB;IACjB,KAAK,EAAE,YAAY,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;IACpD,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,YAAY,CAkC7C;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,uBAAuB;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qCAAqC;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,8BAA8B;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,+BAA+B;IAC/B,UAAU,EAAE,cAAc,CAAC;IAC3B,0BAA0B;IAC1B,KAAK,EAAE,WAAW,CAAC;IACnB,2BAA2B;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,6BAA6B;IAC7B,QAAQ,EAAE,cAAc,CAAC;IACzB,2BAA2B;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,+BAA+B;IAC/B,UAAU,EAAE,gBAAgB,CAAC;IAC7B,wBAAwB;IACxB,GAAG,EAAE,SAAS,CAAC;IACf,4BAA4B;IAC5B,OAAO,EAAE,aAAa,CAAC;IACvB,+BAA+B;IAC/B,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,WAkGlC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,WAgElC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,WA+C/B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,YAAY,CAAC;IACvB,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH"}