zora-agent 0.9.4 → 0.9.6

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 (245) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/README.md +103 -92
  3. package/dist/cli/audit-commands.d.ts.map +1 -1
  4. package/dist/cli/audit-commands.js +3 -1
  5. package/dist/cli/audit-commands.js.map +1 -1
  6. package/dist/cli/daemon.js +86 -28
  7. package/dist/cli/daemon.js.map +1 -1
  8. package/dist/cli/edit-commands.d.ts.map +1 -1
  9. package/dist/cli/edit-commands.js +3 -1
  10. package/dist/cli/edit-commands.js.map +1 -1
  11. package/dist/cli/hook-commands.d.ts +9 -0
  12. package/dist/cli/hook-commands.d.ts.map +1 -0
  13. package/dist/cli/hook-commands.js +106 -0
  14. package/dist/cli/hook-commands.js.map +1 -0
  15. package/dist/cli/index.js +87 -35
  16. package/dist/cli/index.js.map +1 -1
  17. package/dist/cli/init-command.d.ts.map +1 -1
  18. package/dist/cli/init-command.js +108 -9
  19. package/dist/cli/init-command.js.map +1 -1
  20. package/dist/cli/memory-commands.d.ts +1 -1
  21. package/dist/cli/memory-commands.d.ts.map +1 -1
  22. package/dist/cli/memory-commands.js +213 -1
  23. package/dist/cli/memory-commands.js.map +1 -1
  24. package/dist/cli/presets.d.ts.map +1 -1
  25. package/dist/cli/presets.js +2 -1
  26. package/dist/cli/presets.js.map +1 -1
  27. package/dist/cli/skill-commands.d.ts.map +1 -1
  28. package/dist/cli/skill-commands.js +4 -2
  29. package/dist/cli/skill-commands.js.map +1 -1
  30. package/dist/cli/steer-commands.d.ts.map +1 -1
  31. package/dist/cli/steer-commands.js +6 -4
  32. package/dist/cli/steer-commands.js.map +1 -1
  33. package/dist/cli/team-commands.d.ts.map +1 -1
  34. package/dist/cli/team-commands.js +3 -1
  35. package/dist/cli/team-commands.js.map +1 -1
  36. package/dist/config/defaults.d.ts.map +1 -1
  37. package/dist/config/defaults.js +12 -2
  38. package/dist/config/defaults.js.map +1 -1
  39. package/dist/config/loader.d.ts +23 -0
  40. package/dist/config/loader.d.ts.map +1 -1
  41. package/dist/config/loader.js +64 -3
  42. package/dist/config/loader.js.map +1 -1
  43. package/dist/config/policy-loader.d.ts +14 -0
  44. package/dist/config/policy-loader.d.ts.map +1 -1
  45. package/dist/config/policy-loader.js +33 -0
  46. package/dist/config/policy-loader.js.map +1 -1
  47. package/dist/dashboard/frontend/dist/assets/index-BcOGj1EF.css +1 -0
  48. package/dist/dashboard/frontend/dist/assets/index-BtiFO9YN.js +261 -0
  49. package/dist/dashboard/frontend/dist/assets/index-Cfjy5acU.css +1 -0
  50. package/dist/dashboard/frontend/dist/assets/index-D41hcjgc.js +253 -0
  51. package/dist/dashboard/frontend/dist/assets/index-D83BawFd.css +1 -0
  52. package/dist/dashboard/frontend/dist/assets/index-DAODjoxu.css +1 -0
  53. package/dist/dashboard/frontend/dist/assets/index-DB-Eu5oV.js +253 -0
  54. package/dist/dashboard/frontend/dist/assets/index-W0VVEDu6.js +253 -0
  55. package/dist/dashboard/frontend/dist/index.html +17 -0
  56. package/dist/dashboard/server.d.ts +19 -2
  57. package/dist/dashboard/server.d.ts.map +1 -1
  58. package/dist/dashboard/server.js +121 -20
  59. package/dist/dashboard/server.js.map +1 -1
  60. package/dist/hooks/hook-runner.d.ts +55 -0
  61. package/dist/hooks/hook-runner.d.ts.map +1 -0
  62. package/dist/hooks/hook-runner.js +120 -0
  63. package/dist/hooks/hook-runner.js.map +1 -0
  64. package/dist/hooks/hook-types.d.ts +82 -0
  65. package/dist/hooks/hook-types.d.ts.map +1 -0
  66. package/dist/hooks/hook-types.js +20 -0
  67. package/dist/hooks/hook-types.js.map +1 -0
  68. package/dist/hooks/index.d.ts +6 -0
  69. package/dist/hooks/index.d.ts.map +1 -0
  70. package/dist/hooks/index.js +6 -0
  71. package/dist/hooks/index.js.map +1 -0
  72. package/dist/memory/context-compressor.d.ts +108 -0
  73. package/dist/memory/context-compressor.d.ts.map +1 -0
  74. package/dist/memory/context-compressor.js +307 -0
  75. package/dist/memory/context-compressor.js.map +1 -0
  76. package/dist/memory/index.d.ts +1 -0
  77. package/dist/memory/index.d.ts.map +1 -1
  78. package/dist/memory/index.js +1 -0
  79. package/dist/memory/index.js.map +1 -1
  80. package/dist/memory/memory-manager.d.ts +88 -4
  81. package/dist/memory/memory-manager.d.ts.map +1 -1
  82. package/dist/memory/memory-manager.js +299 -7
  83. package/dist/memory/memory-manager.js.map +1 -1
  84. package/dist/memory/observation-store.d.ts +75 -0
  85. package/dist/memory/observation-store.d.ts.map +1 -0
  86. package/dist/memory/observation-store.js +162 -0
  87. package/dist/memory/observation-store.js.map +1 -0
  88. package/dist/memory/observer-worker.d.ts +34 -0
  89. package/dist/memory/observer-worker.d.ts.map +1 -0
  90. package/dist/memory/observer-worker.js +161 -0
  91. package/dist/memory/observer-worker.js.map +1 -0
  92. package/dist/memory/reflector-worker.d.ts +40 -0
  93. package/dist/memory/reflector-worker.d.ts.map +1 -0
  94. package/dist/memory/reflector-worker.js +185 -0
  95. package/dist/memory/reflector-worker.js.map +1 -0
  96. package/dist/memory/salience-scorer.d.ts +16 -6
  97. package/dist/memory/salience-scorer.d.ts.map +1 -1
  98. package/dist/memory/salience-scorer.js +42 -22
  99. package/dist/memory/salience-scorer.js.map +1 -1
  100. package/dist/memory/structured-memory.d.ts +36 -1
  101. package/dist/memory/structured-memory.d.ts.map +1 -1
  102. package/dist/memory/structured-memory.js +207 -8
  103. package/dist/memory/structured-memory.js.map +1 -1
  104. package/dist/memory/token-estimator.d.ts +31 -0
  105. package/dist/memory/token-estimator.d.ts.map +1 -0
  106. package/dist/memory/token-estimator.js +77 -0
  107. package/dist/memory/token-estimator.js.map +1 -0
  108. package/dist/memory/validation-pipeline.d.ts +37 -0
  109. package/dist/memory/validation-pipeline.d.ts.map +1 -0
  110. package/dist/memory/validation-pipeline.js +106 -0
  111. package/dist/memory/validation-pipeline.js.map +1 -0
  112. package/dist/orchestrator/auth-monitor.d.ts.map +1 -1
  113. package/dist/orchestrator/auth-monitor.js +3 -1
  114. package/dist/orchestrator/auth-monitor.js.map +1 -1
  115. package/dist/orchestrator/execution-loop.d.ts +23 -0
  116. package/dist/orchestrator/execution-loop.d.ts.map +1 -1
  117. package/dist/orchestrator/execution-loop.js +60 -19
  118. package/dist/orchestrator/execution-loop.js.map +1 -1
  119. package/dist/orchestrator/failover-controller.d.ts +26 -2
  120. package/dist/orchestrator/failover-controller.d.ts.map +1 -1
  121. package/dist/orchestrator/failover-controller.js +143 -23
  122. package/dist/orchestrator/failover-controller.js.map +1 -1
  123. package/dist/orchestrator/orchestrator.d.ts +70 -7
  124. package/dist/orchestrator/orchestrator.d.ts.map +1 -1
  125. package/dist/orchestrator/orchestrator.js +416 -92
  126. package/dist/orchestrator/orchestrator.js.map +1 -1
  127. package/dist/orchestrator/retry-queue.d.ts.map +1 -1
  128. package/dist/orchestrator/retry-queue.js +24 -9
  129. package/dist/orchestrator/retry-queue.js.map +1 -1
  130. package/dist/orchestrator/router.d.ts +16 -1
  131. package/dist/orchestrator/router.d.ts.map +1 -1
  132. package/dist/orchestrator/router.js +79 -20
  133. package/dist/orchestrator/router.js.map +1 -1
  134. package/dist/orchestrator/session-manager.d.ts +26 -1
  135. package/dist/orchestrator/session-manager.d.ts.map +1 -1
  136. package/dist/orchestrator/session-manager.js +88 -4
  137. package/dist/orchestrator/session-manager.js.map +1 -1
  138. package/dist/providers/circuit-breaker.d.ts +78 -0
  139. package/dist/providers/circuit-breaker.d.ts.map +1 -0
  140. package/dist/providers/circuit-breaker.js +129 -0
  141. package/dist/providers/circuit-breaker.js.map +1 -0
  142. package/dist/providers/claude-provider.d.ts +27 -11
  143. package/dist/providers/claude-provider.d.ts.map +1 -1
  144. package/dist/providers/claude-provider.js +161 -46
  145. package/dist/providers/claude-provider.js.map +1 -1
  146. package/dist/providers/gemini-provider.d.ts +9 -1
  147. package/dist/providers/gemini-provider.d.ts.map +1 -1
  148. package/dist/providers/gemini-provider.js +97 -48
  149. package/dist/providers/gemini-provider.js.map +1 -1
  150. package/dist/providers/index.d.ts +1 -0
  151. package/dist/providers/index.d.ts.map +1 -1
  152. package/dist/providers/index.js +1 -0
  153. package/dist/providers/index.js.map +1 -1
  154. package/dist/providers/ollama-provider.d.ts +7 -0
  155. package/dist/providers/ollama-provider.d.ts.map +1 -1
  156. package/dist/providers/ollama-provider.js +89 -18
  157. package/dist/providers/ollama-provider.js.map +1 -1
  158. package/dist/routines/heartbeat.d.ts +10 -2
  159. package/dist/routines/heartbeat.d.ts.map +1 -1
  160. package/dist/routines/heartbeat.js +42 -5
  161. package/dist/routines/heartbeat.js.map +1 -1
  162. package/dist/routines/routine-manager.d.ts.map +1 -1
  163. package/dist/routines/routine-manager.js +22 -15
  164. package/dist/routines/routine-manager.js.map +1 -1
  165. package/dist/security/audit-logger.d.ts.map +1 -1
  166. package/dist/security/audit-logger.js +5 -7
  167. package/dist/security/audit-logger.js.map +1 -1
  168. package/dist/security/policy-engine.d.ts +28 -17
  169. package/dist/security/policy-engine.d.ts.map +1 -1
  170. package/dist/security/policy-engine.js +42 -185
  171. package/dist/security/policy-engine.js.map +1 -1
  172. package/dist/security/policy-serializer.d.ts +19 -0
  173. package/dist/security/policy-serializer.d.ts.map +1 -0
  174. package/dist/security/policy-serializer.js +100 -0
  175. package/dist/security/policy-serializer.js.map +1 -0
  176. package/dist/security/shell-validator.d.ts +42 -0
  177. package/dist/security/shell-validator.d.ts.map +1 -0
  178. package/dist/security/shell-validator.js +231 -0
  179. package/dist/security/shell-validator.js.map +1 -0
  180. package/dist/skills/index.d.ts +1 -0
  181. package/dist/skills/index.d.ts.map +1 -1
  182. package/dist/skills/index.js +1 -0
  183. package/dist/skills/index.js.map +1 -1
  184. package/dist/skills/skill-loader.d.ts +38 -2
  185. package/dist/skills/skill-loader.d.ts.map +1 -1
  186. package/dist/skills/skill-loader.js +83 -2
  187. package/dist/skills/skill-loader.js.map +1 -1
  188. package/dist/skills/subagent-loader.d.ts +66 -0
  189. package/dist/skills/subagent-loader.d.ts.map +1 -0
  190. package/dist/skills/subagent-loader.js +143 -0
  191. package/dist/skills/subagent-loader.js.map +1 -0
  192. package/dist/steering/flag-manager.d.ts +20 -0
  193. package/dist/steering/flag-manager.d.ts.map +1 -1
  194. package/dist/steering/flag-manager.js +94 -11
  195. package/dist/steering/flag-manager.js.map +1 -1
  196. package/dist/steering/steering-manager.d.ts +11 -0
  197. package/dist/steering/steering-manager.d.ts.map +1 -1
  198. package/dist/steering/steering-manager.js +23 -0
  199. package/dist/steering/steering-manager.js.map +1 -1
  200. package/dist/steering/telegram-gateway.d.ts +4 -1
  201. package/dist/steering/telegram-gateway.d.ts.map +1 -1
  202. package/dist/steering/telegram-gateway.js +49 -10
  203. package/dist/steering/telegram-gateway.js.map +1 -1
  204. package/dist/teams/bridge-watchdog.d.ts.map +1 -1
  205. package/dist/teams/bridge-watchdog.js +5 -3
  206. package/dist/teams/bridge-watchdog.js.map +1 -1
  207. package/dist/teams/gemini-bridge.d.ts.map +1 -1
  208. package/dist/teams/gemini-bridge.js +9 -4
  209. package/dist/teams/gemini-bridge.js.map +1 -1
  210. package/dist/tools/index.d.ts +2 -0
  211. package/dist/tools/index.d.ts.map +1 -1
  212. package/dist/tools/index.js +2 -0
  213. package/dist/tools/index.js.map +1 -1
  214. package/dist/tools/memory-tools.d.ts +16 -0
  215. package/dist/tools/memory-tools.d.ts.map +1 -0
  216. package/dist/tools/memory-tools.js +207 -0
  217. package/dist/tools/memory-tools.js.map +1 -0
  218. package/dist/tools/notifications.d.ts.map +1 -1
  219. package/dist/tools/notifications.js +3 -1
  220. package/dist/tools/notifications.js.map +1 -1
  221. package/dist/tools/tool-factory.d.ts +36 -0
  222. package/dist/tools/tool-factory.d.ts.map +1 -0
  223. package/dist/tools/tool-factory.js +55 -0
  224. package/dist/tools/tool-factory.js.map +1 -0
  225. package/dist/types.d.ts +205 -1
  226. package/dist/types.d.ts.map +1 -1
  227. package/dist/types.js +47 -1
  228. package/dist/types.js.map +1 -1
  229. package/dist/utils/errors.d.ts +21 -0
  230. package/dist/utils/errors.d.ts.map +1 -0
  231. package/dist/utils/errors.js +29 -0
  232. package/dist/utils/errors.js.map +1 -0
  233. package/dist/utils/event-filter.d.ts +25 -0
  234. package/dist/utils/event-filter.d.ts.map +1 -0
  235. package/dist/utils/event-filter.js +61 -0
  236. package/dist/utils/event-filter.js.map +1 -0
  237. package/dist/utils/logger.d.ts +33 -36
  238. package/dist/utils/logger.d.ts.map +1 -1
  239. package/dist/utils/logger.js +60 -130
  240. package/dist/utils/logger.js.map +1 -1
  241. package/dist/utils/validate-job-id.d.ts +6 -0
  242. package/dist/utils/validate-job-id.d.ts.map +1 -0
  243. package/dist/utils/validate-job-id.js +10 -0
  244. package/dist/utils/validate-job-id.js.map +1 -0
  245. package/package.json +12 -3
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Zod-based Tool Factory — ORCH-15
3
+ *
4
+ * Produces CustomToolDefinition objects from a Zod schema.
5
+ * Validates the schema at registration time (not at LLM call time),
6
+ * catching malformed schemas early.
7
+ *
8
+ * Uses Zod 4's built-in z.toJSONSchema() for schema conversion.
9
+ */
10
+ import { z } from 'zod';
11
+ /**
12
+ * Creates a CustomToolDefinition with Zod-based input validation.
13
+ *
14
+ * The Zod schema is converted to JSON Schema at registration time
15
+ * using Zod 4's native `z.toJSONSchema()`. At call time, the handler
16
+ * receives input validated through the Zod schema.
17
+ *
18
+ * @param name - Tool name (must be non-empty)
19
+ * @param description - Human-readable description
20
+ * @param schema - Zod object schema defining the input parameters
21
+ * @param handler - Async function that receives validated input and returns a result
22
+ * @returns A CustomToolDefinition ready to pass to ExecutionLoop
23
+ *
24
+ * @example
25
+ * ```ts
26
+ * const greetTool = tool(
27
+ * 'greet',
28
+ * 'Greet someone by name',
29
+ * z.object({ name: z.string().describe('Person to greet') }),
30
+ * async (input) => `Hello, ${input.name}!`,
31
+ * );
32
+ * ```
33
+ */
34
+ export function tool(name, description, schema, handler) {
35
+ if (!name || name.trim().length === 0) {
36
+ throw new Error('Tool name must be non-empty');
37
+ }
38
+ if (!description || description.trim().length === 0) {
39
+ throw new Error('Tool description must be non-empty');
40
+ }
41
+ // Convert Zod schema to JSON Schema at registration time.
42
+ // This validates the schema structure eagerly.
43
+ const jsonSchema = z.toJSONSchema(schema);
44
+ return {
45
+ name,
46
+ description,
47
+ input_schema: jsonSchema,
48
+ handler: async (input) => {
49
+ // Parse input through Zod for runtime validation
50
+ const parsed = schema.parse(input);
51
+ return handler(parsed);
52
+ },
53
+ };
54
+ }
55
+ //# sourceMappingURL=tool-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-factory.js","sourceRoot":"","sources":["../../src/tools/tool-factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,IAAI,CAClB,IAAY,EACZ,WAAmB,EACnB,MAAS,EACT,OAAgD;IAEhD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IAED,0DAA0D;IAC1D,+CAA+C;IAC/C,MAAM,UAAU,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAE1C,OAAO;QACL,IAAI;QACJ,WAAW;QACX,YAAY,EAAE,UAAqC;QACnD,OAAO,EAAE,KAAK,EAAE,KAA8B,EAAE,EAAE;YAChD,iDAAiD;YACjD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACnC,OAAO,OAAO,CAAC,MAAoB,CAAC,CAAC;QACvC,CAAC;KACF,CAAC;AACJ,CAAC"}
package/dist/types.d.ts CHANGED
@@ -45,12 +45,135 @@ export interface ProviderQuotaSnapshot {
45
45
  usage: ProviderUsage;
46
46
  costTier: CostTier;
47
47
  }
48
- export type AgentEventType = 'thinking' | 'tool_call' | 'tool_result' | 'text' | 'error' | 'done' | 'steering';
48
+ export type AgentEventType = 'thinking' | 'tool_call' | 'tool_result' | 'text' | 'error' | 'done' | 'steering' | 'task.start' | 'task.end' | 'turn.start' | 'turn.end' | 'text.delta' | 'tool.start' | 'tool.end';
49
+ /** TYPE-06: Typed event payload interfaces for each event type */
50
+ export interface TextEventContent {
51
+ text: string;
52
+ metadata?: Record<string, unknown>;
53
+ }
54
+ export interface ThinkingEventContent {
55
+ text: string;
56
+ }
57
+ export interface ToolCallEventContent {
58
+ toolCallId: string;
59
+ tool: string;
60
+ arguments: Record<string, unknown>;
61
+ }
62
+ export interface ToolResultEventContent {
63
+ toolCallId: string;
64
+ result: unknown;
65
+ error?: string;
66
+ }
67
+ export interface ErrorEventContent {
68
+ message: string;
69
+ code?: number | string;
70
+ isAuthError?: boolean;
71
+ isQuotaError?: boolean;
72
+ subtype?: string;
73
+ details?: Record<string, unknown>;
74
+ }
75
+ export interface DoneEventContent {
76
+ text: string;
77
+ duration_ms?: number;
78
+ num_turns?: number;
79
+ total_cost_usd?: number;
80
+ model?: string;
81
+ aborted?: boolean;
82
+ [key: string]: unknown;
83
+ }
84
+ export interface SteeringEventContent {
85
+ text: string;
86
+ source: string;
87
+ author: string;
88
+ }
89
+ export interface TaskStartContent {
90
+ jobId: string;
91
+ task: string;
92
+ }
93
+ export interface TaskEndContent {
94
+ jobId: string;
95
+ duration_ms: number;
96
+ success: boolean;
97
+ }
98
+ export interface TurnStartContent {
99
+ turn: number;
100
+ }
101
+ export interface TurnEndContent {
102
+ turn: number;
103
+ usage?: {
104
+ input_tokens: number;
105
+ output_tokens: number;
106
+ cost_usd: number;
107
+ };
108
+ }
109
+ export interface TextDeltaContent {
110
+ delta: string;
111
+ }
112
+ export interface ToolStartContent {
113
+ toolCallId: string;
114
+ tool: string;
115
+ }
116
+ export interface ToolEndContent {
117
+ toolCallId: string;
118
+ tool: string;
119
+ duration_ms?: number;
120
+ error?: string;
121
+ }
122
+ /** Discriminated union of all typed event payloads */
123
+ export type AgentEventContent = TextEventContent | ThinkingEventContent | ToolCallEventContent | ToolResultEventContent | ErrorEventContent | DoneEventContent | SteeringEventContent | TaskStartContent | TaskEndContent | TurnStartContent | TurnEndContent | TextDeltaContent | ToolStartContent | ToolEndContent;
49
124
  export interface AgentEvent {
50
125
  type: AgentEventType;
51
126
  timestamp: Date;
127
+ /** LOG-04: Provider or component that emitted this event (e.g. 'claude', 'gemini', 'system') */
128
+ source?: string;
52
129
  content: unknown;
53
130
  }
131
+ /**
132
+ * Type-safe event accessors. Use these helpers to narrow event content
133
+ * after checking event.type via discriminated union pattern.
134
+ */
135
+ export declare function isTextEvent(event: AgentEvent): event is AgentEvent & {
136
+ content: TextEventContent;
137
+ };
138
+ export declare function isToolCallEvent(event: AgentEvent): event is AgentEvent & {
139
+ content: ToolCallEventContent;
140
+ };
141
+ export declare function isToolResultEvent(event: AgentEvent): event is AgentEvent & {
142
+ content: ToolResultEventContent;
143
+ };
144
+ export declare function isErrorEvent(event: AgentEvent): event is AgentEvent & {
145
+ content: ErrorEventContent;
146
+ };
147
+ export declare function isDoneEvent(event: AgentEvent): event is AgentEvent & {
148
+ content: DoneEventContent;
149
+ };
150
+ export declare function isSteeringEvent(event: AgentEvent): event is AgentEvent & {
151
+ content: SteeringEventContent;
152
+ };
153
+ export declare function isThinkingEvent(event: AgentEvent): event is AgentEvent & {
154
+ content: ThinkingEventContent;
155
+ };
156
+ export declare function isTaskStartEvent(event: AgentEvent): event is AgentEvent & {
157
+ content: TaskStartContent;
158
+ };
159
+ export declare function isTaskEndEvent(event: AgentEvent): event is AgentEvent & {
160
+ content: TaskEndContent;
161
+ };
162
+ export declare function isTurnStartEvent(event: AgentEvent): event is AgentEvent & {
163
+ content: TurnStartContent;
164
+ };
165
+ export declare function isTurnEndEvent(event: AgentEvent): event is AgentEvent & {
166
+ content: TurnEndContent;
167
+ };
168
+ export declare function isTextDeltaEvent(event: AgentEvent): event is AgentEvent & {
169
+ content: TextDeltaContent;
170
+ };
171
+ export declare function isToolStartEvent(event: AgentEvent): event is AgentEvent & {
172
+ content: ToolStartContent;
173
+ };
174
+ export declare function isToolEndEvent(event: AgentEvent): event is AgentEvent & {
175
+ content: ToolEndContent;
176
+ };
54
177
  /**
55
178
  * Complexity classification for routing decisions.
56
179
  * Spec §5.1: "When a new task arrives, the Router classifies it along two axes"
@@ -73,6 +196,13 @@ export interface TaskContext {
73
196
  maxCostTier?: CostTier;
74
197
  maxTurns?: number;
75
198
  timeout?: number;
199
+ /** Custom tools injected into the execution (memory tools, permissions, etc.) */
200
+ customTools?: Array<{
201
+ name: string;
202
+ description: string;
203
+ input_schema: Record<string, unknown>;
204
+ handler: (input: Record<string, unknown>) => Promise<unknown>;
205
+ }>;
76
206
  /** SDK canUseTool callback — enforces policy on every tool call */
77
207
  canUseTool?: (toolName: string, input: Record<string, unknown>, options: {
78
208
  signal: AbortSignal;
@@ -82,6 +212,12 @@ export interface TaskContext {
82
212
  updatedInput?: Record<string, unknown>;
83
213
  }>;
84
214
  }
215
+ /**
216
+ * TYPE-07: Known provider types for exhaustiveness checking in factory/switch code.
217
+ * Adding a new provider? Add its config type string here so the compiler
218
+ * flags every switch that needs updating.
219
+ */
220
+ export type KnownProviderType = 'claude-sdk' | 'gemini-cli' | 'ollama';
85
221
  /**
86
222
  * The core provider contract. All providers (Claude, Gemini, OpenAI, Ollama, custom)
87
223
  * implement this interface. See spec §4.2.
@@ -128,6 +264,39 @@ export interface AuditEvent {
128
264
  timestamp: Date;
129
265
  payload: Record<string, unknown>;
130
266
  }
267
+ /** TYPE-04: Base config shared by all providers */
268
+ export interface BaseProviderConfig {
269
+ name: string;
270
+ rank: number;
271
+ capabilities: ProviderCapability[];
272
+ cost_tier: CostTier;
273
+ enabled: boolean;
274
+ model?: string;
275
+ max_turns?: number;
276
+ max_concurrent_jobs?: number;
277
+ }
278
+ /** TYPE-04: Claude SDK provider config */
279
+ export interface ClaudeProviderConfig extends BaseProviderConfig {
280
+ type: 'claude-sdk';
281
+ auth_method?: 'mac_session' | 'api_key';
282
+ api_key_env?: string;
283
+ }
284
+ /** TYPE-04: Gemini CLI provider config */
285
+ export interface GeminiProviderConfig extends BaseProviderConfig {
286
+ type: 'gemini-cli';
287
+ auth_method?: 'workspace_sso' | 'api_key';
288
+ cli_path?: string;
289
+ api_key_env?: string;
290
+ }
291
+ /** TYPE-04: Ollama local provider config */
292
+ export interface OllamaProviderConfig extends BaseProviderConfig {
293
+ type: 'ollama';
294
+ endpoint?: string;
295
+ }
296
+ /**
297
+ * Flat ProviderConfig retaining all fields for backward compatibility.
298
+ * Consumers can narrow via `config.type` discriminant when available.
299
+ */
131
300
  export interface ProviderConfig {
132
301
  name: string;
133
302
  type: string;
@@ -143,6 +312,8 @@ export interface ProviderConfig {
143
312
  api_key_env?: string;
144
313
  endpoint?: string;
145
314
  }
315
+ /** TYPE-04: Typed provider config discriminated union */
316
+ export type TypedProviderConfig = ClaudeProviderConfig | GeminiProviderConfig | OllamaProviderConfig;
146
317
  export interface AgentConfig {
147
318
  name: string;
148
319
  workspace: string;
@@ -172,6 +343,24 @@ export interface FailoverConfig {
172
343
  checkpoint_on_auth_failure: boolean;
173
344
  notify_on_failover: boolean;
174
345
  }
346
+ export interface CompressionConfig {
347
+ /** Enable rolling context compression (default: true) */
348
+ enabled: boolean;
349
+ /** Token budget for recent raw messages (default: 30000) */
350
+ working_tier_max_tokens: number;
351
+ /** Token budget for compressed session observations (default: 10000) */
352
+ session_tier_max_tokens: number;
353
+ /** Token budget for cross-session context (default: 5000) */
354
+ cross_session_tier_max_tokens: number;
355
+ /** Number of messages per compression batch (default: 20) */
356
+ chunk_size: number;
357
+ /** Provider name for compression (default: cheapest available) */
358
+ model?: string;
359
+ /** Pre-compute observations before threshold (default: true) */
360
+ async_buffer: boolean;
361
+ /** Force sync compression at this token count (default: 2x working tier) */
362
+ block_after_tokens?: number;
363
+ }
175
364
  export interface MemoryConfig {
176
365
  long_term_file: string;
177
366
  daily_notes_dir: string;
@@ -181,6 +370,10 @@ export interface MemoryConfig {
181
370
  max_context_items: number;
182
371
  max_category_summaries: number;
183
372
  auto_extract_interval: number;
373
+ /** Enable automatic memory extraction after job completion (default: true) */
374
+ auto_extract: boolean;
375
+ /** Rolling context compression configuration */
376
+ compression: CompressionConfig;
184
377
  }
185
378
  export interface SecurityConfig {
186
379
  policy_file: string;
@@ -207,6 +400,7 @@ export interface SteeringConfig {
207
400
  bot_token?: string;
208
401
  allowed_users: string[];
209
402
  rate_limit_per_min?: number;
403
+ mode?: 'polling' | 'webhook';
210
404
  };
211
405
  }
212
406
  export interface NotificationsConfig {
@@ -220,6 +414,14 @@ export interface NotificationsConfig {
220
414
  /**
221
415
  * Complete Zora configuration matching config.toml structure.
222
416
  */
417
+ /** ORCH-12: Hook event names for lifecycle hooks */
418
+ export type HookEventName = 'onTaskStart' | 'beforeToolExecute' | 'afterToolExecute' | 'onTaskEnd';
419
+ /** ORCH-12: Configuration for a hook defined in config.toml [[hooks]] section */
420
+ export interface HookConfigEntry {
421
+ event: HookEventName;
422
+ match?: string;
423
+ script?: string;
424
+ }
223
425
  export interface ZoraConfig {
224
426
  agent: AgentConfig;
225
427
  providers: ProviderConfig[];
@@ -230,6 +432,8 @@ export interface ZoraConfig {
230
432
  steering: SteeringConfig;
231
433
  notifications: NotificationsConfig;
232
434
  mcp?: McpConfig;
435
+ /** ORCH-12: Lifecycle hook definitions from [[hooks]] config sections */
436
+ hooks?: HookConfigEntry[];
233
437
  }
234
438
  export interface McpServerEntry {
235
439
  type?: 'stdio' | 'sse' | 'http';
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -4,5 +4,51 @@
4
4
  * All types defined in the spec §4.2. This file is the single source of truth
5
5
  * for shared interfaces across the codebase.
6
6
  */
7
- export {};
7
+ /**
8
+ * Type-safe event accessors. Use these helpers to narrow event content
9
+ * after checking event.type via discriminated union pattern.
10
+ */
11
+ export function isTextEvent(event) {
12
+ return event.type === 'text';
13
+ }
14
+ export function isToolCallEvent(event) {
15
+ return event.type === 'tool_call';
16
+ }
17
+ export function isToolResultEvent(event) {
18
+ return event.type === 'tool_result';
19
+ }
20
+ export function isErrorEvent(event) {
21
+ return event.type === 'error';
22
+ }
23
+ export function isDoneEvent(event) {
24
+ return event.type === 'done';
25
+ }
26
+ export function isSteeringEvent(event) {
27
+ return event.type === 'steering';
28
+ }
29
+ export function isThinkingEvent(event) {
30
+ return event.type === 'thinking';
31
+ }
32
+ // TYPE-11: Lifecycle event type guards
33
+ export function isTaskStartEvent(event) {
34
+ return event.type === 'task.start';
35
+ }
36
+ export function isTaskEndEvent(event) {
37
+ return event.type === 'task.end';
38
+ }
39
+ export function isTurnStartEvent(event) {
40
+ return event.type === 'turn.start';
41
+ }
42
+ export function isTurnEndEvent(event) {
43
+ return event.type === 'turn.end';
44
+ }
45
+ export function isTextDeltaEvent(event) {
46
+ return event.type === 'text.delta';
47
+ }
48
+ export function isToolStartEvent(event) {
49
+ return event.type === 'tool.start';
50
+ }
51
+ export function isToolEndEvent(event) {
52
+ return event.type === 'tool.end';
53
+ }
8
54
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmMH;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,KAAiB;IAC3C,OAAO,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAiB;IAC/C,OAAO,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAiB;IACjD,OAAO,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAiB;IAC5C,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAiB;IAC3C,OAAO,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAiB;IAC/C,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAiB;IAC/C,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;AACnC,CAAC;AAED,uCAAuC;AAEvC,MAAM,UAAU,gBAAgB,CAAC,KAAiB;IAChD,OAAO,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAiB;IAC9C,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAiB;IAChD,OAAO,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAiB;IAC9C,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAiB;IAChD,OAAO,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAiB;IAChD,OAAO,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAiB;IAC9C,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;AACnC,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Error Utilities — Type-safe error handling helpers.
3
+ *
4
+ * TYPE-02: Provides type guards and message extractors so catch blocks
5
+ * can safely access error properties without `as any` casts.
6
+ */
7
+ /**
8
+ * Extracts a human-readable message from an unknown error value.
9
+ */
10
+ export declare function getErrorMessage(err: unknown): string;
11
+ /**
12
+ * Type guard: checks whether an unknown value has a `code` property (like Node.js system errors).
13
+ */
14
+ export declare function hasErrorCode(err: unknown): err is Error & {
15
+ code: string;
16
+ };
17
+ /**
18
+ * Type guard: checks for Node.js ENOENT errors.
19
+ */
20
+ export declare function isENOENT(err: unknown): boolean;
21
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAIpD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,KAAK,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAE1E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAE9C"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Error Utilities — Type-safe error handling helpers.
3
+ *
4
+ * TYPE-02: Provides type guards and message extractors so catch blocks
5
+ * can safely access error properties without `as any` casts.
6
+ */
7
+ /**
8
+ * Extracts a human-readable message from an unknown error value.
9
+ */
10
+ export function getErrorMessage(err) {
11
+ if (err instanceof Error)
12
+ return err.message;
13
+ if (typeof err === 'string')
14
+ return err;
15
+ return 'Unknown error';
16
+ }
17
+ /**
18
+ * Type guard: checks whether an unknown value has a `code` property (like Node.js system errors).
19
+ */
20
+ export function hasErrorCode(err) {
21
+ return err instanceof Error && 'code' in err && typeof err.code === 'string';
22
+ }
23
+ /**
24
+ * Type guard: checks for Node.js ENOENT errors.
25
+ */
26
+ export function isENOENT(err) {
27
+ return hasErrorCode(err) && err.code === 'ENOENT';
28
+ }
29
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAAY;IAC1C,IAAI,GAAG,YAAY,KAAK;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC;IAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxC,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,OAAO,GAAG,YAAY,KAAK,IAAI,MAAM,IAAI,GAAG,IAAI,OAAQ,GAA+B,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC5G,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAY;IACnC,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC;AACpD,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Event Verbosity Filter — TYPE-12
3
+ *
4
+ * Filters AgentEvent streams based on verbosity level, following the
5
+ * ia-agents printStream pattern:
6
+ *
7
+ * - terse: Only text + done + error (end-user facing)
8
+ * - normal: + tool_call + tool_result + steering (developer facing)
9
+ * - verbose: Everything including thinking, deltas, lifecycle markers (debug)
10
+ */
11
+ import type { AgentEvent } from '../types.js';
12
+ export type VerbosityLevel = 'terse' | 'normal' | 'verbose';
13
+ /**
14
+ * Returns true if the event should be included at the given verbosity level.
15
+ */
16
+ export declare function shouldIncludeEvent(event: AgentEvent, level: VerbosityLevel): boolean;
17
+ /**
18
+ * Filters an array of events by verbosity level.
19
+ */
20
+ export declare function filterEvents(events: AgentEvent[], level: VerbosityLevel): AgentEvent[];
21
+ /**
22
+ * Creates an async generator that filters events from a source by verbosity.
23
+ */
24
+ export declare function filterEventStream(source: AsyncIterable<AgentEvent>, level: VerbosityLevel): AsyncGenerator<AgentEvent>;
25
+ //# sourceMappingURL=event-filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-filter.d.ts","sourceRoot":"","sources":["../../src/utils/event-filter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAkB,MAAM,aAAa,CAAC;AAE9D,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAkC5D;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAEpF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,cAAc,GAAG,UAAU,EAAE,CAEtF;AAED;;GAEG;AACH,wBAAuB,iBAAiB,CACtC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,EACjC,KAAK,EAAE,cAAc,GACpB,cAAc,CAAC,UAAU,CAAC,CAM5B"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Event Verbosity Filter — TYPE-12
3
+ *
4
+ * Filters AgentEvent streams based on verbosity level, following the
5
+ * ia-agents printStream pattern:
6
+ *
7
+ * - terse: Only text + done + error (end-user facing)
8
+ * - normal: + tool_call + tool_result + steering (developer facing)
9
+ * - verbose: Everything including thinking, deltas, lifecycle markers (debug)
10
+ */
11
+ /** Event types included at each verbosity level */
12
+ const TERSE_EVENTS = new Set([
13
+ 'text',
14
+ 'done',
15
+ 'error',
16
+ ]);
17
+ const NORMAL_EVENTS = new Set([
18
+ ...TERSE_EVENTS,
19
+ 'tool_call',
20
+ 'tool_result',
21
+ 'steering',
22
+ ]);
23
+ const VERBOSE_EVENTS = new Set([
24
+ ...NORMAL_EVENTS,
25
+ 'thinking',
26
+ 'task.start',
27
+ 'task.end',
28
+ 'turn.start',
29
+ 'turn.end',
30
+ 'text.delta',
31
+ 'tool.start',
32
+ 'tool.end',
33
+ ]);
34
+ const LEVEL_MAP = {
35
+ terse: TERSE_EVENTS,
36
+ normal: NORMAL_EVENTS,
37
+ verbose: VERBOSE_EVENTS,
38
+ };
39
+ /**
40
+ * Returns true if the event should be included at the given verbosity level.
41
+ */
42
+ export function shouldIncludeEvent(event, level) {
43
+ return LEVEL_MAP[level].has(event.type);
44
+ }
45
+ /**
46
+ * Filters an array of events by verbosity level.
47
+ */
48
+ export function filterEvents(events, level) {
49
+ return events.filter(e => shouldIncludeEvent(e, level));
50
+ }
51
+ /**
52
+ * Creates an async generator that filters events from a source by verbosity.
53
+ */
54
+ export async function* filterEventStream(source, level) {
55
+ for await (const event of source) {
56
+ if (shouldIncludeEvent(event, level)) {
57
+ yield event;
58
+ }
59
+ }
60
+ }
61
+ //# sourceMappingURL=event-filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-filter.js","sourceRoot":"","sources":["../../src/utils/event-filter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,mDAAmD;AACnD,MAAM,YAAY,GAAwB,IAAI,GAAG,CAAC;IAChD,MAAM;IACN,MAAM;IACN,OAAO;CACR,CAAC,CAAC;AAEH,MAAM,aAAa,GAAwB,IAAI,GAAG,CAAC;IACjD,GAAG,YAAY;IACf,WAAW;IACX,aAAa;IACb,UAAU;CACX,CAAC,CAAC;AAEH,MAAM,cAAc,GAAwB,IAAI,GAAG,CAAC;IAClD,GAAG,aAAa;IAChB,UAAU;IACV,YAAY;IACZ,UAAU;IACV,YAAY;IACZ,UAAU;IACV,YAAY;IACZ,YAAY;IACZ,UAAU;CACX,CAAC,CAAC;AAEH,MAAM,SAAS,GAAgD;IAC7D,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,aAAa;IACrB,OAAO,EAAE,cAAc;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAiB,EAAE,KAAqB;IACzE,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,MAAoB,EAAE,KAAqB;IACtE,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,iBAAiB,CACtC,MAAiC,EACjC,KAAqB;IAErB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,IAAI,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;AACH,CAAC"}