tuplet 2.11.0 → 2.16.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 (49) hide show
  1. package/README.md +8 -1
  2. package/dist/activity.d.ts +143 -0
  3. package/dist/activity.d.ts.map +1 -0
  4. package/dist/activity.js +423 -0
  5. package/dist/activity.js.map +1 -0
  6. package/dist/activity.test.d.ts +2 -0
  7. package/dist/activity.test.d.ts.map +1 -0
  8. package/dist/activity.test.js +589 -0
  9. package/dist/activity.test.js.map +1 -0
  10. package/dist/agent.d.ts.map +1 -1
  11. package/dist/agent.js +51 -21
  12. package/dist/agent.js.map +1 -1
  13. package/dist/built-in-agents/explore.d.ts.map +1 -1
  14. package/dist/built-in-agents/explore.js +6 -5
  15. package/dist/built-in-agents/explore.js.map +1 -1
  16. package/dist/executor.d.ts.map +1 -1
  17. package/dist/executor.js +71 -44
  18. package/dist/executor.js.map +1 -1
  19. package/dist/index.d.ts +1 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +2 -0
  22. package/dist/index.js.map +1 -1
  23. package/dist/prompt/sub-agent-builder.d.ts.map +1 -1
  24. package/dist/prompt/sub-agent-builder.js +5 -3
  25. package/dist/prompt/sub-agent-builder.js.map +1 -1
  26. package/dist/providers/workspace/file.d.ts.map +1 -1
  27. package/dist/providers/workspace/file.js +6 -0
  28. package/dist/providers/workspace/file.js.map +1 -1
  29. package/dist/shell/commands/curl.d.ts.map +1 -1
  30. package/dist/shell/commands/curl.js +9 -1
  31. package/dist/shell/commands/curl.js.map +1 -1
  32. package/dist/shell/shell.d.ts.map +1 -1
  33. package/dist/shell/shell.js +5 -1
  34. package/dist/shell/shell.js.map +1 -1
  35. package/dist/shell/shell.test.js +4 -0
  36. package/dist/shell/shell.test.js.map +1 -1
  37. package/dist/tools/shell.d.ts.map +1 -1
  38. package/dist/tools/shell.js +14 -0
  39. package/dist/tools/shell.js.map +1 -1
  40. package/dist/tools/sub-agent.d.ts.map +1 -1
  41. package/dist/tools/sub-agent.js +20 -3
  42. package/dist/tools/sub-agent.js.map +1 -1
  43. package/dist/types.d.ts +12 -2
  44. package/dist/types.d.ts.map +1 -1
  45. package/dist/workspace.d.ts +22 -3
  46. package/dist/workspace.d.ts.map +1 -1
  47. package/dist/workspace.js +60 -16
  48. package/dist/workspace.js.map +1 -1
  49. package/package.json +1 -1
@@ -0,0 +1,589 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { describeActivity, extractShellActivity, extractPipelineActivity, classifyTool } from './activity.js';
3
+ // ============================================================================
4
+ // describeActivity
5
+ // ============================================================================
6
+ describe('describeActivity', () => {
7
+ // ---- Shell activities ----
8
+ describe('shell:http_request', () => {
9
+ it('shows hostname when URL is available', () => {
10
+ expect(describeActivity({
11
+ type: 'shell:http_request', url: 'https://api.stripe.com/v1/charges', method: 'POST'
12
+ })).toBe('Requesting api.stripe.com...');
13
+ });
14
+ it('falls back to method when no URL', () => {
15
+ expect(describeActivity({
16
+ type: 'shell:http_request', method: 'POST'
17
+ })).toBe('Sending POST request...');
18
+ });
19
+ it('falls back to method when URL is invalid', () => {
20
+ expect(describeActivity({
21
+ type: 'shell:http_request', url: 'not-a-url', method: 'GET'
22
+ })).toBe('Sending GET request...');
23
+ });
24
+ });
25
+ describe('shell:browse', () => {
26
+ it('shows hostname', () => {
27
+ expect(describeActivity({
28
+ type: 'shell:browse', url: 'https://docs.python.org/3/library/json.html'
29
+ })).toBe('Browsing docs.python.org...');
30
+ });
31
+ it('falls back without URL', () => {
32
+ expect(describeActivity({ type: 'shell:browse' })).toBe('Browsing web page...');
33
+ });
34
+ });
35
+ describe('shell:file_read', () => {
36
+ it('shows basename', () => {
37
+ expect(describeActivity({
38
+ type: 'shell:file_read', path: 'src/utils/format.ts'
39
+ })).toBe('Reading format.ts...');
40
+ });
41
+ it('falls back without path', () => {
42
+ expect(describeActivity({ type: 'shell:file_read' })).toBe('Reading file...');
43
+ });
44
+ });
45
+ describe('shell:file_write', () => {
46
+ it('shows target for redirect', () => {
47
+ expect(describeActivity({
48
+ type: 'shell:file_write', target: 'output.csv'
49
+ })).toBe('Writing to output.csv...');
50
+ });
51
+ it('shows path for edit', () => {
52
+ expect(describeActivity({
53
+ type: 'shell:file_write', path: '/etc/config.yaml'
54
+ })).toBe('Editing config.yaml...');
55
+ });
56
+ it('falls back without path or target', () => {
57
+ expect(describeActivity({ type: 'shell:file_write' })).toBe('Writing file...');
58
+ });
59
+ });
60
+ describe('shell:file_search', () => {
61
+ it('shows pattern for grep', () => {
62
+ expect(describeActivity({
63
+ type: 'shell:file_search', pattern: 'TODO'
64
+ })).toBe('Searching for "TODO"...');
65
+ });
66
+ it('shows namePattern for find', () => {
67
+ expect(describeActivity({
68
+ type: 'shell:file_search', namePattern: '*.test.ts'
69
+ })).toBe('Finding *.test.ts files...');
70
+ });
71
+ it('falls back without pattern', () => {
72
+ expect(describeActivity({ type: 'shell:file_search' })).toBe('Searching files...');
73
+ });
74
+ });
75
+ describe('shell:file_manage', () => {
76
+ it('shows basename', () => {
77
+ expect(describeActivity({
78
+ type: 'shell:file_manage', path: 'dist'
79
+ })).toBe('Managing dist...');
80
+ });
81
+ it('falls back without path', () => {
82
+ expect(describeActivity({ type: 'shell:file_manage' })).toBe('Managing files...');
83
+ });
84
+ });
85
+ describe('shell:file_info', () => {
86
+ it('shows basename', () => {
87
+ expect(describeActivity({
88
+ type: 'shell:file_info', path: 'package.json'
89
+ })).toBe('Inspecting package.json...');
90
+ });
91
+ it('falls back without path', () => {
92
+ expect(describeActivity({ type: 'shell:file_info' })).toBe('Inspecting file...');
93
+ });
94
+ });
95
+ describe('shell:data_transform', () => {
96
+ it('shows basename when path available', () => {
97
+ expect(describeActivity({
98
+ type: 'shell:data_transform', path: 'data.json', filter: '.items[].name'
99
+ })).toBe('Processing data.json...');
100
+ });
101
+ it('falls back without path', () => {
102
+ expect(describeActivity({ type: 'shell:data_transform' })).toBe('Processing data...');
103
+ });
104
+ });
105
+ it('shell:system', () => {
106
+ expect(describeActivity({ type: 'shell:system' })).toBe('Running system command...');
107
+ });
108
+ it('shell:other', () => {
109
+ expect(describeActivity({ type: 'shell:other' })).toBe('Running command...');
110
+ });
111
+ // ---- Built-in tool activities ----
112
+ it('tool:read_file', () => {
113
+ expect(describeActivity({
114
+ type: 'tool:read_file', path: 'src/index.ts'
115
+ })).toBe('Reading index.ts...');
116
+ });
117
+ it('tool:edit_file', () => {
118
+ expect(describeActivity({
119
+ type: 'tool:edit_file', path: 'src/utils.ts'
120
+ })).toBe('Editing utils.ts...');
121
+ });
122
+ it('tool:write_file', () => {
123
+ expect(describeActivity({
124
+ type: 'tool:write_file', path: 'dist/bundle.js'
125
+ })).toBe('Writing bundle.js...');
126
+ });
127
+ it('tool:search_files', () => {
128
+ expect(describeActivity({
129
+ type: 'tool:search_files', pattern: '**/*.ts'
130
+ })).toBe('Finding **/*.ts files...');
131
+ });
132
+ it('tool:search_content', () => {
133
+ expect(describeActivity({
134
+ type: 'tool:search_content', pattern: 'TODO'
135
+ })).toBe('Searching for "TODO"...');
136
+ });
137
+ describe('tool:web_fetch', () => {
138
+ it('shows hostname', () => {
139
+ expect(describeActivity({
140
+ type: 'tool:web_fetch', url: 'https://api.github.com/repos', method: 'GET'
141
+ })).toBe('Fetching api.github.com...');
142
+ });
143
+ it('falls back without valid URL', () => {
144
+ expect(describeActivity({
145
+ type: 'tool:web_fetch', url: '', method: 'GET'
146
+ })).toBe('Fetching URL...');
147
+ });
148
+ });
149
+ it('tool:web_search', () => {
150
+ expect(describeActivity({
151
+ type: 'tool:web_search', query: 'TypeScript discriminated unions'
152
+ })).toBe('Searching: "TypeScript discriminated unions"...');
153
+ });
154
+ it('tool:sub_agent', () => {
155
+ expect(describeActivity({
156
+ type: 'tool:sub_agent', agentName: 'researcher'
157
+ })).toBe('Delegating to researcher...');
158
+ });
159
+ describe('tool:task_manage', () => {
160
+ it('create with subject', () => {
161
+ expect(describeActivity({
162
+ type: 'tool:task_manage', action: 'create', subject: 'Fix login bug'
163
+ })).toBe('Creating task: Fix login bug...');
164
+ });
165
+ it('create without subject', () => {
166
+ expect(describeActivity({
167
+ type: 'tool:task_manage', action: 'create'
168
+ })).toBe('Creating task...');
169
+ });
170
+ it('update', () => {
171
+ expect(describeActivity({
172
+ type: 'tool:task_manage', action: 'update'
173
+ })).toBe('Updating task...');
174
+ });
175
+ it('delete', () => {
176
+ expect(describeActivity({
177
+ type: 'tool:task_manage', action: 'delete'
178
+ })).toBe('Deleting task...');
179
+ });
180
+ it('list', () => {
181
+ expect(describeActivity({
182
+ type: 'tool:task_manage', action: 'list'
183
+ })).toBe('Checking tasks...');
184
+ });
185
+ it('get', () => {
186
+ expect(describeActivity({
187
+ type: 'tool:task_manage', action: 'get'
188
+ })).toBe('Getting task details...');
189
+ });
190
+ });
191
+ it('tool:other', () => {
192
+ expect(describeActivity({
193
+ type: 'tool:other', toolName: 'custom_tool'
194
+ })).toBe('Running custom_tool...');
195
+ });
196
+ // ---- Agent lifecycle ----
197
+ it('agent:thinking', () => {
198
+ expect(describeActivity({ type: 'agent:thinking' })).toBe('Thinking...');
199
+ });
200
+ it('agent:responding', () => {
201
+ expect(describeActivity({ type: 'agent:responding' })).toBe('Responding...');
202
+ });
203
+ describe('agent:interrupted', () => {
204
+ it('with reason', () => {
205
+ expect(describeActivity({
206
+ type: 'agent:interrupted', reason: 'token limit reached'
207
+ })).toBe('Interrupted: token limit reached');
208
+ });
209
+ it('without reason', () => {
210
+ expect(describeActivity({ type: 'agent:interrupted' })).toBe('Interrupted');
211
+ });
212
+ });
213
+ });
214
+ // ============================================================================
215
+ // extractShellActivity
216
+ // ============================================================================
217
+ describe('extractShellActivity', () => {
218
+ function cmd(command, args = [], extra = {}) {
219
+ return { command, args, ...extra };
220
+ }
221
+ it('curl with URL and method flag', () => {
222
+ const activity = extractShellActivity(cmd('curl', ['-X', 'POST', 'https://api.stripe.com/v1/charges', '-d', 'amount=100']));
223
+ expect(activity).toEqual({
224
+ type: 'shell:http_request',
225
+ url: 'https://api.stripe.com/v1/charges',
226
+ method: 'POST'
227
+ });
228
+ });
229
+ it('curl GET (default)', () => {
230
+ const activity = extractShellActivity(cmd('curl', ['https://api.example.com']));
231
+ expect(activity).toEqual({
232
+ type: 'shell:http_request',
233
+ url: 'https://api.example.com',
234
+ method: 'GET'
235
+ });
236
+ });
237
+ it('curl POST inferred from -d', () => {
238
+ const activity = extractShellActivity(cmd('curl', ['-d', 'data', 'https://api.example.com']));
239
+ expect(activity).toEqual({
240
+ type: 'shell:http_request',
241
+ url: 'https://api.example.com',
242
+ method: 'POST'
243
+ });
244
+ });
245
+ it('wget', () => {
246
+ const activity = extractShellActivity(cmd('wget', ['https://example.com/file.tar.gz']));
247
+ expect(activity).toEqual({
248
+ type: 'shell:http_request',
249
+ url: 'https://example.com/file.tar.gz',
250
+ method: 'GET'
251
+ });
252
+ });
253
+ it('browse', () => {
254
+ const activity = extractShellActivity(cmd('browse', ['https://docs.python.org']));
255
+ expect(activity).toEqual({
256
+ type: 'shell:browse',
257
+ url: 'https://docs.python.org'
258
+ });
259
+ });
260
+ it('cat', () => {
261
+ const activity = extractShellActivity(cmd('cat', ['src/utils/format.ts']));
262
+ expect(activity).toEqual({
263
+ type: 'shell:file_read',
264
+ path: 'src/utils/format.ts'
265
+ });
266
+ });
267
+ it('head with -n', () => {
268
+ const activity = extractShellActivity(cmd('head', ['-n', '10', 'config/app.json']));
269
+ expect(activity).toEqual({
270
+ type: 'shell:file_read',
271
+ path: 'config/app.json',
272
+ lines: 10
273
+ });
274
+ });
275
+ it('tail', () => {
276
+ const activity = extractShellActivity(cmd('tail', ['log.txt']));
277
+ expect(activity).toEqual({
278
+ type: 'shell:file_read',
279
+ path: 'log.txt',
280
+ lines: undefined
281
+ });
282
+ });
283
+ it('grep', () => {
284
+ const activity = extractShellActivity(cmd('grep', ['-ri', 'TODO', 'src/']));
285
+ expect(activity).toEqual({
286
+ type: 'shell:file_search',
287
+ pattern: 'TODO',
288
+ path: 'src/',
289
+ flags: ['-ri']
290
+ });
291
+ });
292
+ it('find with -name', () => {
293
+ const activity = extractShellActivity(cmd('find', ['.', '-name', '*.test.ts']));
294
+ expect(activity).toEqual({
295
+ type: 'shell:file_search',
296
+ path: '.',
297
+ namePattern: '*.test.ts',
298
+ fileType: undefined
299
+ });
300
+ });
301
+ it('find with -type', () => {
302
+ const activity = extractShellActivity(cmd('find', ['.', '-type', 'f', '-name', '*.ts']));
303
+ expect(activity).toEqual({
304
+ type: 'shell:file_search',
305
+ path: '.',
306
+ namePattern: '*.ts',
307
+ fileType: 'f'
308
+ });
309
+ });
310
+ it('ls', () => {
311
+ const activity = extractShellActivity(cmd('ls', ['-la', 'src/']));
312
+ expect(activity).toEqual({
313
+ type: 'shell:file_manage',
314
+ action: 'list',
315
+ path: 'src/'
316
+ });
317
+ });
318
+ it('ls without args', () => {
319
+ const activity = extractShellActivity(cmd('ls', []));
320
+ expect(activity).toEqual({
321
+ type: 'shell:file_manage',
322
+ action: 'list',
323
+ path: '.'
324
+ });
325
+ });
326
+ it('mkdir', () => {
327
+ const activity = extractShellActivity(cmd('mkdir', ['-p', 'dist/']));
328
+ expect(activity).toEqual({
329
+ type: 'shell:file_manage',
330
+ action: 'create_dir',
331
+ path: 'dist/'
332
+ });
333
+ });
334
+ it('rm', () => {
335
+ const activity = extractShellActivity(cmd('rm', ['-r', 'dist/']));
336
+ expect(activity).toEqual({
337
+ type: 'shell:file_manage',
338
+ action: 'remove',
339
+ path: 'dist/',
340
+ recursive: true
341
+ });
342
+ });
343
+ it('rm -rf', () => {
344
+ const activity = extractShellActivity(cmd('rm', ['-rf', 'dist/']));
345
+ expect(activity).toEqual({
346
+ type: 'shell:file_manage',
347
+ action: 'remove',
348
+ path: 'dist/',
349
+ recursive: true
350
+ });
351
+ });
352
+ it('echo with redirect', () => {
353
+ const activity = extractShellActivity(cmd('echo', ['data'], { outputFile: 'output.csv' }));
354
+ expect(activity).toEqual({
355
+ type: 'shell:file_write',
356
+ target: 'output.csv'
357
+ });
358
+ });
359
+ it('echo with append redirect', () => {
360
+ const activity = extractShellActivity(cmd('echo', ['data'], { appendFile: 'log.txt' }));
361
+ expect(activity).toEqual({
362
+ type: 'shell:file_write',
363
+ target: 'log.txt'
364
+ });
365
+ });
366
+ it('sed', () => {
367
+ const activity = extractShellActivity(cmd('sed', ['-i', 's/old/new/g', 'file.txt']));
368
+ expect(activity).toEqual({
369
+ type: 'shell:file_write',
370
+ path: 'file.txt',
371
+ pattern: 's/old/new/g'
372
+ });
373
+ });
374
+ it('file', () => {
375
+ const activity = extractShellActivity(cmd('file', ['image.png']));
376
+ expect(activity).toEqual({
377
+ type: 'shell:file_info',
378
+ path: 'image.png'
379
+ });
380
+ });
381
+ it('wc -l', () => {
382
+ const activity = extractShellActivity(cmd('wc', ['-l', 'data.txt']));
383
+ expect(activity).toEqual({
384
+ type: 'shell:file_info',
385
+ path: 'data.txt',
386
+ mode: 'lines'
387
+ });
388
+ });
389
+ it('wc -w', () => {
390
+ const activity = extractShellActivity(cmd('wc', ['-w', 'data.txt']));
391
+ expect(activity).toEqual({
392
+ type: 'shell:file_info',
393
+ path: 'data.txt',
394
+ mode: 'words'
395
+ });
396
+ });
397
+ it('jq', () => {
398
+ const activity = extractShellActivity(cmd('jq', ['.items[].name', 'data.json']));
399
+ expect(activity).toEqual({
400
+ type: 'shell:data_transform',
401
+ filter: '.items[].name',
402
+ path: 'data.json'
403
+ });
404
+ });
405
+ it('sort', () => {
406
+ const activity = extractShellActivity(cmd('sort', ['-n', '-r', 'scores.txt']));
407
+ expect(activity).toEqual({
408
+ type: 'shell:data_transform',
409
+ path: 'scores.txt',
410
+ numeric: true,
411
+ reverse: true
412
+ });
413
+ });
414
+ it('env', () => {
415
+ expect(extractShellActivity(cmd('env'))).toEqual({ type: 'shell:system', action: 'env' });
416
+ });
417
+ it('date with format', () => {
418
+ const activity = extractShellActivity(cmd('date', ['+%Y-%m-%d']));
419
+ expect(activity).toEqual({
420
+ type: 'shell:system',
421
+ action: 'date',
422
+ format: '%Y-%m-%d'
423
+ });
424
+ });
425
+ it('help', () => {
426
+ const activity = extractShellActivity(cmd('help', ['curl']));
427
+ expect(activity).toEqual({
428
+ type: 'shell:system',
429
+ action: 'help',
430
+ command: 'curl'
431
+ });
432
+ });
433
+ it('unknown command returns shell:other', () => {
434
+ expect(extractShellActivity(cmd('docker', ['build', '.']))).toEqual({
435
+ type: 'shell:other'
436
+ });
437
+ });
438
+ });
439
+ // ============================================================================
440
+ // extractPipelineActivity
441
+ // ============================================================================
442
+ describe('extractPipelineActivity', () => {
443
+ function pipe(commands) {
444
+ const parsed = commands.map(c => ({ command: c.command, args: c.args }));
445
+ for (let i = 0; i < parsed.length - 1; i++) {
446
+ parsed[i].pipe = parsed[i + 1];
447
+ }
448
+ return parsed[0];
449
+ }
450
+ it('cat | jq -> data_transform with file path', () => {
451
+ const activity = extractPipelineActivity(pipe([
452
+ { command: 'cat', args: ['data.json'] },
453
+ { command: 'jq', args: ['.items'] }
454
+ ]));
455
+ expect(activity.type).toBe('shell:data_transform');
456
+ expect(activity.path).toBe('data.json');
457
+ });
458
+ it('cat | sort -> data_transform with file path', () => {
459
+ const activity = extractPipelineActivity(pipe([
460
+ { command: 'cat', args: ['data.csv'] },
461
+ { command: 'sort', args: ['-n'] }
462
+ ]));
463
+ expect(activity.type).toBe('shell:data_transform');
464
+ expect(activity.path).toBe('data.csv');
465
+ });
466
+ it('curl | jq -> http_request (network wins)', () => {
467
+ const activity = extractPipelineActivity(pipe([
468
+ { command: 'curl', args: ['https://api.com'] },
469
+ { command: 'jq', args: ['.results'] }
470
+ ]));
471
+ expect(activity.type).toBe('shell:http_request');
472
+ expect(activity.url).toBe('https://api.com');
473
+ });
474
+ it('grep | wc -> file_search (first command)', () => {
475
+ const activity = extractPipelineActivity(pipe([
476
+ { command: 'grep', args: ['TODO', 'src/'] },
477
+ { command: 'wc', args: ['-l'] }
478
+ ]));
479
+ expect(activity.type).toBe('shell:file_search');
480
+ expect(activity.pattern).toBe('TODO');
481
+ });
482
+ it('cat | grep -> file_read (first command, not transform)', () => {
483
+ const activity = extractPipelineActivity(pipe([
484
+ { command: 'cat', args: ['log.txt'] },
485
+ { command: 'grep', args: ['ERROR'] }
486
+ ]));
487
+ expect(activity.type).toBe('shell:file_read');
488
+ expect(activity.path).toBe('log.txt');
489
+ });
490
+ it('find | grep -> file_search (first command)', () => {
491
+ const activity = extractPipelineActivity(pipe([
492
+ { command: 'find', args: ['.', '-name', '*.ts'] },
493
+ { command: 'grep', args: ['test'] }
494
+ ]));
495
+ expect(activity.type).toBe('shell:file_search');
496
+ });
497
+ });
498
+ // ============================================================================
499
+ // classifyTool
500
+ // ============================================================================
501
+ describe('classifyTool', () => {
502
+ it('__sub_agent__ -> tool:sub_agent', () => {
503
+ const activity = classifyTool('__sub_agent__', { agent: 'researcher' });
504
+ expect(activity).toEqual({ type: 'tool:sub_agent', agentName: 'researcher' });
505
+ });
506
+ it('__shell__ returns undefined (handled separately)', () => {
507
+ expect(classifyTool('__shell__', { command: 'ls' })).toBeUndefined();
508
+ });
509
+ it('TaskCreate with subject', () => {
510
+ const activity = classifyTool('TaskCreate', { subject: 'Fix bug' });
511
+ expect(activity).toEqual({ type: 'tool:task_manage', action: 'create', subject: 'Fix bug' });
512
+ });
513
+ it('TaskUpdate with deleted status', () => {
514
+ const activity = classifyTool('TaskUpdate', { status: 'deleted' });
515
+ expect(activity).toEqual({ type: 'tool:task_manage', action: 'delete' });
516
+ });
517
+ it('TaskUpdate with other status', () => {
518
+ const activity = classifyTool('TaskUpdate', { status: 'completed' });
519
+ expect(activity).toEqual({ type: 'tool:task_manage', action: 'update' });
520
+ });
521
+ it('TaskList', () => {
522
+ expect(classifyTool('TaskList', {})).toEqual({ type: 'tool:task_manage', action: 'list' });
523
+ });
524
+ it('TaskGet', () => {
525
+ expect(classifyTool('TaskGet', {})).toEqual({ type: 'tool:task_manage', action: 'get' });
526
+ });
527
+ // Tool name classification
528
+ it('Read tool', () => {
529
+ const activity = classifyTool('Read', { file_path: '/src/index.ts' });
530
+ expect(activity).toEqual({ type: 'tool:read_file', path: '/src/index.ts' });
531
+ });
532
+ it('Edit tool', () => {
533
+ const activity = classifyTool('Edit', { file_path: '/src/utils.ts' });
534
+ expect(activity).toEqual({ type: 'tool:edit_file', path: '/src/utils.ts' });
535
+ });
536
+ it('Write tool', () => {
537
+ const activity = classifyTool('Write', { file_path: '/src/new.ts' });
538
+ expect(activity).toEqual({ type: 'tool:write_file', path: '/src/new.ts' });
539
+ });
540
+ it('Glob tool', () => {
541
+ const activity = classifyTool('Glob', { pattern: '**/*.ts' });
542
+ expect(activity).toEqual({ type: 'tool:search_files', pattern: '**/*.ts' });
543
+ });
544
+ it('Grep tool', () => {
545
+ const activity = classifyTool('Grep', { pattern: 'TODO', path: 'src/' });
546
+ expect(activity).toEqual({ type: 'tool:search_content', pattern: 'TODO', path: 'src/' });
547
+ });
548
+ it('WebFetch tool', () => {
549
+ const activity = classifyTool('WebFetch', { url: 'https://api.github.com', method: 'GET' });
550
+ expect(activity).toEqual({ type: 'tool:web_fetch', url: 'https://api.github.com', method: 'GET' });
551
+ });
552
+ it('WebSearch tool', () => {
553
+ const activity = classifyTool('WebSearch', { query: 'TypeScript' });
554
+ expect(activity).toEqual({ type: 'tool:web_search', query: 'TypeScript' });
555
+ });
556
+ it('unknown tool -> tool:other', () => {
557
+ const activity = classifyTool('MyCustomTool', {});
558
+ expect(activity).toEqual({ type: 'tool:other', toolName: 'MyCustomTool' });
559
+ });
560
+ });
561
+ // ============================================================================
562
+ // End-to-end label examples from the issue
563
+ // ============================================================================
564
+ describe('label examples from issue', () => {
565
+ const cases = [
566
+ { activity: { type: 'shell:http_request', url: 'https://api.stripe.com/v1/charges', method: 'POST' }, expected: 'Requesting api.stripe.com...' },
567
+ { activity: { type: 'shell:browse', url: 'https://docs.python.org/3/library/json.html' }, expected: 'Browsing docs.python.org...' },
568
+ { activity: { type: 'shell:file_read', path: 'src/utils/format.ts' }, expected: 'Reading format.ts...' },
569
+ { activity: { type: 'shell:file_read', path: 'config/app.json', lines: 10 }, expected: 'Reading app.json...' },
570
+ { activity: { type: 'shell:file_search', pattern: 'TODO', path: 'src/', flags: ['-ri'] }, expected: 'Searching for "TODO"...' },
571
+ { activity: { type: 'shell:file_search', path: '.', namePattern: '*.test.ts' }, expected: 'Finding *.test.ts files...' },
572
+ { activity: { type: 'shell:file_write', target: 'output.csv' }, expected: 'Writing to output.csv...' },
573
+ { activity: { type: 'shell:file_manage', path: 'dist', recursive: true }, expected: 'Managing dist...' },
574
+ { activity: { type: 'shell:data_transform', filter: '.items[].name', path: 'data.json' }, expected: 'Processing data.json...' },
575
+ { activity: { type: 'tool:read_file', path: 'src/index.ts' }, expected: 'Reading index.ts...' },
576
+ { activity: { type: 'tool:search_files', pattern: '**/*.ts' }, expected: 'Finding **/*.ts files...' },
577
+ { activity: { type: 'tool:web_fetch', url: 'https://api.github.com/repos', method: 'GET' }, expected: 'Fetching api.github.com...' },
578
+ { activity: { type: 'tool:sub_agent', agentName: 'researcher' }, expected: 'Delegating to researcher...' },
579
+ { activity: { type: 'tool:task_manage', action: 'create', subject: 'Fix login bug' }, expected: 'Creating task: Fix login bug...' },
580
+ { activity: { type: 'agent:thinking' }, expected: 'Thinking...' },
581
+ { activity: { type: 'agent:interrupted', reason: 'token limit reached' }, expected: 'Interrupted: token limit reached' },
582
+ ];
583
+ cases.forEach(({ activity, expected }) => {
584
+ it(`${activity.type} -> "${expected}"`, () => {
585
+ expect(describeActivity(activity)).toBe(expected);
586
+ });
587
+ });
588
+ });
589
+ //# sourceMappingURL=activity.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity.test.js","sourceRoot":"","sources":["../src/activity.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,YAAY,EAGZ,UAAU,EACV,WAAW,EAEZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAe1C,4DAA4D;AAC5D,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAG3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AA4CzD;;GAEG;AACH,qBAAa,MAAM;IACjB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,KAAK,CAAS;IACtB,mCAAmC;IACnC,OAAO,CAAC,YAAY,CAAS;IAC7B,yEAAyE;IACzE,OAAO,CAAC,mBAAmB,CAAC,CAAe;gBAE/B,MAAM,EAAE,YAAY;IAsDhC;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;OAEG;IACH,sBAAsB,IAAI,YAAY,GAAG,SAAS;IAIlD;;OAEG;IACH,sBAAsB,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IAI/D;;;OAGG;IACH,OAAO,CAAC,WAAW;IA6DnB;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAuP3E"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,YAAY,EAGZ,UAAU,EACV,WAAW,EAEZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAe1C,4DAA4D;AAC5D,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAG3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAkEzD;;GAEG;AACH,qBAAa,MAAM;IACjB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,KAAK,CAAS;IACtB,mCAAmC;IACnC,OAAO,CAAC,YAAY,CAAS;IAC7B,yEAAyE;IACzE,OAAO,CAAC,mBAAmB,CAAC,CAAe;gBAE/B,MAAM,EAAE,YAAY;IAsDhC;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;OAEG;IACH,sBAAsB,IAAI,YAAY,GAAG,SAAS;IAIlD;;OAEG;IACH,sBAAsB,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IAI/D;;;OAGG;IACH,OAAO,CAAC,WAAW;IAqEnB;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CA2P3E"}