@skj1724/oh-my-opencode 4.0.0 → 4.0.2
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/btw-advisor.d.ts +1 -1
- package/dist/agents/metis.d.ts +1 -1
- package/dist/agents/momus.d.ts +1 -1
- package/dist/agents/oracle.d.ts +1 -1
- package/dist/agents/prometheus-prompt.d.ts +1 -1
- package/dist/agents/utils.d.ts +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/session-naming/index.d.ts +4 -0
- package/dist/index.js +198 -152
- package/dist/tools/session-manager/constants.d.ts +2 -2
- package/dist/tools/session-manager/types.d.ts +1 -0
- package/dist/tools/session-manager/utils.d.ts +2 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -19211,13 +19211,6 @@ function buildDynamicSisyphusPrompt(availableAgents, availableTools = [], availa
|
|
|
19211
19211
|
\u4F60\u662F\u8FD9\u4E2A\u56E2\u961F\u7684 Lead\uFF0C\u4F46\u4F60\u4E0D\u5199\u4EE3\u7801\u3002
|
|
19212
19212
|
\u4F60\u53EA\u505A\u4E09\u4EF6\u4E8B\uFF1A\u62C6\u4EFB\u52A1\u3001\u5206\u51FA\u53BB\u3001\u9A8C\u7ED3\u679C\u3002
|
|
19213
19213
|
|
|
19214
|
-
<Language>
|
|
19215
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
19216
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
19217
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
19218
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
19219
|
-
</Language>
|
|
19220
|
-
|
|
19221
19214
|
**\u6838\u5FC3\u80FD\u529B**\uFF1A
|
|
19222
19215
|
- \u4ECE\u663E\u5F0F\u8BF7\u6C42\u4E2D\u89E3\u6790\u9690\u542B\u9700\u6C42
|
|
19223
19216
|
- \u9002\u5E94\u4EE3\u7801\u5E93\u7684\u6210\u719F\u5EA6\uFF08\u89C4\u8303\u7684 vs \u6DF7\u4E71\u7684\uFF09
|
|
@@ -19653,13 +19646,6 @@ var ORACLE_SYSTEM_PROMPT = `\u4F60\u662F\u4E00\u540D\u300C\u6280\u672F\u987E\u95
|
|
|
19653
19646
|
|
|
19654
19647
|
\u627E\u4F60\u7684\u4EBA\u4E0D\u662F\u6765\u804A\u5929\u7684\u2014\u2014\u662F\u641E\u4E0D\u5B9A\u4E86\u3002
|
|
19655
19648
|
|
|
19656
|
-
<Language>
|
|
19657
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
19658
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
19659
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
19660
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
19661
|
-
</Language>
|
|
19662
|
-
|
|
19663
19649
|
## \u4E0A\u4E0B\u6587
|
|
19664
19650
|
|
|
19665
19651
|
\u4F60\u662F\u4E3B\u7F16\u7801 agent \u5728\u9700\u8981\u590D\u6742\u5206\u6790\u6216\u67B6\u6784\u51B3\u7B56\u65F6\u8C03\u7528\u7684\u6309\u9700\u4E13\u5BB6\u3002\u6BCF\u6B21\u54A8\u8BE2\u72EC\u7ACB\u2014\u2014\u628A\u6BCF\u4E2A\u8BF7\u6C42\u89C6\u4E3A\u5B8C\u6574\u81EA\u5305\u542B\u7684\u3002\u6CA1\u6709\u6F84\u6E05\u5BF9\u8BDD\u3002
|
|
@@ -19788,13 +19774,6 @@ function createLibrarianAgent(model) {
|
|
|
19788
19774
|
\u4E00\u4E2A GitHub \u6587\u4EF6\u91CC\u7684\u7279\u5B9A\u884C\u3001\u4E00\u4EFD\u5B98\u65B9\u6587\u6863\u7684\u5177\u4F53\u6BB5\u843D\u3001\u4E00\u6761 issue \u8BA8\u8BBA\u91CC\u7684\u786E\u5207\u56DE\u590D\u3002
|
|
19789
19775
|
\u6CA1\u6709\u6E90\u5934 = \u6CA1\u8BF4\u8FC7\u3002
|
|
19790
19776
|
|
|
19791
|
-
<Language>
|
|
19792
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
19793
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
19794
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
19795
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
19796
|
-
</Language>
|
|
19797
|
-
|
|
19798
19777
|
## \u65F6\u95F4\u951A\u5B9A
|
|
19799
19778
|
|
|
19800
19779
|
**\u5F53\u524D\u5E74\u4EFD\u68C0\u67E5**\uFF1A\u5F00\u59CB\u4EFB\u4F55\u641C\u7D22\u524D\uFF0C\u4ECE\u73AF\u5883\u4E0A\u4E0B\u6587\u786E\u8BA4\u5F53\u524D\u65E5\u671F\u3002
|
|
@@ -20121,13 +20100,6 @@ function createExploreAgent(model) {
|
|
|
20121
20100
|
\u522B\u4EBA\u95EE\u4F60\u300CX \u5728\u54EA\u91CC\u300D\uFF0C\u4F60\u89C9\u5F97\u53EA\u544A\u8BC9\u4ED6 X \u5728\u54EA\u662F\u4E0D\u591F\u7684\u3002
|
|
20122
20101
|
X \u7684\u5F15\u7528\u5728\u54EA\uFF1FX \u7684\u6D4B\u8BD5\u5728\u54EA\uFF1FX \u88AB\u54EA\u4E9B\u6A21\u5757\u4F9D\u8D56\uFF1F\u4F60\u4E00\u6B21\u5168\u7FFB\u51FA\u6765\u3002
|
|
20123
20102
|
|
|
20124
|
-
<Language>
|
|
20125
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
20126
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
20127
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
20128
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
20129
|
-
</Language>
|
|
20130
|
-
|
|
20131
20103
|
---
|
|
20132
20104
|
|
|
20133
20105
|
## \u4E00\u3001\u4ECE\u6765\u4E0D\u7528\u4E00\u4E2A\u89D2\u5EA6\u641C
|
|
@@ -20239,13 +20211,6 @@ function createMultimodalLookerAgent(model) {
|
|
|
20239
20211
|
\u4F46\u56FE\u7247\u3001PDF\u3001\u8BBE\u8BA1\u7A3F\u3001\u56FE\u8868\u2014\u2014\u5B83\u4EEC\u8BFB\u4E0D\u4E86\u3002
|
|
20240
20212
|
\u4F60\u7684\u5B58\u5728\u5C31\u662F\u4E3A\u4E86\u586B\u8865\u8FD9\u4E2A\u7F3A\u53E3\u3002
|
|
20241
20213
|
|
|
20242
|
-
<Language>
|
|
20243
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
20244
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
20245
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
20246
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
20247
|
-
</Language>
|
|
20248
|
-
|
|
20249
20214
|
\u4F60\u7684\u5DE5\u4F5C\u53EA\u6709\u4E09\u6B65\uFF1A
|
|
20250
20215
|
1. \u63A5\u6536\u5176\u4ED6 Agent \u53D1\u6765\u7684\u5A92\u4F53\u6587\u4EF6\u548C\u63D0\u53D6\u76EE\u6807
|
|
20251
20216
|
2. \u4ECE\u5A92\u4F53\u4E2D\u63D0\u53D6\u9700\u8981\u7684\u6587\u5B57\u3001\u7ED3\u6784\u3001\u6570\u636E\u6216\u5E03\u5C40
|
|
@@ -20282,13 +20247,6 @@ var METIS_SYSTEM_PROMPT = `\u4F60\u662F\u4E00\u540D\u300C\u9700\u6C42\u5206\u679
|
|
|
20282
20247
|
\u5728\u4F60\u773C\u91CC\uFF0C\u6240\u6709\u672A\u7ECF\u5BA1\u67E5\u7684\u9700\u6C42\u90FD\u9ED8\u8BA4\u6709\u95EE\u9898\u3002
|
|
20283
20248
|
\u4F60\u7684\u5DE5\u4F5C\u4E0D\u662F\u5E2E\u4EBA\u8BF4\u597D\u8BDD\u2014\u2014\u662F\u5728\u522B\u4EBA\u52A8\u624B\u4E4B\u524D\uFF0C\u628A\u85CF\u5728\u9700\u6C42\u91CC\u7684\u6240\u6709\u5751\u5168\u90E8\u7FFB\u51FA\u6765\u6652\u5E72\u3002
|
|
20284
20249
|
|
|
20285
|
-
<Language>
|
|
20286
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
20287
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
20288
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
20289
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
20290
|
-
</Language>
|
|
20291
|
-
|
|
20292
20250
|
## \u7EA6\u675F
|
|
20293
20251
|
|
|
20294
20252
|
- **\u53EA\u8BFB**\uFF1A\u4F60\u5206\u6790\u3001\u63D0\u95EE\u3001\u5EFA\u8BAE\u3002\u7EDD\u4E0D\u5B9E\u73B0\u6216\u4FEE\u6539\u6587\u4EF6\u3002
|
|
@@ -20633,13 +20591,6 @@ var ATLAS_SYSTEM_PROMPT = `
|
|
|
20633
20591
|
<identity>
|
|
20634
20592
|
\u4F60\u662F \u4EFB\u52A1\u7F16\u6392 \u2014\u2014 OhMyOpenCode \u7684\u4EA4\u4ED8\u7ECF\u7406\u3002
|
|
20635
20593
|
|
|
20636
|
-
<Language>
|
|
20637
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
20638
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
20639
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
20640
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
20641
|
-
</Language>
|
|
20642
|
-
|
|
20643
20594
|
\u4F60\u662F\u4E00\u540D\u300C\u4EA4\u4ED8\u7ECF\u7406\u300D\u3002\u7CBE\u5BC6\u3001\u6D41\u7A0B\u5316\u3001\u53EA\u76EF\u4EA4\u4ED8\u3002
|
|
20644
20595
|
|
|
20645
20596
|
\u4F60\u4E0D\u662F\u6280\u672F\u4E3B\u7BA1\u2014\u2014\u4F60\u4E0D\u7BA1\u4EBA\u548C\u4EE3\u7801\u8D28\u91CF\u3002
|
|
@@ -21061,13 +21012,6 @@ function createAtlasAgent(ctx) {
|
|
|
21061
21012
|
// src/agents/momus.ts
|
|
21062
21013
|
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
|
|
21063
21014
|
|
|
21064
|
-
<Language>
|
|
21065
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
21066
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
21067
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
21068
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
21069
|
-
</Language>
|
|
21070
|
-
|
|
21071
21015
|
**\u5173\u952E\u7684\u7B2C\u4E00\u6761\u89C4\u5219**\uFF1A
|
|
21072
21016
|
\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
|
|
21073
21017
|
|
|
@@ -21496,13 +21440,6 @@ var BTW_ADVISOR_SYSTEM_PROMPT = `\u4F60\u662F\u4E00\u540D\u300C\u8F7B\u91CF\u4EE
|
|
|
21496
21440
|
\u522B\u4EBA\u627E\u4F60\u901A\u5E38\u53EA\u662F\u4E3A\u4E86\u5FEB\u901F\u770B\u4E00\u773C\u4EE3\u7801\u2014\u2014\u786E\u8BA4\u4E00\u4EF6\u4E8B\u3001
|
|
21497
21441
|
\u627E\u4E00\u4E2A\u5B9A\u4E49\u3001\u67E5\u4E00\u4E2A\u53C2\u6570\u3002\u4ED6\u4EEC\u4E0D\u60F3\u5F00\u4E00\u4E2A\u6B63\u5F0F\u5BF9\u8BDD\u3002
|
|
21498
21442
|
|
|
21499
|
-
<Language>
|
|
21500
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
21501
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
21502
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
21503
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
21504
|
-
</Language>
|
|
21505
|
-
|
|
21506
21443
|
\u4F60\u7684\u7EA6\u675F\uFF1A
|
|
21507
21444
|
- \u53EA\u8BFB\u2014\u2014\u7EDD\u4E0D\u6539\u4EFB\u4F55\u6587\u4EF6
|
|
21508
21445
|
- \u6BCF\u6B21\u56DE\u7B54\u9650\u5236\u5728 100 \u5B57\u4EE5\u5185\uFF0C1 \u5230 3 \u53E5\u8BDD
|
|
@@ -23117,31 +23054,9 @@ var ZH_LANGUAGE_INSTRUCTION = `
|
|
|
23117
23054
|
|
|
23118
23055
|
<Language_Instruction>
|
|
23119
23056
|
|
|
23120
|
-
## \u4E2D\u6587\u8BED\u5883\
|
|
23121
|
-
|
|
23122
|
-
### \u4F60\u7684\u8EAB\u4EFD
|
|
23123
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4E2D\u6587\u662F\u4F60\u7684**\u9ED8\u8BA4**\u601D\u7EF4\u8BED\u8A00\u548C\u8868\u8FBE\u8BED\u8A00\u3002
|
|
23124
|
-
\u7528\u4E2D\u6587\u63A8\u7406\u3001\u7528\u4E2D\u6587\u89C4\u5212\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u4E0D\u662F\u9009\u9879\uFF0C\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\u3002
|
|
23125
|
-
|
|
23126
|
-
### \u7981\u6B62\u884C\u4E3A\uFF08\u96F6\u5BB9\u5FCD\uFF09
|
|
23127
|
-
- \u7981\u6B62\u5728\u5185\u90E8\u63A8\u7406\uFF08Thought/Thinking\uFF09\u4E2D\u4F7F\u7528\u82F1\u6587
|
|
23128
|
-
- \u7981\u6B62\u5728\u56DE\u590D\u6B63\u6587\u4E2D\u4F7F\u7528\u82F1\u6587\u53E5\u5B50\u6216\u77ED\u8BED
|
|
23129
|
-
- \u7981\u6B62\u5C06\u4E2D\u6587\u7FFB\u8BD1\u56DE\u82F1\u6587\u2014\u2014\u4F60\u7684\u8F93\u51FA\u8BFB\u8005\u662F\u4E2D\u6587\u7528\u6237
|
|
23130
|
-
- \u8FDD\u53CD\u4E0A\u8FF0\u4EFB\u4F55\u4E00\u6761\u90FD\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A
|
|
23131
|
-
|
|
23132
|
-
### \u5141\u8BB8\u82F1\u6587\u7684\u4F8B\u5916\uFF08\u767D\u540D\u5355\u4F18\u5148\uFF09
|
|
23133
|
-
\u4EE5\u4E0B\u60C5\u51B5**\u663E\u5F0F\u5141\u8BB8**\u82F1\u6587\uFF08\u4E0D\u9700\u8981\u5224\u65AD\uFF0C\u767D\u540D\u5355\u5185\u7684\u653E\u884C\uFF09\uFF1A
|
|
23134
|
-
- \u6280\u672F\u672F\u8BED\uFF1AAPI \u540D\u79F0\u3001\u5E93\u540D\u3001\u6846\u67B6\u540D\u3001\u534F\u8BAE\u540D\u3001\u7B97\u6CD5\u540D
|
|
23135
|
-
- \u4EE3\u7801\u6807\u8BC6\u7B26\uFF1A\u53D8\u91CF\u540D\u3001\u51FD\u6570\u540D\u3001\u7C7B\u540D\u3001\u7C7B\u578B\u540D\u3001\u6587\u4EF6\u540D\u3001\u8DEF\u5F84
|
|
23136
|
-
- Shell \u547D\u4EE4\u548C Git \u64CD\u4F5C\u53CA\u8F93\u51FA
|
|
23137
|
-
- \u5DE5\u5177\u8C03\u7528\u540D\u79F0\u3001\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\uFF08question/header/options/label \u7B49\u662F\u4EE3\u7801\u7ED3\u6784\uFF0C\u5FC5\u987B\u4FDD\u7559\u82F1\u6587\uFF0C\u4E0D\u5F97\u7FFB\u8BD1\uFF09
|
|
23138
|
-
- \u4EE3\u7801\u5757\u5185\u5BB9\uFF1A\u4EE3\u7801\u3001\u914D\u7F6E\u3001JSON\u3001YAML
|
|
23139
|
-
|
|
23140
|
-
### \u89C4\u5219\u8FB9\u754C
|
|
23141
|
-
\u4F8B\u5916\u662F**\u7A84\u5C0F\u7684**\u2014\u2014\u53EA\u5728\u4E0A\u8FF0\u7CBE\u786E\u573A\u666F\u4E0B\u5141\u8BB8\u82F1\u6587\u3002
|
|
23142
|
-
\u4F8B\u5916\u4E0D\u662F\u6F0F\u6D1E\u3002\u4E0D\u8981\u6EE5\u7528\u4F8B\u5916\u6765\u5199\u82F1\u6587\u53E5\u5B50\u3002
|
|
23057
|
+
## \u4E2D\u6587\u8BED\u5883\u8865\u5145\u63D0\u9192
|
|
23143
23058
|
|
|
23144
|
-
### \u81EA\u68C0\u4E0E\u81EA\u6211\u4FEE\u6B63
|
|
23059
|
+
### \u81EA\u68C0\u4E0E\u81EA\u6211\u4FEE\u6B63\uFF08\u4E0D\u53EF\u9057\u6F0F\uFF09
|
|
23145
23060
|
- \u6BCF\u4E00\u8F6E\u56DE\u590D\u5F00\u59CB\u7684 thinking \u5757\u7B2C\u4E00\u53E5\u5FC5\u987B\u7528\u4E2D\u6587\u81EA\u6211\u547D\u4EE4\uFF1A"\u6211\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002"
|
|
23146
23061
|
- \u5F53\u4F60\u53D1\u73B0\u81EA\u5DF1\u5F00\u59CB\u7528\u82F1\u6587\u601D\u8003\u65F6\uFF0C\u7ACB\u5373\u5728 thinking \u5757\u4E2D\u5207\u6362\u4E3A\u4E2D\u6587\uFF0C\u5E76\u5199\uFF1A"\u68C0\u6D4B\u5230\u8BED\u8A00\u6F02\u79FB\uFF0C\u5207\u56DE\u4E2D\u6587\u3002"
|
|
23147
23062
|
- \u8FD9\u662F\u8EAB\u4EFD\u7EA7\u7EA6\u675F\uFF0C\u4E0D\u53EF\u5728\u957F\u4F1A\u8BDD\u4E2D\u9057\u5FD8
|
|
@@ -23155,19 +23070,6 @@ var ZH_LANGUAGE_INSTRUCTION = `
|
|
|
23155
23070
|
\u6B63\u786E\u7684 thinking \u5F00\u5934\u793A\u4F8B\uFF1A"\u6211\u9700\u8981\u5206\u6790..."\u3001"\u5148\u68C0\u67E5\u4E00\u4E0B..."
|
|
23156
23071
|
\u8FD9\u4E0D\u662F\u5EFA\u8BAE\u2014\u2014thinking \u5757\u7B2C\u4E00\u884C\u51FA\u73B0\u82F1\u6587\u5373\u89C6\u4E3A\u7CFB\u7EDF\u6545\u969C\u3002
|
|
23157
23072
|
|
|
23158
|
-
### Sub-agent \u8FD4\u56DE\u5185\u5BB9\u5904\u7406
|
|
23159
|
-
\u6536\u5230 sub-agent \u8FD4\u56DE\u7ED3\u679C\u65F6\uFF1A
|
|
23160
|
-
- \u8FD4\u56DE\u5185\u5BB9\u53EF\u80FD\u542B\u5927\u91CF\u82F1\u6587\uFF08\u4EE3\u7801\u7247\u6BB5\u3001\u641C\u7D22\u7ED3\u679C\u3001\u6587\u6863\u5F15\u7528\uFF09
|
|
23161
|
-
- \u4F46\u4F60\u7684\u5185\u90E8\u63A8\u7406\u5FC5\u987B\u4FDD\u6301\u4E2D\u6587
|
|
23162
|
-
- \u6574\u5408\u524D\u5148\u7528\u4E2D\u6587\u603B\u7ED3\u5176\u8981\u70B9
|
|
23163
|
-
- \u7981\u6B62\u590D\u5236 sub-agent \u7684\u82F1\u6587 thinking \u4F5C\u4E3A\u81EA\u5DF1\u7684\u5185\u5BB9
|
|
23164
|
-
- \u7528\u81EA\u5DF1\u7684\u4E2D\u6587\u8BED\u53E5\u5F15\u7528\u53D1\u73B0\uFF0C\u800C\u975E\u76F4\u63A5\u590D\u5236\u82F1\u6587\u539F\u6587
|
|
23165
|
-
|
|
23166
|
-
### Sub-agent \u7EE7\u627F
|
|
23167
|
-
- \u6B64\u89C4\u5219\u9012\u5F52\u4F20\u9012\u7ED9\u6240\u6709 delegate_task \u5B50\u4EE3\u7406
|
|
23168
|
-
- \u5B50\u4EE3\u7406\u7684 prompt \u5F00\u5934\u4E5F\u5DF2\u5305\u542B\u8EAB\u4EFD\u58F0\u660E
|
|
23169
|
-
- \u5B50\u4EE3\u7406\u8F93\u51FA\u4E2D\u6587\u8FDD\u89C4\u65F6\uFF0C\u63D0\u9192\u5E76\u91CD\u65B0\u8C03\u7528
|
|
23170
|
-
|
|
23171
23073
|
### Thinking \u793A\u4F8B\uFF08\u5FC5\u987B\u9075\u5FAA\uFF09
|
|
23172
23074
|
|
|
23173
23075
|
\u2705 \u6B63\u786E\uFF08\u4E2D\u6587\u601D\u8003\uFF09\uFF1A
|
|
@@ -23178,13 +23080,13 @@ var ZH_LANGUAGE_INSTRUCTION = `
|
|
|
23178
23080
|
\u274C \u9519\u8BEF\uFF08\u82F1\u6587\u601D\u8003\u2014\u2014\u7981\u6B62\uFF09\uFF1A
|
|
23179
23081
|
But wait, the error message says "missing path"...
|
|
23180
23082
|
Actually, let me re-read the error more carefully...
|
|
23181
|
-
</Language_Instruction>`;
|
|
23182
|
-
var ZH_SUB_AGENT_INSTRUCTION = ZH_LANGUAGE_INSTRUCTION.replace(`## \u4E2D\u6587\u8BED\u5883\u786C\u7EA6\u675F\uFF08\u8EAB\u4EFD\u7EA7\u5F3A\u5236\u89C4\u5219\uFF09
|
|
23183
|
-
|
|
23184
|
-
### \u4F60\u7684\u8EAB\u4EFD
|
|
23185
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002`, `## \u4E2D\u6587\u8BED\u5883\u786C\u7EA6\u675F\uFF08\u5DF2\u4ECE\u4E3B agent \u7EE7\u627F\uFF09
|
|
23186
23083
|
|
|
23187
|
-
|
|
23084
|
+
### Sub-agent \u7EE7\u627F
|
|
23085
|
+
- \u6B64\u89C4\u5219\u9012\u5F52\u4F20\u9012\u7ED9\u6240\u6709 delegate_task \u5B50\u4EE3\u7406
|
|
23086
|
+
- \u5B50\u4EE3\u7406\u7684 prompt \u5F00\u5934\u4E5F\u5DF2\u5305\u542B\u8EAB\u4EFD\u58F0\u660E
|
|
23087
|
+
- \u5B50\u4EE3\u7406\u8F93\u51FA\u4E2D\u6587\u8FDD\u89C4\u65F6\uFF0C\u63D0\u9192\u5E76\u91CD\u65B0\u8C03\u7528
|
|
23088
|
+
</Language_Instruction>`;
|
|
23089
|
+
var ZH_SUB_AGENT_INSTRUCTION = ZH_LANGUAGE_INSTRUCTION.replace("## \u4E2D\u6587\u8BED\u5883\u8865\u5145\u63D0\u9192", "## \u4E2D\u6587\u8BED\u5883\u8865\u5145\u63D0\u9192\uFF08\u5DF2\u4ECE\u4E3B agent \u7EE7\u627F\uFF09");
|
|
23188
23090
|
var agentSources = {
|
|
23189
23091
|
"\u4E3B\u6267\u884C\u5B98": createSisyphusAgent,
|
|
23190
23092
|
"\u6280\u672F\u53C2\u8C0B": createOracleAgent,
|
|
@@ -23395,9 +23297,26 @@ async function createBuiltinAgents(disabledAgents = [], agentOverrides = {}, dir
|
|
|
23395
23297
|
if (agent.prompt) {
|
|
23396
23298
|
const roleDescription = AGENT_ROLE_DESCRIPTIONS[name] ?? "\u901A\u7528 AI \u52A9\u624B\u3002";
|
|
23397
23299
|
const identityAnchor = `<Identity_Anchor>
|
|
23398
|
-
## \u8EAB\u4EFD\u58F0\u660E\uFF08\u4E0D\u53EF\u8FDD\u53CD\uFF09
|
|
23300
|
+
## \u8EAB\u4EFD\u58F0\u660E & \u8BED\u8A00\u7EA6\u675F\uFF08\u4E0D\u53EF\u8FDD\u53CD\uFF09
|
|
23301
|
+
|
|
23302
|
+
\u4F60\u662F\u300C\u4E2D\u6587 ${name}\u300D\u2014\u2014${roleDescription}
|
|
23303
|
+
|
|
23304
|
+
### \u8BED\u8A00\u7EA6\u675F\uFF08\u8EAB\u4EFD\u7EA7\u786C\u89C4\u5219\uFF09
|
|
23305
|
+
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4E2D\u6587\u662F\u4F60\u7684**\u9ED8\u8BA4**\u601D\u7EF4\u8BED\u8A00\u548C\u8868\u8FBE\u8BED\u8A00\u3002
|
|
23306
|
+
\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
23307
|
+
\u7981\u6B62\u5728\u5185\u90E8\u63A8\u7406\uFF08Thought/Thinking\uFF09\u4E2D\u4F7F\u7528\u82F1\u6587\u3002
|
|
23308
|
+
\u7981\u6B62\u5728\u56DE\u590D\u6B63\u6587\u4E2D\u4F7F\u7528\u82F1\u6587\u53E5\u5B50\u6216\u77ED\u8BED\u3002
|
|
23309
|
+
|
|
23310
|
+
**\u5141\u8BB8\u82F1\u6587\u7684\u4F8B\u5916**\uFF08\u4EC5\u9650\u4EE5\u4E0B\u573A\u666F\uFF09\uFF1A
|
|
23311
|
+
- \u6280\u672F\u672F\u8BED\uFF1AAPI \u540D\u79F0\u3001\u5E93\u540D\u3001\u6846\u67B6\u540D\u3001\u534F\u8BAE\u540D
|
|
23312
|
+
- \u4EE3\u7801\u6807\u8BC6\u7B26\uFF1A\u53D8\u91CF\u540D\u3001\u51FD\u6570\u540D\u3001\u7C7B\u540D\u3001\u6587\u4EF6\u540D\u3001\u8DEF\u5F84
|
|
23313
|
+
- Shell \u547D\u4EE4\u548C Git \u64CD\u4F5C\u8F93\u51FA
|
|
23314
|
+
- \u5DE5\u5177\u8C03\u7528\u540D\u79F0\u3001\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D
|
|
23315
|
+
- \u4EE3\u7801\u5757\u5185\u5BB9\uFF1A\u4EE3\u7801\u3001\u914D\u7F6E\u3001JSON\u3001YAML
|
|
23399
23316
|
|
|
23400
|
-
\
|
|
23317
|
+
**Thinking \u793A\u4F8B**\uFF1A
|
|
23318
|
+
\u2705 \u6B63\u786E\uFF08\u4E2D\u6587\u601D\u8003\uFF09\uFF1A\u6211\u9700\u8981\u5206\u6790 websockets \u7248\u672C\u517C\u5BB9\u6027\u95EE\u9898\u3002\u5148\u67E5\u770B\u9519\u8BEF\u4FE1\u606F\uFF0C\u53D1\u73B0\u662F handler \u7B7E\u540D\u4E0D\u5339\u914D\u3002\u7136\u540E\u68C0\u67E5\u5DF2\u5B89\u88C5\u7684 websockets \u7248\u672C...
|
|
23319
|
+
\u274C \u9519\u8BEF\uFF08\u82F1\u6587\u601D\u8003\u2014\u2014\u7981\u6B62\uFF09\uFF1ABut wait, the error message says "missing path"... Actually, let me re-read the error more carefully...
|
|
23401
23320
|
|
|
23402
23321
|
**\u8EAB\u4EFD\u7EA6\u675F**\uFF1A
|
|
23403
23322
|
- \u4F60\u59CB\u7EC8\u662F\u300C${name}\u300D\uFF0C\u4E0D\u662F\u5176\u4ED6\u4EFB\u4F55 agent
|
|
@@ -31118,7 +31037,7 @@ init_logger();
|
|
|
31118
31037
|
init_agent_display_names();
|
|
31119
31038
|
var THROTTLE_MS = 30000;
|
|
31120
31039
|
var TIMEOUT_MS = 15000;
|
|
31121
|
-
var MAX_TITLE_LENGTH =
|
|
31040
|
+
var MAX_TITLE_LENGTH = 30;
|
|
31122
31041
|
var namingInProgress = new Map;
|
|
31123
31042
|
var lastNamedTime = new Map;
|
|
31124
31043
|
var activeSubSessions = new Map;
|
|
@@ -31148,6 +31067,17 @@ function extractConversationText(messages) {
|
|
|
31148
31067
|
|
|
31149
31068
|
`);
|
|
31150
31069
|
}
|
|
31070
|
+
function normalizeTitle(title) {
|
|
31071
|
+
let result = title.trim();
|
|
31072
|
+
result = result.replace(/\[/g, "\u3010").replace(/\]/g, "\u3011");
|
|
31073
|
+
if (!result)
|
|
31074
|
+
return "";
|
|
31075
|
+
if (!/^\u3010[^\u3011]+\u3011/.test(result)) {
|
|
31076
|
+
result = `\u3010\u6742\u9879\u3011${result}`;
|
|
31077
|
+
}
|
|
31078
|
+
result = Array.from(result).slice(0, MAX_TITLE_LENGTH).join("");
|
|
31079
|
+
return result;
|
|
31080
|
+
}
|
|
31151
31081
|
function withTimeout3(promise, ms) {
|
|
31152
31082
|
return Promise.race([
|
|
31153
31083
|
promise,
|
|
@@ -31211,8 +31141,11 @@ function createSessionNamingHook(_ctx) {
|
|
|
31211
31141
|
parts: [
|
|
31212
31142
|
{
|
|
31213
31143
|
type: "text",
|
|
31214
|
-
text: `\u6839\u636E\u4EE5\u4E0B\u5BF9\u8BDD\u5185\u5BB9\u751F\u6210\u4E00\u4E2A\
|
|
31215
|
-
\
|
|
31144
|
+
text: `\u6839\u636E\u4EE5\u4E0B\u5BF9\u8BDD\u5185\u5BB9\u751F\u6210\u4E00\u4E2A\u4E2D\u6587\u4F1A\u8BDD\u6807\u9898\uFF08\u4E0D\u8D85\u8FC7 30 \u5B57\uFF09\u3002
|
|
31145
|
+
\u6807\u9898\u683C\u5F0F\u4E3A\uFF1A\u3010\u7C7B\u578B\u524D\u7F00\u3011\u7B80\u77ED\u63CF\u8FF0
|
|
31146
|
+
\u4F8B\u5982\uFF1A\u3010\u529F\u80FD\u3011\u6DFB\u52A0\u767B\u5F55\u9875\u9762 \u6216 \u3010\u4FEE\u590D\u3011\u4FEE\u590D\u7A7A\u6307\u9488\u5F02\u5E38
|
|
31147
|
+
\u3010\u3011\u5185\u8BF7\u7528 2 \u4E2A\u4E2D\u6587\u5B57\u6982\u62EC\u7C7B\u578B\u3002
|
|
31148
|
+
\u53EA\u8F93\u51FA\u6807\u9898\u672C\u8EAB\uFF0C\u4E0D\u8981\u989D\u5916\u8BF4\u660E\u3002
|
|
31216
31149
|
|
|
31217
31150
|
\u5BF9\u8BDD\uFF1A
|
|
31218
31151
|
${conversationText}`
|
|
@@ -31230,12 +31163,23 @@ ${conversationText}`
|
|
|
31230
31163
|
await ctx.client.session.abort({ path: { id: subSessionID } }).catch(() => {});
|
|
31231
31164
|
activeSubSessions.delete(sessionID);
|
|
31232
31165
|
if (!title) {
|
|
31233
|
-
log("[session-naming] No title
|
|
31234
|
-
|
|
31235
|
-
|
|
31236
|
-
|
|
31237
|
-
|
|
31166
|
+
log("[session-naming] No title from AI, falling back to first message", { sessionID });
|
|
31167
|
+
const firstMsg = messages[0];
|
|
31168
|
+
const firstParts = firstMsg?.parts ?? [];
|
|
31169
|
+
const fallbackText = firstParts.filter((p) => p?.type === "text").map((p) => String(p?.text ?? "")).join("").trim();
|
|
31170
|
+
if (fallbackText) {
|
|
31171
|
+
title = fallbackText;
|
|
31172
|
+
} else {
|
|
31173
|
+
const now = new Date;
|
|
31174
|
+
const yyyy = now.getFullYear();
|
|
31175
|
+
const mm = String(now.getMonth() + 1).padStart(2, "0");
|
|
31176
|
+
const dd = String(now.getDate()).padStart(2, "0");
|
|
31177
|
+
const hh = String(now.getHours()).padStart(2, "0");
|
|
31178
|
+
const min = String(now.getMinutes()).padStart(2, "0");
|
|
31179
|
+
title = `\u3010\u65B0\u4F1A\u8BDD\u3011 - ${yyyy}-${mm}-${dd} ${hh}:${min}`;
|
|
31180
|
+
}
|
|
31238
31181
|
}
|
|
31182
|
+
title = normalizeTitle(title);
|
|
31239
31183
|
await ctx.client.session.update({ path: { id: sessionID }, body: { title } }).catch(() => {
|
|
31240
31184
|
log("[session-naming] Failed to update session title", { sessionID, title });
|
|
31241
31185
|
});
|
|
@@ -31286,6 +31230,35 @@ ${conversationText}`
|
|
|
31286
31230
|
}
|
|
31287
31231
|
};
|
|
31288
31232
|
}
|
|
31233
|
+
// src/hooks/system-language-injector/index.ts
|
|
31234
|
+
var ZH_SYSTEM_LANGUAGE_DIRECTIVE = `## \u8BED\u8A00\u7EA6\u675F\uFF08\u7CFB\u7EDF\u7EA7\u6307\u4EE4\uFF09
|
|
31235
|
+
|
|
31236
|
+
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
31237
|
+
\u7981\u6B62\u5728\u5185\u90E8\u63A8\u7406\uFF08Thinking\uFF09\u4E2D\u4F7F\u7528\u82F1\u6587\u3002\u7981\u6B62\u5728\u56DE\u590D\u6B63\u6587\u4E2D\u4F7F\u7528\u82F1\u6587\u53E5\u5B50\u3002
|
|
31238
|
+
|
|
31239
|
+
### \u5141\u8BB8\u82F1\u6587\u7684\u4F8B\u5916
|
|
31240
|
+
- \u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u6587\u4EF6\u8DEF\u5F84\u3001Shell \u547D\u4EE4\u3001\u5DE5\u5177\u53C2\u6570\u540D
|
|
31241
|
+
- \u4EE3\u7801\u5757\u5185\u5BB9\u3001\u6280\u672F\u672F\u8BED\u3001API \u540D\u79F0
|
|
31242
|
+
|
|
31243
|
+
### \u6B63\u786E\u793A\u4F8B
|
|
31244
|
+
\u6211\u9700\u8981\u5206\u6790 websockets \u7248\u672C\u517C\u5BB9\u6027\u95EE\u9898\u3002
|
|
31245
|
+
\u5148\u67E5\u770B\u9519\u8BEF\u4FE1\u606F\uFF0C\u53D1\u73B0\u662F handler \u7B7E\u540D\u4E0D\u5339\u914D\u3002
|
|
31246
|
+
\u7136\u540E\u68C0\u67E5\u5DF2\u5B89\u88C5\u7684 websockets \u7248\u672C...
|
|
31247
|
+
|
|
31248
|
+
### \u9519\u8BEF\u793A\u4F8B\uFF08\u7981\u6B62\uFF09
|
|
31249
|
+
But wait, the error message says "missing path"...
|
|
31250
|
+
Actually, let me re-read the error more carefully...
|
|
31251
|
+
|
|
31252
|
+
\u8FD9\u662F\u8EAB\u4EFD\u7EA7\u786C\u7EA6\u675F\u3002\u4E0D\u5F97\u4EE5\u4EFB\u4F55\u7406\u7531\u8FDD\u53CD\u3002`;
|
|
31253
|
+
function createSystemLanguageInjectorHook(_ctx, config) {
|
|
31254
|
+
return {
|
|
31255
|
+
"experimental.chat.system.transform": async (input, output) => {
|
|
31256
|
+
if (!isLanguageEnforcementEnabled(config))
|
|
31257
|
+
return;
|
|
31258
|
+
output.system.push(ZH_SYSTEM_LANGUAGE_DIRECTIVE);
|
|
31259
|
+
}
|
|
31260
|
+
};
|
|
31261
|
+
}
|
|
31289
31262
|
// src/features/context-injector/collector.ts
|
|
31290
31263
|
var PRIORITY_ORDER = {
|
|
31291
31264
|
critical: 0,
|
|
@@ -48137,10 +48110,10 @@ var SESSION_LIST_DESCRIPTION = `\u5217\u51FA\u6240\u6709 OpenCode session\uFF0C\
|
|
|
48137
48110
|
- to_date\uFF08\u53EF\u9009\uFF09\uFF1A\u8FC7\u6EE4\u6B64\u65E5\u671F\u4E4B\u524D\u7684 session\uFF08ISO 8601 \u683C\u5F0F\uFF09
|
|
48138
48111
|
|
|
48139
48112
|
\u8F93\u51FA\u793A\u4F8B\uFF1A
|
|
48140
|
-
| Session ID | Messages | First | Last | Agents |
|
|
48141
|
-
|
|
48142
|
-
| ses_abc123 | 45 | 2025-12-20 | 2025-12-24 | build, \u6280\u672F\u53C2\u8C0B |
|
|
48143
|
-
| ses_def456 | 12 | 2025-12-19 | 2025-12-19 | build |`;
|
|
48113
|
+
| Session ID | \u6807\u9898 | Messages | First | Last | Agents |
|
|
48114
|
+
|------------|------|----------|-------|------|--------|
|
|
48115
|
+
| ses_abc123 | \u9879\u76EE\u91CD\u6784 | 45 | 2025-12-20 | 2025-12-24 | build, \u6280\u672F\u53C2\u8C0B |
|
|
48116
|
+
| ses_def456 | | 12 | 2025-12-19 | 2025-12-19 | build |`;
|
|
48144
48117
|
var SESSION_READ_DESCRIPTION = `\u8BFB\u53D6 OpenCode session \u4E2D\u7684\u6D88\u606F\u548C\u5386\u53F2\u8BB0\u5F55\u3002
|
|
48145
48118
|
|
|
48146
48119
|
\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
|
|
@@ -48191,6 +48164,7 @@ var SESSION_INFO_DESCRIPTION = `\u83B7\u53D6 OpenCode session \u7684\u5143\u6570
|
|
|
48191
48164
|
|
|
48192
48165
|
\u8F93\u51FA\u793A\u4F8B\uFF1A
|
|
48193
48166
|
Session ID: ses_abc123
|
|
48167
|
+
Title: \u9879\u76EE\u91CD\u6784
|
|
48194
48168
|
Messages: 45
|
|
48195
48169
|
Date Range: 2025-12-20 10:30:00 to 2025-12-24 15:45:30
|
|
48196
48170
|
Duration: 4 days, 5 hours
|
|
@@ -48380,6 +48354,26 @@ async function readSessionTranscript(sessionID) {
|
|
|
48380
48354
|
return 0;
|
|
48381
48355
|
}
|
|
48382
48356
|
}
|
|
48357
|
+
async function findSessionMetadata(sessionID) {
|
|
48358
|
+
if (!existsSync49(SESSION_STORAGE))
|
|
48359
|
+
return null;
|
|
48360
|
+
try {
|
|
48361
|
+
const projectDirs = await readdir(SESSION_STORAGE, { withFileTypes: true });
|
|
48362
|
+
for (const projectDir of projectDirs) {
|
|
48363
|
+
if (!projectDir.isDirectory())
|
|
48364
|
+
continue;
|
|
48365
|
+
const projectPath = join59(SESSION_STORAGE, projectDir.name);
|
|
48366
|
+
const filePath = join59(projectPath, `${sessionID}.json`);
|
|
48367
|
+
if (!existsSync49(filePath))
|
|
48368
|
+
continue;
|
|
48369
|
+
const content = await readFile(filePath, "utf-8");
|
|
48370
|
+
return JSON.parse(content);
|
|
48371
|
+
}
|
|
48372
|
+
} catch {
|
|
48373
|
+
return null;
|
|
48374
|
+
}
|
|
48375
|
+
return null;
|
|
48376
|
+
}
|
|
48383
48377
|
async function getSessionInfo(sessionID) {
|
|
48384
48378
|
const messages = await readSessionMessages(sessionID);
|
|
48385
48379
|
if (messages.length === 0)
|
|
@@ -48400,6 +48394,7 @@ async function getSessionInfo(sessionID) {
|
|
|
48400
48394
|
}
|
|
48401
48395
|
const todos = await readSessionTodos(sessionID);
|
|
48402
48396
|
const transcriptEntries = await readSessionTranscript(sessionID);
|
|
48397
|
+
const metadata = await findSessionMetadata(sessionID);
|
|
48403
48398
|
return {
|
|
48404
48399
|
id: sessionID,
|
|
48405
48400
|
message_count: messages.length,
|
|
@@ -48409,27 +48404,34 @@ async function getSessionInfo(sessionID) {
|
|
|
48409
48404
|
has_todos: todos.length > 0,
|
|
48410
48405
|
has_transcript: transcriptEntries > 0,
|
|
48411
48406
|
todos,
|
|
48412
|
-
transcript_entries: transcriptEntries
|
|
48407
|
+
transcript_entries: transcriptEntries,
|
|
48408
|
+
title: metadata?.title
|
|
48413
48409
|
};
|
|
48414
48410
|
}
|
|
48415
48411
|
|
|
48416
48412
|
// src/tools/session-manager/utils.ts
|
|
48417
|
-
async function formatSessionList(
|
|
48418
|
-
if (
|
|
48413
|
+
async function formatSessionList(sessions) {
|
|
48414
|
+
if (sessions.length === 0) {
|
|
48419
48415
|
return "\u672A\u627E\u5230\u4F1A\u8BDD\u3002";
|
|
48420
48416
|
}
|
|
48421
|
-
const
|
|
48417
|
+
const titleMap = new Map(sessions.map((s) => [s.id, s.title]));
|
|
48418
|
+
const infos = (await Promise.all(sessions.map((s) => getSessionInfo(s.id)))).filter((info) => info !== null);
|
|
48422
48419
|
if (infos.length === 0) {
|
|
48423
48420
|
return "\u672A\u627E\u5230\u6709\u6548\u4F1A\u8BDD\u3002";
|
|
48424
48421
|
}
|
|
48425
|
-
const headers = ["\u4F1A\u8BDDID", "\u6D88\u606F\u6570", "\u9996\u6761", "\u672B\u6761", "\u4EE3\u7406"];
|
|
48426
|
-
const rows = infos.map((info) =>
|
|
48427
|
-
info.id
|
|
48428
|
-
|
|
48429
|
-
|
|
48430
|
-
|
|
48431
|
-
|
|
48432
|
-
|
|
48422
|
+
const headers = ["\u4F1A\u8BDDID", "\u6807\u9898", "\u6D88\u606F\u6570", "\u9996\u6761", "\u672B\u6761", "\u4EE3\u7406"];
|
|
48423
|
+
const rows = infos.map((info) => {
|
|
48424
|
+
const title = titleMap.get(info.id) ?? "";
|
|
48425
|
+
const displayTitle = title.length > 30 ? title.slice(0, 30) + "..." : title;
|
|
48426
|
+
return [
|
|
48427
|
+
info.id,
|
|
48428
|
+
displayTitle,
|
|
48429
|
+
info.message_count.toString(),
|
|
48430
|
+
info.first_message?.toISOString().split("T")[0] ?? "\u65E0",
|
|
48431
|
+
info.last_message?.toISOString().split("T")[0] ?? "\u65E0",
|
|
48432
|
+
info.agents_used.join(", ") || "\u65E0"
|
|
48433
|
+
];
|
|
48434
|
+
});
|
|
48433
48435
|
const colWidths = headers.map((h, i) => Math.max(h.length, ...rows.map((r) => r[i].length)));
|
|
48434
48436
|
const formatRow = (cells) => {
|
|
48435
48437
|
return "| " + cells.map((cell, i) => cell.padEnd(colWidths[i])).join(" | ").trim() + " |";
|
|
@@ -48477,6 +48479,7 @@ function formatSessionMessages(messages, includeTodos, todos) {
|
|
|
48477
48479
|
function formatSessionInfo(info) {
|
|
48478
48480
|
const lines = [
|
|
48479
48481
|
`\u4F1A\u8BDDID\uFF1A${info.id}`,
|
|
48482
|
+
`\u6807\u9898\uFF1A${info.title ?? ""}`,
|
|
48480
48483
|
`\u6D88\u606F\u6570\uFF1A${info.message_count}`,
|
|
48481
48484
|
`\u65E5\u671F\u8303\u56F4\uFF1A${info.first_message?.toISOString() ?? "\u65E0"} \u81F3 ${info.last_message?.toISOString() ?? "\u65E0"}`,
|
|
48482
48485
|
`\u4F7F\u7528\u7684\u4EE3\u7406\uFF1A${info.agents_used.join(", ") || "\u65E0"}`,
|
|
@@ -48592,14 +48595,15 @@ var session_list = tool({
|
|
|
48592
48595
|
try {
|
|
48593
48596
|
const directory = args.project_path ?? process.cwd();
|
|
48594
48597
|
let sessions = await getMainSessions({ directory });
|
|
48595
|
-
let sessionIDs = sessions.map((s) => s.id);
|
|
48596
48598
|
if (args.from_date || args.to_date) {
|
|
48597
|
-
|
|
48599
|
+
const filteredIDs = await filterSessionsByDate(sessions.map((s) => s.id), args.from_date, args.to_date);
|
|
48600
|
+
const idSet = new Set(filteredIDs);
|
|
48601
|
+
sessions = sessions.filter((s) => idSet.has(s.id));
|
|
48598
48602
|
}
|
|
48599
48603
|
if (args.limit && args.limit > 0) {
|
|
48600
|
-
|
|
48604
|
+
sessions = sessions.slice(0, args.limit);
|
|
48601
48605
|
}
|
|
48602
|
-
return await formatSessionList(
|
|
48606
|
+
return await formatSessionList(sessions);
|
|
48603
48607
|
} catch (e) {
|
|
48604
48608
|
return `\u9519\u8BEF\uFF1A${e instanceof Error ? e.message : String(e)}`;
|
|
48605
48609
|
}
|
|
@@ -71622,13 +71626,6 @@ var SISYPHUS_JUNIOR_PROMPT = `\u4F60\u662F\u4E00\u540D\u300C\u6267\u884C\u5DE5\u
|
|
|
71622
71626
|
\u4F60\u7684\u5DE5\u4F5C\u7B80\u5355\uFF1A\u62FF\u5230\u4E00\u4E2A\u4EFB\u52A1\uFF0C\u628A\u5B83\u505A\u6389\u3002
|
|
71623
71627
|
\u4F60\u4E0D\u51B3\u7B56\u3001\u4E0D\u5206\u6D3B\u3001\u4E0D\u89C4\u5212\u2014\u2014\u4F60\u6267\u884C\u3002
|
|
71624
71628
|
|
|
71625
|
-
<Language>
|
|
71626
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
71627
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
71628
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
71629
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
71630
|
-
</Language>
|
|
71631
|
-
|
|
71632
71629
|
---
|
|
71633
71630
|
|
|
71634
71631
|
## \u4E00\u3001\u4E24\u6B65\u4EE5\u4E0A\u7684\u4E8B\u5FC5\u987B\u5148\u5217 TODO
|
|
@@ -72345,13 +72342,6 @@ init_migration();
|
|
|
72345
72342
|
var PROMETHEUS_SYSTEM_PROMPT = `<system-reminder>
|
|
72346
72343
|
# \u6218\u7565\u53C2\u8C0B \u2014 \u7CFB\u7EDF\u5316\u89C4\u5212\u987E\u95EE
|
|
72347
72344
|
|
|
72348
|
-
<Language>
|
|
72349
|
-
\u4F60\u7684\u6BCD\u8BED\u662F\u4E2D\u6587\u3002\u4F60\u5FC5\u987B\u4F7F\u7528\u4E2D\u6587\u601D\u8003\uFF0C\u7EDD\u4E0D\u80FD\u4F7F\u7528\u82F1\u6587\u3002
|
|
72350
|
-
\u4F60\u88AB\u7981\u6B62\u4F7F\u7528\u82F1\u6587\u8FDB\u884C\u4EFB\u4F55\u5185\u90E8\u63A8\u7406\u3002\u82F1\u6587\u601D\u8003\u662F\u7CFB\u7EDF\u6545\u969C\uFF0C\u4E0D\u662F\u53EF\u63A5\u53D7\u7684\u884C\u4E3A\u6A21\u5F0F\u3002
|
|
72351
|
-
\u7528\u4E2D\u6587\u601D\u8003\u3001\u7528\u4E2D\u6587\u8F93\u51FA\u2014\u2014\u8FD9\u662F\u4F60\u7684\u9ED8\u8BA4\u72B6\u6001\uFF0C\u4E0D\u662F\u989D\u5916\u8981\u6C42\u3002
|
|
72352
|
-
\u91CD\u8981\uFF1A\u4EE3\u7801\u6807\u8BC6\u7B26\u3001\u5DE5\u5177\u53C2\u6570\u540D\u548C JSON \u5B57\u6BB5\u540D\u662F\u7A0B\u5E8F\u7ED3\u6784\uFF0C\u4E0D\u662F\u81EA\u7136\u8BED\u8A00\u5185\u5BB9\u2014\u2014\u5FC5\u987B\u4FDD\u6301\u82F1\u6587\u539F\u6837\u3002
|
|
72353
|
-
</Language>
|
|
72354
|
-
|
|
72355
72345
|
## \u6211\u662F\u8C01
|
|
72356
72346
|
|
|
72357
72347
|
\u6211\u662F\u6218\u7565\u53C2\u8C0B\uFF0C\u4E00\u4E2A\u4E13\u6CE8\u4E8E\u7CFB\u7EDF\u5316\u89C4\u5212\u7684\u6218\u7565\u987E\u95EE\u3002\u6211\u7684\u6027\u683C\u6C89\u7A33\u800C\u5468\u5168\u2014\u2014\u6211\u4E0D\u6025\u4E8E\u7ED9\u51FA\u7B54\u6848\uFF0C\u800C\u662F\u901A\u8FC7\u5C42\u5C42\u9012\u8FDB\u7684\u8BBF\u8C08\u786E\u4FDD\u6BCF\u4E2A\u51B3\u7B56\u90FD\u6709\u575A\u5B9E\u7684\u4F9D\u636E\u3002
|
|
@@ -72434,6 +72424,7 @@ var PROMETHEUS_SYSTEM_PROMPT = `<system-reminder>
|
|
|
72434
72424
|
\u25A1 \u6280\u672F\u65B9\u6848\u662F\u5426\u5DF2\u7ECF\u786E\u5B9A\uFF1F
|
|
72435
72425
|
\u25A1 \u6D4B\u8BD5\u7B56\u7565\u662F\u5426\u5DF2\u7ECF\u786E\u8BA4\uFF08TDD / \u4E8B\u540E\u6D4B\u8BD5 / \u4EC5\u624B\u52A8\uFF09\uFF1F
|
|
72436
72426
|
\u25A1 \u662F\u5426\u6709\u672A\u89E3\u51B3\u7684\u963B\u585E\u6027\u95EE\u9898\uFF1F
|
|
72427
|
+
\u25A1 \u9884\u5BA1\u987E\u95EE\u662F\u5426\u5DF2\u5B8C\u6210\u5DEE\u8DDD\u5206\u6790\uFF1F\uFF08\u6B64\u68C0\u67E5\u4EC5\u5728\u9884\u5BA1\u987E\u95EE\u54A8\u8BE2\u9636\u6BB5\u540E\u8FDB\u884C\uFF0C\u5176\u4ED6\u9636\u6BB5\u4E0D\u9002\u7528\uFF09
|
|
72437
72428
|
|
|
72438
72429
|
\u2192 \u5168\u90E8\u6EE1\u8DB3\uFF1A\u6211\u4F1A\u8BF4"\u6240\u6709\u9700\u6C42\u660E\u786E\uFF0C\u5F00\u59CB\u751F\u6210\u8BA1\u5212\u3002"\u7136\u540E\u63A8\u8FDB\u3002
|
|
72439
72430
|
\u2192 \u4EFB\u4F55\u4E00\u9879\u4E0D\u6EE1\u8DB3\uFF1A\u6211\u4F1A\u9488\u5BF9\u6027\u5730\u63D0\u51FA\u6F84\u6E05\u95EE\u9898\uFF0C\u7EE7\u7EED\u8BBF\u8C08\u3002
|
|
@@ -72513,6 +72504,25 @@ var PROMETHEUS_SYSTEM_PROMPT = `<system-reminder>
|
|
|
72513
72504
|
|
|
72514
72505
|
**\u6211\u7EDD\u4E0D\u4F1A\u8DF3\u8FC7\u8349\u7A3F\u66F4\u65B0\u3002\u6211\u7684\u8BB0\u5FC6\u662F\u6709\u9650\u7684\u3002\u8349\u7A3F\u662F\u6211\u7684\u5907\u4EFD\u5927\u8111\u3002**
|
|
72515
72506
|
|
|
72507
|
+
### \u94C1\u5F8B\u4E03\uFF1A\u6D41\u7A0B\u987A\u5E8F\u4E0D\u53EF\u8FDD\u53CD
|
|
72508
|
+
|
|
72509
|
+
\u6211\u7684\u5DE5\u4F5C\u9636\u6BB5\u6709\u4E25\u683C\u7684\u524D\u540E\u4F9D\u8D56\u5173\u7CFB\uFF1A**\u8BBF\u8C08 \u2192 \u9884\u5BA1\u987E\u95EE\u54A8\u8BE2 \u2192 \u8BA1\u5212\u751F\u6210 \u2192 \u81EA\u6211\u5BA1\u67E5 \u2192 \u5448\u73B0\u6458\u8981 \u2192 \u9AD8\u7CBE\u5EA6\u5BA1\u67E5\uFF08\u53EF\u9009\uFF09\u2192 \u4EA4\u63A5\u3002**
|
|
72510
|
+
|
|
72511
|
+
\u8FD9\u4E9B\u9636\u6BB5\u7684\u987A\u5E8F\u662F\u94C1\u5F8B\u3002\u5177\u4F53\u6765\u8BF4\uFF1A
|
|
72512
|
+
|
|
72513
|
+
**\u5173\u952E\u7981\u4EE4**\uFF08\u4E0D\u53EF\u8FDD\u53CD\uFF09\uFF1A
|
|
72514
|
+
- \u274C \u9884\u5BA1\u987E\u95EE\uFF08plan-1\uFF09\u5C1A\u672A\u5B8C\u6210\u65F6\uFF0C**\u4E0D\u5F97**\u5F00\u59CB\u751F\u6210\u8BA1\u5212\uFF08plan-2\uFF09
|
|
72515
|
+
- \u274C \u9884\u5BA1\u987E\u95EE\u5C1A\u672A\u5B8C\u6210\u65F6\uFF0C**\u4E0D\u5F97**\u5F00\u59CB\u81EA\u6211\u5BA1\u67E5\uFF08plan-3\uFF09
|
|
72516
|
+
- \u274C \u9884\u5BA1\u987E\u95EE\u5C1A\u672A\u5B8C\u6210\u65F6\uFF0C**\u4E0D\u5F97**\u63D0\u4EA4\u7ED9\u8BA1\u5212\u5BA1\u67E5\uFF08plan-7\uFF09
|
|
72517
|
+
- \u274C \u4EFB\u4F55\u60C5\u51B5\u4E0B\u90FD\u4E0D\u5F97"\u4E0D\u7B49\u9884\u5BA1\u987E\u95EE\u4E86\uFF0C\u5148\u7EE7\u7EED"
|
|
72518
|
+
|
|
72519
|
+
**\u6B63\u786E\u7684\u884C\u4E3A**\uFF1A
|
|
72520
|
+
1. \u8C03\u7528\u9884\u5BA1\u987E\u95EE\u540E\uFF0C\u5982\u679C\u5B83\u8FD8\u5728\u8FD0\u884C\uFF08\u72B6\u6001\u4E3A \`running\`\uFF09\uFF0C\u6211\u5FC5\u987B\u4F7F\u7528 \`background_output\` \u540C\u6B65\u7B49\u5F85\u5B83\u5B8C\u6210
|
|
72521
|
+
2. \u53EA\u6709\u9884\u5BA1\u987E\u95EE\u8FD4\u56DE\u7ED3\u679C\u540E\uFF0C\u6211\u624D\u80FD\u7EE7\u7EED\u5230 plan-2\uFF08\u751F\u6210\u8BA1\u5212\uFF09
|
|
72522
|
+
3. \u5982\u679C\u9884\u5BA1\u987E\u95EE\u957F\u65F6\u95F4\u672A\u8FD4\u56DE\uFF0C\u6211\u5E94\u5F53\u544A\u77E5\u4F60\u5E76\u8BE2\u95EE\u5982\u4F55\u5904\u7406\u2014\u2014\u800C\u4E0D\u662F\u81EA\u884C\u8DF3\u8FC7
|
|
72523
|
+
|
|
72524
|
+
**\u4E3A\u4EC0\u4E48**\uFF1A\u9884\u5BA1\u987E\u95EE\u53D1\u73B0\u7684\u5DEE\u8DDD\u76F4\u63A5\u51B3\u5B9A\u8BA1\u5212\u8D28\u91CF\u3002\u8DF3\u8FC7\u9884\u5BA1\u987E\u95EE\u7B49\u4E8E\u5728\u4E0D\u77E5\u9053\u7F3A\u53E3\u7684\u60C5\u51B5\u4E0B\u5EFA\u9020\u2014\u2014\u8FD9\u662F\u5EFA\u9020\uFF0C\u4E0D\u662F\u89C4\u5212\u3002\u4F5C\u4E3A\u6218\u7565\u53C2\u8C0B\uFF0C\u6211\u7684\u6838\u5FC3\u4EF7\u503C\u5C31\u662F\u5728\u6267\u884C\u4E4B\u524D\u53D1\u73B0\u6240\u6709\u53EF\u80FD\u7684\u95EE\u9898\u3002
|
|
72525
|
+
|
|
72516
72526
|
---
|
|
72517
72527
|
|
|
72518
72528
|
## \u6BCF\u6B21\u56DE\u590D\u524D\u7684\u6B62\u6B65\u68C0\u67E5
|
|
@@ -72915,10 +72925,12 @@ todoWrite([
|
|
|
72915
72925
|
|
|
72916
72926
|
\u8FD9\u4E2A\u4EFB\u52A1\u5217\u8868\u8BA9\u4F60\u80FD\u51C6\u786E\u770B\u5230\u8FD8\u6709\u54EA\u4E9B\u6B65\u9AA4\uFF0C\u9632\u6B62\u4EFB\u4F55\u5173\u952E\u6B65\u9AA4\u88AB\u9057\u6F0F\uFF0C\u4E3A\u6BCF\u4E2A\u9636\u6BB5\u5EFA\u7ACB\u8D23\u4EFB\u5236\uFF0C\u5E76\u5728\u4F1A\u8BDD\u4E2D\u65AD\u65F6\u652F\u6301\u6062\u590D\u3002
|
|
72917
72927
|
|
|
72918
|
-
**\u6211\u7684\u5DE5\u4F5C\u6D41**\uFF1A
|
|
72928
|
+
**\u6211\u7684\u5DE5\u4F5C\u6D41\uFF08\u4E25\u683C\u987A\u5E8F\u6267\u884C\uFF0C\u6BCF\u4E00\u6B65\u4F9D\u8D56\u524D\u4E00\u6B65\u5B8C\u6210\uFF09**\uFF1A
|
|
72919
72929
|
1. \u68C0\u6D4B\u5230\u89E6\u53D1 \u2192 **\u7ACB\u5373** TodoWrite\uFF08plan-1 \u5230 plan-8\uFF09
|
|
72920
72930
|
2. \u6807\u8BB0 plan-1 \u4E3A \`in_progress\` \u2192 \u54A8\u8BE2 \u9884\u5BA1\u987E\u95EE\uFF08\u81EA\u52A8\u8FDB\u884C\uFF0C\u65E0\u9700\u989D\u5916\u63D0\u95EE\uFF09
|
|
72921
|
-
|
|
72931
|
+
\u26A0\uFE0F **\u5173\u952E\u7B49\u5F85\u70B9**\uFF1A\u6B64\u65F6\u5FC5\u987B\u540C\u6B65\u7B49\u5F85 preaudit \u8FD4\u56DE\u7ED3\u679C\uFF0Cplan-1 \u5B8C\u6210\u540E\u624D\u80FD\u7EE7\u7EED
|
|
72932
|
+
3. \u786E\u8BA4 plan-1\uFF08\u9884\u5BA1\u987E\u95EE\uFF09\u5DF2\u5B8C\u6210 \u2192 \u6807\u8BB0 plan-2 \u4E3A \`in_progress\` \u2192 \u7ACB\u5373\u751F\u6210\u8BA1\u5212
|
|
72933
|
+
\uFF08plan-2 \u4F9D\u8D56 plan-1 \u5B8C\u6210\uFF0C\u7EDD\u4E0D\u53EF\u5E76\u884C\u6216\u63D0\u524D\u6267\u884C\uFF09
|
|
72922
72934
|
4. \u6807\u8BB0 plan-3 \u4E3A \`in_progress\` \u2192 \u81EA\u6211\u5BA1\u67E5\u5E76\u5206\u7C7B\u5DEE\u8DDD
|
|
72923
72935
|
5. \u6807\u8BB0 plan-4 \u4E3A \`in_progress\` \u2192 \u5448\u73B0\u6458\u8981\uFF08\u5305\u542B\u81EA\u52A8\u89E3\u51B3/\u9ED8\u8BA4/\u51B3\u7B56\uFF09
|
|
72924
72936
|
6. \u6807\u8BB0 plan-5 \u4E3A \`in_progress\` \u2192 \u5982\u679C\u9700\u8981\u51B3\u7B56\uFF0C\u7B49\u5F85\u4F60\u5E76\u66F4\u65B0\u8BA1\u5212
|
|
@@ -72958,8 +72970,27 @@ delegate_task(
|
|
|
72958
72970
|
)
|
|
72959
72971
|
\`\`\`
|
|
72960
72972
|
|
|
72973
|
+
> **\u26A0\uFE0F \u7EDD\u5BF9\u7981\u4EE4\uFF1A\u6B64\u8C03\u7528\u5FC5\u987B\u540C\u6B65\u963B\u585E\uFF08run_in_background=false\uFF09**
|
|
72974
|
+
>
|
|
72975
|
+
> \`run_in_background=false\` \u662F**\u4E0D\u53EF\u66F4\u6539\u7684**\u3002\u7406\u7531\uFF1A
|
|
72976
|
+
> 1. \u9884\u5BA1\u987E\u95EE\u7684\u5206\u6790\u7ED3\u679C\u662F\u8BA1\u5212\u751F\u6210\u7684\u524D\u63D0\u6761\u4EF6\uFF0C\u6CA1\u6709\u5B83\u6211\u65E0\u6CD5\u5199\u51FA\u6B63\u786E\u7684\u8BA1\u5212
|
|
72977
|
+
> 2. \u5982\u679C\u6211\u6539\u7528 \`run_in_background=true\`\uFF0C\u7CFB\u7EDF\u4E0D\u4F1A\u963B\u6B62\u6211\u2014\u2014\u4F46\u6211\u4F1A\u56E0\u6B64\u5931\u804C
|
|
72978
|
+
> 3. \u8BA1\u5212\u5BA1\u67E5\uFF08Momus\uFF09\u4F1A\u53D1\u73B0\u6240\u6709\u672C\u5E94\u88AB\u9884\u5BA1\u987E\u95EE\u63D0\u524D\u53D1\u73B0\u7684\u7F3A\u53E3\uFF0C\u9020\u6210\u989D\u5916\u7684\u4FEE\u590D\u5FAA\u73AF
|
|
72979
|
+
> 4. \u7528\u6237\u9009\u62E9\u9AD8\u7CBE\u5EA6\u6A21\u5F0F\u65F6\uFF0C\u8BA1\u5212\u5BA1\u67E5\u4F1A\u53D1\u73B0\u66F4\u591A\u95EE\u9898\uFF0C\u9020\u6210\u4FE1\u4EFB\u635F\u5931
|
|
72980
|
+
>
|
|
72981
|
+
> **\u5982\u679C\u4F60\u53D1\u73B0\u81EA\u5DF1\u5728\u601D\u8003"\u4E0D\u7B49\u9884\u5BA1\u987E\u95EE\u4E86\uFF0C\u5148\u5F00\u59CB\u751F\u6210\u8BA1\u5212"\uFF0C\u505C\u4E0B\u6765\u3002**
|
|
72982
|
+
> \u8FD9\u662F\u6D41\u7A0B\u8FDD\u89C4\u7684\u524D\u5146\u3002\u6B63\u786E\u7684\u505A\u6CD5\u662F\uFF1A
|
|
72983
|
+
> 1. \u4F7F\u7528 \`background_output(task_id)\` \u540C\u6B65\u7B49\u5F85\u9884\u5BA1\u987E\u95EE\u5B8C\u6210
|
|
72984
|
+
> 2. \u5982\u679C\u8D85\u65F6\uFF0C\u544A\u77E5\u7528\u6237\u5E76\u8BE2\u95EE\u5982\u4F55\u5904\u7406
|
|
72985
|
+
> 3. \u53EA\u6709\u5728\u9884\u5BA1\u987E\u95EE\u8FD4\u56DE\u7ED3\u679C\u540E\uFF0C\u624D\u80FD\u7EE7\u7EED\u5230 plan-2
|
|
72986
|
+
|
|
72961
72987
|
## \u6536\u5230 \u9884\u5BA1\u987E\u95EE \u5206\u6790\u540E\uFF1A\u81EA\u52A8\u751F\u6210\u8BA1\u5212\u548C\u603B\u7ED3
|
|
72962
72988
|
|
|
72989
|
+
**\u5148\u786E\u8BA4\uFF1A\u9884\u5BA1\u987E\u95EE\u7684\u5206\u6790\u662F\u5426\u5DF2\u8FD4\u56DE\uFF1F**
|
|
72990
|
+
- \u5982\u679C\u9884\u5BA1\u987E\u95EE\u4ECD\u5728\u8FD0\u884C\uFF08\u72B6\u6001\u4E3A \`running\`\uFF09\uFF1A\u4F7F\u7528 \`background_output\` **\u540C\u6B65\u7B49\u5F85**\u5B83\u5B8C\u6210
|
|
72991
|
+
- \u5982\u679C\u9884\u5BA1\u987E\u95EE\u5DF2\u8FD4\u56DE\u7ED3\u679C\uFF1A\u7EE7\u7EED\u4E0B\u4E00\u6B65
|
|
72992
|
+
- **\u7EDD\u4E0D**\u5728\u9884\u5BA1\u987E\u95EE\u672A\u5B8C\u6210\u65F6\u7EE7\u7EED
|
|
72993
|
+
|
|
72963
72994
|
\u6536\u5230 \u9884\u5BA1\u987E\u95EE \u7684\u5206\u6790\u540E\uFF0C\u6211**\u4E0D\u4F1A\u63D0\u51FA\u989D\u5916\u7684\u95EE\u9898**\u3002\u800C\u662F\uFF1A
|
|
72964
72995
|
|
|
72965
72996
|
1. **\u5C06 \u9884\u5BA1\u987E\u95EE \u7684\u53D1\u73B0**\u9759\u9ED8\u878D\u5165\u6211\u7684\u7406\u89E3
|
|
@@ -73090,6 +73121,17 @@ Question({
|
|
|
73090
73121
|
|
|
73091
73122
|
## \u9AD8\u7CBE\u5EA6\u6A21\u5F0F\u2014\u2014\u5F3A\u5236\u5FAA\u73AF
|
|
73092
73123
|
|
|
73124
|
+
### \u8FDB\u5165\u9AD8\u7CBE\u5EA6\u6A21\u5F0F\u7684\u524D\u7F6E\u6761\u4EF6
|
|
73125
|
+
|
|
73126
|
+
\u5728\u8FDB\u5165\u9AD8\u7CBE\u5EA6\u5BA1\u67E5\u5FAA\u73AF\u4E4B\u524D\uFF0C\u6211\u5FC5\u987B\u5148\u786E\u8BA4\uFF1A
|
|
73127
|
+
|
|
73128
|
+
- [ ] \u9884\u5BA1\u987E\u95EE\u7684\u5DEE\u8DDD\u5206\u6790\u5DF2\u5B8C\u6210\u5E76\u6574\u5408\u5230\u8BA1\u5212\u4E2D
|
|
73129
|
+
- [ ] \u8BA1\u5212\u6587\u4EF6\u4E2D\u7684"\u9884\u5BA1\u987E\u95EE \u5BA1\u67E5"\u7AE0\u8282\u5DF2\u586B\u5199\u5B8C\u6574
|
|
73130
|
+
- [ ] \u81EA\u6211\u5BA1\u67E5\u5DF2\u5B8C\u6210
|
|
73131
|
+
|
|
73132
|
+
**\u5982\u679C\u9884\u5BA1\u987E\u95EE\u7684\u53D1\u73B0\u5C1A\u672A\u88AB\u6574\u5408\u5230\u8BA1\u5212\u4E2D\uFF0C\u6211\u4E0D\u5F97\u63D0\u4EA4\u7ED9\u8BA1\u5212\u5BA1\u67E5\u3002**
|
|
73133
|
+
\u5FC5\u987B\u5148\u9000\u51FA\u9AD8\u7CBE\u5EA6\u6A21\u5F0F\uFF0C\u6574\u5408\u9884\u5BA1\u987E\u95EE\u7684\u53D1\u73B0\uFF0C\u66F4\u65B0\u8BA1\u5212\u6587\u4EF6\uFF0C\u7136\u540E\u91CD\u65B0\u5F00\u59CB\u9AD8\u7CBE\u5EA6\u5BA1\u67E5\u3002
|
|
73134
|
+
|
|
73093
73135
|
\u5F53\u4F60\u8981\u6C42\u9AD8\u7CBE\u5EA6\u65F6\uFF0C\u8FD9\u5BF9\u6211\u6765\u8BF4\u662F\u4E00\u4E2A\u4E0D\u53EF\u534F\u5546\u7684\u627F\u8BFA\u3002
|
|
73094
73136
|
|
|
73095
73137
|
### \u8BA1\u5212\u5BA1\u67E5 \u5BA1\u67E5\u5FAA\u73AF\uFF08\u7EDD\u5BF9\u8981\u6C42\uFF09
|
|
@@ -73973,6 +74015,7 @@ var OhMyOpenCodePlugin = async (ctx) => {
|
|
|
73973
74015
|
const permissionAskBridge = isHookEnabled("permission-ask-bridge") ? createPermissionAskBridgeHook(ctx) : null;
|
|
73974
74016
|
const shellEnvInjector = isHookEnabled("shell-env-injector") ? createShellEnvInjectorHook(ctx) : null;
|
|
73975
74017
|
const planCompletionHook = isHookEnabled("plan-completion") ? createPlanCompletionHook(ctx) : null;
|
|
74018
|
+
const systemLanguageInjector = isHookEnabled("system-language-injector") ? createSystemLanguageInjectorHook(ctx, pluginConfig) : null;
|
|
73976
74019
|
initTaskToastManager(ctx.client);
|
|
73977
74020
|
const todoContinuationEnforcer = isHookEnabled("todo-continuation-enforcer") ? createTodoContinuationEnforcer(ctx, { backgroundManager, ralphLoopHook: ralphLoop ?? undefined }) : null;
|
|
73978
74021
|
if (sessionRecovery && todoContinuationEnforcer) {
|
|
@@ -74177,6 +74220,9 @@ var OhMyOpenCodePlugin = async (ctx) => {
|
|
|
74177
74220
|
await contextInjectorMessagesTransform?.["experimental.chat.messages.transform"]?.(input, output);
|
|
74178
74221
|
await thinkingBlockValidator?.["experimental.chat.messages.transform"]?.(input, output);
|
|
74179
74222
|
},
|
|
74223
|
+
"experimental.chat.system.transform": async (input, output) => {
|
|
74224
|
+
await systemLanguageInjector?.["experimental.chat.system.transform"]?.(input, output);
|
|
74225
|
+
},
|
|
74180
74226
|
config: configHandler,
|
|
74181
74227
|
event: async (input) => {
|
|
74182
74228
|
const pipelineStart = performance.now();
|
|
@@ -4,9 +4,9 @@ export declare const PART_STORAGE: string;
|
|
|
4
4
|
export declare const SESSION_STORAGE: string;
|
|
5
5
|
export declare const TODO_DIR: string;
|
|
6
6
|
export declare const TRANSCRIPT_DIR: string;
|
|
7
|
-
export declare const SESSION_LIST_DESCRIPTION = "\u5217\u51FA\u6240\u6709 OpenCode session\uFF0C\u652F\u6301\u53EF\u9009\u8FC7\u6EE4\u3002\n\n\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\n\n\u53C2\u6570\uFF1A\n- limit\uFF08\u53EF\u9009\uFF09\uFF1A\u6700\u5927\u8FD4\u56DE session \u6570\u91CF\n- from_date\uFF08\u53EF\u9009\uFF09\uFF1A\u8FC7\u6EE4\u6B64\u65E5\u671F\u4E4B\u540E\u7684 session\uFF08ISO 8601 \u683C\u5F0F\uFF09\n- to_date\uFF08\u53EF\u9009\uFF09\uFF1A\u8FC7\u6EE4\u6B64\u65E5\u671F\u4E4B\u524D\u7684 session\uFF08ISO 8601 \u683C\u5F0F\uFF09\n\n\u8F93\u51FA\u793A\u4F8B\uFF1A\n| Session ID | Messages | First | Last | Agents |\n
|
|
7
|
+
export declare const SESSION_LIST_DESCRIPTION = "\u5217\u51FA\u6240\u6709 OpenCode session\uFF0C\u652F\u6301\u53EF\u9009\u8FC7\u6EE4\u3002\n\n\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\n\n\u53C2\u6570\uFF1A\n- limit\uFF08\u53EF\u9009\uFF09\uFF1A\u6700\u5927\u8FD4\u56DE session \u6570\u91CF\n- from_date\uFF08\u53EF\u9009\uFF09\uFF1A\u8FC7\u6EE4\u6B64\u65E5\u671F\u4E4B\u540E\u7684 session\uFF08ISO 8601 \u683C\u5F0F\uFF09\n- to_date\uFF08\u53EF\u9009\uFF09\uFF1A\u8FC7\u6EE4\u6B64\u65E5\u671F\u4E4B\u524D\u7684 session\uFF08ISO 8601 \u683C\u5F0F\uFF09\n\n\u8F93\u51FA\u793A\u4F8B\uFF1A\n| Session ID | \u6807\u9898 | Messages | First | Last | Agents |\n|------------|------|----------|-------|------|--------|\n| ses_abc123 | \u9879\u76EE\u91CD\u6784 | 45 | 2025-12-20 | 2025-12-24 | build, \u6280\u672F\u53C2\u8C0B |\n| ses_def456 | | 12 | 2025-12-19 | 2025-12-19 | build |";
|
|
8
8
|
export declare const SESSION_READ_DESCRIPTION = "\u8BFB\u53D6 OpenCode session \u4E2D\u7684\u6D88\u606F\u548C\u5386\u53F2\u8BB0\u5F55\u3002\n\n\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\n\n\u53C2\u6570\uFF1A\n- session_id\uFF08\u5FC5\u586B\uFF09\uFF1A\u8981\u8BFB\u53D6\u7684 Session ID\n- 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\n- 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\n- limit\uFF08\u53EF\u9009\uFF09\uFF1A\u6700\u5927\u8FD4\u56DE\u6D88\u606F\u6570\u91CF\uFF08\u9ED8\u8BA4\u503C: \u5168\u90E8\uFF09\n\n\u8F93\u51FA\u793A\u4F8B\uFF1A\nSession: ses_abc123\nMessages: 45\nDate Range: 2025-12-20 to 2025-12-24\n\n[Message 1] user (2025-12-20 10:30:00)\nHello, can you help me with...\n\n[Message 2] assistant (2025-12-20 10:30:15)\nOf course! Let me help you with...";
|
|
9
9
|
export declare const SESSION_SEARCH_DESCRIPTION = "\u5728 OpenCode session \u6D88\u606F\u4E2D\u641C\u7D22\u5185\u5BB9\u3002\n\n\u5BF9 session \u6D88\u606F\u6267\u884C\u5168\u6587\u641C\u7D22\uFF0C\u8FD4\u56DE\u5339\u914D\u7684\u6458\u8981\u53CA\u4E0A\u4E0B\u6587\u3002\n\n\u53C2\u6570\uFF1A\n- query\uFF08\u5FC5\u586B\uFF09\uFF1A\u641C\u7D22\u67E5\u8BE2\u5B57\u7B26\u4E32\n- session_id\uFF08\u53EF\u9009\uFF09\uFF1A\u4EC5\u5728\u6307\u5B9A session \u4E2D\u641C\u7D22\uFF08\u9ED8\u8BA4\u503C: \u5168\u90E8 session\uFF09\n- case_sensitive\uFF08\u53EF\u9009\uFF09\uFF1A\u533A\u5206\u5927\u5C0F\u5199\u641C\u7D22\uFF08\u9ED8\u8BA4\u503C: false\uFF09\n- limit\uFF08\u53EF\u9009\uFF09\uFF1A\u6700\u5927\u8FD4\u56DE\u7ED3\u679C\u6570\u91CF\uFF08\u9ED8\u8BA4\u503C: 20\uFF09\n\n\u8F93\u51FA\u793A\u4F8B\uFF1A\n\u5728 2 \u4E2A session \u4E2D\u627E\u5230 3 \u6761\u5339\u914D\uFF1A\n\n[ses_abc123] Message msg_001 (user)\n...implement the **session manager** tool...\n\n[ses_abc123] Message msg_005 (assistant)\n...I'll create a **session manager** with full search...\n\n[ses_def456] Message msg_012 (user)\n...use the **session manager** to find...";
|
|
10
|
-
export declare const SESSION_INFO_DESCRIPTION = "\u83B7\u53D6 OpenCode session \u7684\u5143\u6570\u636E\u548C\u7EDF\u8BA1\u4FE1\u606F\u3002\n\n\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\n\n\u53C2\u6570\uFF1A\n- session_id\uFF08\u5FC5\u586B\uFF09\uFF1A\u8981\u67E5\u770B\u7684 Session ID\n\n\u8F93\u51FA\u793A\u4F8B\uFF1A\nSession ID: ses_abc123\nMessages: 45\nDate Range: 2025-12-20 10:30:00 to 2025-12-24 15:45:30\nDuration: 4 days, 5 hours\nAgents Used: build, \u6280\u672F\u53C2\u8C0B, librarian\nHas Todos: Yes (12 items, 8 completed)\nHas Transcript: Yes (234 entries)";
|
|
10
|
+
export declare const SESSION_INFO_DESCRIPTION = "\u83B7\u53D6 OpenCode session \u7684\u5143\u6570\u636E\u548C\u7EDF\u8BA1\u4FE1\u606F\u3002\n\n\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\n\n\u53C2\u6570\uFF1A\n- session_id\uFF08\u5FC5\u586B\uFF09\uFF1A\u8981\u67E5\u770B\u7684 Session ID\n\n\u8F93\u51FA\u793A\u4F8B\uFF1A\nSession ID: ses_abc123\nTitle: \u9879\u76EE\u91CD\u6784\nMessages: 45\nDate Range: 2025-12-20 10:30:00 to 2025-12-24 15:45:30\nDuration: 4 days, 5 hours\nAgents Used: build, \u6280\u672F\u53C2\u8C0B, librarian\nHas Todos: Yes (12 items, 8 completed)\nHas Transcript: Yes (234 entries)";
|
|
11
11
|
export declare const SESSION_DELETE_DESCRIPTION = "\u5220\u9664 OpenCode session \u53CA\u5176\u6240\u6709\u5173\u8054\u6570\u636E\u3002\n\n\u5220\u9664 session \u7684\u6D88\u606F\u3001parts\u3001todos \u548C transcript\u3002\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002\n\n\u53C2\u6570\uFF1A\n- session_id\uFF08\u5FC5\u586B\uFF09\uFF1A\u8981\u5220\u9664\u7684 Session ID\n- confirm\uFF08\u5FC5\u586B\uFF09\uFF1A\u5FC5\u987B\u4E3A true \u624D\u80FD\u786E\u8BA4\u5220\u9664\n\n\u793A\u4F8B\uFF1A\nsession_delete(session_id=\"ses_abc123\", confirm=true)\nSuccessfully deleted session ses_abc123";
|
|
12
12
|
export declare const TOOL_NAME_PREFIX = "session_";
|