dsh-plugin-prompt-tool 0.7.2 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/README.md +185 -46
  2. package/engine/THIRD_PARTY_LICENSES +25 -0
  3. package/engine/actions.mjs +931 -0
  4. package/engine/anchor-match.mjs +6 -3
  5. package/engine/character-tools.mjs +11 -0
  6. package/engine/classify-task.mjs +18 -0
  7. package/engine/compaction-epoch.mjs +41 -20
  8. package/engine/compositions/library/agent-instructions.yml +9 -0
  9. package/engine/compositions/library/command-goal.yml +2 -6
  10. package/engine/compositions/library/compaction.yml +2 -32
  11. package/engine/compositions/library/delegation-ptc.yml +58 -0
  12. package/engine/compositions/library/delegation.yml +5 -38
  13. package/engine/compositions/library/persistent-shell.yml +4 -13
  14. package/engine/compositions/library/planning.yml +8 -23
  15. package/engine/compositions/library/skill-filesystem-cordis.yml +10 -0
  16. package/engine/compositions/library/skill-filesystem.yml +2 -8
  17. package/engine/compositions/library/tool-ask-user.yml +2 -3
  18. package/engine/compositions/library/tool-bash.yml +4 -12
  19. package/engine/compositions/library/tool-cordis.yml +7 -0
  20. package/engine/compositions/library/tool-fs-search.yml +2 -11
  21. package/engine/compositions/library/tool-fs.yml +2 -5
  22. package/engine/compositions/library/tool-goal.yml +2 -6
  23. package/engine/compositions/library/tool-jobs.yml +2 -18
  24. package/engine/compositions/library/tool-plugin-manager-disabled.yml +8 -0
  25. package/engine/compositions/library/tool-plugin-manager.yml +8 -0
  26. package/engine/compositions/library/tool-present.yml +7 -0
  27. package/engine/compositions/library/tool-presentation.yml +9 -0
  28. package/engine/compositions/library/tool-pwsh.yml +2 -6
  29. package/engine/compositions/library/tool-skill.yml +7 -0
  30. package/engine/compositions/library/tool-todo.yml +2 -4
  31. package/engine/compositions/library/tool-web.yml +2 -1
  32. package/engine/compositions/source/local/character-tools.yml +5 -0
  33. package/engine/compositions/source/local/declared-triggers.yml +12 -0
  34. package/engine/compositions/source/local/filesystem-editor.yml +30 -0
  35. package/engine/compositions/source/local/instruction-hint.yml +15 -0
  36. package/engine/compositions/{library/official-persistent-shell.yml → source/local/persistent-shell-posix.yml} +10 -8
  37. package/engine/compositions/source/local/prompt-config-engine.yml +3 -9
  38. package/engine/compositions/source/local/run-code-env.yml +4 -7
  39. package/engine/compositions/source/local/session-var-tools.yml +5 -0
  40. package/engine/compositions/source/local/skill-search.yml +3 -9
  41. package/engine/compositions/source/local/subagent-tool-policy.yml +21 -0
  42. package/engine/compositions/source/local/tool-bash-disabled.yml +9 -0
  43. package/engine/compositions/source/local/tool-config-engine.yml +8 -0
  44. package/engine/compositions/source/local/tool-git-bash.yml +15 -0
  45. package/engine/compositions/source/local/world-book-tools.yml +5 -0
  46. package/engine/condition.mjs +83 -0
  47. package/engine/declared-triggers.mjs +93 -0
  48. package/engine/executor.mjs +364 -185
  49. package/engine/fields.mjs +219 -0
  50. package/engine/fillers.mjs +12 -141
  51. package/engine/host-package.mjs +51 -0
  52. package/engine/instruction-hint.mjs +285 -0
  53. package/engine/interpolate.mjs +157 -29
  54. package/engine/layers.mjs +495 -75
  55. package/engine/predicates.mjs +753 -0
  56. package/engine/prompt-config-engine.mjs +63 -8
  57. package/engine/run-code-env.mjs +48 -31
  58. package/engine/schema.mjs +444 -103
  59. package/engine/sdk-strip.mjs +365 -0
  60. package/engine/session-var-tools.mjs +11 -0
  61. package/engine/session-vars.mjs +8 -6
  62. package/engine/shared.mjs +137 -0
  63. package/engine/skill-search.mjs +34 -21
  64. package/engine/st-macros.d.mts +22 -0
  65. package/engine/st-macros.mjs +208 -0
  66. package/engine/st-render.mjs +105 -0
  67. package/engine/st-world-book.d.mts +10 -0
  68. package/engine/st-world-book.mjs +259 -0
  69. package/engine/strategies.mjs +31 -20
  70. package/engine/subagent-tool-policy-core.mjs +400 -0
  71. package/engine/subagent-tool-policy.mjs +327 -0
  72. package/engine/tool-config-engine.mjs +207 -145
  73. package/engine/tool-definition.mjs +143 -0
  74. package/engine/{custom-bash.mjs → tool-git-bash.mjs} +38 -13
  75. package/engine/trigger-editor-meta.mjs +48 -0
  76. package/engine/trigger-spec.mjs +257 -0
  77. package/engine/trigger.mjs +304 -0
  78. package/engine/world-book-tools.mjs +11 -0
  79. package/lib/client.js +16495 -5456
  80. package/lib/client.js.map +1 -1
  81. package/lib/index.d.mts +628 -382
  82. package/lib/index.mjs +5391 -2942
  83. package/lib/paths-CY5psBqE.d.mts +1233 -0
  84. package/lib/preset-package-BnJqrU4R.mjs +16792 -0
  85. package/lib/preset-transfer.d.mts +2 -0
  86. package/lib/preset-transfer.mjs +2 -0
  87. package/package.json +91 -49
  88. package/preset/pt-cordis/preset.yml +43 -0
  89. package/preset/pt-cordis/skills/cordis-composition-reference/SKILL.md +29 -0
  90. package/preset/pt-cordis/skills/cordis-composition-reference/references/packages.md +501 -0
  91. package/preset/pt-cordis/skills/cordis-plugin-development/SKILL.md +38 -0
  92. package/preset/pt-cordis/skills/cordis-plugin-development/references/host-plugin.md +60 -0
  93. package/preset/pt-cordis/skills/cordis-plugin-development/references/mcp-bundle.md +5 -0
  94. package/preset/pt-cordis/skills/cordis-plugin-development/references/ui-plugin.md +13 -0
  95. package/preset/pt-cordis/skills/cordis-plugin-development/references/verification.md +5 -0
  96. package/preset/pt-cordis/skills/cordis-plugin-development/templates/decoration/client.js +22 -0
  97. package/preset/pt-cordis/skills/cordis-plugin-development/templates/decoration/cordis.patch.yml +3 -0
  98. package/preset/pt-cordis/skills/cordis-plugin-development/templates/decoration/index.js +2 -0
  99. package/preset/pt-cordis/skills/cordis-plugin-development/templates/decoration/package.json +15 -0
  100. package/preset/pt-cordis/skills/cordis-plugin-development/templates/mcp/cordis.patch.yml +8 -0
  101. package/preset/pt-cordis/skills/cordis-plugin-development/templates/mcp/package.json +7 -0
  102. package/preset/pt-cordis/skills/editing-cordis-compositions/SKILL.md +84 -0
  103. package/preset/pt-custom/preset.yml +15 -0
  104. package/preset/pt-minimal/preset.yml +27 -0
  105. package/preset/pt-ptc/preset.yml +45 -0
  106. package/preset/pt-standard/preset.yml +43 -0
  107. package/templates/14-first-turn-anchor.yml +4 -4
  108. package/templates/15-guide-auto.yml +3 -3
  109. package/templates/16-custom-fallback.yml +1 -0
  110. package/templates/18-placeholder-env-facts.yml +3 -3
  111. package/templates/20-system-section.yml +3 -2
  112. package/templates/65-turn-stop.yml +18 -0
  113. package/templates/66-subagent-start.yml +14 -0
  114. package/templates/75-subagent-end.yml +15 -0
  115. package/templates/tools/10-shell-command.yml +1 -1
  116. package/templates/tools/40-delegate-character.yml +1 -1
  117. package/templates/tools/50-delegate-worldbook.yml +1 -1
  118. package/templates/tools/60-delegate-session-var.yml +1 -1
  119. package/templates/tools/70-delegate-worldbook-upsert.yml +1 -1
  120. package/engine/anchor-turn.mjs +0 -68
  121. package/engine/code-presentation.mjs +0 -103
  122. package/engine/compositions/library/anchor-turn.yml +0 -10
  123. package/engine/compositions/library/bootstrap-filesystem.yml +0 -19
  124. package/engine/compositions/library/code-presentation.yml +0 -8
  125. package/engine/compositions/library/context-gate.yml +0 -39
  126. package/engine/compositions/library/cot-drip.yml +0 -11
  127. package/engine/compositions/library/custom-bash.yml +0 -14
  128. package/engine/compositions/library/deliberation-gate.yml +0 -11
  129. package/engine/compositions/library/official-agent-instructions.yml +0 -17
  130. package/engine/compositions/library/official-skill-filesystem-cordis.yml +0 -10
  131. package/engine/compositions/library/official-tool-bash.yml +0 -6
  132. package/engine/compositions/library/official-tool-cordis.yml +0 -13
  133. package/engine/compositions/library/official-tool-presentation.yml +0 -7
  134. package/engine/compositions/library/official-tool-skill.yml +0 -14
  135. package/engine/compositions/library/persona.yml +0 -13
  136. package/engine/compositions/library/prompt-config-engine.yml +0 -16
  137. package/engine/compositions/library/run-code-env.yml +0 -15
  138. package/engine/compositions/library/skill-search.yml +0 -14
  139. package/engine/compositions/library/str-replace-editor.yml +0 -10
  140. package/engine/compositions/library/tool-bootstrap.yml +0 -14
  141. package/engine/compositions/library/tool-config-engine.yml +0 -9
  142. package/engine/compositions/library/tool-filter.yml +0 -8
  143. package/engine/compositions/source/local/code-presentation.yml +0 -8
  144. package/engine/compositions/source/local/context-gate.yml +0 -36
  145. package/engine/compositions/source/local/custom-bash.yml +0 -11
  146. package/engine/compositions/source/local/str-replace-editor.yml +0 -10
  147. package/engine/compositions/source/local/tool-bootstrap.yml +0 -11
  148. package/engine/compositions/source/local/tool-filter.yml +0 -8
  149. package/engine/context-gate.mjs +0 -305
  150. package/engine/cot-drip.mjs +0 -137
  151. package/engine/deliberation-gate.mjs +0 -127
  152. package/engine/tool-bootstrap.mjs +0 -476
  153. package/engine/tool-filter.mjs +0 -80
  154. package/lib/preset-core.d.mts +0 -10
  155. package/lib/preset-core.mjs +0 -77
  156. package/lib/prompt-configs-BnQKRHVb.mjs +0 -884
  157. package/lib/prompt-configs-CN0sJTUL.d.mts +0 -193
  158. package/preset/anchored/preset.yml +0 -296
  159. package/preset/creative/preset.yml +0 -67
  160. package/preset/creative/skills/cordis-plugin-development/SKILL.md +0 -420
  161. package/preset/creative/skills/editing-cordis-compositions/SKILL.md +0 -165
  162. package/preset/custom/preset.yml +0 -12
  163. package/preset/liangshen/preset.yml +0 -75
  164. package/preset/minimal/preset.yml +0 -45
  165. package/preset/ptc/preset.yml +0 -58
  166. package/preset/standard/preset.yml +0 -57
  167. package/skills/manifest.json +0 -7
  168. package/skills/sandboxmod/SKILL.md +0 -49
  169. package/skills/web ui/SKILL.md +0 -42
@@ -0,0 +1,2 @@
1
+ import { i as exportPresetPackage, r as expandPresetSource, t as DEFAULT_PRESET_DIR } from "./paths-CY5psBqE.mjs";
2
+ export { DEFAULT_PRESET_DIR, expandPresetSource, exportPresetPackage };
@@ -0,0 +1,2 @@
1
+ import { Zt as DEFAULT_PRESET_DIR, n as exportPresetPackage, t as expandPresetSource } from "./preset-package-BnJqrU4R.mjs";
2
+ export { DEFAULT_PRESET_DIR, expandPresetSource, exportPresetPackage };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-plugin-prompt-tool",
3
- "version": "0.7.2",
3
+ "version": "0.8.0",
4
4
  "description": "DSH 插件:提示词工具,规范模型的思维链与回答内容,提供 Web UI 编辑 preset.md 与 AGENTS.md,并按 skills 目录注册可开关技能。",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -16,26 +16,25 @@
16
16
  "default": "./lib/index.mjs"
17
17
  },
18
18
  "./client": "./lib/client.js",
19
+ "./engine/*": "./engine/*",
19
20
  "./package.json": "./package.json"
20
21
  },
21
22
  "engines": {
22
- "node": ">=20"
23
+ "node": "^22.19.0 || >=24.0.0"
23
24
  },
24
25
  "dsh": {
25
26
  "bundle": {
26
- "patch": "./cordis.patch.yml",
27
- "requires": [
28
- "@deepseek-ai/dsh-web-app"
29
- ]
27
+ "patch": "./cordis.patch.yml"
30
28
  },
31
29
  "client": {
32
30
  "inject": [
33
31
  "@deepseek-ai/dsh-client-connection",
32
+ "@deepseek-ai/dsh-client-locale",
34
33
  "@deepseek-ai/dsh-client-ui-settings",
35
34
  "@deepseek-ai/dsh-client-ui-settings-plugins",
36
35
  "@deepseek-ai/dsh-client-ui-renderer",
36
+ "@deepseek-ai/dsh-client-ui-session",
37
37
  "@deepseek-ai/dsh-client-ui-layout",
38
- "@deepseek-ai/dsh-client-ui-sidebar",
39
38
  "@deepseek-ai/dsh-client-ui-workspace",
40
39
  "@deepseek-ai/dsh-api-remotes",
41
40
  "@deepseek-ai/dsh-api-session-controller"
@@ -44,55 +43,96 @@
44
43
  }
45
44
  },
46
45
  "peerDependencies": {
47
- "@deepseek-ai/cordis": "^4.0.1",
48
- "@deepseek-ai/dsh-api-remotes": "^0.1.2-alpha.2",
49
- "@deepseek-ai/dsh-api-session-controller": "^0.1.2-alpha.2",
50
- "@deepseek-ai/dsh-client-connection": "^0.1.2-alpha.2",
51
- "@deepseek-ai/dsh-client-ui-primitives": "^0.1.2-alpha.2",
52
- "@deepseek-ai/dsh-client-ui-settings": "^0.1.2-alpha.2",
53
- "@deepseek-ai/dsh-client-ui-settings-plugins": "^0.1.2-alpha.2",
54
- "@deepseek-ai/dsh-client-ui-layout": "^0.1.2-alpha.2",
55
- "@deepseek-ai/dsh-client-ui-sidebar": "^0.1.2-alpha.2",
56
- "@deepseek-ai/dsh-client-ui-renderer": "^0.1.2-alpha.2",
57
- "@deepseek-ai/dsh-client-ui-workspace": "^0.1.2-alpha.2",
58
- "@deepseek-ai/dsh-commands": "^0.1.2-alpha.2",
59
- "@deepseek-ai/dsh-host-webserver": "^0.1.2-alpha.2",
60
- "@deepseek-ai/dsh-settings": "^0.1.2-alpha.2",
61
- "@deepseek-ai/dsh-skill": "^0.1.2-alpha.2",
62
- "@deepseek-ai/dsh-system-prompt": "^0.1.2-alpha.2",
63
- "@deepseek-ai/dsh-tools": "^0.1.2-alpha.2",
64
- "@deepseek-ai/schemastery": "^3.18.1",
46
+ "@deepseek-ai/cordis": "^4.0.3",
47
+ "@deepseek-ai/dsh-agent": "^0.1.7-alpha.1",
48
+ "@deepseek-ai/dsh-agent-preset-registry": "^0.1.7-alpha.1",
49
+ "@deepseek-ai/dsh-api-remotes": "^0.1.7-alpha.1",
50
+ "@deepseek-ai/dsh-api-session-controller": "^0.1.7-alpha.1",
51
+ "@deepseek-ai/dsh-client-connection": "^0.1.7-alpha.1",
52
+ "@deepseek-ai/dsh-client-locale": "^0.1.7-alpha.1",
53
+ "@deepseek-ai/dsh-client-ui-primitives": "^0.1.7-alpha.1",
54
+ "@deepseek-ai/dsh-client-ui-layout": "^0.1.7-alpha.1",
55
+ "@deepseek-ai/dsh-client-ui-settings": "^0.1.7-alpha.1",
56
+ "@deepseek-ai/dsh-client-ui-settings-plugins": "^0.1.7-alpha.1",
57
+ "@deepseek-ai/dsh-client-ui-slots": "^0.1.7-alpha.1",
58
+ "@deepseek-ai/dsh-client-ui-renderer": "^0.1.7-alpha.1",
59
+ "@deepseek-ai/dsh-client-ui-session": "^0.1.7-alpha.1",
60
+ "@deepseek-ai/dsh-client-ui-workspace": "^0.1.7-alpha.1",
61
+ "@deepseek-ai/dsh-commands": "^0.1.7-alpha.1",
62
+ "@deepseek-ai/dsh-fs": "^0.1.7-alpha.1",
63
+ "@deepseek-ai/dsh-host-webserver": "^0.1.7-alpha.1",
64
+ "@deepseek-ai/dsh-scope": "^0.1.7-alpha.1",
65
+ "@deepseek-ai/dsh-settings": "^0.1.7-alpha.1",
66
+ "@deepseek-ai/dsh-skill": "^0.1.7-alpha.1",
67
+ "@deepseek-ai/dsh-skill-filesystem": "^0.1.7-alpha.1",
68
+ "@deepseek-ai/dsh-subagent": "^0.1.7-alpha.1",
69
+ "@deepseek-ai/dsh-system-prompt": "^0.1.7-alpha.1",
70
+ "@deepseek-ai/dsh-tools": "^0.1.7-alpha.1",
71
+ "@deepseek-ai/schemastery": "^3.18.3",
65
72
  "react": "^18.2.0"
66
73
  },
67
74
  "devDependencies": {
68
- "@deepseek-ai/cordis": "^4.0.1",
69
- "@deepseek-ai/dsh-api-remotes": "^0.1.2-alpha.2",
70
- "@deepseek-ai/dsh-api-session-controller": "^0.1.2-alpha.2",
71
- "@deepseek-ai/dsh-client-connection": "^0.1.2-alpha.2",
72
- "@deepseek-ai/dsh-client-ui-primitives": "^0.1.2-alpha.2",
73
- "@deepseek-ai/dsh-client-ui-settings": "^0.1.2-alpha.2",
74
- "@deepseek-ai/dsh-client-ui-settings-plugins": "^0.1.2-alpha.2",
75
- "@deepseek-ai/dsh-client-ui-layout": "^0.1.2-alpha.2",
76
- "@deepseek-ai/dsh-client-ui-sidebar": "^0.1.2-alpha.2",
77
- "@deepseek-ai/dsh-client-ui-renderer": "^0.1.2-alpha.2",
78
- "@deepseek-ai/dsh-client-ui-workspace": "^0.1.2-alpha.2",
79
- "@deepseek-ai/dsh-client-ui-slots": "^0.1.2-alpha.2",
80
- "@deepseek-ai/dsh-commands": "^0.1.2-alpha.2",
81
- "@deepseek-ai/dsh-host-webserver": "^0.1.2-alpha.2",
82
- "@deepseek-ai/dsh-scope": "^0.1.2-alpha.2",
83
- "@deepseek-ai/dsh-settings": "^0.1.2-alpha.2",
84
- "@deepseek-ai/dsh-skill": "^0.1.2-alpha.2",
85
- "@deepseek-ai/dsh-tools": "^0.1.2-alpha.2",
75
+ "@deepseek-ai/cordis": "4.0.3",
76
+ "@deepseek-ai/dsh-agent": "0.1.7-alpha.1",
77
+ "@deepseek-ai/dsh-agent-preset-registry": "0.1.7-alpha.1",
78
+ "@deepseek-ai/dsh-api-remotes": "0.1.7-alpha.1",
79
+ "@deepseek-ai/dsh-api-session-controller": "0.1.7-alpha.1",
80
+ "@deepseek-ai/dsh-client-connection": "0.1.7-alpha.1",
81
+ "@deepseek-ai/dsh-client-locale": "0.1.7-alpha.1",
82
+ "@deepseek-ai/dsh-client-store": "0.1.7-alpha.1",
83
+ "@deepseek-ai/dsh-client-ui-primitives": "0.1.7-alpha.1",
84
+ "@deepseek-ai/dsh-client-ui-layout": "0.1.7-alpha.1",
85
+ "@deepseek-ai/dsh-client-ui-settings": "0.1.7-alpha.1",
86
+ "@deepseek-ai/dsh-client-ui-settings-plugins": "0.1.7-alpha.1",
87
+ "@deepseek-ai/dsh-client-ui-renderer": "0.1.7-alpha.1",
88
+ "@deepseek-ai/dsh-client-ui-session": "0.1.7-alpha.1",
89
+ "@deepseek-ai/dsh-client-ui-workspace": "0.1.7-alpha.1",
90
+ "@deepseek-ai/dsh-client-ui-slots": "0.1.7-alpha.1",
91
+ "@deepseek-ai/dsh-commands": "0.1.7-alpha.1",
92
+ "@deepseek-ai/dsh-fs": "0.1.7-alpha.1",
93
+ "@deepseek-ai/dsh-host-webserver": "0.1.7-alpha.1",
94
+ "@deepseek-ai/dsh-llm": "0.1.7-alpha.1",
95
+ "@deepseek-ai/dsh-package-manifest": "0.1.7-alpha.1",
96
+ "@deepseek-ai/dsh-scope": "0.1.7-alpha.1",
97
+ "@deepseek-ai/dsh-session": "0.1.7-alpha.1",
98
+ "@deepseek-ai/dsh-settings": "0.1.7-alpha.1",
99
+ "@deepseek-ai/dsh-skill": "0.1.7-alpha.1",
100
+ "@deepseek-ai/dsh-skill-filesystem": "0.1.7-alpha.1",
101
+ "@deepseek-ai/dsh-subagent": "0.1.7-alpha.1",
102
+ "@deepseek-ai/dsh-system-prompt": "0.1.7-alpha.1",
103
+ "@deepseek-ai/dsh-tool-subagent": "0.1.7-alpha.1",
104
+ "@deepseek-ai/dsh-tools": "0.1.7-alpha.1",
105
+ "@shikijs/langs": "^4.3.1",
86
106
  "@types/node": "^26.2.0",
87
107
  "@types/react": "~18.3.1",
88
108
  "@types/react-dom": "^18.3.0",
109
+ "anser": "^2.3.5",
89
110
  "clsx": "^2.1.1",
111
+ "diff": "^9.0.0",
112
+ "immer": "^10.1.1",
113
+ "katex": "^0.16.47",
90
114
  "lightningcss": "^1.32.0",
115
+ "mdast-util-from-markdown": "^2.0.3",
116
+ "mdast-util-gfm": "^3.1.0",
117
+ "mdast-util-math": "^3.0.0",
118
+ "micromark-core-commonmark": "^2.0.3",
119
+ "micromark-extension-gfm": "^3.0.0",
120
+ "micromark-extension-math": "^3.1.0",
121
+ "micromark-factory-space": "^2.0.1",
122
+ "micromark-util-character": "^2.1.1",
123
+ "micromark-util-classify-character": "^2.0.1",
124
+ "micromark-util-sanitize-uri": "^2.0.1",
125
+ "micromark-util-symbol": "^2.0.1",
126
+ "micromark-util-types": "^2.0.1",
91
127
  "oxlint": "^1.78.0",
92
128
  "react": "^18.3.1",
93
129
  "react-dom": "^18.3.1",
130
+ "semver": "7.8.5",
131
+ "shiki": "^4.3.1",
132
+ "simple-icons": "^16.31.0",
94
133
  "tsdown": "^0.22.2",
95
- "typescript": "^5.9.2"
134
+ "typescript": "^5.9.2",
135
+ "zustand": "~4.4.7"
96
136
  },
97
137
  "files": [
98
138
  "lib",
@@ -101,7 +141,6 @@
101
141
  "LICENSE",
102
142
  "preset",
103
143
  "templates",
104
- "skills",
105
144
  "README.md"
106
145
  ],
107
146
  "scripts": {
@@ -109,13 +148,16 @@
109
148
  "prepare": "tsdown",
110
149
  "typecheck": "tsc -p tsconfig.json --noEmit && tsc -p tsconfig.client.json --noEmit",
111
150
  "lint": "oxlint src test tsdown.config.ts",
112
- "test": "pnpm build && node --test \"test/**/*.test.mjs\"",
113
- "link:profile": "node scripts/link-profile.mjs",
114
- "sync:anchored": "node scripts/sync-anchored.mjs",
151
+ "test": "node scripts/run-tests.mjs",
115
152
  "sync:yaml": "node scripts/sync-yaml-vendor.mjs",
116
- "rebuild:composition": "node scripts/rebuild-composition.mjs"
153
+ "rebuild:composition": "node scripts/rebuild-composition.mjs",
154
+ "rebuild:preset-template": "node scripts/rebuild-preset-template.mjs",
155
+ "rematerialize:presets": "node scripts/rematerialize-presets.mjs",
156
+ "repair:profile": "node scripts/repair-profile.mjs",
157
+ "verify:host": "node scripts/verify-host-contracts.mjs"
117
158
  },
118
159
  "dependencies": {
160
+ "@zip.js/zip.js": "2.15.0",
119
161
  "yaml": "^2.9.0"
120
162
  }
121
163
  }
@@ -0,0 +1,43 @@
1
+ id: pt-cordis
2
+ name: 创造模式
3
+ description: 用于创建自定义 Agent preset:具备标准模式的全部能力,并提供运行时检查、持久化插件管理和 preset 创作指导。
4
+ version: 1.0.0
5
+ engineCompat: ">=0.4.2"
6
+ modules:
7
+ - agent-instructions
8
+ - tool-bash
9
+ - tool-pwsh
10
+ - tool-fs
11
+ - tool-fs-search
12
+ - tool-jobs
13
+ - command-goal
14
+ - tool-goal
15
+ - planning
16
+ - compaction
17
+ - delegation
18
+ - tool-ask-user
19
+ - tool-todo
20
+ - tool-web
21
+ - skill-filesystem-cordis
22
+ - tool-skill
23
+ - tool-present
24
+ - tool-plugin-manager
25
+ - prompt-config-engine
26
+ persona:
27
+ suffix: Your working directory is {{cwd}}.
28
+ prefix: You are a coding agent powered by the {{model}} model.
29
+ promptConfigs: []
30
+ layerSettings:
31
+ agent-request:
32
+ modelProvider: ""
33
+ modelName: ""
34
+ modelReasoningEffort: ""
35
+ modelTemperature: ""
36
+ modelMaxTokens: ""
37
+ subagent-start:
38
+ subagentModelProvider: ""
39
+ subagentModelName: ""
40
+ subagentReasoningEffort: ""
41
+ subagentTemperature: ""
42
+ subagentMaxTokens: ""
43
+ maxDepth: ""
@@ -0,0 +1,29 @@
1
+ ---
2
+ name: cordis-composition-reference
3
+ description: Use when writing or reading a Cordis bundle patch or agent preset for this harness and you need the Loader YAML dialect (insert, override by id, group, disabled, isolate, !!js) or the list of installable Harness plugin packages and what each provides.
4
+ ---
5
+
6
+ # Cordis composition reference
7
+
8
+ Reference material for bundle patches and preset plugin lists. Procedures live in `cordis-plugin-development` and `editing-cordis-compositions`.
9
+
10
+ ## Loader patch dialect
11
+
12
+ A profile composes an ordered list of patch layers over the bundle entry lists. Each patch is a mapping:
13
+
14
+ - `insert: [rows]` appends rows; with an `id` naming an existing `group: true` row, the rows are appended inside that group's `config` list.
15
+ - A patch with an `id` and no `insert` targets the existing row with that id. Supplied fields replace the row's fields; `config` is replaced wholesale, never deep-merged, so restate every field the row needs. A truthy `name` asserts the existing plugin name rather than renaming it.
16
+ - Non-insert patches without a nonempty `id`, and targets that match no row, are warned about and skipped.
17
+
18
+ A row has `id`, `name` (the plugin package specifier; inserted relative paths are anchored beside their patch file), optional `config`, and optional `disabled`, `inject`, `intercept`, and `isolate`.
19
+
20
+ - `group: true` with `name: cordis:group` makes `config` a nested entry list and allows patches to insert into it by id. `cordis:include` loads a literal YAML or JSON entry list from `config.path`.
21
+ - `disabled` accepts a boolean, null, or a `!!js` expression evaluated against the Loader context at every mount decision. A disabled row omits required `config` unless `group: true` forces activation.
22
+ - `!!js` scalars are Loader expressions, never `!js`. Inside `config` they are evaluated after the row's declared injections activate, against that plugin's context (`ctx.<service>`), so `!!js dshHomePath('sessions')` and `!!js "!ctx.get('profileContext')"` are valid. Other row metadata stays literal.
23
+ - `isolate` maps service names to `true` or a realm label; a preset plugin that provides a service isolates the provider and all consumers together. Scope controls contributions and event visibility; `isolate` controls service instances.
24
+
25
+ `plugin_manager` `list_plugins` reports each row's `enabled` flag and `fiberPhase`; `set_plugin` and `set_bundle` answer `overridden` when a higher-priority layer wins.
26
+
27
+ ## Installable plugin packages
28
+
29
+ `references/packages.md` lists every workspace package that exports a Cordis plugin, grouped by package group, with whether its row takes `config`. Search it with `grep -n <keyword>` rather than reading it whole. Plugins outside this list come from installed bundles; `plugin_manager` `list_bundles` names them.