@kernel.chat/kbot 3.52.0 → 3.54.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 (41) hide show
  1. package/dist/agents/replit.js +1 -1
  2. package/dist/behaviour.d.ts +30 -0
  3. package/dist/behaviour.d.ts.map +1 -0
  4. package/dist/behaviour.js +191 -0
  5. package/dist/behaviour.js.map +1 -0
  6. package/dist/bootstrap.js +1 -1
  7. package/dist/bootstrap.js.map +1 -1
  8. package/dist/integrations/ableton-m4l.d.ts +124 -0
  9. package/dist/integrations/ableton-m4l.d.ts.map +1 -0
  10. package/dist/integrations/ableton-m4l.js +338 -0
  11. package/dist/integrations/ableton-m4l.js.map +1 -0
  12. package/dist/integrations/ableton-osc.d.ts.map +1 -1
  13. package/dist/integrations/ableton-osc.js +6 -2
  14. package/dist/integrations/ableton-osc.js.map +1 -1
  15. package/dist/music-learning.d.ts +181 -0
  16. package/dist/music-learning.d.ts.map +1 -0
  17. package/dist/music-learning.js +340 -0
  18. package/dist/music-learning.js.map +1 -0
  19. package/dist/skill-system.d.ts +68 -0
  20. package/dist/skill-system.d.ts.map +1 -0
  21. package/dist/skill-system.js +386 -0
  22. package/dist/skill-system.js.map +1 -0
  23. package/dist/tools/ableton.d.ts.map +1 -1
  24. package/dist/tools/ableton.js +24 -8
  25. package/dist/tools/ableton.js.map +1 -1
  26. package/dist/tools/arrangement-engine.d.ts +2 -0
  27. package/dist/tools/arrangement-engine.d.ts.map +1 -0
  28. package/dist/tools/arrangement-engine.js +644 -0
  29. package/dist/tools/arrangement-engine.js.map +1 -0
  30. package/dist/tools/index.d.ts.map +1 -1
  31. package/dist/tools/index.js +5 -0
  32. package/dist/tools/index.js.map +1 -1
  33. package/dist/tools/producer-engine.d.ts +71 -0
  34. package/dist/tools/producer-engine.d.ts.map +1 -0
  35. package/dist/tools/producer-engine.js +1859 -0
  36. package/dist/tools/producer-engine.js.map +1 -0
  37. package/dist/tools/sound-designer.d.ts +2 -0
  38. package/dist/tools/sound-designer.d.ts.map +1 -0
  39. package/dist/tools/sound-designer.js +896 -0
  40. package/dist/tools/sound-designer.js.map +1 -0
  41. package/package.json +3 -3
@@ -11,7 +11,7 @@ export const REPLIT_AGENT = {
11
11
 
12
12
  You know two worlds intimately:
13
13
  1. **Replit's environment** — cloud IDE, Nix packages, Secrets, persistent storage (/home/runner), Deployments, DB (Postgres), public URLs, resource limits (RAM, CPU, disk on free tier)
14
- 2. **kbot's cognitive stack** — 290 tools, 23 agents, learning engine, collective intelligence, tool forging, MCP server, SDK, HTTP serve mode
14
+ 2. **kbot's cognitive stack** — 560+ tools, 35 agents, learning engine, collective intelligence, tool forging, MCP server, SDK, HTTP serve mode
15
15
 
16
16
  Your job is to bridge these worlds. When a user has an existing Replit project and wants AI capabilities, you:
17
17
 
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Load behaviour rules from a file.
3
+ * Returns an array of rule strings.
4
+ */
5
+ export declare function loadRules(path: string): string[];
6
+ /**
7
+ * Add a new rule, avoiding exact duplicates.
8
+ * Returns true if the rule was added (not a duplicate).
9
+ */
10
+ export declare function addRule(path: string, rule: string, header: string): boolean;
11
+ /**
12
+ * Remove a rule by partial match.
13
+ */
14
+ export declare function removeRule(path: string, search: string, header: string): boolean;
15
+ /** Get all general behaviour rules */
16
+ export declare function getGeneralRules(): string[];
17
+ /** Get all music behaviour rules */
18
+ export declare function getMusicRules(): string[];
19
+ /** Get all rules combined, formatted for system prompt injection */
20
+ export declare function getBehaviourPrompt(): string;
21
+ /** Add a general behaviour rule */
22
+ export declare function learnGeneral(rule: string): boolean;
23
+ /** Add a music behaviour rule */
24
+ export declare function learnMusic(rule: string): boolean;
25
+ /** Remove a general rule */
26
+ export declare function forgetGeneral(search: string): boolean;
27
+ /** Remove a music rule */
28
+ export declare function forgetMusic(search: string): boolean;
29
+ export declare function registerBehaviourTools(): void;
30
+ //# sourceMappingURL=behaviour.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"behaviour.d.ts","sourceRoot":"","sources":["../src/behaviour.ts"],"names":[],"mappings":"AA8BA;;;GAGG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAOhD;AAUD;;;GAGG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAgC3E;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAUhF;AAID,sCAAsC;AACtC,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C;AAED,oCAAoC;AACpC,wBAAgB,aAAa,IAAI,MAAM,EAAE,CAExC;AAED,oEAAoE;AACpE,wBAAgB,kBAAkB,IAAI,MAAM,CAkB3C;AAED,mCAAmC;AACnC,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,iCAAiC;AACjC,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED,4BAA4B;AAC5B,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,0BAA0B;AAC1B,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEnD;AAID,wBAAgB,sBAAsB,IAAI,IAAI,CAkD7C"}
@@ -0,0 +1,191 @@
1
+ // kbot Self-Improving Behaviour System
2
+ //
3
+ // Inspired by Agent Zero's behaviour_adjustment pattern.
4
+ // The agent can modify its own rules at runtime, which persist
5
+ // across sessions and are injected into the system prompt.
6
+ //
7
+ // Two behaviour files:
8
+ // ~/.kbot/memory/behaviour.md — general rules
9
+ // ~/.kbot/music-memory/music-behaviour.md — music-specific rules
10
+ //
11
+ // Rules are human-readable markdown lines:
12
+ // - Always use TypeScript for new files
13
+ // - User prefers terse responses
14
+ // - When making trap beats, use Roland Cloud instruments
15
+ // - Hi-hats should be sparse (max 8th notes)
16
+ import { homedir } from 'node:os';
17
+ import { join } from 'node:path';
18
+ import { existsSync, readFileSync, writeFileSync, mkdirSync } from 'node:fs';
19
+ import { registerTool } from './tools/index.js';
20
+ const GENERAL_BEHAVIOUR = join(homedir(), '.kbot', 'memory', 'behaviour.md');
21
+ const MUSIC_BEHAVIOUR = join(homedir(), '.kbot', 'music-memory', 'music-behaviour.md');
22
+ function ensureFile(path, defaultContent) {
23
+ const dir = join(path, '..');
24
+ if (!existsSync(dir))
25
+ mkdirSync(dir, { recursive: true });
26
+ if (!existsSync(path))
27
+ writeFileSync(path, defaultContent);
28
+ }
29
+ /**
30
+ * Load behaviour rules from a file.
31
+ * Returns an array of rule strings.
32
+ */
33
+ export function loadRules(path) {
34
+ ensureFile(path, '# kbot Learned Behaviour\n\n');
35
+ const content = readFileSync(path, 'utf-8');
36
+ return content
37
+ .split('\n')
38
+ .filter(line => line.startsWith('- '))
39
+ .map(line => line.slice(2).trim());
40
+ }
41
+ /**
42
+ * Save rules to a file.
43
+ */
44
+ function saveRules(path, rules, header) {
45
+ const content = `# ${header}\n\n` + rules.map(r => `- ${r}`).join('\n') + '\n';
46
+ writeFileSync(path, content);
47
+ }
48
+ /**
49
+ * Add a new rule, avoiding exact duplicates.
50
+ * Returns true if the rule was added (not a duplicate).
51
+ */
52
+ export function addRule(path, rule, header) {
53
+ const rules = loadRules(path);
54
+ // Check for exact duplicate
55
+ if (rules.some(r => r.toLowerCase() === rule.toLowerCase())) {
56
+ return false;
57
+ }
58
+ // Check for near-duplicate (>80% word overlap)
59
+ const ruleWords = new Set(rule.toLowerCase().split(/\s+/));
60
+ for (const existing of rules) {
61
+ const existingWords = new Set(existing.toLowerCase().split(/\s+/));
62
+ const overlap = [...ruleWords].filter(w => existingWords.has(w)).length;
63
+ const total = new Set([...ruleWords, ...existingWords]).size;
64
+ if (total > 0 && overlap / total > 0.8) {
65
+ // Near duplicate — replace with the newer version
66
+ const idx = rules.indexOf(existing);
67
+ rules[idx] = rule;
68
+ saveRules(path, rules, header);
69
+ return true;
70
+ }
71
+ }
72
+ rules.push(rule);
73
+ // Cap at 50 rules (trim oldest)
74
+ if (rules.length > 50) {
75
+ rules.splice(0, rules.length - 50);
76
+ }
77
+ saveRules(path, rules, header);
78
+ return true;
79
+ }
80
+ /**
81
+ * Remove a rule by partial match.
82
+ */
83
+ export function removeRule(path, search, header) {
84
+ const rules = loadRules(path);
85
+ const lower = search.toLowerCase();
86
+ const idx = rules.findIndex(r => r.toLowerCase().includes(lower));
87
+ if (idx >= 0) {
88
+ rules.splice(idx, 1);
89
+ saveRules(path, rules, header);
90
+ return true;
91
+ }
92
+ return false;
93
+ }
94
+ // ── Public API ──────────────────────────────────────────────────────
95
+ /** Get all general behaviour rules */
96
+ export function getGeneralRules() {
97
+ return loadRules(GENERAL_BEHAVIOUR);
98
+ }
99
+ /** Get all music behaviour rules */
100
+ export function getMusicRules() {
101
+ return loadRules(MUSIC_BEHAVIOUR);
102
+ }
103
+ /** Get all rules combined, formatted for system prompt injection */
104
+ export function getBehaviourPrompt() {
105
+ const general = getGeneralRules();
106
+ const music = getMusicRules();
107
+ if (general.length === 0 && music.length === 0)
108
+ return '';
109
+ const lines = ['## Learned Behaviour (self-improving rules)', ''];
110
+ if (general.length > 0) {
111
+ lines.push('### General');
112
+ for (const r of general)
113
+ lines.push(`- ${r}`);
114
+ lines.push('');
115
+ }
116
+ if (music.length > 0) {
117
+ lines.push('### Music Production');
118
+ for (const r of music)
119
+ lines.push(`- ${r}`);
120
+ lines.push('');
121
+ }
122
+ return lines.join('\n');
123
+ }
124
+ /** Add a general behaviour rule */
125
+ export function learnGeneral(rule) {
126
+ return addRule(GENERAL_BEHAVIOUR, rule, 'kbot Learned Behaviour');
127
+ }
128
+ /** Add a music behaviour rule */
129
+ export function learnMusic(rule) {
130
+ return addRule(MUSIC_BEHAVIOUR, rule, 'kbot Music Production Preferences');
131
+ }
132
+ /** Remove a general rule */
133
+ export function forgetGeneral(search) {
134
+ return removeRule(GENERAL_BEHAVIOUR, search, 'kbot Learned Behaviour');
135
+ }
136
+ /** Remove a music rule */
137
+ export function forgetMusic(search) {
138
+ return removeRule(MUSIC_BEHAVIOUR, search, 'kbot Music Production Preferences');
139
+ }
140
+ // ── Tool Registration ───────────────────────────────────────────────
141
+ export function registerBehaviourTools() {
142
+ registerTool({
143
+ name: 'adjust_behaviour',
144
+ description: 'Self-improvement: add or remove a learned behaviour rule. kbot remembers these rules across sessions and applies them automatically. Use this when the user expresses a preference, corrects a mistake, or when you discover a pattern that should persist.',
145
+ parameters: {
146
+ action: { type: 'string', description: '"learn" to add a rule, "forget" to remove one, "list" to show all rules', required: true },
147
+ rule: { type: 'string', description: 'The rule to learn or forget. Be specific and actionable.' },
148
+ domain: { type: 'string', description: '"general" or "music" (default: general)' },
149
+ },
150
+ tier: 'free',
151
+ timeout: 5_000,
152
+ async execute(args) {
153
+ const action = String(args.action).toLowerCase();
154
+ const domain = String(args.domain || 'general').toLowerCase();
155
+ const isMusic = domain === 'music';
156
+ switch (action) {
157
+ case 'learn':
158
+ case 'add': {
159
+ const rule = String(args.rule || '');
160
+ if (!rule)
161
+ return 'No rule provided.';
162
+ const added = isMusic ? learnMusic(rule) : learnGeneral(rule);
163
+ return added
164
+ ? `Learned: "${rule}" — will apply this going forward.`
165
+ : `Already know this: "${rule}"`;
166
+ }
167
+ case 'forget':
168
+ case 'remove': {
169
+ const search = String(args.rule || '');
170
+ if (!search)
171
+ return 'No search term provided.';
172
+ const removed = isMusic ? forgetMusic(search) : forgetGeneral(search);
173
+ return removed
174
+ ? `Forgot rule matching "${search}".`
175
+ : `No rule found matching "${search}".`;
176
+ }
177
+ case 'list':
178
+ case 'show': {
179
+ const rules = isMusic ? getMusicRules() : getGeneralRules();
180
+ if (rules.length === 0)
181
+ return `No ${domain} behaviour rules learned yet.`;
182
+ return `## ${domain === 'music' ? 'Music' : 'General'} Behaviour Rules (${rules.length})\n\n` +
183
+ rules.map((r, i) => `${i + 1}. ${r}`).join('\n');
184
+ }
185
+ default:
186
+ return 'Unknown action. Use "learn", "forget", or "list".';
187
+ }
188
+ },
189
+ });
190
+ }
191
+ //# sourceMappingURL=behaviour.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"behaviour.js","sourceRoot":"","sources":["../src/behaviour.ts"],"names":[],"mappings":"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"}
package/dist/bootstrap.js CHANGED
@@ -640,7 +640,7 @@ export function formatBootstrapMarkdown(report) {
640
640
  lines.push(`*The bootstrap pattern: close the gap between what your project IS and what the world PERCEIVES.*`);
641
641
  lines.push(`*Fix one thing per run. Compound.*`);
642
642
  lines.push('');
643
- lines.push(`*[kbot](https://www.npmjs.com/package/@kernel.chat/kbot) — 23 agents, 290 tools, 20 providers*`);
643
+ lines.push(`*[kbot](https://www.npmjs.com/package/@kernel.chat/kbot) — 35 agents, 560+ tools, 20 providers*`);
644
644
  return lines.join('\n');
645
645
  }
646
646
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,124 @@
1
+ /**
2
+ * ableton-m4l.ts — kbot ↔ Max for Live Bridge Client
3
+ *
4
+ * Connects to the kbot-bridge M4L device via TCP on localhost:9999.
5
+ * Sends JSON commands, receives JSON responses.
6
+ * Replaces ableton-osc.ts for M4L-based Ableton control.
7
+ *
8
+ * Protocol:
9
+ * Send: {"id": 1, "action": "ping"}\n
10
+ * Receive: {"id": 1, "ok": true, "version": "1.0.0"}\n
11
+ *
12
+ * Advantages over OSC:
13
+ * - Full LOM access (41 classes, every property/method)
14
+ * - Proper boolean values (no T/F encoding issues)
15
+ * - No UDP packet size limits
16
+ * - Request/response correlation via IDs
17
+ * - Direct drum pad sample loading
18
+ * - Plugin preset browsing
19
+ */
20
+ export interface M4LCommand {
21
+ id: number;
22
+ action: string;
23
+ [key: string]: unknown;
24
+ }
25
+ export interface M4LResponse {
26
+ id: number;
27
+ ok: boolean;
28
+ error?: string;
29
+ [key: string]: unknown;
30
+ }
31
+ export type M4LEventHandler = (event: M4LResponse) => void;
32
+ export declare class AbletonM4L {
33
+ private static instance;
34
+ private socket;
35
+ private connected;
36
+ private pending;
37
+ private nextId;
38
+ private buffer;
39
+ private eventHandlers;
40
+ private reconnectTimer;
41
+ static PORT: number;
42
+ static HOST: string;
43
+ static TIMEOUT: number;
44
+ static RECONNECT_DELAY: number;
45
+ private constructor();
46
+ /**
47
+ * Get the singleton instance.
48
+ */
49
+ static getInstance(): AbletonM4L;
50
+ /**
51
+ * Connect to the M4L bridge device.
52
+ * Returns true if connected and the bridge responds to ping.
53
+ */
54
+ connect(): Promise<boolean>;
55
+ /**
56
+ * Disconnect from the bridge.
57
+ */
58
+ disconnect(): void;
59
+ /**
60
+ * Send a command and wait for a response.
61
+ */
62
+ send(cmd: Omit<M4LCommand, 'id'> & {
63
+ action: string;
64
+ }): Promise<M4LResponse>;
65
+ /**
66
+ * Send a command without waiting for a response (fire-and-forget).
67
+ * Still sends with an ID but doesn't track the response.
68
+ */
69
+ fire(cmd: Omit<M4LCommand, 'id'> & {
70
+ action: string;
71
+ }): void;
72
+ /**
73
+ * Register an event handler for push notifications from the bridge.
74
+ */
75
+ onEvent(handler: M4LEventHandler): () => void;
76
+ /**
77
+ * Check if connected.
78
+ */
79
+ get isConnected(): boolean;
80
+ private handleResponse;
81
+ private handleDisconnect;
82
+ ping(): Promise<boolean>;
83
+ setTempo(bpm: number): Promise<M4LResponse>;
84
+ createMidiTrack(index?: number): Promise<M4LResponse>;
85
+ deleteTrack(track: number): Promise<M4LResponse>;
86
+ loadPlugin(track: number, name: string, manufacturer?: string): Promise<M4LResponse>;
87
+ loadSampleToPad(track: number, pad: number, path: string): Promise<M4LResponse>;
88
+ createClip(track: number, slot: number, length: number, name?: string): Promise<M4LResponse>;
89
+ addNotes(track: number, slot: number, notes: Array<[number, number, number, number]>): Promise<M4LResponse>;
90
+ fireClip(track: number, slot: number): Promise<M4LResponse>;
91
+ setVolume(track: number, volume: number): Promise<M4LResponse>;
92
+ setSend(track: number, sendIdx: number, level: number): Promise<M4LResponse>;
93
+ getTrackInfo(track: number): Promise<M4LResponse>;
94
+ getDeviceParams(track: number, device: number): Promise<M4LResponse>;
95
+ setParam(track: number, device: number, param: string, value: number): Promise<M4LResponse>;
96
+ getSessionInfo(): Promise<M4LResponse>;
97
+ startPlaying(): Promise<M4LResponse>;
98
+ stopPlaying(): Promise<M4LResponse>;
99
+ setClipTriggerQuantization(value: number): Promise<M4LResponse>;
100
+ setTrackName(track: number, name: string): Promise<M4LResponse>;
101
+ setTrackColor(track: number, color: number): Promise<M4LResponse>;
102
+ muteTrack(track: number, mute: boolean): Promise<M4LResponse>;
103
+ armTrack(track: number, arm: boolean): Promise<M4LResponse>;
104
+ getNotes(track: number, slot: number): Promise<M4LResponse>;
105
+ removeNotes(track: number, slot: number): Promise<M4LResponse>;
106
+ getDrumPads(track: number): Promise<M4LResponse>;
107
+ browseAndLoad(track: number, category: string, search: string): Promise<M4LResponse>;
108
+ /** Generic LOM getter — access any property at any path */
109
+ lomGet(path: string, property: string): Promise<M4LResponse>;
110
+ /** Generic LOM setter — set any property at any path */
111
+ lomSet(path: string, property: string, value: unknown): Promise<M4LResponse>;
112
+ /** Generic LOM method call — call any method at any path */
113
+ lomCall(path: string, method: string, args?: unknown[]): Promise<M4LResponse>;
114
+ }
115
+ /**
116
+ * Get a connected M4L bridge instance.
117
+ * Throws if the bridge is not available.
118
+ */
119
+ export declare function ensureM4L(): Promise<AbletonM4L>;
120
+ /**
121
+ * Format a friendly error message for M4L connection failures.
122
+ */
123
+ export declare function formatM4LError(): string;
124
+ //# sourceMappingURL=ableton-m4l.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ableton-m4l.d.ts","sourceRoot":"","sources":["../../src/integrations/ableton-m4l.ts"],"names":[],"mappings":"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"}