expxagents 0.12.2 → 0.13.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 (62) hide show
  1. package/dist/dashboard/assets/{BufferResource-DTKCcSRK.js → BufferResource-D9aUIz5c.js} +1 -1
  2. package/dist/dashboard/assets/{CanvasRenderer-RC-R9HHB.js → CanvasRenderer-DfAInYD0.js} +1 -1
  3. package/dist/dashboard/assets/{JarvisView-BxEaO5CE.js → JarvisView-D78mY8i-.js} +1 -1
  4. package/dist/dashboard/assets/{RenderTargetSystem-BNs6mZy_.js → RenderTargetSystem-DZo6ujA0.js} +1 -1
  5. package/dist/dashboard/assets/{WebGLRenderer-DZqhYwUo.js → WebGLRenderer-BKreDG7Z.js} +1 -1
  6. package/dist/dashboard/assets/{WebGPURenderer-DKvNGGnd.js → WebGPURenderer-DeKuexG2.js} +1 -1
  7. package/dist/dashboard/assets/{browserAll-DpQDqd5Z.js → browserAll-3U5O7dnB.js} +1 -1
  8. package/dist/dashboard/assets/index-CahtAeF7.js +400 -0
  9. package/dist/dashboard/assets/index-DHu3wE8e.css +1 -0
  10. package/dist/dashboard/assets/{webworkerAll-DKgN-y6e.js → webworkerAll-CBlDUJVW.js} +1 -1
  11. package/dist/dashboard/index.html +2 -2
  12. package/dist/server/api/__tests__/integration-routes.test.d.ts +2 -0
  13. package/dist/server/api/__tests__/integration-routes.test.d.ts.map +1 -0
  14. package/dist/server/api/__tests__/integration-routes.test.js +243 -0
  15. package/dist/server/api/__tests__/integration-routes.test.js.map +1 -0
  16. package/dist/server/api/__tests__/team-routes.test.d.ts +2 -0
  17. package/dist/server/api/__tests__/team-routes.test.d.ts.map +1 -0
  18. package/dist/server/api/__tests__/team-routes.test.js +116 -0
  19. package/dist/server/api/__tests__/team-routes.test.js.map +1 -0
  20. package/dist/server/api/integration-routes.d.ts +23 -0
  21. package/dist/server/api/integration-routes.d.ts.map +1 -0
  22. package/dist/server/api/integration-routes.js +321 -0
  23. package/dist/server/api/integration-routes.js.map +1 -0
  24. package/dist/server/api/squads-routes.d.ts.map +1 -1
  25. package/dist/server/api/squads-routes.js +12 -1
  26. package/dist/server/api/squads-routes.js.map +1 -1
  27. package/dist/server/api/team-routes.d.ts +8 -0
  28. package/dist/server/api/team-routes.d.ts.map +1 -0
  29. package/dist/server/api/team-routes.js +55 -0
  30. package/dist/server/api/team-routes.js.map +1 -0
  31. package/dist/server/app.d.ts.map +1 -1
  32. package/dist/server/app.js +4 -0
  33. package/dist/server/app.js.map +1 -1
  34. package/dist/server/bridge/__tests__/claude-bridge.test.js +79 -11
  35. package/dist/server/bridge/__tests__/claude-bridge.test.js.map +1 -1
  36. package/dist/server/bridge/chat-handler.d.ts +6 -1
  37. package/dist/server/bridge/chat-handler.d.ts.map +1 -1
  38. package/dist/server/bridge/chat-handler.js +106 -5
  39. package/dist/server/bridge/chat-handler.js.map +1 -1
  40. package/dist/server/bridge/claude-bridge.d.ts +6 -0
  41. package/dist/server/bridge/claude-bridge.d.ts.map +1 -1
  42. package/dist/server/bridge/claude-bridge.js +90 -10
  43. package/dist/server/bridge/claude-bridge.js.map +1 -1
  44. package/dist/server/bridge/conversation.d.ts +1 -0
  45. package/dist/server/bridge/conversation.d.ts.map +1 -1
  46. package/dist/server/bridge/conversation.js +5 -0
  47. package/dist/server/bridge/conversation.js.map +1 -1
  48. package/dist/server/db/schema.d.ts +1 -1
  49. package/dist/server/db/schema.d.ts.map +1 -1
  50. package/dist/server/db/schema.js +18 -0
  51. package/dist/server/db/schema.js.map +1 -1
  52. package/dist/server/routes/__tests__/conversations.test.js +18 -1
  53. package/dist/server/routes/__tests__/conversations.test.js.map +1 -1
  54. package/dist/server/routes/conversations.d.ts.map +1 -1
  55. package/dist/server/routes/conversations.js +12 -1
  56. package/dist/server/routes/conversations.js.map +1 -1
  57. package/dist/server/ws/ws-handler.d.ts.map +1 -1
  58. package/dist/server/ws/ws-handler.js +17 -3
  59. package/dist/server/ws/ws-handler.js.map +1 -1
  60. package/package.json +1 -1
  61. package/dist/dashboard/assets/index-B-8_BLE5.css +0 -1
  62. package/dist/dashboard/assets/index-C_HJOTiO.js +0 -344
@@ -15,10 +15,27 @@ function createMockProcess() {
15
15
  const proc = new EventEmitter();
16
16
  proc.stdout = new EventEmitter();
17
17
  proc.stderr = new EventEmitter();
18
+ proc.stdin = { write: vi.fn(), end: vi.fn() };
18
19
  proc.kill = vi.fn();
19
20
  proc.pid = 12345;
20
21
  return proc;
21
22
  }
23
+ /** Emit a stream-json assistant event with a text block */
24
+ function emitTextEvent(proc, text) {
25
+ const evt = JSON.stringify({
26
+ type: 'assistant',
27
+ message: { content: [{ type: 'text', text }] },
28
+ });
29
+ proc.stdout.emit('data', Buffer.from(evt + '\n'));
30
+ }
31
+ /** Emit a stream-json assistant event with a tool_use block */
32
+ function emitToolUseEvent(proc, name, input = {}) {
33
+ const evt = JSON.stringify({
34
+ type: 'assistant',
35
+ message: { content: [{ type: 'tool_use', name, input }] },
36
+ });
37
+ proc.stdout.emit('data', Buffer.from(evt + '\n'));
38
+ }
22
39
  describe('ClaudeBridge', () => {
23
40
  let bridge;
24
41
  beforeEach(() => {
@@ -29,7 +46,7 @@ describe('ClaudeBridge', () => {
29
46
  vi.useRealTimers();
30
47
  vi.restoreAllMocks();
31
48
  });
32
- it('should spawn claude with correct arguments', () => {
49
+ it('should spawn claude with correct arguments and pipe prompt via stdin', () => {
33
50
  const mockProc = createMockProcess();
34
51
  mockSpawn.mockReturnValue(mockProc);
35
52
  bridge.send({
@@ -39,11 +56,44 @@ describe('ClaudeBridge', () => {
39
56
  onDone: vi.fn(),
40
57
  onError: vi.fn(),
41
58
  });
42
- expect(mockSpawn).toHaveBeenCalledWith('claude', ['-p', '--output-format', 'text', expect.any(String)], expect.objectContaining({
59
+ expect(mockSpawn).toHaveBeenCalledWith('claude', ['-p', '--output-format', 'stream-json', '--verbose', '--dangerously-skip-permissions'], expect.objectContaining({
43
60
  cwd: '/tmp/test-squad',
61
+ stdio: ['pipe', 'pipe', 'pipe'],
44
62
  }));
63
+ // Prompt should be written to stdin
64
+ expect(mockProc.stdin.write).toHaveBeenCalledWith('Hello Claude');
65
+ expect(mockProc.stdin.end).toHaveBeenCalled();
45
66
  });
46
- it('should emit chunks from stdout', () => {
67
+ it('should add --continue flag when continueSession is true', () => {
68
+ const mockProc = createMockProcess();
69
+ mockSpawn.mockReturnValue(mockProc);
70
+ bridge.send({
71
+ prompt: 'Follow up',
72
+ cwd: '/tmp/test-squad',
73
+ continueSession: true,
74
+ onChunk: vi.fn(),
75
+ onDone: vi.fn(),
76
+ onError: vi.fn(),
77
+ });
78
+ const args = mockSpawn.mock.calls[0][1];
79
+ expect(args).toContain('--continue');
80
+ });
81
+ it('should add --resume flag with session ID when provided', () => {
82
+ const mockProc = createMockProcess();
83
+ mockSpawn.mockReturnValue(mockProc);
84
+ bridge.send({
85
+ prompt: 'Resume',
86
+ cwd: '/tmp/test-squad',
87
+ resumeSessionId: 'session-abc',
88
+ onChunk: vi.fn(),
89
+ onDone: vi.fn(),
90
+ onError: vi.fn(),
91
+ });
92
+ const args = mockSpawn.mock.calls[0][1];
93
+ expect(args).toContain('--resume');
94
+ expect(args).toContain('session-abc');
95
+ });
96
+ it('should emit chunks from stdout (stream-json format)', () => {
47
97
  const mockProc = createMockProcess();
48
98
  mockSpawn.mockReturnValue(mockProc);
49
99
  const onChunk = vi.fn();
@@ -55,8 +105,8 @@ describe('ClaudeBridge', () => {
55
105
  onDone,
56
106
  onError: vi.fn(),
57
107
  });
58
- mockProc.stdout.emit('data', Buffer.from('Hello '));
59
- mockProc.stdout.emit('data', Buffer.from('world'));
108
+ emitTextEvent(mockProc, 'Hello ');
109
+ emitTextEvent(mockProc, 'world');
60
110
  mockProc.emit('close', 0);
61
111
  expect(onChunk).toHaveBeenCalledTimes(2);
62
112
  expect(onChunk).toHaveBeenNthCalledWith(1, 'Hello ');
@@ -109,7 +159,7 @@ describe('ClaudeBridge', () => {
109
159
  onDone,
110
160
  onError,
111
161
  });
112
- mockProc.stdout.emit('data', Buffer.from('Partial response'));
162
+ emitTextEvent(mockProc, 'Partial response');
113
163
  // Advance past timeout
114
164
  vi.advanceTimersByTime(5000);
115
165
  expect(mockProc.kill).toHaveBeenCalledWith('SIGTERM');
@@ -157,8 +207,8 @@ describe('ClaudeBridge', () => {
157
207
  onDone,
158
208
  onError: vi.fn(),
159
209
  });
160
- mockProc.stdout.emit('data', Buffer.from('Hello '));
161
- mockProc.stdout.emit('data', Buffer.from('world'));
210
+ emitTextEvent(mockProc, 'Hello ');
211
+ emitTextEvent(mockProc, 'world');
162
212
  mockProc.emit('close', 0);
163
213
  expect(onChunk).toHaveBeenCalledTimes(2);
164
214
  expect(onOutputChunk).toHaveBeenCalledTimes(2);
@@ -180,7 +230,7 @@ describe('ClaudeBridge', () => {
180
230
  onDone: vi.fn(),
181
231
  onError: vi.fn(),
182
232
  });
183
- mockProc.stdout.emit('data', Buffer.from('Some output'));
233
+ emitTextEvent(mockProc, 'Some output');
184
234
  mockProc.emit('close', 0);
185
235
  expect(onOutputChunk).not.toHaveBeenCalled();
186
236
  });
@@ -198,10 +248,28 @@ describe('ClaudeBridge', () => {
198
248
  onDone: vi.fn(),
199
249
  onError: vi.fn(),
200
250
  });
201
- mockProc.stdout.emit('data', Buffer.from('Some output'));
251
+ emitTextEvent(mockProc, 'Some output');
202
252
  mockProc.emit('close', 0);
203
253
  expect(onChunk).toHaveBeenCalledWith('Some output');
204
- // No error thrown is the assertion here (test completes without throwing)
254
+ });
255
+ it('should call onActivity when tool_use events arrive', () => {
256
+ const mockProc = createMockProcess();
257
+ mockSpawn.mockReturnValue(mockProc);
258
+ const onActivity = vi.fn();
259
+ bridge.send({
260
+ prompt: 'Hello',
261
+ cwd: '/tmp/test-squad',
262
+ onChunk: vi.fn(),
263
+ onDone: vi.fn(),
264
+ onError: vi.fn(),
265
+ onActivity,
266
+ });
267
+ emitToolUseEvent(mockProc, 'Read', { file_path: 'src/app.ts' });
268
+ emitToolUseEvent(mockProc, 'Bash', { command: 'npm test' });
269
+ mockProc.emit('close', 0);
270
+ expect(onActivity).toHaveBeenCalledTimes(2);
271
+ expect(onActivity).toHaveBeenNthCalledWith(1, 'Read', 'src/app.ts');
272
+ expect(onActivity).toHaveBeenNthCalledWith(2, 'Bash', 'npm test');
205
273
  });
206
274
  it('should pass full process environment', () => {
207
275
  const mockProc = createMockProcess();
@@ -1 +1 @@
1
- {"version":3,"file":"claude-bridge.test.js","sourceRoot":"","sources":["../../../src/bridge/__tests__/claude-bridge.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-bridge.test.js","sourceRoot":"","sources":["../../../src/bridge/__tests__/claude-bridge.test.ts"],"names":[],"mappings":"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"}
@@ -12,10 +12,15 @@ export declare class ChatHandler {
12
12
  private broadcast;
13
13
  private squadsDir;
14
14
  constructor(config: ChatHandlerConfig);
15
- handleChatSend(squadName: string, message: string): void;
15
+ handleChatSend(squadName: string, message: string, files?: Array<{
16
+ name: string;
17
+ content: string;
18
+ }>): void;
16
19
  handleNewConversation(squadName: string): void;
17
20
  /** Read available squads from squadsDir for context injection */
18
21
  private getSquadsContext;
22
+ /** Read ExpxAgents skill content from .claude/skills/expxagents/SKILL.md */
23
+ private getExpxAgentsSkillContent;
19
24
  /** Read company context from _expxagents/_memory/company.md if configured */
20
25
  private getCompanyContext;
21
26
  private buildPrompt;
@@ -1 +1 @@
1
- {"version":3,"file":"chat-handler.d.ts","sourceRoot":"","sources":["../../src/bridge/chat-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAmBvD,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACzE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,SAAS,CAAgE;IACjF,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,EAAE,iBAAiB;IAOrC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IA8ExD,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAS9C,iEAAiE;IACjE,OAAO,CAAC,gBAAgB;IA6BxB,6EAA6E;IAC7E,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,WAAW;CAkDpB"}
1
+ {"version":3,"file":"chat-handler.d.ts","sourceRoot":"","sources":["../../src/bridge/chat-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAmBvD,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACzE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,SAAS,CAAgE;IACjF,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,EAAE,iBAAiB;IAOrC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI;IA2G1G,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAS9C,iEAAiE;IACjE,OAAO,CAAC,gBAAgB;IA6BxB,4EAA4E;IAC5E,OAAO,CAAC,yBAAyB;IAejC,6EAA6E;IAC7E,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,WAAW;CA8GpB"}
@@ -14,7 +14,7 @@ export class ChatHandler {
14
14
  this.broadcast = config.broadcast;
15
15
  this.squadsDir = config.squadsDir;
16
16
  }
17
- handleChatSend(squadName, message) {
17
+ handleChatSend(squadName, message, files) {
18
18
  const { conversation, created } = getOrCreateConversation(this.db, squadName);
19
19
  if (created) {
20
20
  this.broadcast(squadName, {
@@ -28,18 +28,35 @@ export class ChatHandler {
28
28
  role: 'user',
29
29
  content: message,
30
30
  });
31
- const prompt = this.buildPrompt(squadName, conversation.id, message);
31
+ const prompt = this.buildPrompt(squadName, conversation.id, message, files);
32
+ console.log(`[chat] squad="${squadName}" prompt=${prompt.length} chars cwd will be projectRoot or squadsDir`);
32
33
  // Log activity start
33
34
  const activity = logActivityStart(this.db, {
34
35
  squadCode: squadName,
35
36
  conversationId: conversation.id,
36
37
  userMessage: message,
37
38
  });
39
+ const projectRoot = path.resolve(this.squadsDir, '..');
40
+ let cwd;
41
+ if (squadName === '_jarvis' || squadName === '_expxagents') {
42
+ cwd = projectRoot;
43
+ }
44
+ else {
45
+ cwd = path.join(this.squadsDir, squadName);
46
+ }
38
47
  this.bridge.send({
39
48
  prompt,
40
- // _jarvis runs at project root (parent of squadsDir); regular squads run in their own directory
41
- cwd: squadName === '_jarvis' ? path.resolve(this.squadsDir, '..') : path.join(this.squadsDir, squadName),
49
+ cwd,
42
50
  squadName,
51
+ onActivity: (tool, summary) => {
52
+ this.broadcast(squadName, {
53
+ type: 'chat:activity',
54
+ squadName,
55
+ conversationId: conversation.id,
56
+ tool,
57
+ summary,
58
+ });
59
+ },
43
60
  onOutputChunk: (agentId, agentName, delta) => {
44
61
  this.broadcast(squadName, {
45
62
  type: 'agent:output_chunk',
@@ -58,6 +75,17 @@ export class ChatHandler {
58
75
  });
59
76
  },
60
77
  onDone: (fullText) => {
78
+ // If Claude returned nothing, surface as error instead of blank message
79
+ if (!fullText.trim()) {
80
+ console.log(`[chat] WARNING: empty response from Claude for squad="${squadName}"`);
81
+ logActivityFail(this.db, activity.id, 'Empty response from Claude');
82
+ this.broadcast(squadName, {
83
+ type: 'chat:error',
84
+ squadName,
85
+ error: 'Claude returned an empty response. Check server logs for details.',
86
+ });
87
+ return;
88
+ }
61
89
  const assistantMsg = insertMessage(this.db, {
62
90
  conversationId: conversation.id,
63
91
  role: 'assistant',
@@ -125,6 +153,25 @@ export class ChatHandler {
125
153
  return '';
126
154
  }
127
155
  }
156
+ /** Read ExpxAgents skill content from .claude/skills/expxagents/SKILL.md */
157
+ getExpxAgentsSkillContent() {
158
+ try {
159
+ const projectRoot = path.resolve(this.squadsDir, '..');
160
+ const skillPath = path.join(projectRoot, '.claude', 'skills', 'expxagents', 'SKILL.md');
161
+ if (!fs.existsSync(skillPath))
162
+ return '';
163
+ let content = fs.readFileSync(skillPath, 'utf-8');
164
+ // Strip YAML frontmatter
165
+ const fmMatch = content.match(/^---\n[\s\S]*?\n---\n/);
166
+ if (fmMatch) {
167
+ content = content.slice(fmMatch[0].length);
168
+ }
169
+ return content.trim();
170
+ }
171
+ catch {
172
+ return '';
173
+ }
174
+ }
128
175
  /** Read company context from _expxagents/_memory/company.md if configured */
129
176
  getCompanyContext() {
130
177
  try {
@@ -141,7 +188,55 @@ export class ChatHandler {
141
188
  return '';
142
189
  }
143
190
  }
144
- buildPrompt(squadName, conversationId, userMessage) {
191
+ buildPrompt(squadName, conversationId, userMessage, files) {
192
+ // _expxagents channel: always include full context + conversation history
193
+ // Each claude -p invocation is independent, so we must provide all context every time
194
+ // IMPORTANT: Do NOT use raw SKILL.md here — it instructs Claude to read files and use
195
+ // interactive tools (AskUserQuestion) which don't work in -p mode. Instead, provide
196
+ // a chat-optimized system prompt with pre-injected context.
197
+ if (squadName === '_expxagents') {
198
+ const parts = [];
199
+ parts.push('You are ExpxAgents, an AI assistant for managing AI agent squads. ' +
200
+ 'You help users create, manage, and run squads. Respond concisely in Portuguese.\n' +
201
+ 'IMPORTANT: Do NOT use tools to read files — all relevant context is provided below. ' +
202
+ 'Just respond directly with text to the user\'s message.');
203
+ parts.push(this.getCompanyContext());
204
+ parts.push(this.getSquadsContext());
205
+ // Include conversation history so Claude has continuity across -p invocations
206
+ const history = getRecentMessages(this.db, conversationId, 10);
207
+ // Exclude: current user message (just inserted) and empty assistant responses
208
+ const pastMessages = history.filter((msg) => {
209
+ // Skip empty/whitespace-only messages
210
+ if (!msg.content.trim())
211
+ return false;
212
+ // Skip the current user message (last in array)
213
+ if (msg.role === 'user' && msg.content === userMessage && msg === history[history.length - 1])
214
+ return false;
215
+ return true;
216
+ });
217
+ if (pastMessages.length > 0) {
218
+ const historyText = pastMessages
219
+ .map((msg) => {
220
+ if (msg.role === 'user')
221
+ return `User: ${msg.content}`;
222
+ if (msg.role === 'assistant')
223
+ return `Assistant: ${msg.content}`;
224
+ return '';
225
+ })
226
+ .filter(Boolean)
227
+ .join('\n');
228
+ parts.push(`\n\nConversation so far:\n${historyText}`);
229
+ }
230
+ if (files && files.length > 0) {
231
+ parts.push('\n\n# Attached files:\n');
232
+ for (const f of files) {
233
+ parts.push(`\n## File: ${f.name}\n\`\`\`\n${f.content}\n\`\`\`\n`);
234
+ }
235
+ }
236
+ parts.push(`\n\nUser: ${userMessage}`);
237
+ return parts.join('');
238
+ }
239
+ // Other channels: include history since they don't use --continue
145
240
  const history = getRecentMessages(this.db, conversationId, 10);
146
241
  const historyText = history
147
242
  .map((msg) => {
@@ -180,6 +275,12 @@ export class ChatHandler {
180
275
  if (historyText) {
181
276
  parts.push(`\nConversation:\n${historyText}`);
182
277
  }
278
+ if (files && files.length > 0) {
279
+ parts.push('\n\n# Attached files:\n');
280
+ for (const f of files) {
281
+ parts.push(`\n## File: ${f.name}\n\`\`\`\n${f.content}\n\`\`\`\n`);
282
+ }
283
+ }
183
284
  parts.push(`\nUser: ${userMessage}`);
184
285
  return parts.join('');
185
286
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chat-handler.js","sourceRoot":"","sources":["../../src/bridge/chat-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-handler.js","sourceRoot":"","sources":["../../src/bridge/chat-handler.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,14 @@ export interface BridgeSendOptions {
8
8
  squadName?: string;
9
9
  agentId?: string;
10
10
  agentName?: string;
11
+ /** Resume a previous Claude session by ID */
12
+ resumeSessionId?: string;
13
+ /** Continue the most recent session in the cwd */
14
+ continueSession?: boolean;
11
15
  onChunk: (text: string) => void;
12
16
  onOutputChunk?: (agentId: string, agentName: string, delta: string) => void;
17
+ /** Called when Claude uses a tool — gives visibility into what's happening */
18
+ onActivity?: (tool: string, summary: string) => void;
13
19
  onDone: (fullText: string) => void;
14
20
  onError: (error: BridgeError) => void;
15
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"claude-bridge.d.ts","sourceRoot":"","sources":["../../src/bridge/claude-bridge.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5E,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,eAAe,CAAwC;IAC/D,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC;IAI1C,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAiFnC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIpC,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;CAM9B"}
1
+ {"version":3,"file":"claude-bridge.d.ts","sourceRoot":"","sources":["../../src/bridge/claude-bridge.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kDAAkD;IAClD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5E,8EAA8E;IAC9E,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB;AAyBD,qBAAa,YAAY;IACvB,OAAO,CAAC,eAAe,CAAwC;IAC/D,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC;IAI1C,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAgJnC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIpC,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;CAM9B"}
@@ -1,4 +1,26 @@
1
1
  import { spawn } from 'child_process';
2
+ /** Summarise a tool_use input into a short human-readable string */
3
+ function summariseToolInput(name, input) {
4
+ switch (name) {
5
+ case 'Read':
6
+ return `${input.file_path ?? ''}`;
7
+ case 'Edit':
8
+ case 'Write':
9
+ return `${input.file_path ?? ''}`;
10
+ case 'Bash':
11
+ return `${(input.command ?? '').slice(0, 80)}`;
12
+ case 'Glob':
13
+ return `${input.pattern ?? ''}`;
14
+ case 'Grep':
15
+ return `/${input.pattern ?? ''}/`;
16
+ case 'WebFetch':
17
+ return `${input.url ?? ''}`;
18
+ case 'WebSearch':
19
+ return `"${input.query ?? ''}"`;
20
+ default:
21
+ return '';
22
+ }
23
+ }
2
24
  export class ClaudeBridge {
3
25
  activeProcesses = new Map();
4
26
  timeoutMs;
@@ -14,12 +36,19 @@ export class ClaudeBridge {
14
36
  });
15
37
  return;
16
38
  }
39
+ const args = ['-p', '--output-format', 'stream-json', '--verbose', '--dangerously-skip-permissions'];
40
+ if (opts.resumeSessionId) {
41
+ args.push('--resume', opts.resumeSessionId);
42
+ }
43
+ else if (opts.continueSession) {
44
+ args.push('--continue');
45
+ }
17
46
  let proc;
18
47
  try {
19
- proc = spawn('claude', ['-p', '--output-format', 'text', opts.prompt], {
48
+ proc = spawn('claude', args, {
20
49
  cwd: opts.cwd,
21
50
  env: { ...process.env },
22
- stdio: ['ignore', 'pipe', 'pipe'],
51
+ stdio: ['pipe', 'pipe', 'pipe'],
23
52
  });
24
53
  }
25
54
  catch {
@@ -27,8 +56,13 @@ export class ClaudeBridge {
27
56
  return;
28
57
  }
29
58
  this.activeProcesses.set(key, proc);
59
+ // Write prompt via stdin (handles long prompts safely)
60
+ console.log(`[bridge] spawn claude PID=${proc.pid} key="${key}" prompt=${opts.prompt.length} chars`);
61
+ proc.stdin?.write(opts.prompt);
62
+ proc.stdin?.end();
30
63
  let stderrBuffer = '';
31
64
  let fullText = '';
65
+ let lineBuffer = '';
32
66
  let settled = false;
33
67
  let killTimer;
34
68
  const cleanup = () => {
@@ -44,18 +78,56 @@ export class ClaudeBridge {
44
78
  proc.kill('SIGKILL');
45
79
  }, 5000);
46
80
  }, this.timeoutMs);
47
- proc.stdout?.on('data', (data) => {
48
- const text = data.toString('utf-8');
49
- if (text.length > 0) {
50
- fullText += text;
51
- opts.onChunk(text);
52
- if (opts.onOutputChunk && opts.agentId && opts.agentName) {
53
- opts.onOutputChunk(opts.agentId, opts.agentName, text);
81
+ const processJsonLine = (line) => {
82
+ if (!line.trim())
83
+ return;
84
+ try {
85
+ const evt = JSON.parse(line);
86
+ if (evt.type === 'assistant' && evt.message?.content) {
87
+ for (const block of evt.message.content) {
88
+ if (block.type === 'text' && block.text) {
89
+ const text = block.text;
90
+ fullText += text;
91
+ opts.onChunk(text);
92
+ if (opts.onOutputChunk && opts.agentId && opts.agentName) {
93
+ opts.onOutputChunk(opts.agentId, opts.agentName, text);
94
+ }
95
+ }
96
+ if (block.type === 'tool_use' && opts.onActivity) {
97
+ const toolName = block.name;
98
+ const input = (block.input ?? {});
99
+ const summary = summariseToolInput(toolName, input);
100
+ opts.onActivity(toolName, summary);
101
+ }
102
+ }
54
103
  }
104
+ if (evt.type === 'result' && typeof evt.result === 'string') {
105
+ // Result text is authoritative — use it if we missed chunks
106
+ if (!fullText.trim() && evt.result.trim()) {
107
+ fullText = evt.result;
108
+ opts.onChunk(evt.result);
109
+ }
110
+ }
111
+ }
112
+ catch {
113
+ // Not valid JSON — ignore (could be partial line)
114
+ }
115
+ };
116
+ proc.stdout?.on('data', (data) => {
117
+ const chunk = data.toString('utf-8');
118
+ lineBuffer += chunk;
119
+ // Process complete lines (newline-delimited JSON)
120
+ let newlineIndex;
121
+ while ((newlineIndex = lineBuffer.indexOf('\n')) !== -1) {
122
+ const line = lineBuffer.slice(0, newlineIndex);
123
+ lineBuffer = lineBuffer.slice(newlineIndex + 1);
124
+ processJsonLine(line);
55
125
  }
56
126
  });
57
127
  proc.stderr?.on('data', (data) => {
58
- stderrBuffer += data.toString('utf-8');
128
+ const text = data.toString('utf-8');
129
+ stderrBuffer += text;
130
+ console.log(`[bridge] stderr: ${text.slice(0, 300)}`);
59
131
  });
60
132
  proc.on('error', (_err) => {
61
133
  if (settled)
@@ -65,15 +137,23 @@ export class ClaudeBridge {
65
137
  opts.onError({ code: null, message: 'Claude Code CLI not available' });
66
138
  });
67
139
  proc.on('close', (code) => {
140
+ // Process any remaining buffered data
141
+ if (lineBuffer.trim()) {
142
+ processJsonLine(lineBuffer);
143
+ lineBuffer = '';
144
+ }
145
+ console.log(`[bridge] close code=${code} fullText=${fullText.length} chars stderr=${stderrBuffer.length} chars`);
68
146
  if (settled)
69
147
  return;
70
148
  settled = true;
71
149
  cleanup();
72
150
  if (code !== 0 && code !== null) {
73
151
  const lastLine = stderrBuffer.trim().split('\n').pop() ?? 'Unknown error';
152
+ console.log(`[bridge] ERROR: exit ${code} — ${lastLine}`);
74
153
  opts.onError({ code, message: `Exit code ${code}: ${lastLine}` });
75
154
  }
76
155
  else {
156
+ console.log(`[bridge] SUCCESS: ${fullText.slice(0, 200)}`);
77
157
  opts.onDone(fullText);
78
158
  }
79
159
  });
@@ -1 +1 @@
1
- {"version":3,"file":"claude-bridge.js","sourceRoot":"","sources":["../../src/bridge/claude-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-bridge.js","sourceRoot":"","sources":["../../src/bridge/claude-bridge.ts"],"names":[],"mappings":"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"}
@@ -40,5 +40,6 @@ export declare function getConversations(db: Database.Database, squadName: strin
40
40
  limit: number;
41
41
  cursor?: string;
42
42
  }): PaginatedResult<Conversation>;
43
+ export declare function deleteConversation(db: Database.Database, conversationId: string): boolean;
43
44
  export declare function getRecentMessages(db: Database.Database, conversationId: string, count: number): ChatMessage[];
44
45
  //# sourceMappingURL=conversation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../src/bridge/conversation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAgB,UAAU,IAAI,MAAM,CAInC;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,CAOzF;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAKnG;AAED,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,GAChB;IAAE,YAAY,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAOlD;AAED,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,mBAAmB,GAAG,WAAW,CAmB7F;AAED,wBAAgB,WAAW,CACzB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACvC,eAAe,CAAC,WAAW,CAAC,CAmB9B;AAED,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACvC,eAAe,CAAC,YAAY,CAAC,CAmB/B;AAED,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,MAAM,GACZ,WAAW,EAAE,CAKf"}
1
+ {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../src/bridge/conversation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAgB,UAAU,IAAI,MAAM,CAInC;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,CAOzF;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAKnG;AAED,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,GAChB;IAAE,YAAY,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAOlD;AAED,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,mBAAmB,GAAG,WAAW,CAmB7F;AAED,wBAAgB,WAAW,CACzB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACvC,eAAe,CAAC,WAAW,CAAC,CAmB9B;AAED,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACvC,eAAe,CAAC,YAAY,CAAC,CAmB/B;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAIzF;AAED,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,MAAM,GACZ,WAAW,EAAE,CAKf"}