@downcity/agent 1.1.324 → 1.1.328

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 (48) hide show
  1. package/bin/executor/core-engine/CoreEngineRunner.d.ts.map +1 -1
  2. package/bin/executor/core-engine/CoreEngineRunner.js +66 -3
  3. package/bin/executor/core-engine/CoreEngineRunner.js.map +1 -1
  4. package/bin/executor/core-engine/CoreEngineSignals.d.ts.map +1 -1
  5. package/bin/executor/core-engine/CoreEngineSignals.js +9 -4
  6. package/bin/executor/core-engine/CoreEngineSignals.js.map +1 -1
  7. package/bin/executor/core-engine/CoreEngineUiStreamCollector.d.ts +2 -0
  8. package/bin/executor/core-engine/CoreEngineUiStreamCollector.d.ts.map +1 -1
  9. package/bin/executor/core-engine/CoreEngineUiStreamCollector.js +1 -1
  10. package/bin/executor/core-engine/CoreEngineUiStreamCollector.js.map +1 -1
  11. package/bin/index.d.ts +1 -1
  12. package/bin/index.d.ts.map +1 -1
  13. package/bin/index.js.map +1 -1
  14. package/bin/session/messages/SessionAssistantMessageWriter.d.ts.map +1 -1
  15. package/bin/session/messages/SessionAssistantMessageWriter.js +6 -1
  16. package/bin/session/messages/SessionAssistantMessageWriter.js.map +1 -1
  17. package/bin/session/messages/SessionMessageInteractionWriter.d.ts.map +1 -1
  18. package/bin/session/messages/SessionMessageInteractionWriter.js +9 -4
  19. package/bin/session/messages/SessionMessageInteractionWriter.js.map +1 -1
  20. package/bin/tools/ask/AskQuestionsTool.d.ts +4 -6
  21. package/bin/tools/ask/AskQuestionsTool.d.ts.map +1 -1
  22. package/bin/tools/ask/AskQuestionsTool.js +6 -1
  23. package/bin/tools/ask/AskQuestionsTool.js.map +1 -1
  24. package/bin/tools/ask/AskQuestionsToolSchemas.d.ts +5 -7
  25. package/bin/tools/ask/AskQuestionsToolSchemas.d.ts.map +1 -1
  26. package/bin/tools/ask/AskQuestionsToolSchemas.js +5 -9
  27. package/bin/tools/ask/AskQuestionsToolSchemas.js.map +1 -1
  28. package/bin/tools/index.d.ts +1 -1
  29. package/bin/tools/index.d.ts.map +1 -1
  30. package/bin/types/session/SessionInteraction.d.ts +17 -1
  31. package/bin/types/session/SessionInteraction.d.ts.map +1 -1
  32. package/bin/types/tools/ask/AskQuestionsTool.d.ts +11 -2
  33. package/bin/types/tools/ask/AskQuestionsTool.d.ts.map +1 -1
  34. package/package.json +1 -1
  35. package/scripts/session-ask-question.test.mjs +14 -6
  36. package/scripts/session-tool-approval.test.mjs +171 -0
  37. package/src/executor/core-engine/CoreEngineRunner.ts +83 -5
  38. package/src/executor/core-engine/CoreEngineSignals.ts +10 -4
  39. package/src/executor/core-engine/CoreEngineUiStreamCollector.ts +3 -1
  40. package/src/index.ts +2 -0
  41. package/src/session/messages/SessionAssistantMessageWriter.ts +8 -1
  42. package/src/session/messages/SessionMessageInteractionWriter.ts +12 -6
  43. package/src/tools/ask/AskQuestionsTool.ts +6 -1
  44. package/src/tools/ask/AskQuestionsToolSchemas.ts +5 -9
  45. package/src/tools/index.ts +1 -0
  46. package/src/types/session/SessionInteraction.ts +27 -1
  47. package/src/types/tools/ask/AskQuestionsTool.ts +12 -1
  48. package/tsconfig.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SessionMessageInteractionWriter.js","sourceRoot":"","sources":["../../../src/session/messages/SessionMessageInteractionWriter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionMessageInteractionWriter.js","sourceRoot":"","sources":["../../../src/session/messages/SessionMessageInteractionWriter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAkCH,0DAA0D;AAC1D,MAAM,OAAO,+BAA+B;IACzB,OAAO,CAAyC;IAEjE,YAAY,OAA+C;QACzD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,qDAAqD;IACrD,YAAY;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC3D,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW;YAC5D,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC7B,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;gBACtD,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBACzB,CAAC,CAAC,EAAE,CACP;YACH,CAAC,CAAC,EAAE,CACP,CAAC;IACJ,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,OAAO,CACX,OAAkC;QAElC,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM;YAC/C,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,UAAU;YACrE,CAAC,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,UAAU,CAAC;QAClD,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,OAAO,GAAG,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC;YAC7D,IACE,OAAO,CAAC,KAAK,CAAC,IAAI,CAChB,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,aAAa;gBAC3B,IAAI,CAAC,cAAc,KAAK,OAAO,CAAC,cAAc,CACjD,EACD,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,uCAAuC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;YACnF,CAAC;YAED,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAC1B,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACnC,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBACtE,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;oBACnC,MAAM,IAAI,KAAK,CACb,mCAAmC,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,CACjE,CAAC;gBACJ,CAAC;gBACD,MAAM,oBAAoB,GACxB,OAAO,CAAC,IAAI,KAAK,UAAU;oBAC3B,OAAO,CAAC,SAAS,KAAK,MAAM;oBAC5B,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,cAAc,CAAC;gBACrC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBACzD,MAAM,IAAI,KAAK,CACb,0CAA0C,OAAO,CAAC,MAAM,CAAC,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAC7F,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC1B,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACzB,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO;wBAChC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,cAAuB,EAAE;wBAClD,CAAC,CAAC,IAAI,CACT,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,MAAM,WAAW,GAAoC;gBACnD,OAAO,EAAE,eAAe,OAAO,CAAC,cAAc,EAAE;gBAChD,QAAQ,EAAE,KAAK,CAAC,MAAM,CACpB,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,EACzD,CAAC,CACF;gBACD,IAAI,EAAE,aAAa;gBACnB,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,gBAAgB,EAAE,OAAO,CAAC,IAAI;gBAC9B,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC;aAClC,CAAC;YACF,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,EAAE,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC;IACvE,CAAC;IAED,8CAA8C;IAC9C,KAAK,CAAC,OAAO,CACX,cAAsB,EACtB,QAAoC;QAEpC,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAC;QACxE,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,OAAO,GAAG,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC;YAC7D,MAAM,WAAW,GAAG,IAAI,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAC;YACrE,IAAI,WAAW,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CAAC,wCAAwC,cAAc,EAAE,CAAC,CAAC;YAC5E,CAAC;YACD,IAAI,WAAW,CAAC,IAAI,CAAC,gBAAgB,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxD,MAAM,IAAI,KAAK,CAAC,+CAA+C,cAAc,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,KAAK,UAAU,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC;YAC9E,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACvC,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC9C,OAAO;wBACL,GAAG,WAAW,CAAC,IAAI;wBACnB,MAAM,EAAE,UAAmB;wBAC3B,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC;wBACnC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;qBACxB,CAAC;gBACJ,CAAC;gBACD,IACE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM;oBAC/C,IAAI,CAAC,IAAI,KAAK,MAAM;oBACpB,IAAI,CAAC,YAAY,KAAK,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,EAClE,CAAC;oBACD,IAAI,IAAI,CAAC,KAAK,KAAK,cAAc,EAAE,CAAC;wBAClC,MAAM,IAAI,KAAK,CACb,wCAAwC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,KAAK,GAAG,CAC5E,CAAC;oBACJ,CAAC;oBACD,OAAO,MAAM;wBACX,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,QAAiB,EAAE,KAAK,EAAE,oBAAoB,EAAE;wBACpE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,SAAkB,EAAE,CAAC;gBAC7C,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC;IACvD,CAAC;IAED,2CAA2C;IAC3C,KAAK,CAAC,KAAK,CACT,cAAsB,EACtB,KAKK;QAEL,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAC;QACxE,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,OAAO,GAAG,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC;YAC7D,MAAM,WAAW,GAAG,IAAI,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAC;YACrE,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS;gBACtC,CAAC,CAAC,qBAAqB;gBACvB,CAAC,CAAC,uBAAuB,CAAC;YAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACvC,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC9C,OAAO;wBACL,GAAG,WAAW,CAAC,IAAI;wBACnB,MAAM,EAAE,KAAK,CAAC,MAAM;wBACpB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;wBACvB,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,WAAW;4BAC9B,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,MAAM,EAAE;4BACjC,CAAC,CAAC,EAAE,CAAC;qBACR,CAAC;gBACJ,CAAC;gBACD,IACE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM;oBAC/C,IAAI,CAAC,IAAI,KAAK,MAAM;oBACpB,IAAI,CAAC,YAAY,KAAK,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,EAClE,CAAC;oBACD,IAAI,IAAI,CAAC,KAAK,KAAK,cAAc;wBAAE,OAAO,IAAI,CAAC;oBAC/C,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,QAAiB,EAAE,KAAK,EAAE,CAAC;gBACtD,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC;IACvD,CAAC;IAED,sCAAsC;IAC9B,2BAA2B,CACjC,UAAmB;QAEnB,MAAM,OAAO,GAAG,UAAU;YACxB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CACpC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,UAAU,CACzC;YACH,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CACpC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,CACnE,CAAC;QACN,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC/E,MAAM,IAAI,KAAK,CACb,UAAU;gBACR,CAAC,CAAC,0CAA0C,UAAU,EAAE;gBACxD,CAAC,CAAC,uCAAuC,CAC5C,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,8CAA8C;IACtC,gBAAgB,CAAC,cAAsB;QAM7C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;YACnD,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW;gBAAE,SAAS;YAC7E,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAC7B,CAAC,IAAI,EAA2C,EAAE,CAChD,IAAI,CAAC,IAAI,KAAK,aAAa;gBAC3B,IAAI,CAAC,cAAc,KAAK,cAAc,CACzC,CAAC;YACF,IAAI,IAAI;gBAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,mCAAmC;IAC3B,mBAAmB,CAAC,cAAsB;QAIhD,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QAC1D,IAAI,WAAW;YAAE,OAAO,WAAW,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,kCAAkC,cAAc,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,uDAAuD;IAC/C,2BAA2B,CAAC,cAAsB;QAIxD,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;QAC7D,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACb,kCAAkC,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,cAAc,EAAE,CAC/E,CAAC;QACJ,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,8CAA8C;IACtC,sBAAsB,CAAC,YAAoB;QACjD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAC5D,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,kCAAkC,YAAY,EAAE,CAAC,CAAC;IACpE,CAAC;CACF"}
@@ -22,13 +22,11 @@ import type { ActionResult } from "../../types/action/ActionResult.js";
22
22
  export declare const AskQuestionsTool: import("ai").Tool<{
23
23
  title: string;
24
24
  questions: ({
25
- question_id: string;
26
- prompt: string;
27
- response_type: "text";
25
+ question: string;
26
+ type: "text";
28
27
  } | {
29
- question_id: string;
30
- prompt: string;
31
- response_type: "single_select" | "multi_select";
28
+ question: string;
29
+ type: "single_select" | "multi_select";
32
30
  options: {
33
31
  value: string;
34
32
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"AskQuestionsTool.d.ts","sourceRoot":"","sources":["../../../src/tools/ask/AskQuestionsTool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAEV,sBAAsB,EACvB,MAAM,uCAAuC,CAAC;AAG/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEnE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;wCAsD3B,CAAC"}
1
+ {"version":3,"file":"AskQuestionsTool.d.ts","sourceRoot":"","sources":["../../../src/tools/ask/AskQuestionsTool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAEV,sBAAsB,EACvB,MAAM,uCAAuC,CAAC;AAG/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEnE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;wCA2D3B,CAAC"}
@@ -42,7 +42,12 @@ export const AskQuestionsTool = tool({
42
42
  tool_name: "ask_question",
43
43
  },
44
44
  title: input.title,
45
- questions: input.questions,
45
+ questions: input.questions.map((question) => ({
46
+ question_id: `question:${generate_id()}`,
47
+ prompt: question.question,
48
+ response_type: question.type,
49
+ ...(question.options ? { options: question.options } : {}),
50
+ })),
46
51
  created_at: Date.now(),
47
52
  });
48
53
  const result = await handle.result;
@@ -1 +1 @@
1
- {"version":3,"file":"AskQuestionsTool.js","sourceRoot":"","sources":["../../../src/tools/ask/AskQuestionsTool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,IAAI,EAA6B,MAAM,IAAI,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAM1E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;IACnC,WAAW,EACT,kcAAkc;IACpc,WAAW,EAAE,0BAA0B;IACvC,OAAO,EAAE,KAAK,EACZ,KAA4B,EAC5B,iBAAuC,EACQ,EAAE;QACjD,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,oBAE/B,CAAC;QACd,MAAM,YAAY,GAAG,iBAAiB,EAAE,oBAAoB,CAAC;QAC7D,MAAM,gBAAgB,GAAG,YAAY,EAAE,YAAY,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACnE,MAAM,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACvE,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC;YAC5C,cAAc,EAAE,eAAe,WAAW,EAAE,EAAE;YAC9C,OAAO;YACP,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;gBACZ,YAAY;gBACZ,SAAS,EAAE,cAAc;aAC1B;YACD,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;SACvB,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;QACnC,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;QACJ,CAAC;QACD,OAAO;YACL,MAAM,EAAE;gBACN,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO;aACjC;YACD,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"AskQuestionsTool.js","sourceRoot":"","sources":["../../../src/tools/ask/AskQuestionsTool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,IAAI,EAA6B,MAAM,IAAI,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAM1E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;IACnC,WAAW,EACT,kcAAkc;IACpc,WAAW,EAAE,0BAA0B;IACvC,OAAO,EAAE,KAAK,EACZ,KAA4B,EAC5B,iBAAuC,EACQ,EAAE;QACjD,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,oBAE/B,CAAC;QACd,MAAM,YAAY,GAAG,iBAAiB,EAAE,oBAAoB,CAAC;QAC7D,MAAM,gBAAgB,GAAG,YAAY,EAAE,YAAY,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACnE,MAAM,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACvE,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC;YAC5C,cAAc,EAAE,eAAe,WAAW,EAAE,EAAE;YAC9C,OAAO;YACP,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;gBACZ,YAAY;gBACZ,SAAS,EAAE,cAAc;aAC1B;YACD,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAC5C,WAAW,EAAE,YAAY,WAAW,EAAE,EAAE;gBACxC,MAAM,EAAE,QAAQ,CAAC,QAAQ;gBACzB,aAAa,EAAE,QAAQ,CAAC,IAAI;gBAC5B,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3D,CAAC,CAAC;YACH,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;SACvB,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;QACnC,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;QACJ,CAAC;QACD,OAAO;YACL,MAAM,EAAE;gBACN,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO;aACjC;YACD,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -9,13 +9,11 @@ import { z } from "zod";
9
9
  export declare const ask_questions_input_schema: z.ZodObject<{
10
10
  title: z.ZodString;
11
11
  questions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
12
- question_id: z.ZodString;
13
- prompt: z.ZodString;
14
- response_type: z.ZodLiteral<"text">;
12
+ question: z.ZodString;
13
+ type: z.ZodLiteral<"text">;
15
14
  }, z.core.$strict>, z.ZodObject<{
16
- question_id: z.ZodString;
17
- prompt: z.ZodString;
18
- response_type: z.ZodEnum<{
15
+ question: z.ZodString;
16
+ type: z.ZodEnum<{
19
17
  single_select: "single_select";
20
18
  multi_select: "multi_select";
21
19
  }>;
@@ -24,6 +22,6 @@ export declare const ask_questions_input_schema: z.ZodObject<{
24
22
  label: z.ZodString;
25
23
  description: z.ZodOptional<z.ZodString>;
26
24
  }, z.core.$strict>>;
27
- }, z.core.$strict>], "response_type">>;
25
+ }, z.core.$strict>], "type">>;
28
26
  }, z.core.$strict>;
29
27
  //# sourceMappingURL=AskQuestionsToolSchemas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AskQuestionsToolSchemas.d.ts","sourceRoot":"","sources":["../../../src/tools/ask/AskQuestionsToolSchemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuCxB,yCAAyC;AACzC,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;kBAY5B,CAAC"}
1
+ {"version":3,"file":"AskQuestionsToolSchemas.d.ts","sourceRoot":"","sources":["../../../src/tools/ask/AskQuestionsToolSchemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAmCxB,yCAAyC;AACzC,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;kBAY5B,CAAC"}
@@ -17,20 +17,16 @@ const option_schema = z
17
17
  .strict();
18
18
  const text_question_schema = z
19
19
  .object({
20
- question_id: z.string().trim().min(1)
21
- .describe("Stable question identifier unique within this request."),
22
- prompt: z.string().trim().min(1)
20
+ question: z.string().trim().min(1)
23
21
  .describe("Complete question shown to the user."),
24
- response_type: z.literal("text"),
22
+ type: z.literal("text"),
25
23
  })
26
24
  .strict();
27
25
  const select_question_schema = z
28
26
  .object({
29
- question_id: z.string().trim().min(1)
30
- .describe("Stable question identifier unique within this request."),
31
- prompt: z.string().trim().min(1)
27
+ question: z.string().trim().min(1)
32
28
  .describe("Complete question shown to the user."),
33
- response_type: z.enum(["single_select", "multi_select"]),
29
+ type: z.enum(["single_select", "multi_select"]),
34
30
  options: z.array(option_schema).min(1)
35
31
  .describe("Required selectable options. Every option MUST include both value and label, for example { value: 'cn', label: '中国' }."),
36
32
  })
@@ -41,7 +37,7 @@ export const ask_questions_input_schema = z
41
37
  title: z.string().trim().min(1)
42
38
  .describe("Short title for the question card."),
43
39
  questions: z
44
- .array(z.discriminatedUnion("response_type", [
40
+ .array(z.discriminatedUnion("type", [
45
41
  text_question_schema,
46
42
  select_question_schema,
47
43
  ]))
@@ -1 +1 @@
1
- {"version":3,"file":"AskQuestionsToolSchemas.js","sourceRoot":"","sources":["../../../src/tools/ask/AskQuestionsToolSchemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,aAAa,GAAG,CAAC;KACpB,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC5B,QAAQ,CACP,2HAA2H,CAC5H;IACH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC5B,QAAQ,CAAC,mEAAmE,CAAC;IAChF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;SAC7C,QAAQ,CAAC,sCAAsC,CAAC;CACpD,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,oBAAoB,GAAG,CAAC;KAC3B,MAAM,CAAC;IACN,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAClC,QAAQ,CAAC,wDAAwD,CAAC;IACrE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC7B,QAAQ,CAAC,sCAAsC,CAAC;IACnD,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;CACjC,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,sBAAsB,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAClC,QAAQ,CAAC,wDAAwD,CAAC;IACrE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC7B,QAAQ,CAAC,sCAAsC,CAAC;IACnD,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IACxD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACnC,QAAQ,CACP,wHAAwH,CACzH;CACJ,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,yCAAyC;AACzC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC;KACxC,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC5B,QAAQ,CAAC,oCAAoC,CAAC;IACjD,SAAS,EAAE,CAAC;SACT,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,eAAe,EAAE;QAC3C,oBAAoB;QACpB,sBAAsB;KACvB,CAAC,CAAC;SACF,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,gEAAgE,CAAC;CAC9E,CAAC;KACD,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"AskQuestionsToolSchemas.js","sourceRoot":"","sources":["../../../src/tools/ask/AskQuestionsToolSchemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,aAAa,GAAG,CAAC;KACpB,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC5B,QAAQ,CACP,2HAA2H,CAC5H;IACH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC5B,QAAQ,CAAC,mEAAmE,CAAC;IAChF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;SAC7C,QAAQ,CAAC,sCAAsC,CAAC;CACpD,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,oBAAoB,GAAG,CAAC;KAC3B,MAAM,CAAC;IACN,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC/B,QAAQ,CAAC,sCAAsC,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;CACxB,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,sBAAsB,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC/B,QAAQ,CAAC,sCAAsC,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IAC/C,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACnC,QAAQ,CACP,wHAAwH,CACzH;CACJ,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,yCAAyC;AACzC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC;KACxC,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC5B,QAAQ,CAAC,oCAAoC,CAAC;IACjD,SAAS,EAAE,CAAC;SACT,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;QAClC,oBAAoB;QACpB,sBAAsB;KACvB,CAAC,CAAC;SACF,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,gEAAgE,CAAC;CAC9E,CAAC;KACD,MAAM,EAAE,CAAC"}
@@ -5,5 +5,5 @@
5
5
  * `AgentOptions.tools` 显式完成组合。
6
6
  */
7
7
  export { AskQuestionsTool } from "./ask/AskQuestionsTool.js";
8
- export type { AskQuestionsToolInput, AskQuestionsToolOutput, } from "../types/tools/ask/AskQuestionsTool.js";
8
+ export type { AskQuestionsToolQuestion, AskQuestionsToolInput, AskQuestionsToolOutput, } from "../types/tools/ask/AskQuestionsTool.js";
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,YAAY,EACV,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,wCAAwC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,YAAY,EACV,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,wCAAwC,CAAC"}
@@ -4,6 +4,7 @@
4
4
  * Interaction 表示当前 Turn 在执行过程中需要用户参与。执行方发起请求后等待,
5
5
  * Session 先持久化请求并通知客户端;客户端响应完成持久化后,原执行才会恢复。
6
6
  */
7
+ import type { JsonValue } from "../../types/common/Json.js";
7
8
  /** Interaction 当前生命周期状态。 */
8
9
  export type SessionInteractionStatus = "pending" | "resolved" | "expired" | "cancelled";
9
10
  /** 高风险操作请求是否需要用户逐次确认。 */
@@ -34,7 +35,7 @@ export interface SessionInteractionRequestBase {
34
35
  expires_at?: number;
35
36
  }
36
37
  /** 高风险操作审批请求。 */
37
- export interface SessionApprovalInteractionRequest extends SessionInteractionRequestBase {
38
+ export interface SessionShellApprovalInteractionRequest extends SessionInteractionRequestBase {
38
39
  /** Interaction 类型固定为 approval。 */
39
40
  kind: "approval";
40
41
  /** 审批界面展示标题。 */
@@ -50,6 +51,21 @@ export interface SessionApprovalInteractionRequest extends SessionInteractionReq
50
51
  /** 当前审批对应的操作类别。 */
51
52
  operation: "exec" | "start" | "write";
52
53
  }
54
+ /** 普通 Tool 在执行前等待用户决定的审批请求。 */
55
+ export interface SessionToolApprovalInteractionRequest extends SessionInteractionRequestBase {
56
+ /** Interaction 类型固定为 approval。 */
57
+ kind: "approval";
58
+ /** 审批操作类型固定为普通 Tool。 */
59
+ operation: "tool";
60
+ /** Tool schema 校验通过后的真实调用输入。 */
61
+ validated_input: JsonValue;
62
+ /** Tool 定义提供的稳定能力说明。 */
63
+ tool_description?: string;
64
+ /** 模型为当前调用给出的可选解释;该字段不构成安全依据。 */
65
+ model_explanation?: string;
66
+ }
67
+ /** Session 支持的全部审批请求。 */
68
+ export type SessionApprovalInteractionRequest = SessionShellApprovalInteractionRequest | SessionToolApprovalInteractionRequest;
53
69
  /** Question 支持的回答形式。 */
54
70
  export type SessionInteractionQuestionResponseType = "text" | "single_select" | "multi_select";
55
71
  /** Question 选择项。 */
@@ -1 +1 @@
1
- {"version":3,"file":"SessionInteraction.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionInteraction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionInteraction.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionInteraction.ts"],"names":[],"mappings":"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"}
@@ -4,13 +4,22 @@
4
4
  * 该协议只描述模型发起问题和收到回答时可见的数据;Interaction 标识、Turn 标识与
5
5
  * 生命周期状态由 Session 运行时维护,不交给模型生成。
6
6
  */
7
- import type { SessionInteractionAnswer, SessionInteractionQuestion } from "../../../types/session/SessionInteraction.js";
7
+ import type { SessionInteractionAnswer, SessionInteractionOption, SessionInteractionQuestion } from "../../../types/session/SessionInteraction.js";
8
+ /** 模型调用 ask_question 时提交的一条问题。 */
9
+ export interface AskQuestionsToolQuestion {
10
+ /** 向用户展示的完整问题文本。 */
11
+ question: string;
12
+ /** 当前问题要求的回答形式,所有问题都必须显式提供。 */
13
+ type: SessionInteractionQuestion["response_type"];
14
+ /** 单选或多选问题允许选择的候选项。 */
15
+ options?: SessionInteractionOption[];
16
+ }
8
17
  /** 模型调用 ask_question 时提交的结构化输入。 */
9
18
  export interface AskQuestionsToolInput {
10
19
  /** 问题卡片向用户展示的简短标题。 */
11
20
  title: string;
12
21
  /** 本次需要用户完整回答的一到多条问题。 */
13
- questions: SessionInteractionQuestion[];
22
+ questions: AskQuestionsToolQuestion[];
14
23
  }
15
24
  /** 用户完成回答后返回给模型的结构化 Tool Result。 */
16
25
  export interface AskQuestionsToolOutput {
@@ -1 +1 @@
1
- {"version":3,"file":"AskQuestionsTool.d.ts","sourceRoot":"","sources":["../../../../src/types/tools/ask/AskQuestionsTool.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,uCAAuC,CAAC;AAE/C,mCAAmC;AACnC,MAAM,WAAW,qBAAqB;IACpC,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,yBAAyB;IACzB,SAAS,EAAE,0BAA0B,EAAE,CAAC;CACzC;AAED,oCAAoC;AACpC,MAAM,WAAW,sBAAsB;IACrC,oBAAoB;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,+BAA+B;IAC/B,OAAO,EAAE,wBAAwB,EAAE,CAAC;CACrC"}
1
+ {"version":3,"file":"AskQuestionsTool.d.ts","sourceRoot":"","sources":["../../../../src/types/tools/ask/AskQuestionsTool.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,uCAAuC,CAAC;AAE/C,kCAAkC;AAClC,MAAM,WAAW,wBAAwB;IACvC,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,IAAI,EAAE,0BAA0B,CAAC,eAAe,CAAC,CAAC;IAClD,uBAAuB;IACvB,OAAO,CAAC,EAAE,wBAAwB,EAAE,CAAC;CACtC;AAED,mCAAmC;AACnC,MAAM,WAAW,qBAAqB;IACpC,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,yBAAyB;IACzB,SAAS,EAAE,wBAAwB,EAAE,CAAC;CACvC;AAED,oCAAoC;AACpC,MAAM,WAAW,sBAAsB;IACrC,oBAAoB;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,+BAA+B;IAC/B,OAAO,EAAE,wBAAwB,EAAE,CAAC;CACrC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@downcity/agent",
3
- "version": "1.1.324",
3
+ "version": "1.1.328",
4
4
  "type": "module",
5
5
  "description": "Downcity Agent 运行时 — 单 Agent 执行壳与本机 RPC 能力",
6
6
  "main": "./bin/index.js",
@@ -30,9 +30,8 @@ function create_question_stream() {
30
30
  title: "选择部署区域",
31
31
  questions: [
32
32
  {
33
- question_id: "region",
34
- prompt: "需要部署到哪个区域?",
35
- response_type: "single_select",
33
+ question: "需要部署到哪个区域?",
34
+ type: "single_select",
36
35
  options: [
37
36
  { value: "cn", label: "中国" },
38
37
  { value: "us", label: "美国" },
@@ -164,7 +163,10 @@ test("显式注入的 ask_question 等待回答并继续同一个 Turn", async (
164
163
  interaction_id: mutation.part.interaction_id,
165
164
  response: {
166
165
  kind: "question",
167
- answers: [{ question_id: "region", value: "cn" }],
166
+ answers: [{
167
+ question_id: pending_interaction.request.questions[0].question_id,
168
+ value: "cn",
169
+ }],
168
170
  },
169
171
  });
170
172
  });
@@ -184,7 +186,10 @@ test("显式注入的 ask_question 等待回答并继续同一个 Turn", async (
184
186
  interaction_id: pending_interaction.interaction_id,
185
187
  response: {
186
188
  kind: "question",
187
- answers: [{ question_id: "region", value: "cn" }],
189
+ answers: [{
190
+ question_id: pending_interaction.request.questions[0].question_id,
191
+ value: "cn",
192
+ }],
188
193
  },
189
194
  });
190
195
 
@@ -201,7 +206,10 @@ test("显式注入的 ask_question 等待回答并继续同一个 Turn", async (
201
206
  assert.equal(tool_part?.state, "completed");
202
207
  assert.deepEqual(tool_part?.output, {
203
208
  status: "resolved",
204
- answers: [{ question_id: "region", value: "cn" }],
209
+ answers: [{
210
+ question_id: pending_interaction.request.questions[0].question_id,
211
+ value: "cn",
212
+ }],
205
213
  });
206
214
  assert.equal(interaction_part?.status, "resolved");
207
215
  assert.equal(interaction_part?.request.source.type, "tool");
@@ -0,0 +1,171 @@
1
+ /**
2
+ * @file 验证 AI SDK Tool needsApproval 接入 Session Interaction。
3
+ *
4
+ * 关键点(中文)
5
+ * - Tool 自己声明审批意图,Agent 不持有审批配置。
6
+ * - Runtime 展示真实 Tool Call,用户响应后继续原 Turn。
7
+ * - 拒绝时 Tool execute 不能产生副作用。
8
+ */
9
+
10
+ import test from "node:test";
11
+ import assert from "node:assert/strict";
12
+ import fs from "node:fs/promises";
13
+ import os from "node:os";
14
+ import path from "node:path";
15
+ import { MockLanguageModelV3 } from "ai/test";
16
+ import { z } from "zod";
17
+ import { Agent, Workspace } from "@downcity/agent";
18
+
19
+ function create_usage() {
20
+ return {
21
+ inputTokens: { total: 0, noCache: 0, cacheRead: 0, cacheWrite: 0 },
22
+ outputTokens: { total: 0, text: 0, reasoning: 0 },
23
+ };
24
+ }
25
+
26
+ function create_tool_call_stream() {
27
+ const input = { value: "approval-value" };
28
+ return {
29
+ stream: new ReadableStream({
30
+ start(controller) {
31
+ controller.enqueue({ type: "stream-start", warnings: [] });
32
+ controller.enqueue({
33
+ type: "tool-input-start",
34
+ id: "call_custom_approval",
35
+ toolName: "custom_approval",
36
+ });
37
+ controller.enqueue({
38
+ type: "tool-input-delta",
39
+ id: "call_custom_approval",
40
+ delta: JSON.stringify(input),
41
+ });
42
+ controller.enqueue({ type: "tool-input-end", id: "call_custom_approval" });
43
+ controller.enqueue({
44
+ type: "tool-call",
45
+ toolCallId: "call_custom_approval",
46
+ toolName: "custom_approval",
47
+ input: JSON.stringify(input),
48
+ });
49
+ controller.enqueue({
50
+ type: "finish",
51
+ finishReason: { unified: "tool-calls", raw: "tool-calls" },
52
+ usage: create_usage(),
53
+ });
54
+ controller.close();
55
+ },
56
+ }),
57
+ };
58
+ }
59
+
60
+ function create_final_text_stream() {
61
+ return {
62
+ stream: new ReadableStream({
63
+ start(controller) {
64
+ controller.enqueue({ type: "stream-start", warnings: [] });
65
+ controller.enqueue({ type: "text-start", id: "text_1" });
66
+ controller.enqueue({ type: "text-delta", id: "text_1", delta: "finished" });
67
+ controller.enqueue({ type: "text-end", id: "text_1" });
68
+ controller.enqueue({
69
+ type: "finish",
70
+ finishReason: { unified: "stop", raw: "stop" },
71
+ usage: create_usage(),
72
+ });
73
+ controller.close();
74
+ },
75
+ }),
76
+ };
77
+ }
78
+
79
+ async function run_approval_case(decision) {
80
+ const project_root = await fs.mkdtemp(
81
+ path.join(os.tmpdir(), "downcity-native-tool-approval-"),
82
+ );
83
+ let execution_count = 0;
84
+ let tool_stream_count = 0;
85
+ const model = new MockLanguageModelV3({
86
+ modelId: "native-tool-approval-model",
87
+ doStream: async (options) => {
88
+ if (!Array.isArray(options.tools) || options.tools.length === 0) {
89
+ return create_final_text_stream();
90
+ }
91
+ tool_stream_count += 1;
92
+ return tool_stream_count === 1
93
+ ? create_tool_call_stream()
94
+ : create_final_text_stream();
95
+ },
96
+ doGenerate: async () => ({
97
+ content: [{ type: "text", text: "Approval test" }],
98
+ finishReason: { unified: "stop", raw: "stop" },
99
+ usage: create_usage(),
100
+ warnings: [],
101
+ }),
102
+ });
103
+ const agent = new Agent({
104
+ id: `native_tool_approval_${decision}`,
105
+ workspace: new Workspace({ path: project_root }),
106
+ model,
107
+ tools: {
108
+ custom_approval: {
109
+ description: "Execute a custom operation after approval.",
110
+ inputSchema: z.object({ value: z.string() }),
111
+ needsApproval: true,
112
+ execute: async () => {
113
+ execution_count += 1;
114
+ return "tool-result";
115
+ },
116
+ },
117
+ },
118
+ });
119
+
120
+ try {
121
+ const session = await agent.sessions.create({ session_id: "tool_approval" });
122
+ let pending_request;
123
+ let response_promise;
124
+ const unsubscribe = session.subscribe((mutation) => {
125
+ if (
126
+ mutation.variant !== "part" ||
127
+ mutation.type !== "interaction" ||
128
+ mutation.part.status !== "pending" ||
129
+ mutation.part.request.kind !== "approval" ||
130
+ mutation.part.request.operation !== "tool"
131
+ ) return;
132
+ pending_request = mutation.part.request;
133
+ response_promise = session.respond({
134
+ interaction_id: mutation.part.interaction_id,
135
+ response: { kind: "approval", decision },
136
+ });
137
+ });
138
+
139
+ const turn = await session.prompt({ query: "run custom approval tool" });
140
+ const result = await turn.finished;
141
+ unsubscribe();
142
+
143
+ assert.equal(result.success, true, result.error);
144
+ assert.equal(result.text, "finished");
145
+ assert.equal(execution_count, decision === "approved" ? 1 : 0);
146
+ assert.ok(pending_request);
147
+ assert.equal(pending_request.source.tool_name, "custom_approval");
148
+ assert.deepEqual(pending_request.validated_input, {
149
+ value: "approval-value",
150
+ });
151
+ assert.equal(
152
+ pending_request.tool_description,
153
+ "Execute a custom operation after approval.",
154
+ );
155
+ assert.equal("title" in pending_request, false);
156
+ assert.equal("reason" in pending_request, false);
157
+ assert.ok(response_promise);
158
+ await response_promise;
159
+ } finally {
160
+ await agent.dispose();
161
+ await fs.rm(project_root, { recursive: true, force: true });
162
+ }
163
+ }
164
+
165
+ test("needsApproval 批准后执行 Tool 并恢复原 Turn", async () => {
166
+ await run_approval_case("approved");
167
+ });
168
+
169
+ test("needsApproval 拒绝后不执行 Tool 副作用", async () => {
170
+ await run_approval_case("denied");
171
+ });