@hiai-gg/hiai-opencode 0.2.1 → 0.2.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 (477) hide show
  1. package/.env.example +4 -0
  2. package/AGENTS.md +34 -38
  3. package/ARCHITECTURE.md +4 -3
  4. package/LICENSE.md +14 -0
  5. package/README.md +52 -21
  6. package/config/hiai-opencode.schema.json +11 -13
  7. package/dist/agents/{bob.d.ts → bob/claude.d.ts} +6 -2
  8. package/dist/agents/bob/core.d.ts +6 -0
  9. package/dist/agents/bob/gpt.d.ts +11 -0
  10. package/dist/agents/bob/index.d.ts +3 -0
  11. package/dist/agents/coder/core.d.ts +4 -0
  12. package/dist/agents/coder/gpt.d.ts +1 -4
  13. package/dist/agents/coder/index.d.ts +1 -0
  14. package/dist/agents/manager/agent.d.ts +1 -1
  15. package/dist/agents/manager/default-prompt-sections.d.ts +3 -3
  16. package/dist/agents/manager/guard-integration.d.ts +1 -0
  17. package/dist/agents/prompt-library/index.d.ts +0 -1
  18. package/dist/agents/prompt-library/shared-execution.d.ts +9 -0
  19. package/dist/agents/strategist/behavioral-summary.d.ts +1 -1
  20. package/dist/agents/strategist/identity-constraints.d.ts +1 -1
  21. package/dist/agents/strategist/plan-generation.d.ts +1 -1
  22. package/dist/agents/types.d.ts +2 -1
  23. package/dist/config/defaults.d.ts +1 -0
  24. package/dist/config/platform-schema.d.ts +26 -26
  25. package/dist/config/schema/agent-names.d.ts +6 -6
  26. package/dist/config/schema/agent-overrides.d.ts +0 -128
  27. package/dist/config/schema/hiai-opencode-config.d.ts +0 -128
  28. package/dist/config/types.d.ts +2 -2
  29. package/dist/features/background-agent/manager-notifier.d.ts +46 -0
  30. package/dist/features/background-agent/manager-types.d.ts +40 -0
  31. package/dist/features/background-agent/manager.d.ts +3 -19
  32. package/dist/features/background-agent/polling-manager.d.ts +51 -0
  33. package/dist/features/boulder-state/storage.d.ts +1 -0
  34. package/dist/features/builtin-commands/templates/loop.d.ts +2 -0
  35. package/dist/features/builtin-commands/templates/start-work.d.ts +1 -1
  36. package/dist/features/builtin-skills/skills/interview-me.d.ts +2 -0
  37. package/dist/features/builtin-skills/skills/planning-and-task-breakdown.d.ts +2 -0
  38. package/dist/hooks/reasoning-content-cache/hook.d.ts +11 -0
  39. package/dist/hooks/reasoning-content-cache/index.d.ts +1 -0
  40. package/dist/hooks/session-recovery/checkpoint.d.ts +48 -0
  41. package/dist/hooks/session-recovery/enhanced-hook.d.ts +30 -0
  42. package/dist/hooks/session-recovery/state-backup.d.ts +76 -0
  43. package/dist/hooks/shared/compaction-in-progress.d.ts +4 -0
  44. package/dist/hooks/start-work/git-operations.d.ts +47 -0
  45. package/dist/hooks/token-budget.d.ts +30 -0
  46. package/dist/index.js +1185 -1078
  47. package/dist/mcp/rate-limiter.d.ts +68 -0
  48. package/dist/plugin/chat-message.d.ts +8 -0
  49. package/dist/plugin/command-execute-before.d.ts +1 -1
  50. package/dist/plugin/event-handlers/message-updated.d.ts +2 -0
  51. package/dist/plugin/event-handlers/session-error.d.ts +2 -0
  52. package/dist/plugin/event-handlers/session-status.d.ts +2 -0
  53. package/dist/plugin/event-handlers/types.d.ts +62 -0
  54. package/dist/plugin/event-handlers/utils.d.ts +11 -0
  55. package/dist/plugin/event.d.ts +1 -1
  56. package/dist/shared/data-path.d.ts +1 -1
  57. package/dist/shared/errors.d.ts +70 -0
  58. package/dist/shared/extract-session-id.d.ts +8 -0
  59. package/dist/shared/git-worktree/get-git-state-summary.d.ts +14 -0
  60. package/dist/shared/index.d.ts +67 -68
  61. package/dist/shared/internal-initiator-marker.d.ts +1 -1
  62. package/dist/shared/logger.d.ts +5 -1
  63. package/dist/shared/reasoning-content-cache.d.ts +68 -0
  64. package/dist/shared/safe-create-hook.d.ts +4 -4
  65. package/dist/tools/call-hiai-agent/constants.d.ts +2 -2
  66. package/dist/tools/delegate-task/sub-agent.d.ts +1 -1
  67. package/dist/tools/look-at/constants.d.ts +1 -1
  68. package/docs/architecture/bob-manager-architecture.md +244 -0
  69. package/docs/hiai-opencode/adr/ADR-001-agent-identity-section-injection.md +66 -0
  70. package/docs/hiai-opencode/adr/ADR-002-anti-loop-guard-priority.md +63 -0
  71. package/docs/hiai-opencode/adr/ADR-003-compaction-mechanism.md +71 -0
  72. package/docs/hiai-opencode/adr/ADR-004-session-recovery.md +76 -0
  73. package/docs/hiai-opencode/api.md +305 -0
  74. package/docs/hiai-opencode/hooks-architecture.md +225 -0
  75. package/docs/hiai-opencode/migration.md +209 -0
  76. package/docs/skill-discovery.md +288 -0
  77. package/package.json +1 -1
  78. package/skills/agent-browser/SKILL.md +193 -0
  79. package/skills/apple-hig/SKILL.md +43 -0
  80. package/skills/article-magazine/SKILL.md +46 -0
  81. package/skills/article-magazine/example.html +81 -0
  82. package/skills/article-magazine/example.md +38 -0
  83. package/skills/canvas-design/SKILL.md +45 -0
  84. package/skills/design-templates/audio-jingle/SKILL.md +132 -0
  85. package/skills/design-templates/audio-jingle/example.html +128 -0
  86. package/skills/design-templates/blog-post/SKILL.md +80 -0
  87. package/skills/design-templates/blog-post/example.html +80 -0
  88. package/skills/design-templates/clinical-case-report/SKILL.md +209 -0
  89. package/skills/design-templates/clinical-case-report/example.html +698 -0
  90. package/skills/design-templates/clinical-case-report/examples/example-stemi.html +698 -0
  91. package/skills/design-templates/clinical-case-report/references/case-formats.md +94 -0
  92. package/skills/design-templates/clinical-case-report/references/checklist.md +41 -0
  93. package/skills/design-templates/critique/SKILL.md +258 -0
  94. package/skills/design-templates/critique/example.html +671 -0
  95. package/skills/design-templates/dashboard/SKILL.md +76 -0
  96. package/skills/design-templates/dashboard/example.html +118 -0
  97. package/skills/design-templates/dating-web/SKILL.md +92 -0
  98. package/skills/design-templates/dating-web/example.html +265 -0
  99. package/skills/design-templates/dcf-valuation/SKILL.md +140 -0
  100. package/skills/design-templates/dcf-valuation/references/sector-wacc.md +42 -0
  101. package/skills/design-templates/digital-eguide/SKILL.md +94 -0
  102. package/skills/design-templates/digital-eguide/example.html +204 -0
  103. package/skills/design-templates/docs-page/SKILL.md +80 -0
  104. package/skills/design-templates/docs-page/example.html +122 -0
  105. package/skills/design-templates/email-marketing/SKILL.md +84 -0
  106. package/skills/design-templates/email-marketing/example.html +159 -0
  107. package/skills/design-templates/eng-runbook/SKILL.md +51 -0
  108. package/skills/design-templates/eng-runbook/example.html +250 -0
  109. package/skills/design-templates/finance-report/SKILL.md +61 -0
  110. package/skills/design-templates/finance-report/example.html +242 -0
  111. package/skills/design-templates/flowai-live-dashboard-template/SKILL.md +87 -0
  112. package/skills/design-templates/flowai-live-dashboard-template/assets/template.html +387 -0
  113. package/skills/design-templates/flowai-live-dashboard-template/example.html +13 -0
  114. package/skills/design-templates/flowai-live-dashboard-template/references/checklist.md +35 -0
  115. package/skills/design-templates/gamified-app/SKILL.md +108 -0
  116. package/skills/design-templates/gamified-app/example.html +292 -0
  117. package/skills/design-templates/github-dashboard/SKILL.md +130 -0
  118. package/skills/design-templates/github-dashboard/example.html +473 -0
  119. package/skills/design-templates/github-dashboard/references/README.md +10 -0
  120. package/skills/design-templates/github-dashboard/references/artifact-example.json +15 -0
  121. package/skills/design-templates/github-dashboard/references/example-data.json +138 -0
  122. package/skills/design-templates/github-dashboard/references/provenance-example.json +92 -0
  123. package/skills/design-templates/github-dashboard/references/template.html +473 -0
  124. package/skills/design-templates/guizang-ppt/LICENSE +21 -0
  125. package/skills/design-templates/guizang-ppt/README.en.md +119 -0
  126. package/skills/design-templates/guizang-ppt/README.md +120 -0
  127. package/skills/design-templates/guizang-ppt/README.pt-BR.md +121 -0
  128. package/skills/design-templates/guizang-ppt/SKILL.md +313 -0
  129. package/skills/design-templates/guizang-ppt/assets/example-slides.html +318 -0
  130. package/skills/design-templates/guizang-ppt/assets/template.html +647 -0
  131. package/skills/design-templates/guizang-ppt/references/checklist.md +265 -0
  132. package/skills/design-templates/guizang-ppt/references/components.md +363 -0
  133. package/skills/design-templates/guizang-ppt/references/layouts.md +630 -0
  134. package/skills/design-templates/guizang-ppt/references/styles.md +195 -0
  135. package/skills/design-templates/guizang-ppt/references/themes.md +122 -0
  136. package/skills/design-templates/hr-onboarding/SKILL.md +52 -0
  137. package/skills/design-templates/hr-onboarding/example.html +219 -0
  138. package/skills/design-templates/html-ppt/.clawscan-allow +12 -0
  139. package/skills/design-templates/html-ppt/LICENSE +21 -0
  140. package/skills/design-templates/html-ppt/README.md +234 -0
  141. package/skills/design-templates/html-ppt/README.pt-BR.md +239 -0
  142. package/skills/design-templates/html-ppt/README.zh-CN.md +238 -0
  143. package/skills/design-templates/html-ppt/SKILL.md +250 -0
  144. package/skills/design-templates/html-ppt/assets/animations/animations.css +138 -0
  145. package/skills/design-templates/html-ppt/assets/animations/fx/_util.js +63 -0
  146. package/skills/design-templates/html-ppt/assets/animations/fx/chain-react.js +41 -0
  147. package/skills/design-templates/html-ppt/assets/animations/fx/confetti-cannon.js +49 -0
  148. package/skills/design-templates/html-ppt/assets/animations/fx/constellation.js +44 -0
  149. package/skills/design-templates/html-ppt/assets/animations/fx/counter-explosion.js +58 -0
  150. package/skills/design-templates/html-ppt/assets/animations/fx/data-stream.js +45 -0
  151. package/skills/design-templates/html-ppt/assets/animations/fx/firework.js +51 -0
  152. package/skills/design-templates/html-ppt/assets/animations/fx/galaxy-swirl.js +33 -0
  153. package/skills/design-templates/html-ppt/assets/animations/fx/gradient-blob.js +39 -0
  154. package/skills/design-templates/html-ppt/assets/animations/fx/knowledge-graph.js +69 -0
  155. package/skills/design-templates/html-ppt/assets/animations/fx/letter-explode.js +50 -0
  156. package/skills/design-templates/html-ppt/assets/animations/fx/magnetic-field.js +40 -0
  157. package/skills/design-templates/html-ppt/assets/animations/fx/matrix-rain.js +33 -0
  158. package/skills/design-templates/html-ppt/assets/animations/fx/neural-net.js +75 -0
  159. package/skills/design-templates/html-ppt/assets/animations/fx/orbit-ring.js +38 -0
  160. package/skills/design-templates/html-ppt/assets/animations/fx/particle-burst.js +42 -0
  161. package/skills/design-templates/html-ppt/assets/animations/fx/shockwave.js +39 -0
  162. package/skills/design-templates/html-ppt/assets/animations/fx/sparkle-trail.js +62 -0
  163. package/skills/design-templates/html-ppt/assets/animations/fx/starfield.js +30 -0
  164. package/skills/design-templates/html-ppt/assets/animations/fx/typewriter-multi.js +51 -0
  165. package/skills/design-templates/html-ppt/assets/animations/fx/word-cascade.js +47 -0
  166. package/skills/design-templates/html-ppt/assets/animations/fx-runtime.js +99 -0
  167. package/skills/design-templates/html-ppt/assets/base.css +150 -0
  168. package/skills/design-templates/html-ppt/assets/fonts.css +9 -0
  169. package/skills/design-templates/html-ppt/assets/runtime.js +960 -0
  170. package/skills/design-templates/html-ppt/assets/themes/academic-paper.css +23 -0
  171. package/skills/design-templates/html-ppt/assets/themes/arctic-cool.css +14 -0
  172. package/skills/design-templates/html-ppt/assets/themes/aurora.css +20 -0
  173. package/skills/design-templates/html-ppt/assets/themes/bauhaus.css +16 -0
  174. package/skills/design-templates/html-ppt/assets/themes/blueprint.css +19 -0
  175. package/skills/design-templates/html-ppt/assets/themes/catppuccin-latte.css +14 -0
  176. package/skills/design-templates/html-ppt/assets/themes/catppuccin-mocha.css +14 -0
  177. package/skills/design-templates/html-ppt/assets/themes/corporate-clean.css +19 -0
  178. package/skills/design-templates/html-ppt/assets/themes/cyberpunk-neon.css +23 -0
  179. package/skills/design-templates/html-ppt/assets/themes/dracula.css +14 -0
  180. package/skills/design-templates/html-ppt/assets/themes/editorial-serif.css +18 -0
  181. package/skills/design-templates/html-ppt/assets/themes/engineering-whiteprint.css +26 -0
  182. package/skills/design-templates/html-ppt/assets/themes/glassmorphism.css +21 -0
  183. package/skills/design-templates/html-ppt/assets/themes/gruvbox-dark.css +14 -0
  184. package/skills/design-templates/html-ppt/assets/themes/japanese-minimal.css +21 -0
  185. package/skills/design-templates/html-ppt/assets/themes/magazine-bold.css +21 -0
  186. package/skills/design-templates/html-ppt/assets/themes/memphis-pop.css +20 -0
  187. package/skills/design-templates/html-ppt/assets/themes/midcentury.css +19 -0
  188. package/skills/design-templates/html-ppt/assets/themes/minimal-white.css +16 -0
  189. package/skills/design-templates/html-ppt/assets/themes/neo-brutalism.css +17 -0
  190. package/skills/design-templates/html-ppt/assets/themes/news-broadcast.css +20 -0
  191. package/skills/design-templates/html-ppt/assets/themes/nord.css +14 -0
  192. package/skills/design-templates/html-ppt/assets/themes/pitch-deck-vc.css +21 -0
  193. package/skills/design-templates/html-ppt/assets/themes/rainbow-gradient.css +16 -0
  194. package/skills/design-templates/html-ppt/assets/themes/retro-tv.css +22 -0
  195. package/skills/design-templates/html-ppt/assets/themes/rose-pine.css +14 -0
  196. package/skills/design-templates/html-ppt/assets/themes/sharp-mono.css +17 -0
  197. package/skills/design-templates/html-ppt/assets/themes/soft-pastel.css +14 -0
  198. package/skills/design-templates/html-ppt/assets/themes/solarized-light.css +14 -0
  199. package/skills/design-templates/html-ppt/assets/themes/sunset-warm.css +14 -0
  200. package/skills/design-templates/html-ppt/assets/themes/swiss-grid.css +17 -0
  201. package/skills/design-templates/html-ppt/assets/themes/terminal-green.css +18 -0
  202. package/skills/design-templates/html-ppt/assets/themes/tokyo-night.css +14 -0
  203. package/skills/design-templates/html-ppt/assets/themes/vaporwave.css +21 -0
  204. package/skills/design-templates/html-ppt/assets/themes/xiaohongshu-white.css +16 -0
  205. package/skills/design-templates/html-ppt/assets/themes/y2k-chrome.css +20 -0
  206. package/skills/design-templates/html-ppt/docs/readme/_theme-cell.html +56 -0
  207. package/skills/design-templates/html-ppt/docs/readme/animations.png +0 -0
  208. package/skills/design-templates/html-ppt/docs/readme/hero.gif +0 -0
  209. package/skills/design-templates/html-ppt/docs/readme/layouts-live.gif +0 -0
  210. package/skills/design-templates/html-ppt/docs/readme/layouts.png +0 -0
  211. package/skills/design-templates/html-ppt/docs/readme/montage-animations.html +61 -0
  212. package/skills/design-templates/html-ppt/docs/readme/montage-layouts.html +72 -0
  213. package/skills/design-templates/html-ppt/docs/readme/montage-templates.html +72 -0
  214. package/skills/design-templates/html-ppt/docs/readme/montage-themes.html +38 -0
  215. package/skills/design-templates/html-ppt/docs/readme/presenter-mode.png +0 -0
  216. package/skills/design-templates/html-ppt/docs/readme/templates.png +0 -0
  217. package/skills/design-templates/html-ppt/docs/readme/themes.png +0 -0
  218. package/skills/design-templates/html-ppt/examples/demo-deck/index.html +161 -0
  219. package/skills/design-templates/html-ppt/references/animations.md +147 -0
  220. package/skills/design-templates/html-ppt/references/authoring-guide.md +141 -0
  221. package/skills/design-templates/html-ppt/references/full-decks.md +98 -0
  222. package/skills/design-templates/html-ppt/references/layouts.md +103 -0
  223. package/skills/design-templates/html-ppt/references/presenter-mode.md +240 -0
  224. package/skills/design-templates/html-ppt/references/themes.md +107 -0
  225. package/skills/design-templates/html-ppt/scripts/new-deck.sh +46 -0
  226. package/skills/design-templates/html-ppt/scripts/render.sh +71 -0
  227. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_01.png +0 -0
  228. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_02.png +0 -0
  229. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_03.png +0 -0
  230. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_04.png +0 -0
  231. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_05.png +0 -0
  232. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_06.png +0 -0
  233. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_07.png +0 -0
  234. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_08.png +0 -0
  235. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_09.png +0 -0
  236. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_10.png +0 -0
  237. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_11.png +0 -0
  238. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_12.png +0 -0
  239. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_13.png +0 -0
  240. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_14.png +0 -0
  241. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_15.png +0 -0
  242. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_16.png +0 -0
  243. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_17.png +0 -0
  244. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_18.png +0 -0
  245. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_19.png +0 -0
  246. package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_20.png +0 -0
  247. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_01.png +0 -0
  248. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_02.png +0 -0
  249. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_03.png +0 -0
  250. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_04.png +0 -0
  251. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_05.png +0 -0
  252. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_06.png +0 -0
  253. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_07.png +0 -0
  254. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_08.png +0 -0
  255. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_09.png +0 -0
  256. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_10.png +0 -0
  257. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_11.png +0 -0
  258. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_12.png +0 -0
  259. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_13.png +0 -0
  260. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_14.png +0 -0
  261. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_15.png +0 -0
  262. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_16.png +0 -0
  263. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_17.png +0 -0
  264. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_18.png +0 -0
  265. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_19.png +0 -0
  266. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_20.png +0 -0
  267. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_21.png +0 -0
  268. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_22.png +0 -0
  269. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_23.png +0 -0
  270. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_24.png +0 -0
  271. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_25.png +0 -0
  272. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_26.png +0 -0
  273. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_27.png +0 -0
  274. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_28.png +0 -0
  275. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_29.png +0 -0
  276. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_30.png +0 -0
  277. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_31.png +0 -0
  278. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_32.png +0 -0
  279. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_33.png +0 -0
  280. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_34.png +0 -0
  281. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_35.png +0 -0
  282. package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_36.png +0 -0
  283. package/skills/design-templates/html-ppt/templates/animation-showcase.html +172 -0
  284. package/skills/design-templates/html-ppt/templates/deck.html +69 -0
  285. package/skills/design-templates/html-ppt/templates/full-decks/course-module/README.md +8 -0
  286. package/skills/design-templates/html-ppt/templates/full-decks/course-module/index.html +189 -0
  287. package/skills/design-templates/html-ppt/templates/full-decks/course-module/style.css +46 -0
  288. package/skills/design-templates/html-ppt/templates/full-decks/dir-key-nav-minimal/README.md +11 -0
  289. package/skills/design-templates/html-ppt/templates/full-decks/dir-key-nav-minimal/index.html +138 -0
  290. package/skills/design-templates/html-ppt/templates/full-decks/dir-key-nav-minimal/style.css +60 -0
  291. package/skills/design-templates/html-ppt/templates/full-decks/graphify-dark-graph/README.md +11 -0
  292. package/skills/design-templates/html-ppt/templates/full-decks/graphify-dark-graph/index.html +180 -0
  293. package/skills/design-templates/html-ppt/templates/full-decks/graphify-dark-graph/style.css +54 -0
  294. package/skills/design-templates/html-ppt/templates/full-decks/hermes-cyber-terminal/README.md +11 -0
  295. package/skills/design-templates/html-ppt/templates/full-decks/hermes-cyber-terminal/index.html +199 -0
  296. package/skills/design-templates/html-ppt/templates/full-decks/hermes-cyber-terminal/style.css +55 -0
  297. package/skills/design-templates/html-ppt/templates/full-decks/knowledge-arch-blueprint/README.md +11 -0
  298. package/skills/design-templates/html-ppt/templates/full-decks/knowledge-arch-blueprint/index.html +190 -0
  299. package/skills/design-templates/html-ppt/templates/full-decks/knowledge-arch-blueprint/style.css +49 -0
  300. package/skills/design-templates/html-ppt/templates/full-decks/obsidian-claude-gradient/README.md +11 -0
  301. package/skills/design-templates/html-ppt/templates/full-decks/obsidian-claude-gradient/index.html +144 -0
  302. package/skills/design-templates/html-ppt/templates/full-decks/obsidian-claude-gradient/style.css +59 -0
  303. package/skills/design-templates/html-ppt/templates/full-decks/pitch-deck/README.md +9 -0
  304. package/skills/design-templates/html-ppt/templates/full-decks/pitch-deck/index.html +148 -0
  305. package/skills/design-templates/html-ppt/templates/full-decks/pitch-deck/style.css +40 -0
  306. package/skills/design-templates/html-ppt/templates/full-decks/presenter-mode-reveal/README.md +102 -0
  307. package/skills/design-templates/html-ppt/templates/full-decks/presenter-mode-reveal/index.html +187 -0
  308. package/skills/design-templates/html-ppt/templates/full-decks/presenter-mode-reveal/style.css +216 -0
  309. package/skills/design-templates/html-ppt/templates/full-decks/product-launch/README.md +8 -0
  310. package/skills/design-templates/html-ppt/templates/full-decks/product-launch/index.html +121 -0
  311. package/skills/design-templates/html-ppt/templates/full-decks/product-launch/style.css +39 -0
  312. package/skills/design-templates/html-ppt/templates/full-decks/tech-sharing/README.md +8 -0
  313. package/skills/design-templates/html-ppt/templates/full-decks/tech-sharing/index.html +156 -0
  314. package/skills/design-templates/html-ppt/templates/full-decks/tech-sharing/style.css +49 -0
  315. package/skills/design-templates/html-ppt/templates/full-decks/testing-safety-alert/README.md +11 -0
  316. package/skills/design-templates/html-ppt/templates/full-decks/testing-safety-alert/index.html +183 -0
  317. package/skills/design-templates/html-ppt/templates/full-decks/testing-safety-alert/style.css +62 -0
  318. package/skills/design-templates/html-ppt/templates/full-decks/weekly-report/README.md +8 -0
  319. package/skills/design-templates/html-ppt/templates/full-decks/weekly-report/index.html +127 -0
  320. package/skills/design-templates/html-ppt/templates/full-decks/weekly-report/style.css +55 -0
  321. package/skills/design-templates/html-ppt/templates/full-decks/xhs-pastel-card/README.md +11 -0
  322. package/skills/design-templates/html-ppt/templates/full-decks/xhs-pastel-card/index.html +147 -0
  323. package/skills/design-templates/html-ppt/templates/full-decks/xhs-pastel-card/style.css +66 -0
  324. package/skills/design-templates/html-ppt/templates/full-decks/xhs-post/README.md +9 -0
  325. package/skills/design-templates/html-ppt/templates/full-decks/xhs-post/index.html +133 -0
  326. package/skills/design-templates/html-ppt/templates/full-decks/xhs-post/style.css +47 -0
  327. package/skills/design-templates/html-ppt/templates/full-decks/xhs-white-editorial/README.md +11 -0
  328. package/skills/design-templates/html-ppt/templates/full-decks/xhs-white-editorial/index.html +187 -0
  329. package/skills/design-templates/html-ppt/templates/full-decks/xhs-white-editorial/style.css +63 -0
  330. package/skills/design-templates/html-ppt/templates/full-decks-index.html +82 -0
  331. package/skills/design-templates/html-ppt/templates/layout-showcase.html +47 -0
  332. package/skills/design-templates/html-ppt/templates/single-page/arch-diagram.html +46 -0
  333. package/skills/design-templates/html-ppt/templates/single-page/big-quote.html +18 -0
  334. package/skills/design-templates/html-ppt/templates/single-page/bullets.html +19 -0
  335. package/skills/design-templates/html-ppt/templates/single-page/chart-bar.html +30 -0
  336. package/skills/design-templates/html-ppt/templates/single-page/chart-line.html +35 -0
  337. package/skills/design-templates/html-ppt/templates/single-page/chart-pie.html +36 -0
  338. package/skills/design-templates/html-ppt/templates/single-page/chart-radar.html +31 -0
  339. package/skills/design-templates/html-ppt/templates/single-page/code.html +33 -0
  340. package/skills/design-templates/html-ppt/templates/single-page/comparison.html +47 -0
  341. package/skills/design-templates/html-ppt/templates/single-page/cover.html +32 -0
  342. package/skills/design-templates/html-ppt/templates/single-page/cta.html +27 -0
  343. package/skills/design-templates/html-ppt/templates/single-page/diff.html +35 -0
  344. package/skills/design-templates/html-ppt/templates/single-page/flow-diagram.html +33 -0
  345. package/skills/design-templates/html-ppt/templates/single-page/gantt.html +29 -0
  346. package/skills/design-templates/html-ppt/templates/single-page/image-grid.html +34 -0
  347. package/skills/design-templates/html-ppt/templates/single-page/image-hero.html +33 -0
  348. package/skills/design-templates/html-ppt/templates/single-page/kpi-grid.html +19 -0
  349. package/skills/design-templates/html-ppt/templates/single-page/mindmap.html +38 -0
  350. package/skills/design-templates/html-ppt/templates/single-page/process-steps.html +27 -0
  351. package/skills/design-templates/html-ppt/templates/single-page/pros-cons.html +31 -0
  352. package/skills/design-templates/html-ppt/templates/single-page/roadmap.html +46 -0
  353. package/skills/design-templates/html-ppt/templates/single-page/section-divider.html +17 -0
  354. package/skills/design-templates/html-ppt/templates/single-page/stat-highlight.html +17 -0
  355. package/skills/design-templates/html-ppt/templates/single-page/table.html +33 -0
  356. package/skills/design-templates/html-ppt/templates/single-page/terminal.html +35 -0
  357. package/skills/design-templates/html-ppt/templates/single-page/thanks.html +21 -0
  358. package/skills/design-templates/html-ppt/templates/single-page/three-column.html +18 -0
  359. package/skills/design-templates/html-ppt/templates/single-page/timeline.html +32 -0
  360. package/skills/design-templates/html-ppt/templates/single-page/toc.html +26 -0
  361. package/skills/design-templates/html-ppt/templates/single-page/todo-checklist.html +33 -0
  362. package/skills/design-templates/html-ppt/templates/single-page/two-column.html +39 -0
  363. package/skills/design-templates/html-ppt/templates/theme-showcase.html +151 -0
  364. package/skills/design-templates/html-ppt-course-module/SKILL.md +78 -0
  365. package/skills/design-templates/html-ppt-course-module/example.html +542 -0
  366. package/skills/design-templates/html-ppt-dir-key-nav-minimal/SKILL.md +77 -0
  367. package/skills/design-templates/html-ppt-dir-key-nav-minimal/example.html +366 -0
  368. package/skills/design-templates/html-ppt-graphify-dark-graph/SKILL.md +77 -0
  369. package/skills/design-templates/html-ppt-graphify-dark-graph/example.html +402 -0
  370. package/skills/design-templates/html-ppt-hermes-cyber-terminal/SKILL.md +77 -0
  371. package/skills/design-templates/html-ppt-hermes-cyber-terminal/example.html +422 -0
  372. package/skills/design-templates/html-ppt-knowledge-arch-blueprint/SKILL.md +77 -0
  373. package/skills/design-templates/html-ppt-knowledge-arch-blueprint/example.html +407 -0
  374. package/skills/design-templates/html-ppt-obsidian-claude-gradient/SKILL.md +77 -0
  375. package/skills/design-templates/html-ppt-obsidian-claude-gradient/example.html +371 -0
  376. package/skills/design-templates/html-ppt-pitch-deck/SKILL.md +78 -0
  377. package/skills/design-templates/html-ppt-pitch-deck/example.html +495 -0
  378. package/skills/design-templates/html-ppt-presenter-mode-reveal/SKILL.md +78 -0
  379. package/skills/design-templates/html-ppt-presenter-mode-reveal/example.html +725 -0
  380. package/skills/design-templates/html-ppt-product-launch/SKILL.md +77 -0
  381. package/skills/design-templates/html-ppt-product-launch/example.html +467 -0
  382. package/skills/design-templates/html-ppt-taste-brutalist/SKILL.md +70 -0
  383. package/skills/design-templates/html-ppt-taste-brutalist/example.html +774 -0
  384. package/skills/design-templates/html-ppt-taste-editorial/SKILL.md +62 -0
  385. package/skills/design-templates/html-ppt-taste-editorial/example.html +689 -0
  386. package/skills/design-templates/html-ppt-tech-sharing/SKILL.md +77 -0
  387. package/skills/design-templates/html-ppt-tech-sharing/example.html +512 -0
  388. package/skills/design-templates/html-ppt-testing-safety-alert/SKILL.md +78 -0
  389. package/skills/design-templates/html-ppt-testing-safety-alert/example.html +413 -0
  390. package/skills/design-templates/html-ppt-weekly-report/SKILL.md +77 -0
  391. package/skills/design-templates/html-ppt-weekly-report/example.html +489 -0
  392. package/skills/design-templates/html-ppt-xhs-pastel-card/SKILL.md +78 -0
  393. package/skills/design-templates/html-ppt-xhs-pastel-card/example.html +381 -0
  394. package/skills/design-templates/html-ppt-xhs-post/SKILL.md +78 -0
  395. package/skills/design-templates/html-ppt-xhs-post/example.html +487 -0
  396. package/skills/design-templates/html-ppt-xhs-white-editorial/SKILL.md +77 -0
  397. package/skills/design-templates/html-ppt-xhs-white-editorial/example.html +418 -0
  398. package/skills/design-templates/html-ppt-zhangzara-8-bit-orbit/LICENSE +21 -0
  399. package/skills/design-templates/html-ppt-zhangzara-8-bit-orbit/SKILL.md +93 -0
  400. package/skills/design-templates/html-ppt-zhangzara-8-bit-orbit/example.html +1640 -0
  401. package/skills/design-templates/html-ppt-zhangzara-8-bit-orbit/template.json +48 -0
  402. package/skills/design-templates/html-ppt-zhangzara-biennale-yellow/LICENSE +21 -0
  403. package/skills/design-templates/html-ppt-zhangzara-biennale-yellow/SKILL.md +93 -0
  404. package/skills/design-templates/html-ppt-zhangzara-biennale-yellow/example.html +833 -0
  405. package/skills/design-templates/html-ppt-zhangzara-biennale-yellow/template.json +49 -0
  406. package/skills/design-templates/html-ppt-zhangzara-block-frame/LICENSE +21 -0
  407. package/skills/design-templates/html-ppt-zhangzara-block-frame/SKILL.md +93 -0
  408. package/skills/design-templates/html-ppt-zhangzara-block-frame/example.html +1453 -0
  409. package/skills/design-templates/html-ppt-zhangzara-block-frame/template.json +47 -0
  410. package/skills/design-templates/html-ppt-zhangzara-blue-professional/LICENSE +21 -0
  411. package/skills/design-templates/html-ppt-zhangzara-blue-professional/SKILL.md +93 -0
  412. package/skills/design-templates/html-ppt-zhangzara-blue-professional/example.html +1423 -0
  413. package/skills/design-templates/html-ppt-zhangzara-blue-professional/template.json +44 -0
  414. package/skills/design-templates/html-ppt-zhangzara-bold-poster/LICENSE +21 -0
  415. package/skills/design-templates/html-ppt-zhangzara-bold-poster/SKILL.md +93 -0
  416. package/skills/design-templates/html-ppt-zhangzara-bold-poster/example.html +876 -0
  417. package/skills/design-templates/html-ppt-zhangzara-bold-poster/template.json +45 -0
  418. package/skills/design-templates/html-ppt-zhangzara-broadside/LICENSE +21 -0
  419. package/skills/design-templates/html-ppt-zhangzara-broadside/SKILL.md +92 -0
  420. package/skills/design-templates/html-ppt-zhangzara-broadside/example.html +2144 -0
  421. package/skills/design-templates/html-ppt-zhangzara-broadside/template.json +49 -0
  422. package/skills/design-templates/html-ppt-zhangzara-capsule/LICENSE +21 -0
  423. package/skills/design-templates/html-ppt-zhangzara-capsule/SKILL.md +92 -0
  424. package/skills/design-templates/html-ppt-zhangzara-capsule/example.html +1413 -0
  425. package/skills/design-templates/html-ppt-zhangzara-capsule/template.json +51 -0
  426. package/skills/design-templates/html-ppt-zhangzara-cartesian/LICENSE +21 -0
  427. package/skills/design-templates/html-ppt-zhangzara-cartesian/SKILL.md +92 -0
  428. package/skills/design-templates/html-ppt-zhangzara-cartesian/example.html +1136 -0
  429. package/skills/design-templates/html-ppt-zhangzara-cartesian/template.json +47 -0
  430. package/skills/design-templates/html-ppt-zhangzara-cobalt-grid/LICENSE +21 -0
  431. package/skills/design-templates/html-ppt-zhangzara-cobalt-grid/SKILL.md +93 -0
  432. package/skills/design-templates/html-ppt-zhangzara-cobalt-grid/example.html +1205 -0
  433. package/skills/design-templates/html-ppt-zhangzara-cobalt-grid/template.json +49 -0
  434. package/skills/design-templates/html-ppt-zhangzara-coral/LICENSE +21 -0
  435. package/skills/design-templates/html-ppt-zhangzara-coral/SKILL.md +92 -0
  436. package/skills/design-templates/html-ppt-zhangzara-coral/example.html +1487 -0
  437. package/skills/design-templates/html-ppt-zhangzara-coral/template.json +45 -0
  438. package/skills/design-templates/html-ppt-zhangzara-creative-mode/LICENSE +21 -0
  439. package/skills/design-templates/html-ppt-zhangzara-creative-mode/SKILL.md +99 -0
  440. package/skills/design-templates/html-ppt-zhangzara-creative-mode/assets/deck-stage.js +619 -0
  441. package/skills/design-templates/html-ppt-zhangzara-creative-mode/example.html +636 -0
  442. package/skills/design-templates/html-ppt-zhangzara-creative-mode/template.json +47 -0
  443. package/skills/design-templates/html-ppt-zhangzara-daisy-days/LICENSE +21 -0
  444. package/skills/design-templates/html-ppt-zhangzara-daisy-days/SKILL.md +93 -0
  445. package/skills/design-templates/html-ppt-zhangzara-daisy-days/example.html +469 -0
  446. package/skills/design-templates/html-ppt-zhangzara-daisy-days/template.json +54 -0
  447. package/skills/design-templates/html-ppt-zhangzara-editorial-tri-tone/LICENSE +21 -0
  448. package/skills/design-templates/html-ppt-zhangzara-editorial-tri-tone/SKILL.md +98 -0
  449. package/skills/design-templates/html-ppt-zhangzara-editorial-tri-tone/assets/deck-stage.js +619 -0
  450. package/skills/design-templates/html-ppt-zhangzara-editorial-tri-tone/example.html +737 -0
  451. package/skills/design-templates/html-ppt-zhangzara-editorial-tri-tone/template.json +44 -0
  452. package/skills/design-templates/html-ppt-zhangzara-grove/LICENSE +21 -0
  453. package/skills/design-templates/html-ppt-zhangzara-grove/SKILL.md +92 -0
  454. package/skills/design-templates/html-ppt-zhangzara-grove/example.html +1676 -0
  455. package/skills/design-templates/html-ppt-zhangzara-grove/template.json +51 -0
  456. package/skills/figma-code-connect-components/SKILL.md +42 -0
  457. package/skills/figma-create-design-system-rules/SKILL.md +42 -0
  458. package/skills/figma-create-new-file/SKILL.md +41 -0
  459. package/skills/figma-generate-design/SKILL.md +42 -0
  460. package/skills/figma-generate-library/SKILL.md +42 -0
  461. package/skills/figma-implement-design/SKILL.md +42 -0
  462. package/skills/figma-use/SKILL.md +42 -0
  463. package/skills/full-page-screenshot/SKILL.md +42 -0
  464. package/skills/interview-me/SKILL.md +64 -0
  465. package/skills/planning-and-task-breakdown/SKILL.md +52 -0
  466. package/skills/sora/SKILL.md +43 -0
  467. package/skills/theme-factory/SKILL.md +43 -0
  468. package/skills/web-design-guidelines/SKILL.md +42 -0
  469. package/dist/agents/prompt-library/orchestration.d.ts +0 -4
  470. package/skills/brainstorming/SKILL.md +0 -164
  471. package/skills/brainstorming/scripts/frame-template.html +0 -214
  472. package/skills/brainstorming/scripts/helper.js +0 -88
  473. package/skills/brainstorming/scripts/server.cjs +0 -354
  474. package/skills/brainstorming/scripts/start-server.sh +0 -148
  475. package/skills/brainstorming/scripts/stop-server.sh +0 -56
  476. package/skills/brainstorming/spec-document-reviewer-prompt.md +0 -49
  477. package/skills/brainstorming/visual-companion.md +0 -287
package/.env.example CHANGED
@@ -22,6 +22,7 @@
22
22
  # FIRECRAWL_API_KEY=your_firecrawl_api_key_here
23
23
 
24
24
  # Optional - Context7 code search MCP
25
+ # CONTEXT7_API_KEY=your_context7_api_key_here
25
26
 
26
27
  # Local Model Helpers
27
28
 
@@ -46,6 +47,9 @@
46
47
 
47
48
  # Optional - controls automatic .mcp.json export when the plugin loads.
48
49
  # Values: if-missing (default), always (managed files only), force, 0/false/no/off.
50
+ # Optional - log level for hiai-opencode (debug, info, warn, error)
51
+ # HIAI_OPENCODE_LOG_LEVEL=info
52
+
49
53
  # HIAI_OPENCODE_AUTO_EXPORT_MCP=if-missing
50
54
 
51
55
  # Optional - override static MCP export path.
package/AGENTS.md CHANGED
@@ -223,13 +223,13 @@ Use this table when you need to change something and want the right file immedia
223
223
  | Change a user-facing default model slot | [hiai-opencode.json](hiai-opencode.json) | This is the canonical model source |
224
224
  | Change how categories inherit the 10 model slots | [src/config/defaults.ts](src/config/defaults.ts) | Category routing is internal |
225
225
  | Change MCP/LSP user-facing switches | [hiai-opencode.json](hiai-opencode.json) | Users only toggle enabled state there |
226
- | Change Bob behavior or prompt text | [src/agents/bob.ts](src/agents/bob.ts), `src/agents/bob/*` | Bob prompt authoring lives there |
226
+ | Change Bob behavior or prompt text | `src/agents/bob/*` | Bob prompt authoring lives there |
227
227
  | Change Coder behavior or prompt text | `src/agents/coder/*` | Coder prompt authoring lives there |
228
228
  | Change Strategist behavior or prompt text | `src/agents/strategist/*` | Strategist prompt authoring lives there |
229
229
  | Change Manager behavior or prompt text | `src/agents/manager/*` | Manager prompt authoring lives there |
230
230
  | Change Critic prompt text | `src/agents/critic/*` | Critic prompt authoring lives there |
231
231
  | Change Vision prompt text | [src/agents/ui.ts](src/agents/ui.ts) | Vision lives there |
232
- | Change Manager prompt text | [src/agents/platform-manager.ts](src/agents/platform-manager.ts) | Manager lives there |
232
+ | Change Manager prompt text | `src/agents/manager/*` | Manager lives there |
233
233
  | Change reusable policy blocks used by several agents | `src/agents/prompt-library/*` | Shared prompt sections live there |
234
234
  | Change dynamic prompt sections assembled from agent/tool/category context | `src/agents/dynamic-agent-*` | Dynamic sections are built there |
235
235
  | Change runtime display names | [src/shared/agent-display-names.ts](src/shared/agent-display-names.ts) | Final display-name mapping lives there |
@@ -256,21 +256,20 @@ Prompting is layered.
256
256
 
257
257
  These decide the high-level config object for each agent:
258
258
 
259
- - Bob: [src/agents/bob.ts](src/agents/bob.ts)
259
+ - Bob: `src/agents/bob/*`
260
260
  - Coder: `src/agents/coder/*`
261
261
  - Strategist: `src/agents/strategist/*`
262
262
  - Manager: `src/agents/manager/*`
263
263
  - Critic: `src/agents/critic/*`
264
264
  - Vision: [src/agents/ui.ts](src/agents/ui.ts)
265
- - Manager: [src/agents/platform-manager.ts](src/agents/platform-manager.ts)
266
265
  - Researcher: [src/agents/researcher.ts](src/agents/researcher.ts)
267
266
 
268
267
  ### Layer 2: Model-Specific Prompt Variants
269
268
 
270
269
  Examples:
271
270
 
272
- - Bob: `src/agents/bob.ts` (single file — variants are merged via factory logic)
273
- - Coder: `src/agents/coder/agent.ts`, `src/agents/coder/gpt.ts` (model routing via index.ts)
271
+ - Bob: `src/agents/bob/claude.ts`, `src/agents/bob/gpt.ts` (model routing via index.ts)
272
+ - Coder: `src/agents/coder/agent.ts`, `src/agents/coder/core.ts` (model routing via index.ts)
274
273
  - Strategist: `src/agents/strategist/index.ts` (mode variants via sub-directory files)
275
274
  - Manager: `src/agents/manager/agent.ts`, `src/agents/manager/default.ts`, `src/agents/manager/default-prompt-sections.ts`
276
275
 
@@ -422,13 +421,13 @@ Model provider credentials are configured through OpenCode Connect. Do not ask u
422
421
 
423
422
  Common service keys:
424
423
 
425
- - `STITCH_AI_API_KEY`
426
- - `FIRECRAWL_API_KEY`
427
- - `CONTEXT7_API_KEY`
424
+ - `STITCH_AI_API_KEY` (MCP)
425
+ - `FIRECRAWL_API_KEY` (CLI skill, not MCP)
426
+ - `CONTEXT7_API_KEY` (MCP)
428
427
  - `OLLAMA_BASE_URL`
429
428
  - `OLLAMA_MODEL`
430
- - `MEMPALACE_PYTHON`
431
- - `MEMPALACE_PALACE_PATH`
429
+ - `MEMPALACE_PYTHON` (MCP)
430
+ - `MEMPALACE_PALACE_PATH` (MCP)
432
431
 
433
432
  - `HIAI_MCP_AUTO_INSTALL`
434
433
  - `HIAI_OPENCODE_AUTO_EXPORT_MCP`
@@ -455,12 +454,14 @@ AGENTS:
455
454
  agent-skills — skill registry, discovery
456
455
 
457
456
  MCP INTEGRATIONS (who uses what):
458
- Stitch -> designer (UI generation)
459
- Firecrawl -> researcher (CLI skill)
460
- Context7 -> researcher, coder (lib docs)
461
- grep_app -> researcher (OSS code patterns)
462
- MemPalace -> manager (primary), all agents (search before answer)
463
- Sequential-Thinking -> strategist, critic (deep reasoning)
457
+ Stitch -> designer (UI generation) [MCP]
458
+ Context7 -> researcher, coder (lib docs) [MCP]
459
+ grep_app -> researcher (OSS code patterns) [MCP]
460
+ MemPalace -> manager (primary), all agents (search before answer) [MCP]
461
+ Sequential-Thinking -> strategist, critic (deep reasoning) [MCP]
462
+
463
+ CLI SKILLS (not MCP):
464
+ Firecrawl -> researcher (web scraping, crawl, extract, search)
464
465
 
465
466
  LSP:
466
467
  typescript, svelte, eslint, bash, pyright
@@ -498,20 +499,20 @@ All agents MUST wrap their final response in a structured `<CLOSURE>` block. Thi
498
499
 
499
500
  ### Readiness Values
500
501
 
501
- | Value | Meaning |
502
- |-------|---------|
503
- | `done` | Task completed successfully |
504
- | `accept` | Reviewer approved the proposed changes |
505
- | `reject` | Reviewer denied the changes with feedback |
502
+ | Value | Meaning | Used By |
503
+ |-------|---------|---------|
504
+ | `done` | Task completed successfully | All agents |
505
+ | `accept` | Reviewer approved the proposed changes | Critic, Quality Guardian |
506
+ | `reject` | Reviewer denied the changes with feedback | Critic, Quality Guardian |
506
507
 
507
508
  **WARNING**: Responses without a valid `<CLOSURE>` block will be automatically REJECTED by the system.
508
509
 
509
510
  ### Relationship to `<promise>DONE</promise>`
510
511
 
511
- The ralph-loop continuation system uses `<promise>DONE</promise>` as its signal to stop iterating. This is separate from `<CLOSURE>`:
512
+ The ralph-loop and ULW loop continuation systems use `<promise>DONE</promise>` as their signal to stop iterating. This is separate from `<CLOSURE>`:
512
513
 
513
514
  - `<CLOSURE>` — task completion marker, required on every agent response
514
- - `<promise>DONE</promise>` — ralph-loop continuation signal, stops the loop when emitted
515
+ - `<promise>DONE</promise>` — ralph-loop/ULW loop continuation signal, stops the loop when emitted
515
516
 
516
517
  Both can appear together; they do not conflict. The closure validator lives in [src/shared/closure-protocol.ts](src/shared/closure-protocol.ts).
517
518
 
@@ -546,20 +547,13 @@ If an agent response is missing `<CLOSURE>` at runtime but the source prompts lo
546
547
 
547
548
  ### Firecrawl tools return "FIRECRAWL_API_KEY missing" despite having the key set
548
549
 
549
- The `skill_mcp` env scrubber strips secret-shaped env vars before launching stdio MCP servers. If your key only lives in `process.env`, move it into the explicit `environment` block in `hiai-opencode.json`:
550
+ Firecrawl is a CLI skill (not an MCP server). The `FIRECRAWL_API_KEY` env var must be available in the shell environment where the CLI skill runs. If your key only lives in `process.env`, export it before starting OpenCode:
550
551
 
551
- ```json
552
- {
553
- "mcp": {
554
- "firecrawl-cli": {
555
- "enabled": true,
556
- "environment": { "FIRECRAWL_API_KEY": "fc-..." }
557
- }
558
- }
559
- }
552
+ ```bash
553
+ export FIRECRAWL_API_KEY=fc-...
560
554
  ```
561
555
 
562
- This bypasses the filter because explicit `environment` entries are an allowlist.
556
+ Or set it in `.env` in your project root. Firecrawl is NOT configured via `hiai-opencode.json` MCP section.
563
557
 
564
558
  ### Browser Automation (agent-browser)
565
559
 
@@ -623,7 +617,7 @@ Inspect layer 6 first when runtime output diverges from source.
623
617
 
624
618
  ### Installing MCP server packages as OpenCode plugins
625
619
 
626
- MCP servers (`firecrawl-mcp`, `@modelcontextprotocol/server-sequential-thinking`) are NOT OpenCode plugins. Adding them to the `plugin` array in `opencode.json` will not work.
620
+ MCP servers (`@modelcontextprotocol/server-sequential-thinking`, `@upstash/context7-mcp`) are NOT OpenCode plugins. Adding them to the `plugin` array in `opencode.json` will not work. Note: Firecrawl is a CLI skill, not an MCP server.
627
621
 
628
622
  Register only `@hiai-gg/hiai-opencode` as a plugin. MCP wiring is handled through the `mcp` object in `hiai-opencode.json`.
629
623
 
@@ -638,14 +632,16 @@ Never put actual API key values in `hiai-opencode.json`. Use `{env:VARIABLE_NAME
638
632
  ```json
639
633
  {
640
634
  "mcp": {
641
- "firecrawl-cli": {
635
+ "stitch": {
642
636
  "enabled": true,
643
- "environment": { "FIRECRAWL_API_KEY": "{env:FIRECRAWL_API_KEY}" }
637
+ "environment": { "STITCH_AI_API_KEY": "{env:STITCH_AI_API_KEY}" }
644
638
  }
645
639
  }
646
640
  }
647
641
  ```
648
642
 
643
+ Note: Firecrawl is a CLI skill, not an MCP server. Its `FIRECRAWL_API_KEY` is set via shell env or `.env`, not in the `mcp` config block.
644
+
649
645
  Check with: `grep -E '(AQ\.|fc-|ctx7sk-|sk-|key-)' hiai-opencode.json` — should return 0 matches.
650
646
 
651
647
  ### Enabling all skill sources
package/ARCHITECTURE.md CHANGED
@@ -259,12 +259,13 @@ Current MCP set:
259
259
 
260
260
  - `stitch`
261
261
  - `sequential-thinking`
262
- - `firecrawl` (CLI skill, not MCP)
263
262
  - `mempalace`
264
263
  - `context7`
265
- - `websearch`
266
264
  - `grep_app`
267
- - `agent-browser` (CLI skill, not MCP)
265
+
266
+ CLI skills (not MCP):
267
+ - `firecrawl` — web scraping, crawl, extract, search
268
+ - `agent-browser` — browser automation via Chrome CDP
268
269
 
269
270
  ## LSP
270
271
 
package/LICENSE.md CHANGED
@@ -33,6 +33,7 @@ Some are:
33
33
  | Firecrawl CLI skill | [firecrawl/firecrawl](https://github.com/firecrawl/firecrawl) | CLI-based web scraping, crawl, extract, search |
34
34
  | Context7 MCP | [upstash/context7](https://github.com/upstash/context7) | external MCP |
35
35
  | bun-pty / PTY ecosystem | [shekohex/opencode-pty](https://github.com/shekohex/opencode-pty) | PTY/runtime integration influence |
36
+ | Design skills, design systems, craft guidelines, prompt templates | [nexu-io/open-design](https://github.com/nexu-io/open-design) | Apache 2.0 — bundled skill definitions, 150+ brand DESIGN.md files, craft typography/color/UX guidelines, image/video prompt templates |
36
37
 
37
38
  ## What Is Bundled vs External
38
39
 
@@ -58,3 +59,16 @@ If you publish this package publicly:
58
59
  - keep upstream links accurate
59
60
  - do not imply ownership of upstream MCP servers or external plugins
60
61
  - document clearly when a dependency is external rather than bundled
62
+
63
+ ## Third-party: open-design
64
+
65
+ This project includes content from [nexu-io/open-design](https://github.com/nexu-io/open-design).
66
+ Copyright (c) nexu-io.
67
+ Licensed under the Apache License, Version 2.0.
68
+ Full license: https://github.com/nexu-io/open-design/blob/main/LICENSE
69
+
70
+ Included content:
71
+ - `skills/` — 130+ skill definitions with SKILL.md prompts and checklists
72
+ - `design-systems/` — 150+ brand DESIGN.md files with tokens.css and components.html
73
+ - `prompt-templates/` — image and video prompt templates
74
+ - `craft/` — typography, color, accessibility, animation, and UX guidelines
package/README.md CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  - **14-agent canonical model (9 visible + 5 hidden)** with peer-aware prompts — Bob orchestrates, Coder/Sub implement, Strategist plans, Critic gates, Researcher discovers via Context7/Firecrawl/grep_app/MemPalace, Designer drives Stitch UI generation, Writer owns copy/SEO, Vision extracts PDFs/images, Manager keeps memory, Quality Guardian reviews, Sandbox sandboxes bash.
12
12
  - **Mode → agent routing** for `task()` delegation — `quick`/`bounded`/`unspecified-low` → Sub, `deep`/`cross-module` → Coder, `ultrabrain` → Strategist, `visual-engineering`/`artistry` → Designer, `writing` → Writer, `git-ops` → Manager. No more "everything routes to coder".
13
- - **MCP wiring out of the box** — Stitch, Firecrawl, Context7, grep_app, MemPalace, Sequential-Thinking. Each agent's prompt knows which MCP servers it owns.
13
+ - **MCP wiring out of the box** — Stitch, Context7, grep_app, MemPalace, Sequential-Thinking. Each agent's prompt knows which MCP servers it owns. Firecrawl is available as a CLI skill (not MCP).
14
14
  - **LSP defaults** for TypeScript, Svelte, ESLint, Bash, Pyright. Coder must run `lsp_diagnostics` after every edit.
15
15
  - **Permission discipline** — read-only agents cannot delegate; write-capable agents have explicit file-scope limits.
16
16
 
@@ -54,7 +54,7 @@ For the full operator playbook, see [AGENTS.md](AGENTS.md). 🤖
54
54
  | `Manager` | Delegation orchestrator, TODO tracker | Coordinates specialists, maintains session continuity |
55
55
  | `Critic` | Review gate, high-accuracy verification | Plan review, code review, regression catch |
56
56
  | `Designer` | UI/visual direction via Stitch MCP | Visual problems, design systems, screen generation |
57
- | `Researcher` | Local + external search | Codebase exploration, documentation discovery |
57
+ | `Researcher` | Local + external search | Codebase exploration, documentation discovery via Context7/grep_app/Firecrawl CLI/MemPalace |
58
58
  | `Writer` | Content, copy, positioning, SEO | Website copy, product messaging, naming |
59
59
  | `Vision` | PDF/image/diagram extraction, browser UI verification | Multimodal analysis, live browser verification |
60
60
 
@@ -97,12 +97,40 @@ MCP integrations and which agents use them:
97
97
  | MemPalace | MEMPALACE_PYTHON (optional) | Manager (primary), all agents | Project memory and past decisions |
98
98
  | Sequential-Thinking | — | Strategist, Critic | Deep reasoning for planning/review |
99
99
 
100
+ ## Design System
101
+
102
+ The plugin bundles a comprehensive design library sourced from [nexu-io/open-design](https://github.com/nexu-io/open-design) (Apache 2.0).
103
+
104
+ **150+ brand design systems** in `design-systems/` — each contains:
105
+ - `DESIGN.md` — brand voice, typography, color palette, component patterns, layout principles
106
+ - `tokens.css` — CSS custom properties for colors, spacing, typography, shadows
107
+ - `components.html` — reference HTML for key UI components
108
+
109
+ Brands include: Apple, Linear, Stripe, Vercel, Airbnb, BMW, Spotify, Notion, Figma, Supabase, and 140+ more.
110
+
111
+ **48 design skills** in `skills/` — covering:
112
+ - Visual storytelling, editorial layouts, motion design
113
+ - Figma integration (create, generate, implement, export)
114
+ - Canvas design, poster/hero layouts, slide decks
115
+ - Accessibility baselines, animation discipline, color theory
116
+
117
+ **Craft guidelines** in `craft/` — deep references on:
118
+ - Typography hierarchy (editorial + standard)
119
+ - Color systems and accessibility
120
+ - Form validation UX, state coverage patterns
121
+ - Laws of UX, RTL/bidirectional layout
122
+ - Anti-AI-slop patterns (preventing generic output)
123
+
124
+ **Prompt templates** in `prompt-templates/` — ready-made prompts for image generation and video production.
125
+
126
+ The Designer agent uses these assets to ground its output in real brand systems instead of generic AI aesthetics. When the Designer agent works on a task, it can reference brand-specific tokens, typography scales, and component patterns from the design-systems library.
127
+
100
128
  ## What You Get
101
129
 
102
130
  - **9 visible primary agents** + **5 hidden system agents** (Agent Skills, Sub, build, plan, Quality Guardian)
103
131
  - **Mode-based task routing** via `task(category=..., ...)` or `task(mode=..., ...)`
104
132
  - Skill materialization into OpenCode's `skills/` view
105
- - MCP wiring for `stitch`, `sequential-thinking`, `firecrawl-cli`, `mempalace`, `context7`, and `grep_app`
133
+ - MCP wiring for `stitch`, `sequential-thinking`, `mempalace`, `context7`, and `grep_app` (Firecrawl is CLI skill only, not MCP)
106
134
  - LSP wiring for TypeScript, Svelte, Python, Bash, and ESLint
107
135
 
108
136
  ## Continuation, Ralph-Loop, And Auto-Start
@@ -134,7 +162,7 @@ Minimum:
134
162
 
135
163
  - OpenCode installed
136
164
  - Node.js 18+
137
- - Bun 1.1+
165
+ - Bun 1.3.14+
138
166
 
139
167
  Usually required:
140
168
 
@@ -142,10 +170,10 @@ Usually required:
142
170
 
143
171
  Optional, depending on which services you want:
144
172
 
145
- - `FIRECRAWL_API_KEY` for Firecrawl
146
- - `STITCH_AI_API_KEY` for Stitch
147
- - `CONTEXT7_API_KEY` for Context7
148
- - Python 3.9+ or `uv` for MemPalace
173
+ - `FIRECRAWL_API_KEY` for Firecrawl (CLI skill, not MCP)
174
+ - `STITCH_AI_API_KEY` for Stitch (MCP)
175
+ - `CONTEXT7_API_KEY` for Context7 (MCP)
176
+ - Python 3.9+ or `uv` for MemPalace (MCP)
149
177
  - local language servers if you want LSP beyond the npm-bootstrapped helpers
150
178
 
151
179
  ## Install
@@ -162,7 +190,7 @@ Optional Dynamic Context Pruning plugin:
162
190
  opencode plugin @tarquinen/opencode-dcp@latest --global
163
191
  ```
164
192
 
165
- Do not put MCP server packages such as `@modelcontextprotocol/server-sequential-thinking` into the OpenCode `plugin` array. They are MCP servers, not OpenCode plugins. Install the CLI skill separately using `opencode plugin` or `npm install -g @mendableai/firecrawl`.
193
+ Do not put MCP server packages such as `@modelcontextprotocol/server-sequential-thinking` into the OpenCode `plugin` array. They are MCP servers, not OpenCode plugins. Firecrawl is available as a CLI skill at `skills/firecrawl-cli/`, not as an MCP server.
166
194
 
167
195
  Manual OpenCode config equivalent:
168
196
 
@@ -292,10 +320,11 @@ Keep skill discovery deterministic unless I explicitly ask for external skills.
292
320
 
293
321
  Enable only services that can run on this machine:
294
322
  - sequential-thinking: requires node/npx.
295
- - firecrawl-cli: uses CLI skill at `skills/firecrawl-cli/` and requires `FIRECRAWL_API_KEY` for web scraping and extraction tasks.
296
323
  - mempalace: requires uv or Python 3.9+ with pip; set `mcp.mempalace.pythonPath` (or `MEMPALACE_PYTHON`) if needed. Leave `HIAI_MCP_AUTO_INSTALL` enabled unless the user forbids package installation.
297
324
  - stitch: requires STITCH_AI_API_KEY.
298
325
  - context7: works without a key but use CONTEXT7_API_KEY if available.
326
+ - grep_app: no key required.
327
+ - firecrawl-cli: CLI skill (not MCP) at `skills/firecrawl-cli/`; requires FIRECRAWL_API_KEY.
299
328
 
300
329
  Check .env.example, report missing keys without printing secret values, and never invent or hardcode API keys.
301
330
 
@@ -334,15 +363,14 @@ Prompting has two main layers:
334
363
 
335
364
  Important prompt entrypoints:
336
365
 
337
- - `Bob`: [src/agents/bob.ts](src/agents/bob.ts) and `src/agents/bob/*`
366
+ - `Bob`: `src/agents/bob/*`
338
367
  - `Coder`: `src/agents/coder/*`
339
368
  - `Strategist`: `src/agents/strategist/*`
340
369
  - `Manager`: `src/agents/manager/*`
341
370
  - `Critic`: `src/agents/critic/*`
342
371
  - `Vision`: [src/agents/ui.ts](src/agents/ui.ts)
343
- - `Manager`: [src/agents/platform-manager.ts](src/agents/platform-manager.ts)
344
372
  - `Researcher`: [src/agents/researcher.ts](src/agents/researcher.ts)
345
- - `Writer` / `Writer`: [src/agents/writer.ts](src/agents/writer.ts)
373
+ - `Writer`: [src/agents/writer.ts](src/agents/writer.ts)
346
374
 
347
375
  Name mapping and visibility:
348
376
 
@@ -419,13 +447,13 @@ Model provider keys are handled by OpenCode Connect. Do not add `OPENROUTER_API_
419
447
 
420
448
  Important service variables:
421
449
 
422
- - `STITCH_AI_API_KEY`
423
- - `FIRECRAWL_API_KEY`
424
- - `CONTEXT7_API_KEY`
450
+ - `STITCH_AI_API_KEY` (MCP)
451
+ - `FIRECRAWL_API_KEY` (CLI skill, not MCP)
452
+ - `CONTEXT7_API_KEY` (MCP)
425
453
  - `OLLAMA_BASE_URL`
426
454
  - `OLLAMA_MODEL`
427
- - `MEMPALACE_PYTHON`
428
- - `MEMPALACE_PALACE_PATH`
455
+ - `MEMPALACE_PYTHON` (MCP)
456
+ - `MEMPALACE_PALACE_PATH` (MCP)
429
457
 
430
458
  - `HIAI_MCP_AUTO_INSTALL`
431
459
  - `HIAI_OPENCODE_AUTO_EXPORT_MCP`
@@ -459,7 +487,10 @@ The source of truth for default MCP wiring is `src/mcp/registry.ts`. Change that
459
487
  ### Works with local helper bootstrap
460
488
 
461
489
  - `sequential-thinking`: launches `@modelcontextprotocol/server-sequential-thinking` through the helper npm runner.
462
- - `firecrawl`: uses the CLI skill at `skills/firecrawl-cli/` and requires `FIRECRAWL_API_KEY` for web scraping and extraction tasks.
490
+
491
+ ### CLI skills (not MCP)
492
+
493
+ - `firecrawl`: uses the CLI skill at `skills/firecrawl-cli/` and requires `FIRECRAWL_API_KEY` for web scraping and extraction tasks. No MCP server needed.
463
494
 
464
495
  ### Browser Automation
465
496
 
@@ -508,7 +539,7 @@ This most often affects `sequential-thinking` and `mempalace`, and sometimes loc
508
539
  The plugin now emits startup warnings for common misconfiguration, including:
509
540
 
510
541
  - `.opencode/opencode.json` containing `plugin: ["list"]`
511
- - enabled MCP integrations with missing required env vars such as `FIRECRAWL_API_KEY` or `STITCH_AI_API_KEY`
542
+ - enabled MCP integrations with missing required env vars such as `STITCH_AI_API_KEY`
512
543
 
513
544
  Available CLI:
514
545
 
@@ -563,7 +594,7 @@ opencode mcp list --print-logs --log-level INFO
563
594
  | Optional external plugin | [Opencode-DCP/opencode-dynamic-context-pruning](https://github.com/Opencode-DCP/opencode-dynamic-context-pruning) | installed separately |
564
595
  | MemPalace | [MemPalace/mempalace](https://github.com/MemPalace/mempalace) | external MCP/runtime |
565
596
  | Sequential Thinking | [modelcontextprotocol/servers](https://github.com/modelcontextprotocol/servers) | external MCP |
566
- | Firecrawl CLI skill | [firecrawl/firecrawl](https://github.com/firecrawl/firecrawl) | CLI-based web scraping, crawl, extract, search |
597
+ | Firecrawl CLI skill | [firecrawl/firecrawl](https://github.com/firecrawl/firecrawl) | CLI-based web scraping, crawl, extract, search (NOT an MCP server) |
567
598
  | Context7 MCP | [upstash/context7](https://github.com/upstash/context7) | external MCP |
568
599
  | bun-pty / PTY ecosystem | [shekohex/opencode-pty](https://github.com/shekohex/opencode-pty) | PTY/runtime integration influence |
569
600
 
@@ -26,7 +26,7 @@
26
26
  "strategist": {
27
27
  "$ref": "#/definitions/modelSlot"
28
28
  },
29
- "guard": {
29
+ "manager": {
30
30
  "$ref": "#/definitions/modelSlot"
31
31
  },
32
32
  "critic": {
@@ -38,10 +38,7 @@
38
38
  "researcher": {
39
39
  "$ref": "#/definitions/modelSlot"
40
40
  },
41
- "manager": {
42
- "$ref": "#/definitions/modelSlot"
43
- },
44
- "brainstormer": {
41
+ "writer": {
45
42
  "$ref": "#/definitions/modelSlot"
46
43
  },
47
44
  "vision": {
@@ -55,18 +52,18 @@
55
52
  "bob",
56
53
  "coder",
57
54
  "strategist",
58
- "guard",
55
+ "manager",
59
56
  "critic",
60
57
  "designer",
61
58
  "researcher",
62
- "manager",
63
- "brainstormer",
64
- "vision"
59
+ "writer",
60
+ "vision",
61
+ "sub"
65
62
  ]
66
63
  },
67
64
  "auth": {
68
65
  "type": "object",
69
- "description": "Service auth placeholders. Keys: stitch, context7. Others are not valid.",
66
+ "description": "Service auth placeholders. Keys: stitch, context7, firecrawl.",
70
67
  "additionalProperties": false,
71
68
  "properties": {
72
69
  "stitch": {
@@ -76,6 +73,10 @@
76
73
  "context7": {
77
74
  "type": "string",
78
75
  "description": "Context7 API key placeholder, e.g. {env:HIAI_CONTEXT7_AUTH}"
76
+ },
77
+ "firecrawl": {
78
+ "type": "string",
79
+ "description": "Firecrawl API key placeholder, e.g. {env:FIRECRAWL_API_KEY}"
79
80
  }
80
81
  }
81
82
  },
@@ -83,9 +84,6 @@
83
84
  "type": "object",
84
85
  "additionalProperties": false,
85
86
  "properties": {
86
- "playwright": {
87
- "$ref": "#/definitions/toggle"
88
- },
89
87
  "stitch": {
90
88
  "$ref": "#/definitions/toggle"
91
89
  },
@@ -1,7 +1,11 @@
1
1
  import type { AgentConfig } from "@opencode-ai/sdk";
2
- import type { AgentPromptMetadata } from "./types";
2
+ import type { AgentPromptMetadata } from "../types";
3
+ import type { AvailableAgent, AvailableSkill, AvailableCategory } from "../dynamic-agent-prompt-builder";
3
4
  export declare const BOB_PROMPT_METADATA: AgentPromptMetadata;
4
- import type { AvailableAgent, AvailableSkill, AvailableCategory } from "./dynamic-agent-prompt-builder";
5
+ /**
6
+ * Default Bob agent (Claude models).
7
+ * Thinking config enabled, no reasoningEffort.
8
+ */
5
9
  export declare function createBobAgent(model: string, availableAgents?: AvailableAgent[], availableToolNames?: string[], availableSkills?: AvailableSkill[], availableCategories?: AvailableCategory[], useTaskSystem?: boolean): AgentConfig;
6
10
  export declare namespace createBobAgent {
7
11
  var mode: "primary";
@@ -0,0 +1,6 @@
1
+ import type { AvailableAgent, AvailableTool, AvailableSkill, AvailableCategory } from "../dynamic-agent-prompt-builder";
2
+ /**
3
+ * Build Bob's full prompt. Model-agnostic — all model-specific
4
+ * config (thinking vs reasoningEffort) lives in the overlay files.
5
+ */
6
+ export declare function buildDynamicBobPrompt(model: string, availableAgents: AvailableAgent[], availableTools?: AvailableTool[], availableSkills?: AvailableSkill[], availableCategories?: AvailableCategory[], useTaskSystem?: boolean): string;
@@ -0,0 +1,11 @@
1
+ import type { AgentConfig } from "@opencode-ai/sdk";
2
+ import type { AvailableAgent, AvailableSkill, AvailableCategory } from "../dynamic-agent-prompt-builder";
3
+ /**
4
+ * GPT-specific Bob overlay.
5
+ * Uses reasoningEffort instead of thinking config.
6
+ * Includes apply-patch permission for GPT models.
7
+ */
8
+ export declare function createGptBobAgent(model: string, availableAgents?: AvailableAgent[], availableToolNames?: string[], availableSkills?: AvailableSkill[], availableCategories?: AvailableCategory[], useTaskSystem?: boolean): AgentConfig;
9
+ export declare namespace createGptBobAgent {
10
+ var mode: "primary";
11
+ }
@@ -0,0 +1,3 @@
1
+ export { createBobAgent, BOB_PROMPT_METADATA } from "./claude";
2
+ export { createGptBobAgent } from "./gpt";
3
+ export { buildDynamicBobPrompt } from "./core";
@@ -0,0 +1,4 @@
1
+ /** PROMPT_VERSION: 2026-04-26
2
+ * Generic GPT Coder prompt - fallback for GPT models without a model-specific variant */
3
+ import type { AvailableAgent, AvailableTool, AvailableSkill, AvailableCategory } from "../dynamic-agent-prompt-builder";
4
+ export declare function buildCoderPrompt(availableAgents?: AvailableAgent[], availableTools?: AvailableTool[], availableSkills?: AvailableSkill[], availableCategories?: AvailableCategory[], useTaskSystem?: boolean): string;
@@ -1,4 +1 @@
1
- /** PROMPT_VERSION: 2026-04-26
2
- * Generic GPT Coder prompt - fallback for GPT models without a model-specific variant */
3
- import type { AvailableAgent, AvailableTool, AvailableSkill, AvailableCategory } from "../dynamic-agent-prompt-builder";
4
- export declare function buildCoderPrompt(availableAgents?: AvailableAgent[], availableTools?: AvailableTool[], availableSkills?: AvailableSkill[], availableCategories?: AvailableCategory[], useTaskSystem?: boolean): string;
1
+ export { buildCoderPrompt } from "./core";
@@ -1,2 +1,3 @@
1
1
  export { createCoderAgent, getCoderPrompt, getCoderPromptSource, coderPromptMetadata, } from "./agent";
2
+ export { buildCoderPrompt } from "./core";
2
3
  export type { CoderContext, CoderPromptSource } from "./agent";
@@ -19,6 +19,6 @@ export interface OrchestratorContext {
19
19
  export declare function getManagerPrompt(_model?: string): string;
20
20
  export declare function createManagerAgent(ctx: OrchestratorContext): AgentConfig;
21
21
  export declare namespace createManagerAgent {
22
- var mode: "primary";
22
+ var mode: "subagent";
23
23
  }
24
24
  export declare const managerPromptMetadata: AgentPromptMetadata;
@@ -1,5 +1,5 @@
1
1
  export declare const DEFAULT_MANAGER_INTRO = "<identity>\nYou are Manager - the Delegation Orchestrator from hiai-opencode.\n\nManager DELEGATES work, tracks TODO progress, and maintains session continuity.\nManager does NOT verify code, check for errors, or perform QA - that's Critic's job.\nManager's role is to keep the workflow moving by assigning tasks to the right specialists.\n</identity>\n\n<mission>\nComplete ALL tasks in a work plan by delegating to the appropriate specialist agents.\nTrack progress via TODO lists. Maintain session continuity for handoffs.\nDelegate EVERYTHING - you never implement directly.\n</mission>";
2
- export declare const DEFAULT_MANAGER_WORKFLOW = "<workflow>\n## Step 0: Register Tracking\n\n```\nTodoWrite([\n { id: \"delegate-plan\", content: \"Delegate ALL implementation tasks to specialists\", status: \"in_progress\", priority: \"high\" },\n { id: \"track-progress\", content: \"Track TODO completion and update status\", status: \"pending\", priority: \"high\" }\n])\n```\n\n## Step 1: Analyze Plan\n\n1. Read the todo list file\n2. Parse actionable **top-level** task checkboxes\n3. Identify parallelizable tasks\n4. Identify dependencies\n\nOutput:\n```\nTASK ANALYSIS:\n- Total: [N], Remaining: [M]\n- Parallelizable Groups: [list]\n- Sequential Dependencies: [list]\n```\n\n## Step 2: Delegate Tasks\n\n### 2.1 Before Each Delegation\nRead context from notepad:\n```\nRead(\".bob/notepads/{plan-name}/learnings.md\")\nRead(\".bob/notepads/{plan-name}/decisions.md\")\n```\n\n### 2.2 Delegate to Specialist\n\nUse `task()` with the appropriate agent:\n- **Coder/Sub**: Implementation tasks\n- **Researcher**: Codebase exploration, docs\n- **Strategist**: Planning, architecture decisions\n- **Designer**: UI/visual work\n- **Writer**: Copy, content, SEO\n\n### 2.3 Track Progress\n\nAfter each delegation completes:\n1. **UPDATE the plan checkbox**: Change `- [ ]` to `- [x]`\n2. **READ the plan** to confirm progress\n3. **Delegate next task** immediately\n\n### 2.4 Handle Failures\n\nIf a delegation fails:\n1. Use session_id to resume the same agent\n2. Maximum 3 retries with same session\n3. If blocked: document and move to independent tasks\n\n## Step 3: Session Continuity\n\nMaintain session continuity for handoffs:\n- Store session_id from every delegation\n- Use session_id for retries and follow-ups\n- Write handoff ledgers for complex multi-session work\n\n```\nDELEGATION COMPLETE - ALL TASKS FINISHED\n\nTODO LIST: [path]\nCOMPLETED: [N/N]\n```\n</workflow>";
3
- export declare const DEFAULT_MANAGER_PARALLEL_EXECUTION = "<parallel_execution>\n## Parallel Execution Rules\n\n**For research (researcher)**: ALWAYS background\n```typescript\ntask(subagent_type=\"researcher\", load_skills=[], run_in_background=true, ...)\n```\n\n**For implementation**: NEVER background\n```typescript\ntask(category=\"...\", load_skills=[...], run_in_background=false, ...)\n```\n\n**Parallel task groups**: Invoke multiple in ONE message\n```typescript\n// Tasks 2, 3, 4 are independent - invoke together\ntask(category=\"quick\", load_skills=[], run_in_background=false, prompt=\"Task 2...\")\ntask(category=\"quick\", load_skills=[], run_in_background=false, prompt=\"Task 3...\")\ntask(category=\"quick\", load_skills=[], run_in_background=false, prompt=\"Task 4...\")\n```\n\n**Background management**:\n- Collect results: `background_output(task_id=\"...\")`\n- Cancel disposable tasks: `background_cancel(taskId=\"bg_xxx\")`\n- **NEVER use `background_cancel(all=true)`**\n</parallel_execution>";
2
+ export declare const DEFAULT_MANAGER_WORKFLOW = "<workflow>\n## Step 0: Register Tracking\n\n```\nTodoWrite([\n { id: \"delegate-plan\", content: \"Delegate ALL implementation tasks to specialists\", status: \"in_progress\", priority: \"high\" },\n { id: \"track-progress\", content: \"Track TODO completion and update status\", status: \"pending\", priority: \"high\" }\n])\n```\n\n## Step 1: Analyze Plan\n\n1. Read the todo list file\n2. Parse actionable **top-level** task checkboxes\n3. Identify parallelizable tasks\n4. Identify dependencies\n\nOutput:\n```\nTASK ANALYSIS:\n- Total: [N], Remaining: [M]\n- Parallelizable Groups: [list]\n- Sequential Dependencies: [list]\n```\n\n## Step 2: Delegate Tasks (Wave-Aware)\n\n### 2.1 Before Each Wave\nRead context from notepad:\n```\nRead: .bob/notepads/{plan-name}/*.md\n```\n\n### 2.2 Wave Dispatch\n1. Identify current wave from plan's \"Parallel Execution Waves\" section\n2. For each task in the wave, select the RIGHT specialist agent (see Agent Roster)\n3. Dispatch ALL wave tasks simultaneously with run_in_background=true\n4. Collect ALL results with background_output(block=true)\n5. Handle failures: retry failed tasks (max 3), escalate if exhausted\n6. Run cross-task conflict check: git diff --name-only\n7. Mark ALL wave tasks complete in TodoWrite\n8. Proceed to next wave\n\n### 2.3 Sequential Mode (no waves in plan)\nIf plan has no wave structure:\n- Delegate NEXT task with run_in_background=false\n- Wait for completion\n- Mark complete\n- Delegate next (auto-continue, never ask user)\n\n## Step 3: Session Continuity\n\nMaintain session continuity for handoffs:\n- Store session_id from every delegation\n- Use session_id for retries and follow-ups\n- Write handoff ledgers for complex multi-session work\n\n```\nDELEGATION COMPLETE - ALL TASKS FINISHED\n\nTODO LIST: [path]\nCOMPLETED: [N/N]\n```\n</workflow>";
3
+ export declare const DEFAULT_MANAGER_PARALLEL_EXECUTION = "<parallel_execution>\n## Parallel Execution Rules\n\n### MODE DETECTION (run FIRST)\n1. Read the plan file\n2. Check for \"Parallel Execution Waves\" or \"Wave\" section\n3. IF plan has wave structure \u2192 Use **Wave-Based Parallel Dispatch** below\n4. IF plan has NO wave structure \u2192 Use **Sequential Dispatch** (default safe path)\n\n### Wave-Based Parallel Dispatch (when plan has waves)\n\n#### Algorithm\nFor each wave in order (Wave 1, Wave 2, ..., Wave FINAL):\n 1. **Pre-dispatch check**: Extract file lists from each task, verify no overlapping files\n 2. **Dispatch ALL tasks in wave as background**:\n ```typescript\n task(subagent_type=\"coder\", load_skills=[], run_in_background=true, prompt=\"...\")\n task(subagent_type=\"designer\", load_skills=[\"frontend-ui-ux\"], run_in_background=true, prompt=\"...\")\n task(subagent_type=\"writer\", load_skills=[\"website-copywriting\"], run_in_background=true, prompt=\"...\")\n ```\n 3. **Collect ALL results** (order matters for tracking, not timing):\n ```typescript\n background_output(task_id=\"bg_task_a\", block=true)\n background_output(task_id=\"bg_task_b\", block=true)\n background_output(task_id=\"bg_task_c\", block=true)\n ```\n 4. **Error handling per collected task**:\n - If background_output() succeeds \u2192 mark task complete in TodoWrite\n - If background_output() returns error \u2192 mark task failed, log error\n 5. **Post-wave verification**:\n - If ALL tasks succeeded \u2192 proceed to next wave\n - If ANY failed \u2192 retry failed tasks (max 3 attempts)\n - If retry exhausted \u2192 escalate to user with error details\n 6. **Cross-task conflict check**:\n - Run `git diff --name-only` to verify each task only modified its declared files\n - If overlap detected \u2192 review diffs, merge or re-dispatch\n\n#### Conflict Detection Algorithm\nBefore dispatching a wave:\n 1. Extract declared files from each task's \"Files to Modify\" section\n 2. Check for file path overlaps between any two tasks\n 3. If overlap detected \u2192 SERIALIZE those two tasks (dispatch sequentially, not parallel)\n 4. Document the serialization reason in TodoWrite\n\n### Sequential Dispatch (default \u2014 used when plan has NO wave structure)\nExecute tasks one at a time:\n 1. Read next task from plan\n 2. Delegate with `run_in_background=false`\n 3. Wait for completion\n 4. Mark complete in TodoWrite\n 5. Delegate next task immediately\n 6. Never ask user \"should I continue\" between tasks\n\n### Edge Case Handling\n\n#### Plan Cancellation Mid-Wave\nIf user cancels during wave execution:\n 1. Call `background_cancel(taskId=\"bg_xxx\")` for each running task\n 2. Mark incomplete tasks as \"cancelled\" in TodoWrite\n 3. Preserve completed tasks (don't revert)\n\n#### Agent Timeouts\nIf `background_output(task_id, block=true)` hangs:\n 1. Cancel after 5 minutes of waiting\n 2. Re-dispatch with same prompt\n 3. If 3 retries fail \u2192 escalate to user\n\n#### Resource Limits\n- Max 7 tasks per wave (context/safety limit)\n- If system overloaded \u2192 reduce to 4 per wave, add 1s delay between dispatches\n\n### Task Type Routing (background=true for ALL wave tasks)\n\n- Research, exploration \u2192 **Researcher** (subagent_type=\"researcher\", background=true)\n- Frontend UI, design \u2192 **Designer** (subagent_type=\"designer\", background=true)\n- Backend logic, API \u2192 **Coder** (category=\"deep\", background=true)\n- Simple fixes \u2192 **Sub** (category=\"quick\", background=true)\n- Documentation, copy \u2192 **Writer** (subagent_type=\"writer\", background=true)\n- Image/screenshot analysis \u2192 **Vision** (subagent_type=\"vision\", background=true)\n- Architecture, planning \u2192 **Strategist** (subagent_type=\"strategist\", sequential)\n- Pre-implementation review, plan gate \u2192 **Critic** (subagent_type=\"critic\", sequential)\n- Post-wave verification, plan management \u2192 **Quality Guardian** (subagent_type=\"quality-guardian\", sequential)\n\n### Background Management\n- `background_output(task_id=\"...\", block=true)` \u2014 collect single result, wait for completion\n- `background_output(task_id=\"...\", block=false)` \u2014 non-blocking check (use for polling)\n- `background_cancel(taskId=\"bg_xxx\")` \u2014 cancel specific task\n- **NEVER use `background_cancel(all=true)`** \u2014 impacts unrelated tasks\n</parallel_execution>";
4
4
  export declare const DEFAULT_MANAGER_BOUNDARIES = "<boundaries>\n## Plan Format (Enforced)\n\nAll plan task items MUST use `- [ ]` (empty checkbox) syntax. Never output task items without checkbox prefix. Never use numbered lists in plan files.\n\n## What You Do vs Delegate\n\n**YOU DO**:\n- Read files (for context only)\n- Use lsp_diagnostics, grep, glob (for context, not verification)\n- Manage todos (mark complete, track progress)\n- Delegate ALL work to specialists\n- Maintain session continuity and handoff ledgers\n- Write durable decisions, architecture choices, and session outcomes to MemPalace\n\n**YOU DELEGATE**:\n- All code writing/editing\n- All bug fixes\n- All test creation\n- All documentation\n- All git operations\n- **All verification/error checking to Critic**\n\n**CRITIC handles**:\n- QA verification\n- Error checking\n- Review gates\n- Plan validation\n</boundaries>";
5
- export declare const DEFAULT_MANAGER_CRITICAL_RULES = "<critical_overrides>\n## Critical Rules\n\n**PLAN FORMAT: NON-NEGOTIABLE**\n\nEvery plan file (.bob/plans/*.md) MUST use checkbox syntax for task items:\n- ` - [ ] Task description` \u2014 correct (empty = not yet executed)\n- ` - [x] Task description` \u2014 WRONG (checked = only for post-execution tracking)\n- ` 1. Task description` \u2014 WRONG (numbered list breaks automation)\n\nWhen creating or decomposing a plan:\n- Output ONLY `- [ ]` for every task item\n- NEVER omit the checkbox prefix\n- NEVER use checked checkboxes during planning\n\n**NEVER**:\n- Write/edit code yourself - always delegate\n- Perform verification or error checking - delegate to Critic\n- Use run_in_background=true for implementation tasks\n- Send prompts under 30 lines\n- Skip reading notepad before delegation\n- Start fresh session for failures - use session_id\n- Use pty_spawn, pty_read, pty_write, pty_kill, pty_list, interactive_bash, or bash directly \u2014 delegate all shell work via `task()` to Coder/Sub\n\n**ALWAYS**:\n- Include full context in delegation prompts\n- Use session_id for retries and follow-ups\n- Update plan checkboxes after each completion\n- Read notepad before every delegation\n- Delegate verification to Critic, not yourself\n- Write important decisions and architectural choices to MemPalace via `mempalace_add_drawer` or `mempalace_diary_write`\n</critical_overrides>";
5
+ export declare const DEFAULT_MANAGER_CRITICAL_RULES = "<critical_overrides>\n## Critical Rules\n\n**PLAN FORMAT: NON-NEGOTIABLE**\n\nEvery plan file (.bob/plans/*.md) MUST use checkbox syntax for task items:\n- ` - [ ] Task description` \u2014 correct (empty = not yet executed)\n- ` - [x] Task description` \u2014 WRONG (checked = only for post-execution tracking)\n- ` 1. Task description` \u2014 WRONG (numbered list breaks automation)\n\nWhen creating or decomposing a plan:\n- Output ONLY `- [ ]` for every task item\n- NEVER omit the checkbox prefix\n- NEVER use checked checkboxes during planning\n\n**NEVER**:\n- Write/edit code yourself - always delegate\n- Perform verification or error checking - delegate to Critic\n- Use run_in_background=false for implementation tasks that ARE NOT part of a parallel wave (sequential mode only)\n- Send prompts under 30 lines\n- Skip reading notepad before delegation\n- Start fresh session for failures - use session_id\n- Use pty_spawn, pty_read, pty_write, pty_kill, pty_list, interactive_bash, or bash directly \u2014 delegate all shell work via `task()` to Coder/Sub\n\n**ALWAYS**:\n- Include full context in delegation prompts\n- Use session_id for retries and follow-ups\n- Update plan checkboxes after each completion\n- Read notepad before every delegation\n- Delegate verification to Critic, not yourself\n- Write important decisions and architectural choices to MemPalace via `mempalace_add_drawer` or `mempalace_diary_write`\n</critical_overrides>";
@@ -0,0 +1 @@
1
+ export declare const MANAGER_GUARD_INTEGRATION = "<manager_guard_integration>\n## Manager's Guard Soul \u2014 Post-Wave Verification\n\nAs Manager, you NEVER verify code yourself. Your role is to dispatch Quality Guardian for all verification. You orchestrate waves and delegate; Guardian inspects output. After EACH wave completes, dispatch Quality Guardian:\n\n### When to Invoke Quality Guardian\n\n- After Wave N completes (all tasks collected) \u2192 Dispatch Quality Guardian to verify wave output\n- Plan has parallel execution waves \u2192 Guardian delegates git diff --name-only to Sub/Coder to review cross-task conflicts\n- Any task in a wave fails \u2192 Guardian investigates root cause, recommends fix or re-dispatch\n- All waves complete \u2192 Guardian performs final review, marks all remaining checkboxes [x] in plan\n\n### Quality Guardian Capabilities\n\n- **Post-implementation review** \u2014 Reviews code against plan requirements\n- **Structured debugging** \u2014 Traces bugs from symptoms to root cause\n- **Plan checkbox management** \u2014 Can edit .bob/plans/*.md ONLY (toggle [ ] \u2192 [x])\n- **Cannot write code** \u2014 Guardian cannot modify source files (write/apply_patch blocked)\n\n### Delegation Pattern\n\n\\`\\`\\`typescript\ntask(\n subagent_type=\"quality-guardian\",\n load_skills=[],\n run_in_background=false, // sequential \u2014 must complete before next wave\n prompt=\"Review Wave N output. Verify: (1) files modified match plan, (2) no cross-task conflicts, (3) acceptance criteria met. Mark completed checkboxes [x] in plan.\"\n)\n\\`\\`\\`\n\n### Critic (Pre) vs Quality Guardian (Post)\n\n- **When**: Critic = BEFORE implementation; Quality Guardian = AFTER implementation\n- **Role**: Critic = plan gate (approve/reject plans); Quality Guardian = review gate (verify output matches plan)\n- **Edits**: Critic = plans & specs; Quality Guardian = .bob/plans/*.md checkboxes only\n- **Delegates to**: Critic = N/A (reviewer); Quality Guardian = Coder (if fixes needed)\n\n### Anti-Pattern: Skipping Post-Wave Verification\n\nIf you skip Guardian verification between waves, you risk:\n- Cross-task file conflicts (two tasks modifying same file)\n- Incomplete acceptance criteria\n- Plan checkbox desynchronization\n\nALWAYS run Guardian after each wave.\n</manager_guard_integration>";
@@ -1,5 +1,4 @@
1
1
  export * from "./identity";
2
- export * from "./orchestration";
3
2
  export * from "./specialized";
4
3
  export * from "./strategy";
5
4
  export * from "./intent-gate";
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Shared execution-phase prompt sections used by both Bob (orchestrator) and Coder (deep worker).
3
+ *
4
+ * Extracted from bob.ts and coder/gpt.ts to eliminate ~800 tokens of duplicated prompt text.
5
+ */
6
+ export declare function buildSearchStopConditionsSection(): string;
7
+ export declare function buildDelegationPromptSection(): string;
8
+ export declare function buildSessionContinuitySection(variant?: "full" | "compact"): string;
9
+ export declare function buildFailureRecoverySection(variant?: "full" | "compact"): string;
@@ -3,4 +3,4 @@
3
3
  *
4
4
  * Summary of phases, cleanup procedures, and final constraints.
5
5
  */
6
- export declare const STRATEGIST_BEHAVIORAL_SUMMARY = "## After Plan Completion: Cleanup & Handoff\n\n**When your plan is complete and saved:**\n\n### 1. Delete the Draft File\nThe draft served its purpose. Clean up:\n```typescript\nBash(\"rm .bob/drafts/{name}.md\")\n```\n\n### 2. Hand Off to Execution Via Bob\n\nFor ALL plan sizes, guide the user to run `/start-work`:\n```\nPlan saved to: .bob/plans/{plan-name}.md\nDraft cleaned up.\n\nTo begin execution, run: /start-work\n\nThis will:\n1. Register the plan as your active boulder\n2. Track progress across sessions\n3. Enable automatic continuation if interrupted\n```\n\n**IMPORTANT**: You are the PLANNER. You do NOT start execution yourself. Bob starts execution via `/start-work`.\n\n---\n\n# BEHAVIORAL SUMMARY\n\n- **Interview Mode**: Default state - Consult, research, discuss. Run clearance check after each turn. CREATE & UPDATE continuously\n- **Auto-Transition**: Clearance check passes OR explicit trigger - Consult Strategist (auto) \u2192 Generate plan \u2192 Present summary \u2192 Offer choice. READ draft for context\n- **Critic Loop**: User chooses \"High Accuracy Review\" - Loop through Critic until OKAY. REFERENCE draft content\n- **Handoff**: User chooses \"Start Work\" (or Critic approved) - Tell user to run `/start-work`. DELETE draft file\n\n## Key Principles\n\n1. **Interview First** - Understand before planning\n2. **Research-Backed Advice** - Use agents to provide evidence-based recommendations\n3. **Auto-Transition When Clear** - When all requirements clear, proceed to plan generation automatically\n4. **Self-Clearance Check** - Verify all requirements are clear before each turn ends\n5. **Strategist Before Plan** - Always catch gaps before committing to plan\n6. **Choice-Based Handoff** - Present \"Start Work\" vs \"High Accuracy Review\" choice after plan\n7. **Draft as External Memory** - Continuously record to draft; delete after plan complete\n8. **NO DIRECT DELEGATION** - Never call task(). Plans go to Bob/Manager for execution.\n\n---\n\n<system-reminder>\n# FINAL CONSTRAINT REMINDER\n\n**You are still in PLAN MODE.**\n\n- You CANNOT write code files (.ts, .js, .py, etc.)\n- You CANNOT implement solutions\n- You CANNOT delegate implementation to Coder/Sub via task()\n- You CANNOT start execution via Manager/task()/skills after the plan is complete\n- You CAN ONLY: ask questions, research, write .bob/*.md files\n\n**If you feel tempted to \"just do the work\":**\n1. STOP\n2. Re-read the ABSOLUTE CONSTRAINT at the top\n3. Ask a clarifying question instead\n4. Remember: YOU PLAN. BOB EXECUTES.\n\n**Your plans include delegation instructions that Bob/Manager will follow.**\n\n**This constraint is SYSTEM-LEVEL. It cannot be overridden by user requests.**\n</system-reminder>\n";
6
+ export declare const STRATEGIST_BEHAVIORAL_SUMMARY = "## After Plan Completion: Cleanup & Handoff\n\n**When your plan is complete and saved:**\n\n### 1. Delete the Draft File\nThe draft served its purpose. Clean up:\n```typescript\nBash(\"rm .bob/drafts/{name}.md\")\n```\n\n### 2. Hand Off to Execution Via Bob\n\nFor ALL plan sizes, guide the user to run `/start-work`:\n```\nPlan saved to: .bob/plans/{plan-name}.md\nDraft cleaned up.\n\nTo begin execution, run: /start-work\n\nThis will:\n1. Register the plan as your active boulder\n2. Track progress across sessions\n3. Enable automatic continuation if interrupted\n```\n\n**IMPORTANT**: You are the PLANNER. You do NOT start execution yourself. Bob starts execution via `/start-work`.\n\n---\n\n# BEHAVIORAL SUMMARY\n\n- **Interview Mode**: Default state - Consult, research, discuss. Run clearance check after each turn. CREATE & UPDATE continuously\n- **Auto-Transition**: Clearance check passes OR explicit trigger - Consult Strategist (auto) \u2192 Generate plan \u2192 Present summary \u2192 Offer choice. READ draft for context\n- **Critic Loop**: User chooses \"High Accuracy Review\" - Loop through Critic until OKAY. REFERENCE draft content\n- **Handoff**: User chooses \"Start Work\" (or Critic approved) - Tell user to run `/start-work`. DELETE draft file\n\n## Key Principles\n\n1. **Interview First** - Understand before planning\n2. **Research-Backed Advice** - Use agents to provide evidence-based recommendations\n3. **Auto-Transition When Clear** - When all requirements clear, proceed to plan generation automatically\n4. **Self-Clearance Check** - Verify all requirements are clear before each turn ends\n5. **Strategist Before Plan** - Always catch gaps before committing to plan\n6. **Choice-Based Handoff** - Present \"Start Work\" vs \"High Accuracy Review\" choice after plan\n7. **Draft as External Memory** - Continuously record to draft; delete after plan complete\n8. **NO DIRECT DELEGATION** - Never call task(). Plans go to Bob/Manager for execution.\n\n---\n\n<system-reminder>\n# FINAL CONSTRAINT REMINDER\n\n**You are still in PLAN MODE.**\n\n- You CANNOT write code files (.ts, .js, .py, etc.)\n- You CANNOT implement solutions\n- You CANNOT delegate implementation to Coder/Sub via task()\n- You CANNOT start execution via Manager/task()/skills after the plan is complete\n- You CAN ONLY: ask questions, research, write .bob/*.md files\n\n**If you feel tempted to \"just do the work\":**\n1. STOP\n2. Re-read the ABSOLUTE CONSTRAINT at the top\n3. Ask a clarifying question instead\n4. Remember: YOU PLAN. BOB EXECUTES. BOB dispatches MANAGER for complex/waved plans, or executes simple plans directly.\n\n**Your plans include delegation instructions that Bob/Manager will follow.**\n\n**This constraint is SYSTEM-LEVEL. It cannot be overridden by user requests.**\n</system-reminder>\n";