centient 2.25.0 → 3.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.
Files changed (127) hide show
  1. package/CHANGELOG.md +92 -0
  2. package/README.md +7 -6
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +87 -45
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands.d.ts.map +1 -1
  7. package/dist/commands.js +38 -34
  8. package/dist/commands.js.map +1 -1
  9. package/dist/index.js +6 -1
  10. package/dist/index.js.map +1 -1
  11. package/dist/server.d.ts.map +1 -1
  12. package/dist/server.js +25 -2
  13. package/dist/server.js.map +1 -1
  14. package/dist/tools/channels/channelCreate.d.ts +9 -0
  15. package/dist/tools/channels/channelCreate.d.ts.map +1 -0
  16. package/dist/tools/channels/channelCreate.js +109 -0
  17. package/dist/tools/channels/channelCreate.js.map +1 -0
  18. package/dist/tools/channels/channelDelete.d.ts +9 -0
  19. package/dist/tools/channels/channelDelete.d.ts.map +1 -0
  20. package/dist/tools/channels/channelDelete.js +87 -0
  21. package/dist/tools/channels/channelDelete.js.map +1 -0
  22. package/dist/tools/channels/channelList.d.ts +9 -0
  23. package/dist/tools/channels/channelList.d.ts.map +1 -0
  24. package/dist/tools/channels/channelList.js +85 -0
  25. package/dist/tools/channels/channelList.js.map +1 -0
  26. package/dist/tools/channels/channelMessage.d.ts +9 -0
  27. package/dist/tools/channels/channelMessage.d.ts.map +1 -0
  28. package/dist/tools/channels/channelMessage.js +121 -0
  29. package/dist/tools/channels/channelMessage.js.map +1 -0
  30. package/dist/tools/channels/channelRead.d.ts +9 -0
  31. package/dist/tools/channels/channelRead.d.ts.map +1 -0
  32. package/dist/tools/channels/channelRead.js +113 -0
  33. package/dist/tools/channels/channelRead.js.map +1 -0
  34. package/dist/tools/channels/index.d.ts +11 -0
  35. package/dist/tools/channels/index.d.ts.map +1 -0
  36. package/dist/tools/channels/index.js +11 -0
  37. package/dist/tools/channels/index.js.map +1 -0
  38. package/dist/tools/consultation/consultLlmStream.d.ts.map +1 -1
  39. package/dist/tools/consultation/consultLlmStream.js.map +1 -1
  40. package/dist/tools/consultation/seekConsensus.d.ts.map +1 -1
  41. package/dist/tools/consultation/seekConsensus.js +5 -1
  42. package/dist/tools/consultation/seekConsensus.js.map +1 -1
  43. package/dist/tools/knowledge/index.d.ts +3 -3
  44. package/dist/tools/knowledge/index.d.ts.map +1 -1
  45. package/dist/tools/knowledge/index.js +3 -3
  46. package/dist/tools/knowledge/index.js.map +1 -1
  47. package/dist/tools/knowledge/promoteDecision.d.ts.map +1 -1
  48. package/dist/tools/knowledge/promoteDecision.js +12 -2
  49. package/dist/tools/knowledge/promoteDecision.js.map +1 -1
  50. package/dist/tools/knowledge/promoteLearning.d.ts.map +1 -1
  51. package/dist/tools/knowledge/promoteLearning.js +5 -1
  52. package/dist/tools/knowledge/promoteLearning.js.map +1 -1
  53. package/dist/tools/memory-bank/pushToMemoryBank.js.map +1 -1
  54. package/dist/tools/trails/executeTrailScript.d.ts.map +1 -1
  55. package/dist/tools/trails/executeTrailScript.js +8 -8
  56. package/dist/tools/trails/executeTrailScript.js.map +1 -1
  57. package/dist/tools/trails/index.d.ts +6 -6
  58. package/dist/tools/trails/index.d.ts.map +1 -1
  59. package/dist/tools/trails/index.js +6 -6
  60. package/dist/tools/trails/index.js.map +1 -1
  61. package/dist/tools/trails/trailDiscoverAuto.d.ts.map +1 -1
  62. package/dist/tools/trails/trailDiscoverAuto.js +9 -9
  63. package/dist/tools/trails/trailDiscoverAuto.js.map +1 -1
  64. package/dist/tools/trails/trailDiscoverConvergence.d.ts.map +1 -1
  65. package/dist/tools/trails/trailDiscoverConvergence.js +8 -8
  66. package/dist/tools/trails/trailDiscoverConvergence.js.map +1 -1
  67. package/dist/tools/trails/trailDiscoverInfluence.d.ts.map +1 -1
  68. package/dist/tools/trails/trailDiscoverInfluence.js +12 -10
  69. package/dist/tools/trails/trailDiscoverInfluence.js.map +1 -1
  70. package/dist/tools/trails/trailList.d.ts.map +1 -1
  71. package/dist/tools/trails/trailList.js +15 -10
  72. package/dist/tools/trails/trailList.js.map +1 -1
  73. package/dist/tools/trails/trailQueryByTopic.d.ts.map +1 -1
  74. package/dist/tools/trails/trailQueryByTopic.js +9 -6
  75. package/dist/tools/trails/trailQueryByTopic.js.map +1 -1
  76. package/dist/tools/trails/trailQueryIntersect.d.ts.map +1 -1
  77. package/dist/tools/trails/trailQueryIntersect.js +7 -7
  78. package/dist/tools/trails/trailQueryIntersect.js.map +1 -1
  79. package/dist/tools/trails/trailQueryTopics.d.ts.map +1 -1
  80. package/dist/tools/trails/trailQueryTopics.js +9 -8
  81. package/dist/tools/trails/trailQueryTopics.js.map +1 -1
  82. package/dist/tools/trails/trailView.d.ts.map +1 -1
  83. package/dist/tools/trails/trailView.js +12 -10
  84. package/dist/tools/trails/trailView.js.map +1 -1
  85. package/dist/utils/AuditLogger.d.ts.map +1 -1
  86. package/dist/utils/AuditLogger.js +13 -5
  87. package/dist/utils/AuditLogger.js.map +1 -1
  88. package/dist/utils/ChannelCoordinator.d.ts +70 -0
  89. package/dist/utils/ChannelCoordinator.d.ts.map +1 -0
  90. package/dist/utils/ChannelCoordinator.js +497 -0
  91. package/dist/utils/ChannelCoordinator.js.map +1 -0
  92. package/dist/utils/GeminiEmbeddingService.d.ts.map +1 -1
  93. package/dist/utils/GeminiEmbeddingService.js.map +1 -1
  94. package/dist/utils/InstanceRegistry.d.ts.map +1 -1
  95. package/dist/utils/InstanceRegistry.js +4 -4
  96. package/dist/utils/InstanceRegistry.js.map +1 -1
  97. package/dist/utils/MetaKnowledgeManager.d.ts.map +1 -1
  98. package/dist/utils/MetaKnowledgeManager.js +5 -1
  99. package/dist/utils/MetaKnowledgeManager.js.map +1 -1
  100. package/dist/utils/PatternIndexer.d.ts.map +1 -1
  101. package/dist/utils/PatternIndexer.js +2 -1
  102. package/dist/utils/PatternIndexer.js.map +1 -1
  103. package/dist/utils/SessionCoordinator.d.ts.map +1 -1
  104. package/dist/utils/SessionCoordinator.js.map +1 -1
  105. package/dist/utils/VertexSync.d.ts.map +1 -1
  106. package/dist/utils/VertexSync.js.map +1 -1
  107. package/dist/utils/channelSchema.d.ts +170 -0
  108. package/dist/utils/channelSchema.d.ts.map +1 -0
  109. package/dist/utils/channelSchema.js +20 -0
  110. package/dist/utils/channelSchema.js.map +1 -0
  111. package/dist/utils/config.d.ts.map +1 -1
  112. package/dist/utils/config.js +19 -9
  113. package/dist/utils/config.js.map +1 -1
  114. package/dist/utils/rlvr/RewardHistoryStore.js +1 -1
  115. package/dist/utils/rlvr/RewardHistoryStore.js.map +1 -1
  116. package/package.json +5 -4
  117. package/templates/claude/commands/check-duplicate.md +58 -0
  118. package/templates/claude/commands/checkpoint.md +48 -0
  119. package/templates/claude/commands/constraint.md +63 -0
  120. package/templates/claude/commands/finalize.md +57 -0
  121. package/templates/claude/commands/history.md +63 -0
  122. package/templates/claude/commands/note.md +50 -0
  123. package/templates/claude/commands/patterns.md +51 -0
  124. package/templates/claude/commands/promote.md +66 -0
  125. package/templates/claude/commands/recall.md +55 -0
  126. package/templates/claude/commands/session-start.md +53 -0
  127. package/templates/claude/commands/session-status.md +62 -0
package/CHANGELOG.md CHANGED
@@ -5,6 +5,98 @@ All notable changes to the MCP Server for Context Engineering.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [3.0.0] - 2026-01-12
9
+
10
+ ### Changed
11
+
12
+ - **MCP SDK Upgrade** - Major version upgrade from 0.5.0 to 1.25.2
13
+ - Breaking: MCP protocol compatibility updated to latest spec
14
+ - Enables latest MCP features and improvements
15
+
16
+ - **Vitest Upgrade** - Major version upgrade from 1.6.1 to 4.0.17
17
+ - Breaking: `poolOptions` config moved to top-level options
18
+ - Breaking: Constructor mocks require `function`/`class`, not arrow functions
19
+ - Resolves all security vulnerabilities in esbuild/vite chain
20
+
21
+ - **Qdrant Client Upgrade** - 1.15.1 to 1.16.2
22
+ - API change: `vectors_count` renamed to `indexed_vectors_count`
23
+
24
+ ### Updated Dependencies
25
+
26
+ | Package | Before | After |
27
+ |---------|--------|-------|
28
+ | `@modelcontextprotocol/sdk` | 0.5.0 | 1.25.2 |
29
+ | `@google/genai` | 1.29.0 | 1.35.0 |
30
+ | `vitest` | 1.6.1 | 4.0.17 |
31
+ | `@vitest/coverage-v8` | 1.6.1 | 4.0.17 |
32
+ | `@qdrant/js-client-rest` | 1.15.1 | 1.16.2 |
33
+ | `tsx` | 4.20.6 | 4.21.0 |
34
+
35
+ ### Security
36
+
37
+ - Resolved 5 moderate severity vulnerabilities (esbuild ≤0.24.2)
38
+ - Zero vulnerabilities in dependency tree
39
+
40
+ ## [2.25.1] - 2026-01-12
41
+
42
+ ### Fixed
43
+
44
+ - **NPM Package** - Include `templates` directory in package files
45
+ - Templates were missing from v2.25.0 causing `centient init` to fail
46
+ - Added `templates` to the `files` array in package.json
47
+
48
+ ## [2.25.0] - 2026-01-12
49
+
50
+ ### Added
51
+
52
+ - **CLI Scaffolding Commands** - Project initialization and maintenance
53
+ - `centient init` - Scaffold `.claude/` directory with slash command templates
54
+ - `centient check-commands` - Show status of installed commands (missing/outdated/current/customized)
55
+ - `centient update-commands` - Update outdated commands with version comparison
56
+ - `centient update-commands --dry-run` - Preview updates without modifying files
57
+
58
+ - **Slash Command Templates** (11 commands)
59
+ - `/session-start` - Initialize session memory with Qdrant coordination
60
+ - `/checkpoint` - Save progress checkpoint with session notes
61
+ - `/finalize` - End session and create finalization artifacts
62
+ - `/note` - Add decision/hypothesis/blocker/learning/finding to session
63
+ - `/recall` - Recall context from session memory or Memory Bank
64
+ - `/patterns` - Search pattern library for reusable solutions
65
+ - `/check-duplicate` - Check for duplicate work before starting
66
+ - `/constraint` - Track and enforce session constraints
67
+ - `/history` - Query session history and temporal graph
68
+ - `/promote` - Promote learnings to cross-project meta-knowledge
69
+ - `/session-status` - Show current session status and statistics
70
+
71
+ - **Version Tracking** - YAML frontmatter with `centient-version` header
72
+ - Enables automatic outdated detection via semver comparison
73
+ - Four-state model: missing, outdated, current, customized
74
+
75
+ ### Changed
76
+
77
+ - **Test Suite** - 1,382 tests (42 new tests for CLI scaffolding)
78
+ - `tests/commands.test.ts` - 32 tests for version extraction and comparison
79
+ - `tests/cli.test.ts` - 10 tests for init/check-commands/update-commands parsing
80
+
81
+ ### Documentation
82
+
83
+ - Added `docs/CLI_SCAFFOLDING_ARCHITECTURE.md` - 362-line architecture deep-dive
84
+ - Updated README.md with CLI Commands section
85
+ - Extracted CLI Scaffolding Pattern to shared pattern library
86
+
87
+ ## [2.24.0] - 2026-01-12
88
+
89
+ ### Added
90
+
91
+ - **Vertex AI Memory Bank Sync** - Automatic sync on promote
92
+ - `promote_learning` and `promote_decision` now sync to Vertex AI Memory Bank
93
+ - Added `--json` flag for machine-readable output from Python sync script
94
+ - Configured via `metaKnowledge.vertex.syncOnPromote` in config
95
+
96
+ ### Changed
97
+
98
+ - **push_to_memory_bank** - Added `--json` flag for machine-readable Python output
99
+
8
100
  ## [2.23.0] - 2026-01-11
9
101
 
10
102
  ### Changed
package/README.md CHANGED
@@ -93,12 +93,12 @@ For full functionality, add environment variables to your config:
93
93
 
94
94
  ### Environment Variables
95
95
 
96
- | Variable | Required | Description |
97
- | -------------------- | ------------------- | -------------------------------------------------- |
98
- | `OPENROUTER_API_KEY` | Consultation module | OpenRouter for LLM completions (unified billing) |
99
- | `QDRANT_URL` | Session module | Qdrant Cloud URL |
100
- | `QDRANT_API_KEY` | Session module | Qdrant API key |
101
- | `GEMINI_API_KEY` | Session + Search | Gemini for embeddings and File Search |
96
+ | Variable | Required | Description |
97
+ | -------------------- | ------------------- | ------------------------------------------------ |
98
+ | `OPENROUTER_API_KEY` | Consultation module | OpenRouter for LLM completions (unified billing) |
99
+ | `QDRANT_URL` | Session module | Qdrant Cloud URL |
100
+ | `QDRANT_API_KEY` | Session module | Qdrant API key |
101
+ | `GEMINI_API_KEY` | Session + Search | Gemini for embeddings and File Search |
102
102
 
103
103
  **API Key Usage:**
104
104
 
@@ -138,6 +138,7 @@ centient update-commands
138
138
  | Customized | No version header (user modified) |
139
139
 
140
140
  **What `centient init` creates:**
141
+
141
142
  ```
142
143
  .claude/
143
144
  ├── commands/
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAgC1D,wBAAgB,YAAY,IAAI,IAAI,CAEnC;AAKD,wBAAgB,SAAS,IAAI,IAAI,CAgDhC;AAKD,wBAAgB,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAoF9C;AAKD,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAqFjD;AAKD,wBAAgB,WAAW,IAAI,IAAI,CAsClC;AAgID,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA8GhD;AAKD,wBAAsB,GAAG,CAAC,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuGnF;AAmMD,wBAAsB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAgFpE;AAKD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAKD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB;AAKD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC;CAChB;AAKD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AAKD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IACzC,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;IACzJ,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAuIA"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAkC1D,wBAAgB,YAAY,IAAI,IAAI,CAEnC;AAKD,wBAAgB,SAAS,IAAI,IAAI,CAgDhC;AAKD,wBAAgB,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CA4I9C;AAKD,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CA6FjD;AAKD,wBAAgB,WAAW,IAAI,IAAI,CAgDlC;AAqID,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA+HhD;AAKD,wBAAsB,GAAG,CAAC,OAAO,EAAE;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiHhB;AAiND,wBAAsB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA2FpE;AAKD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAKD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB;AAKD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC;CAChB;AAKD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AAKD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IACzC,MAAM,EACF,QAAQ,GACR,SAAS,GACT,MAAM,GACN,YAAY,GACZ,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,KAAK,GACL,OAAO,GACP,MAAM,GACN,gBAAgB,GAChB,iBAAiB,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CA0IA"}
package/dist/cli.js CHANGED
@@ -5,7 +5,7 @@ import { homedir } from "os";
5
5
  import { createReadStream } from "fs";
6
6
  import { createInterface } from "readline";
7
7
  import { listInstances, getAggregatedStats, formatUptime, isHeartbeatStale, } from "./utils/InstanceRegistry.js";
8
- import { getAuditLogPath as getConfigAuditLogPath, getMetaKnowledgeConfig } from "./utils/config.js";
8
+ import { getAuditLogPath as getConfigAuditLogPath, getMetaKnowledgeConfig, } from "./utils/config.js";
9
9
  import { getSharedPatternsPath } from "./utils/filesystem.js";
10
10
  const __dirname = dirname(fileURLToPath(import.meta.url));
11
11
  function getVersion() {
@@ -77,28 +77,50 @@ export function printTools(tools) {
77
77
  for (const tool of tools) {
78
78
  let module = "other";
79
79
  const name = tool.name;
80
- if (name.includes("Pattern") || name.includes("Skill") || name === "findPatterns") {
80
+ if (name.includes("Pattern") ||
81
+ name.includes("Skill") ||
82
+ name === "findPatterns") {
81
83
  module = "patterns";
82
84
  }
83
- else if (name.includes("Artifact") || (name.includes("Session") && name.includes("load"))) {
85
+ else if (name.includes("Artifact") ||
86
+ (name.includes("Session") && name.includes("load"))) {
84
87
  module = "artifacts";
85
88
  }
86
- else if (name.includes("Note") || name === "getDecisions" || name === "getHypotheses") {
89
+ else if (name.includes("Note") ||
90
+ name === "getDecisions" ||
91
+ name === "getHypotheses") {
87
92
  module = "memory";
88
93
  }
89
- else if (name.includes("Compression") || name.includes("Reuse") || name.includes("Cost") || name.includes("Analytics") || name.includes("Audit")) {
94
+ else if (name.includes("Compression") ||
95
+ name.includes("Reuse") ||
96
+ name.includes("Cost") ||
97
+ name.includes("Analytics") ||
98
+ name.includes("Audit")) {
90
99
  module = "metrics";
91
100
  }
92
- else if (name.includes("semantic") || (name.includes("index") && name.includes("Session")) || name.includes("SearchStats")) {
101
+ else if (name.includes("semantic") ||
102
+ (name.includes("index") && name.includes("Session")) ||
103
+ name.includes("SearchStats")) {
93
104
  module = "search";
94
105
  }
95
- else if (name.includes("session") || name.includes("Session") || name.includes("Constraint") || name.includes("Claim") || name.includes("Citation") || name.includes("Verification") || name.includes("Feasibility") || name.includes("Duplicate") || name.includes("Approval")) {
106
+ else if (name.includes("session") ||
107
+ name.includes("Session") ||
108
+ name.includes("Constraint") ||
109
+ name.includes("Claim") ||
110
+ name.includes("Citation") ||
111
+ name.includes("Verification") ||
112
+ name.includes("Feasibility") ||
113
+ name.includes("Duplicate") ||
114
+ name.includes("Approval")) {
96
115
  module = "session";
97
116
  }
98
117
  else if (name.includes("Stuck") || name.includes("Recovery")) {
99
118
  module = "stuck";
100
119
  }
101
- else if (name.includes("Health") || name.includes("Circuit") || name.includes("RateLimit") || name.includes("Qdrant")) {
120
+ else if (name.includes("Health") ||
121
+ name.includes("Circuit") ||
122
+ name.includes("RateLimit") ||
123
+ name.includes("Qdrant")) {
102
124
  module = "health";
103
125
  }
104
126
  else if (name.includes("Research") || name.includes("Model")) {
@@ -107,19 +129,29 @@ export function printTools(tools) {
107
129
  else if (name.includes("memory_bank")) {
108
130
  module = "memory-bank";
109
131
  }
110
- else if (name.includes("Relationship") || name.includes("Graph") || name.includes("link")) {
132
+ else if (name.includes("Relationship") ||
133
+ name.includes("Graph") ||
134
+ name.includes("link")) {
111
135
  module = "graph";
112
136
  }
113
- else if (name.includes("consult") || name.includes("Consultation") || name.includes("Consensus") || name.includes("Review") || (name.includes("Decision") && name.includes("validate"))) {
137
+ else if (name.includes("consult") ||
138
+ name.includes("Consultation") ||
139
+ name.includes("Consensus") ||
140
+ name.includes("Review") ||
141
+ (name.includes("Decision") && name.includes("validate"))) {
114
142
  module = "consultation";
115
143
  }
116
- else if (name.includes("Branch") || name.includes("branch") || (name.includes("Decision") && name.includes("Point"))) {
144
+ else if (name.includes("Branch") ||
145
+ name.includes("branch") ||
146
+ (name.includes("Decision") && name.includes("Point"))) {
117
147
  module = "branching";
118
148
  }
119
149
  else if (name.includes("rlvr")) {
120
150
  module = "rlvr";
121
151
  }
122
- else if (name.includes("Learning") || name.includes("Knowledge") || name.includes("promote")) {
152
+ else if (name.includes("Learning") ||
153
+ name.includes("Knowledge") ||
154
+ name.includes("promote")) {
123
155
  module = "knowledge";
124
156
  }
125
157
  else if (name.includes("trail")) {
@@ -171,7 +203,9 @@ export async function printHealth() {
171
203
  };
172
204
  console.log("Environment:");
173
205
  for (const [key, value] of Object.entries(envVars)) {
174
- const status = value ? "\x1b[32m✓\x1b[0m configured" : "\x1b[31m✗\x1b[0m not set";
206
+ const status = value
207
+ ? "\x1b[32m✓\x1b[0m configured"
208
+ : "\x1b[31m✗\x1b[0m not set";
175
209
  console.log(` ${key.padEnd(20)} ${status}`);
176
210
  }
177
211
  console.log("\nServices:");
@@ -276,31 +310,33 @@ export function printConfig() {
276
310
  console.log("");
277
311
  }
278
312
  const isTTY = process.stdout.isTTY ?? false;
279
- const colors = isTTY ? {
280
- reset: "\x1b[0m",
281
- bright: "\x1b[1m",
282
- dim: "\x1b[2m",
283
- red: "\x1b[31m",
284
- green: "\x1b[32m",
285
- yellow: "\x1b[33m",
286
- blue: "\x1b[34m",
287
- magenta: "\x1b[35m",
288
- cyan: "\x1b[36m",
289
- white: "\x1b[37m",
290
- gray: "\x1b[90m",
291
- } : {
292
- reset: "",
293
- bright: "",
294
- dim: "",
295
- red: "",
296
- green: "",
297
- yellow: "",
298
- blue: "",
299
- magenta: "",
300
- cyan: "",
301
- white: "",
302
- gray: "",
303
- };
313
+ const colors = isTTY
314
+ ? {
315
+ reset: "\x1b[0m",
316
+ bright: "\x1b[1m",
317
+ dim: "\x1b[2m",
318
+ red: "\x1b[31m",
319
+ green: "\x1b[32m",
320
+ yellow: "\x1b[33m",
321
+ blue: "\x1b[34m",
322
+ magenta: "\x1b[35m",
323
+ cyan: "\x1b[36m",
324
+ white: "\x1b[37m",
325
+ gray: "\x1b[90m",
326
+ }
327
+ : {
328
+ reset: "",
329
+ bright: "",
330
+ dim: "",
331
+ red: "",
332
+ green: "",
333
+ yellow: "",
334
+ blue: "",
335
+ magenta: "",
336
+ cyan: "",
337
+ white: "",
338
+ gray: "",
339
+ };
304
340
  function formatLogEntry(entry) {
305
341
  const time = new Date(entry.timestamp).toLocaleTimeString();
306
342
  const outcomeColor = entry.outcome === "success" ? colors.green : colors.red;
@@ -381,9 +417,12 @@ export async function printStats() {
381
417
  }
382
418
  stats.lastTimestamp = entry.timestamp;
383
419
  stats.toolCounts[entry.tool] = (stats.toolCounts[entry.tool] || 0) + 1;
384
- stats.toolTotalDurations[entry.tool] = (stats.toolTotalDurations[entry.tool] || 0) + entry.duration;
385
- stats.toolDurationCounts[entry.tool] = (stats.toolDurationCounts[entry.tool] || 0) + 1;
386
- stats.eventTypeCounts[entry.eventType] = (stats.eventTypeCounts[entry.eventType] || 0) + 1;
420
+ stats.toolTotalDurations[entry.tool] =
421
+ (stats.toolTotalDurations[entry.tool] || 0) + entry.duration;
422
+ stats.toolDurationCounts[entry.tool] =
423
+ (stats.toolDurationCounts[entry.tool] || 0) + 1;
424
+ stats.eventTypeCounts[entry.eventType] =
425
+ (stats.eventTypeCounts[entry.eventType] || 0) + 1;
387
426
  if (entry.outcome === "success") {
388
427
  stats.successCount++;
389
428
  }
@@ -550,7 +589,7 @@ function printInstancesJson(instances) {
550
589
  const stats = getAggregatedStats();
551
590
  const output = {
552
591
  timestamp: new Date().toISOString(),
553
- instances: instances.map(i => ({
592
+ instances: instances.map((i) => ({
554
593
  ...i,
555
594
  reqPerMin: calculateReqPerMin(i),
556
595
  stale: isHeartbeatStale(i),
@@ -578,7 +617,7 @@ function printInstancesSummary(version) {
578
617
  console.log(`Memory: ${stats.totalMemoryMB} MB total`);
579
618
  console.log(`Requests: ${stats.totalRequests} total`);
580
619
  if (instances.length > 0) {
581
- const oldest = instances.reduce((a, b) => a.uptime > b.uptime ? a : b);
620
+ const oldest = instances.reduce((a, b) => (a.uptime > b.uptime ? a : b));
582
621
  console.log(`Oldest: ${formatUptime(oldest.uptime)} (${oldest.projectName})`);
583
622
  }
584
623
  console.log("");
@@ -639,7 +678,7 @@ export async function monitor(options) {
639
678
  const version = getVersion();
640
679
  let instances = listInstances();
641
680
  if (options.project) {
642
- instances = instances.filter(i => i.projectName.toLowerCase().includes(options.project.toLowerCase()));
681
+ instances = instances.filter((i) => i.projectName.toLowerCase().includes(options.project.toLowerCase()));
643
682
  }
644
683
  if (options.quiet) {
645
684
  printInstancesQuiet(instances);
@@ -809,7 +848,10 @@ export function parseArgs(args) {
809
848
  return { action: "check-commands" };
810
849
  }
811
850
  if (hasUpdateCommands) {
812
- return { action: "update-commands", updateOptions: { force: initForce, dryRun: updateDryRun } };
851
+ return {
852
+ action: "update-commands",
853
+ updateOptions: { force: initForce, dryRun: updateDryRun },
854
+ };
813
855
  }
814
856
  return { action: "server" };
815
857
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAmEA,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG7D;AAOD,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAW5D;AAmFD,wBAAsB,IAAI,CAAC,OAAO,EAAE;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoIrE;AAKD,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAmEnD;AAKD,wBAAsB,cAAc,CAAC,OAAO,EAAE;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA6EhG;AAKD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC;CAChB;AAKD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AA2EA,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG7D;AAOD,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAW5D;AAuFD,wBAAsB,IAAI,CAAC,OAAO,EAAE;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8JrE;AAKD,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAiFnD;AAKD,wBAAsB,cAAc,CAAC,OAAO,EAAE;IAC5C,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6FhB;AAKD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC;CAChB;AAKD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB"}
package/dist/commands.js CHANGED
@@ -1,29 +1,31 @@
1
- import { readFileSync, existsSync, mkdirSync, readdirSync, copyFileSync } from "fs";
1
+ import { readFileSync, existsSync, mkdirSync, readdirSync, copyFileSync, } from "fs";
2
2
  import { join, dirname } from "path";
3
3
  import { fileURLToPath } from "url";
4
4
  const __dirname = dirname(fileURLToPath(import.meta.url));
5
5
  const isTTY = process.stdout.isTTY ?? false;
6
- const colors = isTTY ? {
7
- reset: "\x1b[0m",
8
- bright: "\x1b[1m",
9
- dim: "\x1b[2m",
10
- red: "\x1b[31m",
11
- green: "\x1b[32m",
12
- yellow: "\x1b[33m",
13
- blue: "\x1b[34m",
14
- cyan: "\x1b[36m",
15
- gray: "\x1b[90m",
16
- } : {
17
- reset: "",
18
- bright: "",
19
- dim: "",
20
- red: "",
21
- green: "",
22
- yellow: "",
23
- blue: "",
24
- cyan: "",
25
- gray: "",
26
- };
6
+ const colors = isTTY
7
+ ? {
8
+ reset: "\x1b[0m",
9
+ bright: "\x1b[1m",
10
+ dim: "\x1b[2m",
11
+ red: "\x1b[31m",
12
+ green: "\x1b[32m",
13
+ yellow: "\x1b[33m",
14
+ blue: "\x1b[34m",
15
+ cyan: "\x1b[36m",
16
+ gray: "\x1b[90m",
17
+ }
18
+ : {
19
+ reset: "",
20
+ bright: "",
21
+ dim: "",
22
+ red: "",
23
+ green: "",
24
+ yellow: "",
25
+ blue: "",
26
+ cyan: "",
27
+ gray: "",
28
+ };
27
29
  function getTemplatesPath() {
28
30
  return join(__dirname, "..", "templates");
29
31
  }
@@ -61,7 +63,7 @@ function checkCommandStatus(projectPath) {
61
63
  console.error(`${colors.red}Templates not found at: ${templatesPath}${colors.reset}`);
62
64
  return [];
63
65
  }
64
- const templateFiles = readdirSync(templatesPath).filter(f => f.endsWith(".md"));
66
+ const templateFiles = readdirSync(templatesPath).filter((f) => f.endsWith(".md"));
65
67
  const results = [];
66
68
  for (const file of templateFiles) {
67
69
  const name = file.replace(".md", "");
@@ -124,9 +126,9 @@ export async function init(options) {
124
126
  if (claudeExists && !options.force) {
125
127
  console.log(`${colors.yellow}Found existing .claude/ directory${colors.reset}\n`);
126
128
  const status = checkCommandStatus(projectPath);
127
- const missing = status.filter(s => s.status === "missing");
128
- const outdated = status.filter(s => s.status === "outdated");
129
- const customized = status.filter(s => s.status === "customized");
129
+ const missing = status.filter((s) => s.status === "missing");
130
+ const outdated = status.filter((s) => s.status === "outdated");
131
+ const customized = status.filter((s) => s.status === "customized");
130
132
  if (missing.length > 0) {
131
133
  console.log(`${colors.red}Missing commands (${missing.length}):${colors.reset}`);
132
134
  for (const cmd of missing) {
@@ -163,7 +165,7 @@ export async function init(options) {
163
165
  }
164
166
  const commandTemplatesPath = join(templatesPath, "commands");
165
167
  if (existsSync(commandTemplatesPath)) {
166
- const files = readdirSync(commandTemplatesPath).filter(f => f.endsWith(".md"));
168
+ const files = readdirSync(commandTemplatesPath).filter((f) => f.endsWith(".md"));
167
169
  for (const file of files) {
168
170
  const sourcePath = join(commandTemplatesPath, file);
169
171
  const destPath = join(commandsPath, file);
@@ -227,10 +229,10 @@ export async function checkCommands() {
227
229
  return;
228
230
  }
229
231
  const status = checkCommandStatus(projectPath);
230
- const missing = status.filter(s => s.status === "missing");
231
- const outdated = status.filter(s => s.status === "outdated");
232
- const current = status.filter(s => s.status === "current");
233
- const customized = status.filter(s => s.status === "customized");
232
+ const missing = status.filter((s) => s.status === "missing");
233
+ const outdated = status.filter((s) => s.status === "outdated");
234
+ const current = status.filter((s) => s.status === "current");
235
+ const customized = status.filter((s) => s.status === "customized");
234
236
  console.log(`Commands Status (${status.length} total):\n`);
235
237
  if (current.length > 0) {
236
238
  console.log(`${colors.green}Current (${current.length}):${colors.reset}`);
@@ -277,7 +279,9 @@ export async function checkCommands() {
277
279
  export async function updateCommands(options) {
278
280
  const version = getVersion();
279
281
  const projectPath = process.cwd();
280
- const modeIndicator = options.dryRun ? ` ${colors.yellow}(dry-run)${colors.reset}` : "";
282
+ const modeIndicator = options.dryRun
283
+ ? ` ${colors.yellow}(dry-run)${colors.reset}`
284
+ : "";
281
285
  console.log(`${colors.bright}centient update-commands${colors.reset} v${version}${modeIndicator}\n`);
282
286
  const claudePath = join(projectPath, ".claude");
283
287
  if (!existsSync(claudePath)) {
@@ -286,8 +290,8 @@ export async function updateCommands(options) {
286
290
  return;
287
291
  }
288
292
  const status = checkCommandStatus(projectPath);
289
- const outdated = status.filter(s => s.status === "outdated");
290
- const missing = status.filter(s => s.status === "missing");
293
+ const outdated = status.filter((s) => s.status === "outdated");
294
+ const missing = status.filter((s) => s.status === "missing");
291
295
  if (outdated.length === 0 && missing.length === 0) {
292
296
  console.log(`${colors.green}All commands are up to date!${colors.reset}\n`);
293
297
  return;