@skj1724/oh-my-opencode 3.17.16 → 3.18.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.
Files changed (38) hide show
  1. package/dist/agents/atlas/default-prompt-sections.d.ts +6 -6
  2. package/dist/agents/atlas/gemini-prompt-sections.d.ts +6 -6
  3. package/dist/agents/atlas/gpt-prompt-sections.d.ts +6 -6
  4. package/dist/agents/builtin-agents/environment-context.d.ts +1 -0
  5. package/dist/agents/builtin-agents/general-agents.d.ts +1 -0
  6. package/dist/agents/builtin-agents/hephaestus-agent.d.ts +1 -0
  7. package/dist/agents/builtin-agents/sisyphus-agent.d.ts +1 -0
  8. package/dist/agents/builtin-agents.d.ts +1 -1
  9. package/dist/agents/env-context.d.ts +1 -7
  10. package/dist/agents/metis.d.ts +9 -9
  11. package/dist/agents/momus.d.ts +11 -8
  12. package/dist/agents/prometheus/behavioral-summary.d.ts +1 -1
  13. package/dist/agents/prometheus/high-accuracy-mode.d.ts +1 -1
  14. package/dist/agents/prometheus/identity-constraints.d.ts +1 -1
  15. package/dist/agents/prometheus/plan-generation.d.ts +1 -1
  16. package/dist/agents/prometheus/plan-template.d.ts +1 -1
  17. package/dist/cli/index.js +10 -6
  18. package/dist/config/schema/agent-overrides.d.ts +15 -0
  19. package/dist/config/schema/i18n.d.ts +21 -0
  20. package/dist/config/schema/oh-my-opencode-config.d.ts +17 -0
  21. package/dist/features/builtin-commands/templates/handoff.d.ts +1 -1
  22. package/dist/features/builtin-commands/templates/init-deep.d.ts +1 -1
  23. package/dist/features/builtin-commands/templates/open-plan.d.ts +1 -0
  24. package/dist/features/builtin-commands/templates/ralph-loop.d.ts +3 -3
  25. package/dist/features/builtin-commands/templates/refactor.d.ts +1 -1
  26. package/dist/features/builtin-commands/templates/remove-ai-slops.d.ts +1 -1
  27. package/dist/features/builtin-commands/templates/start-work.d.ts +1 -1
  28. package/dist/features/builtin-commands/templates/stop-continuation.d.ts +1 -1
  29. package/dist/features/builtin-commands/types.d.ts +1 -1
  30. package/dist/hooks/atlas/system-reminder-templates.d.ts +2 -2
  31. package/dist/index.js +3979 -3801
  32. package/dist/oh-my-opencode.schema.json +52 -0
  33. package/dist/tools/delegate-task/background-continuation.d.ts +1 -1
  34. package/dist/tools/delegate-task/constants.d.ts +2 -2
  35. package/dist/tools/delegate-task/resolve-metadata-model.d.ts +3 -2
  36. package/dist/tools/delegate-task/sync-continuation.d.ts +1 -1
  37. package/dist/tools/delegate-task/types.d.ts +1 -4
  38. package/package.json +2 -2
@@ -268,6 +268,9 @@
268
268
  "prompt_append": {
269
269
  "type": "string"
270
270
  },
271
+ "language": {
272
+ "type": "string"
273
+ },
271
274
  "tools": {
272
275
  "type": "object",
273
276
  "propertyNames": {
@@ -618,6 +621,9 @@
618
621
  "prompt_append": {
619
622
  "type": "string"
620
623
  },
624
+ "language": {
625
+ "type": "string"
626
+ },
621
627
  "tools": {
622
628
  "type": "object",
623
629
  "propertyNames": {
@@ -968,6 +974,9 @@
968
974
  "prompt_append": {
969
975
  "type": "string"
970
976
  },
977
+ "language": {
978
+ "type": "string"
979
+ },
971
980
  "tools": {
972
981
  "type": "object",
973
982
  "propertyNames": {
@@ -1318,6 +1327,9 @@
1318
1327
  "prompt_append": {
1319
1328
  "type": "string"
1320
1329
  },
1330
+ "language": {
1331
+ "type": "string"
1332
+ },
1321
1333
  "tools": {
1322
1334
  "type": "object",
1323
1335
  "propertyNames": {
@@ -1671,6 +1683,9 @@
1671
1683
  "prompt_append": {
1672
1684
  "type": "string"
1673
1685
  },
1686
+ "language": {
1687
+ "type": "string"
1688
+ },
1674
1689
  "tools": {
1675
1690
  "type": "object",
1676
1691
  "propertyNames": {
@@ -2021,6 +2036,9 @@
2021
2036
  "prompt_append": {
2022
2037
  "type": "string"
2023
2038
  },
2039
+ "language": {
2040
+ "type": "string"
2041
+ },
2024
2042
  "tools": {
2025
2043
  "type": "object",
2026
2044
  "propertyNames": {
@@ -2371,6 +2389,9 @@
2371
2389
  "prompt_append": {
2372
2390
  "type": "string"
2373
2391
  },
2392
+ "language": {
2393
+ "type": "string"
2394
+ },
2374
2395
  "tools": {
2375
2396
  "type": "object",
2376
2397
  "propertyNames": {
@@ -2721,6 +2742,9 @@
2721
2742
  "prompt_append": {
2722
2743
  "type": "string"
2723
2744
  },
2745
+ "language": {
2746
+ "type": "string"
2747
+ },
2724
2748
  "tools": {
2725
2749
  "type": "object",
2726
2750
  "propertyNames": {
@@ -3071,6 +3095,9 @@
3071
3095
  "prompt_append": {
3072
3096
  "type": "string"
3073
3097
  },
3098
+ "language": {
3099
+ "type": "string"
3100
+ },
3074
3101
  "tools": {
3075
3102
  "type": "object",
3076
3103
  "propertyNames": {
@@ -3421,6 +3448,9 @@
3421
3448
  "prompt_append": {
3422
3449
  "type": "string"
3423
3450
  },
3451
+ "language": {
3452
+ "type": "string"
3453
+ },
3424
3454
  "tools": {
3425
3455
  "type": "object",
3426
3456
  "propertyNames": {
@@ -3771,6 +3801,9 @@
3771
3801
  "prompt_append": {
3772
3802
  "type": "string"
3773
3803
  },
3804
+ "language": {
3805
+ "type": "string"
3806
+ },
3774
3807
  "tools": {
3775
3808
  "type": "object",
3776
3809
  "propertyNames": {
@@ -4121,6 +4154,9 @@
4121
4154
  "prompt_append": {
4122
4155
  "type": "string"
4123
4156
  },
4157
+ "language": {
4158
+ "type": "string"
4159
+ },
4124
4160
  "tools": {
4125
4161
  "type": "object",
4126
4162
  "propertyNames": {
@@ -4471,6 +4507,9 @@
4471
4507
  "prompt_append": {
4472
4508
  "type": "string"
4473
4509
  },
4510
+ "language": {
4511
+ "type": "string"
4512
+ },
4474
4513
  "tools": {
4475
4514
  "type": "object",
4476
4515
  "propertyNames": {
@@ -4821,6 +4860,9 @@
4821
4860
  "prompt_append": {
4822
4861
  "type": "string"
4823
4862
  },
4863
+ "language": {
4864
+ "type": "string"
4865
+ },
4824
4866
  "tools": {
4825
4867
  "type": "object",
4826
4868
  "propertyNames": {
@@ -6063,6 +6105,16 @@
6063
6105
  ],
6064
6106
  "additionalProperties": false
6065
6107
  },
6108
+ "i18n": {
6109
+ "type": "object",
6110
+ "properties": {
6111
+ "language": {
6112
+ "type": "string",
6113
+ "minLength": 1
6114
+ }
6115
+ },
6116
+ "additionalProperties": false
6117
+ },
6066
6118
  "_migrations": {
6067
6119
  "type": "array",
6068
6120
  "items": {
@@ -1,3 +1,3 @@
1
1
  import type { DelegateTaskArgs, ToolContextWithMetadata } from "./types";
2
2
  import type { ExecutorContext, ParentContext } from "./executor-types";
3
- export declare function executeBackgroundContinuation(args: DelegateTaskArgs, ctx: ToolContextWithMetadata, executorCtx: ExecutorContext, parentContext: ParentContext): Promise<string>;
3
+ export declare function executeBackgroundContinuation(args: DelegateTaskArgs, ctx: ToolContextWithMetadata, executorCtx: ExecutorContext, parentContext: ParentContext, systemContent?: string): Promise<string>;
@@ -6,8 +6,8 @@ export { CATEGORY_DESCRIPTIONS, CATEGORY_PROMPT_APPENDS, DEFAULT_CATEGORIES, } f
6
6
  * then summarize user requirements and clarify uncertainties before proceeding.
7
7
  * Also MANDATES dependency graphs, parallel execution analysis, and category+skill recommendations.
8
8
  */
9
- export declare const PLAN_AGENT_SYSTEM_PREPEND_STATIC_BEFORE_SKILLS = "<system>\n\u5728\u5F00\u59CB\u89C4\u5212\u4E4B\u524D\uFF0C\u4F60\u5FC5\u987B\u9996\u5148\u6DF1\u5165\u7406\u89E3\u7528\u6237\u7684\u9700\u6C42\u3002\n\n\u5F3A\u5236\u6027\u7684\u4E0A\u4E0B\u6587\u6536\u96C6\u6D41\u7A0B:\n1. \u542F\u52A8\u540E\u53F0 agents \u6536\u96C6\u4E0A\u4E0B\u6587:\n - call_omo_agent(description=\"\u63A2\u7D22\u4EE3\u7801\u5E93\u6A21\u5F0F\", subagent_type=\"explore\", run_in_background=true, prompt=\"<\u641C\u7D22\u4E0E\u7528\u6237\u8BF7\u6C42\u76F8\u5173\u7684\u4EE3\u7801\u5E93\u6A21\u5F0F\u3001\u6587\u4EF6\u548C\u5B9E\u73B0>\")\n - call_omo_agent(description=\"\u7814\u7A76\u6587\u6863\", subagent_type=\"librarian\", run_in_background=true, prompt=\"<\u641C\u7D22\u4E0E\u7528\u6237\u8BF7\u6C42\u76F8\u5173\u7684\u5916\u90E8\u6587\u6863\u3001\u793A\u4F8B\u548C\u6700\u4F73\u5B9E\u8DF5>\")\n\n2. \u6536\u96C6\u4E0A\u4E0B\u6587\u540E\uFF0C\u59CB\u7EC8\u5448\u73B0:\n - **\u7528\u6237\u8BF7\u6C42\u6458\u8981**: \u7528\u6237\u9700\u6C42\u8981\u70B9\u7684\u7B80\u6D01\u91CD\u8FF0\n - **\u4E0D\u786E\u5B9A\u6027**: \u4F60\u6B63\u5728\u505A\u51FA\u7684\u4E0D\u6E05\u6670\u70B9\u3001\u6B67\u4E49\u6216\u5047\u8BBE\u5217\u8868\n - **\u6F84\u6E05\u95EE\u9898**: \u89E3\u51B3\u4E0D\u786E\u5B9A\u6027\u7684\u5177\u4F53\u95EE\u9898\n\n3. \u8FED\u4EE3\u76F4\u5230\u6240\u6709\u9700\u6C42\u5B8C\u5168\u6E05\u6670:\n - \u5728\u83B7\u5F97 100% \u6E05\u6670\u5EA6\u4E4B\u524D\u4E0D\u8981\u7EE7\u7EED\u89C4\u5212\n - \u8BF7\u7528\u6237\u786E\u8BA4\u4F60\u7684\u7406\u89E3\n - \u5728\u751F\u6210\u5DE5\u4F5C\u8BA1\u5212\u4E4B\u524D\u89E3\u51B3\u6240\u6709\u6B67\u4E49\n\n\u8BB0\u4F4F: \u6A21\u7CCA\u7684\u9700\u6C42\u4F1A\u5BFC\u81F4\u5B9E\u73B0\u5931\u8D25\u3002\u82B1\u65F6\u95F4\u5F7B\u5E95\u7406\u89E3\u3002\n</system>\n\n<CRITICAL_REQUIREMENT_DEPENDENCY_PARALLEL_EXECUTION_CATEGORY_SKILLS>\n#####################################################################\n# #\n# \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2557 #\n# \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557 #\n# \u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551 \u2588\u2588\u2551 #\n# \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u255D \u2588\u2588\u2551\u2584\u2584 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u255D \u2588\u2588\u2551 \u2588\u2588\u2551 #\n# \u2588\u2588\uFFFD\uFFFD \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D #\n# \u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u2550\u2580\u2580\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u255D #\n# #\n#####################################################################\n\n\u4F60\u5FC5\u987B\u5728\u8BA1\u5212\u8F93\u51FA\u4E2D\u5305\u542B\u4EE5\u4E0B\u90E8\u5206\u3002\n\u8FD9\u662F\u5F3A\u5236\u6027\u7684\u3002\u4E0D\u5305\u542B\u8FD9\u4E9B\u90E8\u5206 = \u4E0D\u5B8C\u6574\u7684\u8BA1\u5212\u3002\n\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\u2588 \u7B2C\u4E00\u90E8\u5206: \u4EFB\u52A1\u4F9D\u8D56\u56FE (\u5F3A\u5236) \u2588\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\n\u4F60\u5FC5\u987B\u5206\u6790\u548C\u8BB0\u5F55\u4EFB\u52A1\u4F9D\u8D56\u5173\u7CFB\u3002\n\n\u5BF9\u4E8E\u8BA1\u5212\u4E2D\u7684\u6BCF\u4E2A\u4EFB\u52A1\uFF0C\u4F60\u5FC5\u987B\u6307\u5B9A:\n- \u5B83\u4F9D\u8D56\u54EA\u4E9B\u4EFB\u52A1 (\u963B\u585E\u9879)\n- \u54EA\u4E9B\u4EFB\u52A1\u4F9D\u8D56\u5B83 (\u4F9D\u8D56\u9879)\n- \u6BCF\u4E2A\u4F9D\u8D56\u7684\u539F\u56E0\n\n\u793A\u4F8B\u683C\u5F0F:\n```\n## \u4EFB\u52A1\u4F9D\u8D56\u56FE\n\n| \u4EFB\u52A1 | \u4F9D\u8D56 | \u539F\u56E0 |\n|------|------------|--------|\n| \u4EFB\u52A1 1 | \u65E0 | \u8D77\u70B9\uFF0C\u65E0\u524D\u7F6E\u6761\u4EF6 |\n| \u4EFB\u52A1 2 | \u4EFB\u52A1 1 | \u9700\u8981\u4EFB\u52A1 1 \u7684\u8F93\u51FA/\u4EA7\u7269 |\n| \u4EFB\u52A1 3 | \u4EFB\u52A1 1 | \u4F7F\u7528\u4EFB\u52A1 1 \u5EFA\u7ACB\u7684\u57FA\u7840 |\n| \u4EFB\u52A1 4 | \u4EFB\u52A1 2, \u4EFB\u52A1 3 | \u6574\u5408\u4E24\u4E2A\u4EFB\u52A1\u7684\u7ED3\u679C |\n```\n\n\u4E3A\u4EC0\u4E48\u8FD9\u5F88\u91CD\u8981:\n- \u6267\u884C\u8005\u9700\u8981\u77E5\u9053\u6267\u884C\u987A\u5E8F\n- \u9632\u6B62\u88AB\u963B\u585E\u7684\u5DE5\u4F5C\u8FC7\u65E9\u5F00\u59CB\n- \u786E\u5B9A\u9879\u76EE\u65F6\u95F4\u7EBF\u7684\u5173\u952E\u8DEF\u5F84\n\n\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\u2588 \u7B2C\u4E8C\u90E8\u5206: \u5E76\u884C\u6267\u884C\u56FE (\u5F3A\u5236) \u2588\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\n\u4F60\u5FC5\u987B\u8BC6\u522B\u54EA\u4E9B\u4EFB\u52A1\u53EF\u4EE5\u5E76\u884C\u8FD0\u884C\u3002\n\n\u5206\u6790\u4F60\u7684\u4F9D\u8D56\u56FE\u5E76\u5C06\u4EFB\u52A1\u5206\u7EC4\u4E3A\u5E76\u884C\u6267\u884C\u6CE2:\n\n\u793A\u4F8B\u683C\u5F0F:\n```\n## \u5E76\u884C\u6267\u884C\u56FE\n\n\u7B2C\u4E00\u6CE2 (\u7ACB\u5373\u5F00\u59CB):\n\u251C\u2500\u2500 \u4EFB\u52A1 1: [\u63CF\u8FF0] (\u65E0\u4F9D\u8D56)\n\u2514\u2500\u2500 \u4EFB\u52A1 5: [\u63CF\u8FF0] (\u65E0\u4F9D\u8D56)\n\n\u7B2C\u4E8C\u6CE2 (\u7B2C\u4E00\u6CE2\u5B8C\u6210\u540E):\n\u251C\u2500\u2500 \u4EFB\u52A1 2: [\u63CF\u8FF0] (\u4F9D\u8D56: \u4EFB\u52A1 1)\n\u251C\u2500\u2500 \u4EFB\u52A1 3: [\u63CF\u8FF0] (\u4F9D\u8D56: \u4EFB\u52A1 1)\n\u2514\u2500\u2500 \u4EFB\u52A1 6: [\u63CF\u8FF0] (\u4F9D\u8D56: \u4EFB\u52A1 5)\n\n\u7B2C\u4E09\u6CE2 (\u7B2C\u4E8C\u6CE2\u5B8C\u6210\u540E):\n\u2514\u2500\u2500 \u4EFB\u52A1 4: [\u63CF\u8FF0] (\u4F9D\u8D56: \u4EFB\u52A1 2, \u4EFB\u52A1 3)\n\n\u5173\u952E\u8DEF\u5F84: \u4EFB\u52A1 1 \u2192 \u4EFB\u52A1 2 \u2192 \u4EFB\u52A1 4\n\u9884\u4F30\u5E76\u884C\u52A0\u901F: \u6BD4\u4E32\u884C\u5FEB 40%\n```\n\n\u4E3A\u4EC0\u4E48\u8FD9\u5F88\u91CD\u8981:\n- \u901A\u8FC7\u5E76\u884C\u5316\u5B9E\u73B0\u5DE8\u5927\u7684\u65F6\u95F4\u8282\u7701\n- \u6267\u884C\u8005\u53EF\u4EE5\u540C\u65F6\u8C03\u5EA6\u591A\u4E2A agents\n- \u8BC6\u522B\u6267\u884C\u8BA1\u5212\u4E2D\u7684\u74F6\u9888\n\n\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\u2588 \u7B2C\u4E09\u90E8\u5206: CATEGORY + SKILLS \u63A8\u8350 (\u5F3A\u5236) \u2588\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\n\u5BF9\u4E8E\u6BCF\u4E2A\u4EFB\u52A1\uFF0C\u4F60\u5FC5\u987B\u63A8\u8350:\n1. \u4F7F\u7528\u54EA\u4E2A CATEGORY \u8FDB\u884C\u59D4\u6258\n2. \u4E3A\u88AB\u59D4\u6258\u7684 agent \u52A0\u8F7D\u54EA\u4E9B SKILLS\n";
10
- export declare const PLAN_AGENT_SYSTEM_PREPEND_STATIC_AFTER_SKILLS = "### \u5FC5\u9700\u7684\u8F93\u51FA\u683C\u5F0F\n\n\u5BF9\u4E8E\u6BCF\u4E2A\u4EFB\u52A1\uFF0C\u5305\u542B\u4E00\u4E2A\u63A8\u8350\u5757:\n\n```\n### \u4EFB\u52A1 N: [\u4EFB\u52A1\u6807\u9898]\n\n**\u59D4\u6258\u63A8\u8350:**\n- Category: `[category-name]` - [\u9009\u62E9\u539F\u56E0]\n- Skills: [`skill-1`, `skill-2`] - [\u6BCF\u4E2A skill \u7684\u5FC5\u8981\u6027\u8BF4\u660E]\n\n**Skills \u8BC4\u4F30:**\n- \u5DF2\u5305\u542B `skill-name`: [\u539F\u56E0]\n- \u672A\u5305\u542B `other-skill`: [\u8BE5\u9886\u57DF\u65E0\u91CD\u53E0\u7684\u539F\u56E0]\n```\n\n\u4E3A\u4EC0\u4E48\u8FD9\u5F88\u91CD\u8981:\n- Category \u51B3\u5B9A\u6267\u884C\u4F7F\u7528\u7684 MODEL\n- Skills \u5411\u6267\u884C\u8005\u6CE8\u5165\u4E13\u4E1A\u77E5\u8BC6\n- \u7F3A\u5C11\u76F8\u5173 skill = \u6B21\u4F18\u6267\u884C\n- \u9519\u8BEF\u7684 category = \u9519\u8BEF\u7684 model = \u7CDF\u7CD5\u7684\u7ED3\u679C\n\n\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\u2588 \u54CD\u5E94\u683C\u5F0F\u89C4\u8303 (\u5F3A\u5236) \u2588\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\n\u4F60\u7684\u8BA1\u5212\u8F93\u51FA\u5FC5\u987B\u9075\u5FAA\u6B64\u786E\u5207\u7ED3\u6784:\n\n```markdown\n# [\u8BA1\u5212\u6807\u9898]\n\n## \u4E0A\u4E0B\u6587\n[\u7528\u6237\u8BF7\u6C42\u6458\u8981\u3001\u8BBF\u8C08\u7ED3\u679C\u3001\u7814\u7A76\u7ED3\u679C]\n\n## \u4EFB\u52A1\u4F9D\u8D56\u56FE\n[\u4F9D\u8D56\u8868 - \u89C1\u7B2C\u4E00\u90E8\u5206]\n\n## \u5E76\u884C\u6267\u884C\u56FE\n[\u6CE2\u6B21\u7ED3\u6784 - \u89C1\u7B2C\u4E8C\u90E8\u5206]\n\n## \u4EFB\u52A1\n\n### \u4EFB\u52A1 1: [\u6807\u9898]\n**\u63CF\u8FF0**: [\u8981\u505A\u4EC0\u4E48]\n**\u59D4\u6258\u63A8\u8350**:\n- Category: `[category]` - [\u539F\u56E0]\n- Skills: [`skill-1`] - [\u539F\u56E0]\n**Skills \u8BC4\u4F30**: [\u2705 \u5DF2\u5305\u542B / \u274C \u5DF2\u7701\u7565\u5E76\u9644\u539F\u56E0]\n**\u4F9D\u8D56**: [\u4EFB\u52A1 ID \u6216 \"\u65E0\"]\n**\u9A8C\u6536\u6807\u51C6**: [\u53EF\u9A8C\u8BC1\u7684\u6761\u4EF6]\n\n### \u4EFB\u52A1 2: [\u6807\u9898]\n[\u76F8\u540C\u7ED3\u6784...]\n\n## \u63D0\u4EA4\u7B56\u7565\n[\u5982\u4F55\u539F\u5B50\u6027\u5730\u63D0\u4EA4\u66F4\u6539]\n\n## \u6210\u529F\u6807\u51C6\n[\u6700\u7EC8\u9A8C\u8BC1\u6B65\u9AA4]\n```\n\n#####################################################################\n# #\n# \u4E0D\u5305\u542B\u8FD9\u4E9B\u90E8\u5206 = \u8BA1\u5212\u5C06\u88AB MOMUS \u5BA1\u67E5\u62D2\u7EDD #\n# \u4E0D\u8981\u8DF3\u8FC7\u3002\u4E0D\u8981\u7B80\u5316\u3002 #\n# #\n#####################################################################\n</CRITICAL_REQUIREMENT_DEPENDENCY_PARALLEL_EXECUTION_CATEGORY_SKILLS>\n\n<FINAL_OUTPUT_FOR_CALLER>\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\u2588 \u7B2C\u56DB\u90E8\u5206: \u53EF\u6267\u884C\u7684 TODO \u5217\u8868 (\u5F3A\u5236) \u2588\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\n\u4F60\u5FC5\u987B\u5728\u56DE\u590D\u672B\u5C3E\u5305\u542B\u6B64\u90E8\u5206\u3002\n\n```markdown\n## TODO \u5217\u8868 (\u6DFB\u52A0\u8FD9\u4E9B)\n\n> \u8C03\u7528\u8005: \u4F7F\u7528 TodoWrite/TaskCreate \u6DFB\u52A0\u8FD9\u4E9B TODOs \u5E76\u6309\u6CE2\u6B21\u6267\u884C\u3002\n\n### \u7B2C\u4E00\u6CE2 (\u7ACB\u5373\u5F00\u59CB - \u65E0\u4F9D\u8D56)\n\n- [ ] **1. [\u4EFB\u52A1\u6807\u9898]**\n - \u505A\u4EC0\u4E48: [\u6E05\u6670\u5B9E\u65BD\u6B65\u9AA4]\n - \u4F9D\u8D56: \u65E0\n - \u963B\u585E: [\u4F9D\u8D56\u6B64\u4EFB\u52A1\u7684\u4EFB\u52A1]\n - Category: `category-name`\n - Skills: [`skill-1`, `skill-2`]\n - QA: [\u5982\u4F55\u9A8C\u8BC1\u5B8C\u6210 - \u5177\u4F53\u547D\u4EE4\u6216\u68C0\u67E5]\n\n- [ ] **N. [\u4EFB\u52A1\u6807\u9898]**\n - \u505A\u4EC0\u4E48: [\u6B65\u9AA4]\n - \u4F9D\u8D56: \u65E0\n - \u963B\u585E: [...]\n - Category: `category-name`\n - Skills: [`skill-1`]\n - QA: [\u9A8C\u8BC1\u65B9\u5F0F]\n\n### \u7B2C\u4E8C\u6CE2 (\u7B2C\u4E00\u6CE2\u5B8C\u6210\u540E)\n\n- [ ] **2. [\u4EFB\u52A1\u6807\u9898]**\n - \u505A\u4EC0\u4E48: [\u6B65\u9AA4]\n - \u4F9D\u8D56: 1\n - \u963B\u585E: [4]\n - Category: `category-name`\n - Skills: [`skill-1`]\n - QA: [\u9A8C\u8BC1\u65B9\u5F0F]\n\n[\u7EE7\u7EED\u6240\u6709\u6CE2\u6B21...]\n\n## \u6267\u884C\u8BF4\u660E\n\n1. **\u7B2C\u4E00\u6CE2**: \u5E76\u884C\u542F\u52A8\u8FD9\u4E9B\u4EFB\u52A1 (\u65E0\u4F9D\u8D56)\n ```\n task(category=\"...\", load_skills=[...], run_in_background=false, prompt=\"\u4EFB\u52A1 1: ...\")\n task(category=\"...\", load_skills=[...], run_in_background=false, prompt=\"\u4EFB\u52A1 N: ...\")\n ```\n\n2. **\u7B2C\u4E8C\u6CE2**: \u7B2C\u4E00\u6CE2\u5B8C\u6210\u540E\uFF0C\u5E76\u884C\u542F\u52A8\u4E0B\u4E00\u6CE2\n ```\n task(category=\"...\", load_skills=[...], run_in_background=false, prompt=\"\u4EFB\u52A1 2: ...\")\n ```\n\n3. \u7EE7\u7EED\u76F4\u5230\u6240\u6709\u6CE2\u6B21\u5B8C\u6210\n\n4. \u6700\u7EC8 QA: \u9A8C\u8BC1\u6240\u6709\u4EFB\u52A1\u901A\u8FC7 QA \u6807\u51C6\n```\n\n\u4E3A\u4EC0\u4E48\u6B64\u683C\u5F0F\u662F\u5F3A\u5236\u6027\u7684:\n- \u8C03\u7528\u8005\u53EF\u4EE5\u76F4\u63A5\u590D\u5236 TODO \u9879\u76EE\n- \u6CE2\u6B21\u5206\u7EC4\u652F\u6301\u5E76\u884C\u6267\u884C\n- \u6BCF\u4E2A\u4EFB\u52A1\u90FD\u6709\u6E05\u6670\u7684\u4EFB\u52A1\u53C2\u6570\n- QA \u6807\u51C6\u786E\u4FDD\u53EF\u9A8C\u8BC1\u7684\u5B8C\u6210\n</FINAL_OUTPUT_FOR_CALLER>\n\n";
9
+ export declare const PLAN_AGENT_SYSTEM_PREPEND_STATIC_BEFORE_SKILLS = "<system>\nBEFORE you begin planning, you MUST first understand the user's request deeply.\n\nMANDATORY CONTEXT GATHERING PROTOCOL:\n1. Launch background agents to gather context:\n - call_omo_agent(description=\"Explore codebase patterns\", subagent_type=\"explore\", run_in_background=true, prompt=\"<search for relevant patterns, files, and implementations in the codebase related to user's request>\")\n - call_omo_agent(description=\"Research documentation\", subagent_type=\"librarian\", run_in_background=true, prompt=\"<search for external documentation, examples, and best practices related to user's request>\")\n\n2. After gathering context, ALWAYS present:\n - **User Request Summary**: Concise restatement of what the user is asking for\n - **Uncertainties**: List of unclear points, ambiguities, or assumptions you're making\n - **Clarifying Questions**: Specific questions to resolve the uncertainties\n\n3. ITERATE until ALL requirements are crystal clear:\n - Do NOT proceed to planning until you have 100% clarity\n - Ask the user to confirm your understanding\n - Resolve every ambiguity before generating the work plan\n\nREMEMBER: Vague requirements lead to failed implementations. Take the time to understand thoroughly.\n</system>\n\n<CRITICAL_REQUIREMENT_DEPENDENCY_PARALLEL_EXECUTION_CATEGORY_SKILLS>\n#####################################################################\n# #\n# \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2557 #\n# \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557 #\n# \u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551 \u2588\u2588\u2551 #\n# \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u255D \u2588\u2588\u2551\u2584\u2584 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u255D \u2588\u2588\u2551 \u2588\u2588\u2551 #\n# \u2588\u2588\uFFFD\uFFFD \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D #\n# \u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u2550\u2580\u2580\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u255D #\n# #\n#####################################################################\n\nYOU MUST INCLUDE THE FOLLOWING SECTIONS IN YOUR PLAN OUTPUT.\nTHIS IS NON-NEGOTIABLE. FAILURE TO INCLUDE THESE SECTIONS = INCOMPLETE PLAN.\n\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\u2588 SECTION 1: TASK DEPENDENCY GRAPH (MANDATORY) \u2588\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\nYOU MUST ANALYZE AND DOCUMENT TASK DEPENDENCIES.\n\nFor EVERY task in your plan, you MUST specify:\n- Which tasks it DEPENDS ON (blockers)\n- Which tasks DEPEND ON IT (dependents)\n- The REASON for each dependency\n\nExample format:\n```\n## Task Dependency Graph\n\n| Task | Depends On | Reason |\n|------|------------|--------|\n| Task 1 | None | Starting point, no prerequisites |\n| Task 2 | Task 1 | Requires output/artifact from Task 1 |\n| Task 3 | Task 1 | Uses same foundation established in Task 1 |\n| Task 4 | Task 2, Task 3 | Integrates results from both tasks |\n```\n\nWHY THIS MATTERS:\n- Executors need to know execution ORDER\n- Prevents blocked work from starting prematurely\n- Identifies critical path for project timeline\n\n\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\u2588 SECTION 2: PARALLEL EXECUTION GRAPH (MANDATORY) \u2588\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\nYOU MUST IDENTIFY WHICH TASKS CAN RUN IN PARALLEL.\n\nAnalyze your dependency graph and group tasks into PARALLEL EXECUTION WAVES:\n\nExample format:\n```\n## Parallel Execution Graph\n\nWave 1 (Start immediately):\n\u251C\u2500\u2500 Task 1: [description] (no dependencies)\n\u2514\u2500\u2500 Task 5: [description] (no dependencies)\n\nWave 2 (After Wave 1 completes):\n\u251C\u2500\u2500 Task 2: [description] (depends: Task 1)\n\u251C\u2500\u2500 Task 3: [description] (depends: Task 1)\n\u2514\u2500\u2500 Task 6: [description] (depends: Task 5)\n\nWave 3 (After Wave 2 completes):\n\u2514\u2500\u2500 Task 4: [description] (depends: Task 2, Task 3)\n\nCritical Path: Task 1 \u2192 Task 2 \u2192 Task 4\nEstimated Parallel Speedup: 40% faster than sequential\n```\n\nWHY THIS MATTERS:\n- MASSIVE time savings through parallelization\n- Executors can dispatch multiple agents simultaneously\n- Identifies bottlenecks in the execution plan\n\n\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\u2588 SECTION 3: CATEGORY + SKILLS RECOMMENDATIONS (MANDATORY) \u2588\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\nFOR EVERY TASK, YOU MUST RECOMMEND:\n1. Which CATEGORY to use for delegation\n2. Which SKILLS to load for the delegated agent\n";
10
+ export declare const PLAN_AGENT_SYSTEM_PREPEND_STATIC_AFTER_SKILLS = "### REQUIRED OUTPUT FORMAT\n\nFor EACH task, include a recommendation block:\n\n```\n### Task N: [Task Title]\n\n**Delegation Recommendation:**\n- Category: `[category-name]` - [reason for choice]\n- Skills: [`skill-1`, `skill-2`] - [reason each skill is needed]\n\n**Skills Evaluation:**\n- INCLUDED `skill-name`: [reason]\n- OMITTED `other-skill`: [reason domain doesn't overlap]\n```\n\nWHY THIS MATTERS:\n- Category determines the MODEL used for execution\n- Skills inject SPECIALIZED KNOWLEDGE into the executor\n- Missing a relevant skill = suboptimal execution\n- Wrong category = wrong model = poor results\n\n\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\u2588 RESPONSE FORMAT SPECIFICATION (MANDATORY) \u2588\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\nYOUR PLAN OUTPUT MUST FOLLOW THIS EXACT STRUCTURE:\n\n```markdown\n# [Plan Title]\n\n## Context\n[User request summary, interview findings, research results]\n\n## Task Dependency Graph\n[Dependency table - see Section 1]\n\n## Parallel Execution Graph \n[Wave structure - see Section 2]\n\n## Tasks\n\n### Task 1: [Title]\n**Description**: [What to do]\n**Delegation Recommendation**:\n- Category: `[category]` - [reason]\n- Skills: [`skill-1`] - [reason]\n**Skills Evaluation**: [\u2705 included / \u274C omitted with reasons]\n**Depends On**: [Task IDs or \"None\"]\n**Acceptance Criteria**: [Verifiable conditions]\n\n### Task 2: [Title]\n[Same structure...]\n\n## Commit Strategy\n[How to commit changes atomically]\n\n## Success Criteria\n[Final verification steps]\n```\n\n#####################################################################\n# #\n# FAILURE TO INCLUDE THESE SECTIONS = PLAN WILL BE REJECTED #\n# BY MOMUS REVIEW. DO NOT SKIP. DO NOT ABBREVIATE. #\n# #\n#####################################################################\n</CRITICAL_REQUIREMENT_DEPENDENCY_PARALLEL_EXECUTION_CATEGORY_SKILLS>\n\n<FINAL_OUTPUT_FOR_CALLER>\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\u2588 SECTION 4: ACTIONABLE TODO LIST FOR CALLER (MANDATORY) \u2588\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\nYOU MUST END YOUR RESPONSE WITH THIS SECTION.\n\n```markdown\n## TODO List (ADD THESE)\n\n> CALLER: Add these TODOs using TodoWrite/TaskCreate and execute by wave.\n\n### Wave 1 (Start Immediately - No Dependencies)\n\n- [ ] **1. [Task Title]**\n - What: [Clear implementation steps]\n - Depends: None\n - Blocks: [Tasks that depend on this]\n - Category: `category-name`\n - Skills: [`skill-1`, `skill-2`]\n - QA: [How to verify completion - specific command or check]\n\n- [ ] **N. [Task Title]**\n - What: [Steps]\n - Depends: None\n - Blocks: [...]\n - Category: `category-name`\n - Skills: [`skill-1`]\n - QA: [Verification]\n\n### Wave 2 (After Wave 1 Completes)\n\n- [ ] **2. [Task Title]**\n - What: [Steps]\n - Depends: 1\n - Blocks: [4]\n - Category: `category-name`\n - Skills: [`skill-1`]\n - QA: [Verification]\n\n[Continue for all waves...]\n\n## Execution Instructions\n\n1. **Wave 1**: Fire these tasks IN PARALLEL (no dependencies)\n ```\n task(category=\"...\", load_skills=[...], run_in_background=false, prompt=\"Task 1: ...\")\n task(category=\"...\", load_skills=[...], run_in_background=false, prompt=\"Task N: ...\")\n ```\n\n2. **Wave 2**: After Wave 1 completes, fire next wave IN PARALLEL\n ```\n task(category=\"...\", load_skills=[...], run_in_background=false, prompt=\"Task 2: ...\")\n ```\n\n3. Continue until all waves complete\n\n4. Final QA: Verify all tasks pass their QA criteria\n```\n\nWHY THIS FORMAT IS MANDATORY:\n- Caller can directly copy TODO items\n- Wave grouping enables parallel execution\n- Each task has clear task parameters\n- QA criteria ensure verifiable completion\n</FINAL_OUTPUT_FOR_CALLER>\n\n";
11
11
  export declare function buildPlanAgentSkillsSection(categories?: AvailableCategory[], skills?: AvailableSkill[]): string;
12
12
  export declare function buildPlanAgentSystemPrepend(categories?: AvailableCategory[], skills?: AvailableSkill[]): string;
13
13
  /**
@@ -1,8 +1,9 @@
1
1
  import type { DelegatedModelConfig } from "./types";
2
- export interface MetadataModel {
2
+ interface MetadataModel {
3
3
  providerID: string;
4
4
  modelID: string;
5
+ variant?: string;
5
6
  }
6
- type ModelLike = Pick<DelegatedModelConfig, "providerID" | "modelID"> | MetadataModel;
7
+ type ModelLike = Pick<DelegatedModelConfig, "providerID" | "modelID" | "variant"> | MetadataModel;
7
8
  export declare function resolveMetadataModel(primary: ModelLike | undefined, fallback: ModelLike | undefined): MetadataModel | undefined;
8
9
  export {};
@@ -1,4 +1,4 @@
1
1
  import type { DelegateTaskArgs, ToolContextWithMetadata } from "./types";
2
2
  import type { ExecutorContext, ParentContext } from "./executor-types";
3
3
  import { type SyncContinuationDeps } from "./sync-continuation-deps";
4
- export declare function executeSyncContinuation(args: DelegateTaskArgs, ctx: ToolContextWithMetadata, executorCtx: ExecutorContext, parentContext: ParentContext, deps?: SyncContinuationDeps): Promise<string>;
4
+ export declare function executeSyncContinuation(args: DelegateTaskArgs, ctx: ToolContextWithMetadata, executorCtx: ExecutorContext, parentContext: ParentContext, deps?: SyncContinuationDeps, systemContent?: string): Promise<string>;
@@ -9,14 +9,11 @@ export interface DelegateTaskArgs {
9
9
  prompt: string;
10
10
  category?: string;
11
11
  subagent_type?: string;
12
+ requested_subagent_type?: string;
12
13
  run_in_background: boolean;
13
14
  task_id?: string;
14
15
  command?: string;
15
16
  load_skills: string[];
16
- execute?: {
17
- task_id: string;
18
- task_dir?: string;
19
- };
20
17
  }
21
18
  export interface ToolContextWithMetadata {
22
19
  sessionID: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skj1724/oh-my-opencode",
3
- "version": "3.17.16",
3
+ "version": "3.18.2",
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
5
  "main": "./dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -69,7 +69,7 @@
69
69
  "jsonc-parser": "^3.3.1",
70
70
  "picocolors": "^1.1.1",
71
71
  "picomatch": "^4.0.2",
72
- "posthog-node": "^5.29.2",
72
+ "posthog-node": "5.28.11",
73
73
  "vscode-jsonrpc": "^8.2.0"
74
74
  },
75
75
  "devDependencies": {