@monoes/monomindcli 2.8.0 → 2.8.2
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/.claude/helpers/handlers/edit-handler.cjs +0 -2
- package/.claude/helpers/handlers/route-handler.cjs +30 -10
- package/README.md +9 -2
- package/dist/src/init/claudemd-generator.d.ts.map +1 -1
- package/dist/src/init/claudemd-generator.js +20 -54
- package/dist/src/init/claudemd-generator.js.map +1 -1
- package/dist/src/init/executor.d.ts.map +1 -1
- package/dist/src/init/executor.js +44 -1
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/geminimd-generator.d.ts.map +1 -1
- package/dist/src/init/geminimd-generator.js +1 -13
- package/dist/src/init/geminimd-generator.js.map +1 -1
- package/dist/src/init/kimi-generator.d.ts +18 -0
- package/dist/src/init/kimi-generator.d.ts.map +1 -1
- package/dist/src/init/kimi-generator.js +63 -0
- package/dist/src/init/kimi-generator.js.map +1 -1
- package/dist/src/init/settings-generator.d.ts.map +1 -1
- package/dist/src/init/settings-generator.js +0 -11
- package/dist/src/init/settings-generator.js.map +1 -1
- package/dist/src/init/shared-instructions-generator.d.ts.map +1 -1
- package/dist/src/init/shared-instructions-generator.js +0 -21
- package/dist/src/init/shared-instructions-generator.js.map +1 -1
- package/dist/src/knowledge/document-pipeline.d.ts.map +1 -1
- package/dist/src/knowledge/document-pipeline.js +8 -1
- package/dist/src/knowledge/document-pipeline.js.map +1 -1
- package/dist/src/mcp-client.d.ts +4 -3
- package/dist/src/mcp-client.d.ts.map +1 -1
- package/dist/src/mcp-client.js +23 -4
- package/dist/src/mcp-client.js.map +1 -1
- package/dist/src/mcp-tools/agent-tools.js +1 -1
- package/dist/src/mcp-tools/agent-tools.js.map +1 -1
- package/dist/src/mcp-tools/knowledge-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/knowledge-tools.js +11 -3
- package/dist/src/mcp-tools/knowledge-tools.js.map +1 -1
- package/dist/src/mcp-tools/memory-tools.js +2 -2
- package/dist/src/mcp-tools/memory-tools.js.map +1 -1
- package/dist/src/mcp-tools/monomind-tools.js +2 -2
- package/dist/src/mcp-tools/monomind-tools.js.map +1 -1
- package/dist/src/memory/memory-bridge.d.ts.map +1 -1
- package/dist/src/memory/memory-bridge.js +31 -6
- package/dist/src/memory/memory-bridge.js.map +1 -1
- package/dist/src/orgrt/daemon.d.ts +7 -0
- package/dist/src/orgrt/daemon.d.ts.map +1 -1
- package/dist/src/orgrt/daemon.js +31 -9
- package/dist/src/orgrt/daemon.js.map +1 -1
- package/dist/src/orgrt/session.d.ts.map +1 -1
- package/dist/src/orgrt/session.js +2 -4
- package/dist/src/orgrt/session.js.map +1 -1
- package/dist/src/orgrt/tool-fence.d.ts.map +1 -1
- package/dist/src/orgrt/tool-fence.js +10 -6
- package/dist/src/orgrt/tool-fence.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -467,9 +467,10 @@ module.exports = {
|
|
|
467
467
|
);
|
|
468
468
|
}
|
|
469
469
|
// Relevance floor: injecting weak matches pollutes every prompt's
|
|
470
|
-
// context — configurable via .monomind/second-brain.json, default
|
|
471
|
-
|
|
472
|
-
var
|
|
470
|
+
// context — configurable via .monomind/second-brain.json, default
|
|
471
|
+
// 0.35 for semantic hits, 0.5 for the noisier keyword fallback.
|
|
472
|
+
var sbFloor = sbMethod === 'keyword' ? 0.5 : 0.35;
|
|
473
|
+
var sbInjectionLimit = 3;
|
|
473
474
|
try {
|
|
474
475
|
var sbConf = JSON.parse(fs.readFileSync(path.join(CWD, '.monomind', 'second-brain.json'), 'utf-8'));
|
|
475
476
|
if (typeof sbConf.relevanceFloor === 'number') sbFloor = sbConf.relevanceFloor;
|
|
@@ -511,7 +512,7 @@ module.exports = {
|
|
|
511
512
|
for (var sbI = 0; sbI < sbHits.length; sbI++) {
|
|
512
513
|
var sbH = sbHits[sbI];
|
|
513
514
|
var sbSrc = (sbH.metadata && sbH.metadata.filePath) ? String(sbH.metadata.filePath).split('/').slice(-2).join('/') : sbH.key;
|
|
514
|
-
var sbText = String(sbH.value || '').replace(/\s+/g, ' ').slice(0,
|
|
515
|
+
var sbText = String(sbH.value || '').replace(/\s+/g, ' ').slice(0, 160);
|
|
515
516
|
sbLines.push(' • [' + sbSrc + (sbH.global ? ' · global' : '') + '] ' + sbText);
|
|
516
517
|
}
|
|
517
518
|
sbLines.push(' (deeper lookup: mcp__monomind__knowledge_search or `monomind doc search -q "..."`)');
|
|
@@ -542,6 +543,25 @@ module.exports = {
|
|
|
542
543
|
// ── Surface daemon metrics warnings (hook latency, token spikes) ──
|
|
543
544
|
try {
|
|
544
545
|
var metricsDir = path.join(CWD, '.monomind', 'metrics');
|
|
546
|
+
// Static metrics banners ([CODEBASE]/[DEEPDIVE]/[ARCHITECTURE]/[MEMORY]/
|
|
547
|
+
// [AUDIT]) carry identical content until the underlying metrics file
|
|
548
|
+
// changes, so re-injecting them on every prompt is pure token waste.
|
|
549
|
+
// Show each at most once per session per file version, keyed on the
|
|
550
|
+
// file's mtime — same marker-file pattern as mcp-not-connected-warned.json
|
|
551
|
+
// below. If the metrics file is rewritten, the banner may fire again.
|
|
552
|
+
var bannerSessId = String((hCtx.hookInput && (hCtx.hookInput.sessionId || hCtx.hookInput.session_id)) || '');
|
|
553
|
+
var bannerShownOnce = function (tag, metricsFilePath) {
|
|
554
|
+
try {
|
|
555
|
+
var mtimeMs = fs.statSync(metricsFilePath).mtimeMs;
|
|
556
|
+
var markerFile = path.join(CWD, '.monomind', 'banner-shown-' + tag + '.json');
|
|
557
|
+
if (fs.existsSync(markerFile)) {
|
|
558
|
+
var markerData = JSON.parse(fs.readFileSync(markerFile, 'utf-8'));
|
|
559
|
+
if (markerData && markerData.sessionId === bannerSessId && markerData.mtimeMs === mtimeMs) return false;
|
|
560
|
+
}
|
|
561
|
+
fs.writeFileSync(markerFile, JSON.stringify({ sessionId: bannerSessId, mtimeMs: mtimeMs, shownAt: new Date().toISOString() }));
|
|
562
|
+
return true;
|
|
563
|
+
} catch (e) { return true; /* unreadable state — show rather than suppress */ }
|
|
564
|
+
};
|
|
545
565
|
// Hook latency warnings
|
|
546
566
|
var latencyFile = path.join(metricsDir, 'hook-latency.json');
|
|
547
567
|
if (fs.existsSync(latencyFile) && fs.statSync(latencyFile).size < 32768) {
|
|
@@ -566,7 +586,7 @@ module.exports = {
|
|
|
566
586
|
var serious = secData.findings.filter(function (f) { return f && (f.severity === 'high' || f.severity === 'medium'); });
|
|
567
587
|
if (serious.length > 0) {
|
|
568
588
|
advisoryLog('[SECURITY] ' + serious.length + ' finding(s) from background scan. Review .monomind/metrics/security-audit.json');
|
|
569
|
-
} else {
|
|
589
|
+
} else if (bannerShownOnce('audit', secAuditFile)) {
|
|
570
590
|
advisoryLog('[AUDIT] ' + secData.findings.length + ' low-severity note(s) (architecture heuristics, not vulnerabilities) — .monomind/metrics/security-audit.json');
|
|
571
591
|
}
|
|
572
592
|
}
|
|
@@ -575,10 +595,10 @@ module.exports = {
|
|
|
575
595
|
var mapFile = path.join(metricsDir, 'codebase-map.json');
|
|
576
596
|
if (fs.existsSync(mapFile) && fs.statSync(mapFile).size < 32768) {
|
|
577
597
|
var mapData = JSON.parse(fs.readFileSync(mapFile, 'utf-8'));
|
|
578
|
-
if (mapData && mapData.topFiles && mapData.topFiles.length > 0) {
|
|
598
|
+
if (mapData && mapData.topFiles && mapData.topFiles.length > 0 && bannerShownOnce('codebase', mapFile)) {
|
|
579
599
|
advisoryLog('[CODEBASE] ' + mapData.topFiles.length + ' high-centrality files. Top: ' + (mapData.topFiles[0].ref || 'unknown') + ' (degree ' + (mapData.topFiles[0].degree || '?') + ')');
|
|
580
600
|
}
|
|
581
|
-
if (mapData && mapData.graphStaleness && mapData.graphStaleness.commitsBehind > 10) {
|
|
601
|
+
if (mapData && mapData.graphStaleness && mapData.graphStaleness.commitsBehind > 10 && bannerShownOnce('codebase-staleness', mapFile)) {
|
|
582
602
|
advisoryLog('[CODEBASE] Graph index ' + mapData.graphStaleness.commitsBehind + ' commits behind HEAD — run monograph build');
|
|
583
603
|
}
|
|
584
604
|
}
|
|
@@ -618,7 +638,7 @@ module.exports = {
|
|
|
618
638
|
if (ddData && ddData.findings && ddData.findings.length > 0) {
|
|
619
639
|
for (var di = 0; di < ddData.findings.length; di++) {
|
|
620
640
|
var finding = ddData.findings[di];
|
|
621
|
-
if (finding.category === 'god_nodes' && finding.items && finding.items.length > 0) {
|
|
641
|
+
if (finding.category === 'god_nodes' && finding.items && finding.items.length > 0 && bannerShownOnce('deepdive', deepdiveFile)) {
|
|
622
642
|
var topGod = finding.items[0];
|
|
623
643
|
advisoryLog('[DEEPDIVE] ' + finding.items.length + ' god nodes. Top: ' + (topGod.name || 'unknown') + ' (degree ' + (topGod.degree || '?') + ') in ' + (topGod.file || 'unknown'));
|
|
624
644
|
}
|
|
@@ -632,7 +652,7 @@ module.exports = {
|
|
|
632
652
|
if (ulData && ulData.insightsGained && ulData.insightsGained.length > 0) {
|
|
633
653
|
for (var ui = 0; ui < ulData.insightsGained.length; ui++) {
|
|
634
654
|
var insight = ulData.insightsGained[ui];
|
|
635
|
-
if (insight.category === 'bridge_nodes' && insight.items && insight.items.length > 0) {
|
|
655
|
+
if (insight.category === 'bridge_nodes' && insight.items && insight.items.length > 0 && bannerShownOnce('architecture', ultralearnFile)) {
|
|
636
656
|
var topBridge = insight.items[0];
|
|
637
657
|
advisoryLog('[ARCHITECTURE] ' + insight.items.length + ' bridge nodes crossing community boundaries. Top: ' + (topBridge.name || 'unknown') + ' (' + (topBridge.crossCommunityEdges || '?') + ' cross-edges) in ' + (topBridge.location || 'unknown'));
|
|
638
658
|
}
|
|
@@ -655,7 +675,7 @@ module.exports = {
|
|
|
655
675
|
var consolFile = path.join(metricsDir, 'consolidation.json');
|
|
656
676
|
if (fs.existsSync(consolFile) && fs.statSync(consolFile).size < 32768) {
|
|
657
677
|
var consolData = JSON.parse(fs.readFileSync(consolFile, 'utf-8'));
|
|
658
|
-
if (consolData && consolData.patternsConsolidated > 0) {
|
|
678
|
+
if (consolData && consolData.patternsConsolidated > 0 && bannerShownOnce('memory', consolFile)) {
|
|
659
679
|
advisoryLog('[MEMORY] ' + consolData.patternsConsolidated + ' patterns consolidated into ' + consolData.clustersCreated + ' RAPTOR clusters');
|
|
660
680
|
}
|
|
661
681
|
}
|
package/README.md
CHANGED
|
@@ -44,7 +44,14 @@ claude mcp add monomind -- npx -y monomind@latest mcp start
|
|
|
44
44
|
```
|
|
45
45
|
|
|
46
46
|
<details>
|
|
47
|
-
<summary><strong>Using
|
|
47
|
+
<summary><strong>Using Antigravity (agy)?</strong></summary>
|
|
48
|
+
|
|
49
|
+
Nothing extra to do — agy output is part of **default** `monomind init`: `GEMINI.md`, `.gemini/rules/`, and a live status bar wired through `.gemini/settings.json`. The MCP server config is shared with Claude Code (`.mcp.json`). See [Antigravity guide →](doc/concepts/antigravity.md).
|
|
50
|
+
|
|
51
|
+
</details>
|
|
52
|
+
|
|
53
|
+
<details>
|
|
54
|
+
<summary><strong>Using opencode instead?</strong></summary>
|
|
48
55
|
|
|
49
56
|
```bash
|
|
50
57
|
monomind init --opencode # emits opencode.json + .opencode/ alongside Claude/Antigravity output
|
|
@@ -61,7 +68,7 @@ monomind init --opencode # emits opencode.json + .opencode/ alongside Clau
|
|
|
61
68
|
monomind init --kimicode # emits .kimi-code/ + AGENTS.md alongside Claude/Antigravity output
|
|
62
69
|
```
|
|
63
70
|
|
|
64
|
-
`--kimicode` is additive — it never touches your `.claude/` or `.gemini/` config. You get the same MCP tools, agent roster, skills, and commands (as project-level flow skills). Install the generated plugin once for `/monomind:*` slash commands and security gates: `/plugins install ./.kimi-code/plugin`. See [Kimi Code guide →](doc/concepts/kimicode.md).
|
|
71
|
+
`--kimicode` is additive — it never touches your `.claude/` or `.gemini/` config. You get the same MCP tools, agent roster, skills, and commands (as project-level flow skills). Install the generated plugin once for `/monomind:*` slash commands and security gates: `/plugins install ./.kimi-code/plugin`. If `~/.kimi-code/` exists, init also wires the monomind status bar into kimi's footer. See [Kimi Code guide →](doc/concepts/kimicode.md).
|
|
65
72
|
|
|
66
73
|
</details>
|
|
67
74
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudemd-generator.d.ts","sourceRoot":"","sources":["../../../src/init/claudemd-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"claudemd-generator.d.ts","sourceRoot":"","sources":["../../../src/init/claudemd-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAglBhE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAQ1F;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAEpE;AAED,8CAA8C;AAC9C,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAOtF,CAAC;eAEa,gBAAgB"}
|
|
@@ -124,6 +124,18 @@ function swarmOrchestration() {
|
|
|
124
124
|
- Never use CLI tools alone for execution — Task tool agents do the actual work
|
|
125
125
|
- MUST call CLI tools AND Task tool in ONE message for complex work`;
|
|
126
126
|
}
|
|
127
|
+
// Consolidated spawn/anti-drift rule — emitted ONCE in the standard template
|
|
128
|
+
// (previously repeated across Swarm Orchestration, Anti-Drift, and Execution
|
|
129
|
+
// Rules). Kept out of the minimal template entirely.
|
|
130
|
+
function swarmRules() {
|
|
131
|
+
return `## Swarm Rules
|
|
132
|
+
|
|
133
|
+
- MUST initialize the swarm for complex tasks: \`npx monomind@latest swarm init --topology hierarchical --max-agents 8 --strategy specialized\`
|
|
134
|
+
- ALWAYS spawn ALL agents in ONE message via the Task tool with \`run_in_background: true\` — CLI tools coordinate, Task agents do the work
|
|
135
|
+
- After spawning, STOP — never poll TaskOutput or check swarm status; trust agents to return
|
|
136
|
+
- When agent results arrive, review ALL results before proceeding
|
|
137
|
+
- Keep shared memory namespace for all agents; run frequent checkpoints via \`post-task\` hooks`;
|
|
138
|
+
}
|
|
127
139
|
function antiDriftConfig() {
|
|
128
140
|
return `## Swarm Configuration & Anti-Drift
|
|
129
141
|
|
|
@@ -281,21 +293,14 @@ npx monomind@latest hooks post-task --task-id "[id]" --success true --store-resu
|
|
|
281
293
|
- ALWAYS store patterns in memory after solving bugs, completing features, or finding optimizations`;
|
|
282
294
|
}
|
|
283
295
|
function memoryCommands() {
|
|
284
|
-
return `## Memory Commands
|
|
296
|
+
return `## Memory Commands
|
|
285
297
|
|
|
286
298
|
\`\`\`bash
|
|
287
|
-
# Store (REQUIRED: --key, --value; OPTIONAL: --namespace, --ttl, --tags)
|
|
288
299
|
npx monomind@latest memory store --key "pattern-auth" --value "JWT with refresh" --namespace patterns
|
|
289
|
-
|
|
290
|
-
# Search (REQUIRED: --query; OPTIONAL: --namespace, --limit, --threshold)
|
|
291
300
|
npx monomind@latest memory search --query "authentication patterns"
|
|
301
|
+
\`\`\`
|
|
292
302
|
|
|
293
|
-
|
|
294
|
-
npx monomind@latest memory list --namespace patterns --limit 10
|
|
295
|
-
|
|
296
|
-
# Retrieve (REQUIRED: --key; OPTIONAL: --namespace)
|
|
297
|
-
npx monomind@latest memory retrieve --key "pattern-auth" --namespace patterns
|
|
298
|
-
\`\`\``;
|
|
303
|
+
Full command reference: \`npx monomind@latest memory --help\``;
|
|
299
304
|
}
|
|
300
305
|
function securityRulesLight() {
|
|
301
306
|
return `## Security Rules
|
|
@@ -390,7 +395,7 @@ MONOMIND_MEMORY_PATH=./data/memory
|
|
|
390
395
|
function secondBrainSection() {
|
|
391
396
|
return `## Second Brain — Document Knowledge Base
|
|
392
397
|
|
|
393
|
-
If the \`documents\` capability is active (check \`.monomind/capabilities.json\`), this project indexes documents
|
|
398
|
+
If the \`documents\` capability is active (check \`.monomind/capabilities.json\`), this project indexes documents (Office, PDF, plain text, and more) into a semantic search engine.
|
|
394
399
|
|
|
395
400
|
**When documents are indexed, search knowledge before answering questions about business, compliance, legal, or organizational topics:**
|
|
396
401
|
- Call \`mcp__monomind__knowledge_search\` with a relevant query (add \`store: "project"\` or \`"global"\` to search one brain only; default merges both)
|
|
@@ -398,17 +403,6 @@ If the \`documents\` capability is active (check \`.monomind/capabilities.json\`
|
|
|
398
403
|
- Cite the source document name when referencing specific information
|
|
399
404
|
- Add with \`mcp__monomind__knowledge_ingest\`; retract a wrong or stale document with \`mcp__monomind__knowledge_remove\` (hides it from search immediately, reversible by re-ingesting)
|
|
400
405
|
|
|
401
|
-
**CLI access:**
|
|
402
|
-
\`\`\`bash
|
|
403
|
-
monomind doc search -q "your query" # Semantic search (project + global brain merged)
|
|
404
|
-
monomind doc search -q "..." --store global # Personal global brain only
|
|
405
|
-
monomind doc list # List indexed docs (--global for the global brain)
|
|
406
|
-
monomind doc ingest ./path # Ingest new documents (paths outside the project auto-route to the global brain)
|
|
407
|
-
monomind doc export # Export as OKF bundle (--global to move your brain between machines)
|
|
408
|
-
monomind doc import ./bundle # Import an OKF bundle (--global to restore a personal brain)
|
|
409
|
-
monomind doc remove ./docs/old.md # Forget a document — hidden from search immediately
|
|
410
|
-
\`\`\`
|
|
411
|
-
|
|
412
406
|
**Global brain:** the user has a personal cross-project knowledge store at \`~/.monomind/global-brain\`. All searches (knowledge_search, doc search, per-prompt injection) automatically merge it with project knowledge — project results win ties, global hits are labeled \`[global]\`. Cite the label so the user knows which brain answered.
|
|
413
407
|
|
|
414
408
|
**Re-indexing** happens automatically on session start (unchanged files are skipped via content hash).`;
|
|
@@ -431,30 +425,7 @@ Built into monomind — no separate install. Pure TypeScript, parses TS/JS/Pytho
|
|
|
431
425
|
|
|
432
426
|
**If graph is empty:** call \`mcp__monomind__monograph_build\` (runs in background; proceed with grep while it builds).
|
|
433
427
|
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
| Tool | Use when |
|
|
437
|
-
|------|----------|
|
|
438
|
-
| \`monograph_suggest\` | **Start every multi-file task** — ranked by task relevance |
|
|
439
|
-
| \`monograph_query\` | **Primary code lookup** — BM25 search, returns file + line |
|
|
440
|
-
| \`monograph_context\` | 360° symbol view: callers, callees, imports, community |
|
|
441
|
-
| \`monograph_impact\` | Blast radius before a change — transitive callers + risk score |
|
|
442
|
-
| \`monograph_build\` | Build/rebuild the index (codeOnly:true for code-only) |
|
|
443
|
-
| \`monograph_god_nodes\` | High-centrality files — find the most connected internal nodes |
|
|
444
|
-
| \`monograph_detect_changes\` | Git diff → affected symbols since base branch |
|
|
445
|
-
| \`monograph_rename\` | Dry-run multi-file rename — all reference sites, never writes |
|
|
446
|
-
| \`monograph_route_map\` | List all HTTP routes with handler info |
|
|
447
|
-
| \`monograph_api_impact\` | Blast radius of an API route |
|
|
448
|
-
| \`monograph_cypher\` | Single-hop MATCH query over the graph |
|
|
449
|
-
| \`monograph_staleness\` | Git commits since last index build |
|
|
450
|
-
| \`monograph_stats\` | Node/edge/community counts |
|
|
451
|
-
| \`monograph_health\` | Index freshness vs current HEAD |
|
|
452
|
-
| \`monograph_shortest_path\` | Shortest dependency path between two symbols |
|
|
453
|
-
| \`monograph_community\` | All nodes in a community cluster |
|
|
454
|
-
| \`monograph_export\` | Export graph: json, svg, graphml, cypher, obsidian |
|
|
455
|
-
| \`monograph_augment\` | Graph-RAG context block for AI prompts |
|
|
456
|
-
| \`monograph_doctor\` | Platform diagnostics (Node version, DB health) |
|
|
457
|
-
| \`monograph_list_repos\` | Global registry of indexed repos |
|
|
428
|
+
Core tools (prefix: \`mcp__monomind__\`): \`monograph_build\`, \`monograph_query\`, \`monograph_suggest\`, \`monograph_impact\` — the full tool list self-describes via MCP.
|
|
458
429
|
|
|
459
430
|
### Skip monograph for
|
|
460
431
|
Single-file edits, doc/config changes, quick fixes where you already know the exact file.`;
|
|
@@ -496,9 +467,6 @@ const TEMPLATE_SECTIONS = {
|
|
|
496
467
|
(_opts) => buildAndTest(),
|
|
497
468
|
(_opts) => securityRulesLight(),
|
|
498
469
|
concurrencyRules,
|
|
499
|
-
(_opts) => antiDriftConfig(),
|
|
500
|
-
executionRules,
|
|
501
|
-
(_opts) => cliCommandsTable(),
|
|
502
470
|
(_opts) => secondBrainSection(),
|
|
503
471
|
(_opts) => graphifySection(),
|
|
504
472
|
(_opts) => setupAndBoundary(),
|
|
@@ -511,9 +479,7 @@ const TEMPLATE_SECTIONS = {
|
|
|
511
479
|
(_opts) => buildAndTest(),
|
|
512
480
|
(_opts) => securityRulesLight(),
|
|
513
481
|
concurrencyRules,
|
|
514
|
-
(_opts) =>
|
|
515
|
-
(_opts) => antiDriftConfig(),
|
|
516
|
-
executionRules,
|
|
482
|
+
(_opts) => swarmRules(),
|
|
517
483
|
(_opts) => cliCommandsTable(),
|
|
518
484
|
(_opts) => agentTypes(),
|
|
519
485
|
(_opts) => memoryCommands(),
|
|
@@ -616,8 +582,8 @@ export function generateMinimalClaudeMd(options) {
|
|
|
616
582
|
}
|
|
617
583
|
/** Available template names for CLI wizard */
|
|
618
584
|
export const CLAUDE_MD_TEMPLATES = [
|
|
619
|
-
{ name: 'minimal', description: 'Quick start — behavioral rules,
|
|
620
|
-
{ name: 'standard', description: 'Recommended — swarm
|
|
585
|
+
{ name: 'minimal', description: 'Quick start — behavioral rules, CLI reference (~160 lines)' },
|
|
586
|
+
{ name: 'standard', description: 'Recommended — swarm rules, agents, memory commands (~225 lines)' },
|
|
621
587
|
{ name: 'full', description: 'Everything — hooks, learning protocol, intelligence system (~400 lines)' },
|
|
622
588
|
{ name: 'security', description: 'Security-focused — adds security scanning, audit protocols, CVE checks' },
|
|
623
589
|
{ name: 'performance', description: 'Performance-focused — adds benchmarking, profiling, optimization protocols' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudemd-generator.js","sourceRoot":"","sources":["../../../src/init/claudemd-generator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"claudemd-generator.js","sourceRoot":"","sources":["../../../src/init/claudemd-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/init/executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgDH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAgB,MAAM,YAAY,CAAC;AA4JxE;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAoK3E;AAwHD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAoID;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CA6NvG;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAsGlH;
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/init/executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgDH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAgB,MAAM,YAAY,CAAC;AA4JxE;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAoK3E;AAwHD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAoID;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CA6NvG;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAsGlH;AAo/DD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,SAAI,GAAG,MAAM,EAAE,CA6C3D;eAEc,WAAW"}
|
|
@@ -55,7 +55,7 @@ import { generateStatuslineScript } from './statusline-generator.js';
|
|
|
55
55
|
import { FORCE_SYNC_HELPERS, FORCE_SYNC_GENERATORS, INIT_FALLBACK_HELPERS, } from './helpers-generator.js';
|
|
56
56
|
import { generateClaudeMd } from './claudemd-generator.js';
|
|
57
57
|
import { generateOpencodeJson, generateAgentsMd, generateHooksPlugin, generateStatusCommand, convertAgentMd, convertCommandMd, convertSkillMd, opencodeCommandFilename } from './opencode-generator.js';
|
|
58
|
-
import { generateKimiMcpJson, mergeKimiMcpJson, generateKimiAgentsMd, generateKimiGateScript, generateKimiPluginManifest, convertKimiAgentMd, convertKimiSkillMd, convertKimiCommandToFlowSkill, convertKimiPluginCommandMd, kimiCommandFilename } from './kimi-generator.js';
|
|
58
|
+
import { generateKimiMcpJson, mergeKimiMcpJson, generateKimiAgentsMd, generateKimiGateScript, generateKimiPluginManifest, generateKimiStatuslineSh, mergeKimiTuiTomlStatusline, convertKimiAgentMd, convertKimiSkillMd, convertKimiCommandToFlowSkill, convertKimiPluginCommandMd, kimiCommandFilename } from './kimi-generator.js';
|
|
59
59
|
import { generateGeminiMd, generateGeminiRulesMd, generateStatuslineSh, } from './geminimd-generator.js';
|
|
60
60
|
/**
|
|
61
61
|
* Skills to copy based on configuration
|
|
@@ -2603,6 +2603,49 @@ async function writeKimiFiles(targetDir, options, result) {
|
|
|
2603
2603
|
result.created.files.push(`.kimi-code/skills/ (${skillCount} skills)`);
|
|
2604
2604
|
if (commandCount)
|
|
2605
2605
|
result.created.files.push(`.kimi-code/plugin/commands/ (${commandCount} commands)`);
|
|
2606
|
+
// Statusline — the footer under kimi's chatbox. Lives in the USER's
|
|
2607
|
+
// ~/.kimi-code/ (kimi has no project-level statusline config), gated on
|
|
2608
|
+
// that directory already existing (i.e. the user actually runs kimi —
|
|
2609
|
+
// init must not create global state for non-kimi users). The tui.toml
|
|
2610
|
+
// merge never clobbers an existing [status_line].command.
|
|
2611
|
+
const homeDir = process.env.HOME || process.env.USERPROFILE || '';
|
|
2612
|
+
if (homeDir) {
|
|
2613
|
+
const kimiHome = path.join(homeDir, '.kimi-code');
|
|
2614
|
+
if (fs.existsSync(kimiHome)) {
|
|
2615
|
+
try {
|
|
2616
|
+
const statuslineShPath = path.join(kimiHome, 'statusline.sh');
|
|
2617
|
+
if (!fs.existsSync(statuslineShPath) || options.force) {
|
|
2618
|
+
atomicWriteFile(statuslineShPath, generateKimiStatuslineSh());
|
|
2619
|
+
try {
|
|
2620
|
+
fs.chmodSync(statuslineShPath, 0o755);
|
|
2621
|
+
}
|
|
2622
|
+
catch { /* ignore on Windows */ }
|
|
2623
|
+
result.created.files.push('~/.kimi-code/statusline.sh');
|
|
2624
|
+
}
|
|
2625
|
+
else {
|
|
2626
|
+
result.skipped.push('~/.kimi-code/statusline.sh');
|
|
2627
|
+
}
|
|
2628
|
+
const tuiTomlPath = path.join(kimiHome, 'tui.toml');
|
|
2629
|
+
const relCommand = '~/.kimi-code/statusline.sh';
|
|
2630
|
+
const existingToml = fs.existsSync(tuiTomlPath) ? fs.readFileSync(tuiTomlPath, 'utf-8') : '';
|
|
2631
|
+
const mergedToml = mergeKimiTuiTomlStatusline(existingToml, relCommand);
|
|
2632
|
+
if (mergedToml !== existingToml) {
|
|
2633
|
+
atomicWriteFile(tuiTomlPath, mergedToml);
|
|
2634
|
+
result.created.files.push('~/.kimi-code/tui.toml ([status_line].command wired)');
|
|
2635
|
+
}
|
|
2636
|
+
else {
|
|
2637
|
+
result.skipped.push('~/.kimi-code/tui.toml (status_line.command already set)');
|
|
2638
|
+
}
|
|
2639
|
+
}
|
|
2640
|
+
catch (e) {
|
|
2641
|
+
// Best-effort, like the agy global settings — a statusline failure
|
|
2642
|
+
// must never fail init.
|
|
2643
|
+
if (process.env.DEBUG || process.env.MONOMIND_DEBUG) {
|
|
2644
|
+
console.error('[writeKimiFiles] failed to wire kimi statusline:', e);
|
|
2645
|
+
}
|
|
2646
|
+
}
|
|
2647
|
+
}
|
|
2648
|
+
}
|
|
2606
2649
|
}
|
|
2607
2650
|
/** Recursively collect .md files under dir, returned relative to dir. */
|
|
2608
2651
|
function walkMdFiles(dir) {
|