deepclause-sdk 0.0.59 → 0.0.61

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 (103) hide show
  1. package/README.md +326 -57
  2. package/dist/cli/compile.d.ts +9 -0
  3. package/dist/cli/compile.d.ts.map +1 -1
  4. package/dist/cli/compile.js +106 -138
  5. package/dist/cli/compile.js.map +1 -1
  6. package/dist/cli/config.d.ts +74 -23
  7. package/dist/cli/config.d.ts.map +1 -1
  8. package/dist/cli/config.js +162 -58
  9. package/dist/cli/config.js.map +1 -1
  10. package/dist/cli/default-skills.d.ts +9 -0
  11. package/dist/cli/default-skills.d.ts.map +1 -0
  12. package/dist/cli/default-skills.js +175 -0
  13. package/dist/cli/default-skills.js.map +1 -0
  14. package/dist/cli/index.js +79 -14
  15. package/dist/cli/index.js.map +1 -1
  16. package/dist/cli/interactive.d.ts +2 -0
  17. package/dist/cli/interactive.d.ts.map +1 -0
  18. package/dist/cli/interactive.js +20 -0
  19. package/dist/cli/interactive.js.map +1 -0
  20. package/dist/cli/prompt.d.ts +1 -19
  21. package/dist/cli/prompt.d.ts.map +1 -1
  22. package/dist/cli/prompt.js +1 -869
  23. package/dist/cli/prompt.js.map +1 -1
  24. package/dist/cli/run.d.ts +7 -1
  25. package/dist/cli/run.d.ts.map +1 -1
  26. package/dist/cli/run.js +79 -337
  27. package/dist/cli/run.js.map +1 -1
  28. package/dist/cli/search.d.ts +1 -0
  29. package/dist/cli/search.d.ts.map +1 -1
  30. package/dist/cli/search.js +10 -4
  31. package/dist/cli/search.js.map +1 -1
  32. package/dist/cli/tools.d.ts +2 -2
  33. package/dist/cli/tools.d.ts.map +1 -1
  34. package/dist/cli/tools.js +30 -5
  35. package/dist/cli/tools.js.map +1 -1
  36. package/dist/cli/tui.d.ts +83 -0
  37. package/dist/cli/tui.d.ts.map +1 -0
  38. package/dist/cli/tui.js +3552 -0
  39. package/dist/cli/tui.js.map +1 -0
  40. package/dist/compiler_prompt.d.ts +1 -1
  41. package/dist/compiler_prompt.d.ts.map +1 -1
  42. package/dist/compiler_prompt.js +8 -10
  43. package/dist/compiler_prompt.js.map +1 -1
  44. package/dist/prolog/bridge.js +1 -1
  45. package/dist/prolog/bridge.js.map +1 -1
  46. package/dist/runner.d.ts.map +1 -1
  47. package/dist/runner.js +5 -0
  48. package/dist/runner.js.map +1 -1
  49. package/dist/system/assets/docs/CONDUCTOR_PROMPT.md +46 -0
  50. package/dist/system/assets/docs/DML_COMPILER_PROMPT.md +664 -0
  51. package/dist/system/assets/index.d.ts +9 -0
  52. package/dist/system/assets/index.d.ts.map +1 -0
  53. package/dist/system/assets/index.js +47 -0
  54. package/dist/system/assets/index.js.map +1 -0
  55. package/dist/system/assets/skills/conductor.dml +70 -0
  56. package/dist/system/assets/skills/skill-creator.dml +186 -0
  57. package/dist/system/config/model-slots.d.ts +34 -0
  58. package/dist/system/config/model-slots.d.ts.map +1 -0
  59. package/dist/system/config/model-slots.js +121 -0
  60. package/dist/system/config/model-slots.js.map +1 -0
  61. package/dist/system/runtime/agentvm-manager.d.ts +18 -0
  62. package/dist/system/runtime/agentvm-manager.d.ts.map +1 -0
  63. package/dist/system/runtime/agentvm-manager.js +98 -0
  64. package/dist/system/runtime/agentvm-manager.js.map +1 -0
  65. package/dist/system/runtime/catalog-skills.d.ts +45 -0
  66. package/dist/system/runtime/catalog-skills.d.ts.map +1 -0
  67. package/dist/system/runtime/catalog-skills.js +110 -0
  68. package/dist/system/runtime/catalog-skills.js.map +1 -0
  69. package/dist/system/runtime/conductor.d.ts +68 -0
  70. package/dist/system/runtime/conductor.d.ts.map +1 -0
  71. package/dist/system/runtime/conductor.js +407 -0
  72. package/dist/system/runtime/conductor.js.map +1 -0
  73. package/dist/system/runtime/console-capture.d.ts +9 -0
  74. package/dist/system/runtime/console-capture.d.ts.map +1 -0
  75. package/dist/system/runtime/console-capture.js +67 -0
  76. package/dist/system/runtime/console-capture.js.map +1 -0
  77. package/dist/system/runtime/dml-executor.d.ts +49 -0
  78. package/dist/system/runtime/dml-executor.d.ts.map +1 -0
  79. package/dist/system/runtime/dml-executor.js +185 -0
  80. package/dist/system/runtime/dml-executor.js.map +1 -0
  81. package/dist/system/runtime/dml-params.d.ts +11 -0
  82. package/dist/system/runtime/dml-params.d.ts.map +1 -0
  83. package/dist/system/runtime/dml-params.js +45 -0
  84. package/dist/system/runtime/dml-params.js.map +1 -0
  85. package/dist/system/runtime/runtime-tools.d.ts +20 -0
  86. package/dist/system/runtime/runtime-tools.d.ts.map +1 -0
  87. package/dist/system/runtime/runtime-tools.js +170 -0
  88. package/dist/system/runtime/runtime-tools.js.map +1 -0
  89. package/dist/system/runtime/shell-manager.d.ts +20 -0
  90. package/dist/system/runtime/shell-manager.d.ts.map +1 -0
  91. package/dist/system/runtime/shell-manager.js +133 -0
  92. package/dist/system/runtime/shell-manager.js.map +1 -0
  93. package/dist/system/runtime/skill-creator.d.ts +33 -0
  94. package/dist/system/runtime/skill-creator.d.ts.map +1 -0
  95. package/dist/system/runtime/skill-creator.js +529 -0
  96. package/dist/system/runtime/skill-creator.js.map +1 -0
  97. package/dist/system/runtime/token-usage.d.ts +16 -0
  98. package/dist/system/runtime/token-usage.d.ts.map +1 -0
  99. package/dist/system/runtime/token-usage.js +45 -0
  100. package/dist/system/runtime/token-usage.js.map +1 -0
  101. package/dist/tools.js +1 -1
  102. package/dist/tools.js.map +1 -1
  103. package/package.json +4 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conductor.js","sourceRoot":"","sources":["../../../src/system/runtime/conductor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export type CapturedConsoleLevel = 'log' | 'warn' | 'error';
2
+ export interface CapturedConsoleEntry {
3
+ level: CapturedConsoleLevel;
4
+ text: string;
5
+ }
6
+ type ConsoleSink = (entry: CapturedConsoleEntry) => void;
7
+ export declare function withCapturedConsole<T>(sink: ConsoleSink, run: () => Promise<T> | T): Promise<T>;
8
+ export {};
9
+ //# sourceMappingURL=console-capture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console-capture.d.ts","sourceRoot":"","sources":["../../../src/system/runtime/console-capture.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAE5D,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,KAAK,WAAW,GAAG,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC;AAWzD,wBAAsB,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAgBrG"}
@@ -0,0 +1,67 @@
1
+ import { inspect } from 'util';
2
+ const originalConsole = {
3
+ log: console.log,
4
+ warn: console.warn,
5
+ error: console.error,
6
+ };
7
+ const sinks = [];
8
+ let installed = false;
9
+ export async function withCapturedConsole(sink, run) {
10
+ installConsoleCapture();
11
+ sinks.push(sink);
12
+ try {
13
+ return await run();
14
+ }
15
+ finally {
16
+ const index = sinks.lastIndexOf(sink);
17
+ if (index >= 0) {
18
+ sinks.splice(index, 1);
19
+ }
20
+ if (sinks.length === 0) {
21
+ uninstallConsoleCapture();
22
+ }
23
+ }
24
+ }
25
+ function installConsoleCapture() {
26
+ if (installed) {
27
+ return;
28
+ }
29
+ console.log = (...args) => dispatch('log', args);
30
+ console.warn = (...args) => dispatch('warn', args);
31
+ console.error = (...args) => dispatch('error', args);
32
+ installed = true;
33
+ }
34
+ function uninstallConsoleCapture() {
35
+ if (!installed) {
36
+ return;
37
+ }
38
+ console.log = originalConsole.log;
39
+ console.warn = originalConsole.warn;
40
+ console.error = originalConsole.error;
41
+ installed = false;
42
+ }
43
+ function dispatch(level, args) {
44
+ const sink = sinks[sinks.length - 1];
45
+ if (!sink) {
46
+ originalConsole[level](...args);
47
+ return;
48
+ }
49
+ sink({
50
+ level,
51
+ text: formatConsoleArgs(args),
52
+ });
53
+ }
54
+ function formatConsoleArgs(args) {
55
+ return args.map((arg) => {
56
+ if (typeof arg === 'string') {
57
+ return arg;
58
+ }
59
+ return inspect(arg, {
60
+ colors: false,
61
+ depth: 5,
62
+ breakLength: Infinity,
63
+ maxArrayLength: 50,
64
+ });
65
+ }).join(' ');
66
+ }
67
+ //# sourceMappingURL=console-capture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console-capture.js","sourceRoot":"","sources":["../../../src/system/runtime/console-capture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAW/B,MAAM,eAAe,GAAG;IACtB,GAAG,EAAE,OAAO,CAAC,GAAG;IAChB,IAAI,EAAE,OAAO,CAAC,IAAI;IAClB,KAAK,EAAE,OAAO,CAAC,KAAK;CACrB,CAAC;AAEF,MAAM,KAAK,GAAkB,EAAE,CAAC;AAChC,IAAI,SAAS,GAAG,KAAK,CAAC;AAEtB,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAI,IAAiB,EAAE,GAAyB;IACvF,qBAAqB,EAAE,CAAC;IACxB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC;QACH,OAAO,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;YAAS,CAAC;QACT,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACf,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,uBAAuB,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB;IAC5B,IAAI,SAAS,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC5D,OAAO,CAAC,IAAI,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9D,OAAO,CAAC,KAAK,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAChE,SAAS,GAAG,IAAI,CAAC;AACnB,CAAC;AAED,SAAS,uBAAuB;IAC9B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC;IAClC,OAAO,CAAC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC;IACpC,OAAO,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC;IACtC,SAAS,GAAG,KAAK,CAAC;AACpB,CAAC;AAED,SAAS,QAAQ,CAAC,KAA2B,EAAE,IAAe;IAC5D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,eAAe,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAChC,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,KAAK;QACL,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC;KAC9B,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAe;IACxC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACtB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,GAAG,CAAC;QACb,CAAC;QAED,OAAO,OAAO,CAAC,GAAG,EAAE;YAClB,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,CAAC;YACR,WAAW,EAAE,QAAQ;YACrB,cAAc,EAAE,EAAE;SACnB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC"}
@@ -0,0 +1,49 @@
1
+ import type { Config } from '../../cli/config.js';
2
+ import type { DMLEvent, DeepClauseSDK } from '../../types.js';
3
+ import type { ResolvedModelConfig } from '../config/model-slots.js';
4
+ import { type ShellManager } from './shell-manager.js';
5
+ export interface DmlExecutionContext {
6
+ config: Config;
7
+ workspacePath: string;
8
+ selection: ResolvedModelConfig;
9
+ shell: ShellManager;
10
+ }
11
+ export interface ExecuteDmlOptions {
12
+ dmlCode: string;
13
+ config: Config;
14
+ workspacePath: string;
15
+ selection: ResolvedModelConfig;
16
+ args?: string[];
17
+ params?: Record<string, unknown>;
18
+ gasLimit?: number;
19
+ stream?: boolean;
20
+ trace?: boolean;
21
+ verbose?: boolean;
22
+ headless?: boolean;
23
+ sandbox?: boolean;
24
+ signal?: AbortSignal;
25
+ onUserInput?: (prompt: string) => Promise<string>;
26
+ initialMessages?: Array<{
27
+ role: 'user' | 'assistant';
28
+ content: string;
29
+ }>;
30
+ onEvent?: (event: DMLEvent) => void;
31
+ skillCatalog?: {
32
+ workspaceRoot: string;
33
+ currentSkillSlug?: string;
34
+ invocationStack?: string[];
35
+ maxDepth?: number;
36
+ includeSystemSkillsInList?: boolean;
37
+ onChildEvent?: (slug: string, event: DMLEvent) => void;
38
+ };
39
+ registerAdditionalTools?: (sdk: DeepClauseSDK, context: DmlExecutionContext) => Promise<void> | void;
40
+ }
41
+ export interface ExecuteDmlResult {
42
+ output: string[];
43
+ answer?: string;
44
+ error?: string;
45
+ trace?: object;
46
+ events: DMLEvent[];
47
+ }
48
+ export declare function executeDml(options: ExecuteDmlOptions): Promise<ExecuteDmlResult>;
49
+ //# sourceMappingURL=dml-executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dml-executor.d.ts","sourceRoot":"","sources":["../../../src/system/runtime/dml-executor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAK9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGpE,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE3E,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,mBAAmB,CAAC;IAC/B,KAAK,EAAE,YAAY,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,mBAAmB,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAClD,eAAe,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,YAAY,CAAC,EAAE;QACb,aAAa,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,yBAAyB,CAAC,EAAE,OAAO,CAAC;QACpC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;KACxD,CAAC;IACF,uBAAuB,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACtG;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,QAAQ,EAAE,CAAC;CACpB;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAYtF"}
@@ -0,0 +1,185 @@
1
+ import { createDeepClause } from '../../sdk.js';
2
+ import { applyResolvedModelConfig } from '../../cli/config.js';
3
+ import { createLocalSkillCatalogRuntime, } from './catalog-skills.js';
4
+ import { withCapturedConsole } from './console-capture.js';
5
+ import { registerLocalRuntimeTools } from './runtime-tools.js';
6
+ import { createShellManager } from './shell-manager.js';
7
+ export async function executeDml(options) {
8
+ if (options.headless && options.onEvent) {
9
+ return withCapturedConsole((entry) => options.onEvent?.({
10
+ type: 'log',
11
+ content: `[${entry.level}] ${entry.text}`,
12
+ }), () => executeDmlInternal(options));
13
+ }
14
+ return executeDmlInternal(options);
15
+ }
16
+ async function executeDmlInternal(options) {
17
+ applyResolvedModelConfig(options.selection);
18
+ const shell = createShellManager({
19
+ workspacePath: options.workspacePath,
20
+ sandbox: options.sandbox,
21
+ network: options.config.agentvm?.network ?? false,
22
+ });
23
+ const sdk = await createDeepClause({
24
+ model: options.selection.model,
25
+ provider: options.selection.provider,
26
+ apiKey: options.selection.apiKey,
27
+ baseUrl: options.selection.baseUrl,
28
+ temperature: options.selection.temperature,
29
+ trace: !!options.trace,
30
+ streaming: options.stream,
31
+ debug: options.verbose,
32
+ maxTokens: 65536,
33
+ });
34
+ const result = {
35
+ output: [],
36
+ events: [],
37
+ };
38
+ try {
39
+ const skillCatalog = options.skillCatalog
40
+ ? createLocalSkillCatalogRuntime({
41
+ workspaceRoot: options.skillCatalog.workspaceRoot,
42
+ workspacePath: options.workspacePath,
43
+ config: options.config,
44
+ selection: options.selection,
45
+ currentSkillSlug: options.skillCatalog.currentSkillSlug,
46
+ invocationStack: options.skillCatalog.invocationStack,
47
+ maxDepth: options.skillCatalog.maxDepth,
48
+ includeSystemSkillsInList: options.skillCatalog.includeSystemSkillsInList,
49
+ executeNestedSkill: (child) => executeNestedSkill(options, child),
50
+ })
51
+ : undefined;
52
+ registerLocalRuntimeTools(sdk, {
53
+ workspacePath: options.workspacePath,
54
+ shell,
55
+ signal: options.signal,
56
+ skillCatalog,
57
+ });
58
+ await options.registerAdditionalTools?.(sdk, {
59
+ config: options.config,
60
+ workspacePath: options.workspacePath,
61
+ selection: options.selection,
62
+ shell,
63
+ });
64
+ let finished = false;
65
+ for await (const event of sdk.runDML(options.dmlCode, {
66
+ args: options.args,
67
+ params: options.params,
68
+ workspacePath: options.workspacePath,
69
+ gasLimit: options.gasLimit,
70
+ signal: options.signal,
71
+ onUserInput: options.onUserInput,
72
+ initialMessages: options.initialMessages,
73
+ })) {
74
+ if (finished) {
75
+ break;
76
+ }
77
+ result.events.push(event);
78
+ options.onEvent?.(event);
79
+ switch (event.type) {
80
+ case 'output':
81
+ if (event.content) {
82
+ result.output.push(event.content);
83
+ if (!options.headless) {
84
+ console.log(event.content);
85
+ }
86
+ }
87
+ break;
88
+ case 'stream':
89
+ if (options.stream && !options.headless && event.content) {
90
+ process.stdout.write(event.content);
91
+ }
92
+ if (options.stream && !options.headless && event.done) {
93
+ process.stdout.write('\n');
94
+ }
95
+ break;
96
+ case 'log':
97
+ if (options.verbose && event.content && !options.headless) {
98
+ console.log(`[log] ${event.content}`);
99
+ }
100
+ break;
101
+ case 'tool_call':
102
+ if (!options.headless && options.verbose && event.toolName) {
103
+ console.log(` 🔧 ${event.toolName}(${formatToolArgs(event.toolArgs)})`);
104
+ }
105
+ break;
106
+ case 'answer':
107
+ result.answer = event.content;
108
+ break;
109
+ case 'error':
110
+ result.error = event.content;
111
+ if (event.trace) {
112
+ result.trace = event.trace;
113
+ }
114
+ finished = true;
115
+ break;
116
+ case 'finished':
117
+ if (event.trace) {
118
+ result.trace = event.trace;
119
+ }
120
+ finished = true;
121
+ break;
122
+ case 'input_required':
123
+ if (options.verbose && event.prompt && !options.headless) {
124
+ console.log(`[input_required] ${event.prompt}`);
125
+ }
126
+ break;
127
+ case 'usage':
128
+ break;
129
+ }
130
+ }
131
+ return result;
132
+ }
133
+ finally {
134
+ await sdk.dispose();
135
+ await shell.dispose();
136
+ }
137
+ }
138
+ function executeNestedSkill(parentOptions, child) {
139
+ return executeDml({
140
+ dmlCode: child.dmlCode,
141
+ config: parentOptions.config,
142
+ workspacePath: parentOptions.workspacePath,
143
+ selection: parentOptions.selection,
144
+ args: child.args,
145
+ params: child.params,
146
+ gasLimit: parentOptions.gasLimit,
147
+ stream: parentOptions.stream,
148
+ trace: parentOptions.trace,
149
+ verbose: parentOptions.verbose,
150
+ headless: true,
151
+ sandbox: parentOptions.sandbox,
152
+ signal: parentOptions.signal,
153
+ onUserInput: parentOptions.onUserInput
154
+ ? (prompt) => parentOptions.onUserInput(`[${child.slug}] ${prompt}`)
155
+ : undefined,
156
+ onEvent: parentOptions.skillCatalog?.onChildEvent
157
+ ? (event) => parentOptions.skillCatalog?.onChildEvent?.(child.slug, event)
158
+ : undefined,
159
+ skillCatalog: parentOptions.skillCatalog
160
+ ? {
161
+ workspaceRoot: parentOptions.skillCatalog.workspaceRoot,
162
+ currentSkillSlug: child.currentSkillSlug,
163
+ invocationStack: child.invocationStack,
164
+ maxDepth: parentOptions.skillCatalog.maxDepth,
165
+ includeSystemSkillsInList: parentOptions.skillCatalog.includeSystemSkillsInList,
166
+ onChildEvent: parentOptions.skillCatalog.onChildEvent,
167
+ }
168
+ : undefined,
169
+ });
170
+ }
171
+ function formatToolArgs(args) {
172
+ if (!args) {
173
+ return '';
174
+ }
175
+ const parts = [];
176
+ for (const [key, value] of Object.entries(args)) {
177
+ let rendered = typeof value === 'string' ? value : JSON.stringify(value);
178
+ if (rendered.length > 50) {
179
+ rendered = rendered.slice(0, 47) + '...';
180
+ }
181
+ parts.push(`${key}=${rendered}`);
182
+ }
183
+ return parts.join(', ');
184
+ }
185
+ //# sourceMappingURL=dml-executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dml-executor.js","sourceRoot":"","sources":["../../../src/system/runtime/dml-executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ interface DmlMetaParameter {
2
+ name: string;
3
+ position: number;
4
+ }
5
+ interface DmlMetaLike {
6
+ parameters?: DmlMetaParameter[];
7
+ }
8
+ export declare function buildDmlParams(args: string[], namedParams: Record<string, string> | undefined, meta: DmlMetaLike | null | undefined): Record<string, unknown>;
9
+ export declare function parseDmlArgValue(value: string): unknown;
10
+ export {};
11
+ //# sourceMappingURL=dml-params.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dml-params.d.ts","sourceRoot":"","sources":["../../../src/system/runtime/dml-params.ts"],"names":[],"mappings":"AAAA,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,WAAW;IACnB,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACjC;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EAAE,EACd,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC/C,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GACnC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA2BzB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAyBvD"}
@@ -0,0 +1,45 @@
1
+ export function buildDmlParams(args, namedParams, meta) {
2
+ const params = {};
3
+ if (args.length > 0) {
4
+ params.args = args.map(parseDmlArgValue);
5
+ }
6
+ if (meta?.parameters && args.length > 0) {
7
+ const sortedParams = [...meta.parameters].sort((left, right) => left.position - right.position);
8
+ for (let index = 0; index < args.length && index < sortedParams.length; index += 1) {
9
+ const param = sortedParams[index];
10
+ params[param.name] = parseDmlArgValue(args[index]);
11
+ }
12
+ for (let index = sortedParams.length; index < args.length; index += 1) {
13
+ params[`arg${index + 1}`] = parseDmlArgValue(args[index]);
14
+ }
15
+ }
16
+ if (namedParams) {
17
+ for (const [key, value] of Object.entries(namedParams)) {
18
+ params[key] = parseDmlArgValue(value);
19
+ }
20
+ }
21
+ return params;
22
+ }
23
+ export function parseDmlArgValue(value) {
24
+ const num = Number(value);
25
+ if (!Number.isNaN(num) && value.trim() !== '') {
26
+ return num;
27
+ }
28
+ if (value.toLowerCase() === 'true') {
29
+ return true;
30
+ }
31
+ if (value.toLowerCase() === 'false') {
32
+ return false;
33
+ }
34
+ if ((value.startsWith('{') && value.endsWith('}'))
35
+ || (value.startsWith('[') && value.endsWith(']'))) {
36
+ try {
37
+ return JSON.parse(value);
38
+ }
39
+ catch {
40
+ return value;
41
+ }
42
+ }
43
+ return value;
44
+ }
45
+ //# sourceMappingURL=dml-params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dml-params.js","sourceRoot":"","sources":["../../../src/system/runtime/dml-params.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,cAAc,CAC5B,IAAc,EACd,WAA+C,EAC/C,IAAoC;IAEpC,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,IAAI,EAAE,UAAU,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEhG,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YACnF,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACrD,CAAC;QAED,KAAK,IAAI,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YACtE,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACvD,MAAM,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC9C,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IACE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;WAC3C,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EACjD,CAAC;QACD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { Config } from '../../cli/config.js';
2
+ import type { DeepClauseSDK } from '../../types.js';
3
+ import type { ShellManager } from './shell-manager.js';
4
+ export declare function getBuiltInRuntimeToolNames(): string[];
5
+ export declare function verifyRuntimeToolsAvailable(config: Config, toolNames: string[]): {
6
+ available: boolean;
7
+ missing: string[];
8
+ };
9
+ export declare function registerLocalRuntimeTools(sdk: DeepClauseSDK, options: {
10
+ workspacePath: string;
11
+ shell: ShellManager;
12
+ signal?: AbortSignal;
13
+ skillCatalog?: {
14
+ listSkills: () => Promise<unknown>;
15
+ runSkill: (args: Record<string, unknown>) => Promise<unknown>;
16
+ };
17
+ }): void;
18
+ export declare function urlFetch(workspacePath: string, args: Record<string, unknown>, signal?: AbortSignal): Promise<Record<string, unknown>>;
19
+ export declare function resolveWorkspacePath(workspacePath: string, filePath: string): string;
20
+ //# sourceMappingURL=runtime-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-tools.d.ts","sourceRoot":"","sources":["../../../src/system/runtime/runtime-tools.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAcvD,wBAAgB,0BAA0B,IAAI,MAAM,EAAE,CAErD;AAED,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EAAE,GAClB;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAiB3C;AAED,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE;IACP,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,YAAY,CAAC,EAAE;QACb,UAAU,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;KAC/D,CAAC;CACH,GACA,IAAI,CAoGN;AAED,wBAAsB,QAAQ,CAC5B,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA4BlC;AAED,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAWpF"}
@@ -0,0 +1,170 @@
1
+ import * as fs from 'fs/promises';
2
+ import * as path from 'path';
3
+ import { newsSearch, webSearch } from '../../cli/search.js';
4
+ const BUILT_IN_RUNTIME_TOOLS = new Set([
5
+ 'vm_exec',
6
+ 'bash',
7
+ 'web_search',
8
+ 'news_search',
9
+ 'url_fetch',
10
+ 'list_skills',
11
+ 'run_skill',
12
+ ]);
13
+ const INTERNAL_TOOLS = new Set(['ask_user', 'finish', 'set_result', 'store']);
14
+ export function getBuiltInRuntimeToolNames() {
15
+ return [...BUILT_IN_RUNTIME_TOOLS].sort();
16
+ }
17
+ export function verifyRuntimeToolsAvailable(config, toolNames) {
18
+ const missing = toolNames.filter((name) => {
19
+ if (INTERNAL_TOOLS.has(name)) {
20
+ return false;
21
+ }
22
+ return !BUILT_IN_RUNTIME_TOOLS.has(name);
23
+ });
24
+ if (missing.length === 0) {
25
+ return { available: true, missing: [] };
26
+ }
27
+ if (config.mcp?.servers && Object.keys(config.mcp.servers).length > 0) {
28
+ return { available: true, missing: [] };
29
+ }
30
+ return { available: false, missing };
31
+ }
32
+ export function registerLocalRuntimeTools(sdk, options) {
33
+ sdk.registerTool('web_search', {
34
+ description: 'Search the web for information.',
35
+ parameters: {
36
+ type: 'object',
37
+ properties: {
38
+ query: { type: 'string', description: 'Search query.' },
39
+ count: { type: 'number', description: 'Maximum result count.' },
40
+ freshness: { type: 'string', description: 'Optional freshness filter.' },
41
+ },
42
+ required: ['query'],
43
+ },
44
+ execute: async (args) => webSearch({
45
+ query: String(args.query ?? args.arg1 ?? ''),
46
+ count: typeof args.count === 'number' ? args.count : 10,
47
+ freshness: typeof args.freshness === 'string' ? args.freshness : undefined,
48
+ signal: options.signal,
49
+ }),
50
+ });
51
+ sdk.registerTool('news_search', {
52
+ description: 'Search recent news.',
53
+ parameters: {
54
+ type: 'object',
55
+ properties: {
56
+ query: { type: 'string', description: 'Search query.' },
57
+ count: { type: 'number', description: 'Maximum result count.' },
58
+ freshness: { type: 'string', description: 'Optional freshness filter.' },
59
+ },
60
+ required: ['query'],
61
+ },
62
+ execute: async (args) => newsSearch({
63
+ query: String(args.query ?? args.arg1 ?? ''),
64
+ count: typeof args.count === 'number' ? args.count : 10,
65
+ freshness: typeof args.freshness === 'string' ? args.freshness : undefined,
66
+ signal: options.signal,
67
+ }),
68
+ });
69
+ sdk.registerTool('url_fetch', {
70
+ description: 'Fetch a URL or save it into the workspace.',
71
+ parameters: {
72
+ type: 'object',
73
+ properties: {
74
+ url: { type: 'string', description: 'Absolute URL to fetch.' },
75
+ headers: { type: 'object', description: 'Optional request headers.' },
76
+ save_to: { type: 'string', description: 'Optional workspace-relative output file.' },
77
+ },
78
+ required: ['url'],
79
+ },
80
+ execute: async (args) => urlFetch(options.workspacePath, args, options.signal),
81
+ });
82
+ sdk.registerTool('bash', {
83
+ description: 'Run a shell command in the active workspace shell.',
84
+ parameters: {
85
+ type: 'object',
86
+ properties: {
87
+ command: { type: 'string', description: 'Shell command to execute.' },
88
+ },
89
+ required: ['command'],
90
+ },
91
+ execute: async (args) => options.shell.exec(String(args.command ?? args.arg1 ?? ''), options.signal),
92
+ });
93
+ sdk.registerTool('vm_exec', {
94
+ description: 'Execute a shell command using the active workspace shell backend.',
95
+ parameters: {
96
+ type: 'object',
97
+ properties: {
98
+ command: { type: 'string', description: 'Shell command to execute.' },
99
+ },
100
+ required: ['command'],
101
+ },
102
+ execute: async (args) => options.shell.exec(String(args.command ?? args.arg1 ?? ''), options.signal),
103
+ });
104
+ if (options.skillCatalog) {
105
+ sdk.registerTool('list_skills', {
106
+ description: 'List available local skills from the current workspace catalog.',
107
+ parameters: {
108
+ type: 'object',
109
+ properties: {},
110
+ },
111
+ execute: async () => options.skillCatalog?.listSkills(),
112
+ });
113
+ sdk.registerTool('run_skill', {
114
+ description: 'Run a local compiled skill from the current workspace catalog.',
115
+ parameters: {
116
+ type: 'object',
117
+ properties: {
118
+ slug: { type: 'string', description: 'Skill slug from the local tools directory.' },
119
+ args: { type: 'array', description: 'Optional array of string arguments.' },
120
+ },
121
+ required: ['slug'],
122
+ },
123
+ execute: async (args) => options.skillCatalog?.runSkill(args),
124
+ });
125
+ }
126
+ }
127
+ export async function urlFetch(workspacePath, args, signal) {
128
+ const url = String(args.url ?? '');
129
+ if (!url) {
130
+ throw new Error('url is required');
131
+ }
132
+ const headers = isStringRecord(args.headers) ? args.headers : undefined;
133
+ const response = await fetch(url, { headers, signal });
134
+ const responseHeaders = Object.fromEntries(response.headers.entries());
135
+ if (typeof args.save_to === 'string' && args.save_to.trim()) {
136
+ const targetPath = resolveWorkspacePath(workspacePath, args.save_to);
137
+ await fs.mkdir(path.dirname(targetPath), { recursive: true });
138
+ const buffer = Buffer.from(await response.arrayBuffer());
139
+ await fs.writeFile(targetPath, buffer);
140
+ return {
141
+ file_path: targetPath,
142
+ size: buffer.byteLength,
143
+ status: response.status,
144
+ headers: responseHeaders,
145
+ };
146
+ }
147
+ return {
148
+ body: await response.text(),
149
+ status: response.status,
150
+ headers: responseHeaders,
151
+ };
152
+ }
153
+ export function resolveWorkspacePath(workspacePath, filePath) {
154
+ if (!filePath) {
155
+ throw new Error('Path is required');
156
+ }
157
+ const root = path.resolve(workspacePath);
158
+ const resolved = path.resolve(root, filePath);
159
+ if (resolved !== root && !resolved.startsWith(root + path.sep)) {
160
+ throw new Error(`Path must stay inside workspace: ${filePath}`);
161
+ }
162
+ return resolved;
163
+ }
164
+ function isStringRecord(value) {
165
+ if (!value || typeof value !== 'object' || Array.isArray(value)) {
166
+ return false;
167
+ }
168
+ return Object.values(value).every((entry) => typeof entry === 'string');
169
+ }
170
+ //# sourceMappingURL=runtime-tools.js.map