@agent-relay/daemon 0.1.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 (109) hide show
  1. package/dist/agent-manager.d.ts +134 -0
  2. package/dist/agent-manager.d.ts.map +1 -0
  3. package/dist/agent-manager.js +578 -0
  4. package/dist/agent-manager.js.map +1 -0
  5. package/dist/agent-registry.d.ts +99 -0
  6. package/dist/agent-registry.d.ts.map +1 -0
  7. package/dist/agent-registry.js +213 -0
  8. package/dist/agent-registry.js.map +1 -0
  9. package/dist/agent-signing.d.ts +158 -0
  10. package/dist/agent-signing.d.ts.map +1 -0
  11. package/dist/agent-signing.js +523 -0
  12. package/dist/agent-signing.js.map +1 -0
  13. package/dist/api.d.ts +106 -0
  14. package/dist/api.d.ts.map +1 -0
  15. package/dist/api.js +876 -0
  16. package/dist/api.js.map +1 -0
  17. package/dist/auth.d.ts +94 -0
  18. package/dist/auth.d.ts.map +1 -0
  19. package/dist/auth.js +197 -0
  20. package/dist/auth.js.map +1 -0
  21. package/dist/channel-membership-store.d.ts +55 -0
  22. package/dist/channel-membership-store.d.ts.map +1 -0
  23. package/dist/channel-membership-store.js +176 -0
  24. package/dist/channel-membership-store.js.map +1 -0
  25. package/dist/cli-auth.d.ts +89 -0
  26. package/dist/cli-auth.d.ts.map +1 -0
  27. package/dist/cli-auth.js +792 -0
  28. package/dist/cli-auth.js.map +1 -0
  29. package/dist/cloud-sync.d.ts +150 -0
  30. package/dist/cloud-sync.d.ts.map +1 -0
  31. package/dist/cloud-sync.js +446 -0
  32. package/dist/cloud-sync.js.map +1 -0
  33. package/dist/connection.d.ts +130 -0
  34. package/dist/connection.d.ts.map +1 -0
  35. package/dist/connection.js +438 -0
  36. package/dist/connection.js.map +1 -0
  37. package/dist/consensus-integration.d.ts +167 -0
  38. package/dist/consensus-integration.d.ts.map +1 -0
  39. package/dist/consensus-integration.js +371 -0
  40. package/dist/consensus-integration.js.map +1 -0
  41. package/dist/consensus.d.ts +271 -0
  42. package/dist/consensus.d.ts.map +1 -0
  43. package/dist/consensus.js +632 -0
  44. package/dist/consensus.js.map +1 -0
  45. package/dist/delivery-tracker.d.ts +34 -0
  46. package/dist/delivery-tracker.d.ts.map +1 -0
  47. package/dist/delivery-tracker.js +104 -0
  48. package/dist/delivery-tracker.js.map +1 -0
  49. package/dist/enhanced-features.d.ts +118 -0
  50. package/dist/enhanced-features.d.ts.map +1 -0
  51. package/dist/enhanced-features.js +176 -0
  52. package/dist/enhanced-features.js.map +1 -0
  53. package/dist/index.d.ts +31 -0
  54. package/dist/index.d.ts.map +1 -0
  55. package/dist/index.js +37 -0
  56. package/dist/index.js.map +1 -0
  57. package/dist/migrations/index.d.ts +73 -0
  58. package/dist/migrations/index.d.ts.map +1 -0
  59. package/dist/migrations/index.js +241 -0
  60. package/dist/migrations/index.js.map +1 -0
  61. package/dist/orchestrator.d.ts +217 -0
  62. package/dist/orchestrator.d.ts.map +1 -0
  63. package/dist/orchestrator.js +1143 -0
  64. package/dist/orchestrator.js.map +1 -0
  65. package/dist/rate-limiter.d.ts +68 -0
  66. package/dist/rate-limiter.d.ts.map +1 -0
  67. package/dist/rate-limiter.js +130 -0
  68. package/dist/rate-limiter.js.map +1 -0
  69. package/dist/registry.d.ts +9 -0
  70. package/dist/registry.d.ts.map +1 -0
  71. package/dist/registry.js +9 -0
  72. package/dist/registry.js.map +1 -0
  73. package/dist/relay-ledger.d.ts +261 -0
  74. package/dist/relay-ledger.d.ts.map +1 -0
  75. package/dist/relay-ledger.js +532 -0
  76. package/dist/relay-ledger.js.map +1 -0
  77. package/dist/relay-watchdog.d.ts +125 -0
  78. package/dist/relay-watchdog.d.ts.map +1 -0
  79. package/dist/relay-watchdog.js +611 -0
  80. package/dist/relay-watchdog.js.map +1 -0
  81. package/dist/repo-manager.d.ts +116 -0
  82. package/dist/repo-manager.d.ts.map +1 -0
  83. package/dist/repo-manager.js +384 -0
  84. package/dist/repo-manager.js.map +1 -0
  85. package/dist/router.d.ts +370 -0
  86. package/dist/router.d.ts.map +1 -0
  87. package/dist/router.js +1437 -0
  88. package/dist/router.js.map +1 -0
  89. package/dist/server.d.ts +174 -0
  90. package/dist/server.d.ts.map +1 -0
  91. package/dist/server.js +1001 -0
  92. package/dist/server.js.map +1 -0
  93. package/dist/spawn-manager.d.ts +78 -0
  94. package/dist/spawn-manager.d.ts.map +1 -0
  95. package/dist/spawn-manager.js +165 -0
  96. package/dist/spawn-manager.js.map +1 -0
  97. package/dist/sync-queue.d.ts +116 -0
  98. package/dist/sync-queue.d.ts.map +1 -0
  99. package/dist/sync-queue.js +361 -0
  100. package/dist/sync-queue.js.map +1 -0
  101. package/dist/types.d.ts +133 -0
  102. package/dist/types.d.ts.map +1 -0
  103. package/dist/types.js +6 -0
  104. package/dist/types.js.map +1 -0
  105. package/dist/workspace-manager.d.ts +80 -0
  106. package/dist/workspace-manager.d.ts.map +1 -0
  107. package/dist/workspace-manager.js +314 -0
  108. package/dist/workspace-manager.js.map +1 -0
  109. package/package.json +52 -0
@@ -0,0 +1,134 @@
1
+ /**
2
+ * Agent Manager
3
+ * Manages agents across workspaces with integrated resiliency.
4
+ */
5
+ import { EventEmitter } from 'events';
6
+ import { RelayPtyOrchestrator } from '@agent-relay/wrapper';
7
+ import type { SummaryEvent, SessionEndEvent } from '@agent-relay/wrapper';
8
+ import type { Agent, SpawnAgentRequest } from './types.js';
9
+ /**
10
+ * Optional cloud persistence handler.
11
+ * When set, agent-manager forwards wrapper events to this handler.
12
+ */
13
+ export interface CloudPersistenceHandler {
14
+ onSummary: (agentId: string, event: SummaryEvent) => Promise<void>;
15
+ onSessionEnd: (agentId: string, event: SessionEndEvent) => Promise<void>;
16
+ /** Optional cleanup method for tests and graceful shutdown */
17
+ destroy?: () => void;
18
+ }
19
+ interface ManagedAgent extends Agent {
20
+ pty?: RelayPtyOrchestrator;
21
+ }
22
+ export declare class AgentManager extends EventEmitter {
23
+ private agents;
24
+ private supervisor;
25
+ private dataDir;
26
+ private logsDir;
27
+ private cloudPersistence?;
28
+ constructor(dataDir: string);
29
+ /**
30
+ * Set cloud persistence handler for forwarding RelayPtyOrchestrator events.
31
+ * When set, 'summary' and 'session-end' events from agents are forwarded
32
+ * to the handler for cloud persistence (PostgreSQL/Redis).
33
+ */
34
+ setCloudPersistence(handler: CloudPersistenceHandler): void;
35
+ /**
36
+ * Spawn a new agent in a workspace
37
+ */
38
+ spawn(workspaceId: string, workspacePath: string, request: SpawnAgentRequest): Promise<Agent>;
39
+ /**
40
+ * Stop an agent
41
+ */
42
+ stop(agentId: string): Promise<boolean>;
43
+ /**
44
+ * Stop all agents in a workspace
45
+ */
46
+ stopAllInWorkspace(workspaceId: string): Promise<void>;
47
+ /**
48
+ * Stop all agents
49
+ */
50
+ stopAll(): Promise<void>;
51
+ /**
52
+ * Get an agent by ID
53
+ */
54
+ get(agentId: string): Agent | undefined;
55
+ /**
56
+ * Get all agents in a workspace
57
+ */
58
+ getByWorkspace(workspaceId: string): Agent[];
59
+ /**
60
+ * Get all agents
61
+ */
62
+ getAll(): Agent[];
63
+ /**
64
+ * Find agent by name in a workspace
65
+ */
66
+ findByName(workspaceId: string, name: string): Agent | undefined;
67
+ /**
68
+ * Get agent output/logs
69
+ */
70
+ getOutput(agentId: string, limit?: number): string[] | null;
71
+ /**
72
+ * Get raw output from agent
73
+ */
74
+ getRawOutput(agentId: string): string | null;
75
+ /**
76
+ * Send input to an agent
77
+ */
78
+ sendInput(agentId: string, input: string): boolean;
79
+ /**
80
+ * Interrupt an agent by sending Escape key twice.
81
+ * This breaks the agent out of their current task to allow refocusing.
82
+ * Uses Escape instead of Ctrl+C for better CLI compatibility (e.g., Claude CLI).
83
+ */
84
+ interrupt(agentId: string): boolean;
85
+ /**
86
+ * Find agent by name (global search across all workspaces)
87
+ */
88
+ findAgentByName(name: string): ManagedAgent | undefined;
89
+ /**
90
+ * Interrupt an agent by name (searches across all workspaces).
91
+ * Useful for dashboard where only agent name is available.
92
+ */
93
+ interruptByName(name: string): boolean;
94
+ /**
95
+ * Restart an agent
96
+ */
97
+ private restartAgent;
98
+ /**
99
+ * Handle agent exit
100
+ */
101
+ private handleAgentExit;
102
+ /**
103
+ * Bind RelayPtyOrchestrator events to cloud persistence and daemon events.
104
+ *
105
+ * Events bound:
106
+ * - 'summary': Agent output a [[SUMMARY]] block
107
+ * - 'session-end': Agent output a [[SESSION_END]] block
108
+ * - 'injection-failed': Message injection failed after retries
109
+ */
110
+ private bindPtyEvents;
111
+ /**
112
+ * Setup supervisor event handlers
113
+ */
114
+ private setupSupervisorEvents;
115
+ /**
116
+ * Get CLI command for provider
117
+ */
118
+ private getCliCommand;
119
+ /**
120
+ * Convert internal agent to public agent (without pty reference)
121
+ */
122
+ private toPublicAgent;
123
+ /**
124
+ * Emit a daemon event
125
+ */
126
+ private emitEvent;
127
+ /**
128
+ * Shutdown the agent manager
129
+ */
130
+ shutdown(): Promise<void>;
131
+ }
132
+ export declare function getAgentManager(dataDir?: string): AgentManager;
133
+ export {};
134
+ //# sourceMappingURL=agent-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-manager.d.ts","sourceRoot":"","sources":["../src/agent-manager.ts"],"names":[],"mappings":"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"}