@modular-prompt/process 0.3.9 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/workflows/agentic-workflow/process/query-with-tools.js +1 -1
- package/dist/workflows/agentic-workflow/process/query-with-tools.js.map +1 -1
- package/dist/workflows/agentic-workflow/types.d.ts +2 -15
- package/dist/workflows/agentic-workflow/types.d.ts.map +1 -1
- package/dist/workflows/agentic-workflow/types.js.map +1 -1
- package/dist/workflows/index.d.ts +3 -1
- package/dist/workflows/index.d.ts.map +1 -1
- package/dist/workflows/index.js +2 -0
- package/dist/workflows/index.js.map +1 -1
- package/dist/workflows/tool-agent-workflow.d.ts +37 -0
- package/dist/workflows/tool-agent-workflow.d.ts.map +1 -0
- package/dist/workflows/tool-agent-workflow.js +141 -0
- package/dist/workflows/tool-agent-workflow.js.map +1 -0
- package/dist/workflows/types.d.ts +25 -1
- package/dist/workflows/types.d.ts.map +1 -1
- package/dist/workflows/types.js.map +1 -1
- package/package.json +2 -2
|
@@ -26,7 +26,7 @@ async function executeBuiltinToolCalls(toolCalls, builtinTools, logger) {
|
|
|
26
26
|
continue;
|
|
27
27
|
}
|
|
28
28
|
try {
|
|
29
|
-
const result = await spec.handler(tc.arguments);
|
|
29
|
+
const result = await spec.handler(tc.arguments, {});
|
|
30
30
|
logger.info('[tool:result]', tc.name, result);
|
|
31
31
|
results.push({
|
|
32
32
|
type: 'message', role: 'tool', toolCallId: tc.id, name: tc.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-with-tools.js","sourceRoot":"","sources":["../../../../src/workflows/agentic-workflow/process/query-with-tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAIxD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3E,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AAErE;;GAEG;AACH,KAAK,UAAU,uBAAuB,CACpC,SAAqB,EACrB,YAAwB,EACxB,MAAc;IAEd,MAAM,OAAO,GAA+B,EAAE,CAAC;IAC/C,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;QACnE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI;gBAC/D,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,IAAI,EAAE;aACzD,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"query-with-tools.js","sourceRoot":"","sources":["../../../../src/workflows/agentic-workflow/process/query-with-tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAIxD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3E,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AAErE;;GAEG;AACH,KAAK,UAAU,uBAAuB,CACpC,SAAqB,EACrB,YAAwB,EACxB,MAAc;IAEd,MAAM,OAAO,GAA+B,EAAE,CAAC;IAC/C,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;QACnE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI;gBAC/D,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,IAAI,EAAE;aACzD,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACpD,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI;gBAC/D,IAAI,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM;aAClE,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI;gBAC/D,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC7E,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AA6BD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAgB,EAChB,QAAwB,EACxB,YAAwB,EACxB,UAAiC,EAAE;IAEnC,MAAM,EAAE,gBAAgB,GAAG,EAAE,EAAE,UAAU,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC;IACpF,MAAM,WAAW,GAAG;QAClB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QACtC,GAAG,gBAAgB;KACpB,CAAC;IACF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAEtE,MAAM,WAAW,GAAkB,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,YAAY,GAAG;QACnB,KAAK,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QACvD,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,MAAoB;QACtD,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/D,CAAC;IAEF,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,MAAM,SAAS,GAAyC,EAAE,CAAC;IAC3D,MAAM,aAAa,GAA+B,EAAE,CAAC;IACrD,MAAM,SAAS,GAA+B,EAAE,CAAC;IAEjD,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,UAAuB,EAAE,KAAqC,EAAwB,EAAE;QAC5H,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACjC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC1C,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO;YACL,OAAO;YACP,WAAW;YACX,aAAa,EAAE,cAAc,CAAC,SAAS,CAAC;YACxC,aAAa,EAAE,UAAU,CAAC,KAAK;YAC/B,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,UAAU,EAAE,mBAAmB,CAAC,aAAa,CAAC;YAC9C,MAAM,EAAE,mBAAmB,CAAC,SAAS,CAAC;YACtC,GAAG,KAAK;SACT,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7D,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEjD,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,IAAI,EAAE,CAAC;QAE1C,yBAAyB;QACzB,IAAI,CAAC,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjE,OAAO,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC3C,CAAC;QAED,iBAAiB;QACjB,KAAK,MAAM,EAAE,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;YACvC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QACrE,CAAC;QAED,gDAAgD;QAChD,MAAM,YAAY,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAChF,MAAM,aAAa,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAClF,MAAM,kBAAkB,GAAG,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACvF,MAAM,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAElF,wBAAwB;QACxB,MAAM,cAAc,GAA+B,YAAY,CAAC,MAAM,GAAG,CAAC;YACxE,CAAC,CAAC,MAAM,uBAAuB,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC;YACpE,CAAC,CAAC,EAAE,CAAC;QAEP,oCAAoC;QACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,WAAW,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;gBAC1B,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS;gBACpC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK;aAChC,CAAC,CAAC;QACL,CAAC;QAED,gDAAgD;QAChD,MAAM,cAAc,GAA+B,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACzE,IAAI,EAAE,SAAkB,EAAE,IAAI,EAAE,MAAe,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI;YACjF,IAAI,EAAE,OAAgB;YACtB,KAAK,EAAE,kBAAkB,EAAE,CAAC,IAAI,uBAAuB,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACjG,CAAC,CAAC,CAAC;QAEJ,mBAAmB;QACnB,MAAM,gBAAgB,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QACtE,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,gBAAgB,IAAI,eAAe,CAAC;QAEtD,6BAA6B;QAC7B,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,OAAO,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,OAAO,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC3C,CAAC;QAED,yDAAyD;QACzD,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,iBAAiB,UAAU,UAAU,CAAC,CAAC;YACzE,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,OAAO,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,OAAO,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC3C,CAAC;QAED,wDAAwD;QACxD,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAClC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC3C,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEnC,kEAAkE;QAClE,UAAU,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,UAAU,IAAI,UAAU,qBAAqB,CAAC,CAAC;QAElF,MAAM,gBAAgB,GAA2B;YAC/C,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO;YACpD,SAAS,EAAE,WAAW,CAAC,SAAS;SACjC,CAAC;QACF,MAAM,cAAc,GAAG,CAAC,GAAG,cAAc,EAAE,GAAG,cAAc,CAAC,CAAC;QAE9D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,cAAc,CAAC,CAAC;QAExD,2DAA2D;QAC3D,YAAY,CAAC,UAAU,GAAG,MAAM,CAAC;IACnC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,KAAc,EACd,OAAgB,EAChB,OAAgC;IAEhC,IAAI,KAAK,YAAY,sBAAsB;QAAE,MAAM,KAAK,CAAC;IACzD,MAAM,IAAI,sBAAsB,CAAC,KAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACrE,CAAC"}
|
|
@@ -2,21 +2,8 @@ import type { ToolDefinition, QueryResult, ToolCall } from '@modular-prompt/driv
|
|
|
2
2
|
import type { ResolvedModule } from '@modular-prompt/core';
|
|
3
3
|
import type { LogEntry } from '@modular-prompt/utils';
|
|
4
4
|
import type { ModelRole } from '../driver-input.js';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*/
|
|
8
|
-
export interface ToolSpec {
|
|
9
|
-
definition: ToolDefinition;
|
|
10
|
-
handler: (args: Record<string, unknown>) => Promise<unknown>;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Tool call log entry (builtin tool execution record)
|
|
14
|
-
*/
|
|
15
|
-
export interface ToolCallLog {
|
|
16
|
-
name: string;
|
|
17
|
-
arguments: Record<string, unknown>;
|
|
18
|
-
result: unknown;
|
|
19
|
-
}
|
|
5
|
+
import type { ToolSpec, ToolCallLog } from '../types.js';
|
|
6
|
+
export type { ToolSpec, ToolCallLog };
|
|
20
7
|
/**
|
|
21
8
|
* Built-in task types.
|
|
22
9
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/workflows/agentic-workflow/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/workflows/agentic-workflow/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/workflows/agentic-workflow/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/workflows/agentic-workflow/types.ts"],"names":[],"mappings":"AA+BA;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAgC;IAC9D,QAAQ,EAAE,MAAM;IAChB,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,cAAc,EAAE,UAAU;IAC1B,MAAM,EAAE,UAAU;IAClB,SAAS,EAAE,UAAU;IACrB,MAAM,EAAE,MAAM;CACf,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { AIDriver, WorkflowResult, WorkflowError, WorkflowExecutionError } from './types.js';
|
|
1
|
+
export type { AIDriver, WorkflowResult, WorkflowError, WorkflowExecutionError, ToolAgentContext } from './types.js';
|
|
2
2
|
export { streamProcess } from './stream-workflow.js';
|
|
3
3
|
export type { StreamWorkflowOptions } from './stream-workflow.js';
|
|
4
4
|
export { dialogueProcess } from './dialogue-workflow.js';
|
|
@@ -12,6 +12,8 @@ export { BUILTIN_TOOL_PREFIX, isBuiltinTool } from './agentic-workflow/index.js'
|
|
|
12
12
|
export { DEFAULT_DRIVER_ROLE } from './agentic-workflow/index.js';
|
|
13
13
|
export { getTaskTypeConfig, taskCommon } from './agentic-workflow/index.js';
|
|
14
14
|
export type { AgenticWorkflowContext, AgenticWorkflowOptions, AgenticResumeState, AgenticTask, AgenticTaskExecutionLog, TaskType, ToolSpec, ToolCallLog, TaskTypeConfig } from './agentic-workflow/index.js';
|
|
15
|
+
export { toolAgentProcess } from './tool-agent-workflow.js';
|
|
16
|
+
export type { ToolAgentOptions } from './tool-agent-workflow.js';
|
|
15
17
|
export { defaultProcess } from './default-workflow.js';
|
|
16
18
|
export type { DefaultProcessOptions } from './default-workflow.js';
|
|
17
19
|
export { resolveDriver, isAIDriver } from './driver-input.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workflows/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,QAAQ,EACR,cAAc,EACd,aAAa,EACb,sBAAsB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workflows/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,QAAQ,EACR,cAAc,EACd,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAGlE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,YAAY,EACV,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,YAAY,EACV,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,YAAY,EACV,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC5E,YAAY,EACV,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,WAAW,EACX,uBAAuB,EACvB,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,cAAc,EACf,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,YAAY,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAGnE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC9D,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/workflows/index.js
CHANGED
|
@@ -11,6 +11,8 @@ export { agenticProcess } from './agentic-workflow/index.js';
|
|
|
11
11
|
export { BUILTIN_TOOL_PREFIX, isBuiltinTool } from './agentic-workflow/index.js';
|
|
12
12
|
export { DEFAULT_DRIVER_ROLE } from './agentic-workflow/index.js';
|
|
13
13
|
export { getTaskTypeConfig, taskCommon } from './agentic-workflow/index.js';
|
|
14
|
+
// Tool agent workflow
|
|
15
|
+
export { toolAgentProcess } from './tool-agent-workflow.js';
|
|
14
16
|
// Default workflow
|
|
15
17
|
export { defaultProcess } from './default-workflow.js';
|
|
16
18
|
// Driver input types
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workflows/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workflows/index.ts"],"names":[],"mappings":"AASA,kBAAkB;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,oBAAoB;AACpB,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAMzD,qBAAqB;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAM3D,kBAAkB;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAM7D,mBAAmB;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAa5E,sBAAsB;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,mBAAmB;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,qBAAqB;AACrB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool agent workflow
|
|
3
|
+
*
|
|
4
|
+
* A simple agent loop: query the model with tools, execute tool calls,
|
|
5
|
+
* feed results back, and repeat until the model produces a final output
|
|
6
|
+
* or the turn limit is reached.
|
|
7
|
+
*
|
|
8
|
+
* All tools are executed internally — there is no builtin/external distinction.
|
|
9
|
+
*/
|
|
10
|
+
import type { PromptModule } from '@modular-prompt/core';
|
|
11
|
+
import type { ToolChoice } from '@modular-prompt/driver';
|
|
12
|
+
import { type WorkflowResult, type ToolSpec, type ToolAgentContext } from './types.js';
|
|
13
|
+
import { type DriverInput, type ModelRole } from './driver-input.js';
|
|
14
|
+
/**
|
|
15
|
+
* Options for tool agent workflow
|
|
16
|
+
*/
|
|
17
|
+
export interface ToolAgentOptions {
|
|
18
|
+
/** Tools available to the agent (definition + handler) */
|
|
19
|
+
tools?: ToolSpec[];
|
|
20
|
+
/** Maximum number of query-execute turns (default: 10) */
|
|
21
|
+
maxTurns?: number;
|
|
22
|
+
/** Maximum output tokens per query */
|
|
23
|
+
maxTokens?: number;
|
|
24
|
+
/** Tool usage strategy */
|
|
25
|
+
toolChoice?: ToolChoice;
|
|
26
|
+
/** Driver role to use from DriverSet (default: 'default') */
|
|
27
|
+
driverRole?: ModelRole;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Tool agent workflow — runs a model with tools in a loop.
|
|
31
|
+
*
|
|
32
|
+
* The model is queried with tool definitions. When it produces tool calls,
|
|
33
|
+
* they are executed and the results are fed back. This continues until
|
|
34
|
+
* the model produces output without tool calls or maxTurns is reached.
|
|
35
|
+
*/
|
|
36
|
+
export declare function toolAgentProcess<TContext extends ToolAgentContext & Record<string, any>>(driver: DriverInput, module: PromptModule<TContext>, context: TContext, options?: ToolAgentOptions): Promise<WorkflowResult<TContext>>;
|
|
37
|
+
//# sourceMappingURL=tool-agent-workflow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-agent-workflow.d.ts","sourceRoot":"","sources":["../../src/workflows/tool-agent-workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,wBAAwB,CAAC;AAGtE,OAAO,EAA0B,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAoB,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACjI,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAiB,MAAM,mBAAmB,CAAC;AAKpF;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0DAA0D;IAC1D,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,SAAS,CAAC;CACxB;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,SAAS,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC5F,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,EAC9B,OAAO,EAAE,QAAQ,EACjB,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CA0InC"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool agent workflow
|
|
3
|
+
*
|
|
4
|
+
* A simple agent loop: query the model with tools, execute tool calls,
|
|
5
|
+
* feed results back, and repeat until the model produces a final output
|
|
6
|
+
* or the turn limit is reached.
|
|
7
|
+
*
|
|
8
|
+
* All tools are executed internally — there is no builtin/external distinction.
|
|
9
|
+
*/
|
|
10
|
+
import { compile } from '@modular-prompt/core';
|
|
11
|
+
import { Logger } from '@modular-prompt/utils';
|
|
12
|
+
import { WorkflowExecutionError } from './types.js';
|
|
13
|
+
import { resolveDriver } from './driver-input.js';
|
|
14
|
+
import { aggregateUsage, aggregateLogEntries } from './usage-utils.js';
|
|
15
|
+
const logger = new Logger({ prefix: 'process', context: 'tool-agent' });
|
|
16
|
+
/**
|
|
17
|
+
* Tool agent workflow — runs a model with tools in a loop.
|
|
18
|
+
*
|
|
19
|
+
* The model is queried with tool definitions. When it produces tool calls,
|
|
20
|
+
* they are executed and the results are fed back. This continues until
|
|
21
|
+
* the model produces output without tool calls or maxTurns is reached.
|
|
22
|
+
*/
|
|
23
|
+
export async function toolAgentProcess(driver, module, context, options = {}) {
|
|
24
|
+
const { tools = [], maxTurns = 10, driverRole = 'default', } = options;
|
|
25
|
+
const resolvedDriver = resolveDriver(driver, driverRole);
|
|
26
|
+
const toolDefs = tools.map(t => t.definition);
|
|
27
|
+
const toolMap = new Map(tools.map(t => [t.definition.name, t]));
|
|
28
|
+
// 会話履歴を context に蓄積する(未定義なら初期化)
|
|
29
|
+
if (!context.messages) {
|
|
30
|
+
context.messages = [];
|
|
31
|
+
}
|
|
32
|
+
try {
|
|
33
|
+
logger.info('[start] tool-agent workflow');
|
|
34
|
+
const queryOptions = {
|
|
35
|
+
tools: toolDefs.length > 0 ? toolDefs : undefined,
|
|
36
|
+
toolChoice: options.toolChoice ?? 'auto',
|
|
37
|
+
...(options.maxTokens ? { maxTokens: options.maxTokens } : {}),
|
|
38
|
+
};
|
|
39
|
+
const toolCallLog = [];
|
|
40
|
+
const allUsages = [];
|
|
41
|
+
const allLogEntries = [];
|
|
42
|
+
const allErrors = [];
|
|
43
|
+
let turn = 0;
|
|
44
|
+
while (turn < maxTurns) {
|
|
45
|
+
turn++;
|
|
46
|
+
logger.info(`[turn ${turn}/${maxTurns}]`);
|
|
47
|
+
// 毎ターン re-compile: context の変化が prompt に反映される
|
|
48
|
+
const prompt = compile(module, context);
|
|
49
|
+
// context.messages を prompt.output に展開
|
|
50
|
+
prompt.output.push(...context.messages);
|
|
51
|
+
const result = await resolvedDriver.query(prompt, queryOptions);
|
|
52
|
+
const content = result.content || '';
|
|
53
|
+
logger.verbose('[output]', content);
|
|
54
|
+
// No tool calls → done
|
|
55
|
+
if (!result.toolCalls || result.toolCalls.length === 0) {
|
|
56
|
+
allUsages.push(result.usage);
|
|
57
|
+
allLogEntries.push(result.logEntries);
|
|
58
|
+
allErrors.push(result.errors);
|
|
59
|
+
logger.info(`[end] ${turn} turn(s)`);
|
|
60
|
+
return {
|
|
61
|
+
output: content,
|
|
62
|
+
context,
|
|
63
|
+
consumedUsage: aggregateUsage(allUsages),
|
|
64
|
+
responseUsage: result.usage,
|
|
65
|
+
logEntries: aggregateLogEntries(allLogEntries),
|
|
66
|
+
errors: aggregateLogEntries(allErrors),
|
|
67
|
+
metadata: {
|
|
68
|
+
iterations: turn,
|
|
69
|
+
toolCallLog,
|
|
70
|
+
finishReason: result.finishReason,
|
|
71
|
+
},
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
// Execute tool calls
|
|
75
|
+
for (const tc of result.toolCalls) {
|
|
76
|
+
logger.info('[tool:call]', tc.name, JSON.stringify(tc.arguments));
|
|
77
|
+
}
|
|
78
|
+
const toolResults = [];
|
|
79
|
+
for (const tc of result.toolCalls) {
|
|
80
|
+
const spec = toolMap.get(tc.name);
|
|
81
|
+
if (!spec) {
|
|
82
|
+
const errValue = `Unknown tool: "${tc.name}". Available tools: ${toolDefs.map(d => d.name).join(', ')}`;
|
|
83
|
+
logger.warn('[tool:error]', tc.name, errValue);
|
|
84
|
+
toolResults.push({
|
|
85
|
+
type: 'message', role: 'tool', toolCallId: tc.id, name: tc.name,
|
|
86
|
+
kind: 'error', value: errValue,
|
|
87
|
+
});
|
|
88
|
+
toolCallLog.push({ name: tc.name, arguments: tc.arguments, result: `Error: unknown tool` });
|
|
89
|
+
continue;
|
|
90
|
+
}
|
|
91
|
+
try {
|
|
92
|
+
const toolResult = await spec.handler(tc.arguments, context);
|
|
93
|
+
logger.info('[tool:result]', tc.name, toolResult);
|
|
94
|
+
toolResults.push({
|
|
95
|
+
type: 'message', role: 'tool', toolCallId: tc.id, name: tc.name,
|
|
96
|
+
kind: typeof toolResult === 'string' ? 'text' : 'data', value: toolResult,
|
|
97
|
+
});
|
|
98
|
+
toolCallLog.push({ name: tc.name, arguments: tc.arguments, result: toolResult });
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
102
|
+
logger.warn('[tool:error]', tc.name, errorMsg);
|
|
103
|
+
toolResults.push({
|
|
104
|
+
type: 'message', role: 'tool', toolCallId: tc.id, name: tc.name,
|
|
105
|
+
kind: 'error', value: errorMsg,
|
|
106
|
+
});
|
|
107
|
+
toolCallLog.push({ name: tc.name, arguments: tc.arguments, result: `Error: ${errorMsg}` });
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
// Accumulate usage from this turn
|
|
111
|
+
allUsages.push(result.usage);
|
|
112
|
+
allLogEntries.push(result.logEntries);
|
|
113
|
+
allErrors.push(result.errors);
|
|
114
|
+
// 会話履歴を context に蓄積(次の compile で反映される)
|
|
115
|
+
const assistantMessage = {
|
|
116
|
+
type: 'message', role: 'assistant', content,
|
|
117
|
+
toolCalls: result.toolCalls,
|
|
118
|
+
};
|
|
119
|
+
context.messages.push(assistantMessage, ...toolResults);
|
|
120
|
+
// After first turn, ensure toolChoice is auto
|
|
121
|
+
queryOptions.toolChoice = 'auto';
|
|
122
|
+
}
|
|
123
|
+
// maxTurns exhausted — return last content
|
|
124
|
+
logger.info(`[end] max turns (${maxTurns}) reached`);
|
|
125
|
+
return {
|
|
126
|
+
output: '',
|
|
127
|
+
context,
|
|
128
|
+
consumedUsage: aggregateUsage(allUsages),
|
|
129
|
+
logEntries: aggregateLogEntries(allLogEntries),
|
|
130
|
+
errors: aggregateLogEntries(allErrors),
|
|
131
|
+
metadata: {
|
|
132
|
+
iterations: turn,
|
|
133
|
+
toolCallLog,
|
|
134
|
+
},
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
catch (error) {
|
|
138
|
+
throw new WorkflowExecutionError(error instanceof Error ? error : new Error(String(error)), context, { phase: 'tool-agent-loop' });
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=tool-agent-workflow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-agent-workflow.js","sourceRoot":"","sources":["../../src/workflows/tool-agent-workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,30 @@
|
|
|
1
1
|
export type { AIDriver, QueryResult, FinishReason } from '@modular-prompt/driver';
|
|
2
|
-
import type { FinishReason } from '@modular-prompt/driver';
|
|
2
|
+
import type { FinishReason, ToolDefinition } from '@modular-prompt/driver';
|
|
3
3
|
import type { LogEntry } from '@modular-prompt/utils';
|
|
4
|
+
import type { MessageElement } from '@modular-prompt/core';
|
|
5
|
+
/**
|
|
6
|
+
* toolAgentProcess が要求する最小限のコンテキスト形状。
|
|
7
|
+
* ユーザーは自身の Context 型でこれを extends する。
|
|
8
|
+
*/
|
|
9
|
+
export interface ToolAgentContext {
|
|
10
|
+
/** 会話履歴(assistant メッセージ + tool result)。toolAgentProcess が自動的に蓄積する。 */
|
|
11
|
+
messages?: MessageElement[];
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Tool specification: definition for AI + handler for execution
|
|
15
|
+
*/
|
|
16
|
+
export interface ToolSpec<TContext = any> {
|
|
17
|
+
definition: ToolDefinition;
|
|
18
|
+
handler: (args: Record<string, unknown>, context: TContext) => Promise<unknown>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Tool call log entry
|
|
22
|
+
*/
|
|
23
|
+
export interface ToolCallLog {
|
|
24
|
+
name: string;
|
|
25
|
+
arguments: Record<string, unknown>;
|
|
26
|
+
result: unknown;
|
|
27
|
+
}
|
|
4
28
|
/**
|
|
5
29
|
* Result of workflow execution
|
|
6
30
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workflows/types.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workflows/types.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC3E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAM3D;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sEAAsE;IACtE,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ,CAAC,QAAQ,GAAG,GAAG;IACtC,UAAU,EAAE,cAAc,CAAC;IAC3B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACjF;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,QAAQ;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,QAAQ,CAAC;IAClB,4CAA4C;IAC5C,aAAa,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACxF,gCAAgC;IAChC,aAAa,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACxF,wBAAwB;IACxB,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC;IACxB,oBAAoB;IACpB,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE;QACT,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,QAAQ,CAAE,SAAQ,KAAK;IACpD,OAAO,EAAE,QAAQ,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED;;GAEG;AACH,qBAAa,sBAAsB,CAAC,QAAQ,GAAG,GAAG,CAAE,SAAQ,KAAM,YAAW,aAAa,CAAC,QAAQ,CAAC;IAC3F,OAAO,EAAE,QAAQ,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,YAAY,CAAC;gBAGjC,aAAa,EAAE,KAAK,GAAG,MAAM,EAC7B,OAAO,EAAE,QAAQ,EACjB,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,YAAY,CAAC;KAC7B;CAkBJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/workflows/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/workflows/types.ts"],"names":[],"mappings":"AAkEA;;GAEG;AACH,MAAM,OAAO,sBAAuC,SAAQ,KAAK;IACxD,OAAO,CAAW;IAClB,aAAa,CAAU;IACvB,KAAK,CAAU;IACf,YAAY,CAAgB;IAEnC,YACE,aAA6B,EAC7B,OAAiB,EACjB,OAIC;QAED,MAAM,OAAO,GAAG,OAAO,aAAa,KAAK,QAAQ;YAC/C,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC;QAE1B,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,OAAO,EAAE,aAAa,CAAC;QAC5C,IAAI,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,OAAO,EAAE,YAAY,CAAC;QAE1C,6CAA6C;QAC7C,IAAI,aAAa,YAAY,KAAK,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YAC1D,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;QACnC,CAAC;IACH,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@modular-prompt/process",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Process module for modular prompt framework",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"README.md"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@modular-prompt/utils": "0.3.3",
|
|
28
27
|
"@modular-prompt/core": "0.2.2",
|
|
28
|
+
"@modular-prompt/utils": "0.3.3",
|
|
29
29
|
"@modular-prompt/driver": "0.11.0"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|