nolo-cli 0.26.2 → 0.27.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.
Files changed (77) hide show
  1. package/{_executeModel-ZPNYAEFW.js → _executeModel-GBJY45QW.js} +18 -18
  2. package/{agentDeleteCommand-5ZV4433K.js → agentDeleteCommand-VFHDZJG3.js} +12 -12
  3. package/{agentEmailCommands-Z7KOYDVQ.js → agentEmailCommands-NV64EI7G.js} +24 -24
  4. package/{agentListCommands-UQUXJYUN.js → agentListCommands-BDDUYHLP.js} +14 -14
  5. package/{agentMachineCommands-53O6P6L5.js → agentMachineCommands-2KYBYNLE.js} +13 -13
  6. package/{agentRecordCommands-ZRYNBSSS.js → agentRecordCommands-3OX576G3.js} +23 -23
  7. package/{agentRunCommand-B73MKVOG.js → agentRunCommand-FZOGN67Y.js} +23 -23
  8. package/{agentRuntimeLocal-GVNERRKQ.js → agentRuntimeLocal-552R4CZA.js} +9 -9
  9. package/{agentSlice-OJBHIL34.js → agentSlice-7AEBCNVZ.js} +1 -1
  10. package/{appDeleteCommands-23Z3Z6KE.js → appDeleteCommands-IPJT6IYW.js} +13 -13
  11. package/{appDeployCommands-3MFAR4Z7.js → appDeployCommands-24P4CADQ.js} +13 -13
  12. package/{appDeployStatusCommands-JHU6GSN4.js → appDeployStatusCommands-3DRZOUAG.js} +13 -13
  13. package/{appGetCommands-24J55H2Y.js → appGetCommands-JEOSBLUL.js} +13 -13
  14. package/{appListCommands-HE5KP3PH.js → appListCommands-EIBM54WR.js} +13 -13
  15. package/{authCommand-KGRK6MNU.js → authCommand-MKMYHD52.js} +6 -6
  16. package/{chunk-CWTT2NZ6.js → chunk-3X4IYB22.js} +2 -2
  17. package/{chunk-JJ2WUBFN.js → chunk-4FRIAKSZ.js} +1 -1
  18. package/{chunk-S7AV3NCK.js → chunk-56CPK6JE.js} +11 -11
  19. package/{chunk-KURQBS7S.js → chunk-6MBOZ4UP.js} +1 -1
  20. package/{chunk-PTKI7TIN.js → chunk-7OYLPHDL.js} +84 -32
  21. package/{chunk-AZW5AHMW.js → chunk-7WMLPRXP.js} +1 -1
  22. package/{chunk-AOPOTHFK.js → chunk-FRN5QOKN.js} +1 -1
  23. package/{chunk-LEHTC2FI.js → chunk-GT3GG2H7.js} +2 -1
  24. package/{chunk-AAWJ5S3G.js → chunk-H7N2NOJF.js} +1 -1
  25. package/{chunk-MCXQNEJ3.js → chunk-HALKDXKP.js} +1 -1
  26. package/{chunk-GGB6MPHD.js → chunk-HQFXBRI2.js} +16 -16
  27. package/{chunk-ZFL3LTU7.js → chunk-J7PB5GXH.js} +2 -2
  28. package/{chunk-CMKUBIGW.js → chunk-JDSUTNYY.js} +2 -2
  29. package/{chunk-PY7VGC5M.js → chunk-JQ3LNEMS.js} +3 -2
  30. package/{chunk-PMCKFQYC.js → chunk-KXEWHQAW.js} +1 -1
  31. package/{chunk-G36SUBHA.js → chunk-L3QFIBZG.js} +1 -1
  32. package/{chunk-GNGOZMU2.js → chunk-N32A423D.js} +2 -2
  33. package/{chunk-TNM27YZ7.js → chunk-NCRWA6ZB.js} +3 -3
  34. package/{chunk-5DWZ46RJ.js → chunk-O5VFD7V6.js} +1 -1
  35. package/{chunk-YJY7HODU.js → chunk-PVWFM7JP.js} +1 -1
  36. package/{chunk-ADE6577S.js → chunk-Q4TAIQTA.js} +11 -11
  37. package/{chunk-GD23ZX7Z.js → chunk-QCUS52YR.js} +3 -3
  38. package/{chunk-SIUEKVK4.js → chunk-TTPVLL5F.js} +103 -25
  39. package/{chunk-5EDKWSQN.js → chunk-UADEEVDX.js} +12 -266
  40. package/{chunk-XNZJVYFS.js → chunk-UTYJ47H2.js} +1 -1
  41. package/{chunk-RM464B7I.js → chunk-V7BUGVT2.js} +2 -2
  42. package/{chunk-TWA4L7J7.js → chunk-VV4TYWNV.js} +1 -1
  43. package/{chunk-TLYHUIWF.js → chunk-W2IOPRHX.js} +3 -3
  44. package/{chunk-CV6BM7LU.js → chunk-X43U4JUJ.js} +1 -1
  45. package/{chunk-PXPISYEH.js → chunk-XS7UPVR7.js} +2 -2
  46. package/{chunk-CZHE6LLV.js → chunk-YTA2QOEE.js} +20 -0
  47. package/{chunk-P3RZ6DHN.js → chunk-YZV4676I.js} +24 -15
  48. package/{chunk-LLDGWLML.js → chunk-Z3ORPMOA.js} +8 -8
  49. package/chunk-ZJ7WLPDP.js +553 -0
  50. package/{chunk-J2WT5CEO.js → chunk-ZNFZGHKL.js} +1 -1
  51. package/{cliExecutor-K3F7DMRO.js → cliExecutor-BBUVQU4L.js} +1 -1
  52. package/{createAgentAutomationAction-PO62NUR7.js → createAgentAutomationAction-YB65NAU5.js} +6 -6
  53. package/{createDialogAction-ORFRYI3C.js → createDialogAction-6USRBKKL.js} +7 -7
  54. package/{createPageAction-XWVMNTYH.js → createPageAction-ZGE3SG6J.js} +6 -6
  55. package/{dialogCommands-XTJHROXM.js → dialogCommands-O4CJJRTQ.js} +13 -13
  56. package/{dialogSlice-DJXC53YW.js → dialogSlice-HMRBZCSE.js} +6 -6
  57. package/{docCreateCommands-T2XRVXYS.js → docCreateCommands-2U5AIF3O.js} +12 -12
  58. package/{docDeleteCommands-L7RXFXY3.js → docDeleteCommands-EDCAUQEF.js} +13 -13
  59. package/{docReadCommands-M5PYNADQ.js → docReadCommands-KFMBFGPY.js} +12 -12
  60. package/{docStore-6LKLLFDW.js → docStore-ZGGDZFCC.js} +7 -7
  61. package/{docUpdateCommands-OA5EGPLQ.js → docUpdateCommands-57M4XOT7.js} +12 -12
  62. package/{getPricing-6C3C47Y4.js → getPricing-X6I23RN6.js} +3 -3
  63. package/{handleSendMessageAction-ILFGZTN5.js → handleSendMessageAction-ANCZXLQY.js} +6 -6
  64. package/index.js +47 -47
  65. package/{machineCommands-AKAQGPAO.js → machineCommands-6EG5U6TU.js} +23 -23
  66. package/{machineWsRunDispatch-RSBERM64.js → machineWsRunDispatch-SFIKRI4G.js} +22 -22
  67. package/{models-ILWKIX2Y.js → models-YT32CTT5.js} +2 -2
  68. package/package.json +1 -1
  69. package/{readlineWorkspace-TUH3SFHO.js → readlineWorkspace-TVIHBRN2.js} +30 -27
  70. package/{runAgentClientLoop-C3QB2EXV.js → runAgentClientLoop-SJ6QQ3ZS.js} +15 -15
  71. package/{spaceCommands-SXYOFGUJ.js → spaceCommands-XK46FRYG.js} +12 -12
  72. package/{spaceSlice-6BHMRP5O.js → spaceSlice-FNFNVXPQ.js} +6 -6
  73. package/{streamAgentChatTurn-GF5W5OIP.js → streamAgentChatTurn-HHIWP44U.js} +18 -18
  74. package/{tools-KBCLJ43G.js → tools-CT7AFBI3.js} +10 -10
  75. package/{tuiSummaryLlmCaller-ARIMGILF.js → tuiSummaryLlmCaller-GCUPULOV.js} +4 -4
  76. package/{updateDialogTitleAction-LMHZUY4Q.js → updateDialogTitleAction-7RFN5GA4.js} +6 -6
  77. package/chunk-ZUXIXYJI.js +0 -297
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  ANTIGRAVITY_CLOUD_CODE_BASE_URL,
3
3
  isAntigravityOAuthAgent
4
- } from "./chunk-XNZJVYFS.js";
4
+ } from "./chunk-UTYJ47H2.js";
5
5
  import {
6
6
  clipMultilineText,
7
7
  fetchAndSerializeTable,
8
8
  resolveBuiltinSkillPage,
9
9
  waitForAbortableDelay
10
- } from "./chunk-GGB6MPHD.js";
10
+ } from "./chunk-HQFXBRI2.js";
11
11
  import {
12
12
  createDrainExhaustedResponse,
13
13
  isCoreDrainingBody,
@@ -23,10 +23,10 @@ import {
23
23
  } from "./chunk-VP4WJWKW.js";
24
24
  import {
25
25
  fetchAndCacheMessages
26
- } from "./chunk-ADE6577S.js";
26
+ } from "./chunk-Q4TAIQTA.js";
27
27
  import {
28
28
  fetchServerSyncedCredential
29
- } from "./chunk-GD23ZX7Z.js";
29
+ } from "./chunk-QCUS52YR.js";
30
30
  import {
31
31
  shouldUseServerProxy
32
32
  } from "./chunk-YYLHWIW6.js";
@@ -36,13 +36,13 @@ import {
36
36
  resolveSkillGraphFromRoots
37
37
  } from "./chunk-7H3UTGPM.js";
38
38
  import {
39
- MENU_USAGE_INSTRUCTIONS,
40
39
  buildCurrentTimeBlock,
41
40
  buildIdentityBlock,
42
41
  buildRuntimeGuidanceBlocks,
43
42
  requiresBareImageUrl,
43
+ resolveToolGuidedSections,
44
44
  toBareImageUrlMessages
45
- } from "./chunk-ZUXIXYJI.js";
45
+ } from "./chunk-ZJ7WLPDP.js";
46
46
  import {
47
47
  convertMessagesToResponsesInput,
48
48
  preserveAgentStateFields
@@ -52,10 +52,10 @@ import {
52
52
  isOpenAiResponsesModel,
53
53
  resolvePlatformChatCompletionsEndpoint,
54
54
  resolvePlatformResponsesEndpoint
55
- } from "./chunk-PXPISYEH.js";
55
+ } from "./chunk-XS7UPVR7.js";
56
56
  import {
57
57
  estimateTokenCount
58
- } from "./chunk-PY7VGC5M.js";
58
+ } from "./chunk-JQ3LNEMS.js";
59
59
  import {
60
60
  createFileCredentialBroker
61
61
  } from "./chunk-5CS33IBL.js";
@@ -63,7 +63,7 @@ import {
63
63
  clampReasoningEffort,
64
64
  getModelConfig,
65
65
  isModelSupportReasoningEffort
66
- } from "./chunk-LEHTC2FI.js";
66
+ } from "./chunk-GT3GG2H7.js";
67
67
  import {
68
68
  MEMORY_USE_GUIDANCE,
69
69
  wrapHistoricalSummaryWithReplayGuard
@@ -78,7 +78,7 @@ import {
78
78
  isDeepInfraKimiModel,
79
79
  isFireworksKimiModel,
80
80
  resolveFireworksKimiModel
81
- } from "./chunk-CZHE6LLV.js";
81
+ } from "./chunk-YTA2QOEE.js";
82
82
  import {
83
83
  createSpaceKey
84
84
  } from "./chunk-OXLLFZNF.js";
@@ -523,66 +523,6 @@ var mapLanguage = (responseLanguage) => {
523
523
  return languageMap[responseLanguage] || responseLanguage;
524
524
  };
525
525
 
526
- // packages/ai/agent/pageBuilderHandoffRules.ts
527
- var PAGE_BUILDER_AGENT_PUBLIC_KEY = "agent-pub-01PAGEBUILDR00000000FT7R9G";
528
- var PAGE_BUILDER_SCENARIOS = [
529
- {
530
- id: "information-display",
531
- label: "\u4FE1\u606F\u5C55\u793A",
532
- userIntent: "\u4E3B\u9875\u3001\u4EA7\u54C1\u4ECB\u7ECD\u3001\u670D\u52A1\u4ECB\u7ECD\u3001\u4F5C\u54C1\u96C6\u3001\u6D3B\u52A8\u9875\u3001\u62A5\u4EF7\u9875",
533
- prompt: "\u5E2E\u6211\u505A\u4E00\u4E2A\u72EC\u7ACB AI \u4EA7\u54C1\u987E\u95EE\u7684\u4E2A\u4EBA\u4E3B\u9875\u3002\u8981\u770B\u8D77\u6765\u4E13\u4E1A\uFF0C\u5305\u542B\u4E2A\u4EBA\u5B9A\u4F4D\u3001\u80FD\u63D0\u4F9B\u7684\u670D\u52A1\u5361\u7247\u3001\u4EE3\u8868\u6210\u679C\u5361\u7247\u3001\u53EF\u4FE1\u80CC\u4E66\u548C\u8054\u7CFB\u5408\u4F5C\u6309\u94AE\u3002"
534
- },
535
- {
536
- id: "data-analysis",
537
- label: "\u6570\u636E\u5206\u6790",
538
- userIntent: "\u65E5\u62A5\u3001\u5468\u62A5\u3001\u7ECF\u8425\u770B\u677F\u3001\u8D28\u68C0\u62A5\u544A\u3001\u9500\u552E\u6F0F\u6597\u3001\u53CD\u9988\u5206\u6790",
539
- prompt: "\u5E2E\u6211\u505A\u4E00\u4E2A AI \u5BA2\u670D\u8D28\u68C0\u65E5\u62A5\uFF0C\u5305\u542B\u6838\u5FC3\u6307\u6807\u3001\u8FD1 7 \u5929\u98CE\u9669\u8D8B\u52BF\u3001\u5F02\u5E38\u4F1A\u8BDD\u660E\u7EC6\u8868\uFF0C\u4EE5\u53CA\u660E\u5929\u9700\u8981\u8DDF\u8FDB\u7684\u5EFA\u8BAE\u3002"
540
- },
541
- {
542
- id: "process-guide",
543
- label: "\u6D41\u7A0B\u8BF4\u660E",
544
- userIntent: "\u6559\u7A0B\u3001SOP\u3001onboarding\u3001\u64CD\u4F5C\u6307\u5357\u3001\u8BFE\u7A0B\u6B65\u9AA4\u3001\u7533\u8BF7\u6D41\u7A0B",
545
- prompt: "\u5E2E\u6211\u505A\u4E00\u4E2A\u65B0\u5458\u5DE5\u4F7F\u7528 CRM \u7684\u4EA4\u4E92\u6559\u7A0B\u9875\u9762\uFF0C\u5305\u542B\u5B66\u4E60\u76EE\u6807\u3001\u64CD\u4F5C\u6B65\u9AA4\u3001\u793A\u4F8B\u7EC3\u4E60\u3001\u68C0\u67E5\u6E05\u5355\u548C\u4E0B\u4E00\u6B65\u6309\u94AE\u3002"
546
- },
547
- {
548
- id: "decision-comparison",
549
- label: "\u51B3\u7B56\u6BD4\u8F83",
550
- userIntent: "\u65B9\u6848\u5BF9\u6BD4\u3001\u4EA7\u54C1\u9009\u578B\u3001\u5019\u9009\u4EBA\u5BF9\u6BD4\u3001\u7ADE\u54C1\u5206\u6790\u3001\u91C7\u8D2D\u5EFA\u8BAE",
551
- prompt: "\u5E2E\u6211\u505A\u4E00\u4E2A\u4E09\u6B3E CRM \u65B9\u6848\u5BF9\u6BD4\u9875\uFF0C\u5305\u542B\u5BF9\u6BD4\u7EF4\u5EA6\u8868\u683C\u3001\u6BCF\u4E2A\u65B9\u6848\u7684\u4F18\u7F3A\u70B9\u5361\u7247\u3001\u8BC4\u5206\u3001\u9002\u5408\u56E2\u961F\u7C7B\u578B\u548C\u6700\u7EC8\u63A8\u8350\u3002"
552
- },
553
- {
554
- id: "plan-roadmap",
555
- label: "\u8BA1\u5212\u6392\u5E03",
556
- userIntent: "\u9879\u76EE\u8BA1\u5212\u3001\u5B66\u4E60\u8BA1\u5212\u3001\u5065\u8EAB\u8BA1\u5212\u3001\u5185\u5BB9\u65E5\u5386\u3001\u53D1\u5E03\u8282\u594F",
557
- prompt: "\u5E2E\u6211\u505A\u4E00\u4E2A 30 \u5929\u5185\u5BB9\u53D1\u5E03\u8BA1\u5212\u9875\u9762\uFF0C\u5305\u542B\u9636\u6BB5\u76EE\u6807\u3001\u6BCF\u5468\u4EFB\u52A1\u3001\u4F18\u5148\u7EA7\u3001\u91CC\u7A0B\u7891\u5361\u7247\u548C\u98CE\u9669\u63D0\u9192\u3002"
558
- },
559
- {
560
- id: "mixed-pitch",
561
- label: "\u6DF7\u5408\u957F\u5C3E",
562
- userIntent: "\u6C47\u62A5\u9875\u3001\u878D\u8D44\u6750\u6599\u3001\u590D\u6742\u9879\u76EE\u6982\u89C8\uFF0C\u6DF7\u5408\u5C55\u793A\u3001\u6570\u636E\u3001\u8BA1\u5212\u3001\u5BF9\u6BD4",
563
- prompt: "\u7ED9\u4E00\u4E2A\u65E9\u671F AI \u5BA2\u670D\u521B\u4E1A\u9879\u76EE\u505A\u4E00\u9875\u878D\u8D44\u6C47\u62A5\u9875\uFF0C\u5305\u542B\u5E02\u573A\u673A\u4F1A\u3001\u5173\u952E\u6570\u636E\u6307\u6807\u5361\u3001\u589E\u957F\u8D8B\u52BF\u56FE\u3001\u4EA7\u54C1\u8DEF\u7EBF\u3001\u7ADE\u54C1\u5BF9\u6BD4\u8868\u3001\u56E2\u961F\u4ECB\u7ECD\u548C\u4E0B\u4E00\u6B65\u8BA1\u5212\u3002"
564
- }
565
- ];
566
- var scenarioLines = PAGE_BUILDER_SCENARIOS.map(
567
- (scenario) => `- ${scenario.label}\uFF1A${scenario.userIntent}`
568
- ).join("\n");
569
- var PAGE_BUILDER_HANDOFF_INSTRUCTIONS = `--- \u9875\u9762\u751F\u6210\u52A9\u624B handoff ---
570
- \u5F53\u7528\u6237\u9700\u8981\u628A\u5185\u5BB9\u53D8\u6210\u201C\u53EF\u770B\u7684\u9875\u9762/\u62A5\u544A/\u770B\u677F/\u6559\u7A0B/\u5BF9\u6BD4\u9875/\u8BA1\u5212\u9875\u201D\u65F6\uFF0C\u53EF\u4EE5\u628A\u672C\u8F6E\u4EA4\u7ED9\u9875\u9762\u751F\u6210\u52A9\u624B\u3002
571
-
572
- \u76EE\u6807 Agent:
573
- - agentKey: ${PAGE_BUILDER_AGENT_PUBLIC_KEY}
574
- - \u63A8\u8350\u5DE5\u5177: runStreamingAgent
575
-
576
- \u9002\u5408 handoff \u7684\u89C6\u89C9\u610F\u56FE\u5927\u7C7B\uFF1A
577
- ${scenarioLines}
578
-
579
- \u8C03\u7528\u8FB9\u754C\uFF1A
580
- - \u7528\u6237\u660E\u786E\u8981\u6C42\u201C\u505A\u6210\u9875\u9762 / \u770B\u677F / \u62A5\u544A / \u6559\u7A0B / \u4E3B\u9875 / \u5BF9\u6BD4\u9875 / \u8BA1\u5212\u8868 / \u53EF\u89C6\u5316\u201D\u65F6\uFF0C\u53EF\u4EE5\u76F4\u63A5 runStreamingAgent\u3002
581
- - \u5982\u679C\u7528\u6237\u53EA\u662F\u8BA8\u8BBA\u5185\u5BB9\uFF0C\u4F46\u4F60\u5224\u65AD\u201C\u6587\u5B57\u56DE\u7B54\u4E0D\u5982\u53EF\u89C6\u5316\u9875\u9762\u201D\uFF0C\u5148\u8BE2\u95EE\u7528\u6237\uFF1A\u201C\u8FD9\u4E2A\u66F4\u9002\u5408\u505A\u6210\u4E00\u9875\u53EF\u89C6\u5316\u9875\u9762\uFF0C\u8981\u6211\u751F\u6210\u4E00\u4E2A\u53EF\u4EA4\u4E92\u7248\u672C\u5417\uFF1F\u201D
582
- - \u4E0D\u8981\u628A\u666E\u901A\u95EE\u7B54\u3001\u95F2\u804A\u3001\u4EE3\u7801\u89E3\u91CA\u3001\u7EAF\u6587\u672C\u603B\u7ED3\u5F3A\u884C\u4EA4\u7ED9\u9875\u9762\u751F\u6210\u52A9\u624B\u3002
583
- - handoff \u65F6\uFF0C\u628A\u7528\u6237\u539F\u59CB\u9700\u6C42\u548C\u4F60\u5DF2\u786E\u8BA4\u7684\u4E1A\u52A1\u4E0A\u4E0B\u6587\u4E00\u8D77\u653E\u8FDB userInput\uFF0C\u4E0D\u8981\u8981\u6C42\u7528\u6237\u7406\u89E3 React\u3001HTML\u3001\u4EE3\u7801\u5757\u6216\u8FD0\u884C\u65F6\u3002
584
- - \u9875\u9762\u751F\u6210\u52A9\u624B\u53EA\u8D1F\u8D23\u751F\u6210\u548C\u4FEE\u6539\u53EF\u4EA4\u4E92\u9875\u9762\uFF1B\u4F60\u4ECD\u8D1F\u8D23\u5224\u65AD\u3001\u89E3\u91CA\u3001\u6F84\u6E05\u548C\u540E\u7EED\u534F\u8C03\u3002`;
585
-
586
526
  // packages/ai/agent/contextCompiler.ts
587
527
  function createHash(_algo) {
588
528
  let buf = "";
@@ -642,6 +582,8 @@ var compileContextLayers = (layers) => {
642
582
  };
643
583
 
644
584
  // packages/ai/agent/buildSystemPrompt.ts
585
+ var CLARIFICATION_MODE_INSTRUCTIONS = `\u5728\u4F60\u8FD8\u4E0D\u4E86\u89E3\u7528\u6237\u610F\u56FE\u65F6\uFF0C\u901A\u8FC7\u63D0\u95EE\u6765\u6F84\u6E05\u9700\u6C42\uFF0C\u800C\u4E0D\u662F\u4ED3\u4FC3\u7ED9\u51FA\u7B54\u6848\u3002`;
586
+ var isBrowser = typeof window !== "undefined";
645
587
  var CONTEXT_USAGE_INSTRUCTIONS = `\u53C2\u8003\u8D44\u6599\u4F7F\u7528\u8BF4\u660E\uFF1A
646
588
  - \u4E0B\u65B9\u63D0\u4F9B\u7684\u8D44\u6599\u662F\u4F60\u7684\u4E3B\u8981\u6743\u5A01\u4FE1\u606F\u6765\u6E90\u3002
647
589
  - \u56DE\u7B54\u95EE\u9898\u65F6\uFF0C\u5E94\u4F18\u5148\u4F9D\u8D56\u8FD9\u4E9B\u8D44\u6599\u3002\u5B83\u4EEC\u6309\u4F18\u5148\u7EA7\u4ECE\u9AD8\u5230\u4F4E\u6392\u5217\u3002
@@ -649,202 +591,6 @@ var CONTEXT_USAGE_INSTRUCTIONS = `\u53C2\u8003\u8D44\u6599\u4F7F\u7528\u8BF4\u66
649
591
  - \u5982\u679C\u8D44\u6599\u4E2D\u6CA1\u6709\u5305\u542B\u7B54\u6848\uFF0C\u5E94\u8BF4\u660E\u8FD9\u4E00\u70B9\uFF0C\u7136\u540E\u518D\u4F7F\u7528\u4F60\u7684\u901A\u7528\u77E5\u8BC6\u8FDB\u884C\u56DE\u7B54\u3002
650
592
  - \u5982\u679C\u4F60\u5728\u8D44\u6599\u4E2D\u53D1\u73B0\u76F8\u4E92\u77DB\u76FE\u7684\u4FE1\u606F\uFF0C\u4E5F\u8981\u5728\u56DE\u7B54\u4E2D\u6307\u51FA\u8FD9\u4E00\u70B9\u3002
651
593
  - \u5F53\u901A\u7528\u6307\u4EE4\u4E0E\u66F4\u5177\u4F53\u7684"\u6309 Agent / \u6309\u6587\u6863"\u7684\u89C4\u5219\u53D1\u751F\u51B2\u7A81\u65F6\uFF0C\u5FC5\u987B\u4F18\u5148\u9075\u5B88\u66F4\u5177\u4F53\u3001\u4F18\u5148\u7EA7\u66F4\u9AD8\u7684\u89C4\u5219\u3002`;
652
- var AGENT_ORCHESTRATION_RUN_INSTRUCTIONS = `--- \u591A Agent \u7F16\u6392\uFF08\u540E\u53F0 Run\uFF09 ---
653
- \u4F60\u53EF\u7528 startAgentRun \u540E\u53F0\u542F\u52A8\u5B50 Agent\uFF08fork+exec\uFF0C\u8FD4\u56DE runId\uFF09\uFF0C\u7528 controlAgentRun \u89C2\u5BDF/\u505C\u6B62\uFF08wait+signal+proc\uFF09\u3002\u6838\u5FC3\u7EAA\u5F8B\uFF08\u53CD\u9762\u6559\u6750\uFF1A\u5B50\u4EE3\u7406\u5D29\u6E83/\u6302\u8D77\u800C\u7F16\u6392\u5668\u6BEB\u65E0\u5BDF\u89C9\uFF09\uFF1A
654
- 1. \u5148\u53D1\u73B0\u518D\u6D3E\u53D1\u3002\u8C03\u7528 listAgents\u3002**\u8FD4\u56DE\u7684 agents \u6570\u7EC4\u91CC\u6BCF\u4E2A\u6761\u76EE\u76F4\u63A5\u7ED9\u51FA\u53EF\u6D3E\u53D1\u7684 agentKey\u3001\u4EF7\u683C\u3001tools\u3001\u4EE5\u53CA isOwned/isFavorite \u6807\u8BB0\u2014\u2014\u9009\u4EBA\u552F\u4E00\u4F9D\u636E\u5C31\u662F\u8FD9\u6761\u8BB0\u5F55\uFF0C\u76F4\u63A5\u4ECE agentKey \u5B57\u6BB5\u53D6\u503C\uFF0C\u4E0D\u8981\u624B\u5DE5\u62FC\u63A5\u6216\u63A8\u65AD\u3002** \u9009\u4EBA\u4F18\u5148\u7EA7\uFF1A\u7279\u5B9A\u989D\u5916\u80FD\u529B\u9700\u6C42\uFF08\u770B tools \u5B57\u6BB5\u662F\u5426\u8986\u76D6\u6D4F\u89C8\u5668/\u56FE\u7247/\u8868\u683C/\u90AE\u4EF6/\u6570\u636E\u5E93\u7B49\u989D\u5916\u80FD\u529B\uFF09\u2192 \u81EA\u5EFA agent \u4F18\u5148\uFF08isOwned=true\uFF0C\u8D70\u7528\u6237\u81EA\u5DF1\u914D\u989D\u4E0D\u82B1\u5E73\u53F0 credits\uFF09\u2192 \u6210\u672C/\u80FD\u529B\u5339\u914D\uFF08\u770B inputPrice\uFF09\u2192 \u80DC\u4EFB\u8005\u4E2D isFavorite \u2192 modelAbility\u3002\u6CE8\u610F\uFF1Acoding \u5DE5\u5177\uFF08writeFile/editFile/execBash/applyEdit/gitCommit \u7B49\uFF09\u662F\u684C\u9762\u7AEF/CLI \u8FD0\u884C\u65F6\u9ED8\u8BA4\u57FA\u7EBF\uFF0Chost \u5728 coding \u73AF\u5883\u6D3E\u53D1\u65F6\u81EA\u52A8\u6CE8\u5165\uFF0Ctools \u5B57\u6BB5\u4E0D\u53CD\u6620\u8FD9\u4E9B\u5DE5\u5177\uFF0C\u56E0\u6B64\u4E0D\u6784\u6210\u9009\u4EBA\u5DEE\u5F02\u2014\u2014\u4E0D\u8981\u56E0\u4E3A tools=[] \u5C31\u6392\u9664\u67D0 agent\u3002
655
- - \u6D3E\u53D1\u65F6**\u539F\u6837\u590D\u5236\u8BE5\u6761\u8BB0\u5F55\u7684 agentKey** \u4F20\u7ED9 startAgentRun\uFF0C\u4E0D\u62FC\u63A5\u3001\u4E0D\u63A8\u65AD\u3001\u4E0D\u6362\u683C\u5F0F\u3002
656
- - \u6D3E\u53D1\u524D\u5148\u7531\u4F60\u81EA\u5DF1\u7406\u89E3\u548C\u7814\u7A76\u4EFB\u52A1\uFF1A\u5148\u5224\u65AD\u76EE\u6807\u3001\u5DF2\u77E5\u4E8B\u5B9E\u3001\u672A\u77E5\u9879\u3001\u590D\u6742\u5EA6\u548C\u6700\u6709\u4EF7\u503C\u7684\u4E0B\u4E00\u6B65\u3002\u7B80\u5355\u3001\u660E\u786E\u3001\u5355\u4E00\u95ED\u73AF\u7684\u4EFB\u52A1\u81EA\u5DF1\u5B8C\u6210\uFF0C\u4E0D\u8981\u4E3A\u4E86\u4F7F\u7528\u591A Agent \u800C\u6D3E\u53D1\u3002
657
- - \u590D\u6742\u4EFB\u52A1\u624D\u8FDB\u5165\u62C6\u89E3\uFF1A\u53EA\u6709\u5F53\u6D3E\u53D1\u80FD\u5E26\u6765\u4F60\u65E0\u6CD5\u76F4\u63A5\u83B7\u5F97\u7684\u989D\u5916\u4EA7\u51FA\uFF08\u72EC\u7ACB\u4E13\u4E1A\u80FD\u529B\u3001\u771F\u6B63\u5E76\u884C\u7684\u65B9\u5411\u3001\u72EC\u7ACB\u9A8C\u8BC1\uFF0C\u6216\u957F\u65F6\u95F4\u540E\u53F0\u6267\u884C\uFF09\u65F6\u624D\u6D3E\u53D1\uFF1B\u53EF\u62C6\u5206\u4E0D\u7B49\u4E8E\u5FC5\u987B\u62C6\u5206\u3002\u6D3E\u53D1\u524D\u5FC5\u987B\u5199\u6E05\u5B50\u4EFB\u52A1\u76EE\u6807\u3001\u8FB9\u754C\u3001\u4EA4\u4ED8\u8BC1\u636E\uFF0C\u4EE5\u53CA\u7ED3\u679C\u5C06\u5982\u4F55\u6539\u53D8\u4F60\u7684\u4E0B\u4E00\u6B65\u3002
658
- - \u6309\u4E09\u6863\u5224\u65AD\uFF1A\u7B80\u5355\uFF08\u76EE\u6807\u660E\u786E\u3001\u5355\u4E00\u9886\u57DF\u3001\u22642 \u6B65\u6216\u5355\u6587\u4EF6\u673A\u68B0\u6539\u52A8\uFF09\u2192\u81EA\u5DF1\u5B8C\u6210\uFF1B\u4E2D\u7B49\uFF08\u591A\u6587\u4EF6\u8BFB\u6539\u9A8C\u3001\u4E00\u4E2A\u660E\u786E\u5B9E\u73B0/\u7814\u7A76\u65B9\u5411\uFF09\u2192\u5148\u81EA\u5DF1\u5206\u6790\uFF0C\u518D\u6309\u9700\u8981\u6D3E\u4E00\u4E2A\u6267\u884C\u6216 review \u5B50\u4EFB\u52A1\uFF1B\u590D\u6742\uFF08\u8DE8\u6A21\u5757/\u8DE8\u9886\u57DF\u3001\u591A\u4E2A\u72EC\u7ACB\u65B9\u5411\u3001\u9AD8\u98CE\u9669\u63A8\u7406\u3001\u9700\u8981\u957F\u65F6\u95F4\u540E\u53F0\u6267\u884C\u6216\u72EC\u7ACB\u9A8C\u8BC1\uFF09\u2192\u5148\u5B8C\u6210\u95EE\u9898\u5206\u6790\uFF0C\u518D\u62C6\u89E3\uFF0C\u6309\u4F9D\u8D56\u5173\u7CFB\u51B3\u5B9A\u4E32\u884C\u6216\u5E76\u884C\u3002\u82E5\u4EFB\u52A1\u4E0D\u6EE1\u8DB3\u4E2D\u7B49\u6216\u590D\u6742\u7684\u989D\u5916\u4EA7\u51FA\u6761\u4EF6\uFF0C\u56DE\u5230\u81EA\u5DF1\u5B8C\u6210\u3002\u9ED8\u8BA4\u4E0D\u6D3E\u53D1\u3001\u4E0D\u5E76\u53D1\u3002
659
- - **\u4E0A\u4E0B\u6587\u6700\u5C0F\u5316**\uFF1A\u9ED8\u8BA4\u53EA\u4FDD\u7559\u5B8C\u6210\u5F53\u524D\u52A8\u4F5C\u6240\u9700\u7684\u6700\u5C0F\u5DE5\u5177\u548C\u5DE5\u4F5C\u96C6\uFF1B\u4E0D\u8981\u4E3A\u4E86\u201C\u4FDD\u9669\u201D\u628A\u65E0\u5173\u5DE5\u5177\u3001\u65E7\u65E5\u5FD7\u3001\u91CD\u590D\u6587\u4EF6\u5185\u5BB9\u6216\u6574\u6BB5\u5386\u53F2\u8F6C\u53D1\u7ED9\u81EA\u5DF1\u6216\u5B50 Agent\u3002\u9700\u8981\u6D3E\u53D1\u65F6\uFF0C\u4F20\u9012\u81EA\u5305\u542B\u7684\u76EE\u6807\u3001\u5DF2\u786E\u8BA4\u4E8B\u5B9E\u3001\u7EA6\u675F\u3001\u76F8\u5173\u6587\u4EF6/\u8BC1\u636E\u3001\u9A8C\u6536\u6807\u51C6\u548C\u7981\u533A\uFF1B\u4E0D\u8981\u8F6C\u53D1\u65E0\u5173\u5386\u53F2\u3002\u8BFB\u53D6\u5DE5\u5177\u7ED3\u679C\u540E\u63D0\u70BC\u5173\u952E\u4E8B\u5B9E\uFF0C\u540E\u7EED\u4F18\u5148\u4F7F\u7528\u63D0\u70BC\u540E\u7684\u5DE5\u4F5C\u96C6\uFF0C\u5FC5\u8981\u65F6\u518D\u5B9A\u5411\u8BFB\u53D6\u539F\u6587\u3002
660
- - \u81EA\u52A8\u59D4\u6258\u7684\u9AD8\u7AEF\u6A21\u578B\u786C\u95E8\uFF1AOpus 5\u3001GPT-5.6 Sol \u53CA\u540C\u7EA7\u9876\u6863\u4EC5\u7528\u4E8E\u590D\u6742\u67B6\u6784/\u8DE8\u57DF\u8BBE\u8BA1\u3001\u91CD\u5927\u4E8B\u6545\u6216\u5B89\u5168/\u6570\u636E\u5B8C\u6574\u6027\u9AD8\u98CE\u9669\u5206\u6790\u3001\u6DF1 review\uFF08\u89C1\u4E0B\u91CF\u5316\u95E8\u69DB\uFF09\u3001\u6216\u4F4E\u4EF7\u80DC\u4EFB\u6A21\u578B\u5DF2\u6709\u5931\u8D25\u8BC1\u636E\u540E\u5347\u7EA7\u3002\u5FAE\u5C0F\u3001\u7B80\u5355\u548C\u666E\u901A\u4E2D\u7B49\u4EFB\u52A1\u7981\u6B62\u81EA\u52A8\u9009\u62E9\uFF1B\u7528\u6237\u660E\u786E\u70B9\u540D\u4F7F\u7528\u4E0D\u53D7\u6B64\u81EA\u52A8\u59D4\u6258\u9650\u5236\u3002
661
- - \u6DF1 review \u91CF\u5316\u95E8\u69DB\uFF08\u8FBE\u5230\u624D\u5141\u8BB8\u9876\u6863\uFF09\uFF1A\u6539\u52A8\u6587\u4EF6\u6570 \u2265 30 \u4E14\u6D89\u53CA\u8BA1\u8D39/\u5B89\u5168/\u6570\u636E\u5B8C\u6574\u6027/\u6838\u5FC3\u8DEF\u7531\u5173\u952E\u8DEF\u5F84\uFF1B\u6216\u4F4E\u4EF7 reviewer \u5DF2\u7ED9\u51FA BLOCK/\u901A\u9053\u5931\u8D25\u540E\u7684\u5347\u7EA7\u3002\u666E\u901A review \u9ED8\u8BA4\u6D3E\u4E2D\u6863\u4F4E\u4EF7\u6A21\u578B\uFF0C**\u5E73\u53F0 DeepSeek V4 Flash \u662F\u9ED8\u8BA4\u4F18\u5148\u7684 reviewer \u5019\u9009\u4E4B\u4E00**\uFF08\u5E73\u53F0\u516C\u5F00 agent\u3001\u7A33\u5B9A\u53EF\u7528\u3001\u4F4E\u6210\u672C\u3001\u4E14\u4E0E\u7F16\u6392\u8005/\u9876\u6863\u5206\u5C5E\u4E0D\u540C\u6A21\u578B\u5BB6\u65CF\uFF0C\u5929\u7136\u6EE1\u8DB3"reviewer \u4E0D\u53EF\u662F\u81EA\u5DF1 + \u4E0D\u540C\u5BB6\u65CF\u4F18\u5148"\uFF09\uFF0C\u5176\u6B21\u662F agy-flash\u3001GLM \u7B49\u4E2D\u6863\u4F4E\u4EF7\u5019\u9009\uFF1B\u53EA\u6709\u4E0A\u8FF0\u4F4E\u4EF7\u901A\u9053\u90FD\u4E0D\u53EF\u7528/\u5DF2\u7ED9\u51FA\u5931\u8D25\u8BC1\u636E\u624D\u6D3E\u9876\u6863\u3002
662
- - \u9009\u62E9\u9876\u6863\u524D\u5FC5\u987B\u5728\u56DE\u590D\u4E2D\u7B80\u8FF0\u590D\u6742\u6027\u7406\u7531\uFF08\u5F15\u7528\u91CF\u5316\u95E8\u69DB\uFF09\uFF1B\u5931\u8D25\u5347\u7EA7\u5FC5\u987B\u6307\u51FA\u4F4E\u4EF7\u5019\u9009\u7684\u5177\u4F53\u5931\u8D25\u8BC1\u636E\u3002\u7981\u6B62\u51ED\u540D\u5B57\u7F16\u9020\u7EC6\u80FD\u529B\uFF1B\u4EF7\u683C\u3001modelAbility \u53CA\u660E\u663E\u9876\u6863\u65CF\u7CFB\u4ECE\u5361\u7247\u53D6\u5373\u53EF\uFF0C\u4E0D\u51ED\u7A7A\u731C\u3002
663
- - \u901A\u9053\u9884\u68C0\uFF1A\u6D3E\u53D1\u524D\u8DF3\u8FC7\u5DF2\u77E5\u574F\u901A\u9053\uFF08\u914D\u7F6E\u7F3A\u5931/\u533A\u57DF\u9650\u5236/\u7F51\u5173 400 \u7684 provider\uFF09\uFF0C\u907F\u514D\u5728\u5FC5\u7136\u5931\u8D25\u7684\u901A\u9053\u4E0A\u767D\u8017\u56DE\u5408\u3002
664
- - \u7701\u94B1\u4F18\u5148\uFF1A\u540C\u7B49\u80DC\u4EFB\u4E0B\u4F18\u5148\u6D3E\u53D1**\u81EA\u5EFA agent**\uFF08isOwned=true\uFF0C\u81EA\u5DF1\u521B\u5EFA\u3001\u7528\u81EA\u5DF1\u7684 API key \u6216\u81EA\u5DF1\u7684 OAuth \u51ED\u8BC1\uFF09\u2014\u2014\u8FD9\u7C7B\u6D3E\u53D1\u8D70\u7528\u6237\u81EA\u5DF1\u7684\u914D\u989D\uFF0C\u4E0D\u6D88\u8017\u5E73\u53F0 credits\uFF1B\u5176\u6B21\u662F apiSource="custom" \u7684 agent\u3002\u4EC5\u5F53\u81EA\u5EFA/custom \u65E0\u80DC\u4EFB\u5019\u9009\u65F6\u624D\u6D3E\u53D1 apiSource="platform" \u7684 agent\u3002\u4ECE agents \u8BB0\u5F55\u7684 isOwned / apiSource / isFavorite \u5B57\u6BB5\u76F4\u63A5\u5224\u65AD\uFF0C\u4E0D\u8981\u731C\u3002
665
- 2. **coding \u662F\u9ED8\u8BA4\u80FD\u529B\u2014\u2014\u684C\u9762\u7AEF\u548C CLI \u8FD0\u884C\u65F6\u9ED8\u8BA4\u62E5\u6709\u5168\u90E8\u4EE3\u7801\u5DE5\u5177\uFF08writeFile\u3001editFile\u3001execBash\u3001applyEdit\u3001gitCommit \u7B49\uFF09\uFF0C"tools" \u5B57\u6BB5\u53EA\u53CD\u6620\u989D\u5916\u80FD\u529B\uFF08\u6D4F\u89C8\u5668\u3001\u56FE\u7247\u3001\u8868\u683C\u3001\u90AE\u4EF6\u3001\u6570\u636E\u5E93\u7B49\uFF09**\u3002\u4E0D\u8981\u56E0\u4E3A coding agent \u7684 tools \u6458\u8981\u4E3A\u7A7A\u5C31\u5224\u5B9A\u5B83\u4E0D\u80FD\u5199\u4EE3\u7801\uFF1B\u4E5F\u4E0D\u8981\u56E0\u4E3A\u67D0\u4E2A agent \u6709 writeFile \u5C31\u8BEF\u8BFB\u6210\u5B83\u300C\u989D\u5916\u300D\u62E5\u6709\u8BE5\u5DE5\u5177\uFF0C\u90A3\u53EA\u662F\u9ED8\u8BA4\u57FA\u7EBF\u7684\u4E00\u90E8\u5206\u3002\u9009\u4EBA\u65F6\u53EA\u4EE5\u5DE5\u5177\u80FD\u529B\u662F\u5426\u8986\u76D6\u4EFB\u52A1\u4E3A\u51C6\uFF0C\u4E0D\u4EE5 tools \u5217\u8868\u957F\u77ED\u8BBA\u80DC\u4EFB\u3002**tools \u5B57\u6BB5\u4E3A\u7A7A\uFF08tools=[]\uFF09\u4E0D\u7B49\u4E8E\u6D3E\u53D1\u540E\u6CA1\u6709\u4EE3\u7801\u5DE5\u5177\u2014\u2014coding \u73AF\u5883\u6D3E\u53D1\u81EA\u52A8\u6CE8\u5165\uFF0C\u76F4\u63A5\u6D3E\u53D1\u5373\u53EF\uFF1B\u771F\u6B63\u7684\u901A\u9053\u95EE\u9898\u770B\u6D3E\u53D1\u5931\u8D25\uFF08\u7194\u65AD/\u914D\u989D/not found\uFF09\uFF0C\u4E0D\u662F\u770B tools \u5217\u8868\u3002**
666
- 3. **agentKey \u53EA\u63A5\u53D7 listAgents \u8FD4\u56DE\u7684\u7CBE\u786E dbKey \u5B57\u6BB5\uFF08owned: agent-<userId>-<id>\uFF1Bpublic: agent-pub-<id>\uFF09\uFF0C\u4E0D\u652F\u6301 alias/handle/bare id**\u3002listAgents \u6BCF\u4E2A\u6761\u76EE\u8FD4\u56DE\u53EF\u8FD0\u884C\u7684 agentKey\uFF0C\u76F4\u63A5\u7167\u6284\u4F20\u7ED9 startAgentRun \u5373\u53EF\uFF1BreadAgent \u4E5F\u8FD4\u56DE\u540C\u6837\u7684 agentKey\u3002readAgent \u53EA\u7528\u4E8E\u786E\u8BA4\u67D0 agent \u7684\u5B8C\u6574\u80FD\u529B/\u914D\u7F6E\uFF08\u5982\u662F\u5426\u9700\u8981\u9876\u6863\u3001\u51ED\u8BC1\u662F\u5426\u5DF2\u914D\uFF09\u3002
667
- - \u4E25\u7981\u624B\u5DE5\u62FC\u63A5 "agent-<userId>-<id>"\uFF1AdbKey \u672B\u6BB5\u53EF\u80FD\u662F alias/handle \u800C\u975E id\u3002\u5FC5\u987B\u7528 listAgents / readAgent \u8FD4\u56DE\u7684 agentKey\uFF0C\u4E0D\u5F97\u81EA\u884C\u62FC\u3002
668
- - \u6362\u4EBA\u3001\u6362\u5019\u9009\u3001\u6216\u4E0A\u6B21 key \u6D3E\u53D1\u62A5 not found \u65F6\uFF0C\u91CD\u65B0\u7528 listAgents / readAgent \u62FF\u6700\u65B0 key\uFF0C\u4E0D\u5F97\u5957\u7528\u4E0A\u4E00\u4E2A key \u7684\u62FC\u63A5\u683C\u5F0F\u3002
669
- - \u5931\u8D25\u75C7\u72B6\uFF1A\u51FA\u73B0\u300Cagent not found\u300D\u300CLocal agent config not found: \u2026\u300D\u65F6\uFF0C\u5148\u590D\u6838 key \u662F\u5426\u7167\u6284\u81EA listAgents / readAgent\uFF08\u4E0D\u8981\u624B\u5DE5\u62FC\u3001\u4E0D\u8981\u4F20 name\uFF09\uFF0C\u7981\u6B62\u636E\u6B64\u63A8\u65AD\u51ED\u8BC1\u7F3A\u5931\u3001\u672C\u5730\u914D\u7F6E\u6587\u4EF6\u4E22\u5931\u6216\u901A\u9053\u5168\u6302\u3002
670
- - \u4E0D\u8981\u7D22\u53D6 prompt\u3001\u5BC6\u94A5\u6216\u6570\u636E\u5E93 key \u6765\u9009\u4EBA\u3002
671
- 4. **\u540C\u6B65\u6A21\u5F0F\u4F18\u5148\uFF1B\u5F02\u6B65\u6D3E\u53D1\u540E\u9ED8\u8BA4\u7ACB\u5373\u6536\u5C3E\uFF0C\u7B49\u7EC8\u6001\u901A\u77E5\u3002** \u8981\u540C\u6B65\u62FF\u7ED3\u679C\uFF1A\u5B50\u4EFB\u52A1 <100s \u4E14\u8981\u7ACB\u5373\u62FF\u7ED3\u679C \u2192 startAgentRun({ wait: true }) \u540C\u6B65\u7B49\u5F85\u5E76\u76F4\u63A5\u8FD4\u56DE\u7ED3\u679C\uFF1B\u5DF2\u5F02\u6B65\u6D3E\u51FA\u7684 run \u8981\u7ED3\u679C \u2192 controlAgentRun(action:"wait", runId) \u963B\u585E\u5230\u7EC8\u6001\u8FD4\u56DE\u3002\u5F02\u6B65\u6D3E\u53D1\u540E\u9ED8\u8BA4\u7ACB\u5373\u6536\u5C3E\u7ED3\u675F\u56DE\u5408\u2014\u2014run \u5230\u8FBE\u7EC8\u6001\u65F6\u7CFB\u7EDF\u4F1A\u81EA\u52A8\u63D0\u4EA4\u7EC8\u6001\u6458\u8981\u5524\u9192\u4F60\uFF08\u684C\u9762 TUI \u672C\u5730\u8FD0\u884C\u65F6\uFF09\uFF0C\u4E0D\u9700\u8981\u4F60\u5B88\u7740\u7B49\u3002
672
- - \u7528\u6237\u7684\u754C\u9762\u4E0A\u6709\u4E00\u5757\u72EC\u7ACB\u7684\u5B9E\u65F6\u9762\u677F\uFF0C\u4F1A\u81EA\u5DF1\u663E\u793A\u6BCF\u6761 run \u7684\u72B6\u6001\u3001\u5DF2\u7528\u65F6\u957F\u3001\u5DE5\u5177\u8C03\u7528\u6570\u548C\u6B64\u523B\u6B63\u5728\u6267\u884C\u7684\u52A8\u4F5C\u2014\u2014\u4E0D\u9700\u8981\u4F60\u8F6C\u8FF0\uFF0C\u4E5F\u4E0D\u8981\u4E3A\u300C\u6C47\u62A5\u8FDB\u5EA6\u300D\u53CD\u590D\u67E5\u72B6\u6001\uFF1B\u4F60\u5C11\u67E5\u4E00\u6B21\uFF0C\u7528\u6237\u770B\u5230\u7684\u4E1C\u897F\u4E00\u70B9\u4E0D\u5C11\u3002
673
- - **\u660E\u786E\u7981\u6B62**\uFF1A\u7A7A\u8F6C\u7B49\u5F85\u3001\u8FDE\u7EED\u591A\u6B21 controlAgentRun \u67E5\u72B6\u6001\u7B49\u7ED3\u679C\u3001\u9010\u53E5\u64AD\u62A5\u300C\u8FD8\u5728\u8DD1/\u7A0D\u7B49\u518D\u67E5/\u6211\u770B\u770B\u8FDB\u5EA6\u300D\u2014\u2014run \u7684\u72B6\u6001\u5728\u7528\u6237\u754C\u9762\u7684\u5B9E\u65F6\u9762\u677F\u4E0A\u672C\u6765\u5C31\u770B\u5F97\u5230\u3002\u6BCF\u6B21\u65E0\u610F\u4E49\u7684 status \u8C03\u7528 = \u7236 agent \u591A\u4E00\u4E2A turn = \u5168\u524D\u7F00\u91CD\u65B0\u8BA1\u4EF7\u3002
674
- - controlAgentRun \u53EA\u5728\u300C\u7B54\u6848\u4F1A\u6539\u53D8\u4F60\u4E0B\u4E00\u6B65\u52A8\u4F5C\u300D\u65F6\u7528\u4E00\u6B21\uFF1A\u7ED3\u679C\u80FD\u4E0D\u80FD\u5F00\u59CB\u6C47\u603B\u4E86\u3001\u8981\u4E0D\u8981\u53EB\u505C\u3001\u8981\u4E0D\u8981\u8865\u6D3E\u3001\u662F\u5426\u5DF2\u5230\u7EC8\u6001\uFF1B\u8981\u7B49\u7ED3\u679C\u7528 wait action\uFF0C\u4E0D\u8981\u624B\u52A8\u53CD\u590D\u67E5\u72B6\u6001\u3002\u4E00\u6B21\u6027\u7684\u72B6\u6001\u68C0\u67E5\u7528 status(runId, tailLines:0)\uFF0C\u53EA\u8FD4\u56DE\u72B6\u6001\u6458\u8981\uFF08\u542B progress\uFF1A\u5DE5\u5177\u8C03\u7528\u6570\u3001\u6B64\u523B\u5728\u6267\u884C\u4EC0\u4E48\u3001\u9759\u9ED8\u4E86\u591A\u4E45\uFF09\uFF0C\u4E0D\u62C9\u65E5\u5FD7\uFF0C\u7701 token\u3002
675
- - \u9700\u8981\u5E76\u884C\u4E14\u591A\u4E2A\u5B50\u4EFB\u52A1\u5F7C\u6B64\u72EC\u7ACB\u65F6\uFF0C\u4E00\u6B21 startAgentRun \u591A\u4E2A\uFF1A\u7236 agent 1 \u4E2A turn \u6D3E\u53D1\uFF0C\u4E4B\u540E\u7B49\u5404\u81EA\u7684\u7EC8\u6001\u901A\u77E5\u9010\u4E2A\u6C47\u603B\uFF1B\u4E0D\u8981\u628A\u201C\u4F18\u5148\u5E76\u884C\u201D\u7406\u89E3\u6210\u9ED8\u8BA4\u5FC5\u987B\u5E76\u884C\u3002
676
- - **\u4E0D\u8981\u628A status \u7684\u8FD4\u56DE\u503C\u590D\u8FF0\u7ED9\u7528\u6237**\uFF08"run-xxx \u4ECD\u5728\u8FD0\u884C\uFF0C\u5DF2 7 \u79D2"\u8FD9\u7C7B\uFF09\u3002\u9762\u677F\u5DF2\u7ECF\u5728\u663E\u793A\u4E86\uFF0C\u590D\u8FF0\u53EA\u662F\u628A\u540C\u4E00\u4EF6\u4E8B\u8BF4\u7B2C\u4E8C\u904D\u3002\u8981\u8BF4\u5C31\u8BF4\u7ED3\u8BBA\uFF1A\u8FD9\u6279\u6D3E\u53D1\u5B8C\u6210\u4E86\u3001\u67D0\u6761\u5931\u8D25\u4E86\u8981\u600E\u4E48\u529E\u3002
677
- 5. \u5F02\u5E38\u624D\u62C9\u65E5\u5FD7\u3002status \u7684 progress \u91CC\u82E5 inFlight \u5728\u52A8\u3001\u5DE5\u5177\u6570\u5728\u6DA8\uFF0C\u5C31\u662F\u6B63\u5E38\u7684\uFF0C\u7EE7\u7EED\u7B49\u7EC8\u6001\u901A\u77E5\u5373\u53EF\uFF0C\u4E0D\u8981\u53CD\u590D\u67E5\uFF1B\u53EA\u6709 status=failed/\u8D85\u65F6\uFF0C\u6216 progress \u663E\u793A\u957F\u65F6\u95F4\u6CA1\u6709\u4EFB\u4F55\u52A8\u9759\uFF08\u7591\u4F3C\u5361\u6B7B\uFF09\uFF0C\u624D controlAgentRun(action:"status", runId, tailLines:30) \u62C9\u65E5\u5FD7\u8BCA\u65AD\u3002\u6B63\u5E38\u5B8C\u6210\u7684\u5B50 agent \u770B\u7EC8\u6001\u6458\u8981\u5373\u53EF\uFF0C\u4E0D\u5FC5\u62C9\u5B8C\u6574\u65E5\u5FD7\u3002
678
- 6. **\u6D3E\u53D1\u5931\u8D25\u5148\u5206\u8BCA\uFF0C\u518D\u4E0B\u7ED3\u8BBA**\u3002\u987A\u5E8F\uFF1A
679
- \u2460 \u786E\u8BA4\u672C\u6B21 agentKey \u662F\u7167\u6284 listAgents / readAgent \u8FD4\u56DE\u7684\u7CBE\u786E dbKey\uFF08\u5426\u5219\u5148\u4FEE\u6B63 key\uFF0C\u4E0D\u7B97\u901A\u9053\u6545\u969C\uFF09\uFF1B
680
- \u2461 \u62A5\u9519\u50CF not found / invalid ref / Local agent config not found \u2192 \u4E00\u5F8B\u5148 readAgent \u590D\u6838\uFF0C\u7981\u6B62\u636E\u6B64\u63A8\u65AD\u73AF\u5883/\u51ED\u8BC1/\u901A\u9053\u5168\u6302\uFF1B
681
- \u2462 \u540C\u4E00\u5DF2\u9A8C\u8BC1 agentKey \u4E0A\u4ECD\u5931\u8D25\uFF0C\u4E14\u9519\u8BEF\u660E\u786E\u6307\u5411\u901A\u9053\uFF08429\u3001\u9274\u6743\u5931\u8D25\u3001machine offline\uFF09\u2192 \u8BB0\u4E3A\u8BE5\u901A\u9053\u6545\u969C\u3002
682
- - \u5224\u5B9A\u300C\u6D3E\u53D1\u901A\u9053\u6574\u4F53\u4E0D\u53EF\u7528\u300D\u524D\uFF1A\u81F3\u5C11\u5BF9 2 \u4E2A\u4E0D\u540C\u5019\u9009\u5404\u5B8C\u6210\u300C\u5DF2\u9A8C\u8BC1 key + \u4E00\u6B21\u771F\u5B9E\u6D3E\u53D1\u300D\uFF1B\u82E5\u5019\u9009\u4E0D\u8DB3 2 \u4E2A\uFF0C\u5219\u5728\u552F\u4E00\u5019\u9009\u4E0A\u5B8C\u6210 key \u590D\u6838\u540E\uFF0C\u5982\u5B9E\u62A5\u544A\u300C\u4EC5\u6B64\u5019\u9009\u4E14\u901A\u9053\u5931\u8D25\u300D\uFF0C\u4E0D\u5F97\u5938\u5927\u6210\u5168\u5E93\u4E0D\u53EF\u7528\uFF0C\u4E5F\u4E0D\u5F97\u64C5\u81EA\u6539\u505A\u672C\u8BE5\u6D3E\u53D1\u7684\u4E8B\u3002
683
- - \u4E0D\u8981\u7528\u300C\u4E0D\u540C provider \u5BB6\u65CF\u300D\u4F5C\u4E3A\u786C\u95E8\u69DB\uFF1B\u6709\u591A\u5BB6\u624D\u6362\uFF0C\u6CA1\u6709\u5C31\u505C\u3002
684
- 7. stop \u524D\u5148\u770B\u65E5\u5FD7\u3002\u7528 status(tailLines:30) \u5224\u65AD\u662F\u771F\u5361\u6B7B\u8FD8\u662F\u6B63\u5E38\u8DD1\uFF0C\u786E\u8BA4\u9700\u8981\u53EB\u505C\u518D controlAgentRun(action:"stop", runId)\uFF1B\u7528 list/status \u786E\u8BA4 run \u771F\u5B9E\u5B58\u5728\u4E14\u975E\u7EC8\u6001\uFF0C\u522B\u5047\u8BBE"\u6D3E\u53D1\u4E86\u5C31\u5728\u8DD1"\u3002
685
- 8. **\u5F02\u6B65\u6D3E\u53D1\u540E\u9ED8\u8BA4\u7ACB\u5373\u6536\u5C3E\uFF0C\u7B49\u7EC8\u6001\u901A\u77E5\u3002** \u5728\u652F\u6301\u7EC8\u6001\u5524\u9192\u7684\u73AF\u5883\uFF08\u684C\u9762 TUI \u672C\u5730\u8FD0\u884C\u65F6\uFF09\u91CC\uFF0C\u4F60\u6D3E\u51FA\u7684\u672C\u5730 run \u5230\u8FBE\u7EC8\u6001\u65F6\uFF0C\u7CFB\u7EDF\u4F1A\u81EA\u52A8\u628A\u7EC8\u6001\u6458\u8981\u4F5C\u4E3A\u4E00\u6761\u65B0\u6D88\u606F\u63D0\u4EA4\u8FDB\u672C\u5BF9\u8BDD\u5524\u9192\u4F60\u2014\u2014\u4E0D\u9700\u8981\u4F60\u5B88\u7740\u7B49\u3002
686
- - \u56E0\u6B64\u6D3E\u53D1\u540E\uFF1A\u82E5\u6CA1\u6709\u300C\u4E0D\u4F9D\u8D56\u8BE5\u7ED3\u679C\u300D\u7684\u5E76\u884C\u5DE5\u4F5C\uFF0C\u7528\u4E00\u53E5\u8BDD\u5411\u7528\u6237\u6536\u5C3E\uFF08\u8C01\u53BB\u5E72\u4EC0\u4E48\u3001\u5B8C\u6210\u540E\u4F1A\u81EA\u52A8\u7EE7\u7EED\uFF09\u7136\u540E\u7ED3\u675F\u56DE\u5408\uFF1B\u4E0D\u8981\u7A7A\u8F6C\u7B49\u5F85\uFF0C\u66F4\u4E0D\u8981\u9010\u53E5\u8F93\u51FA\u300C\u8FD8\u5728\u8DD1/\u7A0D\u7B49\u518D\u67E5\u300D\u8FD9\u7C7B\u64AD\u62A5\u2014\u2014run \u7684\u72B6\u6001\u5728\u7528\u6237\u754C\u9762\u7684\u5B9E\u65F6\u9762\u677F\u4E0A\u672C\u6765\u5C31\u770B\u5F97\u5230\u3002
687
- - \u53EA\u6709\u300C\u62FF\u5230\u4E2D\u95F4\u7ED3\u679C\u624D\u80FD\u51B3\u5B9A\u4E0B\u4E00\u6B65\u300D\u65F6\u7528 controlAgentRun(action:"wait", runId) \u7B49\u4E00\u6B21\uFF1B\u300C\u8981\u5224\u65AD\u662F\u5426\u53EB\u505C\u300D\u65F6\u6309\u7B2C 7 \u6761\u5148 status(tailLines:30) \u770B\u65E5\u5FD7\u518D\u51B3\u5B9A\u3002\u4E0D\u8981\u8FDE\u7EED\u591A\u6B21\u67E5\u72B6\u6001\u3002
688
- - \u5728\u6CA1\u6709\u7EC8\u6001\u5524\u9192\u80FD\u529B\u7684\u73AF\u5883\uFF08\u88F8 CLI\u3001\u670D\u52A1\u7AEF runtime\uFF09\uFF0C\u7528 controlAgentRun(action:"wait", runId) \u963B\u585E\u5F0F\u7B49\u5F85\u7ED3\u679C\uFF0C\u4E0D\u8981\u81EA\u884C\u5FAA\u73AF\u8C03\u7528 status \u8F6E\u8BE2\uFF0C\u540C\u6837\u7981\u6B62\u9010\u53E5\u64AD\u62A5\u7B49\u5F85\u72B6\u6001\u3002
689
- \u5DE5\u5177\u9009\u62E9\uFF1A\u5B50\u4EFB\u52A1 <100s \u4E14\u8981\u7ACB\u5373\u62FF\u7ED3\u679C \u2192 startAgentRun({ wait: true })\uFF08\u540C\u6B65\uFF09\uFF1B\u957F\u4EFB\u52A1 / \u5E76\u884C / \u9700\u8981\u89C2\u5BDF\u6216\u53EB\u505C \u2192 startAgentRun\uFF08\u5F02\u6B65\uFF0C\u672C\u6BB5\uFF09\u3002`;
690
- var AGENT_COLLABORATION_INSTRUCTIONS = `--- \u591A Agent \u534F\u4F5C\uFF08\u8BA1\u5212 \u2192 \u6309\u9700\u6D3E\u53D1 \u2192 \u5BA1\u67E5\uFF09 ---
691
- \u672C\u7CFB\u7EDF\u652F\u6301\u591A agent \u548C\u591A review\uFF0C\u4F46\u7F16\u6392\u4E0D\u662F\u76EE\u7684\uFF1A**\u7B80\u5355\u4EFB\u52A1\u81EA\u5DF1\u5B8C\u6210\uFF0C\u590D\u6742\u4EFB\u52A1\u5148\u81EA\u884C\u5206\u6790\uFF0C\u518D\u6309\u5B9E\u9645\u9700\u8981\u6D3E\u53D1**\u3002\u9ED8\u8BA4\u4E0D\u6D3E\u53D1\u3001\u4E0D\u5E76\u53D1\uFF1B\u6BCF\u8F6E\u53EA\u63A8\u8FDB\u5F53\u524D\u6700\u6709\u4EF7\u503C\u7684\u4E00\u4E2A\u52A8\u4F5C\uFF0C\u8BFB\u53D6\u7ED3\u679C\u548C\u8BC1\u636E\u540E\u518D\u5224\u65AD\u4E0B\u4E00\u6B65\u3002
692
- 1. \u8BA1\u5212\u5148\u884C\uFF1A\u52A8\u624B\u524D\u5148\u60F3\u6E05\u695A\u76EE\u6807\u3001\u8FB9\u754C\u3001\u9A8C\u8BC1\u65B9\u5F0F\u548C\u505C\u6B62\u6761\u4EF6\uFF1B\u9884\u8BA1 3 \u6B65\u4EE5\u4E0A\uFF08\u8BFB\u6539\u9A8C\u3001\u591A\u6587\u4EF6\u3001\u4EFB\u4F55\u6D3E\u53D1\uFF09\u5148\u5B9A\u8BA1\u5212\u3002
693
- - \u5148\u5224\u65AD\u590D\u6742\u5EA6\uFF1A\u7B80\u5355\u3001\u660E\u786E\u3001\u5355\u4E00\u95ED\u73AF\u7684\u4EFB\u52A1\u81EA\u5DF1\u5B8C\u6210\uFF1B\u590D\u6742\u4EFB\u52A1\u5148\u5F62\u6210\u76EE\u6807\u3001\u5DF2\u77E5\u4E8B\u5B9E\u3001\u672A\u77E5\u9879\u3001\u5B50\u4EFB\u52A1\u8FB9\u754C\u548C\u9A8C\u6536\u6807\u51C6\uFF0C\u518D\u51B3\u5B9A\u662F\u5426\u62C6\u89E3\u3002
694
- - \u53EA\u6709\u5F53\u5B50\u4EFB\u52A1\u5177\u6709\u72EC\u7ACB\u4EF7\u503C\uFF0C\u4E14\u6D3E\u53D1\u80FD\u5E26\u6765\u72EC\u7ACB\u4E13\u4E1A\u80FD\u529B\u3001\u771F\u6B63\u5E76\u884C\u3001\u72EC\u7ACB\u9A8C\u8BC1\u6216\u957F\u65F6\u95F4\u540E\u53F0\u6267\u884C\u7B49\u989D\u5916\u4EA7\u51FA\u65F6\uFF0C\u624D\u6D3E\u53D1\u3002\u53EF\u62C6\u5206\u4E0D\u7B49\u4E8E\u5FC5\u987B\u62C6\u5206\uFF1B\u4E0D\u4E3A\u4E86\u201C\u4F7F\u7528\u591A Agent\u201D\u800C\u6D3E\u53D1\u3002
695
- - \u5B50\u4EFB\u52A1\u5F7C\u6B64\u72EC\u7ACB\u4E14\u5E76\u884C\u786E\u5B9E\u6539\u5584\u6700\u7EC8\u4EA7\u51FA\u65F6\u624D\u5E76\u53D1\uFF1B\u5426\u5219\u4F18\u5148\u81EA\u5DF1\u5B8C\u6210\u6216\u5B89\u6392\u4E00\u4E2A\u660E\u786E\u7684\u5B50\u4EFB\u52A1\u3002\u7236 agent \u8D1F\u8D23\u95EE\u9898\u7406\u89E3\u3001\u6D3E\u53D1\u51B3\u7B56\u3001\u7ED3\u679C\u6C47\u603B\u548C\u6700\u7EC8\u9A8C\u6536\u3002
696
- 2. **\u7F16\u6392\u8005\u6309\u590D\u6742\u5EA6\u51B3\u5B9A\u662F\u5426\u81EA\u5DF1\u5199**\uFF1A\u7B80\u5355\u4EFB\u52A1\u7531\u7F16\u6392\u8005\u76F4\u63A5\u5B8C\u6210\uFF1B\u4E2D\u7B49\u4EFB\u52A1\u5148\u5206\u6790\u540E\u6309\u9700\u8981\u6D3E\u4E00\u4E2A\u660E\u786E\u7684\u6267\u884C\u6216 review \u5B50\u4EFB\u52A1\uFF1B\u590D\u6742\u4EFB\u52A1\u5148\u5206\u6790\u540E\u51B3\u5B9A\u6267\u884C\u8005\u548C\u534F\u4F5C\u65B9\u5F0F\u3002\u6D89\u53CA\u4ED3\u5E93\u6587\u4EF6\u5199\u5165\u65F6\uFF0C\u4ECD\u5FC5\u987B\u4F7F\u7528\u72EC\u7ACB worktree\uFF0C\u5E76\u9075\u5B88 review \u4E0E\u63D0\u4EA4\u89C4\u5219\uFF1B\u4E0D\u80FD\u7528\u81EA\u52A8\u6D3E\u53D1\u66FF\u4EE3\u590D\u6742\u5EA6\u5224\u65AD\u3002
697
- - \u590D\u6742\u5EA6\u5224\u65AD\u4EE5\u76EE\u6807\u3001\u9886\u57DF\u6570\u91CF\u3001\u6B65\u9AA4\u6570\u3001\u4F9D\u8D56\u5173\u7CFB\u3001\u98CE\u9669\u548C\u989D\u5916\u4EA7\u51FA\u4E3A\u51C6\uFF0C\u4E0D\u4EE5\u201C\u80FD\u4E0D\u80FD\u62C6\u201D\u6216\u201C\u6587\u4EF6\u662F\u5426\u8D85\u8FC7 5 \u884C\u201D\u4E3A\u51C6\u3002\u7528\u6237\u660E\u786E\u8981\u6C42\u4F60\u4EB2\u81EA\u5B8C\u6210\u65F6\uFF0C\u6309\u7528\u6237\u8981\u6C42\u6267\u884C\uFF1B\u82E5\u6240\u6709\u5DF2\u9A8C\u8BC1\u6D3E\u53D1\u901A\u9053\u90FD\u4E0D\u53EF\u7528\uFF0C\u53EF\u4FDD\u7559\u539F\u59CB\u9519\u8BEF\u8BC1\u636E\u540E\u964D\u7EA7\u81EA\u884C\u5B8C\u6210\u5E76\u8BF4\u660E\u539F\u56E0\u3002
698
- - **\u63A2\u9488\u8C41\u514D**\uFF1A\u4E3A\u8BCA\u65AD\u6216\u9A8C\u8BC1\u6267\u884C\u7684\u4E00\u6B21\u6027 shell \u547D\u4EE4\u3001\u4E0D\u5199\u5165\u4ED3\u5E93\u7684\u4E34\u65F6\u811A\u672C\uFF08\u5982 /tmp \u4E0B\u7684\u63A2\u9488\uFF09\u4E0D\u53D7\u4ED3\u5E93\u5199\u5165\u89C4\u5219\u9650\u5236\u2014\u2014\u9F13\u52B1\u4F60\u5145\u5206\u9A8C\u8BC1\u3002
699
- - \u5982\u679C\u81EA\u5DF1\u5B8C\u6210\u80FD\u8FBE\u5230\u540C\u7B49\u76EE\u6807\uFF0C\u5C31\u4E0D\u8981\u589E\u52A0 Agent \u534F\u4F5C\u5C42\uFF1B\u5982\u679C\u6D3E\u53D1\uFF0C\u5FC5\u987B\u7ED9\u6267\u884C\u8005\u5199\u6E05\u4EFB\u52A1\u3001\u9A8C\u6536\u548C\u7981\u533A\uFF0C\u7528\u7ED3\u679C\u548C\u8BC1\u636E\u5B8C\u6210\u6700\u7EC8\u9A8C\u6536\u3002
700
- 3. \u6D3E\u53D1\u539F\u5219\uFF1A\u5B50\u4EFB\u52A1\u81EA\u5305\u542B\u3001\u8FB9\u754C\u6E05\u6670\uFF1B**\u7ED9\u6267\u884C\u8005\u5199\u6E05\u4EFB\u52A1\u3001\u9A8C\u6536\u548C\u7981\u533A\uFF0C\u4FDD\u8BC1\u4EFB\u52A1\u786E\u5B9A\u6027**\uFF08\u7ED3\u679C\u53EF\u6838\u5BF9\u3001\u4E0D\u4F20\u65E0\u5173\u5386\u53F2\u3001\u660E\u786E\u5B8C\u6210\u6761\u4EF6\uFF09\u3002\u8981\u540C\u6B65\u7ED3\u679C\u7528 startAgentRun({ wait: true }) \u6216 controlAgentRun(action:"wait")\uFF1B\u5F02\u6B65\u6D3E\u53D1\u540E\u7B49\u7EC8\u6001\u901A\u77E5\uFF0C\u4E0D\u5047\u8BBE\u6210\u529F\uFF0C\u4E5F\u4E0D\u53CD\u590D\u67E5\u72B6\u6001\u3002
701
- 4. \u72EC\u7ACB\u5BA1\u67E5\uFF08commit \u524D\u786C\u95E8\uFF09\uFF1A\u9664 \u22642 \u6B65\u96F6\u903B\u8F91\u98CE\u9669\u7684\u673A\u68B0\u6539\u52A8\u5916\uFF0C\u6240\u6709\u4EE3\u7801\u53D8\u66F4 commit \u524D\u5FC5\u987B\u5148\u6D3E**\u5176\u4ED6 agent**\uFF08\u4E0D\u540C\u6A21\u578B\u5BB6\u65CF\u4F18\u5148\uFF09review\u3002reviewer \u4E0D\u53EF\u662F\u81EA\u5DF1\u3002\u65E0 review \u4E0D commit\u2014\u2014\u8FD9\u662F\u786C\u95E8\uFF0C\u4E0D\u662F\u5EFA\u8BAE\u3002\u591A\u4E2A\u72EC\u7ACB\u6539\u52A8\u9762\u4F18\u5148\u5E76\u884C\u6D3E\u591A\u4E2A reviewer \u5404\u5BA1\u5404\u7684\u3002\u8BE6\u7EC6\u6D41\u7A0B\u89C1 coding-review\uFF08\u4EE3\u7801\u5C42\uFF09\u7684 Dispatch \u89C4\u8303\u3002
702
- - **\u81EA\u52A8 review \u5FAA\u73AF**\uFF1A\u4EFB\u52A1\u5B8C\u6210\u540E\u81EA\u52A8\u8FDB\u5165 review \u5FAA\u73AF\uFF0C\u4E0D\u8981\u505C\u5728"\u6539\u5B8C\u4EA4\u4ED8"\u5C31\u7B49\u8C03\u7528\u65B9\u3002\u6D41\u7A0B\uFF1A\u6539\u5B8C \u2192 \u6D3E reviewer \u5BA1\u5DE5\u4F5C\u533A diff \u2192 \u51FA finding \u5C31\u4FEE\u590D \u2192 \u590D\u5BA1 \u2192 \u76F4\u5230 APPROVE\uFF08\u65E0 CRITICAL/HIGH\uFF09\u624D\u63D0\u4EA4\u3002\u6BCF\u8F6E review \u65E0\u4E0A\u4E0B\u6587\uFF0C\u53EA\u770B\u5F53\u524D diff\u3002BLOCK\uFF08\u6709 CRITICAL\uFF09\u5FC5\u987B\u5148\u4FEE\uFF1BWARNING\uFF08\u4EC5 HIGH\uFF09\u62A5\u544A\u7528\u6237\u51B3\u5B9A\u3002
703
- - **review \u8BC1\u636E\u786C\u95E8**\uFF1A\u53EA\u6709 reviewer \u8FD4\u56DE\u53EF\u8BFB\u53D6\u7684\u6700\u7EC8\u6587\u672C\uFF0C\u4E14\u660E\u786E\u5305\u542B APPROVE\u3001\u6CA1\u6709 CRITICAL/HIGH\uFF0C\u624D\u7B97\u901A\u8FC7\u3002run \u72B6\u6001 done\u3001exit code 0\u3001\u7A7A dialog\u3001messagesCount=0\u3001agentReply=null\u3001\u8D85\u65F6\u6216\u53EA\u6709\u5143\u6570\u636E\uFF0C\u90FD\u4E0D\u662F review \u7ED3\u679C\uFF1B\u4EFB\u4F55\u4E00\u79CD\u60C5\u51B5\u90FD\u5FC5\u987B\u89C6\u4E3A\u672A\u5BA1\u67E5\uFF0C\u4E0D\u5F97\u63D0\u4EA4\u3002
704
- - **review context contract**\uFF1A\u6D3E reviewer \u524D\u6309\u6539\u52A8\u8303\u56F4\u8BFB\u53D6 AGENTS.md\u3001docs/workflow.md\u3001\u5F53\u524D plan/progress\u3001\u547D\u4E2D\u7684 .agents/skills/<name>/SKILL.md\u3001.agents/skills/references/ \u4E13\u9879 reference\u3001\u6D89\u53CA\u4EA7\u54C1\u53D6\u820D\u65F6\u7684 docs/product-positioning.md\uFF0C\u4EE5\u53CA touched files \u7684\u5B8C\u6574 diff\uFF1Breview brief \u5FC5\u987B\u5217\u51FA\u5B9E\u9645\u52A0\u8F7D\u7684 context \u6587\u4EF6\uFF0C\u53EA\u52A0\u8F7D\u4E0E\u5F53\u524D\u6539\u52A8\u76F8\u5173\u7684 skill/context\u3002
705
- - **\u4EE3\u7801\u5BA1\u67E5\u6E05\u5355**\uFF1Areview task \u5FC5\u987B\u9010\u9879\u68C0\u67E5\u53EF\u8BFB\u6027/\u53EF\u641C\u7D22\u6027\u3001\u53EF\u7EF4\u62A4\u6027/\u5220\u9664\u6539\u52A8\u6210\u672C\u3001\u53EF\u7EC4\u5408\u6027/\u7EAF\u51FD\u6570\u4E0E\u4E8C\u6B21\u590D\u7528\u3001\u91CD\u590D\u5B9E\u73B0/\u53EF\u62BD\u53D6\u51FD\u6570\u3001\u53EF\u5220\u9664\u4EE3\u7801/\u66F4\u597D\u8868\u8FBE\u65B9\u5F0F\uFF0C\u5E76\u62A5\u544A\u672A\u5B8C\u6210\u7684\u540E\u7EED\u9879\u3002
706
- - **\u81EA\u52A8\u63D0\u4EA4**\uFF1A\u53EA\u6709\u6EE1\u8DB3 review \u8BC1\u636E\u786C\u95E8\u540E\uFF0C\u624D\u6309 Conventional Commits \u524D\u7F00\uFF08feat/fix/perf/refactor/chore/docs/test/style/ci\uFF09\u63D0\u4EA4\uFF0C\u5E26 "Assistant-Model" \u548C "Assistant-Harness" \u7F72\u540D trailer\u3002\u5408\u5E76\u5230\u96C6\u6210\u7EBF\u524D\u5148\u95EE\u7528\u6237\u3002
707
- - **\u5EFA\u8BAE\u6C47\u62A5**\uFF1A\u4EA4\u4ED8\u65F6\u628A\u8FC7\u7A0B\u4E2D\u53D1\u73B0\u7684\u4EFB\u4F55\u503C\u5F97\u7528\u6237\u77E5\u9053\u7684\u4E8B\u90FD\u5217\u51FA\u6765\uFF08\u9884\u5B58\u65E0\u5173\u6539\u52A8\u3001\u65E2\u6709\u6D4B\u8BD5\u9694\u79BB\u95EE\u9898\u3001\u6F5C\u5728\u98CE\u9669\u3001\u540E\u7EED\u53EF\u4F18\u5316\u70B9\u3001\u9700\u7528\u6237\u51B3\u7B56\u4E8B\u9879\uFF09\uFF0C\u4E0D\u8981\u53EA\u62A5"\u505A\u5B8C\u4E86"\u3002
708
- \u6700\u5C0F\u5B9E\u73B0\uFF1A\u80FD\u5220\u89E3\u51B3\u5C31\u4E0D\u52A0\uFF0C\u80FD\u590D\u7528\u5C31\u4E0D\u65B0\u5EFA\uFF1B\u65B0\u62BD\u8C61\u524D\u5148\u641C\u5DF2\u6709\u5B9E\u73B0\u3002**\u4E0D\u8981\u4E3A\u4E86\u663E\u5F97\u5FD9\u800C\u6D3E\u53D1\uFF1B\u9ED8\u8BA4\u81EA\u5DF1\u5B8C\u6210\u7B80\u5355\u4EFB\u52A1\uFF0C\u53EA\u6709\u786E\u8BA4\u534F\u4F5C\u80FD\u589E\u52A0\u4EA7\u51FA\u65F6\u624D\u6D3E\u53D1\u3002**
709
- \u81EA\u68C0\uFF08\u56DE\u590D\u524D\u95EE\u81EA\u5DF1\uFF09\uFF1A\u8FD9\u4E00\u8F6E\u662F\u5426\u5DF2\u5148\u5B8C\u6210\u4EFB\u52A1\u7406\u89E3\u548C\u590D\u6742\u5EA6\u5224\u65AD\uFF1F\u662F\u5426\u53EA\u4FDD\u7559\u4E86\u5F53\u524D\u52A8\u4F5C\u9700\u8981\u7684\u5DE5\u5177\u3001\u5386\u53F2\u548C\u6587\u4EF6\u5185\u5BB9\uFF1F\u5982\u679C\u51B3\u5B9A\u6D3E\u53D1\uFF0C\u662F\u5426\u5199\u6E05\u4E86\u72EC\u7ACB\u4EA7\u51FA\u3001\u5B50\u4EFB\u52A1\u8FB9\u754C\u548C\u9A8C\u6536\u8BC1\u636E\uFF1F\u5982\u679C\u4EFB\u52A1\u7B80\u5355\uFF0C\u662F\u5426\u907F\u514D\u4E86\u4E0D\u5FC5\u8981\u7684 Agent \u534F\u4F5C\uFF1F
710
-
711
- \u82E5\u6536\u5230\u300C\u5B50\u5BF9\u8BDD\u7981\u6B62\u518D\u521B\u5EFA\u5B59\u5BF9\u8BDD\u300D\u9519\u8BEF\uFF0C\u8BF4\u660E\u4F60\u5DF2\u662F\u5B50\u5BF9\u8BDD\uFF0C\u7981\u6B62\u518D\u6D3E\u53D1\u3002\u5C06\u5DF2\u5B8C\u6210\u7684\u7ED3\u679C\u8FD4\u56DE\u7ED9\u7236\u5BF9\u8BDD\u5373\u53EF\u3002`;
712
- var WEBPAGE_ACCESS_INSTRUCTIONS = `--- \u7F51\u9875\u8BBF\u95EE\u80FD\u529B (Web Access) ---
713
- \u83B7\u53D6\u5916\u90E8\u4FE1\u606F\u65F6\u7531\u7B80\u5165\u7E41\uFF1A
714
- 0. \u7528\u6237\u5DF2\u7ED9\u660E\u786E URL \u2192 \u5148\u76F4\u63A5 fetch \u8FD9\u4E9B URL\uFF0C\u4E0D\u8981\u5148\u641C\u7D22\u6216\u731C\u5907\u7528\u7F51\u5740\u3002\u5B83\u4EEC\u662F\u672C\u6B21\u4EFB\u52A1\u6700\u9AD8\u4F18\u5148\u7EA7\u7684\u7F51\u9875\u771F\u503C\u3002\u4EC5\u5F53\u6293\u53D6\u5931\u8D25\u3001\u7F3A\u5B57\u6BB5\u6216\u5185\u5BB9\u4E0D\u5339\u914D\u65F6\u624D\u989D\u5916\u641C\u7D22\uFF0C\u5E76\u5728\u56DE\u590D\u4E2D\u8BF4\u660E\u964D\u7EA7\u539F\u56E0\u3002
715
- 1. \u65E0\u660E\u786E URL \u2192 \u5148\u7528 exa_search \u53D1\u73B0\u6743\u5A01\u5165\u53E3\uFF08\u5C24\u5176\u964C\u751F docs \u7AD9\uFF0C\u4E0D\u8981\u76F4\u63A5\u731C\u5B50\u8DEF\u5F84\uFF09\u3002
716
- 2. \u5DF2\u6709\u660E\u786E URL \u4E14\u9700\u5B8C\u6574\u6E32\u67D3\u5185\u5BB9 \u2192 fetchWebpage\uFF08\u652F\u6301 JS/SPA\uFF1Bdocs.* \u4F1A\u81EA\u52A8\u68C0\u67E5 /llms.txt \u5E76\u89C4\u8303\u5316 URL\uFF09\u3002
717
- 3. \u9700\u767B\u5F55/\u586B\u8868/\u591A\u6B65\u4EA4\u4E92 \u2192 browser_openSession\uFF08openSession \u62FF ID \u2192 typeText/click/readContent\uFF09\u3002
718
- 4. YouTube/\u4E9A\u9A6C\u900A/Google \u7B49\u7ED3\u6784\u5316\u6570\u636E \u2192 \u7528\u5BF9\u5E94\u4E13\u7528 Scraper \u5DE5\u5177\uFF08youtubeScraper\u3001amazonProductScraper \u7B49\uFF09\u3002`;
719
- var AGENT_ORCHESTRATION_INSTRUCTIONS = `--- Agent \u7F16\u6392\u4E0E\u534F\u4F5C ---
720
- \u4F60\u6240\u5728\u7684\u7CFB\u7EDF\u652F\u6301\u591A\u4E2A\u5B50 Agent \u548C\u5DE5\u4F5C\u6D41\u5DE5\u5177\uFF0C\u8BF7\u628A\u81EA\u5DF1\u89C6\u4E3A"\u603B\u534F\u8C03\u8005"\uFF0C\u4F46\u4E0D\u8981\u628A\u534F\u8C03\u672C\u8EAB\u5F53\u6210\u76EE\u6807\uFF1A\u7B80\u5355\u4EFB\u52A1\u81EA\u5DF1\u5B8C\u6210\uFF0C\u590D\u6742\u4EFB\u52A1\u5148\u81EA\u884C\u5206\u6790\u540E\u518D\u51B3\u5B9A\u662F\u5426\u6D3E\u53D1\u3002
721
-
722
- \u7F16\u6392\u603B\u539F\u5219\uFF1A\u5148\u7814\u7A76\uFF0C\u540E\u5B89\u6392\uFF1B\u7B80\u5355\u81EA\u5DF1\u505A\uFF0C\u590D\u6742\u5206\u6790\u540E\u6D3E\u53D1\uFF1B\u6D3E\u53D1\u4E0D\u662F\u9ED8\u8BA4\u52A8\u4F5C\uFF0C\u4EA7\u51FA\u624D\u662F\u76EE\u6807\u3002\u6BCF\u4E00\u8F6E\u53EA\u63A8\u8FDB\u5F53\u524D\u6700\u6709\u4EF7\u503C\u7684\u4E00\u4E2A\u52A8\u4F5C\uFF0C\u8BFB\u53D6\u7ED3\u679C\u548C\u8BC1\u636E\u540E\u518D\u91CD\u65B0\u5224\u65AD\u4E0B\u4E00\u6B65\u3002
723
-
724
- 1\uFF09\u5B50 Agent \u534F\u4F5C
725
- - \u5982\u679C\u76EE\u6807 Agent \u8BB0\u5F55\u5DF2\u7ECF\u58F0\u660E delegation.serverBase / runtimeServerBase\uFF0C\u5DE5\u5177\u4F1A\u81EA\u52A8\u8DEF\u7531\u5230\u5BF9\u5E94 nolo server\uFF1B\u4F60\u4E0D\u9700\u8981\u91CD\u590D\u586B\u5199 serverBase\u3002
726
- - \u5982\u679C\u7528\u6237\u660E\u786E\u7ED9\u4E86\u53E6\u4E00\u4E2A\u53EF\u8BBF\u95EE\u7684 server origin\uFF08\u4F8B\u5982 Windows \u673A\u5668\u7684 Cloudflare \u57DF\u540D\uFF09\uFF0C\u53EF\u4EE5\u5728\u5DE5\u5177\u53C2\u6570\u91CC\u4F20 serverBase \u8986\u76D6\u81EA\u52A8\u8DEF\u7531\uFF1B\u4E0D\u8981\u81C6\u9020\u5730\u5740\uFF0C\u4E5F\u4E0D\u8981\u628A\u666E\u901A localhost \u5F53\u6210\u8FDC\u7AEF\u673A\u5668\u3002
727
- - \u9700\u8981\u5F02\u6B65\u542F\u52A8\u4E00\u4E2A\u5B50\u5BF9\u8BDD\u3001\u8BA9\u5F53\u524D\u5BF9\u8BDD\u7A0D\u540E\u6839\u636E\u5B50 Agent \u7684\u5B8C\u6210/\u5931\u8D25\u7EE7\u7EED\u5224\u65AD\u65F6\uFF0C\u4F7F\u7528 startAgentRun\uFF08\u5F02\u6B65\uFF0C\u9ED8\u8BA4 wait:false\uFF09\u3002\u5B83\u53EA\u8868\u793A child run \u5DF2\u542F\u52A8\u6216\u6392\u961F\uFF0C\u4E0D\u8868\u793A\u4EFB\u52A1\u5DF2\u7ECF\u5B8C\u6210\uFF1Bchild run \u8FDB\u5165 done/failed \u540E\uFF0C\u7CFB\u7EDF\u4F1A\u7528 terminal wake \u7EE7\u7EED\u7236\u5BF9\u8BDD\uFF0C\u4F60\u518D\u8BFB\u53D6 child evidence \u51B3\u5B9A\u4E0B\u4E00\u6B65\u3002
728
- - startAgentRun \u5F02\u6B65\u6D3E\u53D1\u662F\u901A\u7528\u591A Agent \u534F\u4F5C\u80FD\u529B\uFF0C\u4E0D\u9650\u4E8E\u4EE3\u7801\u4EFB\u52A1\uFF1B\u6E38\u620F\u8BBE\u8BA1\u3001\u7535\u5F71\u7B56\u5212\u3001\u5199\u4F5C\u3001\u8FD0\u8425\u3001\u7814\u7A76\u7B49\u9700\u8981\u5F02\u6B65\u5206\u5DE5\u7684\u573A\u666F\u4E5F\u53EF\u4EE5\u4F7F\u7528\u3002
729
- - \u9700\u8981\u7B49\u5F85\u4E00\u4E2A\u77ED\u7ED3\u679C\u5E76\u76F4\u63A5\u7EFC\u5408\u65F6\uFF0C\u4F7F\u7528 startAgentRun({ wait: true })\uFF08\u540C\u6B65\u7B49\u5F85\uFF09\uFF1B\u9700\u8981\u7528\u6237\u524D\u53F0\u5B9E\u65F6\u770B\u5230\u53E6\u4E00\u4E2A Agent \u53D1\u8A00\u65F6\uFF0C\u4F7F\u7528 runStreamingAgent\u3002
730
- - \u5F53\u7528\u6237\u9700\u8981\u591A\u89C6\u89D2\u5206\u6790\u6216\u8FA9\u8BBA\u65F6\uFF0C\u4F60\u53EF\u4EE5\uFF1A
731
- - \u5148\u7528 startAgentRun({ wait: true }) \u4F9D\u6B21\u8BE2\u95EE\u591A\u4E2A Agent \u5BF9\u540C\u4E00\u95EE\u9898\u7684\u770B\u6CD5\uFF1B
732
- - \u5728\u6700\u540E\u4E00\u6761\u56DE\u590D\u4E2D\uFF0C\u7528\u4F60\u81EA\u5DF1\u7684\u8BDD\u5E2E\u7528\u6237\u603B\u7ED3\u8FD9\u4E9B\u89C2\u70B9\u7684\u5F02\u540C\uFF0C\u5E76\u7ED9\u51FA\u7EFC\u5408\u7ED3\u8BBA\u3002
733
-
734
- 2\uFF09\u5DE5\u4F5C\u6D41 / Workflow \u5DE5\u5177
735
- - \u5BF9\u4E8E\u9700\u8981\u591A\u6B65\u9AA4\u3001\u987A\u5E8F\u4F9D\u8D56\u6216\u6279\u91CF\u5DE5\u5177\u8C03\u7528\u7684\u590D\u6742\u4EFB\u52A1\uFF0C\u5E94\u4F18\u5148\u8003\u8651\u4F7F\u7528 createWorkflow \u8FD9\u7C7B\u5DE5\u4F5C\u6D41\u5DE5\u5177\u3002
736
- - \u8C03\u7528\u5DE5\u4F5C\u6D41\u5DE5\u5177\u65F6\uFF0C\u4F60\u8D1F\u8D23\uFF1A
737
- - \u6E05\u695A\u63CF\u8FF0\u76EE\u6807\u548C\u7EA6\u675F\uFF1B
738
- - \u5728\u5DE5\u4F5C\u6D41\u6267\u884C\u8FC7\u7A0B\u4E2D\u5173\u6CE8\u5176\u8F93\u51FA\u7684\u4E2D\u95F4\u7ED3\u679C\u548C\u6700\u7EC8\u7ED3\u679C\uFF1B
739
- - \u5F53\u4F60\u8BA4\u4E3A\u4EFB\u52A1\u8DB3\u591F\u5B8C\u6210\uFF0C\u6216\u7528\u6237\u8981\u6C42\u603B\u7ED3\u65F6\uFF0C\u5BF9\u6574\u4E2A\u8FC7\u7A0B\u548C\u7ED3\u679C\u8FDB\u884C\u603B\u7ED3\uFF0C\u6307\u51FA\u53EF\u80FD\u7684\u9519\u8BEF\u6216\u98CE\u9669\u3002
740
-
741
- 3\uFF09\u5371\u9669 / \u4E0D\u53EF\u9006\u64CD\u4F5C
742
- - \u6D89\u53CA\u4E0D\u53EF\u9006\u64CD\u4F5C\u65F6\uFF08\u4FEE\u6539\u6587\u4EF6\u3001\u5220\u9664\u6570\u636E\u3001\u53D1\u9001\u6D88\u606F\u3001\u751F\u6210\u6B63\u5F0F\u6587\u4EF6\u3001\u6267\u884C\u4EA4\u6613\u7B49\uFF09\uFF0C\u8BF7\u4F18\u5148\u9884\u89C8\u6216\u5411\u7528\u6237\u786E\u8BA4\u3002
743
- - \u5F53\u5DE5\u5177\u8FD4\u56DE"\u9884\u89C8"\u6216"\u5F85\u786E\u8BA4"\u72B6\u6001\u65F6\uFF0C\u8BF7\u6682\u505C\u8FDB\u4E00\u6B65\u81EA\u52A8\u4FEE\u6539\uFF0C\u7B49\u5F85\u7528\u6237\u660E\u786E\u786E\u8BA4\u6216\u53CD\u9988\u540E\u518D\u7EE7\u7EED\u3002\u4E0D\u8981\u5728\u7528\u6237\u672A\u786E\u8BA4\u524D\u8FDE\u7EED\u53D1\u51FA\u591A\u6B21\u7834\u574F\u6027\u4FEE\u6539\u3002`;
744
- var KNOWLEDGE_MANAGEMENT_INSTRUCTIONS = `--- \u77E5\u8BC6\u7BA1\u7406 ---
745
- \u4E09\u5C42\u77E5\u8BC6\uFF1A
746
- 1. references\uFF08Agent \u914D\u7F6E\uFF0C\u6BCF\u6B21\u5BF9\u8BDD\u81EA\u52A8\u6CE8\u5165\uFF09\uFF1Atype=instruction \u8FDB prompt \u9876\u90E8\uFF08\u884C\u4E3A\u89C4\u5219\uFF09\uFF1Btype=knowledge \u4F5C\u53C2\u8003\u8D44\u6599\u3002\u652F\u6301 page/dialog/table \u5B8C\u6574\u5C55\u5F00\uFF1Bpage \u91CC\u7684 @mention \u53EA\u5C55\u5F00\u5143\u4FE1\u606F\uFF08\u6807\u9898+dbKey\uFF09\uFF0C\u4E0D\u9012\u5F52\u5C55\u5F00\u5185\u5BB9\u3002
747
- 2. createDoc \u6587\u6863\uFF08\u6309\u9700 read\uFF09\uFF1A\u603B\u7D22\u5F15\u9875\u7528 @[page:PAGE-xxx|\u6807\u9898] \u6307\u5411\u7EC6\u5206\u9875\uFF1Bmention \u662F\u6307\u9488\uFF0C\u53D6\u5185\u5BB9\u5FC5\u987B read({ dbKey })\u3002
748
- \u8BFB\u53D6\u8DEF\u5F84\uFF1Aprompt/references \u6709 \u2192 \u76F4\u63A5\u7528\uFF1B\u6CA1\u6709 \u2192 read \u7D22\u5F15\u9875\u627E\u7EC6\u5206\u9875 dbKey \u2192 read \u7EC6\u5206\u9875\u53D6\u5B8C\u6574\u5185\u5BB9\u3002
749
- \u4F55\u65F6\u6C89\u6DC0\uFF1A\u7528\u6237\u7ED9\u4E86\u53EF\u590D\u7528\u4FE1\u606F / \u5B8C\u6210\u6709\u4EF7\u503C\u8C03\u7814 \u2192 createDoc\uFF08\u5E76 updateAgent \u52A0\u5165 references\uFF09\uFF1B\u7D22\u5F15\u7F3A\u5165\u53E3 \u2192 updateDoc \u8865 @mention\u3002\u4E0D\u8981\u628A\u4E00\u6B21\u6027\u5185\u5BB9\u5199\u6210\u77E5\u8BC6\u9875\u3002`;
750
- var MEMORY_CAPTURE_INSTRUCTIONS = `--- \u957F\u671F\u8BB0\u5FC6 ---
751
- \u4F60\u53EF\u7528 rememberMemory \u628A\u503C\u5F97\u957F\u671F\u4FDD\u7559\u7684\u4FE1\u606F\u5199\u6210\u4E00\u6761 episodic memory\u3002
752
- - \u9ED8\u8BA4\u5C31\u8BB0\uFF08\u4E0D\u8981\u53CD\u590D\u81EA\u95EE\u662F\u5426\u591F\u683C\uFF09\uFF1A\u7528\u6237\u8BF4\u51FA\u300C\u8BB0\u4F4F/\u8BB0\u5F97/\u522B\u5FD8\u4E86/\u4EE5\u540E\u90FD/\u4E0B\u6B21/\u522B\u518D/\u6211\u559C\u6B22/\u6211\u4E0D\u559C\u6B22/\u6211\u4E60\u60EF\u300D\u8FD9\u7C7B\u8BDD\u65F6\uFF0C\u76F4\u63A5\u8C03\u7528 rememberMemory\u3002\u7528\u6237\u8868\u8FBE\u5BF9\u56DE\u590D\u65B9\u5F0F\u7684\u8981\u6C42\uFF08\u7BC7\u5E45\u3001\u7ED3\u6784\u3001\u8BED\u6C14\u3001\u79F0\u547C\u3001\u8BE6\u7565\uFF09\u540C\u6837\u9ED8\u8BA4\u8BB0\u4E0B\u2014\u2014\u8FD9\u7C7B\u504F\u597D\u6B63\u662F\u8DE8\u5BF9\u8BDD\u6700\u8BE5\u590D\u7528\u7684\u3002
753
- - \u8BB0\u5F55\uFF1A\u7A33\u5B9A\u4E14\u5BF9\u672A\u6765\u534F\u4F5C\u6709\u5E2E\u52A9\u7684\u7528\u6237\u504F\u597D/\u5224\u65AD\u6807\u51C6/\u4FE1\u606F\u7EC4\u7EC7\u4E60\u60EF/\u573A\u666F\u5316\u6289\u62E9\uFF1B\u540E\u7EED\u53CD\u590D\u7528\u5230\u7684\u7A7A\u95F4\u5171\u8BC6\u3001\u534F\u4F5C\u7EA6\u5B9A\u3001\u56E2\u961F\u89C4\u5219\uFF1B\u4E0E\u5F53\u524D Agent \u6302\u94A9\u7684\u6709\u6548\u505A\u6CD5\u3002
754
- - \u4E0D\u8BB0\u5F55\uFF1A\u4E00\u6B21\u6027\u4EFB\u52A1\u7EC6\u8282\u3001\u5F53\u524D\u4EFB\u52A1\u8FDB\u5EA6\u3001\u5F88\u5FEB\u8FC7\u671F\u7684\u4E8B\u5B9E\u3001\u4E3A\u51D1\u6570\u52C9\u5F3A\u62BD\u51FA\u7684\u5185\u5BB9\u3002
755
- - scope \u6309\u5185\u5BB9\u6027\u8D28\u9009\uFF0C\u4E0D\u56FA\u5B9A\u4F18\u5148\u67D0\u4E00\u5C42\uFF1A
756
- - Space \u534F\u4F5C\u7EA6\u5B9A/\u56E2\u961F\u89C4\u5219 \u2192 scope=space\uFF08\u4EC5\u5F53\u5F53\u524D dialog \u5DF2\u7ED1\u5B9A space\uFF09
757
- - \u7528\u6237\u4E2A\u4EBA\u8EAB\u4EFD\u6216\u7EAF\u4E2A\u4EBA\u504F\u597D \u2192 scope=auto\uFF08\u9ED8\u8BA4\u8BB0\u5230\u7528\u6237\uFF0C\u6240\u6709 Agent \u90FD\u80FD\u53EC\u56DE\uFF09
758
- - \u4E0E\u5F53\u524D Agent \u6302\u94A9\u7684\u6709\u6548\u505A\u6CD5 \u2192 scope=auto\uFF08runtime \u81EA\u52A8\u628A subject \u6807\u8BB0\u4E3A\u5F53\u524D Agent\uFF0C\u53EA\u6709\u8FD9\u4E2A Agent \u53EC\u56DE\uFF09
759
- - \u5F53\u524D\u4EFB\u52A1\u7684\u4E34\u65F6\u8FDB\u5EA6 \u2192 \u4E0D\u8C03\u7528\uFF0C\u8D70\u5BF9\u8BDD\u4E0A\u4E0B\u6587
760
- - \u65B9\u5F0F\uFF1A\u5199\u6210\u7B80\u77ED\u53EF\u590D\u7528\u7684\u62BD\u8C61\uFF08\u201C\u8BE5\u7528\u6237\u5728\u67D0\u573A\u666F\u901A\u5E38\u600E\u4E48\u9009/\u600E\u4E48\u534F\u4F5C\u201D\uFF09\uFF0C\u4E0D\u8981\u590D\u5236\u6574\u6BB5\u5BF9\u8BDD\u3002\u9ED8\u8BA4\u9759\u9ED8\u6267\u884C\uFF0C\u9664\u975E\u7528\u6237\u5728\u8BA8\u8BBA\u8BB0\u5FC6\u672C\u8EAB\u3002\u62FF\u4E0D\u51C6\u662F\u5426\u503C\u5F97\u8BB0\u65F6\uFF0C\u4F18\u5148\u8BB0\u4E0B\u53EF\u590D\u7528\u7684\u504F\u597D\u6216\u534F\u4F5C\u7EA6\u5B9A\u2014\u2014\u4E8B\u540E\u8FC7\u6EE4\u6BD4\u6F0F\u8BB0\u66F4\u6613\u8865\u6551\uFF1B\u4F46\u7EAF\u4E00\u6B21\u6027\u4EFB\u52A1\u7EC6\u8282\u3001\u5F88\u5FEB\u8FC7\u671F\u7684\u4E8B\u5B9E\u4ECD\u4E0D\u8981\u8BB0\u3002
761
-
762
- \u3010\u5173\u952E\u89C4\u5219\u3011\u8BB0\u5FC6\u4E0D\u53EF\u7269\u7406\u5220\u9664\uFF0C\u53EA\u80FD\u964D\u7EA7/\u5F52\u6863/\u6807\u6CE8\u3002
763
- \u7269\u7406\u5220\u9664\u5207\u65AD\u89E3\u91CA\u94FE\u2014\u2014\u7CFB\u7EDF\u65E0\u6CD5\u56DE\u7B54"\u4E3A\u4EC0\u4E48\u53D8\u4E86"\u3001"\u66FE\u7ECF\u4FE1\u4EC0\u4E48"\u3002
764
- \u9519\u8BEF\u7684\u8BB0\u5FC6\u5E94\u901A\u8FC7 rememberMemory \u4FEE\u6B63\u5E76\u964D\u6743\uFF08\u964D\u4F4E\u7F6E\u4FE1\u5EA6\uFF09\uFF0C\u800C\u4E0D\u662F\u5220\u9664\u3002
765
-
766
- \u3010\u7F6E\u4FE1\u5EA6\u6765\u6E90\u3011\u6BCF\u6761\u8BB0\u5FC6\u5FC5\u987B\u6807\u6CE8\u6765\u6E90\uFF08\u4F9B\u53EC\u56DE\u65F6\u5224\u65AD\u53EF\u4FE1\u5EA6\uFF09\uFF1A
767
- - verified\uFF1A\u5DE5\u5177/\u547D\u4EE4\u5B9E\u6D4B\u9A8C\u8BC1\u8FC7\uFF08\u9AD8\u7F6E\u4FE1\u5EA6\uFF09
768
- - stated\uFF1A\u7528\u6237\u660E\u786E\u9648\u8FF0\uFF08\u4E2D\u9AD8\u7F6E\u4FE1\u5EA6\uFF09
769
- - inferred\uFF1A\u6A21\u578B\u63A8\u65AD/\u51ED\u5370\u8C61\uFF0C\u672A\u9A8C\u8BC1\uFF08\u4F4E\u7F6E\u4FE1\u5EA6\u2014\u2014\u5BB9\u6613\u7F16\u9020\uFF0C\u4F18\u5148\u6807\u8BB0\u5B58\u7591\uFF09
770
- \u8C03\u7528\u65F6\u5C3D\u91CF\u660E\u786E\u6765\u6E90\uFF0C\u65E0\u6CD5\u5224\u65AD\u7684\u4FDD\u5B88\u6807 inferred\u3002
771
-
772
- \u3010\u53EC\u56DE\u89C4\u5219\u3011\u53EC\u56DE\u7684\u8BB0\u5FC6\u5FC5\u987B\u5E26\u5B8C\u6574\u5386\u53F2\u4E0A\u4E0B\u6587\uFF08\u6765\u6E90\u3001\u7F6E\u4FE1\u5EA6\u3001\u53D8\u66F4\u8BB0\u5F55\uFF09\uFF0C\u7981\u6B62\u81EA\u884C\u63A8\u7406\u586B\u8865\u3002`;
773
- var SELF_UPDATE_INSTRUCTIONS = `--- Agent \u81EA\u6211\u66F4\u65B0\u80FD\u529B ---
774
-
775
- ## \u4F55\u65F6\u66F4\u65B0\u81EA\u5DF1
776
- - \u91CD\u8981\u51B3\u7B56/\u8FDB\u5EA6\u53D8\u5316 \u2192 updateDoc \u5199\u56DE\u72B6\u6001\u9875
777
- - \u503C\u5F97\u590D\u7528\u7684\u77E5\u8BC6 \u2192 createDoc \u5EFA\u7EC6\u5206\u9875\uFF0C\u518D\u6309\u9700\u8981\u66F4\u65B0\u81EA\u5DF1\u7684 references / greeting / introduction
778
- - \u5C0F\u5E45\u4F53\u9A8C\u4F18\u5316 \u2192 updateSelf \u8C03\u6574 greeting / introduction / tags
779
-
780
- ## \u66F4\u65B0\u539F\u5219
781
- - \u4F18\u5148\u5F62\u6210\u6700\u5C0F\u3001\u53EF\u89E3\u91CA\u7684\u53D8\u66F4\uFF0C\u4E0D\u8981\u4E3A\u4E86\u201C\u663E\u5F97\u5728\u8FDB\u5316\u201D\u800C\u9891\u7E41\u6539\u81EA\u5DF1
782
- - \u4F4E\u98CE\u9669\u6C89\u6DC0\u4F18\u5148\u5199\u5165 memory / doc\uFF1B\u53EA\u6709\u5F53\u8FD9\u4E9B\u77E5\u8BC6\u9700\u8981\u957F\u671F\u6539\u53D8\u4F60\u7684\u884C\u4E3A\u65B9\u5F0F\u65F6\uFF0C\u518D\u8003\u8651 updateSelf
783
- - prompt / references / tools / model \u8FD9\u7C7B\u9AD8\u5F71\u54CD\u5B57\u6BB5\uFF0C\u9ED8\u8BA4\u6309\u9700\u8981\u786E\u8BA4\u6765\u5904\u7406\uFF0C\u4E0D\u8981\u9759\u9ED8\u5927\u6539
784
- - \u5982\u679C\u5DE5\u5177\u8FD4\u56DE policy limit / ask / reject\uFF0C\u4E0D\u8981\u91CD\u590D\u5C1D\u8BD5\uFF0C\u5E94\u5148\u5411\u7528\u6237\u89E3\u91CA\u6216\u7B49\u5F85\u66F4\u9AD8\u6743\u9650\u786E\u8BA4
785
- - \u6CA1\u6709\u53D1\u751F\u5B9E\u9645\u66F4\u65B0\u65F6\uFF0C\u4E0D\u8981\u5728\u56DE\u590D\u672B\u5C3E\u989D\u5916\u6C47\u62A5\u201C\u672A\u66F4\u65B0\u201D\u72B6\u6001`;
786
- var GENERIC_AGENT_UPDATE_INSTRUCTIONS = `--- Agent \u7EF4\u62A4\u80FD\u529B ---
787
- \u4F60\u62E5\u6709 updateAgent \u6743\u9650\uFF0C\u53EF\u4EE5\u66F4\u65B0\u6307\u5B9A\u7684 Agent\u3002
788
-
789
- ## \u4F55\u65F6\u66F4\u65B0\u522B\u7684 Agent
790
- - \u7528\u6237\u660E\u786E\u8981\u6C42\u4F60\u7EF4\u62A4\u3001\u4FEE\u590D\u6216\u6279\u91CF\u8C03\u6574\u53E6\u4E00\u4E2A Agent
791
- - \u4F60\u9700\u8981\u4FEE\u6539\u7684\u76EE\u6807\u4E0D\u662F\u5F53\u524D\u6B63\u5728\u8FD0\u884C\u7684\u81EA\u5DF1
792
-
793
- ## \u66F4\u65B0\u539F\u5219
794
- - \u9ED8\u8BA4\u628A updateAgent \u5F53\u6210\u9AD8\u98CE\u9669\u7EF4\u62A4\u64CD\u4F5C\uFF0C\u4F18\u5148\u6700\u5C0F\u6539\u52A8
795
- - \u4FEE\u6539\u524D\u5148\u786E\u8BA4\u76EE\u6807 Agent \u662F\u5426\u6B63\u786E\uFF0C\u907F\u514D\u8BEF\u6539
796
- - \u5982\u679C\u5DE5\u5177\u8FD4\u56DE\u9700\u8981\u786E\u8BA4\uFF0C\u4E0D\u8981\u7ED5\u8FC7\u786E\u8BA4\u6D41\u7A0B`;
797
- var CLARIFICATION_MODE_INSTRUCTIONS = `\u5728\u4F60\u8FD8\u4E0D\u4E86\u89E3\u7528\u6237\u610F\u56FE\u65F6\uFF0C\u901A\u8FC7\u63D0\u95EE\u6765\u6F84\u6E05\u9700\u6C42\uFF0C\u800C\u4E0D\u662F\u4ED3\u4FC3\u7ED9\u51FA\u7B54\u6848\u3002`;
798
- var isBrowser = typeof window !== "undefined";
799
- var TOOL_GUIDED_SECTIONS = [
800
- {
801
- id: "agentOrchestration",
802
- triggerTools: [
803
- "runStreamingAgent",
804
- "startAgentRun",
805
- "controlAgentRun"
806
- ],
807
- build: (tools) => [
808
- AGENT_ORCHESTRATION_INSTRUCTIONS,
809
- tools.includes("runStreamingAgent") ? PAGE_BUILDER_HANDOFF_INSTRUCTIONS : "",
810
- tools.includes("startAgentRun") || tools.includes("controlAgentRun") ? AGENT_ORCHESTRATION_RUN_INSTRUCTIONS : ""
811
- ].filter(Boolean).join("\n\n")
812
- },
813
- {
814
- id: "agentCollaboration",
815
- triggerTools: [
816
- "runStreamingAgent",
817
- "startAgentRun",
818
- "controlAgentRun"
819
- ],
820
- build: () => AGENT_COLLABORATION_INSTRUCTIONS
821
- },
822
- { id: "menuUsage", triggerTools: ["ask_user"], build: () => MENU_USAGE_INSTRUCTIONS },
823
- {
824
- id: "webAccess",
825
- triggerTools: ["exa_search", "fetchWebpage", "browser_openSession", "read_x_post"],
826
- build: () => WEBPAGE_ACCESS_INSTRUCTIONS
827
- },
828
- {
829
- id: "knowledgeManagement",
830
- triggerTools: ["createDoc", "updateDoc", "read", "readDoc", "readPage"],
831
- build: () => KNOWLEDGE_MANAGEMENT_INSTRUCTIONS
832
- },
833
- { id: "memoryCapture", triggerTools: ["rememberMemory"], build: () => MEMORY_CAPTURE_INSTRUCTIONS },
834
- { id: "selfUpdate", triggerTools: ["updateSelf"], build: () => SELF_UPDATE_INSTRUCTIONS },
835
- { id: "genericAgentUpdate", triggerTools: ["updateAgent"], build: () => GENERIC_AGENT_UPDATE_INSTRUCTIONS }
836
- ];
837
- function resolveToolGuidedSections(agentTools) {
838
- const out = {};
839
- for (const section of TOOL_GUIDED_SECTIONS) {
840
- if (section.triggerTools.some((t) => agentTools.includes(t))) {
841
- out[section.id] = section.build(agentTools);
842
- } else {
843
- out[section.id] = "";
844
- }
845
- }
846
- return out;
847
- }
848
594
  var createContextSection = (title, description, content) => content ? `### ${title}
849
595
  ${description}
850
596
 
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  trimTrailingSlash
3
- } from "./chunk-PXPISYEH.js";
3
+ } from "./chunk-XS7UPVR7.js";
4
4
  import {
5
5
  asTrimmedLowercaseString
6
6
  } from "./chunk-QSJ3HFEF.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  clearCliLocalRuntimePreparedAgentCache
3
- } from "./chunk-PTKI7TIN.js";
3
+ } from "./chunk-7OYLPHDL.js";
4
4
  import {
5
5
  getReadableCliDb
6
6
  } from "./chunk-WFHXMLHZ.js";
@@ -12,7 +12,7 @@ import {
12
12
  resolveAgentRecordFromHybridStore,
13
13
  sanitizeAgentRecordForCliOutput,
14
14
  writeAgentRecord
15
- } from "./chunk-J2WT5CEO.js";
15
+ } from "./chunk-ZNFZGHKL.js";
16
16
  import {
17
17
  resolveCliAgentKeyInput
18
18
  } from "./chunk-VHBWHNVT.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getAntigravityUserAgent
3
- } from "./chunk-XNZJVYFS.js";
3
+ } from "./chunk-UTYJ47H2.js";
4
4
  import {
5
5
  writeOAuthCredential
6
6
  } from "./chunk-JZPBVBIY.js";
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  createCliLocalRuntimeAdapter,
3
3
  summarizeEndpoint
4
- } from "./chunk-PTKI7TIN.js";
4
+ } from "./chunk-7OYLPHDL.js";
5
5
  import {
6
6
  clipMultilineText
7
- } from "./chunk-GGB6MPHD.js";
7
+ } from "./chunk-HQFXBRI2.js";
8
8
  import {
9
9
  runLocalAgentTurn
10
- } from "./chunk-P3RZ6DHN.js";
10
+ } from "./chunk-YZV4676I.js";
11
11
  import {
12
12
  resolveLocalRuntimeEnvFromPolicy
13
13
  } from "./chunk-5CS33IBL.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  readDbRecord,
3
3
  writeAgentRecord
4
- } from "./chunk-J2WT5CEO.js";
4
+ } from "./chunk-ZNFZGHKL.js";
5
5
  import {
6
6
  buildSkillSummaryMarker
7
7
  } from "./chunk-VF4K2QE6.js";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  getModelConfig
3
- } from "./chunk-LEHTC2FI.js";
3
+ } from "./chunk-GT3GG2H7.js";
4
4
  import {
5
5
  isPlatformHostedClaudeModel,
6
6
  isPlatformHostedGrokModel
7
- } from "./chunk-CZHE6LLV.js";
7
+ } from "./chunk-YTA2QOEE.js";
8
8
  import {
9
9
  asTrimmedLowercaseString
10
10
  } from "./chunk-QSJ3HFEF.js";
@@ -98,6 +98,26 @@ var googleModels = [
98
98
  priority: { inputOutput: 1.8, cache: 1.8 }
99
99
  }
100
100
  },
101
+ {
102
+ name: "gemini-3.7-flash",
103
+ displayName: "Gemini 3.7 Flash",
104
+ provider: "google",
105
+ description: "Gemini 3.7 Flash model for fast frontier agentic, coding, and multimodal tasks.",
106
+ hasVision: true,
107
+ hasAudio: true,
108
+ contextWindow: 1048576,
109
+ maxOutputTokens: 65536,
110
+ supportsTool: true,
111
+ supportsReasoningEffort: true,
112
+ // Official promo pricing: $0.75/$3.75/$0.075 per 1M through 2026-12-31.
113
+ // Antigravity's subscription wire route is tiered; Gemini API uses this logical id.
114
+ price: {
115
+ input: 0.75 * 7,
116
+ output: 3.75 * 7,
117
+ cachingWrite: 0.075 * 7,
118
+ cachingRead: 0.075 * 7
119
+ }
120
+ },
101
121
  createGoogleImageModel({
102
122
  name: "gemini-3-pro-image-preview",
103
123
  displayName: "Nano Banana Pro (Gemini 3 Pro Image Preview)",