@skj1724/oh-my-opencode 3.11.2 → 3.11.4
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/cli/index.js
CHANGED
|
@@ -16442,8 +16442,8 @@ var init_model_capabilities_generated = __esm(() => {
|
|
|
16442
16442
|
]
|
|
16443
16443
|
},
|
|
16444
16444
|
limit: {
|
|
16445
|
-
context:
|
|
16446
|
-
output:
|
|
16445
|
+
context: 2000000,
|
|
16446
|
+
output: 262144
|
|
16447
16447
|
}
|
|
16448
16448
|
},
|
|
16449
16449
|
"zai-org/autoglm-phone-9b-multilingual": {
|
|
@@ -50376,7 +50376,7 @@ var {
|
|
|
50376
50376
|
// package.json
|
|
50377
50377
|
var package_default = {
|
|
50378
50378
|
name: "@skj1724/oh-my-opencode",
|
|
50379
|
-
version: "3.11.
|
|
50379
|
+
version: "3.11.4",
|
|
50380
50380
|
description: "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
50381
50381
|
main: "dist/index.js",
|
|
50382
50382
|
types: "dist/index.d.ts",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare const AGENT_USAGE_REMINDER_STORAGE: string;
|
|
2
2
|
export declare const TARGET_TOOLS: Set<string>;
|
|
3
3
|
export declare const AGENT_TOOLS: Set<string>;
|
|
4
|
-
export declare const REMINDER_MESSAGE = "\n[
|
|
4
|
+
export declare const REMINDER_MESSAGE = "\n[\u4EE3\u7406\u4F7F\u7528\u63D0\u9192]\n\n\u4F60\u76F4\u63A5\u8C03\u7528\u4E86\u641C\u7D22/\u83B7\u53D6\u5DE5\u5177\uFF0C\u800C\u6CA1\u6709\u5229\u7528\u4E13\u95E8\u7684\u4EE3\u7406\u3002\n\n\u63A8\u8350\u505A\u6CD5\uFF1A\u4F7F\u7528 task \u8C03\u7528 explore/librarian \u4EE3\u7406\u4EE5\u83B7\u5F97\u66F4\u597D\u7684\u7ED3\u679C\uFF1A\n\n```\n// \u5E76\u884C\u63A2\u7D22 - \u540C\u65F6\u542F\u52A8\u591A\u4E2A\u4EE3\u7406\ntask(agent=\"explore\", prompt=\"Find all files matching pattern X\")\ntask(agent=\"explore\", prompt=\"Search for implementation of Y\")\ntask(agent=\"librarian\", prompt=\"Lookup documentation for Z\")\n\n// \u5728\u5B83\u4EEC\u540E\u53F0\u8FD0\u884C\u65F6\u7EE7\u7EED\u4F60\u7684\u5DE5\u4F5C\n// \u7CFB\u7EDF\u4F1A\u5728\u6BCF\u4E2A\u4EE3\u7406\u5B8C\u6210\u65F6\u901A\u77E5\u4F60\n```\n\n\u539F\u56E0\uFF1A\n- \u4EE3\u7406\u53EF\u4EE5\u6267\u884C\u66F4\u6DF1\u3001\u66F4\u5F7B\u5E95\u7684\u641C\u7D22\n- \u540E\u53F0\u4EFB\u52A1\u5E76\u884C\u8FD0\u884C\uFF0C\u8282\u7701\u65F6\u95F4\n- \u4E13\u95E8\u7684\u4EE3\u7406\u5177\u6709\u9886\u57DF\u4E13\u4E1A\u77E5\u8BC6\n- \u51CF\u5C11\u4E3B\u4F1A\u8BDD\u4E2D\u7684\u4E0A\u4E0B\u6587\u7A97\u53E3\u4F7F\u7528\n\n\u59CB\u7EC8\u4F18\u5148\u9009\u62E9\uFF1A\u591A\u4E2A\u5E76\u884C task \u8C03\u7528 > \u76F4\u63A5\u5DE5\u5177\u8C03\u7528\n";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const TODOWRITE_DESCRIPTION = "
|
|
1
|
+
export declare const TODOWRITE_DESCRIPTION = "\u4F7F\u7528\u6B64\u5DE5\u5177\u521B\u5EFA\u548C\u7BA1\u7406\u7ED3\u6784\u5316\u5F85\u529E\u5217\u8868\uFF0C\u7528\u4E8E\u8DDF\u8E2A\u591A\u6B65\u9AA4\u5DE5\u4F5C\u7684\u8FDB\u5EA6\u3002\n\n## \u5F85\u529E\u683C\u5F0F\uFF08\u5FC5\u987B\u9075\u5B88\uFF09\n\n\u6BCF\u4E2A\u5F85\u529E\u6807\u9898\u5FC5\u987B\u5305\u542B\u56DB\u4E2A\u8981\u7D20\uFF1A\u4F4D\u7F6E\uFF08WHERE\uFF09\u3001\u539F\u56E0\uFF08WHY\uFF09\u3001\u65B9\u6CD5\uFF08HOW\uFF09\u548C\u9884\u671F\u7ED3\u679C\uFF08EXPECTED RESULT\uFF09\u3002\n\n\u683C\u5F0F\uFF1A\"[\u4F4D\u7F6E] [\u65B9\u6CD5] \u4EE5 [\u539F\u56E0] \u2014 \u9884\u671F [\u7ED3\u679C]\"\n\n\u6B63\u786E\u793A\u4F8B\uFF1A\n- \"src/utils/validation.ts: Add validateEmail() for input sanitization \u2014 returns boolean\"\n- \"UserService.create(): Call validateEmail() before DB insert \u2014 rejects invalid emails with 400\"\n- \"validation.test.ts: Add test for missing @ sign \u2014 expect validateEmail('foo') to return false\"\n\n\u9519\u8BEF\u793A\u4F8B\uFF1A\n- \"Implement email validation\"\uFF08\u4F4D\u7F6E\uFF1F\u65B9\u6CD5\uFF1F\u7ED3\u679C\uFF1F\uFF09\n- \"Add dark mode\"\uFF08\u8FD9\u662F\u529F\u80FD\uFF0C\u4E0D\u662F\u5F85\u529E\uFF09\n- \"Fix auth\"\uFF08\u54EA\u4E2A\u6587\u4EF6\uFF1F\u4EC0\u4E48\u4FEE\u6539\uFF1F\u9884\u671F\u4EC0\u4E48\uFF1F\uFF09\n\n## \u7C92\u5EA6\u89C4\u5219\n\n\u6BCF\u4E2A\u5F85\u529E\u5FC5\u987B\u662F\u5355\u4E2A\u539F\u5B50\u64CD\u4F5C\uFF0C\u53EF\u5728 1-3 \u6B21\u5DE5\u5177\u8C03\u7528\u5185\u5B8C\u6210\u3002\u5982\u679C\u9700\u8981\u66F4\u591A\u8C03\u7528\uFF0C\u5219\u5E94\u62C6\u5206\u3002\n\n**\u89C4\u6A21\u6D4B\u8BD5**\uFF1A\u4F60\u80FD\u5426\u901A\u8FC7\u7F16\u8F91\u4E00\u4E2A\u6587\u4EF6\u6216\u8FD0\u884C\u4E00\u4E2A\u547D\u4EE4\u6765\u5B8C\u6210\u6B64\u5F85\u529E\uFF1F\u5982\u679C\u4E0D\u80FD\uFF0C\u5219\u89C4\u6A21\u8FC7\u5927\u3002\n\n## \u4EFB\u52A1\u7BA1\u7406\n- \u4E00\u6B21\u53EA\u80FD\u6709\u4E00\u4E2A\u8FDB\u884C\u4E2D\uFF08in_progress\uFF09\u7684\u4EFB\u52A1\u3002\u5B8C\u6210\u540E\u518D\u5F00\u59CB\u4E0B\u4E00\u4E2A\u3002\n- \u6BCF\u9879\u5B8C\u6210\u540E\u7ACB\u5373\u6807\u8BB0\u4E3A\u5DF2\u5B8C\u6210\u3002\n- \u7B80\u5355\u7684\u4E00\u6B21\u6027\u4EFB\u52A1\uFF08\u5355\u6B65\u3001\u660E\u663E\u64CD\u4F5C\uFF09\u65E0\u9700\u4F7F\u7528\u6B64\u5DE5\u5177\u3002";
|
package/dist/index.js
CHANGED
|
@@ -27758,8 +27758,8 @@ var model_capabilities_generated_default = {
|
|
|
27758
27758
|
]
|
|
27759
27759
|
},
|
|
27760
27760
|
limit: {
|
|
27761
|
-
context:
|
|
27762
|
-
output:
|
|
27761
|
+
context: 2000000,
|
|
27762
|
+
output: 262144
|
|
27763
27763
|
}
|
|
27764
27764
|
},
|
|
27765
27765
|
"zai-org/autoglm-phone-9b-multilingual": {
|
|
@@ -83284,29 +83284,29 @@ var AGENT_TOOLS = new Set([
|
|
|
83284
83284
|
"task"
|
|
83285
83285
|
]);
|
|
83286
83286
|
var REMINDER_MESSAGE = `
|
|
83287
|
-
[
|
|
83287
|
+
[\u4EE3\u7406\u4F7F\u7528\u63D0\u9192]
|
|
83288
83288
|
|
|
83289
|
-
|
|
83289
|
+
\u4F60\u76F4\u63A5\u8C03\u7528\u4E86\u641C\u7D22/\u83B7\u53D6\u5DE5\u5177\uFF0C\u800C\u6CA1\u6709\u5229\u7528\u4E13\u95E8\u7684\u4EE3\u7406\u3002
|
|
83290
83290
|
|
|
83291
|
-
|
|
83291
|
+
\u63A8\u8350\u505A\u6CD5\uFF1A\u4F7F\u7528 task \u8C03\u7528 explore/librarian \u4EE3\u7406\u4EE5\u83B7\u5F97\u66F4\u597D\u7684\u7ED3\u679C\uFF1A
|
|
83292
83292
|
|
|
83293
83293
|
\`\`\`
|
|
83294
|
-
//
|
|
83294
|
+
// \u5E76\u884C\u63A2\u7D22 - \u540C\u65F6\u542F\u52A8\u591A\u4E2A\u4EE3\u7406
|
|
83295
83295
|
task(agent="explore", prompt="Find all files matching pattern X")
|
|
83296
|
-
task(agent="explore", prompt="Search for implementation of Y")
|
|
83296
|
+
task(agent="explore", prompt="Search for implementation of Y")
|
|
83297
83297
|
task(agent="librarian", prompt="Lookup documentation for Z")
|
|
83298
83298
|
|
|
83299
|
-
//
|
|
83300
|
-
//
|
|
83299
|
+
// \u5728\u5B83\u4EEC\u540E\u53F0\u8FD0\u884C\u65F6\u7EE7\u7EED\u4F60\u7684\u5DE5\u4F5C
|
|
83300
|
+
// \u7CFB\u7EDF\u4F1A\u5728\u6BCF\u4E2A\u4EE3\u7406\u5B8C\u6210\u65F6\u901A\u77E5\u4F60
|
|
83301
83301
|
\`\`\`
|
|
83302
83302
|
|
|
83303
|
-
|
|
83304
|
-
-
|
|
83305
|
-
-
|
|
83306
|
-
-
|
|
83307
|
-
-
|
|
83303
|
+
\u539F\u56E0\uFF1A
|
|
83304
|
+
- \u4EE3\u7406\u53EF\u4EE5\u6267\u884C\u66F4\u6DF1\u3001\u66F4\u5F7B\u5E95\u7684\u641C\u7D22
|
|
83305
|
+
- \u540E\u53F0\u4EFB\u52A1\u5E76\u884C\u8FD0\u884C\uFF0C\u8282\u7701\u65F6\u95F4
|
|
83306
|
+
- \u4E13\u95E8\u7684\u4EE3\u7406\u5177\u6709\u9886\u57DF\u4E13\u4E1A\u77E5\u8BC6
|
|
83307
|
+
- \u51CF\u5C11\u4E3B\u4F1A\u8BDD\u4E2D\u7684\u4E0A\u4E0B\u6587\u7A97\u53E3\u4F7F\u7528
|
|
83308
83308
|
|
|
83309
|
-
|
|
83309
|
+
\u59CB\u7EC8\u4F18\u5148\u9009\u62E9\uFF1A\u591A\u4E2A\u5E76\u884C task \u8C03\u7528 > \u76F4\u63A5\u5DE5\u5177\u8C03\u7528
|
|
83310
83310
|
`;
|
|
83311
83311
|
|
|
83312
83312
|
// src/hooks/agent-usage-reminder/storage.ts
|
|
@@ -97191,34 +97191,34 @@ function createReadImageResizerHook(_ctx) {
|
|
|
97191
97191
|
};
|
|
97192
97192
|
}
|
|
97193
97193
|
// src/hooks/todo-description-override/description.ts
|
|
97194
|
-
var TODOWRITE_DESCRIPTION =
|
|
97194
|
+
var TODOWRITE_DESCRIPTION = `\u4F7F\u7528\u6B64\u5DE5\u5177\u521B\u5EFA\u548C\u7BA1\u7406\u7ED3\u6784\u5316\u5F85\u529E\u5217\u8868\uFF0C\u7528\u4E8E\u8DDF\u8E2A\u591A\u6B65\u9AA4\u5DE5\u4F5C\u7684\u8FDB\u5EA6\u3002
|
|
97195
97195
|
|
|
97196
|
-
##
|
|
97196
|
+
## \u5F85\u529E\u683C\u5F0F\uFF08\u5FC5\u987B\u9075\u5B88\uFF09
|
|
97197
97197
|
|
|
97198
|
-
|
|
97198
|
+
\u6BCF\u4E2A\u5F85\u529E\u6807\u9898\u5FC5\u987B\u5305\u542B\u56DB\u4E2A\u8981\u7D20\uFF1A\u4F4D\u7F6E\uFF08WHERE\uFF09\u3001\u539F\u56E0\uFF08WHY\uFF09\u3001\u65B9\u6CD5\uFF08HOW\uFF09\u548C\u9884\u671F\u7ED3\u679C\uFF08EXPECTED RESULT\uFF09\u3002
|
|
97199
97199
|
|
|
97200
|
-
|
|
97200
|
+
\u683C\u5F0F\uFF1A"[\u4F4D\u7F6E] [\u65B9\u6CD5] \u4EE5 [\u539F\u56E0] \u2014 \u9884\u671F [\u7ED3\u679C]"
|
|
97201
97201
|
|
|
97202
|
-
|
|
97202
|
+
\u6B63\u786E\u793A\u4F8B\uFF1A
|
|
97203
97203
|
- "src/utils/validation.ts: Add validateEmail() for input sanitization \u2014 returns boolean"
|
|
97204
97204
|
- "UserService.create(): Call validateEmail() before DB insert \u2014 rejects invalid emails with 400"
|
|
97205
97205
|
- "validation.test.ts: Add test for missing @ sign \u2014 expect validateEmail('foo') to return false"
|
|
97206
97206
|
|
|
97207
|
-
|
|
97208
|
-
- "Implement email validation"
|
|
97209
|
-
- "Add dark mode"
|
|
97210
|
-
- "Fix auth"
|
|
97207
|
+
\u9519\u8BEF\u793A\u4F8B\uFF1A
|
|
97208
|
+
- "Implement email validation"\uFF08\u4F4D\u7F6E\uFF1F\u65B9\u6CD5\uFF1F\u7ED3\u679C\uFF1F\uFF09
|
|
97209
|
+
- "Add dark mode"\uFF08\u8FD9\u662F\u529F\u80FD\uFF0C\u4E0D\u662F\u5F85\u529E\uFF09
|
|
97210
|
+
- "Fix auth"\uFF08\u54EA\u4E2A\u6587\u4EF6\uFF1F\u4EC0\u4E48\u4FEE\u6539\uFF1F\u9884\u671F\u4EC0\u4E48\uFF1F\uFF09
|
|
97211
97211
|
|
|
97212
|
-
##
|
|
97212
|
+
## \u7C92\u5EA6\u89C4\u5219
|
|
97213
97213
|
|
|
97214
|
-
|
|
97214
|
+
\u6BCF\u4E2A\u5F85\u529E\u5FC5\u987B\u662F\u5355\u4E2A\u539F\u5B50\u64CD\u4F5C\uFF0C\u53EF\u5728 1-3 \u6B21\u5DE5\u5177\u8C03\u7528\u5185\u5B8C\u6210\u3002\u5982\u679C\u9700\u8981\u66F4\u591A\u8C03\u7528\uFF0C\u5219\u5E94\u62C6\u5206\u3002
|
|
97215
97215
|
|
|
97216
|
-
|
|
97216
|
+
**\u89C4\u6A21\u6D4B\u8BD5**\uFF1A\u4F60\u80FD\u5426\u901A\u8FC7\u7F16\u8F91\u4E00\u4E2A\u6587\u4EF6\u6216\u8FD0\u884C\u4E00\u4E2A\u547D\u4EE4\u6765\u5B8C\u6210\u6B64\u5F85\u529E\uFF1F\u5982\u679C\u4E0D\u80FD\uFF0C\u5219\u89C4\u6A21\u8FC7\u5927\u3002
|
|
97217
97217
|
|
|
97218
|
-
##
|
|
97219
|
-
-
|
|
97220
|
-
-
|
|
97221
|
-
-
|
|
97218
|
+
## \u4EFB\u52A1\u7BA1\u7406
|
|
97219
|
+
- \u4E00\u6B21\u53EA\u80FD\u6709\u4E00\u4E2A\u8FDB\u884C\u4E2D\uFF08in_progress\uFF09\u7684\u4EFB\u52A1\u3002\u5B8C\u6210\u540E\u518D\u5F00\u59CB\u4E0B\u4E00\u4E2A\u3002
|
|
97220
|
+
- \u6BCF\u9879\u5B8C\u6210\u540E\u7ACB\u5373\u6807\u8BB0\u4E3A\u5DF2\u5B8C\u6210\u3002
|
|
97221
|
+
- \u7B80\u5355\u7684\u4E00\u6B21\u6027\u4EFB\u52A1\uFF08\u5355\u6B65\u3001\u660E\u663E\u64CD\u4F5C\uFF09\u65E0\u9700\u4F7F\u7528\u6B64\u5DE5\u5177\u3002`;
|
|
97222
97222
|
|
|
97223
97223
|
// src/hooks/todo-description-override/hook.ts
|
|
97224
97224
|
function createTodoDescriptionOverrideHook() {
|
|
@@ -119772,60 +119772,60 @@ Tip: reuse LINE#ID entries from the latest read/edit output, or batch related ed
|
|
|
119772
119772
|
}
|
|
119773
119773
|
|
|
119774
119774
|
// src/tools/hashline-edit/tool-description.ts
|
|
119775
|
-
var HASHLINE_EDIT_DESCRIPTION =
|
|
119776
|
-
|
|
119777
|
-
|
|
119778
|
-
1.
|
|
119779
|
-
2.
|
|
119780
|
-
3.
|
|
119781
|
-
4.
|
|
119782
|
-
5.
|
|
119783
|
-
|
|
119784
|
-
|
|
119785
|
-
- SNAPSHOT
|
|
119786
|
-
- replace
|
|
119787
|
-
- lines
|
|
119788
|
-
-
|
|
119789
|
-
-
|
|
119790
|
-
- lines
|
|
119791
|
-
|
|
119792
|
-
|
|
119793
|
-
|
|
119794
|
-
LINE#ID
|
|
119795
|
-
|
|
119796
|
-
{
|
|
119797
|
-
{
|
|
119798
|
-
|
|
119799
|
-
|
|
119800
|
-
|
|
119801
|
-
|
|
119802
|
-
|
|
119803
|
-
|
|
119804
|
-
append/prepend
|
|
119805
|
-
|
|
119806
|
-
|
|
119807
|
-
lines
|
|
119808
|
-
|
|
119809
|
-
lines: null
|
|
119810
|
-
|
|
119811
|
-
|
|
119812
|
-
delete=true
|
|
119813
|
-
rename
|
|
119814
|
-
|
|
119815
|
-
|
|
119816
|
-
1.
|
|
119817
|
-
2.
|
|
119818
|
-
3.
|
|
119819
|
-
4.
|
|
119820
|
-
5.
|
|
119821
|
-
6.
|
|
119822
|
-
7.
|
|
119823
|
-
8.
|
|
119824
|
-
9.
|
|
119825
|
-
|
|
119826
|
-
|
|
119827
|
-
|
|
119828
|
-
|
|
119775
|
+
var HASHLINE_EDIT_DESCRIPTION = `\u4F7F\u7528 LINE#ID \u683C\u5F0F\u7F16\u8F91\u6587\u4EF6\uFF0C\u5B9E\u73B0\u7CBE\u786E\u3001\u5B89\u5168\u7684\u4FEE\u6539\u3002
|
|
119776
|
+
|
|
119777
|
+
\u5DE5\u4F5C\u6D41\u7A0B\uFF1A
|
|
119778
|
+
1. \u8BFB\u53D6\u76EE\u6807\u6587\u4EF6/\u8303\u56F4\uFF0C\u590D\u5236\u7CBE\u786E\u7684 LINE#ID \u6807\u7B7E\u3002
|
|
119779
|
+
2. \u6BCF\u4E2A\u903B\u8F91\u53D8\u66F4\u70B9\u9009\u62E9\u6700\u5C0F\u5316\u7684\u64CD\u4F5C\u3002
|
|
119780
|
+
3. \u6BCF\u4E2A\u6587\u4EF6\u6BCF\u6B21\u63D0\u4EA4\u4E00\u4E2A\u7F16\u8F91\u8C03\u7528\uFF0C\u5305\u542B\u6240\u6709\u76F8\u5173\u64CD\u4F5C\u3002
|
|
119781
|
+
4. \u5982\u679C\u540C\u4E00\u6587\u4EF6\u9700\u8981\u518D\u6B21\u8C03\u7528\uFF0C\u5148\u91CD\u65B0\u8BFB\u53D6\u3002
|
|
119782
|
+
5. \u4EC5\u5C06\u951A\u70B9\u7528\u4F5C "LINE#ID"\uFF08\u6C38\u4E0D\u5305\u542B\u5C3E\u90E8 "|content"\uFF09\u3002
|
|
119783
|
+
|
|
119784
|
+
<\u5FC5\u987B\u9075\u5B88>
|
|
119785
|
+
- SNAPSHOT\uFF1A\u5355\u6B21\u8C03\u7528\u4E2D\u7684\u6240\u6709\u7F16\u8F91\u5747\u53C2\u7167\u539F\u59CB\u6587\u4EF6\u72B6\u6001\u3002\u4E0D\u8981\u4E3A\u540C\u4E00\u6B21\u8C03\u7528\u4E2D\u4E4B\u524D\u7684\u7F16\u8F91\u8C03\u6574\u884C\u53F7\u2014\u2014\u7CFB\u7EDF\u4F1A\u81EA\u52A8\u4ECE\u4E0B\u5F80\u4E0A\u5E94\u7528\u5B83\u4EEC\u3002
|
|
119786
|
+
- replace \u5220\u9664 pos..end\uFF08\u5305\u542B\uFF09\u8303\u56F4\u7684\u884C\u5E76\u63D2\u5165\u65B0\u884C\u3002pos \u4E4B\u524D\u7684\u884C\u548C end \u4E4B\u540E\u7684\u884C\u4E0D\u53D7\u5F71\u54CD\u2014\u2014\u4E0D\u8981\u5C06\u5B83\u4EEC\u5305\u542B\u5728 lines \u4E2D\u3002\u5426\u5219\u4F1A\u51FA\u73B0\u91CD\u590D\u3002
|
|
119787
|
+
- lines \u5FC5\u987B\u53EA\u5305\u542B\u5C5E\u4E8E\u6240\u6D88\u8D39\u8303\u56F4\u5185\u7684\u5185\u5BB9\u3002end \u4E4B\u540E\u7684\u5185\u5BB9\u4FDD\u6301\u4E0D\u53D8\u3002
|
|
119788
|
+
- \u6807\u7B7E\u5FC5\u987B\u4ECE\u8BFB\u53D6\u8F93\u51FA\u6216 >>> \u4E0D\u5339\u914D\u8F93\u51FA\u4E2D\u7CBE\u786E\u590D\u5236\u3002\u5207\u52FF\u731C\u6D4B\u6807\u7B7E\u3002
|
|
119789
|
+
- \u6279\u91CF\u64CD\u4F5C = \u5728 edits[] \u4E2D\u5305\u542B\u591A\u4E2A\u64CD\u4F5C\uFF0C\u800C\u975E\u4E00\u4E2A\u8986\u76D6\u6240\u6709\u5185\u5BB9\u7684\u5927 replace\u3002\u6BCF\u4E2A\u64CD\u4F5C\u5E94\u9488\u5BF9\u6700\u5C0F\u7684\u53EF\u80FD\u53D8\u66F4\u3002
|
|
119790
|
+
- lines \u5FC5\u987B\u53EA\u5305\u542B\u7EAF\u66FF\u6362\u6587\u672C\uFF08\u4E0D\u542B LINE#ID \u524D\u7F00\uFF0C\u65E0 diff + \u6807\u8BB0\uFF09\u3002
|
|
119791
|
+
</\u5FC5\u987B\u9075\u5B88>
|
|
119792
|
+
|
|
119793
|
+
<\u64CD\u4F5C\u8BF4\u660E>
|
|
119794
|
+
LINE#ID \u683C\u5F0F\uFF1A
|
|
119795
|
+
\u6BCF\u884C\u5F15\u7528\u5FC5\u987B\u91C7\u7528 "{\u884C\u53F7}#{\u54C8\u5E0CID}" \u683C\u5F0F\uFF0C\u5176\u4E2D\uFF1A
|
|
119796
|
+
{\u884C\u53F7}\uFF1A\u4ECE 1 \u5F00\u59CB\u7684\u884C\u53F7
|
|
119797
|
+
{\u54C8\u5E0CID}\uFF1A\u6765\u81EA ZPMQVRWSNKTXJBYH \u96C6\u5408\u7684\u4E24\u4E2A CID \u5B57\u6BCD
|
|
119798
|
+
|
|
119799
|
+
\u64CD\u4F5C\u9009\u62E9\uFF1A
|
|
119800
|
+
\u4EC5\u7528 pos \u8FDB\u884C replace \u2192 \u66FF\u6362 pos \u5904\u7684\u4E00\u884C
|
|
119801
|
+
\u7528 pos+end \u8FDB\u884C replace \u2192 \u5C06 pos..end \u8303\u56F4\uFF08\u542B\uFF09\u4F5C\u4E3A\u5757\u66FF\u6362\uFF08\u8303\u56F4\u5728\u591A\u4E2A\u7F16\u8F91\u95F4\u4E0D\u5F97\u91CD\u53E0\uFF09
|
|
119802
|
+
\u7528 pos/end \u951A\u70B9\u8FDB\u884C append \u2192 \u5728\u8BE5\u951A\u70B9\u4E4B\u540E\u63D2\u5165
|
|
119803
|
+
\u7528 pos/end \u951A\u70B9\u8FDB\u884C prepend \u2192 \u5728\u8BE5\u951A\u70B9\u4E4B\u524D\u63D2\u5165
|
|
119804
|
+
\u65E0\u951A\u70B9\u7684 append/prepend \u2192 \u5728 EOF/BOF \u63D2\u5165\uFF08\u4E5F\u53EF\u521B\u5EFA\u4E0D\u5B58\u5728\u7684\u6587\u4EF6\uFF09
|
|
119805
|
+
|
|
119806
|
+
\u5185\u5BB9\u683C\u5F0F\uFF1A
|
|
119807
|
+
lines \u53EF\u4EE5\u662F\u5B57\u7B26\u4E32\uFF08\u5355\u884C\uFF09\u6216 string[]\uFF08\u591A\u884C\uFF0C\u63A8\u8350\uFF09\u3002
|
|
119808
|
+
\u5982\u679C\u4F20\u5165\u591A\u884C\u5B57\u7B26\u4E32\uFF0C\u5C06\u6309\u771F\u5B9E\u6362\u884C\u7B26\u62C6\u5206\u3002
|
|
119809
|
+
lines: null \u6216 lines: [] \u914D\u5408 replace \u2192 \u5220\u9664\u8FD9\u4E9B\u884C\u3002
|
|
119810
|
+
|
|
119811
|
+
\u6587\u4EF6\u6A21\u5F0F\uFF1A
|
|
119812
|
+
delete=true \u5220\u9664\u6587\u4EF6\uFF0C\u8981\u6C42 edits=[] \u4E14\u65E0 rename
|
|
119813
|
+
rename \u5C06\u6700\u7EC8\u5185\u5BB9\u79FB\u52A8\u5230\u65B0\u8DEF\u5F84\u5E76\u5220\u9664\u65E7\u8DEF\u5F84
|
|
119814
|
+
|
|
119815
|
+
\u89C4\u5219\uFF1A
|
|
119816
|
+
1. \u6700\u5C0F\u5316\u8303\u56F4\uFF1A\u6BCF\u4E2A\u903B\u8F91\u53D8\u66F4\u70B9\u4E00\u4E2A\u64CD\u4F5C\u3002
|
|
119817
|
+
2. \u4FDD\u6301\u683C\u5F0F\uFF1A\u4FDD\u7559\u7F29\u8FDB\u3001\u6807\u70B9\u3001\u6362\u884C\u3001\u5C3E\u90E8\u9017\u53F7\u3001\u5927\u62EC\u53F7\u98CE\u683C\u3002
|
|
119818
|
+
3. \u4F18\u5148\u63D2\u5165\u800C\u975E\u90BB\u8FD1\u91CD\u5199\uFF1A\u951A\u5B9A\u5230\u7ED3\u6784\u8FB9\u754C\uFF08}\u3001]\u3001}), \u800C\u975E\u5185\u90E8\u5C5E\u6027\u884C\u3002
|
|
119819
|
+
4. \u7981\u6B62\u65E0\u610F\u4E49\u64CD\u4F5C\uFF1A\u66FF\u6362\u5185\u5BB9\u5FC5\u987B\u4E0E\u5F53\u524D\u5185\u5BB9\u4E0D\u540C\u3002
|
|
119820
|
+
5. \u4EC5\u4FEE\u6539\u8BF7\u6C42\u7684\u4EE3\u7801\uFF1A\u907F\u514D\u9644\u5E26\u7F16\u8F91\u3002
|
|
119821
|
+
6. \u4F7F\u7528\u7CBE\u786E\u7684\u5F53\u524D\u6807\u8BB0\uFF1A\u7EDD\u4E0D\u8FD1\u4F3C\u91CD\u5199\u3002
|
|
119822
|
+
7. \u5BF9\u4E8E\u4EA4\u6362/\u79FB\u52A8\uFF1A\u4F18\u5148\u4F7F\u7528\u4E00\u4E2A\u8303\u56F4\u64CD\u4F5C\u800C\u975E\u591A\u4E2A\u5355\u884C\u64CD\u4F5C\u3002
|
|
119823
|
+
8. \u951A\u5B9A\u5230\u7ED3\u6784\u884C\uFF08\u51FD\u6570/\u7C7B/\u5927\u62EC\u53F7\uFF09\uFF0C\u7EDD\u4E0D\u5B9A\u951A\u5230\u7A7A\u884C\u3002
|
|
119824
|
+
9. \u6BCF\u6B21\u6210\u529F\u7F16\u8F91\u8C03\u7528\u540E\u91CD\u65B0\u8BFB\u53D6\uFF0C\u518D\u5BF9\u540C\u4E00\u6587\u4EF6\u53D1\u51FA\u4E0B\u4E00\u4E2A\u8C03\u7528\u3002
|
|
119825
|
+
</\u64CD\u4F5C\u8BF4\u660E>
|
|
119826
|
+
|
|
119827
|
+
<\u793A\u4F8B>
|
|
119828
|
+
\u8BFB\u53D6\u540E\u6587\u4EF6\u5185\u5BB9\u5982\u4E0B\uFF1A
|
|
119829
119829
|
10#VK|function hello() {
|
|
119830
119830
|
11#XJ| console.log("hi");
|
|
119831
119831
|
12#MB| console.log("bye");
|
|
@@ -119833,40 +119833,41 @@ Given this file content after read:
|
|
|
119833
119833
|
14#TN|
|
|
119834
119834
|
15#WS|function world() {
|
|
119835
119835
|
|
|
119836
|
-
|
|
119836
|
+
\u5355\u884C\u66FF\u6362\uFF08\u4FEE\u6539\u7B2C 11 \u884C\uFF09\uFF1A
|
|
119837
119837
|
{ op: "replace", pos: "11#XJ", lines: [" console.log(\\"hello\\");"] }
|
|
119838
|
-
|
|
119838
|
+
\u7ED3\u679C\uFF1A\u66FF\u6362\u7B2C 11 \u884C\u3002\u7B2C 10\u300112-15 \u884C\u4E0D\u53D8\u3002
|
|
119839
119839
|
|
|
119840
|
-
|
|
119840
|
+
\u8303\u56F4\u66FF\u6362\uFF08\u91CD\u5199\u51FD\u6570\u4F53\uFF0C\u7B2C 11-12 \u884C\uFF09\uFF1A
|
|
119841
119841
|
{ op: "replace", pos: "11#XJ", end: "12#MB", lines: [" return \\"hello world\\";"] }
|
|
119842
|
-
|
|
119842
|
+
\u7ED3\u679C\uFF1A\u5220\u9664\u7B2C 11-12 \u884C\uFF0C\u66FF\u6362\u4E3A 1 \u884C\u65B0\u5185\u5BB9\u3002\u7B2C 10\u300113-15 \u884C\u4E0D\u53D8\u3002
|
|
119843
119843
|
|
|
119844
|
-
|
|
119844
|
+
\u5220\u9664\u4E00\u884C\uFF1A
|
|
119845
119845
|
{ op: "replace", pos: "12#MB", lines: null }
|
|
119846
|
-
|
|
119846
|
+
\u7ED3\u679C\uFF1A\u5220\u9664\u7B2C 12 \u884C\u3002\u7B2C 10-11\u300113-15 \u884C\u4E0D\u53D8\u3002
|
|
119847
119847
|
|
|
119848
|
-
|
|
119848
|
+
\u5728\u7B2C 13 \u884C\u540E\u63D2\u5165\uFF08\u4E24\u51FD\u6570\u4E4B\u95F4\uFF09\uFF1A
|
|
119849
119849
|
{ op: "append", pos: "13#QR", lines: ["", "function added() {", " return true;", "}"] }
|
|
119850
|
-
|
|
119850
|
+
\u7ED3\u679C\uFF1A\u5728\u7B2C 13 \u884C\u540E\u63D2\u5165 4 \u884C\u65B0\u5185\u5BB9\u3002\u6240\u6709\u73B0\u6709\u884C\u4E0D\u53D8\u3002
|
|
119851
119851
|
|
|
119852
|
-
|
|
119852
|
+
\u9519\u8BEF\u793A\u4F8B \u2014 lines \u8D85\u51FA end\uFF08\u5BFC\u81F4\u7B2C 13 \u884C\u91CD\u590D\uFF09\uFF1A
|
|
119853
119853
|
{ op: "replace", pos: "11#XJ", end: "12#MB", lines: [" return \\"hi\\";", "}"] }
|
|
119854
|
-
|
|
119855
|
-
|
|
119856
|
-
|
|
119857
|
-
|
|
119858
|
-
|
|
119859
|
-
|
|
119860
|
-
|
|
119861
|
-
|
|
119862
|
-
BOM
|
|
119863
|
-
|
|
119864
|
-
|
|
119865
|
-
|
|
119866
|
-
|
|
119867
|
-
|
|
119868
|
-
|
|
119869
|
-
|
|
119854
|
+
\u7B2C 13 \u884C\u662F "}"\uFF0C\u5DF2\u5B58\u5728\u4E8E end \u4E4B\u540E\u3002\u5C06 "}" \u5305\u542B\u5728 lines \u4E2D\u4F1A\u5BFC\u81F4\u91CD\u590D\u3002
|
|
119855
|
+
\u6B63\u786E\u5199\u6CD5\uFF1A{ op: "replace", pos: "11#XJ", end: "12#MB", lines: [" return \\"hi\\";"] }
|
|
119856
|
+
</\u793A\u4F8B>
|
|
119857
|
+
|
|
119858
|
+
<\u81EA\u52A8\u4FEE\u6B63>
|
|
119859
|
+
\u5185\u7F6E\u81EA\u52A8\u7EA0\u6B63\uFF08\u65E0\u9700\u624B\u52A8\u5904\u7406\uFF09\uFF1A
|
|
119860
|
+
\u5408\u5E76\u7684\u884C\u4F1A\u81EA\u52A8\u6269\u5C55\u56DE\u539F\u59CB\u884C\u6570\u3002
|
|
119861
|
+
\u7F29\u8FDB\u4F1A\u4ECE\u539F\u59CB\u884C\u81EA\u52A8\u6062\u590D\u3002
|
|
119862
|
+
BOM \u548C CRLF \u6362\u884C\u7B26\u81EA\u52A8\u4FDD\u7559\u3002
|
|
119863
|
+
\u6587\u672C\u4E2D\u7684 hashline \u524D\u7F00\u548C diff \u6807\u8BB0\u4F1A\u81EA\u52A8\u53BB\u9664\u3002
|
|
119864
|
+
\u8FB9\u754C\u56DE\u663E\u884C\uFF08\u590D\u5236\u76F8\u90BB\u5B58\u6D3B\u884C\uFF09\u4F1A\u81EA\u52A8\u53BB\u9664\u3002
|
|
119865
|
+
</\u81EA\u52A8\u4FEE\u6B63>
|
|
119866
|
+
|
|
119867
|
+
\u6062\u590D\uFF08\u51FA\u73B0 >>> \u4E0D\u5339\u914D\u9519\u8BEF\u65F6\uFF09\uFF1A
|
|
119868
|
+
\u76F4\u63A5\u590D\u5236\u9519\u8BEF\u8F93\u51FA\u4E2D\u663E\u793A\u7684\u66F4\u65B0\u540E\u7684 LINE#ID \u6807\u7B7E\u3002
|
|
119869
|
+
\u4EC5\u5728\u9519\u8BEF\u7247\u6BB5\u4E2D\u7F3A\u5C11\u6240\u9700\u6807\u7B7E\u65F6\u624D\u91CD\u65B0\u8BFB\u53D6\u3002
|
|
119870
|
+
`;
|
|
119870
119871
|
|
|
119871
119872
|
// src/tools/hashline-edit/tools.ts
|
|
119872
119873
|
function createHashlineEditTool(ctx) {
|
|
@@ -130561,7 +130562,7 @@ function createSisyphusAgent(model, availableAgents, availableToolNames, availab
|
|
|
130561
130562
|
if (isGpt5_4Model(model)) {
|
|
130562
130563
|
const prompt2 = buildGpt54SisyphusPrompt(model, agents, tools, skills2, categories2, useTaskSystem);
|
|
130563
130564
|
return {
|
|
130564
|
-
description: "
|
|
130565
|
+
description: "\u5F3A\u5927\u7684 AI \u7F16\u6392\u5668\u3002\u901A\u8FC7\u5F85\u529E\u4E8B\u9879\u6267\u7740\u5730\u89C4\u5212\uFF0C\u5728\u63A2\u7D22\u524D\u8BC4\u4F30\u641C\u7D22\u590D\u6742\u5EA6\uFF0C\u901A\u8FC7 category+skills \u7EC4\u5408\u7B56\u7565\u6027\u5730\u5206\u914D\u4EFB\u52A1\u3002\u5BF9\u5185\u90E8\u4EE3\u7801\u4F7F\u7528 explore\uFF08\u652F\u6301\u5E76\u884C\uFF09\uFF0C\u5BF9\u5916\u90E8\u6587\u6863\u4F7F\u7528 librarian\u3002\uFF08Sisyphus - OhMyOpenCode\uFF09",
|
|
130565
130566
|
mode: MODE,
|
|
130566
130567
|
model,
|
|
130567
130568
|
maxTokens: 64000,
|
|
@@ -130597,7 +130598,7 @@ ${buildGeminiVerificationOverride()}
|
|
|
130597
130598
|
call_omo_agent: "deny"
|
|
130598
130599
|
};
|
|
130599
130600
|
const base = {
|
|
130600
|
-
description: "
|
|
130601
|
+
description: "\u5F3A\u5927\u7684 AI \u7F16\u6392\u5668\u3002\u901A\u8FC7\u5F85\u529E\u4E8B\u9879\u6267\u7740\u5730\u89C4\u5212\uFF0C\u5728\u63A2\u7D22\u524D\u8BC4\u4F30\u641C\u7D22\u590D\u6742\u5EA6\uFF0C\u901A\u8FC7 category+skills \u7EC4\u5408\u7B56\u7565\u6027\u5730\u5206\u914D\u4EFB\u52A1\u3002\u5BF9\u5185\u90E8\u4EE3\u7801\u4F7F\u7528 explore\uFF08\u652F\u6301\u5E76\u884C\uFF09\uFF0C\u5BF9\u5916\u90E8\u6587\u6863\u4F7F\u7528 librarian\u3002\uFF08Sisyphus - OhMyOpenCode\uFF09",
|
|
130601
130602
|
mode: MODE,
|
|
130602
130603
|
model,
|
|
130603
130604
|
maxTokens: 64000,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const HASHLINE_EDIT_DESCRIPTION = "
|
|
1
|
+
export declare const HASHLINE_EDIT_DESCRIPTION = "\u4F7F\u7528 LINE#ID \u683C\u5F0F\u7F16\u8F91\u6587\u4EF6\uFF0C\u5B9E\u73B0\u7CBE\u786E\u3001\u5B89\u5168\u7684\u4FEE\u6539\u3002\n\n\u5DE5\u4F5C\u6D41\u7A0B\uFF1A\n1. \u8BFB\u53D6\u76EE\u6807\u6587\u4EF6/\u8303\u56F4\uFF0C\u590D\u5236\u7CBE\u786E\u7684 LINE#ID \u6807\u7B7E\u3002\n2. \u6BCF\u4E2A\u903B\u8F91\u53D8\u66F4\u70B9\u9009\u62E9\u6700\u5C0F\u5316\u7684\u64CD\u4F5C\u3002\n3. \u6BCF\u4E2A\u6587\u4EF6\u6BCF\u6B21\u63D0\u4EA4\u4E00\u4E2A\u7F16\u8F91\u8C03\u7528\uFF0C\u5305\u542B\u6240\u6709\u76F8\u5173\u64CD\u4F5C\u3002\n4. \u5982\u679C\u540C\u4E00\u6587\u4EF6\u9700\u8981\u518D\u6B21\u8C03\u7528\uFF0C\u5148\u91CD\u65B0\u8BFB\u53D6\u3002\n5. \u4EC5\u5C06\u951A\u70B9\u7528\u4F5C \"LINE#ID\"\uFF08\u6C38\u4E0D\u5305\u542B\u5C3E\u90E8 \"|content\"\uFF09\u3002\n\n<\u5FC5\u987B\u9075\u5B88>\n- SNAPSHOT\uFF1A\u5355\u6B21\u8C03\u7528\u4E2D\u7684\u6240\u6709\u7F16\u8F91\u5747\u53C2\u7167\u539F\u59CB\u6587\u4EF6\u72B6\u6001\u3002\u4E0D\u8981\u4E3A\u540C\u4E00\u6B21\u8C03\u7528\u4E2D\u4E4B\u524D\u7684\u7F16\u8F91\u8C03\u6574\u884C\u53F7\u2014\u2014\u7CFB\u7EDF\u4F1A\u81EA\u52A8\u4ECE\u4E0B\u5F80\u4E0A\u5E94\u7528\u5B83\u4EEC\u3002\n- replace \u5220\u9664 pos..end\uFF08\u5305\u542B\uFF09\u8303\u56F4\u7684\u884C\u5E76\u63D2\u5165\u65B0\u884C\u3002pos \u4E4B\u524D\u7684\u884C\u548C end \u4E4B\u540E\u7684\u884C\u4E0D\u53D7\u5F71\u54CD\u2014\u2014\u4E0D\u8981\u5C06\u5B83\u4EEC\u5305\u542B\u5728 lines \u4E2D\u3002\u5426\u5219\u4F1A\u51FA\u73B0\u91CD\u590D\u3002\n- lines \u5FC5\u987B\u53EA\u5305\u542B\u5C5E\u4E8E\u6240\u6D88\u8D39\u8303\u56F4\u5185\u7684\u5185\u5BB9\u3002end \u4E4B\u540E\u7684\u5185\u5BB9\u4FDD\u6301\u4E0D\u53D8\u3002\n- \u6807\u7B7E\u5FC5\u987B\u4ECE\u8BFB\u53D6\u8F93\u51FA\u6216 >>> \u4E0D\u5339\u914D\u8F93\u51FA\u4E2D\u7CBE\u786E\u590D\u5236\u3002\u5207\u52FF\u731C\u6D4B\u6807\u7B7E\u3002\n- \u6279\u91CF\u64CD\u4F5C = \u5728 edits[] \u4E2D\u5305\u542B\u591A\u4E2A\u64CD\u4F5C\uFF0C\u800C\u975E\u4E00\u4E2A\u8986\u76D6\u6240\u6709\u5185\u5BB9\u7684\u5927 replace\u3002\u6BCF\u4E2A\u64CD\u4F5C\u5E94\u9488\u5BF9\u6700\u5C0F\u7684\u53EF\u80FD\u53D8\u66F4\u3002\n- lines \u5FC5\u987B\u53EA\u5305\u542B\u7EAF\u66FF\u6362\u6587\u672C\uFF08\u4E0D\u542B LINE#ID \u524D\u7F00\uFF0C\u65E0 diff + \u6807\u8BB0\uFF09\u3002\n</\u5FC5\u987B\u9075\u5B88>\n\n<\u64CD\u4F5C\u8BF4\u660E>\nLINE#ID \u683C\u5F0F\uFF1A\n \u6BCF\u884C\u5F15\u7528\u5FC5\u987B\u91C7\u7528 \"{\u884C\u53F7}#{\u54C8\u5E0CID}\" \u683C\u5F0F\uFF0C\u5176\u4E2D\uFF1A\n {\u884C\u53F7}\uFF1A\u4ECE 1 \u5F00\u59CB\u7684\u884C\u53F7\n {\u54C8\u5E0CID}\uFF1A\u6765\u81EA ZPMQVRWSNKTXJBYH \u96C6\u5408\u7684\u4E24\u4E2A CID \u5B57\u6BCD\n\n\u64CD\u4F5C\u9009\u62E9\uFF1A\n \u4EC5\u7528 pos \u8FDB\u884C replace \u2192 \u66FF\u6362 pos \u5904\u7684\u4E00\u884C\n \u7528 pos+end \u8FDB\u884C replace \u2192 \u5C06 pos..end \u8303\u56F4\uFF08\u542B\uFF09\u4F5C\u4E3A\u5757\u66FF\u6362\uFF08\u8303\u56F4\u5728\u591A\u4E2A\u7F16\u8F91\u95F4\u4E0D\u5F97\u91CD\u53E0\uFF09\n \u7528 pos/end \u951A\u70B9\u8FDB\u884C append \u2192 \u5728\u8BE5\u951A\u70B9\u4E4B\u540E\u63D2\u5165\n \u7528 pos/end \u951A\u70B9\u8FDB\u884C prepend \u2192 \u5728\u8BE5\u951A\u70B9\u4E4B\u524D\u63D2\u5165\n \u65E0\u951A\u70B9\u7684 append/prepend \u2192 \u5728 EOF/BOF \u63D2\u5165\uFF08\u4E5F\u53EF\u521B\u5EFA\u4E0D\u5B58\u5728\u7684\u6587\u4EF6\uFF09\n\n\u5185\u5BB9\u683C\u5F0F\uFF1A\n lines \u53EF\u4EE5\u662F\u5B57\u7B26\u4E32\uFF08\u5355\u884C\uFF09\u6216 string[]\uFF08\u591A\u884C\uFF0C\u63A8\u8350\uFF09\u3002\n \u5982\u679C\u4F20\u5165\u591A\u884C\u5B57\u7B26\u4E32\uFF0C\u5C06\u6309\u771F\u5B9E\u6362\u884C\u7B26\u62C6\u5206\u3002\n lines: null \u6216 lines: [] \u914D\u5408 replace \u2192 \u5220\u9664\u8FD9\u4E9B\u884C\u3002\n\n\u6587\u4EF6\u6A21\u5F0F\uFF1A\n delete=true \u5220\u9664\u6587\u4EF6\uFF0C\u8981\u6C42 edits=[] \u4E14\u65E0 rename\n rename \u5C06\u6700\u7EC8\u5185\u5BB9\u79FB\u52A8\u5230\u65B0\u8DEF\u5F84\u5E76\u5220\u9664\u65E7\u8DEF\u5F84\n\n\u89C4\u5219\uFF1A\n 1. \u6700\u5C0F\u5316\u8303\u56F4\uFF1A\u6BCF\u4E2A\u903B\u8F91\u53D8\u66F4\u70B9\u4E00\u4E2A\u64CD\u4F5C\u3002\n 2. \u4FDD\u6301\u683C\u5F0F\uFF1A\u4FDD\u7559\u7F29\u8FDB\u3001\u6807\u70B9\u3001\u6362\u884C\u3001\u5C3E\u90E8\u9017\u53F7\u3001\u5927\u62EC\u53F7\u98CE\u683C\u3002\n 3. \u4F18\u5148\u63D2\u5165\u800C\u975E\u90BB\u8FD1\u91CD\u5199\uFF1A\u951A\u5B9A\u5230\u7ED3\u6784\u8FB9\u754C\uFF08}\u3001]\u3001}), \u800C\u975E\u5185\u90E8\u5C5E\u6027\u884C\u3002\n 4. \u7981\u6B62\u65E0\u610F\u4E49\u64CD\u4F5C\uFF1A\u66FF\u6362\u5185\u5BB9\u5FC5\u987B\u4E0E\u5F53\u524D\u5185\u5BB9\u4E0D\u540C\u3002\n 5. \u4EC5\u4FEE\u6539\u8BF7\u6C42\u7684\u4EE3\u7801\uFF1A\u907F\u514D\u9644\u5E26\u7F16\u8F91\u3002\n 6. \u4F7F\u7528\u7CBE\u786E\u7684\u5F53\u524D\u6807\u8BB0\uFF1A\u7EDD\u4E0D\u8FD1\u4F3C\u91CD\u5199\u3002\n 7. \u5BF9\u4E8E\u4EA4\u6362/\u79FB\u52A8\uFF1A\u4F18\u5148\u4F7F\u7528\u4E00\u4E2A\u8303\u56F4\u64CD\u4F5C\u800C\u975E\u591A\u4E2A\u5355\u884C\u64CD\u4F5C\u3002\n 8. \u951A\u5B9A\u5230\u7ED3\u6784\u884C\uFF08\u51FD\u6570/\u7C7B/\u5927\u62EC\u53F7\uFF09\uFF0C\u7EDD\u4E0D\u5B9A\u951A\u5230\u7A7A\u884C\u3002\n 9. \u6BCF\u6B21\u6210\u529F\u7F16\u8F91\u8C03\u7528\u540E\u91CD\u65B0\u8BFB\u53D6\uFF0C\u518D\u5BF9\u540C\u4E00\u6587\u4EF6\u53D1\u51FA\u4E0B\u4E00\u4E2A\u8C03\u7528\u3002\n</\u64CD\u4F5C\u8BF4\u660E>\n\n<\u793A\u4F8B>\n\u8BFB\u53D6\u540E\u6587\u4EF6\u5185\u5BB9\u5982\u4E0B\uFF1A\n 10#VK|function hello() {\n 11#XJ| console.log(\"hi\");\n 12#MB| console.log(\"bye\");\n 13#QR|}\n 14#TN|\n 15#WS|function world() {\n\n\u5355\u884C\u66FF\u6362\uFF08\u4FEE\u6539\u7B2C 11 \u884C\uFF09\uFF1A\n { op: \"replace\", pos: \"11#XJ\", lines: [\" console.log(\\\"hello\\\");\"] }\n \u7ED3\u679C\uFF1A\u66FF\u6362\u7B2C 11 \u884C\u3002\u7B2C 10\u300112-15 \u884C\u4E0D\u53D8\u3002\n\n\u8303\u56F4\u66FF\u6362\uFF08\u91CD\u5199\u51FD\u6570\u4F53\uFF0C\u7B2C 11-12 \u884C\uFF09\uFF1A\n { op: \"replace\", pos: \"11#XJ\", end: \"12#MB\", lines: [\" return \\\"hello world\\\";\"] }\n \u7ED3\u679C\uFF1A\u5220\u9664\u7B2C 11-12 \u884C\uFF0C\u66FF\u6362\u4E3A 1 \u884C\u65B0\u5185\u5BB9\u3002\u7B2C 10\u300113-15 \u884C\u4E0D\u53D8\u3002\n\n\u5220\u9664\u4E00\u884C\uFF1A\n { op: \"replace\", pos: \"12#MB\", lines: null }\n \u7ED3\u679C\uFF1A\u5220\u9664\u7B2C 12 \u884C\u3002\u7B2C 10-11\u300113-15 \u884C\u4E0D\u53D8\u3002\n\n\u5728\u7B2C 13 \u884C\u540E\u63D2\u5165\uFF08\u4E24\u51FD\u6570\u4E4B\u95F4\uFF09\uFF1A\n { op: \"append\", pos: \"13#QR\", lines: [\"\", \"function added() {\", \" return true;\", \"}\"] }\n \u7ED3\u679C\uFF1A\u5728\u7B2C 13 \u884C\u540E\u63D2\u5165 4 \u884C\u65B0\u5185\u5BB9\u3002\u6240\u6709\u73B0\u6709\u884C\u4E0D\u53D8\u3002\n\n\u9519\u8BEF\u793A\u4F8B \u2014 lines \u8D85\u51FA end\uFF08\u5BFC\u81F4\u7B2C 13 \u884C\u91CD\u590D\uFF09\uFF1A\n { op: \"replace\", pos: \"11#XJ\", end: \"12#MB\", lines: [\" return \\\"hi\\\";\", \"}\"] }\n \u7B2C 13 \u884C\u662F \"}\"\uFF0C\u5DF2\u5B58\u5728\u4E8E end \u4E4B\u540E\u3002\u5C06 \"}\" \u5305\u542B\u5728 lines \u4E2D\u4F1A\u5BFC\u81F4\u91CD\u590D\u3002\n \u6B63\u786E\u5199\u6CD5\uFF1A{ op: \"replace\", pos: \"11#XJ\", end: \"12#MB\", lines: [\" return \\\"hi\\\";\"] }\n</\u793A\u4F8B>\n\n<\u81EA\u52A8\u4FEE\u6B63>\n\u5185\u7F6E\u81EA\u52A8\u7EA0\u6B63\uFF08\u65E0\u9700\u624B\u52A8\u5904\u7406\uFF09\uFF1A\n \u5408\u5E76\u7684\u884C\u4F1A\u81EA\u52A8\u6269\u5C55\u56DE\u539F\u59CB\u884C\u6570\u3002\n \u7F29\u8FDB\u4F1A\u4ECE\u539F\u59CB\u884C\u81EA\u52A8\u6062\u590D\u3002\n BOM \u548C CRLF \u6362\u884C\u7B26\u81EA\u52A8\u4FDD\u7559\u3002\n \u6587\u672C\u4E2D\u7684 hashline \u524D\u7F00\u548C diff \u6807\u8BB0\u4F1A\u81EA\u52A8\u53BB\u9664\u3002\n \u8FB9\u754C\u56DE\u663E\u884C\uFF08\u590D\u5236\u76F8\u90BB\u5B58\u6D3B\u884C\uFF09\u4F1A\u81EA\u52A8\u53BB\u9664\u3002\n</\u81EA\u52A8\u4FEE\u6B63>\n\n\u6062\u590D\uFF08\u51FA\u73B0 >>> \u4E0D\u5339\u914D\u9519\u8BEF\u65F6\uFF09\uFF1A\n \u76F4\u63A5\u590D\u5236\u9519\u8BEF\u8F93\u51FA\u4E2D\u663E\u793A\u7684\u66F4\u65B0\u540E\u7684 LINE#ID \u6807\u7B7E\u3002\n \u4EC5\u5728\u9519\u8BEF\u7247\u6BB5\u4E2D\u7F3A\u5C11\u6240\u9700\u6807\u7B7E\u65F6\u624D\u91CD\u65B0\u8BFB\u53D6\u3002\n";
|
package/package.json
CHANGED
|
@@ -1,103 +1,103 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@skj1724/oh-my-opencode",
|
|
3
|
-
"version": "3.11.
|
|
4
|
-
"description": "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
5
|
-
"main": "dist/index.js",
|
|
6
|
-
"types": "dist/index.d.ts",
|
|
7
|
-
"type": "module",
|
|
8
|
-
"bin": {
|
|
9
|
-
"oh-my-opencode": "bin/oh-my-opencode.js"
|
|
10
|
-
},
|
|
11
|
-
"files": [
|
|
12
|
-
"dist",
|
|
13
|
-
"bin",
|
|
14
|
-
"postinstall.mjs"
|
|
15
|
-
],
|
|
16
|
-
"exports": {
|
|
17
|
-
".": {
|
|
18
|
-
"types": "./dist/index.d.ts",
|
|
19
|
-
"import": "./dist/index.js"
|
|
20
|
-
},
|
|
21
|
-
"./schema.json": "./dist/oh-my-opencode.schema.json"
|
|
22
|
-
},
|
|
23
|
-
"scripts": {
|
|
24
|
-
"build": "bun build src/index.ts --outdir dist --target bun --format esm --external @ast-grep/napi && tsc --emitDeclarationOnly && bun build src/cli/index.ts --outdir dist/cli --target bun --format esm --external @ast-grep/napi && bun run build:schema",
|
|
25
|
-
"build:all": "bun run build && bun run build:binaries",
|
|
26
|
-
"build:binaries": "bun run script/build-binaries.ts",
|
|
27
|
-
"build:schema": "bun run script/build-schema.ts",
|
|
28
|
-
"build:model-capabilities": "bun run script/build-model-capabilities.ts",
|
|
29
|
-
"clean": "rm -rf dist",
|
|
30
|
-
"prepare": "bun run build",
|
|
31
|
-
"postinstall": "node postinstall.mjs",
|
|
32
|
-
"prepublishOnly": "bun run clean && bun run build",
|
|
33
|
-
"test:model-capabilities": "bun test src/shared/model-capability-aliases.test.ts src/shared/model-capability-guardrails.test.ts src/shared/model-capabilities.test.ts src/cli/doctor/checks/model-resolution.test.ts --bail",
|
|
34
|
-
"typecheck": "tsc --noEmit",
|
|
35
|
-
"test": "bun test"
|
|
36
|
-
},
|
|
37
|
-
"keywords": [
|
|
38
|
-
"opencode",
|
|
39
|
-
"plugin",
|
|
40
|
-
"oracle",
|
|
41
|
-
"librarian",
|
|
42
|
-
"agents",
|
|
43
|
-
"ai",
|
|
44
|
-
"llm"
|
|
45
|
-
],
|
|
46
|
-
"author": "YeonGyu-Kim",
|
|
47
|
-
"license": "SUL-1.0",
|
|
48
|
-
"repository": {
|
|
49
|
-
"type": "git",
|
|
50
|
-
"url": "git+https://github.com/code-yeongyu/oh-my-openagent.git"
|
|
51
|
-
},
|
|
52
|
-
"bugs": {
|
|
53
|
-
"url": "https://github.com/code-yeongyu/oh-my-openagent/issues"
|
|
54
|
-
},
|
|
55
|
-
"homepage": "https://github.com/code-yeongyu/oh-my-openagent#readme",
|
|
56
|
-
"dependencies": {
|
|
57
|
-
"@ast-grep/cli": "^0.41.1",
|
|
58
|
-
"@ast-grep/napi": "^0.41.1",
|
|
59
|
-
"@clack/prompts": "^0.11.0",
|
|
60
|
-
"@code-yeongyu/comment-checker": "^0.7.0",
|
|
61
|
-
"@modelcontextprotocol/sdk": "^1.25.2",
|
|
62
|
-
"@opencode-ai/plugin": "^1.2.24",
|
|
63
|
-
"@opencode-ai/sdk": "^1.2.24",
|
|
64
|
-
"commander": "^14.0.2",
|
|
65
|
-
"detect-libc": "^2.0.0",
|
|
66
|
-
"diff": "^8.0.3",
|
|
67
|
-
"js-yaml": "^4.1.1",
|
|
68
|
-
"jsonc-parser": "^3.3.1",
|
|
69
|
-
"picocolors": "^1.1.1",
|
|
70
|
-
"picomatch": "^4.0.2",
|
|
71
|
-
"vscode-jsonrpc": "^8.2.0",
|
|
72
|
-
"zod": "^4.1.8"
|
|
73
|
-
},
|
|
74
|
-
"devDependencies": {
|
|
75
|
-
"@types/js-yaml": "^4.0.9",
|
|
76
|
-
"@types/picomatch": "^3.0.2",
|
|
77
|
-
"bun-types": "1.3.10",
|
|
78
|
-
"typescript": "^5.7.3",
|
|
79
|
-
"@types/bun": "latest"
|
|
80
|
-
},
|
|
81
|
-
"optionalDependencies": {
|
|
82
|
-
"oh-my-opencode-darwin-arm64": "3.11.0",
|
|
83
|
-
"oh-my-opencode-darwin-x64": "3.11.0",
|
|
84
|
-
"oh-my-opencode-darwin-x64-baseline": "3.11.0",
|
|
85
|
-
"oh-my-opencode-linux-arm64": "3.11.0",
|
|
86
|
-
"oh-my-opencode-linux-arm64-musl": "3.11.0",
|
|
87
|
-
"oh-my-opencode-linux-x64": "3.11.0",
|
|
88
|
-
"oh-my-opencode-linux-x64-baseline": "3.11.0",
|
|
89
|
-
"oh-my-opencode-linux-x64-musl": "3.11.0",
|
|
90
|
-
"oh-my-opencode-linux-x64-musl-baseline": "3.11.0",
|
|
91
|
-
"oh-my-opencode-windows-x64": "3.11.0",
|
|
92
|
-
"oh-my-opencode-windows-x64-baseline": "3.11.0"
|
|
93
|
-
},
|
|
94
|
-
"overrides": {
|
|
95
|
-
"@opencode-ai/sdk": "^1.2.24"
|
|
96
|
-
},
|
|
97
|
-
"trustedDependencies": [
|
|
98
|
-
"@ast-grep/cli",
|
|
99
|
-
"@ast-grep/napi",
|
|
100
|
-
"@code-yeongyu/comment-checker"
|
|
101
|
-
],
|
|
102
|
-
"private": false
|
|
103
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@skj1724/oh-my-opencode",
|
|
3
|
+
"version": "3.11.4",
|
|
4
|
+
"description": "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"type": "module",
|
|
8
|
+
"bin": {
|
|
9
|
+
"oh-my-opencode": "bin/oh-my-opencode.js"
|
|
10
|
+
},
|
|
11
|
+
"files": [
|
|
12
|
+
"dist",
|
|
13
|
+
"bin",
|
|
14
|
+
"postinstall.mjs"
|
|
15
|
+
],
|
|
16
|
+
"exports": {
|
|
17
|
+
".": {
|
|
18
|
+
"types": "./dist/index.d.ts",
|
|
19
|
+
"import": "./dist/index.js"
|
|
20
|
+
},
|
|
21
|
+
"./schema.json": "./dist/oh-my-opencode.schema.json"
|
|
22
|
+
},
|
|
23
|
+
"scripts": {
|
|
24
|
+
"build": "bun build src/index.ts --outdir dist --target bun --format esm --external @ast-grep/napi && tsc --emitDeclarationOnly && bun build src/cli/index.ts --outdir dist/cli --target bun --format esm --external @ast-grep/napi && bun run build:schema",
|
|
25
|
+
"build:all": "bun run build && bun run build:binaries",
|
|
26
|
+
"build:binaries": "bun run script/build-binaries.ts",
|
|
27
|
+
"build:schema": "bun run script/build-schema.ts",
|
|
28
|
+
"build:model-capabilities": "bun run script/build-model-capabilities.ts",
|
|
29
|
+
"clean": "rm -rf dist",
|
|
30
|
+
"prepare": "bun run build",
|
|
31
|
+
"postinstall": "node postinstall.mjs",
|
|
32
|
+
"prepublishOnly": "bun run clean && bun run build",
|
|
33
|
+
"test:model-capabilities": "bun test src/shared/model-capability-aliases.test.ts src/shared/model-capability-guardrails.test.ts src/shared/model-capabilities.test.ts src/cli/doctor/checks/model-resolution.test.ts --bail",
|
|
34
|
+
"typecheck": "tsc --noEmit",
|
|
35
|
+
"test": "bun test"
|
|
36
|
+
},
|
|
37
|
+
"keywords": [
|
|
38
|
+
"opencode",
|
|
39
|
+
"plugin",
|
|
40
|
+
"oracle",
|
|
41
|
+
"librarian",
|
|
42
|
+
"agents",
|
|
43
|
+
"ai",
|
|
44
|
+
"llm"
|
|
45
|
+
],
|
|
46
|
+
"author": "YeonGyu-Kim",
|
|
47
|
+
"license": "SUL-1.0",
|
|
48
|
+
"repository": {
|
|
49
|
+
"type": "git",
|
|
50
|
+
"url": "git+https://github.com/code-yeongyu/oh-my-openagent.git"
|
|
51
|
+
},
|
|
52
|
+
"bugs": {
|
|
53
|
+
"url": "https://github.com/code-yeongyu/oh-my-openagent/issues"
|
|
54
|
+
},
|
|
55
|
+
"homepage": "https://github.com/code-yeongyu/oh-my-openagent#readme",
|
|
56
|
+
"dependencies": {
|
|
57
|
+
"@ast-grep/cli": "^0.41.1",
|
|
58
|
+
"@ast-grep/napi": "^0.41.1",
|
|
59
|
+
"@clack/prompts": "^0.11.0",
|
|
60
|
+
"@code-yeongyu/comment-checker": "^0.7.0",
|
|
61
|
+
"@modelcontextprotocol/sdk": "^1.25.2",
|
|
62
|
+
"@opencode-ai/plugin": "^1.2.24",
|
|
63
|
+
"@opencode-ai/sdk": "^1.2.24",
|
|
64
|
+
"commander": "^14.0.2",
|
|
65
|
+
"detect-libc": "^2.0.0",
|
|
66
|
+
"diff": "^8.0.3",
|
|
67
|
+
"js-yaml": "^4.1.1",
|
|
68
|
+
"jsonc-parser": "^3.3.1",
|
|
69
|
+
"picocolors": "^1.1.1",
|
|
70
|
+
"picomatch": "^4.0.2",
|
|
71
|
+
"vscode-jsonrpc": "^8.2.0",
|
|
72
|
+
"zod": "^4.1.8"
|
|
73
|
+
},
|
|
74
|
+
"devDependencies": {
|
|
75
|
+
"@types/js-yaml": "^4.0.9",
|
|
76
|
+
"@types/picomatch": "^3.0.2",
|
|
77
|
+
"bun-types": "1.3.10",
|
|
78
|
+
"typescript": "^5.7.3",
|
|
79
|
+
"@types/bun": "latest"
|
|
80
|
+
},
|
|
81
|
+
"optionalDependencies": {
|
|
82
|
+
"oh-my-opencode-darwin-arm64": "3.11.0",
|
|
83
|
+
"oh-my-opencode-darwin-x64": "3.11.0",
|
|
84
|
+
"oh-my-opencode-darwin-x64-baseline": "3.11.0",
|
|
85
|
+
"oh-my-opencode-linux-arm64": "3.11.0",
|
|
86
|
+
"oh-my-opencode-linux-arm64-musl": "3.11.0",
|
|
87
|
+
"oh-my-opencode-linux-x64": "3.11.0",
|
|
88
|
+
"oh-my-opencode-linux-x64-baseline": "3.11.0",
|
|
89
|
+
"oh-my-opencode-linux-x64-musl": "3.11.0",
|
|
90
|
+
"oh-my-opencode-linux-x64-musl-baseline": "3.11.0",
|
|
91
|
+
"oh-my-opencode-windows-x64": "3.11.0",
|
|
92
|
+
"oh-my-opencode-windows-x64-baseline": "3.11.0"
|
|
93
|
+
},
|
|
94
|
+
"overrides": {
|
|
95
|
+
"@opencode-ai/sdk": "^1.2.24"
|
|
96
|
+
},
|
|
97
|
+
"trustedDependencies": [
|
|
98
|
+
"@ast-grep/cli",
|
|
99
|
+
"@ast-grep/napi",
|
|
100
|
+
"@code-yeongyu/comment-checker"
|
|
101
|
+
],
|
|
102
|
+
"private": false
|
|
103
|
+
}
|