@namzu/sdk 0.1.4 → 0.1.5-rc.1-fix
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.
- package/CHANGELOG.md +8 -0
- package/dist/advisory/executor.d.ts +2 -2
- package/dist/advisory/executor.d.ts.map +1 -1
- package/dist/advisory/executor.js.map +1 -1
- package/dist/agents/AbstractAgent.d.ts +20 -2
- package/dist/agents/AbstractAgent.d.ts.map +1 -1
- package/dist/agents/AbstractAgent.js +23 -1
- package/dist/agents/AbstractAgent.js.map +1 -1
- package/dist/agents/PipelineAgent.d.ts.map +1 -1
- package/dist/agents/PipelineAgent.js +1 -1
- package/dist/agents/PipelineAgent.js.map +1 -1
- package/dist/agents/ReactiveAgent.d.ts.map +1 -1
- package/dist/agents/ReactiveAgent.js +1 -0
- package/dist/agents/ReactiveAgent.js.map +1 -1
- package/dist/agents/RouterAgent.d.ts.map +1 -1
- package/dist/agents/RouterAgent.js +4 -2
- package/dist/agents/RouterAgent.js.map +1 -1
- package/dist/agents/SupervisorAgent.d.ts.map +1 -1
- package/dist/agents/SupervisorAgent.js +4 -1
- package/dist/agents/SupervisorAgent.js.map +1 -1
- package/dist/agents/__tests__/lock.test.d.ts +2 -0
- package/dist/agents/__tests__/lock.test.d.ts.map +1 -0
- package/dist/agents/__tests__/lock.test.js +131 -0
- package/dist/agents/__tests__/lock.test.js.map +1 -0
- package/dist/agents/index.d.ts +2 -0
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +1 -0
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/lock.d.ts +42 -0
- package/dist/agents/lock.d.ts.map +1 -0
- package/dist/agents/lock.js +54 -0
- package/dist/agents/lock.js.map +1 -0
- package/dist/bridge/a2a/message.d.ts.map +1 -1
- package/dist/bridge/a2a/message.js.map +1 -1
- package/dist/bridge/tools/connector/router.d.ts +4 -5
- package/dist/bridge/tools/connector/router.d.ts.map +1 -1
- package/dist/bridge/tools/connector/router.js.map +1 -1
- package/dist/compaction/__tests__/SlidingWindowManager.test.d.ts +2 -0
- package/dist/compaction/__tests__/SlidingWindowManager.test.d.ts.map +1 -0
- package/dist/compaction/__tests__/SlidingWindowManager.test.js +113 -0
- package/dist/compaction/__tests__/SlidingWindowManager.test.js.map +1 -0
- package/dist/compaction/__tests__/dangling.test.d.ts +2 -0
- package/dist/compaction/__tests__/dangling.test.d.ts.map +1 -0
- package/dist/compaction/__tests__/dangling.test.js +356 -0
- package/dist/compaction/__tests__/dangling.test.js.map +1 -0
- package/dist/compaction/__tests__/factory.test.d.ts +2 -0
- package/dist/compaction/__tests__/factory.test.d.ts.map +1 -0
- package/dist/compaction/__tests__/factory.test.js +43 -0
- package/dist/compaction/__tests__/factory.test.js.map +1 -0
- package/dist/compaction/dangling.d.ts +96 -0
- package/dist/compaction/dangling.d.ts.map +1 -0
- package/dist/compaction/dangling.js +274 -0
- package/dist/compaction/dangling.js.map +1 -0
- package/dist/compaction/factory.d.ts +20 -0
- package/dist/compaction/factory.d.ts.map +1 -0
- package/dist/compaction/factory.js +35 -0
- package/dist/compaction/factory.js.map +1 -0
- package/dist/compaction/index.d.ts +5 -0
- package/dist/compaction/index.d.ts.map +1 -1
- package/dist/compaction/index.js +3 -0
- package/dist/compaction/index.js.map +1 -1
- package/dist/compaction/interface.d.ts +33 -0
- package/dist/compaction/interface.d.ts.map +1 -0
- package/dist/compaction/interface.js +2 -0
- package/dist/compaction/interface.js.map +1 -0
- package/dist/compaction/managers/index.d.ts +4 -0
- package/dist/compaction/managers/index.d.ts.map +1 -0
- package/dist/compaction/managers/index.js +4 -0
- package/dist/compaction/managers/index.js.map +1 -0
- package/dist/compaction/managers/null.d.ts +12 -0
- package/dist/compaction/managers/null.d.ts.map +1 -0
- package/dist/compaction/managers/null.js +15 -0
- package/dist/compaction/managers/null.js.map +1 -0
- package/dist/compaction/managers/slidingWindow.d.ts +27 -0
- package/dist/compaction/managers/slidingWindow.d.ts.map +1 -0
- package/dist/compaction/managers/slidingWindow.js +41 -0
- package/dist/compaction/managers/slidingWindow.js.map +1 -0
- package/dist/compaction/managers/structured.d.ts +23 -0
- package/dist/compaction/managers/structured.d.ts.map +1 -0
- package/dist/compaction/managers/structured.js +144 -0
- package/dist/compaction/managers/structured.js.map +1 -0
- package/dist/compaction/types.d.ts +1 -1
- package/dist/compaction/types.d.ts.map +1 -1
- package/dist/config/runtime.d.ts +16 -16
- package/dist/config/runtime.js +1 -1
- package/dist/config/runtime.js.map +1 -1
- package/dist/constants/agent/index.d.ts +1 -1
- package/dist/constants/agent/index.d.ts.map +1 -1
- package/dist/gateway/local.d.ts +2 -2
- package/dist/gateway/local.d.ts.map +1 -1
- package/dist/gateway/local.js +10 -1
- package/dist/gateway/local.js.map +1 -1
- package/dist/index.d.ts +18 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -2
- package/dist/index.js.map +1 -1
- package/dist/manager/agent/lifecycle.d.ts.map +1 -1
- package/dist/manager/agent/lifecycle.js +3 -2
- package/dist/manager/agent/lifecycle.js.map +1 -1
- package/dist/manager/run/persistence.d.ts +1 -2
- package/dist/manager/run/persistence.d.ts.map +1 -1
- package/dist/manager/run/persistence.js +2 -1
- package/dist/manager/run/persistence.js.map +1 -1
- package/dist/plugin/__tests__/lifecycle.test.d.ts +2 -0
- package/dist/plugin/__tests__/lifecycle.test.d.ts.map +1 -0
- package/dist/plugin/__tests__/lifecycle.test.js +332 -0
- package/dist/plugin/__tests__/lifecycle.test.js.map +1 -0
- package/dist/plugin/lifecycle.d.ts +2 -2
- package/dist/plugin/lifecycle.d.ts.map +1 -1
- package/dist/plugin/lifecycle.js +28 -2
- package/dist/plugin/lifecycle.js.map +1 -1
- package/dist/plugin/resolver.d.ts +2 -2
- package/dist/plugin/resolver.d.ts.map +1 -1
- package/dist/plugin/resolver.js.map +1 -1
- package/dist/registry/agent/definitions.d.ts +3 -2
- package/dist/registry/agent/definitions.d.ts.map +1 -1
- package/dist/registry/agent/definitions.js.map +1 -1
- package/dist/registry/tool/execute.d.ts +2 -5
- package/dist/registry/tool/execute.d.ts.map +1 -1
- package/dist/registry/tool/execute.js.map +1 -1
- package/dist/runtime/decision/parser.d.ts.map +1 -1
- package/dist/runtime/decision/parser.js +15 -40
- package/dist/runtime/decision/parser.js.map +1 -1
- package/dist/runtime/query/context-cache.d.ts +3 -3
- package/dist/runtime/query/context-cache.d.ts.map +1 -1
- package/dist/runtime/query/context-cache.js.map +1 -1
- package/dist/runtime/query/context.d.ts +1 -1
- package/dist/runtime/query/context.d.ts.map +1 -1
- package/dist/runtime/query/context.js.map +1 -1
- package/dist/runtime/query/events.js +11 -11
- package/dist/runtime/query/events.js.map +1 -1
- package/dist/runtime/query/executor.d.ts +4 -2
- package/dist/runtime/query/executor.d.ts.map +1 -1
- package/dist/runtime/query/executor.js +1 -0
- package/dist/runtime/query/executor.js.map +1 -1
- package/dist/runtime/query/index.d.ts +5 -3
- package/dist/runtime/query/index.d.ts.map +1 -1
- package/dist/runtime/query/index.js +2 -1
- package/dist/runtime/query/index.js.map +1 -1
- package/dist/runtime/query/iteration/index.d.ts +2 -2
- package/dist/runtime/query/iteration/index.d.ts.map +1 -1
- package/dist/runtime/query/iteration/index.js.map +1 -1
- package/dist/runtime/query/iteration/phases/advisory.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/advisory.js.map +1 -1
- package/dist/runtime/query/iteration/phases/checkpoint.d.ts +1 -1
- package/dist/runtime/query/iteration/phases/checkpoint.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/checkpoint.js.map +1 -1
- package/dist/runtime/query/iteration/phases/context.d.ts +2 -2
- package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/plan.d.ts +1 -1
- package/dist/runtime/query/iteration/phases/plan.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/plan.js.map +1 -1
- package/dist/runtime/query/prompt.d.ts +2 -2
- package/dist/runtime/query/prompt.d.ts.map +1 -1
- package/dist/runtime/query/prompt.js.map +1 -1
- package/dist/runtime/query/result.d.ts +1 -1
- package/dist/runtime/query/result.d.ts.map +1 -1
- package/dist/runtime/query/result.js.map +1 -1
- package/dist/runtime/query/tooling.d.ts +4 -2
- package/dist/runtime/query/tooling.d.ts.map +1 -1
- package/dist/runtime/query/tooling.js +1 -0
- package/dist/runtime/query/tooling.js.map +1 -1
- package/dist/store/conversation/memory.d.ts +1 -1
- package/dist/store/conversation/memory.d.ts.map +1 -1
- package/dist/store/conversation/memory.js +15 -3
- package/dist/store/conversation/memory.js.map +1 -1
- package/dist/store/run/disk.d.ts +1 -2
- package/dist/store/run/disk.d.ts.map +1 -1
- package/dist/store/run/disk.js +21 -13
- package/dist/store/run/disk.js.map +1 -1
- package/dist/tools/builtins/__tests__/structuredOutput.example.d.ts +140 -0
- package/dist/tools/builtins/__tests__/structuredOutput.example.d.ts.map +1 -0
- package/dist/tools/builtins/__tests__/structuredOutput.example.js +183 -0
- package/dist/tools/builtins/__tests__/structuredOutput.example.js.map +1 -0
- package/dist/tools/builtins/__tests__/structuredOutput.test.d.ts +2 -0
- package/dist/tools/builtins/__tests__/structuredOutput.test.d.ts.map +1 -0
- package/dist/tools/builtins/__tests__/structuredOutput.test.js +224 -0
- package/dist/tools/builtins/__tests__/structuredOutput.test.js.map +1 -0
- package/dist/tools/builtins/grep.d.ts.map +1 -1
- package/dist/tools/builtins/grep.js +1 -2
- package/dist/tools/builtins/grep.js.map +1 -1
- package/dist/tools/builtins/index.d.ts +1 -0
- package/dist/tools/builtins/index.d.ts.map +1 -1
- package/dist/tools/builtins/index.js +3 -0
- package/dist/tools/builtins/index.js.map +1 -1
- package/dist/tools/builtins/ls.d.ts +1 -1
- package/dist/tools/builtins/structuredOutput.d.ts +27 -0
- package/dist/tools/builtins/structuredOutput.d.ts.map +1 -0
- package/dist/tools/builtins/structuredOutput.js +46 -0
- package/dist/tools/builtins/structuredOutput.js.map +1 -0
- package/dist/tools/task/list.d.ts +1 -1
- package/dist/tools/task/list.d.ts.map +1 -1
- package/dist/tools/task/list.js.map +1 -1
- package/dist/types/agent/base.d.ts +4 -1
- package/dist/types/agent/base.d.ts.map +1 -1
- package/dist/types/agent/index.d.ts +1 -0
- package/dist/types/agent/index.d.ts.map +1 -1
- package/dist/types/agent/index.js +1 -0
- package/dist/types/agent/index.js.map +1 -1
- package/dist/types/agent/manager.d.ts +27 -0
- package/dist/types/agent/manager.d.ts.map +1 -0
- package/dist/types/agent/manager.js +2 -0
- package/dist/types/agent/manager.js.map +1 -0
- package/dist/types/agent/reactive.d.ts +2 -2
- package/dist/types/agent/reactive.d.ts.map +1 -1
- package/dist/types/agent/supervisor.d.ts +2 -2
- package/dist/types/agent/supervisor.d.ts.map +1 -1
- package/dist/types/agent/task.d.ts +0 -2
- package/dist/types/agent/task.d.ts.map +1 -1
- package/dist/types/agent/task.js +0 -2
- package/dist/types/agent/task.js.map +1 -1
- package/dist/types/common/index.d.ts +0 -1
- package/dist/types/common/index.d.ts.map +1 -1
- package/dist/types/common/index.js +0 -1
- package/dist/types/common/index.js.map +1 -1
- package/dist/types/hitl/index.d.ts +1 -2
- package/dist/types/hitl/index.d.ts.map +1 -1
- package/dist/types/hitl/index.js.map +1 -1
- package/dist/types/invocation/__tests__/state.test.d.ts +2 -0
- package/dist/types/invocation/__tests__/state.test.d.ts.map +1 -0
- package/dist/types/invocation/__tests__/state.test.js +167 -0
- package/dist/types/invocation/__tests__/state.test.js.map +1 -0
- package/dist/types/invocation/index.d.ts +37 -0
- package/dist/types/invocation/index.d.ts.map +1 -0
- package/dist/types/invocation/index.js +23 -0
- package/dist/types/invocation/index.js.map +1 -0
- package/dist/types/plugin/index.d.ts +6 -0
- package/dist/types/plugin/index.d.ts.map +1 -1
- package/dist/types/plugin/index.js +16 -0
- package/dist/types/plugin/index.js.map +1 -1
- package/dist/types/run/events.d.ts +1 -1
- package/dist/types/run/events.d.ts.map +1 -1
- package/dist/types/run/index.d.ts +1 -0
- package/dist/types/run/index.d.ts.map +1 -1
- package/dist/types/run/index.js +1 -0
- package/dist/types/run/index.js.map +1 -1
- package/dist/types/run/metadata.d.ts +1 -1
- package/dist/types/run/metadata.d.ts.map +1 -1
- package/dist/types/run/state.d.ts +1 -1
- package/dist/types/run/state.d.ts.map +1 -1
- package/dist/types/run/stop-reason.d.ts +2 -0
- package/dist/types/run/stop-reason.d.ts.map +1 -0
- package/dist/types/run/stop-reason.js +2 -0
- package/dist/types/run/stop-reason.js.map +1 -0
- package/dist/types/structured-output/index.d.ts +51 -0
- package/dist/types/structured-output/index.d.ts.map +1 -0
- package/dist/types/structured-output/index.js +2 -0
- package/dist/types/structured-output/index.js.map +1 -0
- package/dist/types/tool/index.d.ts +36 -0
- package/dist/types/tool/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/advisory/executor.ts +2 -4
- package/src/agents/AbstractAgent.ts +26 -3
- package/src/agents/PipelineAgent.ts +1 -1
- package/src/agents/ReactiveAgent.ts +1 -0
- package/src/agents/RouterAgent.ts +8 -2
- package/src/agents/SupervisorAgent.ts +5 -1
- package/src/agents/__tests__/lock.test.ts +158 -0
- package/src/agents/index.ts +2 -0
- package/src/agents/lock.ts +66 -0
- package/src/bridge/a2a/message.ts +1 -2
- package/src/bridge/tools/connector/router.ts +4 -5
- package/src/compaction/__tests__/SlidingWindowManager.test.ts +139 -0
- package/src/compaction/__tests__/dangling.test.ts +447 -0
- package/src/compaction/__tests__/factory.test.ts +53 -0
- package/src/compaction/dangling.ts +321 -0
- package/src/compaction/factory.ts +41 -0
- package/src/compaction/index.ts +14 -0
- package/src/compaction/interface.ts +35 -0
- package/src/compaction/managers/index.ts +3 -0
- package/src/compaction/managers/null.ts +19 -0
- package/src/compaction/managers/slidingWindow.ts +57 -0
- package/src/compaction/managers/structured.ts +169 -0
- package/src/compaction/types.ts +1 -1
- package/src/config/runtime.ts +1 -1
- package/src/constants/agent/index.ts +1 -1
- package/src/gateway/local.ts +13 -4
- package/src/index.ts +38 -1
- package/src/manager/agent/lifecycle.ts +3 -2
- package/src/manager/run/persistence.ts +3 -8
- package/src/plugin/__tests__/lifecycle.test.ts +430 -0
- package/src/plugin/lifecycle.ts +32 -6
- package/src/plugin/resolver.ts +3 -3
- package/src/registry/agent/definitions.ts +3 -2
- package/src/registry/tool/execute.ts +2 -5
- package/src/runtime/decision/parser.ts +15 -40
- package/src/runtime/query/context-cache.ts +3 -4
- package/src/runtime/query/context.ts +1 -2
- package/src/runtime/query/events.ts +11 -11
- package/src/runtime/query/executor.ts +5 -3
- package/src/runtime/query/index.ts +11 -4
- package/src/runtime/query/iteration/index.ts +2 -2
- package/src/runtime/query/iteration/phases/advisory.ts +1 -2
- package/src/runtime/query/iteration/phases/checkpoint.ts +1 -2
- package/src/runtime/query/iteration/phases/context.ts +2 -2
- package/src/runtime/query/iteration/phases/plan.ts +1 -2
- package/src/runtime/query/prompt.ts +3 -3
- package/src/runtime/query/result.ts +1 -2
- package/src/runtime/query/tooling.ts +5 -2
- package/src/store/conversation/memory.ts +21 -5
- package/src/store/run/disk.ts +18 -16
- package/src/tools/builtins/__tests__/structuredOutput.example.ts +221 -0
- package/src/tools/builtins/__tests__/structuredOutput.test.ts +275 -0
- package/src/tools/builtins/grep.ts +1 -2
- package/src/tools/builtins/index.ts +3 -0
- package/src/tools/builtins/structuredOutput.ts +55 -0
- package/src/tools/task/list.ts +1 -2
- package/src/types/agent/base.ts +5 -1
- package/src/types/agent/index.ts +1 -0
- package/src/types/agent/manager.ts +36 -0
- package/src/types/agent/reactive.ts +2 -2
- package/src/types/agent/supervisor.ts +2 -2
- package/src/types/agent/task.ts +0 -4
- package/src/types/common/index.ts +0 -2
- package/src/types/hitl/index.ts +1 -2
- package/src/types/invocation/__tests__/state.test.ts +210 -0
- package/src/types/invocation/index.ts +55 -0
- package/src/types/plugin/index.ts +19 -0
- package/src/types/run/events.ts +1 -10
- package/src/types/run/index.ts +1 -0
- package/src/types/run/metadata.ts +1 -1
- package/src/types/run/state.ts +1 -1
- package/src/types/run/stop-reason.ts +10 -0
- package/src/types/structured-output/index.ts +56 -0
- package/src/types/tool/index.ts +45 -0
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { STRUCTURED_OUTPUT_TOOL_NAME, createStructuredOutputTool } from '../structuredOutput.js';
|
|
4
|
+
describe('structuredOutput', () => {
|
|
5
|
+
describe('STRUCTURED_OUTPUT_TOOL_NAME', () => {
|
|
6
|
+
it('should export the constant with correct value', () => {
|
|
7
|
+
expect(STRUCTURED_OUTPUT_TOOL_NAME).toBe('structured_output');
|
|
8
|
+
});
|
|
9
|
+
});
|
|
10
|
+
describe('createStructuredOutputTool', () => {
|
|
11
|
+
it('should create a tool with correct name and description', () => {
|
|
12
|
+
const schema = z.object({ result: z.string() });
|
|
13
|
+
const tool = createStructuredOutputTool(schema);
|
|
14
|
+
expect(tool.name).toBe('structured_output');
|
|
15
|
+
expect(tool.description).toContain('MUST call this tool');
|
|
16
|
+
});
|
|
17
|
+
it('should have correct tool properties', () => {
|
|
18
|
+
const schema = z.object({ result: z.string() });
|
|
19
|
+
const tool = createStructuredOutputTool(schema);
|
|
20
|
+
expect(tool.category).toBe('analysis');
|
|
21
|
+
expect(tool.isReadOnly?.({})).toBe(true);
|
|
22
|
+
expect(tool.isDestructive?.({})).toBe(false);
|
|
23
|
+
expect(tool.isConcurrencySafe?.({})).toBe(true);
|
|
24
|
+
expect(tool.permissions).toEqual([]);
|
|
25
|
+
});
|
|
26
|
+
it('should use the provided schema as input schema', () => {
|
|
27
|
+
const schema = z.object({
|
|
28
|
+
title: z.string(),
|
|
29
|
+
count: z.number(),
|
|
30
|
+
});
|
|
31
|
+
const tool = createStructuredOutputTool(schema);
|
|
32
|
+
expect(tool.inputSchema).toBe(schema);
|
|
33
|
+
});
|
|
34
|
+
it('should execute successfully with valid input', async () => {
|
|
35
|
+
const schema = z.object({
|
|
36
|
+
title: z.string(),
|
|
37
|
+
summary: z.string(),
|
|
38
|
+
});
|
|
39
|
+
const tool = createStructuredOutputTool(schema);
|
|
40
|
+
const input = {
|
|
41
|
+
title: 'Test Title',
|
|
42
|
+
summary: 'Test Summary',
|
|
43
|
+
};
|
|
44
|
+
const mockContext = {
|
|
45
|
+
runId: 'run_test',
|
|
46
|
+
workingDirectory: '/tmp',
|
|
47
|
+
abortSignal: new AbortController().signal,
|
|
48
|
+
env: {},
|
|
49
|
+
log: () => { },
|
|
50
|
+
};
|
|
51
|
+
const result = await tool.execute(input, mockContext);
|
|
52
|
+
expect(result.success).toBe(true);
|
|
53
|
+
expect(result.data).toEqual(input);
|
|
54
|
+
expect(result.output).toBe(JSON.stringify(input));
|
|
55
|
+
expect(result.error).toBeUndefined();
|
|
56
|
+
});
|
|
57
|
+
it('should handle complex nested schemas', async () => {
|
|
58
|
+
const schema = z.object({
|
|
59
|
+
name: z.string(),
|
|
60
|
+
metadata: z.object({
|
|
61
|
+
tags: z.array(z.string()),
|
|
62
|
+
settings: z.record(z.unknown()),
|
|
63
|
+
}),
|
|
64
|
+
});
|
|
65
|
+
const tool = createStructuredOutputTool(schema);
|
|
66
|
+
const input = {
|
|
67
|
+
name: 'Complex Object',
|
|
68
|
+
metadata: {
|
|
69
|
+
tags: ['tag1', 'tag2'],
|
|
70
|
+
settings: { timeout: 5000, retries: 3 },
|
|
71
|
+
},
|
|
72
|
+
};
|
|
73
|
+
const mockContext = {
|
|
74
|
+
runId: 'run_test',
|
|
75
|
+
workingDirectory: '/tmp',
|
|
76
|
+
abortSignal: new AbortController().signal,
|
|
77
|
+
env: {},
|
|
78
|
+
log: () => { },
|
|
79
|
+
};
|
|
80
|
+
const result = await tool.execute(input, mockContext);
|
|
81
|
+
expect(result.success).toBe(true);
|
|
82
|
+
expect(result.data).toEqual(input);
|
|
83
|
+
const parsed = JSON.parse(result.output);
|
|
84
|
+
expect(parsed).toEqual(input);
|
|
85
|
+
});
|
|
86
|
+
it('should handle arrays in schema', async () => {
|
|
87
|
+
const schema = z.object({
|
|
88
|
+
items: z.array(z.object({
|
|
89
|
+
id: z.number(),
|
|
90
|
+
value: z.string(),
|
|
91
|
+
})),
|
|
92
|
+
});
|
|
93
|
+
const tool = createStructuredOutputTool(schema);
|
|
94
|
+
const input = {
|
|
95
|
+
items: [
|
|
96
|
+
{ id: 1, value: 'first' },
|
|
97
|
+
{ id: 2, value: 'second' },
|
|
98
|
+
],
|
|
99
|
+
};
|
|
100
|
+
const mockContext = {
|
|
101
|
+
runId: 'run_test',
|
|
102
|
+
workingDirectory: '/tmp',
|
|
103
|
+
abortSignal: new AbortController().signal,
|
|
104
|
+
env: {},
|
|
105
|
+
log: () => { },
|
|
106
|
+
};
|
|
107
|
+
const result = await tool.execute(input, mockContext);
|
|
108
|
+
expect(result.success).toBe(true);
|
|
109
|
+
expect(result.data).toEqual(input);
|
|
110
|
+
expect(JSON.parse(result.output)).toEqual(input);
|
|
111
|
+
});
|
|
112
|
+
it('should handle optional fields', async () => {
|
|
113
|
+
const schema = z.object({
|
|
114
|
+
required: z.string(),
|
|
115
|
+
optional: z.string().optional(),
|
|
116
|
+
});
|
|
117
|
+
const tool = createStructuredOutputTool(schema);
|
|
118
|
+
const input = {
|
|
119
|
+
required: 'value',
|
|
120
|
+
optional: undefined,
|
|
121
|
+
};
|
|
122
|
+
const mockContext = {
|
|
123
|
+
runId: 'run_test',
|
|
124
|
+
workingDirectory: '/tmp',
|
|
125
|
+
abortSignal: new AbortController().signal,
|
|
126
|
+
env: {},
|
|
127
|
+
log: () => { },
|
|
128
|
+
};
|
|
129
|
+
const result = await tool.execute(input, mockContext);
|
|
130
|
+
expect(result.success).toBe(true);
|
|
131
|
+
expect(result.data?.required).toBe('value');
|
|
132
|
+
});
|
|
133
|
+
it('should handle boolean and number values', async () => {
|
|
134
|
+
const schema = z.object({
|
|
135
|
+
active: z.boolean(),
|
|
136
|
+
count: z.number(),
|
|
137
|
+
rate: z.number(),
|
|
138
|
+
});
|
|
139
|
+
const tool = createStructuredOutputTool(schema);
|
|
140
|
+
const input = {
|
|
141
|
+
active: true,
|
|
142
|
+
count: 42,
|
|
143
|
+
rate: 3.14,
|
|
144
|
+
};
|
|
145
|
+
const mockContext = {
|
|
146
|
+
runId: 'run_test',
|
|
147
|
+
workingDirectory: '/tmp',
|
|
148
|
+
abortSignal: new AbortController().signal,
|
|
149
|
+
env: {},
|
|
150
|
+
log: () => { },
|
|
151
|
+
};
|
|
152
|
+
const result = await tool.execute(input, mockContext);
|
|
153
|
+
expect(result.success).toBe(true);
|
|
154
|
+
expect(result.data).toEqual(input);
|
|
155
|
+
});
|
|
156
|
+
it('should support union types', async () => {
|
|
157
|
+
const schema = z.object({
|
|
158
|
+
status: z.enum(['pending', 'completed', 'failed']),
|
|
159
|
+
result: z.union([z.string(), z.number()]),
|
|
160
|
+
});
|
|
161
|
+
const tool = createStructuredOutputTool(schema);
|
|
162
|
+
const input = {
|
|
163
|
+
status: 'completed',
|
|
164
|
+
result: 'success',
|
|
165
|
+
};
|
|
166
|
+
const mockContext = {
|
|
167
|
+
runId: 'run_test',
|
|
168
|
+
workingDirectory: '/tmp',
|
|
169
|
+
abortSignal: new AbortController().signal,
|
|
170
|
+
env: {},
|
|
171
|
+
log: () => { },
|
|
172
|
+
};
|
|
173
|
+
const result = await tool.execute(input, mockContext);
|
|
174
|
+
expect(result.success).toBe(true);
|
|
175
|
+
expect(result.data?.status).toBe('completed');
|
|
176
|
+
expect(result.data?.result).toBe('success');
|
|
177
|
+
});
|
|
178
|
+
it('should create multiple independent tools', () => {
|
|
179
|
+
const schema1 = z.object({ type: z.literal('type1'), data: z.string() });
|
|
180
|
+
const schema2 = z.object({ type: z.literal('type2'), count: z.number() });
|
|
181
|
+
const tool1 = createStructuredOutputTool(schema1);
|
|
182
|
+
const tool2 = createStructuredOutputTool(schema2);
|
|
183
|
+
// Both should have the same name (that's the point - it's a special tool)
|
|
184
|
+
expect(tool1.name).toBe(tool2.name);
|
|
185
|
+
expect(tool1.name).toBe('structured_output');
|
|
186
|
+
// But their input schemas should be different
|
|
187
|
+
expect(tool1.inputSchema).not.toBe(tool2.inputSchema);
|
|
188
|
+
});
|
|
189
|
+
it('should not throw on execute', async () => {
|
|
190
|
+
const schema = z.object({ value: z.string() });
|
|
191
|
+
const tool = createStructuredOutputTool(schema);
|
|
192
|
+
const mockContext = {
|
|
193
|
+
runId: 'run_test',
|
|
194
|
+
workingDirectory: '/tmp',
|
|
195
|
+
abortSignal: new AbortController().signal,
|
|
196
|
+
env: {},
|
|
197
|
+
log: () => { },
|
|
198
|
+
};
|
|
199
|
+
await expect(tool.execute({ value: 'test' }, mockContext)).resolves.toBeDefined();
|
|
200
|
+
});
|
|
201
|
+
it('should handle null values in nullable fields', async () => {
|
|
202
|
+
const schema = z.object({
|
|
203
|
+
required: z.string(),
|
|
204
|
+
nullable: z.string().nullable(),
|
|
205
|
+
});
|
|
206
|
+
const tool = createStructuredOutputTool(schema);
|
|
207
|
+
const input = {
|
|
208
|
+
required: 'value',
|
|
209
|
+
nullable: null,
|
|
210
|
+
};
|
|
211
|
+
const mockContext = {
|
|
212
|
+
runId: 'run_test',
|
|
213
|
+
workingDirectory: '/tmp',
|
|
214
|
+
abortSignal: new AbortController().signal,
|
|
215
|
+
env: {},
|
|
216
|
+
log: () => { },
|
|
217
|
+
};
|
|
218
|
+
const result = await tool.execute(input, mockContext);
|
|
219
|
+
expect(result.success).toBe(true);
|
|
220
|
+
expect(result.data?.nullable).toBeNull();
|
|
221
|
+
});
|
|
222
|
+
});
|
|
223
|
+
});
|
|
224
|
+
//# sourceMappingURL=structuredOutput.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structuredOutput.test.js","sourceRoot":"","sources":["../../../../src/tools/builtins/__tests__/structuredOutput.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/grep.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/grep.ts"],"names":[],"mappings":"AAyCA,eAAO,MAAM,QAAQ;;;;;;;EA4GnB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grep.js","sourceRoot":"","sources":["../../../src/tools/builtins/grep.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"grep.js","sourceRoot":"","sources":["../../../src/tools/builtins/grep.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ export { GlobTool } from './glob.js';
|
|
|
6
6
|
export { GrepTool } from './grep.js';
|
|
7
7
|
export { LsTool } from './ls.js';
|
|
8
8
|
export { SearchToolsTool } from './search-tools.js';
|
|
9
|
+
export { createStructuredOutputTool, STRUCTURED_OUTPUT_TOOL_NAME } from './structuredOutput.js';
|
|
9
10
|
import type { ToolDefinition } from '../../types/tool/index.js';
|
|
10
11
|
export declare function getBuiltinTools(): ToolDefinition[];
|
|
11
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAA;AAE/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAY/D,wBAAgB,eAAe,IAAI,cAAc,EAAE,CAWlD"}
|
|
@@ -6,6 +6,7 @@ export { GlobTool } from './glob.js';
|
|
|
6
6
|
export { GrepTool } from './grep.js';
|
|
7
7
|
export { LsTool } from './ls.js';
|
|
8
8
|
export { SearchToolsTool } from './search-tools.js';
|
|
9
|
+
export { createStructuredOutputTool, STRUCTURED_OUTPUT_TOOL_NAME } from './structuredOutput.js';
|
|
9
10
|
import { BashTool } from './bash.js';
|
|
10
11
|
import { EditTool } from './edit.js';
|
|
11
12
|
import { GlobTool } from './glob.js';
|
|
@@ -14,6 +15,8 @@ import { LsTool } from './ls.js';
|
|
|
14
15
|
import { ReadFileTool } from './read-file.js';
|
|
15
16
|
import { SearchToolsTool } from './search-tools.js';
|
|
16
17
|
import { WriteFileTool } from './write-file.js';
|
|
18
|
+
// Note: createStructuredOutputTool is not included in getBuiltinTools()
|
|
19
|
+
// because it requires a schema parameter and is created per-use case
|
|
17
20
|
export function getBuiltinTools() {
|
|
18
21
|
return [
|
|
19
22
|
ReadFileTool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAA;AAG/F,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,wEAAwE;AACxE,qEAAqE;AAErE,MAAM,UAAU,eAAe;IAC9B,OAAO;QACN,YAAY;QACZ,aAAa;QACb,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,eAAe;KACf,CAAA;AACF,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
import { defineTool } from '../defineTool.js';
|
|
3
|
+
export declare const STRUCTURED_OUTPUT_TOOL_NAME: "structured_output";
|
|
4
|
+
/**
|
|
5
|
+
* Creates a structured output tool that wraps a Zod schema.
|
|
6
|
+
*
|
|
7
|
+
* This tool is used to force the model to produce validated output by presenting
|
|
8
|
+
* the output schema as a special tool that must be called. The tool executes
|
|
9
|
+
* immediately upon invocation (validation happens via Zod schema).
|
|
10
|
+
*
|
|
11
|
+
* @param schema - A Zod schema that defines the output structure
|
|
12
|
+
* @returns A ToolDefinition that validates and returns the structured output
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* const outputSchema = z.object({
|
|
17
|
+
* title: z.string(),
|
|
18
|
+
* summary: z.string(),
|
|
19
|
+
* })
|
|
20
|
+
*
|
|
21
|
+
* const tool = createStructuredOutputTool(outputSchema)
|
|
22
|
+
* // Model calls: structured_output({ title: "...", summary: "..." })
|
|
23
|
+
* // Tool returns: { success: true, output: JSON.stringify({...}) }
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare function createStructuredOutputTool<TSchema extends z.ZodType>(schema: TSchema): ReturnType<typeof defineTool<TSchema>>;
|
|
27
|
+
//# sourceMappingURL=structuredOutput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structuredOutput.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/structuredOutput.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAE5B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,eAAO,MAAM,2BAA2B,EAAG,mBAA4B,CAAA;AAEvE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,SAAS,CAAC,CAAC,OAAO,EACnE,MAAM,EAAE,OAAO,GACb,UAAU,CAAC,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAwBxC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { defineTool } from '../defineTool.js';
|
|
2
|
+
export const STRUCTURED_OUTPUT_TOOL_NAME = 'structured_output';
|
|
3
|
+
/**
|
|
4
|
+
* Creates a structured output tool that wraps a Zod schema.
|
|
5
|
+
*
|
|
6
|
+
* This tool is used to force the model to produce validated output by presenting
|
|
7
|
+
* the output schema as a special tool that must be called. The tool executes
|
|
8
|
+
* immediately upon invocation (validation happens via Zod schema).
|
|
9
|
+
*
|
|
10
|
+
* @param schema - A Zod schema that defines the output structure
|
|
11
|
+
* @returns A ToolDefinition that validates and returns the structured output
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* const outputSchema = z.object({
|
|
16
|
+
* title: z.string(),
|
|
17
|
+
* summary: z.string(),
|
|
18
|
+
* })
|
|
19
|
+
*
|
|
20
|
+
* const tool = createStructuredOutputTool(outputSchema)
|
|
21
|
+
* // Model calls: structured_output({ title: "...", summary: "..." })
|
|
22
|
+
* // Tool returns: { success: true, output: JSON.stringify({...}) }
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export function createStructuredOutputTool(schema) {
|
|
26
|
+
return defineTool({
|
|
27
|
+
name: STRUCTURED_OUTPUT_TOOL_NAME,
|
|
28
|
+
description: 'Use this tool to provide your final structured response. You MUST call this tool with your answer.',
|
|
29
|
+
inputSchema: schema,
|
|
30
|
+
category: 'analysis',
|
|
31
|
+
permissions: [],
|
|
32
|
+
readOnly: true,
|
|
33
|
+
destructive: false,
|
|
34
|
+
concurrencySafe: true,
|
|
35
|
+
async execute(input, _context) {
|
|
36
|
+
// Input is already validated by Zod schema before this function is called.
|
|
37
|
+
// Simply return the validated output.
|
|
38
|
+
return {
|
|
39
|
+
success: true,
|
|
40
|
+
output: JSON.stringify(input),
|
|
41
|
+
data: input,
|
|
42
|
+
};
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=structuredOutput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structuredOutput.js","sourceRoot":"","sources":["../../../src/tools/builtins/structuredOutput.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAA4B,CAAA;AAEvE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,0BAA0B,CACzC,MAAe;IAIf,OAAO,UAAU,CAAC;QACjB,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACV,oGAAoG;QACrG,WAAW,EAAE,MAAM;QACnB,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,IAAI;QAErB,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,QAAqB;YACjD,2EAA2E;YAC3E,sCAAsC;YACtC,OAAO;gBACN,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;gBAC7B,IAAI,EAAE,KAAK;aACX,CAAA;QACF,CAAC;KACD,CAAC,CAAA;AACH,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { RunId } from '../../types/ids/index.js';
|
|
2
|
-
import type
|
|
2
|
+
import { type TaskStore } from '../../types/task/index.js';
|
|
3
3
|
import type { ToolDefinition } from '../../types/tool/index.js';
|
|
4
4
|
export declare function buildTaskListTool(taskStore: TaskStore, runId: RunId): ToolDefinition;
|
|
5
5
|
//# sourceMappingURL=list.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/tools/task/list.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/tools/task/list.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,KAAK,SAAS,EAAwB,MAAM,2BAA2B,CAAA;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAG/D,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,GAAG,cAAc,CAgDpF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/tools/task/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/tools/task/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAkB,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAEhF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,MAAM,UAAU,iBAAiB,CAAC,SAAoB,EAAE,KAAY;IACnE,OAAO,UAAU,CAAC;QACjB,IAAI,EAAE,WAAW;QACjB,WAAW,EACV,0JAA0J;QAC3J,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,IAAI;QACrB,KAAK,CAAC,OAAO;YACZ,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;YAE7C,MAAM,YAAY,GAAG,IAAI,GAAG,CAC3B,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACpE,CAAA;YAED,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAClC,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;gBAEjF,OAAO;oBACN,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;oBACzB,SAAS,EAAE,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS;oBACzE,UAAU,EAAE,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;iBACvE,CAAA;YACF,CAAC,CAAC,CAAA;YAEF,MAAM,KAAK,GAAG;gBACb,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM;gBAC3D,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,MAAM;gBACnE,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM;aAC/D,CAAA;YAED,OAAO;gBACN,OAAO,EAAE,IAAI;gBACb,MAAM,EACL,KAAK,CAAC,MAAM,KAAK,CAAC;oBACjB,CAAC,CAAC,eAAe;oBACjB,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,WAAW,KAAK,CAAC,SAAS,eAAe,KAAK,CAAC,WAAW,iBAAiB,KAAK,CAAC,OAAO,WAAW;gBACrH,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;aAC/B,CAAA;QACF,CAAC;KACD,CAAC,CAAA;AACH,CAAC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { AgentStatus, CostInfo, TokenUsage } from '../common/index.js';
|
|
2
2
|
import type { RunId, ThreadId } from '../ids/index.js';
|
|
3
|
+
import type { InvocationState } from '../invocation/index.js';
|
|
3
4
|
import type { Message } from '../message/index.js';
|
|
4
5
|
import type { PermissionMode } from '../permission/index.js';
|
|
5
|
-
import type { StopReason } from '../run/
|
|
6
|
+
import type { StopReason } from '../run/stop-reason.js';
|
|
6
7
|
import type { TaskStore } from '../task/index.js';
|
|
7
8
|
import type { ToolAvailability } from '../tool/index.js';
|
|
8
9
|
export type AgentType = 'reactive' | 'pipeline' | 'router' | 'supervisor';
|
|
@@ -21,6 +22,8 @@ export interface BaseAgentConfig {
|
|
|
21
22
|
parentRunId?: RunId;
|
|
22
23
|
depth?: number;
|
|
23
24
|
contextLevel?: AgentContextLevel;
|
|
25
|
+
/** Shared invocation state passed through agent hierarchies */
|
|
26
|
+
invocationState?: InvocationState;
|
|
24
27
|
}
|
|
25
28
|
export type RuntimeToolOverrides = Record<string, ToolAvailability | 'disabled'>;
|
|
26
29
|
export interface AgentInput {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/types/agent/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC3E,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/types/agent/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC3E,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAExD,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,YAAY,CAAA;AAEzE,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAA;AAE/D,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE5B,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAEnB,WAAW,CAAC,EAAE,KAAK,CAAA;IAEnB,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,YAAY,CAAC,EAAE,iBAAiB,CAAA;IAEhC,+DAA+D;IAC/D,eAAe,CAAC,EAAE,eAAe,CAAA;CACjC;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,UAAU,CAAC,CAAA;AAEhF,MAAM,WAAW,UAAU;IAC1B,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE,WAAW,CAAA;IAEpB,SAAS,CAAC,EAAE,SAAS,CAAA;IAErB,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;CAC3C;AAED,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,KAAK,CAAA;IACZ,MAAM,EAAE,WAAW,CAAA;IACnB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,KAAK,EAAE,UAAU,CAAA;IACjB,IAAI,EAAE,QAAQ,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,iBAAiB;IACjC,aAAa,EAAE,OAAO,CAAA;IACtB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,iBAAiB,EAAE,OAAO,CAAA;CAC1B;AAED,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,SAAS,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,iBAAiB,CAAA;CAC/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/agent/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/agent/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/agent/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/agent/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { RunId, TaskId } from '../ids/index.js';
|
|
2
|
+
import type { Message } from '../message/index.js';
|
|
3
|
+
import type { RunEventListener } from '../run/events.js';
|
|
4
|
+
import type { AgentLifecycleListener } from './lifecycle-event.js';
|
|
5
|
+
import type { AgentTask, AgentTaskContext, AgentTaskState, SendMessageOptions } from './task.js';
|
|
6
|
+
/**
|
|
7
|
+
* Agent task lifecycle contract — task creation, cancellation, messaging, and completion tracking.
|
|
8
|
+
* Concrete implementation: `AgentManager` in `manager/agent/lifecycle.ts`.
|
|
9
|
+
*/
|
|
10
|
+
export interface AgentManagerContract {
|
|
11
|
+
sendMessage(options: SendMessageOptions, context: AgentTaskContext, listener?: RunEventListener): Promise<AgentTask>;
|
|
12
|
+
cancel(taskId: TaskId): void;
|
|
13
|
+
cancelAll(parentRunId: RunId): void;
|
|
14
|
+
continueTask(taskId: TaskId, message: string): Promise<void>;
|
|
15
|
+
queueMessage(taskId: TaskId, message: Message): void;
|
|
16
|
+
drainMessages(taskId: TaskId): Message[];
|
|
17
|
+
waitForCompletion(taskId: TaskId): Promise<void>;
|
|
18
|
+
getInstance(taskId: TaskId): AgentTask | undefined;
|
|
19
|
+
listByParent(parentRunId: RunId): AgentTask[];
|
|
20
|
+
listActive(): AgentTask[];
|
|
21
|
+
getState(taskId: TaskId): AgentTaskState | undefined;
|
|
22
|
+
on(listener: AgentLifecycleListener): void;
|
|
23
|
+
off(listener: AgentLifecycleListener): void;
|
|
24
|
+
cleanup(): void;
|
|
25
|
+
dispose(): void;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/types/agent/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAEhG;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACpC,WAAW,CACV,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,gBAAgB,EACzB,QAAQ,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,SAAS,CAAC,CAAA;IAErB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,SAAS,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,CAAA;IAEnC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5D,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;IACpD,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;IAExC,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAChD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;IAClD,YAAY,CAAC,WAAW,EAAE,KAAK,GAAG,SAAS,EAAE,CAAA;IAC7C,UAAU,IAAI,SAAS,EAAE,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAA;IAEpD,EAAE,CAAC,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAAA;IAC1C,GAAG,CAAC,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAAA;IAE3C,OAAO,IAAI,IAAI,CAAA;IACf,OAAO,IAAI,IAAI,CAAA;CACf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/types/agent/manager.ts"],"names":[],"mappings":""}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { ToolRegistry } from '../../registry/tool/execute.js';
|
|
2
1
|
import type { AdvisoryConfig } from '../advisory/index.js';
|
|
3
2
|
import type { AgentPersona } from '../persona/index.js';
|
|
4
3
|
import type { LLMProvider } from '../provider/index.js';
|
|
5
4
|
import type { Skill } from '../skills/index.js';
|
|
5
|
+
import type { ToolRegistryContract } from '../tool/index.js';
|
|
6
6
|
import type { BaseAgentConfig, BaseAgentResult } from './base.js';
|
|
7
7
|
export interface ReactiveAgentConfig extends BaseAgentConfig {
|
|
8
8
|
systemPrompt?: string;
|
|
@@ -10,7 +10,7 @@ export interface ReactiveAgentConfig extends BaseAgentConfig {
|
|
|
10
10
|
skills?: Skill[];
|
|
11
11
|
basePrompt?: string;
|
|
12
12
|
provider: LLMProvider;
|
|
13
|
-
tools:
|
|
13
|
+
tools: ToolRegistryContract;
|
|
14
14
|
advisory?: AdvisoryConfig;
|
|
15
15
|
}
|
|
16
16
|
export interface ReactiveAgentResult extends BaseAgentResult {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactive.d.ts","sourceRoot":"","sources":["../../../src/types/agent/reactive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"reactive.d.ts","sourceRoot":"","sources":["../../../src/types/agent/reactive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAEjE,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,OAAO,CAAC,EAAE,YAAY,CAAA;IAEtB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;IAEhB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,WAAW,CAAA;IACrB,KAAK,EAAE,oBAAoB,CAAA;IAE3B,QAAQ,CAAC,EAAE,cAAc,CAAA;CACzB;AAED,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC3D,aAAa,EAAE,MAAM,CAAA;CACrB"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import type { AgentManager } from '../../manager/agent/lifecycle.js';
|
|
2
1
|
import type { AdvisoryConfig } from '../advisory/index.js';
|
|
3
2
|
import type { LLMProvider } from '../provider/index.js';
|
|
4
3
|
import type { TaskRouterConfig } from '../router/index.js';
|
|
5
4
|
import type { BaseAgentConfig, BaseAgentResult } from './base.js';
|
|
6
5
|
import type { AgentFactoryOptions } from './factory.js';
|
|
7
6
|
import type { TaskGateway } from './gateway.js';
|
|
7
|
+
import type { AgentManagerContract } from './manager.js';
|
|
8
8
|
export interface SupervisorAgentConfig extends BaseAgentConfig {
|
|
9
9
|
provider: LLMProvider;
|
|
10
10
|
agentIds: string[];
|
|
11
11
|
gateway?: TaskGateway;
|
|
12
|
-
agentManager?:
|
|
12
|
+
agentManager?: AgentManagerContract;
|
|
13
13
|
systemPrompt: string;
|
|
14
14
|
maxDepth?: number;
|
|
15
15
|
taskRouter?: TaskRouterConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../../src/types/agent/supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../../src/types/agent/supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAExD,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC7D,QAAQ,EAAE,WAAW,CAAA;IAErB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAElB,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,YAAY,CAAC,EAAE,oBAAoB,CAAA;IAEnC,YAAY,EAAE,MAAM,CAAA;IAEpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,UAAU,CAAC,EAAE,gBAAgB,CAAA;IAE7B,cAAc,CAAC,EAAE,mBAAmB,CAAA;IAEpC,QAAQ,CAAC,EAAE,cAAc,CAAA;CACzB;AAED,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC7D,WAAW,EAAE,eAAe,EAAE,CAAA;IAC9B,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;CAClB"}
|
|
@@ -40,7 +40,6 @@ export interface AgentTaskProgress {
|
|
|
40
40
|
usage: TokenUsage;
|
|
41
41
|
recentActivities: string[];
|
|
42
42
|
}
|
|
43
|
-
export { MAX_RECENT_ACTIVITIES } from '../../constants/agent/index.js';
|
|
44
43
|
export interface SendMessageOptions {
|
|
45
44
|
agentId: string;
|
|
46
45
|
input: AgentInput;
|
|
@@ -55,5 +54,4 @@ export interface AgentManagerConfig {
|
|
|
55
54
|
evictionMs: number;
|
|
56
55
|
maxBudgetFraction: number;
|
|
57
56
|
}
|
|
58
|
-
export { AGENT_MANAGER_DEFAULTS } from '../../constants/agent/index.js';
|
|
59
57
|
//# sourceMappingURL=task.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/types/agent/task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC7E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEvD,MAAM,MAAM,cAAc,GACvB,SAAS,GACT,SAAS,GACT,WAAW,GACX,QAAQ,GACR,UAAU,GACV,UAAU,GACV,gBAAgB,CAAA;AAEnB,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAEvE;AAED,MAAM,WAAW,gBAAgB;IAChC,WAAW,EAAE,KAAK,CAAA;IAElB,aAAa,EAAE,MAAM,CAAA;IAErB,qBAAqB,EAAE,eAAe,CAAA;IAEtC,KAAK,EAAE,MAAM,CAAA;IAEb,aAAa,EAAE,eAAe,CAAA;IAE9B,cAAc,CAAC,EAAE,mBAAmB,CAAA;IAEpC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACnB;AAED,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,MAAM,CAAA;IAEb,SAAS,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,SAAS;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,KAAK,CAAC,eAAe,EAAE,eAAe,CAAC,CAAA;IAC9C,oBAAoB,EAAE,eAAe,CAAA;IACrC,OAAO,EAAE,gBAAgB,CAAA;IACzB,KAAK,EAAE,cAAc,CAAA;IACrB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,QAAQ,CAAC,EAAE,iBAAiB,CAAA;IAE5B,eAAe,EAAE,OAAO,EAAE,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;CACnC;AAED,MAAM,WAAW,iBAAiB;IACjC,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,UAAU,CAAA;IACjB,gBAAgB,EAAE,MAAM,EAAE,CAAA;CAC1B;AAED,
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/types/agent/task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC7E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEvD,MAAM,MAAM,cAAc,GACvB,SAAS,GACT,SAAS,GACT,WAAW,GACX,QAAQ,GACR,UAAU,GACV,UAAU,GACV,gBAAgB,CAAA;AAEnB,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAEvE;AAED,MAAM,WAAW,gBAAgB;IAChC,WAAW,EAAE,KAAK,CAAA;IAElB,aAAa,EAAE,MAAM,CAAA;IAErB,qBAAqB,EAAE,eAAe,CAAA;IAEtC,KAAK,EAAE,MAAM,CAAA;IAEb,aAAa,EAAE,eAAe,CAAA;IAE9B,cAAc,CAAC,EAAE,mBAAmB,CAAA;IAEpC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACnB;AAED,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,MAAM,CAAA;IAEb,SAAS,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,SAAS;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,KAAK,CAAC,eAAe,EAAE,eAAe,CAAC,CAAA;IAC9C,oBAAoB,EAAE,eAAe,CAAA;IACrC,OAAO,EAAE,gBAAgB,CAAA;IACzB,KAAK,EAAE,cAAc,CAAA;IACrB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,QAAQ,CAAC,EAAE,iBAAiB,CAAA;IAE5B,eAAe,EAAE,OAAO,EAAE,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;CACnC;AAED,MAAM,WAAW,iBAAiB;IACjC,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,UAAU,CAAA;IACjB,gBAAgB,EAAE,MAAM,EAAE,CAAA;CAC1B;AAED,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,MAAM,CAAA;IAEf,KAAK,EAAE,UAAU,CAAA;IAEjB,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAE1C,gBAAgB,CAAC,EAAE;QAClB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,SAAS,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;CACD;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,EAAE,MAAM,CAAA;IAEhB,UAAU,EAAE,MAAM,CAAA;IAElB,iBAAiB,EAAE,MAAM,CAAA;CACzB"}
|