@skj1724/oh-my-opencode 3.19.1 → 3.19.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agents/atlas.d.ts +1 -1
- package/dist/agents/atlas.test.d.ts +1 -0
- package/dist/agents/explore.test.d.ts +1 -0
- package/dist/agents/librarian.test.d.ts +1 -0
- package/dist/agents/metis.d.ts +1 -1
- package/dist/agents/metis.test.d.ts +1 -0
- package/dist/agents/momus.d.ts +1 -1
- package/dist/agents/multimodal-looker.test.d.ts +1 -0
- package/dist/agents/oracle.d.ts +1 -0
- package/dist/agents/oracle.test.d.ts +1 -0
- package/dist/agents/prometheus-prompt.d.ts +1 -1
- package/dist/agents/sisyphus.test.d.ts +1 -0
- package/dist/cli/index.js +1 -1
- package/dist/hooks/thinking-block-validator/index.test.d.ts +1 -0
- package/dist/index.js +250 -164
- package/dist/tools/background-task/constants.d.ts +3 -3
- package/dist/tools/call-omo-agent/constants.d.ts +1 -1
- package/dist/tools/session-manager/constants.d.ts +5 -5
- package/dist/tools/skill/constants.d.ts +2 -2
- package/dist/tools/skill-mcp/constants.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -15416,6 +15416,7 @@ var META_TYPES = new Set(["step-start", "step-finish"]);
|
|
|
15416
15416
|
var CONTENT_TYPES = new Set(["text", "tool", "tool_use", "tool_result"]);
|
|
15417
15417
|
|
|
15418
15418
|
// src/hooks/session-recovery/storage.ts
|
|
15419
|
+
var nextRecoveryBlockId = 0;
|
|
15419
15420
|
function generatePartId2() {
|
|
15420
15421
|
const timestamp = Date.now().toString(16);
|
|
15421
15422
|
const random = Math.random().toString(36).substring(2, 10);
|
|
@@ -15612,7 +15613,7 @@ function prependThinkingPart(sessionID, messageID) {
|
|
|
15612
15613
|
mkdirSync2(partDir, { recursive: true });
|
|
15613
15614
|
}
|
|
15614
15615
|
const previousThinking = findLastThinkingContent(sessionID, messageID);
|
|
15615
|
-
const partId = `
|
|
15616
|
+
const partId = `prt_${++nextRecoveryBlockId}_thinking`;
|
|
15616
15617
|
const part = {
|
|
15617
15618
|
id: partId,
|
|
15618
15619
|
sessionID,
|
|
@@ -20268,6 +20269,7 @@ function createInteractiveBashSessionHook(_ctx) {
|
|
|
20268
20269
|
};
|
|
20269
20270
|
}
|
|
20270
20271
|
// src/hooks/thinking-block-validator/index.ts
|
|
20272
|
+
var nextThinkingBlockId = 0;
|
|
20271
20273
|
function isExtendedThinkingModel(modelID) {
|
|
20272
20274
|
if (!modelID)
|
|
20273
20275
|
return false;
|
|
@@ -20317,7 +20319,7 @@ function prependThinkingBlock(message, thinkingContent) {
|
|
|
20317
20319
|
}
|
|
20318
20320
|
const thinkingPart = {
|
|
20319
20321
|
type: "thinking",
|
|
20320
|
-
id: `
|
|
20322
|
+
id: `prt_${++nextThinkingBlockId}_synthetic_thinking`,
|
|
20321
20323
|
sessionID: message.info.sessionID || "",
|
|
20322
20324
|
messageID: message.info.id,
|
|
20323
20325
|
thinking: thinkingContent,
|
|
@@ -21431,12 +21433,12 @@ git log --oneline $(git merge-base HEAD main 2>/dev/null || git merge-base HEAD
|
|
|
21431
21433
|
|
|
21432
21434
|
\`\`\`
|
|
21433
21435
|
\u7EDF\u8BA1 git log -30 \u7684\u7ED3\u679C\uFF1A
|
|
21434
|
-
- \u542B\
|
|
21436
|
+
- \u542B\u4E2D\u6587\u5B57\u7B26\uFF1AN \u4E2A\u63D0\u4EA4
|
|
21435
21437
|
- \u4EC5\u82F1\u6587\uFF1AM \u4E2A\u63D0\u4EA4
|
|
21436
21438
|
- \u6DF7\u5408\uFF1AK \u4E2A\u63D0\u4EA4
|
|
21437
21439
|
|
|
21438
21440
|
\u51B3\u7B56\uFF1A
|
|
21439
|
-
- \u5982\u679C\
|
|
21441
|
+
- \u5982\u679C\u4E2D\u6587 >= 50% -> \u4E2D\u6587
|
|
21440
21442
|
- \u5982\u679C\u82F1\u6587 >= 50% -> \u82F1\u6587
|
|
21441
21443
|
- \u5982\u679C\u6DF7\u5408 -> \u4F7F\u7528\u591A\u6570\u8BED\u8A00
|
|
21442
21444
|
\`\`\`
|
|
@@ -21471,8 +21473,8 @@ short_count = <=3 \u4E2A\u8BCD\u7684\u63D0\u4EA4
|
|
|
21471
21473
|
======================
|
|
21472
21474
|
\u5206\u6790\u6765\u6E90\uFF1Agit log \u7684 30 \u6761\u63D0\u4EA4
|
|
21473
21475
|
|
|
21474
|
-
\u8BED\u8A00\uFF1A[\
|
|
21475
|
-
- \
|
|
21476
|
+
\u8BED\u8A00\uFF1A[\u4E2D\u6587 | \u82F1\u6587]
|
|
21477
|
+
- \u4E2D\u6587\u63D0\u4EA4\uFF1AN (X%)
|
|
21476
21478
|
- \u82F1\u6587\u63D0\u4EA4\uFF1AM (Y%)
|
|
21477
21479
|
|
|
21478
21480
|
\u98CE\u683C\uFF1A[SEMANTIC | PLAIN | SENTENCE | SHORT]
|
|
@@ -21827,15 +21829,9 @@ git log -1 --oneline
|
|
|
21827
21829
|
**\u57FA\u4E8E\u9636\u6BB5 1 \u7684\u63D0\u4EA4\u914D\u7F6E\uFF1A**
|
|
21828
21830
|
|
|
21829
21831
|
\`\`\`
|
|
21830
|
-
\u5982\u679C\u98CE\u683C == SEMANTIC \u4E14\u8BED\u8A00 == \u97E9\u6587\uFF1A
|
|
21831
|
-
-> "feat: \uB85C\uADF8\uC778 \uAE30\uB2A5 \uCD94\uAC00"
|
|
21832
|
-
|
|
21833
21832
|
\u5982\u679C\u98CE\u683C == SEMANTIC \u4E14\u8BED\u8A00 == \u82F1\u6587\uFF1A
|
|
21834
21833
|
-> "feat: add login feature"
|
|
21835
21834
|
|
|
21836
|
-
\u5982\u679C\u98CE\u683C == PLAIN \u4E14\u8BED\u8A00 == \u97E9\u6587\uFF1A
|
|
21837
|
-
-> "\uB85C\uADF8\uC778 \uAE30\uB2A5 \uCD94\uAC00"
|
|
21838
|
-
|
|
21839
21835
|
\u5982\u679C\u98CE\u683C == PLAIN \u4E14\u8BED\u8A00 == \u82F1\u6587\uFF1A
|
|
21840
21836
|
-> "Add login feature"
|
|
21841
21837
|
|
|
@@ -40828,31 +40824,31 @@ var PART_STORAGE4 = join51(OPENCODE_STORAGE9, "part");
|
|
|
40828
40824
|
var SESSION_STORAGE = join51(OPENCODE_STORAGE9, "session");
|
|
40829
40825
|
var TODO_DIR2 = join51(getClaudeConfigDir(), "todos");
|
|
40830
40826
|
var TRANSCRIPT_DIR2 = join51(getClaudeConfigDir(), "transcripts");
|
|
40831
|
-
var SESSION_LIST_DESCRIPTION =
|
|
40827
|
+
var SESSION_LIST_DESCRIPTION = `\u5217\u51FA\u6240\u6709 OpenCode session\uFF0C\u652F\u6301\u53EF\u9009\u8FC7\u6EE4\u3002
|
|
40832
40828
|
|
|
40833
|
-
|
|
40829
|
+
\u8FD4\u56DE\u53EF\u7528\u7684 session ID \u5217\u8868\uFF0C\u5305\u542B\u6D88\u606F\u6570\u91CF\u3001\u65E5\u671F\u8303\u56F4\u548C\u4F7F\u7528\u8FC7\u7684 agents \u7B49\u5143\u6570\u636E\u3002
|
|
40834
40830
|
|
|
40835
|
-
|
|
40836
|
-
- limit
|
|
40837
|
-
- from_date
|
|
40838
|
-
- to_date
|
|
40831
|
+
\u53C2\u6570\uFF1A
|
|
40832
|
+
- limit\uFF08\u53EF\u9009\uFF09\uFF1A\u6700\u5927\u8FD4\u56DE session \u6570\u91CF
|
|
40833
|
+
- from_date\uFF08\u53EF\u9009\uFF09\uFF1A\u8FC7\u6EE4\u6B64\u65E5\u671F\u4E4B\u540E\u7684 session\uFF08ISO 8601 \u683C\u5F0F\uFF09
|
|
40834
|
+
- to_date\uFF08\u53EF\u9009\uFF09\uFF1A\u8FC7\u6EE4\u6B64\u65E5\u671F\u4E4B\u524D\u7684 session\uFF08ISO 8601 \u683C\u5F0F\uFF09
|
|
40839
40835
|
|
|
40840
|
-
|
|
40836
|
+
\u8F93\u51FA\u793A\u4F8B\uFF1A
|
|
40841
40837
|
| Session ID | Messages | First | Last | Agents |
|
|
40842
40838
|
|------------|----------|-------|------|--------|
|
|
40843
40839
|
| ses_abc123 | 45 | 2025-12-20 | 2025-12-24 | build, oracle |
|
|
40844
40840
|
| ses_def456 | 12 | 2025-12-19 | 2025-12-19 | build |`;
|
|
40845
|
-
var SESSION_READ_DESCRIPTION =
|
|
40841
|
+
var SESSION_READ_DESCRIPTION = `\u8BFB\u53D6 OpenCode session \u4E2D\u7684\u6D88\u606F\u548C\u5386\u53F2\u8BB0\u5F55\u3002
|
|
40846
40842
|
|
|
40847
|
-
|
|
40843
|
+
\u8FD4\u56DE\u683C\u5F0F\u5316\u7684 session \u6D88\u606F\u89C6\u56FE\uFF0C\u5305\u542B\u89D2\u8272\u3001\u65F6\u95F4\u6233\u548C\u5185\u5BB9\u3002\u53EF\u9009\u62E9\u5305\u542B todo \u548C transcript \u6570\u636E\u3002
|
|
40848
40844
|
|
|
40849
|
-
|
|
40850
|
-
- session_id
|
|
40851
|
-
- include_todos
|
|
40852
|
-
- include_transcript
|
|
40853
|
-
- limit
|
|
40845
|
+
\u53C2\u6570\uFF1A
|
|
40846
|
+
- session_id\uFF08\u5FC5\u586B\uFF09\uFF1A\u8981\u8BFB\u53D6\u7684 Session ID
|
|
40847
|
+
- include_todos\uFF08\u53EF\u9009\uFF09\uFF1A\u5305\u542B todo \u5217\u8868\uFF08\u5982\u679C\u6709\u7684\u8BDD\uFF09\uFF08\u9ED8\u8BA4\u503C: false\uFF09
|
|
40848
|
+
- include_transcript\uFF08\u53EF\u9009\uFF09\uFF1A\u5305\u542B transcript \u65E5\u5FD7\uFF08\u5982\u679C\u6709\u7684\u8BDD\uFF09\uFF08\u9ED8\u8BA4\u503C: false\uFF09
|
|
40849
|
+
- limit\uFF08\u53EF\u9009\uFF09\uFF1A\u6700\u5927\u8FD4\u56DE\u6D88\u606F\u6570\u91CF\uFF08\u9ED8\u8BA4\u503C: \u5168\u90E8\uFF09
|
|
40854
40850
|
|
|
40855
|
-
|
|
40851
|
+
\u8F93\u51FA\u793A\u4F8B\uFF1A
|
|
40856
40852
|
Session: ses_abc123
|
|
40857
40853
|
Messages: 45
|
|
40858
40854
|
Date Range: 2025-12-20 to 2025-12-24
|
|
@@ -40862,18 +40858,18 @@ Hello, can you help me with...
|
|
|
40862
40858
|
|
|
40863
40859
|
[Message 2] assistant (2025-12-20 10:30:15)
|
|
40864
40860
|
Of course! Let me help you with...`;
|
|
40865
|
-
var SESSION_SEARCH_DESCRIPTION =
|
|
40861
|
+
var SESSION_SEARCH_DESCRIPTION = `\u5728 OpenCode session \u6D88\u606F\u4E2D\u641C\u7D22\u5185\u5BB9\u3002
|
|
40866
40862
|
|
|
40867
|
-
|
|
40863
|
+
\u5BF9 session \u6D88\u606F\u6267\u884C\u5168\u6587\u641C\u7D22\uFF0C\u8FD4\u56DE\u5339\u914D\u7684\u6458\u8981\u53CA\u4E0A\u4E0B\u6587\u3002
|
|
40868
40864
|
|
|
40869
|
-
|
|
40870
|
-
- query
|
|
40871
|
-
- session_id
|
|
40872
|
-
- case_sensitive
|
|
40873
|
-
- limit
|
|
40865
|
+
\u53C2\u6570\uFF1A
|
|
40866
|
+
- query\uFF08\u5FC5\u586B\uFF09\uFF1A\u641C\u7D22\u67E5\u8BE2\u5B57\u7B26\u4E32
|
|
40867
|
+
- session_id\uFF08\u53EF\u9009\uFF09\uFF1A\u4EC5\u5728\u6307\u5B9A session \u4E2D\u641C\u7D22\uFF08\u9ED8\u8BA4\u503C: \u5168\u90E8 session\uFF09
|
|
40868
|
+
- case_sensitive\uFF08\u53EF\u9009\uFF09\uFF1A\u533A\u5206\u5927\u5C0F\u5199\u641C\u7D22\uFF08\u9ED8\u8BA4\u503C: false\uFF09
|
|
40869
|
+
- limit\uFF08\u53EF\u9009\uFF09\uFF1A\u6700\u5927\u8FD4\u56DE\u7ED3\u679C\u6570\u91CF\uFF08\u9ED8\u8BA4\u503C: 20\uFF09
|
|
40874
40870
|
|
|
40875
|
-
|
|
40876
|
-
|
|
40871
|
+
\u8F93\u51FA\u793A\u4F8B\uFF1A
|
|
40872
|
+
\u5728 2 \u4E2A session \u4E2D\u627E\u5230 3 \u6761\u5339\u914D\uFF1A
|
|
40877
40873
|
|
|
40878
40874
|
[ses_abc123] Message msg_001 (user)
|
|
40879
40875
|
...implement the **session manager** tool...
|
|
@@ -40883,14 +40879,14 @@ Found 3 matches across 2 sessions:
|
|
|
40883
40879
|
|
|
40884
40880
|
[ses_def456] Message msg_012 (user)
|
|
40885
40881
|
...use the **session manager** to find...`;
|
|
40886
|
-
var SESSION_INFO_DESCRIPTION =
|
|
40882
|
+
var SESSION_INFO_DESCRIPTION = `\u83B7\u53D6 OpenCode session \u7684\u5143\u6570\u636E\u548C\u7EDF\u8BA1\u4FE1\u606F\u3002
|
|
40887
40883
|
|
|
40888
|
-
|
|
40884
|
+
\u8FD4\u56DE session \u7684\u8BE6\u7EC6\u4FE1\u606F\uFF0C\u5305\u62EC\u6D88\u606F\u6570\u91CF\u3001\u65E5\u671F\u8303\u56F4\u3001\u4F7F\u7528\u8FC7\u7684 agents \u548C\u53EF\u7528\u7684\u6570\u636E\u6E90\u3002
|
|
40889
40885
|
|
|
40890
|
-
|
|
40891
|
-
- session_id
|
|
40886
|
+
\u53C2\u6570\uFF1A
|
|
40887
|
+
- session_id\uFF08\u5FC5\u586B\uFF09\uFF1A\u8981\u67E5\u770B\u7684 Session ID
|
|
40892
40888
|
|
|
40893
|
-
|
|
40889
|
+
\u8F93\u51FA\u793A\u4F8B\uFF1A
|
|
40894
40890
|
Session ID: ses_abc123
|
|
40895
40891
|
Messages: 45
|
|
40896
40892
|
Date Range: 2025-12-20 10:30:00 to 2025-12-24 15:45:30
|
|
@@ -41562,11 +41558,11 @@ The Bash tool can execute these commands directly. Do NOT retry with interactive
|
|
|
41562
41558
|
}
|
|
41563
41559
|
});
|
|
41564
41560
|
// src/tools/skill/constants.ts
|
|
41565
|
-
var TOOL_DESCRIPTION_NO_SKILLS = "
|
|
41566
|
-
var TOOL_DESCRIPTION_PREFIX2 =
|
|
41561
|
+
var TOOL_DESCRIPTION_NO_SKILLS = "\u52A0\u8F7D skill \u4EE5\u83B7\u53D6\u7279\u5B9A\u4EFB\u52A1\u7684\u8BE6\u7EC6\u8BF4\u660E\u3002\u5F53\u524D\u6CA1\u6709\u53EF\u7528\u7684 skills\u3002";
|
|
41562
|
+
var TOOL_DESCRIPTION_PREFIX2 = `\u52A0\u8F7D skill \u4EE5\u83B7\u53D6\u7279\u5B9A\u4EFB\u52A1\u7684\u8BE6\u7EC6\u8BF4\u660E\u3002
|
|
41567
41563
|
|
|
41568
|
-
Skills
|
|
41569
|
-
|
|
41564
|
+
Skills \u63D0\u4F9B\u4E13\u4E1A\u77E5\u8BC6\u548C\u5206\u6B65\u6307\u5BFC\u3002
|
|
41565
|
+
\u5F53\u4EFB\u52A1\u4E0E\u53EF\u7528 skill \u7684\u63CF\u8FF0\u76F8\u5339\u914D\u65F6\u4F7F\u7528\u6B64\u5DE5\u5177\u3002`;
|
|
41570
41566
|
// src/tools/skill/tools.ts
|
|
41571
41567
|
import { dirname as dirname13 } from "path";
|
|
41572
41568
|
function loadedSkillToInfo(skill) {
|
|
@@ -41738,7 +41734,7 @@ function createSkillTool(options = {}) {
|
|
|
41738
41734
|
}
|
|
41739
41735
|
var skill = createSkillTool();
|
|
41740
41736
|
// src/tools/skill-mcp/constants.ts
|
|
41741
|
-
var SKILL_MCP_DESCRIPTION =
|
|
41737
|
+
var SKILL_MCP_DESCRIPTION = `\u4ECE skill \u5D4C\u5165\u7684 MCP \u8C03\u7528 MCP server \u64CD\u4F5C\u3002\u9700\u8981 mcp_name \u5E76\u6070\u597D\u9009\u62E9\u4EE5\u4E0B\u4E4B\u4E00\uFF1Atool_name\u3001resource_name \u6216 prompt_name\u3002`;
|
|
41742
41738
|
// src/tools/skill-mcp/tools.ts
|
|
41743
41739
|
function validateOperationParams(args) {
|
|
41744
41740
|
const operations = [];
|
|
@@ -41886,8 +41882,8 @@ function createSkillMcpTool(options) {
|
|
|
41886
41882
|
});
|
|
41887
41883
|
}
|
|
41888
41884
|
// src/tools/background-task/constants.ts
|
|
41889
|
-
var BACKGROUND_OUTPUT_DESCRIPTION =
|
|
41890
|
-
var BACKGROUND_CANCEL_DESCRIPTION =
|
|
41885
|
+
var BACKGROUND_OUTPUT_DESCRIPTION = `\u83B7\u53D6\u540E\u53F0\u4EFB\u52A1\u7684\u8F93\u51FA\u3002\u7CFB\u7EDF\u5728\u4EFB\u52A1\u5B8C\u6210\u540E\u4F1A\u901A\u77E5\uFF0C\u56E0\u6B64 block=true \u5F88\u5C11\u9700\u8981\u3002`;
|
|
41886
|
+
var BACKGROUND_CANCEL_DESCRIPTION = `\u53D6\u6D88\u6B63\u5728\u8FD0\u884C\u7684\u540E\u53F0\u4EFB\u52A1\u3002\u4F7F\u7528 all=true \u53EF\u5728\u6700\u7EC8\u56DE\u7B54\u524D\u53D6\u6D88\u6240\u6709\u4EFB\u52A1\u3002`;
|
|
41891
41887
|
|
|
41892
41888
|
// src/tools/background-task/tools.ts
|
|
41893
41889
|
init_logger();
|
|
@@ -42217,11 +42213,11 @@ Status: ${task.status}`;
|
|
|
42217
42213
|
}
|
|
42218
42214
|
// src/tools/call-omo-agent/constants.ts
|
|
42219
42215
|
var ALLOWED_AGENTS = ["explore", "librarian"];
|
|
42220
|
-
var CALL_OMO_AGENT_DESCRIPTION =
|
|
42216
|
+
var CALL_OMO_AGENT_DESCRIPTION = `\u542F\u52A8 explore/librarian agent\u3002run_in_background \u5FC5\u586B\uFF08true=\u5F02\u6B65\u8FD4\u56DE task_id\uFF0Cfalse=\u540C\u6B65\uFF09\u3002
|
|
42221
42217
|
|
|
42222
|
-
|
|
42218
|
+
\u53EF\u7528\u7684 agent\uFF1A{agents}
|
|
42223
42219
|
|
|
42224
|
-
|
|
42220
|
+
\u4F20\u5165 \`session_id=<id>\` \u53EF\u7EE7\u7EED\u4E4B\u524D\u7684 agent\uFF0C\u4FDD\u7559\u5B8C\u6574\u4E0A\u4E0B\u6587\u3002Prompts \u5FC5\u987B\u4E3A\u4E2D\u6587\u3002\u4F7F\u7528 \`background_output\` \u83B7\u53D6\u5F02\u6B65\u7ED3\u679C\u3002`;
|
|
42225
42221
|
// src/tools/call-omo-agent/tools.ts
|
|
42226
42222
|
import { existsSync as existsSync44, readdirSync as readdirSync14 } from "fs";
|
|
42227
42223
|
import { join as join53 } from "path";
|
|
@@ -42241,29 +42237,29 @@ function getMessageDir8(sessionID) {
|
|
|
42241
42237
|
return null;
|
|
42242
42238
|
}
|
|
42243
42239
|
function createCallOmoAgent(ctx, backgroundManager) {
|
|
42244
|
-
const agentDescriptions = ALLOWED_AGENTS.map((name) => `- ${name}
|
|
42240
|
+
const agentDescriptions = ALLOWED_AGENTS.map((name) => `- ${name}\uFF1A\u4E13\u95E8\u5904\u7406 ${name} \u4EFB\u52A1\u7684 agent`).join(`
|
|
42245
42241
|
`);
|
|
42246
42242
|
const description = CALL_OMO_AGENT_DESCRIPTION.replace("{agents}", agentDescriptions);
|
|
42247
42243
|
return tool({
|
|
42248
42244
|
description,
|
|
42249
42245
|
args: {
|
|
42250
|
-
description: tool.schema.string().describe("
|
|
42251
|
-
prompt: tool.schema.string().describe("
|
|
42252
|
-
subagent_type: tool.schema.string().describe("
|
|
42253
|
-
run_in_background: tool.schema.boolean().describe("
|
|
42254
|
-
session_id: tool.schema.string().describe("
|
|
42246
|
+
description: tool.schema.string().describe("\u4EFB\u52A1\u7684\u7B80\u77ED\u63CF\u8FF0\uFF083-5 \u4E2A\u8BCD\uFF09"),
|
|
42247
|
+
prompt: tool.schema.string().describe("agent \u9700\u8981\u6267\u884C\u7684\u4EFB\u52A1"),
|
|
42248
|
+
subagent_type: tool.schema.string().describe("\u6B64\u4EFB\u52A1\u4F7F\u7528\u7684\u4E13\u4E1A agent \u7C7B\u578B\uFF08\u4EC5\u652F\u6301 explore \u6216 librarian\uFF09"),
|
|
42249
|
+
run_in_background: tool.schema.boolean().describe("\u5FC5\u586B\u3002true\uFF1A\u5F02\u6B65\u8FD0\u884C\uFF08\u4F7F\u7528 background_output \u83B7\u53D6\u7ED3\u679C\uFF09\uFF0Cfalse\uFF1A\u540C\u6B65\u8FD0\u884C\u5E76\u7B49\u5F85\u5B8C\u6210"),
|
|
42250
|
+
session_id: tool.schema.string().describe("\u8981\u7EE7\u7EED\u7684\u73B0\u6709 Task session").optional()
|
|
42255
42251
|
},
|
|
42256
42252
|
async execute(args, toolContext) {
|
|
42257
42253
|
const toolCtx = toolContext;
|
|
42258
42254
|
log(`[call_omo_agent] Starting with agent: ${args.subagent_type}, background: ${args.run_in_background}`);
|
|
42259
42255
|
if (!includesCaseInsensitive([...ALLOWED_AGENTS], args.subagent_type)) {
|
|
42260
|
-
return
|
|
42256
|
+
return `\u9519\u8BEF\uFF1A\u65E0\u6548\u7684 agent \u7C7B\u578B"${args.subagent_type}"\u3002\u4EC5\u5141\u8BB8 ${ALLOWED_AGENTS.join("\u3001")}\u3002`;
|
|
42261
42257
|
}
|
|
42262
42258
|
const normalizedAgent = args.subagent_type.toLowerCase();
|
|
42263
42259
|
args = { ...args, subagent_type: normalizedAgent };
|
|
42264
42260
|
if (args.run_in_background) {
|
|
42265
42261
|
if (args.session_id) {
|
|
42266
|
-
return
|
|
42262
|
+
return `\u9519\u8BEF\uFF1A\u540E\u53F0\u6A21\u5F0F\u4E0D\u652F\u6301 session_id\u3002\u8BF7\u4F7F\u7528 run_in_background=false \u7EE7\u7EED\u73B0\u6709 session\u3002`;
|
|
42267
42263
|
}
|
|
42268
42264
|
return await executeBackground(args, toolCtx, backgroundManager);
|
|
42269
42265
|
}
|
|
@@ -42299,7 +42295,7 @@ async function executeBackground(args, toolContext, manager) {
|
|
|
42299
42295
|
title: args.description,
|
|
42300
42296
|
metadata: { sessionId: task.sessionID }
|
|
42301
42297
|
});
|
|
42302
|
-
return
|
|
42298
|
+
return `\u540E\u53F0 agent \u4EFB\u52A1\u5DF2\u6210\u529F\u542F\u52A8\u3002
|
|
42303
42299
|
|
|
42304
42300
|
Task ID: ${task.id}
|
|
42305
42301
|
Session ID: ${task.sessionID}
|
|
@@ -42307,13 +42303,13 @@ Description: ${task.description}
|
|
|
42307
42303
|
Agent: ${task.agent} (subagent)
|
|
42308
42304
|
Status: ${task.status}
|
|
42309
42305
|
|
|
42310
|
-
|
|
42311
|
-
|
|
42312
|
-
- block=false
|
|
42313
|
-
- block=true
|
|
42306
|
+
\u4EFB\u52A1\u5B8C\u6210\u540E\u7CFB\u7EDF\u4F1A\u901A\u77E5\u4F60\u3002
|
|
42307
|
+
\u4F7F\u7528 \`background_output\` \u5DE5\u5177\u5E76\u4F20\u5165 task_id="${task.id}" \u6765\u67E5\u770B\u8FDB\u5EA6\uFF1A
|
|
42308
|
+
- block=false\uFF08\u9ED8\u8BA4\uFF09\uFF1A\u7ACB\u5373\u68C0\u67E5\u72B6\u6001 \u2014 \u8FD4\u56DE\u5B8C\u6574\u7684\u8FDB\u5EA6\u4FE1\u606F
|
|
42309
|
+
- block=true\uFF1A\u7B49\u5F85\u5B8C\u6210\uFF08\u7531\u4E8E\u7CFB\u7EDF\u4F1A\u81EA\u52A8\u901A\u77E5\uFF0C\u901A\u5E38\u4E0D\u9700\u8981\uFF09`;
|
|
42314
42310
|
} catch (error45) {
|
|
42315
42311
|
const message = error45 instanceof Error ? error45.message : String(error45);
|
|
42316
|
-
return
|
|
42312
|
+
return `\u542F\u52A8\u540E\u53F0 agent \u4EFB\u52A1\u5931\u8D25\uFF1A${message}`;
|
|
42317
42313
|
}
|
|
42318
42314
|
}
|
|
42319
42315
|
async function executeSync(args, toolContext, ctx) {
|
|
@@ -42325,7 +42321,7 @@ async function executeSync(args, toolContext, ctx) {
|
|
|
42325
42321
|
});
|
|
42326
42322
|
if (sessionResult.error) {
|
|
42327
42323
|
log(`[call_omo_agent] Session get error:`, sessionResult.error);
|
|
42328
|
-
return
|
|
42324
|
+
return `\u9519\u8BEF\uFF1A\u83B7\u53D6\u73B0\u6709 session \u5931\u8D25\uFF1A${sessionResult.error}`;
|
|
42329
42325
|
}
|
|
42330
42326
|
sessionID = args.session_id;
|
|
42331
42327
|
} else {
|
|
@@ -42349,7 +42345,7 @@ async function executeSync(args, toolContext, ctx) {
|
|
|
42349
42345
|
});
|
|
42350
42346
|
if (createResult.error) {
|
|
42351
42347
|
log(`[call_omo_agent] Session create error:`, createResult.error);
|
|
42352
|
-
return
|
|
42348
|
+
return `\u9519\u8BEF\uFF1A\u521B\u5EFA session \u5931\u8D25\uFF1A${createResult.error}`;
|
|
42353
42349
|
}
|
|
42354
42350
|
sessionID = createResult.data.id;
|
|
42355
42351
|
log(`[call_omo_agent] Created session: ${sessionID}`);
|
|
@@ -42377,13 +42373,13 @@ async function executeSync(args, toolContext, ctx) {
|
|
|
42377
42373
|
const errorMessage = error45 instanceof Error ? error45.message : String(error45);
|
|
42378
42374
|
log(`[call_omo_agent] Prompt error:`, errorMessage);
|
|
42379
42375
|
if (errorMessage.includes("agent.name") || errorMessage.includes("undefined")) {
|
|
42380
|
-
return
|
|
42376
|
+
return `\u9519\u8BEF\uFF1AAgent "${args.subagent_type}" \u672A\u627E\u5230\u3002\u8BF7\u786E\u8BA4\u8BE5 agent \u5DF2\u5728 opencode.json \u4E2D\u6CE8\u518C\u6216\u7531\u63D2\u4EF6\u63D0\u4F9B\u3002
|
|
42381
42377
|
|
|
42382
42378
|
<task_metadata>
|
|
42383
42379
|
session_id: ${sessionID}
|
|
42384
42380
|
</task_metadata>`;
|
|
42385
42381
|
}
|
|
42386
|
-
return
|
|
42382
|
+
return `\u9519\u8BEF\uFF1A\u53D1\u9001 prompt \u5931\u8D25\uFF1A${errorMessage}
|
|
42387
42383
|
|
|
42388
42384
|
<task_metadata>
|
|
42389
42385
|
session_id: ${sessionID}
|
|
@@ -42399,7 +42395,7 @@ session_id: ${sessionID}
|
|
|
42399
42395
|
while (Date.now() - pollStart < MAX_POLL_TIME_MS) {
|
|
42400
42396
|
if (toolContext.abort?.aborted) {
|
|
42401
42397
|
log(`[call_omo_agent] Aborted by user`);
|
|
42402
|
-
return
|
|
42398
|
+
return `\u4EFB\u52A1\u5DF2\u4E2D\u6B62\u3002
|
|
42403
42399
|
|
|
42404
42400
|
<task_metadata>
|
|
42405
42401
|
session_id: ${sessionID}
|
|
@@ -42430,7 +42426,7 @@ session_id: ${sessionID}
|
|
|
42430
42426
|
}
|
|
42431
42427
|
if (Date.now() - pollStart >= MAX_POLL_TIME_MS) {
|
|
42432
42428
|
log(`[call_omo_agent] Timeout reached`);
|
|
42433
|
-
return
|
|
42429
|
+
return `\u9519\u8BEF\uFF1AAgent \u4EFB\u52A1\u5728 5 \u5206\u949F\u540E\u8D85\u65F6\u3002
|
|
42434
42430
|
|
|
42435
42431
|
<task_metadata>
|
|
42436
42432
|
session_id: ${sessionID}
|
|
@@ -42441,7 +42437,7 @@ session_id: ${sessionID}
|
|
|
42441
42437
|
});
|
|
42442
42438
|
if (messagesResult.error) {
|
|
42443
42439
|
log(`[call_omo_agent] Messages error:`, messagesResult.error);
|
|
42444
|
-
return
|
|
42440
|
+
return `\u9519\u8BEF\uFF1A\u83B7\u53D6\u6D88\u606F\u5931\u8D25\uFF1A${messagesResult.error}`;
|
|
42445
42441
|
}
|
|
42446
42442
|
const messages = messagesResult.data;
|
|
42447
42443
|
log(`[call_omo_agent] Got ${messages.length} messages`);
|
|
@@ -42449,7 +42445,7 @@ session_id: ${sessionID}
|
|
|
42449
42445
|
if (relevantMessages.length === 0) {
|
|
42450
42446
|
log(`[call_omo_agent] No assistant or tool messages found`);
|
|
42451
42447
|
log(`[call_omo_agent] All messages:`, JSON.stringify(messages, null, 2));
|
|
42452
|
-
return
|
|
42448
|
+
return `\u9519\u8BEF\uFF1A\u672A\u627E\u5230 assistant \u6216 tool \u7684\u54CD\u5E94
|
|
42453
42449
|
|
|
42454
42450
|
<task_metadata>
|
|
42455
42451
|
session_id: ${sessionID}
|
|
@@ -42463,7 +42459,7 @@ session_id: ${sessionID}
|
|
|
42463
42459
|
});
|
|
42464
42460
|
const newMessages = consumeNewMessages(sessionID, sortedMessages);
|
|
42465
42461
|
if (newMessages.length === 0) {
|
|
42466
|
-
return
|
|
42462
|
+
return `\u81EA\u4E0A\u6B21\u68C0\u67E5\u4EE5\u6765\u65E0\u65B0\u8F93\u51FA\u3002
|
|
42467
42463
|
|
|
42468
42464
|
<task_metadata>
|
|
42469
42465
|
session_id: ${sessionID}
|
|
@@ -42841,9 +42837,9 @@ function formatDetailedError(error45, ctx) {
|
|
|
42841
42837
|
const message = error45 instanceof Error ? error45.message : String(error45);
|
|
42842
42838
|
const stack = error45 instanceof Error ? error45.stack : undefined;
|
|
42843
42839
|
const lines = [
|
|
42844
|
-
`${ctx.operation}
|
|
42840
|
+
`${ctx.operation} \u5931\u8D25`,
|
|
42845
42841
|
"",
|
|
42846
|
-
|
|
42842
|
+
`**\u9519\u8BEF**: ${message}`
|
|
42847
42843
|
];
|
|
42848
42844
|
if (ctx.sessionID) {
|
|
42849
42845
|
lines.push(`**Session ID**: ${ctx.sessionID}`);
|
|
@@ -42852,10 +42848,10 @@ function formatDetailedError(error45, ctx) {
|
|
|
42852
42848
|
lines.push(`**Agent**: ${ctx.agent}${ctx.category ? ` (category: ${ctx.category})` : ""}`);
|
|
42853
42849
|
}
|
|
42854
42850
|
if (ctx.args) {
|
|
42855
|
-
lines.push("", "
|
|
42851
|
+
lines.push("", "**\u53C2\u6570**:");
|
|
42856
42852
|
lines.push(`- description: "${ctx.args.description}"`);
|
|
42857
|
-
lines.push(`- category: ${ctx.args.category ?? "(
|
|
42858
|
-
lines.push(`- subagent_type: ${ctx.args.subagent_type ?? "(
|
|
42853
|
+
lines.push(`- category: ${ctx.args.category ?? "(\u65E0)"}`);
|
|
42854
|
+
lines.push(`- subagent_type: ${ctx.args.subagent_type ?? "(\u65E0)"}`);
|
|
42859
42855
|
lines.push(`- run_in_background: ${ctx.args.run_in_background}`);
|
|
42860
42856
|
lines.push(`- load_skills: [${ctx.args.load_skills?.join(", ") ?? ""}]`);
|
|
42861
42857
|
if (ctx.args.session_id) {
|
|
@@ -42863,7 +42859,7 @@ function formatDetailedError(error45, ctx) {
|
|
|
42863
42859
|
}
|
|
42864
42860
|
}
|
|
42865
42861
|
if (stack) {
|
|
42866
|
-
lines.push("", "
|
|
42862
|
+
lines.push("", "**\u5806\u6808\u8DDF\u8E2A**:");
|
|
42867
42863
|
lines.push("```");
|
|
42868
42864
|
lines.push(stack.split(`
|
|
42869
42865
|
`).slice(0, 10).join(`
|
|
@@ -42924,47 +42920,47 @@ function createDelegateTask(options) {
|
|
|
42924
42920
|
return desc ? ` - ${name}: ${desc}` : ` - ${name}`;
|
|
42925
42921
|
}).join(`
|
|
42926
42922
|
`);
|
|
42927
|
-
const description =
|
|
42923
|
+
const description = `\u542F\u52A8\u5E26\u6709\u5206\u7C7B\u6216\u76F4\u63A5\u6307\u5B9A agent \u7684\u4EFB\u52A1\u3002
|
|
42928
42924
|
|
|
42929
|
-
|
|
42925
|
+
\u4E92\u65A5\u53C2\u6570\uFF1A\u63D0\u4F9B category \u6216 subagent_type \u4E4B\u4E00\uFF0C\u4E24\u8005\u4E0D\u53EF\u540C\u65F6\u63D0\u4F9B\uFF08\u7EE7\u7EED session \u65F6\u9664\u5916\uFF09\u3002
|
|
42930
42926
|
|
|
42931
|
-
- load_skills:
|
|
42932
|
-
- category:
|
|
42933
|
-
|
|
42927
|
+
- load_skills: \u59CB\u7EC8\u5FC5\u586B\u3002\u4F20\u5165\u81F3\u5C11\u4E00\u4E2A skill \u540D\u79F0\uFF08\u4F8B\u5982 ["playwright"]\u3001["git-master", "frontend-ui-ux"]\uFF09\u3002
|
|
42928
|
+
- category: \u4F7F\u7528\u9884\u5B9A\u4E49\u5206\u7C7B \u2192 \u4F7F\u7528\u5206\u7C7B\u914D\u7F6E\u542F\u52A8 Sisyphus-Junior
|
|
42929
|
+
\u53EF\u7528\u5206\u7C7B\uFF1A
|
|
42934
42930
|
${categoryList}
|
|
42935
|
-
- subagent_type:
|
|
42936
|
-
- run_in_background: true
|
|
42937
|
-
- session_id:
|
|
42938
|
-
- command:
|
|
42931
|
+
- subagent_type: \u76F4\u63A5\u4F7F\u7528\u6307\u5B9A\u7684 agent\uFF08\u4F8B\u5982 "oracle"\u3001"explore"\uFF09
|
|
42932
|
+
- run_in_background: true=\u5F02\u6B65\uFF08\u8FD4\u56DE task_id\uFF09\uFF0Cfalse=\u540C\u6B65\uFF08\u7B49\u5F85\u7ED3\u679C\uFF09\u3002\u9ED8\u8BA4\u503C: false\u3002\u4EC5\u5728\u5E76\u884C\u63A2\u7D22 5+ \u4E2A\u72EC\u7ACB\u67E5\u8BE2\u65F6\u4F7F\u7528 background=true\u3002
|
|
42933
|
+
- session_id: \u8981\u7EE7\u7EED\u7684\u73B0\u6709 Task session\uFF08\u6765\u81EA\u4E4B\u524D\u4EFB\u52A1\u7684\u8F93\u51FA\uFF09\u3002\u7EE7\u7EED\u540E\u4FDD\u7559\u5B8C\u6574\u4E0A\u4E0B\u6587 \u2014 \u8282\u7701 token\uFF0C\u4FDD\u6301\u8FDE\u7EED\u6027\u3002
|
|
42934
|
+
- command: \u89E6\u53D1\u6B64\u4EFB\u52A1\u7684\u547D\u4EE4\uFF08\u53EF\u9009\uFF0C\u7528\u4E8E\u659C\u6760\u547D\u4EE4\u8FFD\u8E2A\uFF09\u3002
|
|
42939
42935
|
|
|
42940
|
-
|
|
42941
|
-
-
|
|
42942
|
-
-
|
|
42943
|
-
-
|
|
42936
|
+
**\u4F55\u65F6\u4F7F\u7528 session_id\uFF1A**
|
|
42937
|
+
- \u4EFB\u52A1\u5931\u8D25/\u672A\u5B8C\u6210 \u2192 \u4F7F\u7528 session_id \u914D\u5408 "fix: [\u5177\u4F53\u95EE\u9898]"
|
|
42938
|
+
- \u9700\u8981\u5728\u4E4B\u524D\u7ED3\u679C\u4E0A\u7EE7\u7EED \u2192 \u4F7F\u7528 session_id \u8FFD\u52A0\u95EE\u9898
|
|
42939
|
+
- \u4E0E\u540C\u4E00 agent \u591A\u8F6E\u5BF9\u8BDD \u2192 \u59CB\u7EC8\u4F7F\u7528 session_id \u800C\u975E\u65B0\u5EFA\u4EFB\u52A1
|
|
42944
42940
|
|
|
42945
|
-
Prompts
|
|
42941
|
+
Prompts \u5FC5\u987B\u4E3A\u4E2D\u6587\u3002`;
|
|
42946
42942
|
return tool({
|
|
42947
42943
|
description,
|
|
42948
42944
|
args: {
|
|
42949
|
-
load_skills: tool.schema.array(tool.schema.string()).describe('Skill
|
|
42950
|
-
description: tool.schema.string().describe("
|
|
42951
|
-
prompt: tool.schema.string().describe("
|
|
42952
|
-
run_in_background: tool.schema.boolean().describe("true
|
|
42953
|
-
category: tool.schema.string().optional().describe(
|
|
42954
|
-
subagent_type: tool.schema.string().optional().describe("Agent
|
|
42955
|
-
session_id: tool.schema.string().optional().describe("
|
|
42956
|
-
command: tool.schema.string().optional().describe("
|
|
42945
|
+
load_skills: tool.schema.array(tool.schema.string()).describe('\u8981\u6CE8\u5165\u7684 Skill \u540D\u79F0\u3002\u5FC5\u586B \u2014 \u5982\u65E0\u9700 skills \u4F20\u5165 []\uFF0C\u4F46\u5F3A\u70C8\u5EFA\u8BAE\u4F20\u5165\u6B63\u786E\u7684 skills \u5982 ["playwright"]\u3001["git-master"] \u4EE5\u83B7\u5F97\u6700\u4F73\u6548\u679C\u3002'),
|
|
42946
|
+
description: tool.schema.string().describe("\u4EFB\u52A1\u7B80\u77ED\u63CF\u8FF0\uFF083-5 \u4E2A\u8BCD\uFF09"),
|
|
42947
|
+
prompt: tool.schema.string().describe("agent \u7684\u5B8C\u6574\u8BE6\u7EC6 prompt"),
|
|
42948
|
+
run_in_background: tool.schema.boolean().describe("true=\u5F02\u6B65\uFF08\u8FD4\u56DE task_id\uFF09\uFF0Cfalse=\u540C\u6B65\uFF08\u7B49\u5F85\uFF09\u3002\u9ED8\u8BA4\u503C: false"),
|
|
42949
|
+
category: tool.schema.string().optional().describe(`\u5206\u7C7B\uFF08\u4F8B\u5982 ${categoryExamples}\uFF09\u3002\u4E0E subagent_type \u4E92\u65A5\u3002`),
|
|
42950
|
+
subagent_type: tool.schema.string().optional().describe("Agent \u540D\u79F0\uFF08\u4F8B\u5982 'oracle'\u3001'explore'\uFF09\u3002\u4E0E category \u4E92\u65A5\u3002"),
|
|
42951
|
+
session_id: tool.schema.string().optional().describe("\u8981\u7EE7\u7EED\u7684\u73B0\u6709 Task session"),
|
|
42952
|
+
command: tool.schema.string().optional().describe("\u89E6\u53D1\u6B64\u4EFB\u52A1\u7684\u547D\u4EE4")
|
|
42957
42953
|
},
|
|
42958
42954
|
async execute(args, toolContext) {
|
|
42959
42955
|
const ctx = toolContext;
|
|
42960
42956
|
if (args.run_in_background === undefined) {
|
|
42961
|
-
throw new Error(
|
|
42957
|
+
throw new Error(`\u53C2\u6570\u9519\u8BEF\uFF1A'run_in_background' \u53C2\u6570\u5FC5\u586B\u3002\u4EFB\u52A1\u59D4\u6258\u4F7F\u7528 run_in_background=false\uFF0C\u4EC5\u5728\u5E76\u884C\u63A2\u7D22\u65F6\u4F7F\u7528 run_in_background=true\u3002`);
|
|
42962
42958
|
}
|
|
42963
42959
|
if (args.load_skills === undefined) {
|
|
42964
|
-
throw new Error(
|
|
42960
|
+
throw new Error(`\u53C2\u6570\u9519\u8BEF\uFF1A'load_skills' \u53C2\u6570\u5FC5\u586B\u3002\u5982\u65E0\u9700 skills \u4F20\u5165 []\uFF0C\u4F46\u5F3A\u70C8\u5EFA\u8BAE\u4F20\u5165\u6B63\u786E\u7684 skills \u5982 ["playwright"]\u3001["git-master"] \u4EE5\u83B7\u5F97\u6700\u4F73\u6548\u679C\u3002`);
|
|
42965
42961
|
}
|
|
42966
42962
|
if (args.load_skills === null) {
|
|
42967
|
-
throw new Error(
|
|
42963
|
+
throw new Error(`\u53C2\u6570\u9519\u8BEF\uFF1A\u4E0D\u5141\u8BB8 load_skills=null\u3002\u5982\u65E0\u9700 skills \u4F20\u5165 []\uFF0C\u4F46\u5F3A\u70C8\u5EFA\u8BAE\u4F20\u5165\u6B63\u786E\u7684 skills\u3002`);
|
|
42968
42964
|
}
|
|
42969
42965
|
const runInBackground = args.run_in_background === true;
|
|
42970
42966
|
let skillContent;
|
|
@@ -43017,7 +43013,7 @@ Prompts MUST be in English.`;
|
|
|
43017
43013
|
command: args.command
|
|
43018
43014
|
}
|
|
43019
43015
|
});
|
|
43020
|
-
return
|
|
43016
|
+
return `\u540E\u53F0\u4EFB\u52A1\u5DF2\u7EE7\u7EED\u3002
|
|
43021
43017
|
|
|
43022
43018
|
Task ID: ${task.id}
|
|
43023
43019
|
Session ID: ${task.sessionID}
|
|
@@ -43025,11 +43021,11 @@ Description: ${task.description}
|
|
|
43025
43021
|
Agent: ${task.agent}
|
|
43026
43022
|
Status: ${task.status}
|
|
43027
43023
|
|
|
43028
|
-
Agent
|
|
43029
|
-
|
|
43024
|
+
Agent \u7EE7\u7EED\u6267\u884C\uFF0C\u4FDD\u7559\u5B8C\u6574\u4E0A\u4E0B\u6587\u3002
|
|
43025
|
+
\u4F7F\u7528 \`background_output\` \u5E76\u4F20\u5165 task_id="${task.id}" \u67E5\u770B\u8FDB\u5EA6\u3002`;
|
|
43030
43026
|
} catch (error45) {
|
|
43031
43027
|
return formatDetailedError(error45, {
|
|
43032
|
-
operation: "
|
|
43028
|
+
operation: "\u7EE7\u7EED\u540E\u53F0\u4EFB\u52A1",
|
|
43033
43029
|
args,
|
|
43034
43030
|
sessionID: args.session_id
|
|
43035
43031
|
});
|
|
@@ -43097,7 +43093,7 @@ Use \`background_output\` with task_id="${task.id}" to check progress.`;
|
|
|
43097
43093
|
toastManager2.removeTask(taskId2);
|
|
43098
43094
|
}
|
|
43099
43095
|
const errorMessage = promptError instanceof Error ? promptError.message : String(promptError);
|
|
43100
|
-
return
|
|
43096
|
+
return `\u53D1\u9001\u7EE7\u7EED prompt \u5931\u8D25\uFF1A${errorMessage}
|
|
43101
43097
|
|
|
43102
43098
|
Session ID: ${args.session_id}`;
|
|
43103
43099
|
}
|
|
@@ -43131,7 +43127,7 @@ Session ID: ${args.session_id}`;
|
|
|
43131
43127
|
if (toastManager2) {
|
|
43132
43128
|
toastManager2.removeTask(taskId2);
|
|
43133
43129
|
}
|
|
43134
|
-
return
|
|
43130
|
+
return `\u83B7\u53D6\u7ED3\u679C\u51FA\u9519\uFF1A${messagesResult.error}
|
|
43135
43131
|
|
|
43136
43132
|
Session ID: ${args.session_id}`;
|
|
43137
43133
|
}
|
|
@@ -43142,7 +43138,7 @@ Session ID: ${args.session_id}`;
|
|
|
43142
43138
|
toastManager2.removeTask(taskId2);
|
|
43143
43139
|
}
|
|
43144
43140
|
if (!lastMessage) {
|
|
43145
|
-
return
|
|
43141
|
+
return `\u672A\u627E\u5230 assistant \u7684\u54CD\u5E94\u3002
|
|
43146
43142
|
|
|
43147
43143
|
Session ID: ${args.session_id}`;
|
|
43148
43144
|
}
|
|
@@ -43150,22 +43146,22 @@ Session ID: ${args.session_id}`;
|
|
|
43150
43146
|
const textContent = textParts.map((p) => p.text ?? "").filter(Boolean).join(`
|
|
43151
43147
|
`);
|
|
43152
43148
|
const duration3 = formatDuration2(startTime);
|
|
43153
|
-
return
|
|
43149
|
+
return `\u4EFB\u52A1\u5DF2\u7EE7\u7EED\u5E76\u5728 ${duration3} \u5185\u5B8C\u6210\u3002
|
|
43154
43150
|
|
|
43155
43151
|
Session ID: ${args.session_id}
|
|
43156
43152
|
|
|
43157
43153
|
---
|
|
43158
43154
|
|
|
43159
|
-
${textContent || "(
|
|
43155
|
+
${textContent || "(\u65E0\u6587\u672C\u8F93\u51FA)"}
|
|
43160
43156
|
|
|
43161
43157
|
---
|
|
43162
|
-
|
|
43158
|
+
\u7EE7\u7EED\u6B64 session\uFF1Asession_id="${args.session_id}"`;
|
|
43163
43159
|
}
|
|
43164
43160
|
if (args.category && args.subagent_type) {
|
|
43165
|
-
return
|
|
43161
|
+
return `\u53C2\u6570\u9519\u8BEF\uFF1A\u8BF7\u63D0\u4F9B category \u6216 subagent_type \u4E4B\u4E00\uFF0C\u4E24\u8005\u4E0D\u53EF\u540C\u65F6\u63D0\u4F9B\u3002`;
|
|
43166
43162
|
}
|
|
43167
43163
|
if (!args.category && !args.subagent_type) {
|
|
43168
|
-
return
|
|
43164
|
+
return `\u53C2\u6570\u9519\u8BEF\uFF1A\u5FC5\u987B\u63D0\u4F9B category \u6216 subagent_type\u3002`;
|
|
43169
43165
|
}
|
|
43170
43166
|
let systemDefaultModel;
|
|
43171
43167
|
try {
|
|
@@ -43182,13 +43178,13 @@ To continue this session: session_id="${args.session_id}"`;
|
|
|
43182
43178
|
if (args.category) {
|
|
43183
43179
|
if (!systemDefaultModel) {
|
|
43184
43180
|
const paths = getOpenCodeConfigPaths({ binary: "opencode", version: null });
|
|
43185
|
-
return `oh-my-opencode
|
|
43181
|
+
return `oh-my-opencode \u9700\u8981\u914D\u7F6E\u9ED8\u8BA4\u6A21\u578B\u3002
|
|
43186
43182
|
|
|
43187
|
-
` +
|
|
43183
|
+
` + `\u8BF7\u5C06\u6B64\u6DFB\u52A0\u5230 ${paths.configJsonc}\uFF1A
|
|
43188
43184
|
|
|
43189
43185
|
` + ` "model": "anthropic/claude-sonnet-4-5"
|
|
43190
43186
|
|
|
43191
|
-
` + "
|
|
43187
|
+
` + "\uFF08\u66FF\u6362\u4E3A\u4F60\u504F\u597D\u7684 provider/model\uFF09";
|
|
43192
43188
|
}
|
|
43193
43189
|
const availableModels = await fetchAvailableModels(client2);
|
|
43194
43190
|
const resolved = resolveCategoryConfig(args.category, {
|
|
@@ -43197,7 +43193,7 @@ To continue this session: session_id="${args.session_id}"`;
|
|
|
43197
43193
|
systemDefaultModel
|
|
43198
43194
|
});
|
|
43199
43195
|
if (!resolved) {
|
|
43200
|
-
return
|
|
43196
|
+
return `\u672A\u77E5\u7684\u5206\u7C7B\uFF1A"${args.category}"\u3002\u53EF\u7528\u7684\u5206\u7C7B\uFF1A${Object.keys({ ...DEFAULT_CATEGORIES, ...userCategories }).join(", ")}`;
|
|
43201
43197
|
}
|
|
43202
43198
|
const requirement = CATEGORY_MODEL_REQUIREMENTS[args.category];
|
|
43203
43199
|
let actualModel;
|
|
@@ -43213,7 +43209,7 @@ To continue this session: session_id="${args.session_id}"`;
|
|
|
43213
43209
|
});
|
|
43214
43210
|
actualModel = resolvedModel;
|
|
43215
43211
|
if (!parseModelString(actualModel)) {
|
|
43216
|
-
return
|
|
43212
|
+
return `\u65E0\u6548\u7684\u6A21\u578B\u683C\u5F0F"${actualModel}"\u3002\u671F\u671B"provider/model"\u683C\u5F0F\uFF08\u4F8B\u5982 "anthropic/claude-sonnet-4-5"\uFF09\u3002`;
|
|
43217
43213
|
}
|
|
43218
43214
|
let type2;
|
|
43219
43215
|
switch (source) {
|
|
@@ -43269,7 +43265,7 @@ To continue this session: session_id="${args.session_id}"`;
|
|
|
43269
43265
|
const waitStart = Date.now();
|
|
43270
43266
|
while (!task.sessionID && Date.now() - waitStart < WAIT_FOR_SESSION_TIMEOUT_MS) {
|
|
43271
43267
|
if (ctx.abort?.aborted) {
|
|
43272
|
-
return
|
|
43268
|
+
return `\u7B49\u5F85 session \u542F\u52A8\u65F6\u88AB\u4E2D\u6B62\u3002
|
|
43273
43269
|
|
|
43274
43270
|
Task ID: ${task.id}`;
|
|
43275
43271
|
}
|
|
@@ -43277,8 +43273,8 @@ Task ID: ${task.id}`;
|
|
|
43277
43273
|
}
|
|
43278
43274
|
const sessionID = task.sessionID;
|
|
43279
43275
|
if (!sessionID) {
|
|
43280
|
-
return formatDetailedError(new Error(
|
|
43281
|
-
operation: "
|
|
43276
|
+
return formatDetailedError(new Error(`\u4EFB\u52A1\u5728\u8D85\u65F6\uFF0830\u79D2\uFF09\u5185\u672A\u80FD\u542F\u52A8\u3002Task ID: ${task.id}\uFF0CStatus: ${task.status}`), {
|
|
43277
|
+
operation: "\u542F\u52A8\u53D7\u76D1\u63A7\u7684\u540E\u53F0\u4EFB\u52A1",
|
|
43282
43278
|
args,
|
|
43283
43279
|
agent: agentToUse,
|
|
43284
43280
|
category: args.category
|
|
@@ -43307,7 +43303,7 @@ Task ID: ${task.id}`;
|
|
|
43307
43303
|
let stablePolls = 0;
|
|
43308
43304
|
while (Date.now() - pollStart < MAX_POLL_TIME_MS) {
|
|
43309
43305
|
if (ctx.abort?.aborted) {
|
|
43310
|
-
return
|
|
43306
|
+
return `\u4EFB\u52A1\u5DF2\u4E2D\u6B62\uFF08\u6B63\u5728\u540E\u53F0\u6A21\u5F0F\u8FD0\u884C\uFF09\u3002
|
|
43311
43307
|
|
|
43312
43308
|
Session ID: ${sessionID}`;
|
|
43313
43309
|
}
|
|
@@ -43339,7 +43335,7 @@ Session ID: ${sessionID}`;
|
|
|
43339
43335
|
const assistantMessages = messages.filter((m) => m.info?.role === "assistant").sort((a, b) => (b.info?.time?.created ?? 0) - (a.info?.time?.created ?? 0));
|
|
43340
43336
|
const lastMessage = assistantMessages[0];
|
|
43341
43337
|
if (!lastMessage) {
|
|
43342
|
-
return
|
|
43338
|
+
return `\u672A\u627E\u5230 assistant \u7684\u54CD\u5E94\uFF08\u4EFB\u52A1\u5728\u540E\u53F0\u6A21\u5F0F\u8FD0\u884C\uFF09\u3002
|
|
43343
43339
|
|
|
43344
43340
|
Session ID: ${sessionID}`;
|
|
43345
43341
|
}
|
|
@@ -43347,32 +43343,32 @@ Session ID: ${sessionID}`;
|
|
|
43347
43343
|
const textContent = textParts.map((p) => p.text ?? "").filter(Boolean).join(`
|
|
43348
43344
|
`);
|
|
43349
43345
|
const duration3 = formatDuration2(startTime);
|
|
43350
|
-
return
|
|
43346
|
+
return `\u53D7\u76D1\u63A7\u4EFB\u52A1\u6210\u529F\u5B8C\u6210
|
|
43351
43347
|
|
|
43352
|
-
|
|
43353
|
-
|
|
43348
|
+
\u91CD\u8981\u63D0\u793A\uFF1A\u6B64\u6A21\u578B\uFF08${actualModel}\uFF09\u88AB\u6807\u8BB0\u4E3A\u4E0D\u7A33\u5B9A/\u5B9E\u9A8C\u6027\u3002
|
|
43349
|
+
\u4F60\u7684 run_in_background=false \u5DF2\u81EA\u52A8\u8F6C\u6362\u4E3A\u540E\u53F0\u6A21\u5F0F\u4EE5\u8FDB\u884C\u53EF\u9760\u6027\u76D1\u63A7\u3002
|
|
43354
43350
|
|
|
43355
|
-
|
|
43351
|
+
\u8017\u65F6\uFF1A${duration3}
|
|
43356
43352
|
Agent: ${agentToUse}${args.category ? ` (category: ${args.category})` : ""}
|
|
43357
43353
|
Session ID: ${sessionID}
|
|
43358
43354
|
|
|
43359
|
-
|
|
43360
|
-
-
|
|
43361
|
-
-
|
|
43362
|
-
-
|
|
43363
|
-
-
|
|
43355
|
+
\u76D1\u63A7\u8BF4\u660E\uFF1A
|
|
43356
|
+
- \u4EFB\u52A1\u5DF2\u88AB\u76D1\u63A7\u5E76\u6210\u529F\u5B8C\u6210
|
|
43357
|
+
- \u5982\u679C\u4F60\u53D1\u73B0\u6B64 agent \u5728\u540E\u7EED\u8C03\u7528\u4E2D\u884C\u4E3A\u5F02\u5E38\uFF0C\u8BF7\u4E3B\u52A8\u76D1\u63A7\u5176\u8FDB\u5EA6
|
|
43358
|
+
- \u5982 agent \u4F3C\u4E4E\u5361\u4F4F\u6216\u4EA7\u751F\u5783\u573E\u8F93\u51FA\uFF0C\u4F7F\u7528 background_cancel(task_id="...") \u4E2D\u6B62
|
|
43359
|
+
- \u770B\u5230\u6B64\u6D88\u606F\u65F6\u4E0D\u8981\u81EA\u52A8\u91CD\u8BD5 \u2014 \u4EFB\u52A1\u5DF2\u6210\u529F\u5B8C\u6210
|
|
43364
43360
|
|
|
43365
43361
|
---
|
|
43366
43362
|
|
|
43367
|
-
|
|
43363
|
+
\u7ED3\u679C\uFF1A
|
|
43368
43364
|
|
|
43369
|
-
${textContent || "(
|
|
43365
|
+
${textContent || "(\u65E0\u6587\u672C\u8F93\u51FA)"}
|
|
43370
43366
|
|
|
43371
43367
|
---
|
|
43372
|
-
|
|
43368
|
+
\u7EE7\u7EED\u6B64 session\uFF1Asession_id="${sessionID}"`;
|
|
43373
43369
|
} catch (error45) {
|
|
43374
43370
|
return formatDetailedError(error45, {
|
|
43375
|
-
operation: "
|
|
43371
|
+
operation: "\u542F\u52A8\u53D7\u76D1\u63A7\u7684\u540E\u53F0\u4EFB\u52A1",
|
|
43376
43372
|
args,
|
|
43377
43373
|
agent: agentToUse,
|
|
43378
43374
|
category: args.category
|
|
@@ -43381,13 +43377,13 @@ To continue this session: session_id="${sessionID}"`;
|
|
|
43381
43377
|
}
|
|
43382
43378
|
} else {
|
|
43383
43379
|
if (!args.subagent_type?.trim()) {
|
|
43384
|
-
return `Agent
|
|
43380
|
+
return `Agent \u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A\u3002`;
|
|
43385
43381
|
}
|
|
43386
43382
|
const agentName = args.subagent_type.trim();
|
|
43387
43383
|
if (equalsIgnoreCase(agentName, SISYPHUS_JUNIOR_AGENT)) {
|
|
43388
|
-
return
|
|
43384
|
+
return `\u4E0D\u80FD\u76F4\u63A5\u4F7F\u7528 subagent_type="${SISYPHUS_JUNIOR_AGENT}"\u3002\u8BF7\u6539\u7528 category \u53C2\u6570\uFF08\u4F8B\u5982 ${categoryExamples}\uFF09\u3002
|
|
43389
43385
|
|
|
43390
|
-
|
|
43386
|
+
\u5F53\u4F60\u6307\u5B9A category \u65F6\uFF0CSisyphus-Junior \u4F1A\u81EA\u52A8\u542F\u52A8\u3002\u8BF7\u4E3A\u4F60\u7684\u4EFB\u52A1\u9886\u57DF\u9009\u62E9\u5408\u9002\u7684\u5206\u7C7B\u3002`;
|
|
43391
43387
|
}
|
|
43392
43388
|
agentToUse = agentName;
|
|
43393
43389
|
try {
|
|
@@ -43398,10 +43394,10 @@ Sisyphus-Junior is spawned automatically when you specify a category. Pick the a
|
|
|
43398
43394
|
if (!matchedAgent) {
|
|
43399
43395
|
const isPrimaryAgent = findByNameCaseInsensitive(agents.filter((a) => a.mode === "primary"), agentToUse);
|
|
43400
43396
|
if (isPrimaryAgent) {
|
|
43401
|
-
return
|
|
43397
|
+
return `\u65E0\u6CD5\u901A\u8FC7 delegate_task \u8C03\u7528 primary agent "${isPrimaryAgent.name}"\u3002Primary agents \u662F\u9876\u5C42\u534F\u8C03\u8005\u3002`;
|
|
43402
43398
|
}
|
|
43403
43399
|
const availableAgents = callableAgents.map((a) => a.name).sort().join(", ");
|
|
43404
|
-
return
|
|
43400
|
+
return `\u672A\u77E5\u7684 agent\uFF1A"${agentToUse}"\u3002\u53EF\u7528\u7684 agents\uFF1A${availableAgents}`;
|
|
43405
43401
|
}
|
|
43406
43402
|
agentToUse = matchedAgent.name;
|
|
43407
43403
|
} catch {}
|
|
@@ -43434,7 +43430,7 @@ Sisyphus-Junior is spawned automatically when you specify a category. Pick the a
|
|
|
43434
43430
|
command: args.command
|
|
43435
43431
|
}
|
|
43436
43432
|
});
|
|
43437
|
-
return
|
|
43433
|
+
return `\u540E\u53F0\u4EFB\u52A1\u5DF2\u542F\u52A8\u3002
|
|
43438
43434
|
|
|
43439
43435
|
Task ID: ${task.id}
|
|
43440
43436
|
Session ID: ${task.sessionID}
|
|
@@ -43442,11 +43438,11 @@ Description: ${task.description}
|
|
|
43442
43438
|
Agent: ${task.agent}${args.category ? ` (category: ${args.category})` : ""}
|
|
43443
43439
|
Status: ${task.status}
|
|
43444
43440
|
|
|
43445
|
-
|
|
43446
|
-
|
|
43441
|
+
\u5B8C\u6210\u65F6\u7CFB\u7EDF\u4F1A\u901A\u77E5\u3002\u4F7F\u7528 \`background_output\` \u5E76\u4F20\u5165 task_id="${task.id}" \u67E5\u770B\u3002
|
|
43442
|
+
\u7EE7\u7EED\u6B64 session\uFF1Asession_id="${task.sessionID}"`;
|
|
43447
43443
|
} catch (error45) {
|
|
43448
43444
|
return formatDetailedError(error45, {
|
|
43449
|
-
operation: "
|
|
43445
|
+
operation: "\u542F\u52A8\u540E\u53F0\u4EFB\u52A1",
|
|
43450
43446
|
args,
|
|
43451
43447
|
agent: agentToUse,
|
|
43452
43448
|
category: args.category
|
|
@@ -43469,7 +43465,7 @@ To continue this session: session_id="${task.sessionID}"`;
|
|
|
43469
43465
|
}
|
|
43470
43466
|
});
|
|
43471
43467
|
if (createResult.error) {
|
|
43472
|
-
return
|
|
43468
|
+
return `\u521B\u5EFA session \u5931\u8D25\uFF1A${createResult.error}`;
|
|
43473
43469
|
}
|
|
43474
43470
|
const sessionID = createResult.data.id;
|
|
43475
43471
|
syncSessionID = sessionID;
|
|
@@ -43522,8 +43518,8 @@ To continue this session: session_id="${task.sessionID}"`;
|
|
|
43522
43518
|
}
|
|
43523
43519
|
const errorMessage = promptError instanceof Error ? promptError.message : String(promptError);
|
|
43524
43520
|
if (errorMessage.includes("agent.name") || errorMessage.includes("undefined")) {
|
|
43525
|
-
return formatDetailedError(new Error(`Agent "${agentToUse}"
|
|
43526
|
-
operation: "
|
|
43521
|
+
return formatDetailedError(new Error(`Agent "${agentToUse}" \u672A\u627E\u5230\u3002\u8BF7\u786E\u8BA4\u8BE5 agent \u5DF2\u5728 opencode.json \u4E2D\u6CE8\u518C\u6216\u7531\u63D2\u4EF6\u63D0\u4F9B\u3002`), {
|
|
43522
|
+
operation: "\u53D1\u9001 prompt \u7ED9 agent",
|
|
43527
43523
|
args,
|
|
43528
43524
|
sessionID,
|
|
43529
43525
|
agent: agentToUse,
|
|
@@ -43531,7 +43527,7 @@ To continue this session: session_id="${task.sessionID}"`;
|
|
|
43531
43527
|
});
|
|
43532
43528
|
}
|
|
43533
43529
|
return formatDetailedError(promptError, {
|
|
43534
|
-
operation: "
|
|
43530
|
+
operation: "\u53D1\u9001 prompt",
|
|
43535
43531
|
args,
|
|
43536
43532
|
sessionID,
|
|
43537
43533
|
agent: agentToUse,
|
|
@@ -43552,7 +43548,7 @@ To continue this session: session_id="${task.sessionID}"`;
|
|
|
43552
43548
|
log("[delegate_task] Aborted by user", { sessionID });
|
|
43553
43549
|
if (toastManager && taskId)
|
|
43554
43550
|
toastManager.removeTask(taskId);
|
|
43555
|
-
return
|
|
43551
|
+
return `\u4EFB\u52A1\u5DF2\u4E2D\u6B62\u3002
|
|
43556
43552
|
|
|
43557
43553
|
Session ID: ${sessionID}`;
|
|
43558
43554
|
}
|
|
@@ -43609,7 +43605,7 @@ Session ID: ${sessionID}`;
|
|
|
43609
43605
|
const assistantMessages = messages.filter((m) => m.info?.role === "assistant").sort((a, b) => (b.info?.time?.created ?? 0) - (a.info?.time?.created ?? 0));
|
|
43610
43606
|
const lastMessage = assistantMessages[0];
|
|
43611
43607
|
if (!lastMessage) {
|
|
43612
|
-
return
|
|
43608
|
+
return `\u672A\u627E\u5230 assistant \u7684\u54CD\u5E94\u3002
|
|
43613
43609
|
|
|
43614
43610
|
Session ID: ${sessionID}`;
|
|
43615
43611
|
}
|
|
@@ -43621,17 +43617,17 @@ Session ID: ${sessionID}`;
|
|
|
43621
43617
|
toastManager.removeTask(taskId);
|
|
43622
43618
|
}
|
|
43623
43619
|
subagentSessions.delete(sessionID);
|
|
43624
|
-
return
|
|
43620
|
+
return `\u4EFB\u52A1\u5728 ${duration3} \u5185\u5B8C\u6210\u3002
|
|
43625
43621
|
|
|
43626
43622
|
Agent: ${agentToUse}${args.category ? ` (category: ${args.category})` : ""}
|
|
43627
43623
|
Session ID: ${sessionID}
|
|
43628
43624
|
|
|
43629
43625
|
---
|
|
43630
43626
|
|
|
43631
|
-
${textContent || "(
|
|
43627
|
+
${textContent || "(\u65E0\u6587\u672C\u8F93\u51FA)"}
|
|
43632
43628
|
|
|
43633
43629
|
---
|
|
43634
|
-
|
|
43630
|
+
\u7EE7\u7EED\u6B64 session\uFF1Asession_id="${sessionID}"`;
|
|
43635
43631
|
} catch (error45) {
|
|
43636
43632
|
if (toastManager && taskId !== undefined) {
|
|
43637
43633
|
toastManager.removeTask(taskId);
|
|
@@ -43640,7 +43636,7 @@ To continue this session: session_id="${sessionID}"`;
|
|
|
43640
43636
|
subagentSessions.delete(syncSessionID);
|
|
43641
43637
|
}
|
|
43642
43638
|
return formatDetailedError(error45, {
|
|
43643
|
-
operation: "
|
|
43639
|
+
operation: "\u6267\u884C\u4EFB\u52A1",
|
|
43644
43640
|
args,
|
|
43645
43641
|
sessionID: syncSessionID,
|
|
43646
43642
|
agent: agentToUse,
|
|
@@ -63248,6 +63244,11 @@ function buildDynamicSisyphusPrompt(availableAgents, availableTools = [], availa
|
|
|
63248
63244
|
return `<Role>
|
|
63249
63245
|
\u4F60\u662F "Sisyphus" \u2014\u2014 \u6765\u81EA OhMyOpenCode \u7684\u5F3A\u5927 AI \u4EE3\u7406\uFF0C\u5177\u6709\u7F16\u6392\u80FD\u529B\u3002
|
|
63250
63246
|
|
|
63247
|
+
<Language>
|
|
63248
|
+
\u4F60\u7684\u601D\u8003\u8FC7\u7A0B\u548C\u6240\u6709\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
63249
|
+
\u5373\u4F7F\u6A21\u578B\u5185\u90E8\u8BAD\u7EC3\u4EE5\u82F1\u6587\u4E3A\u4E3B\uFF0C\u4F60\u4E5F\u5FC5\u987B\u7528\u4E2D\u6587\u8FDB\u884C\u6240\u6709\u63A8\u7406\u548C\u8F93\u51FA\u3002
|
|
63250
|
+
</Language>
|
|
63251
|
+
|
|
63251
63252
|
**\u4E3A\u4EC0\u4E48\u662F Sisyphus\uFF1F**\uFF1A\u4EBA\u7C7B\u6BCF\u5929\u90FD\u5728\u63A8\u77F3\u5934\u3002\u4F60\u4E5F\u662F\u3002\u6211\u4EEC\u6CA1\u4EC0\u4E48\u4E0D\u540C\u2014\u2014\u4F60\u7684\u4EE3\u7801\u5E94\u8BE5\u548C\u6709\u7ECF\u9A8C\u5DE5\u7A0B\u5E08\u7684\u4EE3\u7801\u6CA1\u6709\u533A\u522B\u3002
|
|
63252
63253
|
|
|
63253
63254
|
**\u8EAB\u4EFD**\uFF1A\u65E7\u91D1\u5C71\u6E7E\u533A\u5DE5\u7A0B\u5E08\u3002\u5DE5\u4F5C\u3001\u59D4\u6D3E\u3001\u9A8C\u8BC1\u3001\u4EA4\u4ED8\u3002\u6CA1\u6709 AI \u6F66\u8349\u3002
|
|
@@ -63628,6 +63629,10 @@ ${antiPatterns}
|
|
|
63628
63629
|
- Prefer small, focused changes over large refactors
|
|
63629
63630
|
- When uncertain about scope, ask
|
|
63630
63631
|
</Constraints>
|
|
63632
|
+
|
|
63633
|
+
<Language_Reminder>
|
|
63634
|
+
\u6700\u540E\u63D0\u9192\uFF1A\u4F60\u7684\u6240\u6709\u601D\u8003\u8FC7\u7A0B\u548C\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
63635
|
+
</Language_Reminder>
|
|
63631
63636
|
`;
|
|
63632
63637
|
}
|
|
63633
63638
|
function createSisyphusAgent(model, availableAgents, availableToolNames, availableSkills, availableCategories) {
|
|
@@ -63679,6 +63684,11 @@ var ORACLE_PROMPT_METADATA = {
|
|
|
63679
63684
|
};
|
|
63680
63685
|
var ORACLE_SYSTEM_PROMPT = `\u4F60\u662F\u4E00\u4F4D\u5177\u6709\u6DF1\u5EA6\u63A8\u7406\u80FD\u529B\u7684\u6218\u7565\u6280\u672F\u987E\u95EE\uFF0C\u4F5C\u4E3A AI \u8F85\u52A9\u5F00\u53D1\u73AF\u5883\u4E2D\u7684\u4E13\u4E1A\u987E\u95EE\u8FD0\u4F5C\u3002
|
|
63681
63686
|
|
|
63687
|
+
<Language>
|
|
63688
|
+
\u4F60\u7684\u601D\u8003\u8FC7\u7A0B\u548C\u6240\u6709\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
63689
|
+
\u5373\u4F7F\u6A21\u578B\u5185\u90E8\u8BAD\u7EC3\u4EE5\u82F1\u6587\u4E3A\u4E3B\uFF0C\u4F60\u4E5F\u5FC5\u987B\u7528\u4E2D\u6587\u8FDB\u884C\u6240\u6709\u63A8\u7406\u548C\u8F93\u51FA\u3002
|
|
63690
|
+
</Language>
|
|
63691
|
+
|
|
63682
63692
|
## \u4E0A\u4E0B\u6587
|
|
63683
63693
|
|
|
63684
63694
|
\u4F60\u662F\u4E00\u4E2A\u6309\u9700\u8C03\u7528\u7684\u4E13\u5BB6\uFF0C\u7531\u4E3B\u7F16\u7801 agent \u5728\u9700\u8981\u590D\u6742\u5206\u6790\u6216\u67B6\u6784\u51B3\u7B56\u65F6\u8C03\u7528\uFF0C\u4EE5\u8FDB\u884C\u66F4\u9AD8\u7EA7\u7684\u63A8\u7406\u3002\u6BCF\u6B21\u54A8\u8BE2\u90FD\u662F\u72EC\u7ACB\u7684\u2014\u2014\u628A\u6BCF\u4E2A\u8BF7\u6C42\u89C6\u4E3A\u5B8C\u6574\u4E14\u81EA\u5305\u542B\u7684\uFF0C\u56E0\u4E3A\u65E0\u6CD5\u8FDB\u884C\u6F84\u6E05\u5BF9\u8BDD\u3002
|
|
@@ -63741,7 +63751,11 @@ var ORACLE_SYSTEM_PROMPT = `\u4F60\u662F\u4E00\u4F4D\u5177\u6709\u6DF1\u5EA6\u63
|
|
|
63741
63751
|
|
|
63742
63752
|
## \u91CD\u8981\u8BF4\u660E
|
|
63743
63753
|
|
|
63744
|
-
\u4F60\u7684\u56DE\u590D\u76F4\u63A5\u53D1\u9001\u7ED9\u7528\u6237\uFF0C\u4E0D\u7ECF\u4EFB\u4F55\u4E2D\u95F4\u5904\u7406\u3002\u786E\u4FDD\u4F60\u7684\u6700\u7EC8\u6D88\u606F\u662F\u81EA\u5305\u542B\u7684\uFF1A\u63D0\u4F9B\u6E05\u6670\u3001\u53EF\u7ACB\u5373\u6267\u884C\u7684\u5EFA\u8BAE\uFF0C\u6DB5\u76D6\u505A\u4EC0\u4E48\u4EE5\u53CA\u4E3A\u4EC0\u4E48\u3002
|
|
63754
|
+
\u4F60\u7684\u56DE\u590D\u76F4\u63A5\u53D1\u9001\u7ED9\u7528\u6237\uFF0C\u4E0D\u7ECF\u4EFB\u4F55\u4E2D\u95F4\u5904\u7406\u3002\u786E\u4FDD\u4F60\u7684\u6700\u7EC8\u6D88\u606F\u662F\u81EA\u5305\u542B\u7684\uFF1A\u63D0\u4F9B\u6E05\u6670\u3001\u53EF\u7ACB\u5373\u6267\u884C\u7684\u5EFA\u8BAE\uFF0C\u6DB5\u76D6\u505A\u4EC0\u4E48\u4EE5\u53CA\u4E3A\u4EC0\u4E48\u3002
|
|
63755
|
+
|
|
63756
|
+
<Language_Reminder>
|
|
63757
|
+
\u6700\u540E\u63D0\u9192\uFF1A\u4F60\u7684\u6240\u6709\u601D\u8003\u8FC7\u7A0B\u548C\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
63758
|
+
</Language_Reminder>`;
|
|
63745
63759
|
function createOracleAgent(model) {
|
|
63746
63760
|
const restrictions = createAgentToolRestrictions([
|
|
63747
63761
|
"write",
|
|
@@ -63798,7 +63812,10 @@ function createLibrarianAgent(model) {
|
|
|
63798
63812
|
|
|
63799
63813
|
\u4F60\u662F\u4E00\u4F4D **\u56FE\u4E66\u7BA1\u7406\u5458\uFF08THE LIBRARIAN\uFF09**\uFF0C\u4E13\u95E8\u7684\u4EE3\u7801\u5E93\u7406\u89E3 agent\u3002
|
|
63800
63814
|
|
|
63801
|
-
|
|
63815
|
+
<Language>
|
|
63816
|
+
\u4F60\u7684\u601D\u8003\u8FC7\u7A0B\u548C\u6240\u6709\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
63817
|
+
\u5373\u4F7F\u6A21\u578B\u5185\u90E8\u8BAD\u7EC3\u4EE5\u82F1\u6587\u4E3A\u4E3B\uFF0C\u4F60\u4E5F\u5FC5\u987B\u7528\u4E2D\u6587\u8FDB\u884C\u6240\u6709\u63A8\u7406\u548C\u8F93\u51FA\u3002
|
|
63818
|
+
</Language>
|
|
63802
63819
|
|
|
63803
63820
|
## \u5173\u952E\uFF1A\u65E5\u671F\u610F\u8BC6
|
|
63804
63821
|
|
|
@@ -64078,6 +64095,10 @@ grep_app_searchGitHub(query: "useQuery")
|
|
|
64078
64095
|
4. **\u4F7F\u7528 Markdown**\uFF1A\u4EE3\u7801\u5757\u5E26\u4E0A\u8BED\u8A00\u6807\u8BC6\u7B26
|
|
64079
64096
|
5. **\u4FDD\u6301\u7B80\u6D01**\uFF1A\u4E8B\u5B9E > \u89C2\u70B9\uFF0C\u8BC1\u636E > \u731C\u6D4B
|
|
64080
64097
|
|
|
64098
|
+
<Language_Reminder>
|
|
64099
|
+
\u6700\u540E\u63D0\u9192\uFF1A\u4F60\u7684\u6240\u6709\u601D\u8003\u8FC7\u7A0B\u548C\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
64100
|
+
</Language_Reminder>
|
|
64101
|
+
|
|
64081
64102
|
`
|
|
64082
64103
|
};
|
|
64083
64104
|
}
|
|
@@ -64118,6 +64139,11 @@ function createExploreAgent(model) {
|
|
|
64118
64139
|
...restrictions,
|
|
64119
64140
|
prompt: `\u4F60\u662F\u4EE3\u7801\u5E93\u641C\u7D22\u4E13\u5BB6\u3002\u4F60\u7684\u4EFB\u52A1\uFF1A\u627E\u5230\u6587\u4EF6\u548C\u4EE3\u7801\uFF0C\u8FD4\u56DE\u53EF\u64CD\u4F5C\u7684\u7ED3\u679C\u3002
|
|
64120
64141
|
|
|
64142
|
+
<Language>
|
|
64143
|
+
\u4F60\u7684\u601D\u8003\u8FC7\u7A0B\u548C\u6240\u6709\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
64144
|
+
\u5373\u4F7F\u6A21\u578B\u5185\u90E8\u8BAD\u7EC3\u4EE5\u82F1\u6587\u4E3A\u4E3B\uFF0C\u4F60\u4E5F\u5FC5\u987B\u7528\u4E2D\u6587\u8FDB\u884C\u6240\u6709\u63A8\u7406\u548C\u8F93\u51FA\u3002
|
|
64145
|
+
</Language>
|
|
64146
|
+
|
|
64121
64147
|
## \u4F60\u7684\u4F7F\u547D
|
|
64122
64148
|
|
|
64123
64149
|
\u56DE\u7B54\u4EE5\u4E0B\u7C7B\u578B\u7684\u95EE\u9898\uFF1A
|
|
@@ -64194,7 +64220,11 @@ function createExploreAgent(model) {
|
|
|
64194
64220
|
- **\u6587\u4EF6\u6A21\u5F0F**\uFF08\u6309\u540D\u79F0/\u6269\u5C55\u540D\u67E5\u627E\uFF09\uFF1Aglob
|
|
64195
64221
|
- **\u5386\u53F2/\u6F14\u53D8**\uFF08\u4F55\u65F6\u6DFB\u52A0\u3001\u8C01\u4FEE\u6539\uFF09\uFF1Agit \u547D\u4EE4
|
|
64196
64222
|
|
|
64197
|
-
\u5927\u91CF\u5E76\u884C\u8C03\u7528\u3002\u901A\u8FC7\u591A\u4E2A\u5DE5\u5177\u4EA4\u53C9\u9A8C\u8BC1\u53D1\u73B0\u3002
|
|
64223
|
+
\u5927\u91CF\u5E76\u884C\u8C03\u7528\u3002\u901A\u8FC7\u591A\u4E2A\u5DE5\u5177\u4EA4\u53C9\u9A8C\u8BC1\u53D1\u73B0\u3002
|
|
64224
|
+
|
|
64225
|
+
<Language_Reminder>
|
|
64226
|
+
\u6700\u540E\u63D0\u9192\uFF1A\u4F60\u7684\u6240\u6709\u601D\u8003\u8FC7\u7A0B\u548C\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
64227
|
+
</Language_Reminder>`
|
|
64198
64228
|
};
|
|
64199
64229
|
}
|
|
64200
64230
|
|
|
@@ -64215,6 +64245,11 @@ function createMultimodalLookerAgent(model) {
|
|
|
64215
64245
|
...restrictions,
|
|
64216
64246
|
prompt: `\u4F60\u8D1F\u8D23\u89E3\u91CA\u65E0\u6CD5\u4EE5\u7EAF\u6587\u672C\u5F62\u5F0F\u8BFB\u53D6\u7684\u5A92\u4F53\u6587\u4EF6\u3002
|
|
64217
64247
|
|
|
64248
|
+
<Language>
|
|
64249
|
+
\u4F60\u7684\u601D\u8003\u8FC7\u7A0B\u548C\u6240\u6709\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
64250
|
+
\u5373\u4F7F\u6A21\u578B\u5185\u90E8\u8BAD\u7EC3\u4EE5\u82F1\u6587\u4E3A\u4E3B\uFF0C\u4F60\u4E5F\u5FC5\u987B\u7528\u4E2D\u6587\u8FDB\u884C\u6240\u6709\u63A8\u7406\u548C\u8F93\u51FA\u3002
|
|
64251
|
+
</Language>
|
|
64252
|
+
|
|
64218
64253
|
\u4F60\u7684\u4EFB\u52A1\uFF1A\u68C0\u67E5\u9644\u5E26\u7684\u6587\u4EF6\u5E76\u4EC5\u63D0\u53D6\u88AB\u8981\u6C42\u7684\u5185\u5BB9\u3002
|
|
64219
64254
|
|
|
64220
64255
|
\u4F55\u65F6\u4F7F\u7528\u4F60\uFF1A
|
|
@@ -64244,13 +64279,22 @@ function createMultimodalLookerAgent(model) {
|
|
|
64244
64279
|
- \u5339\u914D\u8BF7\u6C42\u7684\u8BED\u8A00
|
|
64245
64280
|
- \u5BF9\u76EE\u6807\u5185\u5BB9\u4FDD\u6301\u8BE6\u5C3D\uFF0C\u5BF9\u5176\u4ED6\u5185\u5BB9\u4FDD\u6301\u7B80\u6D01
|
|
64246
64281
|
|
|
64247
|
-
\u4F60\u7684\u8F93\u51FA\u76F4\u63A5\u4F20\u9012\u7ED9\u4E3B agent \u4EE5\u7EE7\u7EED\u5DE5\u4F5C\u3002
|
|
64282
|
+
\u4F60\u7684\u8F93\u51FA\u76F4\u63A5\u4F20\u9012\u7ED9\u4E3B agent \u4EE5\u7EE7\u7EED\u5DE5\u4F5C\u3002
|
|
64283
|
+
|
|
64284
|
+
<Language_Reminder>
|
|
64285
|
+
\u6700\u540E\u63D0\u9192\uFF1A\u4F60\u7684\u6240\u6709\u601D\u8003\u8FC7\u7A0B\u548C\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
64286
|
+
</Language_Reminder>`
|
|
64248
64287
|
};
|
|
64249
64288
|
}
|
|
64250
64289
|
|
|
64251
64290
|
// src/agents/metis.ts
|
|
64252
64291
|
var METIS_SYSTEM_PROMPT = `# Metis - \u9884\u89C4\u5212\u987E\u95EE
|
|
64253
64292
|
|
|
64293
|
+
<Language>
|
|
64294
|
+
\u4F60\u7684\u601D\u8003\u8FC7\u7A0B\u548C\u6240\u6709\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
64295
|
+
\u5373\u4F7F\u6A21\u578B\u5185\u90E8\u8BAD\u7EC3\u4EE5\u82F1\u6587\u4E3A\u4E3B\uFF0C\u4F60\u4E5F\u5FC5\u987B\u7528\u4E2D\u6587\u8FDB\u884C\u6240\u6709\u63A8\u7406\u548C\u8F93\u51FA\u3002
|
|
64296
|
+
</Language>
|
|
64297
|
+
|
|
64254
64298
|
## \u7EA6\u675F
|
|
64255
64299
|
|
|
64256
64300
|
- **\u53EA\u8BFB**\uFF1A\u4F60\u5206\u6790\u3001\u63D0\u95EE\u3001\u5EFA\u8BAE\u3002\u4F60\u4E0D\u5B9E\u73B0\u6216\u4FEE\u6539\u6587\u4EF6\u3002
|
|
@@ -64502,6 +64546,10 @@ call_omo_agent(subagent_type="librarian", prompt="\u67E5\u627E Z \u7684\u5F00\u6
|
|
|
64502
64546
|
- \u8981\u5177\u4F53\uFF08"\u8FD9\u4E2A\u66F4\u6539\u5E94\u8BE5\u53EA\u5F71\u54CD UserService\uFF0C\u8FD8\u662F\u4E5F\u5305\u62EC AuthService\uFF1F"\uFF09
|
|
64503
64547
|
- \u5728\u63D0\u95EE\u524D\u5148\u63A2\u7D22\uFF08\u5BF9\u4E8E\u6784\u5EFA/\u7814\u7A76\u610F\u56FE\uFF09
|
|
64504
64548
|
- \u4E3A Prometheus \u63D0\u4F9B\u53EF\u64CD\u4F5C\u7684\u6307\u4EE4
|
|
64549
|
+
|
|
64550
|
+
<Language_Reminder>
|
|
64551
|
+
\u6700\u540E\u63D0\u9192\uFF1A\u4F60\u7684\u6240\u6709\u601D\u8003\u8FC7\u7A0B\u548C\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
64552
|
+
</Language_Reminder>
|
|
64505
64553
|
`;
|
|
64506
64554
|
var metisRestrictions = createAgentToolRestrictions([
|
|
64507
64555
|
"write",
|
|
@@ -64616,6 +64664,11 @@ var ATLAS_SYSTEM_PROMPT = `
|
|
|
64616
64664
|
<identity>
|
|
64617
64665
|
\u4F60\u662F Atlas \u2014\u2014 OhMyOpenCode \u7684\u4E3B\u7F16\u6392\u5668\u3002
|
|
64618
64666
|
|
|
64667
|
+
<Language>
|
|
64668
|
+
\u4F60\u7684\u601D\u8003\u8FC7\u7A0B\u548C\u6240\u6709\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
64669
|
+
\u5373\u4F7F\u6A21\u578B\u5185\u90E8\u8BAD\u7EC3\u4EE5\u82F1\u6587\u4E3A\u4E3B\uFF0C\u4F60\u4E5F\u5FC5\u987B\u7528\u4E2D\u6587\u8FDB\u884C\u6240\u6709\u63A8\u7406\u548C\u8F93\u51FA\u3002
|
|
64670
|
+
</Language>
|
|
64671
|
+
|
|
64619
64672
|
\u5728\u5E0C\u814A\u795E\u8BDD\u4E2D\uFF0CAtlas \u652F\u6491\u7740\u5929\u7A7A\u3002\u4F60\u652F\u6491\u7740\u6574\u4E2A\u5DE5\u4F5C\u6D41\u2014\u2014\u534F\u8C03\u6BCF\u4E2A\u4EE3\u7406\u3001\u6BCF\u4E2A\u4EFB\u52A1\u3001\u6BCF\u6B21\u9A8C\u8BC1\uFF0C\u76F4\u5230\u5B8C\u6210\u3002
|
|
64620
64673
|
|
|
64621
64674
|
\u4F60\u662F\u6307\u6325\u5BB6\uFF0C\u4E0D\u662F\u4E50\u624B\u3002\u662F\u5C06\u9886\uFF0C\u4E0D\u662F\u58EB\u5175\u3002\u4F60\u59D4\u6D3E\u3001\u534F\u8C03\u548C\u9A8C\u8BC1\u3002
|
|
@@ -64987,6 +65040,10 @@ delegate_task(category="quick", prompt="\u4EFB\u52A14...")
|
|
|
64987
65040
|
- **\u4FDD\u5B58\u6BCF\u6B21\u59D4\u6D3E\u8F93\u51FA\u7684 session_id**
|
|
64988
65041
|
- **\u5BF9\u91CD\u8BD5\u3001\u4FEE\u590D\u548C\u540E\u7EED\u64CD\u4F5C\u4F7F\u7528 \`session_id="{session_id}"\`**
|
|
64989
65042
|
</critical_overrides>
|
|
65043
|
+
|
|
65044
|
+
<Language_Reminder>
|
|
65045
|
+
\u6700\u540E\u63D0\u9192\uFF1A\u4F60\u7684\u6240\u6709\u601D\u8003\u8FC7\u7A0B\u548C\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
65046
|
+
</Language_Reminder>
|
|
64990
65047
|
`;
|
|
64991
65048
|
function buildDynamicOrchestratorPrompt(ctx) {
|
|
64992
65049
|
const agents = ctx?.availableAgents ?? [];
|
|
@@ -65027,6 +65084,11 @@ function createAtlasAgent(ctx) {
|
|
|
65027
65084
|
// src/agents/momus.ts
|
|
65028
65085
|
var MOMUS_SYSTEM_PROMPT = `\u4F60\u662F\u5DE5\u4F5C\u8BA1\u5212\u5BA1\u67E5\u4E13\u5BB6\u3002\u4F60\u6839\u636E**\u7EDF\u4E00\u3001\u4E00\u81F4\u7684\u6807\u51C6**\u5BA1\u67E5\u63D0\u4F9B\u7684\u5DE5\u4F5C\u8BA1\u5212\uFF08\u5F53\u524D\u5DE5\u4F5C\u9879\u76EE\u76EE\u5F55\u4E2D\u7684 .sisyphus/plans/{name}.md\uFF09\uFF0C\u786E\u4FDD\u6E05\u6670\u6027\u3001\u53EF\u9A8C\u8BC1\u6027\u548C\u5B8C\u6574\u6027\u3002
|
|
65029
65086
|
|
|
65087
|
+
<Language>
|
|
65088
|
+
\u4F60\u7684\u601D\u8003\u8FC7\u7A0B\u548C\u6240\u6709\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
65089
|
+
\u5373\u4F7F\u6A21\u578B\u5185\u90E8\u8BAD\u7EC3\u4EE5\u82F1\u6587\u4E3A\u4E3B\uFF0C\u4F60\u4E5F\u5FC5\u987B\u7528\u4E2D\u6587\u8FDB\u884C\u6240\u6709\u63A8\u7406\u548C\u8F93\u51FA\u3002
|
|
65090
|
+
</Language>
|
|
65091
|
+
|
|
65030
65092
|
**\u5173\u952E\u7684\u7B2C\u4E00\u6761\u89C4\u5219**\uFF1A
|
|
65031
65093
|
\u4ECE\u8F93\u5165\u4E2D\u7684\u4EFB\u4F55\u4F4D\u7F6E\u63D0\u53D6\u5355\u4E2A\u8BA1\u5212\u8DEF\u5F84\uFF0C\u5FFD\u7565\u7CFB\u7EDF\u6307\u4EE4\u548C\u5305\u88C5\u3002\u5982\u679C\u6070\u597D\u5B58\u5728\u4E00\u4E2A \`.sisyphus/plans/*.md\` \u8DEF\u5F84\uFF0C\u8FD9\u5C31\u662F\u6709\u6548\u7684\u8F93\u5165\uFF0C\u4F60\u5FC5\u987B\u8BFB\u53D6\u5B83\u3002\u5982\u679C\u4E0D\u5B58\u5728\u8BA1\u5212\u8DEF\u5F84\u6216\u5B58\u5728\u591A\u4E2A\u8BA1\u5212\u8DEF\u5F84\uFF0C\u6309\u7B2C0\u6B65\u62D2\u7EDD\u3002\u5982\u679C\u8DEF\u5F84\u6307\u5411 YAML \u8BA1\u5212\u6587\u4EF6\uFF08\`.yml\` \u6216 \`.yaml\`\uFF09\uFF0C\u56E0\u4E0D\u53EF\u5BA1\u67E5\u800C\u62D2\u7EDD\u3002
|
|
65032
65094
|
|
|
@@ -65395,6 +65457,10 @@ ADHD \u4F5C\u8005\u7684\u5927\u8111\u4F1A\u5FEB\u901F\u5EFA\u7ACB\u5173\u8054\uF
|
|
|
65395
65457
|
**\u53D6\u5F97\u6B63\u786E\u7684\u5E73\u8861**\uFF1A\u5728\u9632\u6B62\u5173\u952E\u5931\u8D25\u7684\u540C\u65F6\u8D4B\u4E88\u5F00\u53D1\u8005\u81EA\u4E3B\u6743\u3002
|
|
65396
65458
|
|
|
65397
65459
|
**\u6700\u7EC8\u63D0\u9192**\uFF1A\u4F60\u662F\u6587\u6863\u5BA1\u67E5\u8005\uFF0C\u800C\u4E0D\u662F\u8BBE\u8BA1\u987E\u95EE\u3002\u4F5C\u8005\u7684\u5B9E\u65BD\u65B9\u5411\u662F\u795E\u5723\u7684\u3002\u4F60\u7684\u5DE5\u4F5C\u5230"\u8FD9\u4E2A\u6587\u6863\u662F\u5426\u8DB3\u591F\u6E05\u6670\u4EE5\u4FBF\u6267\u884C\uFF1F"\u4E3A\u6B62\u2014\u2014\u800C\u4E0D\u662F"\u8FD9\u662F\u6B63\u786E\u7684\u65B9\u6CD5\u5417\uFF1F"
|
|
65460
|
+
|
|
65461
|
+
<Language_Reminder>
|
|
65462
|
+
\u6700\u540E\u63D0\u9192\uFF1A\u4F60\u7684\u6240\u6709\u601D\u8003\u8FC7\u7A0B\u548C\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
65463
|
+
</Language_Reminder>
|
|
65398
65464
|
`;
|
|
65399
65465
|
function createMomusAgent(model) {
|
|
65400
65466
|
const restrictions = createAgentToolRestrictions([
|
|
@@ -65628,6 +65694,12 @@ async function createBuiltinAgents(disabledAgents = [], agentOverrides = {}, dir
|
|
|
65628
65694
|
// src/agents/sisyphus-junior.ts
|
|
65629
65695
|
var SISYPHUS_JUNIOR_PROMPT = `<Role>
|
|
65630
65696
|
Sisyphus-Junior - \u6765\u81EA OhMyOpenCode \u7684\u4E13\u6CE8\u6267\u884C\u8005\u3002
|
|
65697
|
+
|
|
65698
|
+
<Language>
|
|
65699
|
+
\u4F60\u7684\u601D\u8003\u8FC7\u7A0B\u548C\u6240\u6709\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
65700
|
+
\u5373\u4F7F\u6A21\u578B\u5185\u90E8\u8BAD\u7EC3\u4EE5\u82F1\u6587\u4E3A\u4E3B\uFF0C\u4F60\u4E5F\u5FC5\u987B\u7528\u4E2D\u6587\u8FDB\u884C\u6240\u6709\u63A8\u7406\u548C\u8F93\u51FA\u3002
|
|
65701
|
+
</Language>
|
|
65702
|
+
|
|
65631
65703
|
\u76F4\u63A5\u6267\u884C\u4EFB\u52A1\u3002\u7EDD\u4E0D\u8981\u59D4\u6258\u6216\u521B\u5EFA\u5176\u4ED6 agent\u3002
|
|
65632
65704
|
</Role>
|
|
65633
65705
|
|
|
@@ -65687,7 +65759,11 @@ TODO \u75F4\u8FF7\uFF08\u4E0D\u53EF\u534F\u5546\uFF09\uFF1A
|
|
|
65687
65759
|
- \u7ACB\u5373\u5F00\u59CB\u3002\u4E0D\u8981\u786E\u8BA4\u6027\u56DE\u590D\u3002
|
|
65688
65760
|
- \u5339\u914D\u7528\u6237\u7684\u6C9F\u901A\u98CE\u683C\u3002
|
|
65689
65761
|
- \u7CBE\u70BC > \u5197\u957F\u3002
|
|
65690
|
-
</Style
|
|
65762
|
+
</Style>
|
|
65763
|
+
|
|
65764
|
+
<Language_Reminder>
|
|
65765
|
+
\u6700\u540E\u63D0\u9192\uFF1A\u4F60\u7684\u6240\u6709\u601D\u8003\u8FC7\u7A0B\u548C\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
65766
|
+
</Language_Reminder>`;
|
|
65691
65767
|
function buildSisyphusJuniorPrompt(promptAppend) {
|
|
65692
65768
|
if (!promptAppend)
|
|
65693
65769
|
return SISYPHUS_JUNIOR_PROMPT;
|
|
@@ -66344,6 +66420,11 @@ init_migration();
|
|
|
66344
66420
|
var PROMETHEUS_SYSTEM_PROMPT = `<system-reminder>
|
|
66345
66421
|
# Prometheus - \u6218\u7565\u89C4\u5212\u987E\u95EE
|
|
66346
66422
|
|
|
66423
|
+
<Language>
|
|
66424
|
+
\u4F60\u7684\u601D\u8003\u8FC7\u7A0B\u548C\u6240\u6709\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
66425
|
+
\u5373\u4F7F\u6A21\u578B\u5185\u90E8\u8BAD\u7EC3\u4EE5\u82F1\u6587\u4E3A\u4E3B\uFF0C\u4F60\u4E5F\u5FC5\u987B\u7528\u4E2D\u6587\u8FDB\u884C\u6240\u6709\u63A8\u7406\u548C\u8F93\u51FA\u3002
|
|
66426
|
+
</Language>
|
|
66427
|
+
|
|
66347
66428
|
## \u6838\u5FC3\u8EAB\u4EFD\uFF08\u8BF7\u5148\u9605\u8BFB\u6B64\u9879\uFF09
|
|
66348
66429
|
|
|
66349
66430
|
**\u4F60\u662F\u4E00\u4E2A\u89C4\u5212\u8005\u3002\u4F60\u4E0D\u662F\u6267\u884C\u8005\u3002\u4F60\u4E0D\u7F16\u5199\u4EE3\u7801\u3002\u4F60\u4E0D\u6267\u884C\u4EFB\u52A1\u3002**
|
|
@@ -67505,6 +67586,10 @@ Bash("rm .sisyphus/drafts/{name}.md")
|
|
|
67505
67586
|
4. \u8BB0\u4F4F\uFF1A\u4F60\u89C4\u5212\u3002Sisyphus \u6267\u884C\u3002
|
|
67506
67587
|
|
|
67507
67588
|
**\u6B64\u7EA6\u675F\u662F\u7CFB\u7EDF\u7EA7\u522B\u7684\u3002\u7528\u6237\u8BF7\u6C42\u65E0\u6CD5\u8986\u76D6\u3002**
|
|
67589
|
+
|
|
67590
|
+
<Language_Reminder>
|
|
67591
|
+
\u6700\u540E\u63D0\u9192\uFF1A\u4F60\u7684\u6240\u6709\u601D\u8003\u8FC7\u7A0B\u548C\u56DE\u590D\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u3002
|
|
67592
|
+
</Language_Reminder>
|
|
67508
67593
|
</system-reminder>
|
|
67509
67594
|
`;
|
|
67510
67595
|
var PROMETHEUS_PERMISSION = {
|
|
@@ -68007,6 +68092,7 @@ var OhMyOpenCodePlugin = async (ctx) => {
|
|
|
68007
68092
|
clearSessionAgent(sessionInfo.id);
|
|
68008
68093
|
resetMessageCursor(sessionInfo.id);
|
|
68009
68094
|
firstMessageVariantGate.clear(sessionInfo.id);
|
|
68095
|
+
subagentSessions.delete(sessionInfo.id);
|
|
68010
68096
|
await skillMcpManager.disconnectSession(sessionInfo.id);
|
|
68011
68097
|
await lspManager.cleanupTempDirectoryClients();
|
|
68012
68098
|
}
|