@kernel.chat/kbot 1.3.0 → 2.3.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 (176) hide show
  1. package/README.md +94 -0
  2. package/dist/agent.d.ts +9 -0
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/agent.js +576 -119
  5. package/dist/agent.js.map +1 -1
  6. package/dist/auth.d.ts +20 -35
  7. package/dist/auth.d.ts.map +1 -1
  8. package/dist/auth.js +236 -66
  9. package/dist/auth.js.map +1 -1
  10. package/dist/auth.test.d.ts +2 -0
  11. package/dist/auth.test.d.ts.map +1 -0
  12. package/dist/auth.test.js +89 -0
  13. package/dist/auth.test.js.map +1 -0
  14. package/dist/build-targets.d.ts +37 -0
  15. package/dist/build-targets.d.ts.map +1 -0
  16. package/dist/build-targets.js +507 -0
  17. package/dist/build-targets.js.map +1 -0
  18. package/dist/cli.js +1211 -131
  19. package/dist/cli.js.map +1 -1
  20. package/dist/context.d.ts +2 -0
  21. package/dist/context.d.ts.map +1 -1
  22. package/dist/context.js +72 -22
  23. package/dist/context.js.map +1 -1
  24. package/dist/hooks.d.ts +27 -0
  25. package/dist/hooks.d.ts.map +1 -0
  26. package/dist/hooks.js +145 -0
  27. package/dist/hooks.js.map +1 -0
  28. package/dist/ide/acp-server.d.ts +6 -0
  29. package/dist/ide/acp-server.d.ts.map +1 -0
  30. package/dist/ide/acp-server.js +319 -0
  31. package/dist/ide/acp-server.js.map +1 -0
  32. package/dist/ide/bridge.d.ts +128 -0
  33. package/dist/ide/bridge.d.ts.map +1 -0
  34. package/dist/ide/bridge.js +185 -0
  35. package/dist/ide/bridge.js.map +1 -0
  36. package/dist/ide/index.d.ts +5 -0
  37. package/dist/ide/index.d.ts.map +1 -0
  38. package/dist/ide/index.js +11 -0
  39. package/dist/ide/index.js.map +1 -0
  40. package/dist/ide/lsp-bridge.d.ts +27 -0
  41. package/dist/ide/lsp-bridge.d.ts.map +1 -0
  42. package/dist/ide/lsp-bridge.js +267 -0
  43. package/dist/ide/lsp-bridge.js.map +1 -0
  44. package/dist/ide/mcp-server.d.ts +7 -0
  45. package/dist/ide/mcp-server.d.ts.map +1 -0
  46. package/dist/ide/mcp-server.js +451 -0
  47. package/dist/ide/mcp-server.js.map +1 -0
  48. package/dist/learning.d.ts +179 -0
  49. package/dist/learning.d.ts.map +1 -0
  50. package/dist/learning.js +829 -0
  51. package/dist/learning.js.map +1 -0
  52. package/dist/learning.test.d.ts +2 -0
  53. package/dist/learning.test.d.ts.map +1 -0
  54. package/dist/learning.test.js +115 -0
  55. package/dist/learning.test.js.map +1 -0
  56. package/dist/matrix.d.ts +49 -0
  57. package/dist/matrix.d.ts.map +1 -0
  58. package/dist/matrix.js +302 -0
  59. package/dist/matrix.js.map +1 -0
  60. package/dist/memory.d.ts +11 -0
  61. package/dist/memory.d.ts.map +1 -1
  62. package/dist/memory.js +54 -2
  63. package/dist/memory.js.map +1 -1
  64. package/dist/multimodal.d.ts +57 -0
  65. package/dist/multimodal.d.ts.map +1 -0
  66. package/dist/multimodal.js +206 -0
  67. package/dist/multimodal.js.map +1 -0
  68. package/dist/permissions.d.ts +21 -0
  69. package/dist/permissions.d.ts.map +1 -0
  70. package/dist/permissions.js +122 -0
  71. package/dist/permissions.js.map +1 -0
  72. package/dist/planner.d.ts +54 -0
  73. package/dist/planner.d.ts.map +1 -0
  74. package/dist/planner.js +298 -0
  75. package/dist/planner.js.map +1 -0
  76. package/dist/plugins.d.ts +30 -0
  77. package/dist/plugins.d.ts.map +1 -0
  78. package/dist/plugins.js +135 -0
  79. package/dist/plugins.js.map +1 -0
  80. package/dist/sessions.d.ts +38 -0
  81. package/dist/sessions.d.ts.map +1 -0
  82. package/dist/sessions.js +177 -0
  83. package/dist/sessions.js.map +1 -0
  84. package/dist/streaming.d.ts +88 -0
  85. package/dist/streaming.d.ts.map +1 -0
  86. package/dist/streaming.js +317 -0
  87. package/dist/streaming.js.map +1 -0
  88. package/dist/tools/background.d.ts +2 -0
  89. package/dist/tools/background.d.ts.map +1 -0
  90. package/dist/tools/background.js +163 -0
  91. package/dist/tools/background.js.map +1 -0
  92. package/dist/tools/bash.d.ts.map +1 -1
  93. package/dist/tools/bash.js +26 -1
  94. package/dist/tools/bash.js.map +1 -1
  95. package/dist/tools/browser.js +7 -7
  96. package/dist/tools/browser.js.map +1 -1
  97. package/dist/tools/build-matrix.d.ts +2 -0
  98. package/dist/tools/build-matrix.d.ts.map +1 -0
  99. package/dist/tools/build-matrix.js +463 -0
  100. package/dist/tools/build-matrix.js.map +1 -0
  101. package/dist/tools/computer.js +5 -5
  102. package/dist/tools/computer.js.map +1 -1
  103. package/dist/tools/fetch.d.ts +2 -0
  104. package/dist/tools/fetch.d.ts.map +1 -0
  105. package/dist/tools/fetch.js +106 -0
  106. package/dist/tools/fetch.js.map +1 -0
  107. package/dist/tools/files.d.ts.map +1 -1
  108. package/dist/tools/files.js +112 -6
  109. package/dist/tools/files.js.map +1 -1
  110. package/dist/tools/git.js +3 -3
  111. package/dist/tools/git.js.map +1 -1
  112. package/dist/tools/github.d.ts +2 -0
  113. package/dist/tools/github.d.ts.map +1 -0
  114. package/dist/tools/github.js +196 -0
  115. package/dist/tools/github.js.map +1 -0
  116. package/dist/tools/index.d.ts +29 -5
  117. package/dist/tools/index.d.ts.map +1 -1
  118. package/dist/tools/index.js +136 -20
  119. package/dist/tools/index.js.map +1 -1
  120. package/dist/tools/index.test.d.ts +2 -0
  121. package/dist/tools/index.test.d.ts.map +1 -0
  122. package/dist/tools/index.test.js +162 -0
  123. package/dist/tools/index.test.js.map +1 -0
  124. package/dist/tools/matrix.d.ts +2 -0
  125. package/dist/tools/matrix.d.ts.map +1 -0
  126. package/dist/tools/matrix.js +79 -0
  127. package/dist/tools/matrix.js.map +1 -0
  128. package/dist/tools/mcp-client.d.ts +2 -0
  129. package/dist/tools/mcp-client.d.ts.map +1 -0
  130. package/dist/tools/mcp-client.js +295 -0
  131. package/dist/tools/mcp-client.js.map +1 -0
  132. package/dist/tools/notebook.d.ts +2 -0
  133. package/dist/tools/notebook.d.ts.map +1 -0
  134. package/dist/tools/notebook.js +207 -0
  135. package/dist/tools/notebook.js.map +1 -0
  136. package/dist/tools/openclaw.d.ts +2 -0
  137. package/dist/tools/openclaw.d.ts.map +1 -0
  138. package/dist/tools/openclaw.js +187 -0
  139. package/dist/tools/openclaw.js.map +1 -0
  140. package/dist/tools/parallel.d.ts +2 -0
  141. package/dist/tools/parallel.d.ts.map +1 -0
  142. package/dist/tools/parallel.js +60 -0
  143. package/dist/tools/parallel.js.map +1 -0
  144. package/dist/tools/sandbox.d.ts +2 -0
  145. package/dist/tools/sandbox.d.ts.map +1 -0
  146. package/dist/tools/sandbox.js +352 -0
  147. package/dist/tools/sandbox.js.map +1 -0
  148. package/dist/tools/search.d.ts.map +1 -1
  149. package/dist/tools/search.js +135 -28
  150. package/dist/tools/search.js.map +1 -1
  151. package/dist/tools/subagent.d.ts +4 -0
  152. package/dist/tools/subagent.d.ts.map +1 -0
  153. package/dist/tools/subagent.js +260 -0
  154. package/dist/tools/subagent.js.map +1 -0
  155. package/dist/tools/tasks.d.ts +14 -0
  156. package/dist/tools/tasks.d.ts.map +1 -0
  157. package/dist/tools/tasks.js +210 -0
  158. package/dist/tools/tasks.js.map +1 -0
  159. package/dist/tools/worktree.d.ts +2 -0
  160. package/dist/tools/worktree.d.ts.map +1 -0
  161. package/dist/tools/worktree.js +223 -0
  162. package/dist/tools/worktree.js.map +1 -0
  163. package/dist/tui.d.ts +73 -0
  164. package/dist/tui.d.ts.map +1 -0
  165. package/dist/tui.js +257 -0
  166. package/dist/tui.js.map +1 -0
  167. package/dist/ui.d.ts +11 -19
  168. package/dist/ui.d.ts.map +1 -1
  169. package/dist/ui.js +143 -171
  170. package/dist/ui.js.map +1 -1
  171. package/dist/updater.d.ts +3 -0
  172. package/dist/updater.d.ts.map +1 -0
  173. package/dist/updater.js +70 -0
  174. package/dist/updater.js.map +1 -0
  175. package/install.sh +5 -7
  176. package/package.json +8 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"learning.js","sourceRoot":"","sources":["../src/learning.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=learning.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"learning.test.d.ts","sourceRoot":"","sources":["../src/learning.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,115 @@
1
+ // K:BOT Learning Engine Tests
2
+ import { describe, it } from 'node:test';
3
+ import assert from 'node:assert/strict';
4
+ import { extractKeywords, classifyTask, findPattern, recordPattern, cacheSolution, findSolutions, learnFact, findKnowledge, buildFullLearningContext, getStats, selfTrain, } from './learning.js';
5
+ describe('Keyword Extraction', () => {
6
+ it('extracts known tech terms', () => {
7
+ const kw = extractKeywords('fix the react typescript bug in the component');
8
+ assert.ok(kw.includes('react'));
9
+ assert.ok(kw.includes('typescript'));
10
+ assert.ok(kw.includes('bug'));
11
+ assert.ok(kw.includes('component'));
12
+ });
13
+ it('ignores non-tech words', () => {
14
+ const kw = extractKeywords('please help me understand this problem');
15
+ assert.equal(kw.length, 0);
16
+ });
17
+ it('handles empty input', () => {
18
+ assert.deepEqual(extractKeywords(''), []);
19
+ });
20
+ });
21
+ describe('Task Classification', () => {
22
+ it('classifies debug tasks', () => {
23
+ assert.equal(classifyTask('fix this bug'), 'debug');
24
+ assert.equal(classifyTask('there is an error in my code'), 'debug');
25
+ });
26
+ it('classifies build tasks', () => {
27
+ assert.equal(classifyTask('create a new react component'), 'build');
28
+ assert.equal(classifyTask('scaffold a project'), 'build');
29
+ });
30
+ it('classifies refactor tasks', () => {
31
+ assert.equal(classifyTask('refactor this function'), 'refactor');
32
+ assert.equal(classifyTask('clean up the code'), 'refactor');
33
+ });
34
+ it('classifies test tasks', () => {
35
+ assert.equal(classifyTask('run the test suite'), 'test');
36
+ assert.equal(classifyTask('add test coverage'), 'test');
37
+ });
38
+ it('classifies deploy tasks', () => {
39
+ assert.equal(classifyTask('deploy to production'), 'deploy');
40
+ });
41
+ it('classifies explain tasks', () => {
42
+ assert.equal(classifyTask('explain how this works'), 'explain');
43
+ });
44
+ it('defaults to general', () => {
45
+ assert.equal(classifyTask('hello'), 'general');
46
+ });
47
+ });
48
+ describe('Pattern Cache', () => {
49
+ it('records and finds patterns', () => {
50
+ recordPattern('write unit tests for auth module', ['read_file', 'write_file'], 500);
51
+ const pattern = findPattern('write unit tests for auth module');
52
+ // May or may not match depending on similarity threshold
53
+ // Just verify it doesn't crash
54
+ assert.ok(true);
55
+ });
56
+ it('handles no match gracefully', () => {
57
+ const result = findPattern('completely unique query that has never been seen before xyz123');
58
+ // Should return null for no match
59
+ assert.ok(result === null || typeof result === 'object');
60
+ });
61
+ });
62
+ describe('Solution Index', () => {
63
+ it('caches and finds solutions', () => {
64
+ cacheSolution('how to create a react hook', 'Use the useState hook from React to create custom hooks. Start with a function prefixed with "use".');
65
+ const results = findSolutions('how to create a react hook');
66
+ // Should find at least something related
67
+ assert.ok(Array.isArray(results));
68
+ });
69
+ it('rejects too-short solutions', () => {
70
+ cacheSolution('test', 'short');
71
+ // Should not crash even with invalid input
72
+ assert.ok(true);
73
+ });
74
+ });
75
+ describe('Knowledge Base', () => {
76
+ it('stores and retrieves knowledge', () => {
77
+ learnFact('The API runs on port 3001', 'fact', 'user-taught');
78
+ const results = findKnowledge('what port does the api run on');
79
+ assert.ok(Array.isArray(results));
80
+ });
81
+ it('rejects very short facts', () => {
82
+ learnFact('hi', 'fact', 'user-taught');
83
+ // Should not crash
84
+ assert.ok(true);
85
+ });
86
+ });
87
+ describe('Learning Context Builder', () => {
88
+ it('builds context without crashing', () => {
89
+ const context = buildFullLearningContext('write some code');
90
+ assert.ok(typeof context === 'string');
91
+ });
92
+ it('returns empty string for new users', () => {
93
+ const context = buildFullLearningContext('unique query never seen before abc789xyz');
94
+ assert.ok(typeof context === 'string');
95
+ });
96
+ });
97
+ describe('Stats', () => {
98
+ it('returns valid stats object', () => {
99
+ const stats = getStats();
100
+ assert.ok(typeof stats.patternsCount === 'number');
101
+ assert.ok(typeof stats.solutionsCount === 'number');
102
+ assert.ok(typeof stats.totalMessages === 'number');
103
+ assert.ok(typeof stats.efficiency === 'string');
104
+ });
105
+ });
106
+ describe('Self-Training', () => {
107
+ it('runs without crashing', () => {
108
+ const result = selfTrain();
109
+ assert.ok(typeof result.pruned === 'number');
110
+ assert.ok(typeof result.optimized === 'number');
111
+ assert.ok(typeof result.synthesized === 'number');
112
+ assert.ok(typeof result.summary === 'string');
113
+ });
114
+ });
115
+ //# sourceMappingURL=learning.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"learning.test.js","sourceRoot":"","sources":["../src/learning.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ export interface MatrixAgent {
2
+ id: string;
3
+ name: string;
4
+ icon: string;
5
+ color: string;
6
+ systemPrompt: string;
7
+ createdAt: Date;
8
+ invocations: number;
9
+ }
10
+ /** Create a new agent in the matrix */
11
+ export declare function createAgent(name: string, systemPrompt: string, icon?: string, color?: string): MatrixAgent;
12
+ /** Get an agent by ID */
13
+ export declare function getAgent(id: string): MatrixAgent | undefined;
14
+ /** Remove an agent */
15
+ export declare function removeAgent(id: string): boolean;
16
+ /** List all agents in the matrix */
17
+ export declare function listAgents(): MatrixAgent[];
18
+ /** Get system prompt override if a matrix agent is active */
19
+ export declare function getMatrixSystemPrompt(agentId: string): string | null;
20
+ /** Get matrix agent IDs for tool hints */
21
+ export declare function getMatrixAgentIds(): string[];
22
+ /** Format agent list for display */
23
+ export declare function formatAgentList(): string;
24
+ /** Format a single agent detail */
25
+ export declare function formatAgentDetail(agent: MatrixAgent): string;
26
+ export declare const PRESETS: Record<string, {
27
+ name: string;
28
+ prompt: string;
29
+ }>;
30
+ export interface MimicProfile {
31
+ id: string;
32
+ name: string;
33
+ description: string;
34
+ systemPrompt: string;
35
+ icon: string;
36
+ color: string;
37
+ /** Code conventions to enforce */
38
+ conventions?: string[];
39
+ /** Example patterns to follow */
40
+ examples?: string[];
41
+ }
42
+ export declare const MIMIC_PROFILES: Record<string, MimicProfile>;
43
+ /** Activate a mimic profile — creates a matrix agent with the mimic's conventions */
44
+ export declare function activateMimic(profileId: string): MatrixAgent | null;
45
+ /** List all available mimic profiles */
46
+ export declare function listMimicProfiles(): MimicProfile[];
47
+ /** Get mimic profile by ID */
48
+ export declare function getMimicProfile(id: string): MimicProfile | undefined;
49
+ //# sourceMappingURL=matrix.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matrix.d.ts","sourceRoot":"","sources":["../src/matrix.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,IAAI,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;CACpB;AAaD,uCAAuC;AACvC,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAkB1G;AAED,yBAAyB;AACzB,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAE5D;AAED,sBAAsB;AACtB,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE/C;AAED,oCAAoC;AACpC,wBAAgB,UAAU,IAAI,WAAW,EAAE,CAE1C;AAED,6DAA6D;AAC7D,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKpE;AAED,0CAA0C;AAC1C,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C;AAED,oCAAoC;AACpC,wBAAgB,eAAe,IAAI,MAAM,CAUxC;AAED,mCAAmC;AACnC,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAQ5D;AAKD,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAyBpE,CAAA;AAOD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB;AAED,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAsKvD,CAAA;AAED,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAmBnE;AAED,wCAAwC;AACxC,wBAAgB,iBAAiB,IAAI,YAAY,EAAE,CAElD;AAED,8BAA8B;AAC9B,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAEpE"}
package/dist/matrix.js ADDED
@@ -0,0 +1,302 @@
1
+ // K:BOT Agent Creation Matrix
2
+ // Create, manage, and invoke custom specialist agents on-the-fly.
3
+ // Agents are local session constructs — they override the system prompt
4
+ // and can be invoked by the AI via tool calls or by the user via /matrix.
5
+ import chalk from 'chalk';
6
+ import { registerAgentVisuals } from './ui.js';
7
+ const AGENT_ICONS = ['◆', '◈', '⟐', '◇', '▣', '✦', '◉', '❖', '▲', '⬡', '∑', '⊕', '☉', '◷', '✧', '◎', '⟳', '⊗', '⊘', '⊛'];
8
+ const AGENT_COLORS = ['#6B5B95', '#5B8BA0', '#6B8E6B', '#B8875C', '#A0768C', '#C4956A', '#4682B4', '#DAA520', '#228B22', '#9370DB', '#DB7093', '#20B2AA', '#8B4513', '#CD853F'];
9
+ /** In-memory agent registry for this session */
10
+ const matrix = new Map();
11
+ /** Slugify a name to an ID */
12
+ function slugify(name) {
13
+ return name.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '');
14
+ }
15
+ /** Create a new agent in the matrix */
16
+ export function createAgent(name, systemPrompt, icon, color) {
17
+ const id = slugify(name);
18
+ if (matrix.has(id)) {
19
+ throw new Error(`Agent "${id}" already exists. Use /matrix remove ${id} first.`);
20
+ }
21
+ const idx = matrix.size;
22
+ const agent = {
23
+ id,
24
+ name,
25
+ icon: icon || AGENT_ICONS[idx % AGENT_ICONS.length],
26
+ color: color || AGENT_COLORS[idx % AGENT_COLORS.length],
27
+ systemPrompt,
28
+ createdAt: new Date(),
29
+ invocations: 0,
30
+ };
31
+ matrix.set(id, agent);
32
+ registerAgentVisuals(id, agent.icon, agent.color);
33
+ return agent;
34
+ }
35
+ /** Get an agent by ID */
36
+ export function getAgent(id) {
37
+ return matrix.get(id);
38
+ }
39
+ /** Remove an agent */
40
+ export function removeAgent(id) {
41
+ return matrix.delete(id);
42
+ }
43
+ /** List all agents in the matrix */
44
+ export function listAgents() {
45
+ return Array.from(matrix.values());
46
+ }
47
+ /** Get system prompt override if a matrix agent is active */
48
+ export function getMatrixSystemPrompt(agentId) {
49
+ const agent = matrix.get(agentId);
50
+ if (!agent)
51
+ return null;
52
+ agent.invocations++;
53
+ return agent.systemPrompt;
54
+ }
55
+ /** Get matrix agent IDs for tool hints */
56
+ export function getMatrixAgentIds() {
57
+ return Array.from(matrix.keys());
58
+ }
59
+ /** Format agent list for display */
60
+ export function formatAgentList() {
61
+ const agents = listAgents();
62
+ if (agents.length === 0) {
63
+ return chalk.dim(' No agents in the matrix. Use /matrix create to add one.');
64
+ }
65
+ const lines = agents.map(a => {
66
+ const color = chalk.hex(a.color);
67
+ return ` ${color(a.icon)} ${color(a.name)} ${chalk.dim(`(${a.id})`)} — ${chalk.dim(`${a.invocations} calls`)}`;
68
+ });
69
+ return lines.join('\n');
70
+ }
71
+ /** Format a single agent detail */
72
+ export function formatAgentDetail(agent) {
73
+ const color = chalk.hex(agent.color);
74
+ return [
75
+ ` ${color(agent.icon)} ${color(agent.name)}`,
76
+ ` ${chalk.dim('ID:')} ${agent.id}`,
77
+ ` ${chalk.dim('Calls:')} ${agent.invocations}`,
78
+ ` ${chalk.dim('Prompt:')} ${agent.systemPrompt.slice(0, 120)}${agent.systemPrompt.length > 120 ? '...' : ''}`,
79
+ ].join('\n');
80
+ }
81
+ // ── Preset Templates ──
82
+ // Quick-start agent templates users can spawn instantly
83
+ export const PRESETS = {
84
+ 'security-auditor': {
85
+ name: 'Security Auditor',
86
+ prompt: 'You are a senior security engineer. Analyze code for vulnerabilities: injection, XSS, CSRF, auth bypass, secrets exposure, insecure dependencies. Be thorough and cite OWASP categories. Provide severity ratings (Critical/High/Medium/Low) and fix recommendations.',
87
+ },
88
+ 'ux-critic': {
89
+ name: 'UX Critic',
90
+ prompt: 'You are a UX design critic with expertise in mobile-first design. Evaluate interfaces for usability, accessibility (WCAG 2.1 AA), information hierarchy, touch targets, cognitive load, and visual consistency. Be constructive but honest about issues.',
91
+ },
92
+ 'code-reviewer': {
93
+ name: 'Code Reviewer',
94
+ prompt: 'You are a senior staff engineer doing a code review. Focus on: correctness, edge cases, error handling, performance, maintainability, naming, and adherence to project conventions. Be specific — reference line numbers and suggest concrete improvements.',
95
+ },
96
+ 'architect': {
97
+ name: 'System Architect',
98
+ prompt: 'You are a systems architect. Evaluate designs for scalability, separation of concerns, data flow, failure modes, and operational complexity. Propose alternatives when you see issues. Think in terms of trade-offs, not absolutes.',
99
+ },
100
+ 'tech-writer': {
101
+ name: 'Tech Writer',
102
+ prompt: 'You are a technical writer. Write clear, concise documentation. Use active voice, short sentences, and code examples. Structure with headings, bullet points, and numbered steps. Target audience: experienced developers who are new to this codebase.',
103
+ },
104
+ 'devil-advocate': {
105
+ name: "Devil's Advocate",
106
+ prompt: 'You challenge every assumption. When presented with a plan or design, find the weaknesses, edge cases, and failure modes. Ask uncomfortable questions. Your goal is to stress-test ideas before they ship. Be respectful but relentless.',
107
+ },
108
+ };
109
+ export const MIMIC_PROFILES = {
110
+ // Tool mimics — write code like popular AI tools
111
+ 'claude-code': {
112
+ id: 'claude-code',
113
+ name: 'Claude Code Style',
114
+ description: 'Write code the way Claude Code does — clean, minimal, well-tested',
115
+ icon: '⊛',
116
+ color: '#D97706',
117
+ systemPrompt: `You write code in the style of Anthropic's Claude Code. Your conventions:
118
+ - Minimal, focused changes — never over-engineer
119
+ - Prefer editing existing files over creating new ones
120
+ - No unnecessary comments, docstrings, or type annotations on unchanged code
121
+ - Simple solutions: 3 similar lines > premature abstraction
122
+ - Validate at boundaries, trust internal code
123
+ - No feature flags or backwards-compat shims — just change the code
124
+ - When fixing bugs, fix the root cause, don't add workarounds
125
+ - Always verify your work by reading back the file after editing`,
126
+ conventions: ['minimal changes', 'no over-engineering', 'edit > create', 'verify after edit'],
127
+ },
128
+ 'cursor': {
129
+ id: 'cursor',
130
+ name: 'Cursor AI Style',
131
+ description: 'Write code like Cursor — fast, inline, context-aware completions',
132
+ icon: '⊗',
133
+ color: '#7C3AED',
134
+ systemPrompt: `You write code in the style of Cursor AI. Your conventions:
135
+ - Generate complete, ready-to-use code blocks — no placeholders
136
+ - Infer intent from context: file structure, imports, naming patterns
137
+ - Match the existing code style exactly: indentation, quotes, semicolons, naming
138
+ - When adding to a file, follow the patterns already established
139
+ - Suggest multi-file edits when a change touches multiple files
140
+ - Include imports and dependencies automatically
141
+ - Optimize for developer velocity — code should work on first paste`,
142
+ conventions: ['complete code', 'match existing style', 'include imports', 'no placeholders'],
143
+ },
144
+ 'copilot': {
145
+ id: 'copilot',
146
+ name: 'GitHub Copilot Style',
147
+ description: 'Write code like Copilot — contextual, pattern-matching completions',
148
+ icon: '⊘',
149
+ color: '#1F6FEB',
150
+ systemPrompt: `You write code in the style of GitHub Copilot. Your conventions:
151
+ - Complete the user's current thought — infer what comes next
152
+ - Use the same patterns visible in the current file and project
153
+ - Favor idiomatic solutions for the language being used
154
+ - Include inline comments only where logic is non-obvious
155
+ - Generate tests that mirror the project's existing test patterns
156
+ - When generating functions, use the naming conventions already in the codebase`,
157
+ conventions: ['pattern completion', 'idiomatic code', 'match project conventions'],
158
+ },
159
+ // Framework mimics — enforce framework conventions
160
+ 'nextjs': {
161
+ id: 'nextjs',
162
+ name: 'Next.js Expert',
163
+ description: 'Write Next.js code following Vercel best practices',
164
+ icon: '▲',
165
+ color: '#000000',
166
+ systemPrompt: `You are a Next.js expert writing production code. Your conventions:
167
+ - Use App Router (app/ directory) by default, not Pages Router
168
+ - Server Components by default, 'use client' only when needed
169
+ - Use server actions for mutations, not API routes
170
+ - Streaming with Suspense for loading states
171
+ - Use next/image, next/font, next/link properly
172
+ - ISR/SSG where possible, SSR only when dynamic data is required
173
+ - Metadata API for SEO, not <Head>
174
+ - Follow Vercel deployment best practices
175
+ - TypeScript strict mode, Tailwind CSS for styling`,
176
+ conventions: ['App Router', 'Server Components', 'server actions', 'Tailwind', 'TypeScript'],
177
+ },
178
+ 'react': {
179
+ id: 'react',
180
+ name: 'Modern React',
181
+ description: 'Write React code with modern patterns (hooks, composition)',
182
+ icon: '⚛',
183
+ color: '#61DAFB',
184
+ systemPrompt: `You write modern React code. Your conventions:
185
+ - Functional components only, never class components
186
+ - Custom hooks for shared logic, not HOCs or render props
187
+ - useState/useReducer for local state, context sparingly
188
+ - React Query / TanStack Query for server state
189
+ - Composition over configuration — small, focused components
190
+ - Avoid useEffect for derived state — compute inline or useMemo
191
+ - Error boundaries at route level
192
+ - TypeScript for all components with proper prop types
193
+ - CSS Modules or Tailwind, never inline styles for production`,
194
+ conventions: ['hooks', 'composition', 'TypeScript', 'React Query', 'no useEffect for derived state'],
195
+ },
196
+ 'python': {
197
+ id: 'python',
198
+ name: 'Pythonic Code',
199
+ description: 'Write clean, idiomatic Python following PEP standards',
200
+ icon: '🐍',
201
+ color: '#3776AB',
202
+ systemPrompt: `You write idiomatic Python code. Your conventions:
203
+ - Follow PEP 8 style guide strictly
204
+ - Use type hints (Python 3.10+ syntax: list[str] not List[str])
205
+ - Prefer dataclasses or Pydantic models over dicts
206
+ - Use pathlib over os.path
207
+ - f-strings over .format() or % formatting
208
+ - List comprehensions where readable, loops when complex
209
+ - Use contextlib and with statements for resource management
210
+ - Proper exception handling — specific exceptions, not bare except
211
+ - Use ruff for linting, pytest for testing
212
+ - Virtual environments and pyproject.toml for dependencies`,
213
+ conventions: ['PEP 8', 'type hints', 'dataclasses', 'pathlib', 'f-strings', 'pytest'],
214
+ },
215
+ 'rust': {
216
+ id: 'rust',
217
+ name: 'Rust Idiomatic',
218
+ description: 'Write safe, performant Rust following community conventions',
219
+ icon: '⚙',
220
+ color: '#DEA584',
221
+ systemPrompt: `You write idiomatic Rust code. Your conventions:
222
+ - Ownership-first thinking — minimize cloning
223
+ - Use Result and Option properly, avoid unwrap in production
224
+ - Prefer &str over String for parameters
225
+ - Use iterators and combinators over manual loops
226
+ - Derive traits (Debug, Clone, PartialEq) generously
227
+ - Error types with thiserror or anyhow
228
+ - Use clippy suggestions as gospel
229
+ - Modules organized by functionality, not by type
230
+ - Integration tests in tests/, unit tests inline with #[cfg(test)]
231
+ - Document public APIs with /// and examples`,
232
+ conventions: ['ownership', 'Result/Option', 'iterators', 'clippy', 'thiserror'],
233
+ },
234
+ // Philosophy mimics — coding mindsets
235
+ 'senior': {
236
+ id: 'senior',
237
+ name: 'Senior Engineer',
238
+ description: 'Think and code like a principal engineer — trade-offs, simplicity, maintainability',
239
+ icon: '★',
240
+ color: '#B45309',
241
+ systemPrompt: `You think and code like a principal software engineer with 15+ years of experience. Your philosophy:
242
+ - Simplicity is the ultimate sophistication — every line must earn its place
243
+ - Name things precisely — good names eliminate the need for comments
244
+ - Design for deletion — code should be easy to remove, not just add
245
+ - Make impossible states impossible via the type system
246
+ - Ship small, ship often — prefer incremental improvements
247
+ - Write code for the next person to read, not the compiler
248
+ - Performance matters, but correctness and clarity come first
249
+ - Every abstraction has a cost — don't abstract until you have 3+ examples
250
+ - Tests should describe behavior, not implementation
251
+ - Review your own code as if someone else wrote it`,
252
+ conventions: ['simplicity', 'precise naming', 'design for deletion', 'incremental shipping'],
253
+ },
254
+ 'startup': {
255
+ id: 'startup',
256
+ name: 'Startup Mode',
257
+ description: 'Move fast, ship MVPs, pragmatic trade-offs',
258
+ icon: '⚡',
259
+ color: '#EF4444',
260
+ systemPrompt: `You code for a fast-moving startup. Your philosophy:
261
+ - Ship first, optimize later — working > perfect
262
+ - Use proven tech: React, Node, PostgreSQL, Redis, AWS/Vercel
263
+ - Avoid premature optimization and over-engineering
264
+ - Copy-paste is fine for 2 instances, abstract at 3
265
+ - Use managed services (Supabase, Vercel, Clerk) over self-hosting
266
+ - Skip features users haven't asked for
267
+ - Prioritize user-facing functionality over internal tooling
268
+ - Quick iteration: deploy, measure, iterate
269
+ - Good enough error handling > perfect error handling that takes a week
270
+ - README with setup instructions is all the docs you need`,
271
+ conventions: ['ship fast', 'proven stack', 'managed services', 'YAGNI'],
272
+ },
273
+ };
274
+ /** Activate a mimic profile — creates a matrix agent with the mimic's conventions */
275
+ export function activateMimic(profileId) {
276
+ const profile = MIMIC_PROFILES[profileId];
277
+ if (!profile)
278
+ return null;
279
+ // Remove existing mimic with same ID if present
280
+ matrix.delete(profile.id);
281
+ const agent = {
282
+ id: profile.id,
283
+ name: profile.name,
284
+ icon: profile.icon,
285
+ color: profile.color,
286
+ systemPrompt: profile.systemPrompt,
287
+ createdAt: new Date(),
288
+ invocations: 0,
289
+ };
290
+ matrix.set(profile.id, agent);
291
+ registerAgentVisuals(profile.id, profile.icon, profile.color);
292
+ return agent;
293
+ }
294
+ /** List all available mimic profiles */
295
+ export function listMimicProfiles() {
296
+ return Object.values(MIMIC_PROFILES);
297
+ }
298
+ /** Get mimic profile by ID */
299
+ export function getMimicProfile(id) {
300
+ return MIMIC_PROFILES[id];
301
+ }
302
+ //# sourceMappingURL=matrix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matrix.js","sourceRoot":"","sources":["../src/matrix.ts"],"names":[],"mappings":"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"}
package/dist/memory.d.ts CHANGED
@@ -22,4 +22,15 @@ export declare function getPreviousMessages(): Array<{
22
22
  role: string;
23
23
  content: string;
24
24
  }>;
25
+ /** Compact/compress conversation history into a summary.
26
+ * Keeps the last 4 turns verbatim, summarizes everything before.
27
+ * This extends session length without losing context.
28
+ */
29
+ export declare function compactHistory(): {
30
+ before: number;
31
+ after: number;
32
+ summary: string;
33
+ };
34
+ /** Restore session history from a saved session */
35
+ export declare function restoreHistory(turns: ConversationTurn[]): void;
25
36
  //# sourceMappingURL=memory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"AAkBA,gEAAgE;AAChE,wBAAgB,UAAU,IAAI,MAAM,CAgBnC;AAED,mEAAmE;AACnE,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIhD;AAED,uBAAuB;AACvB,wBAAgB,WAAW,IAAI,IAAI,CAGlC;AAED,gDAAgD;AAChD,wBAAgB,eAAe,IAAI,MAAM,CAIxC;AAED,+CAA+C;AAC/C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;CAChB;AAID,oCAAoC;AACpC,wBAAgB,OAAO,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAMpD;AAED,0BAA0B;AAC1B,wBAAgB,UAAU,IAAI,gBAAgB,EAAE,CAE/C;AAED,4BAA4B;AAC5B,wBAAgB,YAAY,IAAI,IAAI,CAEnC;AAED,kDAAkD;AAClD,wBAAgB,mBAAmB,IAAI,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAG9E"}
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"AAkBA,gEAAgE;AAChE,wBAAgB,UAAU,IAAI,MAAM,CAgBnC;AAED,mEAAmE;AACnE,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIhD;AAED,uBAAuB;AACvB,wBAAgB,WAAW,IAAI,IAAI,CAGlC;AAED,gDAAgD;AAChD,wBAAgB,eAAe,IAAI,MAAM,CAIxC;AAED,+CAA+C;AAC/C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;CAChB;AAID,oCAAoC;AACpC,wBAAgB,OAAO,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAMpD;AAED,0BAA0B;AAC1B,wBAAgB,UAAU,IAAI,gBAAgB,EAAE,CAE/C;AAED,4BAA4B;AAC5B,wBAAgB,YAAY,IAAI,IAAI,CAEnC;AAED,kDAAkD;AAClD,wBAAgB,mBAAmB,IAAI,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAG9E;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CA6CnF;AAED,mDAAmD;AACnD,wBAAgB,cAAc,CAAC,KAAK,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAM9D"}