agents-dojo 0.1.6 → 0.1.8

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 (53) hide show
  1. package/dist/agent-executor.js +0 -28
  2. package/monitor/.env.development +1 -0
  3. package/monitor/.env.production +1 -0
  4. package/monitor/ANIMATION_REQUIREMENTS.md +118 -0
  5. package/monitor/index.html +12 -0
  6. package/monitor/package-lock.json +2160 -0
  7. package/monitor/package.json +25 -0
  8. package/monitor/public/bg.png +0 -0
  9. package/monitor/public/bg_clean.png +0 -0
  10. package/monitor/public/positions.json +215 -0
  11. package/monitor/public/sprites/agent_default.png +0 -0
  12. package/monitor/public/sprites/cushion_0.png +0 -0
  13. package/monitor/public/sprites/cushion_1.png +0 -0
  14. package/monitor/public/sprites/cushion_10.png +0 -0
  15. package/monitor/public/sprites/cushion_2.png +0 -0
  16. package/monitor/public/sprites/cushion_3.png +0 -0
  17. package/monitor/public/sprites/cushion_4.png +0 -0
  18. package/monitor/public/sprites/cushion_5.png +0 -0
  19. package/monitor/public/sprites/cushion_6.png +0 -0
  20. package/monitor/public/sprites/cushion_7.png +0 -0
  21. package/monitor/public/sprites/cushion_8.png +0 -0
  22. package/monitor/public/sprites/cushion_9.png +0 -0
  23. package/monitor/public/sprites/master.png +0 -0
  24. package/monitor/public/sprites/stake_0.png +0 -0
  25. package/monitor/public/sprites/stake_1.png +0 -0
  26. package/monitor/public/sprites/stake_10.png +0 -0
  27. package/monitor/public/sprites/stake_2.png +0 -0
  28. package/monitor/public/sprites/stake_3.png +0 -0
  29. package/monitor/public/sprites/stake_4.png +0 -0
  30. package/monitor/public/sprites/stake_5.png +0 -0
  31. package/monitor/public/sprites/stake_6.png +0 -0
  32. package/monitor/public/sprites/stake_7.png +0 -0
  33. package/monitor/public/sprites/stake_8.png +0 -0
  34. package/monitor/public/sprites/stake_9.png +0 -0
  35. package/monitor/scripts/record-gif.py +53 -0
  36. package/monitor/src/App.tsx +22 -0
  37. package/monitor/src/components/AgentMenu.tsx +67 -0
  38. package/monitor/src/components/ChatPanel.tsx +214 -0
  39. package/monitor/src/components/LogPage.tsx +173 -0
  40. package/monitor/src/components/Stage.tsx +39 -0
  41. package/monitor/src/components/StatusBar.tsx +50 -0
  42. package/monitor/src/lib/dojo-app.ts +799 -0
  43. package/monitor/src/lib/interactables.ts +162 -0
  44. package/monitor/src/lib/store.ts +352 -0
  45. package/monitor/src/lib/types.ts +72 -0
  46. package/monitor/src/lib/ws-client.ts +66 -0
  47. package/monitor/src/main.tsx +9 -0
  48. package/monitor/src/vite-env.d.ts +1 -0
  49. package/monitor/tsconfig.json +14 -0
  50. package/monitor/vite.config.ts +16 -0
  51. package/package.json +2 -1
  52. package/dist/agent-logger.d.ts +0 -26
  53. package/dist/agent-logger.js +0 -63
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agents-dojo",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "description": "A2A-compatible Agent framework built on Claude Code SDK",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -10,6 +10,7 @@
10
10
  },
11
11
  "files": [
12
12
  "dist",
13
+ "monitor",
13
14
  "README.md"
14
15
  ],
15
16
  "scripts": {
@@ -1,26 +0,0 @@
1
- /**
2
- * A logger that captures every SDK message for a single task.
3
- * Create one per task, call .onSdkMessage() for each message,
4
- * then .flush() when the task completes.
5
- */
6
- export declare class AgentConversationLogger {
7
- private agentDir;
8
- private agentId;
9
- private taskId;
10
- private messages;
11
- constructor(agentDir: string, agentId: string, taskId: string);
12
- /** Record a raw SDK message (assistant, user, result, etc.) */
13
- onSdkMessage(msg: unknown): void;
14
- /** Write all captured messages to the agent's log file. */
15
- flush(state: 'completed' | 'failed' | 'canceled', durationMs: number): void;
16
- }
17
- export interface ConversationEntry {
18
- taskId: string;
19
- agentId: string;
20
- timestamp: string;
21
- userMessage: string;
22
- agentResponse: string;
23
- state: 'completed' | 'failed';
24
- durationMs: number;
25
- }
26
- export declare function logConversation(agentDir: string, entry: ConversationEntry): void;
@@ -1,63 +0,0 @@
1
- // src/agent-logger.ts
2
- // Saves the complete LLM conversation (all SDK messages) for each agent task.
3
- import { appendFileSync, mkdirSync } from 'fs';
4
- import { join } from 'path';
5
- function todayStr() {
6
- return new Date().toISOString().slice(0, 10);
7
- }
8
- /**
9
- * A logger that captures every SDK message for a single task.
10
- * Create one per task, call .onSdkMessage() for each message,
11
- * then .flush() when the task completes.
12
- */
13
- export class AgentConversationLogger {
14
- agentDir;
15
- agentId;
16
- taskId;
17
- messages = [];
18
- constructor(agentDir, agentId, taskId) {
19
- this.agentDir = agentDir;
20
- this.agentId = agentId;
21
- this.taskId = taskId;
22
- }
23
- /** Record a raw SDK message (assistant, user, result, etc.) */
24
- onSdkMessage(msg) {
25
- this.messages.push({
26
- timestamp: new Date().toISOString(),
27
- type: msg?.type ?? 'unknown',
28
- data: msg,
29
- });
30
- }
31
- /** Write all captured messages to the agent's log file. */
32
- flush(state, durationMs) {
33
- const logDir = join(this.agentDir, 'log');
34
- mkdirSync(logDir, { recursive: true });
35
- const file = join(logDir, `${todayStr()}.jsonl`);
36
- const entry = {
37
- taskId: this.taskId,
38
- agentId: this.agentId,
39
- timestamp: new Date().toISOString(),
40
- state,
41
- durationMs,
42
- messageCount: this.messages.length,
43
- messages: this.messages,
44
- };
45
- try {
46
- appendFileSync(file, JSON.stringify(entry) + '\n');
47
- }
48
- catch (err) {
49
- console.error(`[agent-logger] Failed to write to ${file}:`, err);
50
- }
51
- }
52
- }
53
- export function logConversation(agentDir, entry) {
54
- const logDir = join(agentDir, 'log');
55
- mkdirSync(logDir, { recursive: true });
56
- const file = join(logDir, `${todayStr()}.jsonl`);
57
- try {
58
- appendFileSync(file, JSON.stringify(entry) + '\n');
59
- }
60
- catch (err) {
61
- console.error(`[agent-logger] Failed to write:`, err);
62
- }
63
- }