@hiai-gg/hiai-opencode 0.2.0 → 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.
- package/.env.example +4 -0
- package/AGENTS.md +40 -44
- package/ARCHITECTURE.md +4 -3
- package/LICENSE.md +14 -0
- package/README.md +61 -30
- package/assets/cli/hiai-opencode.mjs +4 -4
- package/config/hiai-opencode.schema.json +11 -13
- package/dist/agents/{bob.d.ts → bob/claude.d.ts} +6 -2
- package/dist/agents/bob/core.d.ts +6 -0
- package/dist/agents/bob/gpt.d.ts +11 -0
- package/dist/agents/bob/index.d.ts +3 -0
- package/dist/agents/coder/core.d.ts +4 -0
- package/dist/agents/coder/gpt.d.ts +1 -4
- package/dist/agents/coder/index.d.ts +1 -0
- package/dist/agents/manager/agent.d.ts +1 -1
- package/dist/agents/manager/default-prompt-sections.d.ts +4 -4
- package/dist/agents/manager/guard-integration.d.ts +1 -0
- package/dist/agents/prompt-library/index.d.ts +0 -1
- package/dist/agents/prompt-library/shared-execution.d.ts +9 -0
- package/dist/agents/strategist/behavioral-summary.d.ts +1 -1
- package/dist/agents/strategist/identity-constraints.d.ts +1 -1
- package/dist/agents/strategist/plan-generation.d.ts +1 -1
- package/dist/agents/types.d.ts +2 -1
- package/dist/config/defaults.d.ts +1 -0
- package/dist/config/platform-schema.d.ts +26 -26
- package/dist/config/schema/agent-names.d.ts +6 -6
- package/dist/config/schema/agent-overrides.d.ts +0 -128
- package/dist/config/schema/hiai-opencode-config.d.ts +0 -128
- package/dist/config/types.d.ts +2 -2
- package/dist/features/background-agent/error-classifier.d.ts +1 -0
- package/dist/features/background-agent/manager-notifier.d.ts +46 -0
- package/dist/features/background-agent/manager-types.d.ts +40 -0
- package/dist/features/background-agent/manager.d.ts +3 -19
- package/dist/features/background-agent/polling-manager.d.ts +51 -0
- package/dist/features/boulder-state/constants.d.ts +3 -0
- package/dist/features/boulder-state/storage.d.ts +95 -0
- package/dist/features/boulder-state/types.d.ts +17 -0
- package/dist/features/builtin-commands/templates/doctor.d.ts +1 -1
- package/dist/features/builtin-commands/templates/loop.d.ts +2 -0
- package/dist/features/builtin-commands/templates/start-work.d.ts +1 -1
- package/dist/features/builtin-skills/skills/interview-me.d.ts +2 -0
- package/dist/features/builtin-skills/skills/planning-and-task-breakdown.d.ts +2 -0
- package/dist/hooks/manager/resolve-active-boulder-session.d.ts +5 -0
- package/dist/hooks/manager/system-reminder-templates.d.ts +2 -2
- package/dist/hooks/reasoning-content-cache/hook.d.ts +11 -0
- package/dist/hooks/reasoning-content-cache/index.d.ts +1 -0
- package/dist/hooks/session-recovery/checkpoint.d.ts +48 -0
- package/dist/hooks/session-recovery/enhanced-hook.d.ts +30 -0
- package/dist/hooks/session-recovery/state-backup.d.ts +76 -0
- package/dist/hooks/shared/compaction-in-progress.d.ts +4 -0
- package/dist/hooks/start-work/context-info-builder.d.ts +2 -0
- package/dist/hooks/start-work/git-operations.d.ts +47 -0
- package/dist/hooks/start-work/worktree-block.d.ts +2 -1
- package/dist/hooks/start-work/worktree-detector.d.ts +45 -0
- package/dist/hooks/strategist-md-only/agent-resolution.d.ts +1 -1
- package/dist/hooks/strategist-md-only/constants.d.ts +6 -0
- package/dist/hooks/token-budget.d.ts +30 -0
- package/dist/index.js +1275 -1132
- package/dist/mcp/rate-limiter.d.ts +68 -0
- package/dist/plugin/chat-message.d.ts +8 -0
- package/dist/plugin/command-execute-before.d.ts +1 -1
- package/dist/plugin/event-handlers/message-updated.d.ts +2 -0
- package/dist/plugin/event-handlers/session-error.d.ts +2 -0
- package/dist/plugin/event-handlers/session-status.d.ts +2 -0
- package/dist/plugin/event-handlers/types.d.ts +62 -0
- package/dist/plugin/event-handlers/utils.d.ts +11 -0
- package/dist/plugin/event.d.ts +1 -1
- package/dist/shared/data-path.d.ts +1 -1
- package/dist/shared/errors.d.ts +70 -0
- package/dist/shared/extract-session-id.d.ts +8 -0
- package/dist/shared/git-worktree/get-git-state-summary.d.ts +14 -0
- package/dist/shared/index.d.ts +67 -68
- package/dist/shared/internal-initiator-marker.d.ts +1 -1
- package/dist/shared/logger.d.ts +5 -1
- package/dist/shared/reasoning-content-cache.d.ts +68 -0
- package/dist/shared/safe-create-hook.d.ts +4 -4
- package/dist/tools/call-hiai-agent/constants.d.ts +2 -2
- package/dist/tools/delegate-task/sub-agent.d.ts +1 -1
- package/dist/tools/look-at/constants.d.ts +1 -1
- package/docs/architecture/bob-manager-architecture.md +244 -0
- package/docs/hiai-opencode/adr/ADR-001-agent-identity-section-injection.md +66 -0
- package/docs/hiai-opencode/adr/ADR-002-anti-loop-guard-priority.md +63 -0
- package/docs/hiai-opencode/adr/ADR-003-compaction-mechanism.md +71 -0
- package/docs/hiai-opencode/adr/ADR-004-session-recovery.md +76 -0
- package/docs/hiai-opencode/api.md +305 -0
- package/docs/hiai-opencode/hooks-architecture.md +225 -0
- package/docs/hiai-opencode/migration.md +209 -0
- package/docs/quickstart.md +1 -1
- package/docs/skill-discovery.md +288 -0
- package/package.json +2 -2
- package/skills/agent-browser/SKILL.md +193 -0
- package/skills/apple-hig/SKILL.md +43 -0
- package/skills/article-magazine/SKILL.md +46 -0
- package/skills/article-magazine/example.html +81 -0
- package/skills/article-magazine/example.md +38 -0
- package/skills/canvas-design/SKILL.md +45 -0
- package/skills/design-templates/audio-jingle/SKILL.md +132 -0
- package/skills/design-templates/audio-jingle/example.html +128 -0
- package/skills/design-templates/blog-post/SKILL.md +80 -0
- package/skills/design-templates/blog-post/example.html +80 -0
- package/skills/design-templates/clinical-case-report/SKILL.md +209 -0
- package/skills/design-templates/clinical-case-report/example.html +698 -0
- package/skills/design-templates/clinical-case-report/examples/example-stemi.html +698 -0
- package/skills/design-templates/clinical-case-report/references/case-formats.md +94 -0
- package/skills/design-templates/clinical-case-report/references/checklist.md +41 -0
- package/skills/design-templates/critique/SKILL.md +258 -0
- package/skills/design-templates/critique/example.html +671 -0
- package/skills/design-templates/dashboard/SKILL.md +76 -0
- package/skills/design-templates/dashboard/example.html +118 -0
- package/skills/design-templates/dating-web/SKILL.md +92 -0
- package/skills/design-templates/dating-web/example.html +265 -0
- package/skills/design-templates/dcf-valuation/SKILL.md +140 -0
- package/skills/design-templates/dcf-valuation/references/sector-wacc.md +42 -0
- package/skills/design-templates/digital-eguide/SKILL.md +94 -0
- package/skills/design-templates/digital-eguide/example.html +204 -0
- package/skills/design-templates/docs-page/SKILL.md +80 -0
- package/skills/design-templates/docs-page/example.html +122 -0
- package/skills/design-templates/email-marketing/SKILL.md +84 -0
- package/skills/design-templates/email-marketing/example.html +159 -0
- package/skills/design-templates/eng-runbook/SKILL.md +51 -0
- package/skills/design-templates/eng-runbook/example.html +250 -0
- package/skills/design-templates/finance-report/SKILL.md +61 -0
- package/skills/design-templates/finance-report/example.html +242 -0
- package/skills/design-templates/flowai-live-dashboard-template/SKILL.md +87 -0
- package/skills/design-templates/flowai-live-dashboard-template/assets/template.html +387 -0
- package/skills/design-templates/flowai-live-dashboard-template/example.html +13 -0
- package/skills/design-templates/flowai-live-dashboard-template/references/checklist.md +35 -0
- package/skills/design-templates/gamified-app/SKILL.md +108 -0
- package/skills/design-templates/gamified-app/example.html +292 -0
- package/skills/design-templates/github-dashboard/SKILL.md +130 -0
- package/skills/design-templates/github-dashboard/example.html +473 -0
- package/skills/design-templates/github-dashboard/references/README.md +10 -0
- package/skills/design-templates/github-dashboard/references/artifact-example.json +15 -0
- package/skills/design-templates/github-dashboard/references/example-data.json +138 -0
- package/skills/design-templates/github-dashboard/references/provenance-example.json +92 -0
- package/skills/design-templates/github-dashboard/references/template.html +473 -0
- package/skills/design-templates/guizang-ppt/LICENSE +21 -0
- package/skills/design-templates/guizang-ppt/README.en.md +119 -0
- package/skills/design-templates/guizang-ppt/README.md +120 -0
- package/skills/design-templates/guizang-ppt/README.pt-BR.md +121 -0
- package/skills/design-templates/guizang-ppt/SKILL.md +313 -0
- package/skills/design-templates/guizang-ppt/assets/example-slides.html +318 -0
- package/skills/design-templates/guizang-ppt/assets/template.html +647 -0
- package/skills/design-templates/guizang-ppt/references/checklist.md +265 -0
- package/skills/design-templates/guizang-ppt/references/components.md +363 -0
- package/skills/design-templates/guizang-ppt/references/layouts.md +630 -0
- package/skills/design-templates/guizang-ppt/references/styles.md +195 -0
- package/skills/design-templates/guizang-ppt/references/themes.md +122 -0
- package/skills/design-templates/hr-onboarding/SKILL.md +52 -0
- package/skills/design-templates/hr-onboarding/example.html +219 -0
- package/skills/design-templates/html-ppt/.clawscan-allow +12 -0
- package/skills/design-templates/html-ppt/LICENSE +21 -0
- package/skills/design-templates/html-ppt/README.md +234 -0
- package/skills/design-templates/html-ppt/README.pt-BR.md +239 -0
- package/skills/design-templates/html-ppt/README.zh-CN.md +238 -0
- package/skills/design-templates/html-ppt/SKILL.md +250 -0
- package/skills/design-templates/html-ppt/assets/animations/animations.css +138 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/_util.js +63 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/chain-react.js +41 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/confetti-cannon.js +49 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/constellation.js +44 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/counter-explosion.js +58 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/data-stream.js +45 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/firework.js +51 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/galaxy-swirl.js +33 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/gradient-blob.js +39 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/knowledge-graph.js +69 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/letter-explode.js +50 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/magnetic-field.js +40 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/matrix-rain.js +33 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/neural-net.js +75 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/orbit-ring.js +38 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/particle-burst.js +42 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/shockwave.js +39 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/sparkle-trail.js +62 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/starfield.js +30 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/typewriter-multi.js +51 -0
- package/skills/design-templates/html-ppt/assets/animations/fx/word-cascade.js +47 -0
- package/skills/design-templates/html-ppt/assets/animations/fx-runtime.js +99 -0
- package/skills/design-templates/html-ppt/assets/base.css +150 -0
- package/skills/design-templates/html-ppt/assets/fonts.css +9 -0
- package/skills/design-templates/html-ppt/assets/runtime.js +960 -0
- package/skills/design-templates/html-ppt/assets/themes/academic-paper.css +23 -0
- package/skills/design-templates/html-ppt/assets/themes/arctic-cool.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/aurora.css +20 -0
- package/skills/design-templates/html-ppt/assets/themes/bauhaus.css +16 -0
- package/skills/design-templates/html-ppt/assets/themes/blueprint.css +19 -0
- package/skills/design-templates/html-ppt/assets/themes/catppuccin-latte.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/catppuccin-mocha.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/corporate-clean.css +19 -0
- package/skills/design-templates/html-ppt/assets/themes/cyberpunk-neon.css +23 -0
- package/skills/design-templates/html-ppt/assets/themes/dracula.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/editorial-serif.css +18 -0
- package/skills/design-templates/html-ppt/assets/themes/engineering-whiteprint.css +26 -0
- package/skills/design-templates/html-ppt/assets/themes/glassmorphism.css +21 -0
- package/skills/design-templates/html-ppt/assets/themes/gruvbox-dark.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/japanese-minimal.css +21 -0
- package/skills/design-templates/html-ppt/assets/themes/magazine-bold.css +21 -0
- package/skills/design-templates/html-ppt/assets/themes/memphis-pop.css +20 -0
- package/skills/design-templates/html-ppt/assets/themes/midcentury.css +19 -0
- package/skills/design-templates/html-ppt/assets/themes/minimal-white.css +16 -0
- package/skills/design-templates/html-ppt/assets/themes/neo-brutalism.css +17 -0
- package/skills/design-templates/html-ppt/assets/themes/news-broadcast.css +20 -0
- package/skills/design-templates/html-ppt/assets/themes/nord.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/pitch-deck-vc.css +21 -0
- package/skills/design-templates/html-ppt/assets/themes/rainbow-gradient.css +16 -0
- package/skills/design-templates/html-ppt/assets/themes/retro-tv.css +22 -0
- package/skills/design-templates/html-ppt/assets/themes/rose-pine.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/sharp-mono.css +17 -0
- package/skills/design-templates/html-ppt/assets/themes/soft-pastel.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/solarized-light.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/sunset-warm.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/swiss-grid.css +17 -0
- package/skills/design-templates/html-ppt/assets/themes/terminal-green.css +18 -0
- package/skills/design-templates/html-ppt/assets/themes/tokyo-night.css +14 -0
- package/skills/design-templates/html-ppt/assets/themes/vaporwave.css +21 -0
- package/skills/design-templates/html-ppt/assets/themes/xiaohongshu-white.css +16 -0
- package/skills/design-templates/html-ppt/assets/themes/y2k-chrome.css +20 -0
- package/skills/design-templates/html-ppt/docs/readme/_theme-cell.html +56 -0
- package/skills/design-templates/html-ppt/docs/readme/animations.png +0 -0
- package/skills/design-templates/html-ppt/docs/readme/hero.gif +0 -0
- package/skills/design-templates/html-ppt/docs/readme/layouts-live.gif +0 -0
- package/skills/design-templates/html-ppt/docs/readme/layouts.png +0 -0
- package/skills/design-templates/html-ppt/docs/readme/montage-animations.html +61 -0
- package/skills/design-templates/html-ppt/docs/readme/montage-layouts.html +72 -0
- package/skills/design-templates/html-ppt/docs/readme/montage-templates.html +72 -0
- package/skills/design-templates/html-ppt/docs/readme/montage-themes.html +38 -0
- package/skills/design-templates/html-ppt/docs/readme/presenter-mode.png +0 -0
- package/skills/design-templates/html-ppt/docs/readme/templates.png +0 -0
- package/skills/design-templates/html-ppt/docs/readme/themes.png +0 -0
- package/skills/design-templates/html-ppt/examples/demo-deck/index.html +161 -0
- package/skills/design-templates/html-ppt/references/animations.md +147 -0
- package/skills/design-templates/html-ppt/references/authoring-guide.md +141 -0
- package/skills/design-templates/html-ppt/references/full-decks.md +98 -0
- package/skills/design-templates/html-ppt/references/layouts.md +103 -0
- package/skills/design-templates/html-ppt/references/presenter-mode.md +240 -0
- package/skills/design-templates/html-ppt/references/themes.md +107 -0
- package/skills/design-templates/html-ppt/scripts/new-deck.sh +46 -0
- package/skills/design-templates/html-ppt/scripts/render.sh +71 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_01.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_02.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_03.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_04.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_05.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_06.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_07.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_08.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_09.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_10.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_11.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_12.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_13.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_14.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_15.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_16.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_17.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_18.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_19.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/animation-showcase/animation-showcase_20.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_01.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_02.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_03.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_04.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_05.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_06.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_07.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_08.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_09.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_10.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_11.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_12.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_13.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_14.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_15.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_16.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_17.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_18.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_19.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_20.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_21.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_22.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_23.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_24.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_25.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_26.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_27.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_28.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_29.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_30.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_31.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_32.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_33.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_34.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_35.png +0 -0
- package/skills/design-templates/html-ppt/scripts/verify-output/theme-showcase/theme-showcase_36.png +0 -0
- package/skills/design-templates/html-ppt/templates/animation-showcase.html +172 -0
- package/skills/design-templates/html-ppt/templates/deck.html +69 -0
- package/skills/design-templates/html-ppt/templates/full-decks/course-module/README.md +8 -0
- package/skills/design-templates/html-ppt/templates/full-decks/course-module/index.html +189 -0
- package/skills/design-templates/html-ppt/templates/full-decks/course-module/style.css +46 -0
- package/skills/design-templates/html-ppt/templates/full-decks/dir-key-nav-minimal/README.md +11 -0
- package/skills/design-templates/html-ppt/templates/full-decks/dir-key-nav-minimal/index.html +138 -0
- package/skills/design-templates/html-ppt/templates/full-decks/dir-key-nav-minimal/style.css +60 -0
- package/skills/design-templates/html-ppt/templates/full-decks/graphify-dark-graph/README.md +11 -0
- package/skills/design-templates/html-ppt/templates/full-decks/graphify-dark-graph/index.html +180 -0
- package/skills/design-templates/html-ppt/templates/full-decks/graphify-dark-graph/style.css +54 -0
- package/skills/design-templates/html-ppt/templates/full-decks/hermes-cyber-terminal/README.md +11 -0
- package/skills/design-templates/html-ppt/templates/full-decks/hermes-cyber-terminal/index.html +199 -0
- package/skills/design-templates/html-ppt/templates/full-decks/hermes-cyber-terminal/style.css +55 -0
- package/skills/design-templates/html-ppt/templates/full-decks/knowledge-arch-blueprint/README.md +11 -0
- package/skills/design-templates/html-ppt/templates/full-decks/knowledge-arch-blueprint/index.html +190 -0
- package/skills/design-templates/html-ppt/templates/full-decks/knowledge-arch-blueprint/style.css +49 -0
- package/skills/design-templates/html-ppt/templates/full-decks/obsidian-claude-gradient/README.md +11 -0
- package/skills/design-templates/html-ppt/templates/full-decks/obsidian-claude-gradient/index.html +144 -0
- package/skills/design-templates/html-ppt/templates/full-decks/obsidian-claude-gradient/style.css +59 -0
- package/skills/design-templates/html-ppt/templates/full-decks/pitch-deck/README.md +9 -0
- package/skills/design-templates/html-ppt/templates/full-decks/pitch-deck/index.html +148 -0
- package/skills/design-templates/html-ppt/templates/full-decks/pitch-deck/style.css +40 -0
- package/skills/design-templates/html-ppt/templates/full-decks/presenter-mode-reveal/README.md +102 -0
- package/skills/design-templates/html-ppt/templates/full-decks/presenter-mode-reveal/index.html +187 -0
- package/skills/design-templates/html-ppt/templates/full-decks/presenter-mode-reveal/style.css +216 -0
- package/skills/design-templates/html-ppt/templates/full-decks/product-launch/README.md +8 -0
- package/skills/design-templates/html-ppt/templates/full-decks/product-launch/index.html +121 -0
- package/skills/design-templates/html-ppt/templates/full-decks/product-launch/style.css +39 -0
- package/skills/design-templates/html-ppt/templates/full-decks/tech-sharing/README.md +8 -0
- package/skills/design-templates/html-ppt/templates/full-decks/tech-sharing/index.html +156 -0
- package/skills/design-templates/html-ppt/templates/full-decks/tech-sharing/style.css +49 -0
- package/skills/design-templates/html-ppt/templates/full-decks/testing-safety-alert/README.md +11 -0
- package/skills/design-templates/html-ppt/templates/full-decks/testing-safety-alert/index.html +183 -0
- package/skills/design-templates/html-ppt/templates/full-decks/testing-safety-alert/style.css +62 -0
- package/skills/design-templates/html-ppt/templates/full-decks/weekly-report/README.md +8 -0
- package/skills/design-templates/html-ppt/templates/full-decks/weekly-report/index.html +127 -0
- package/skills/design-templates/html-ppt/templates/full-decks/weekly-report/style.css +55 -0
- package/skills/design-templates/html-ppt/templates/full-decks/xhs-pastel-card/README.md +11 -0
- package/skills/design-templates/html-ppt/templates/full-decks/xhs-pastel-card/index.html +147 -0
- package/skills/design-templates/html-ppt/templates/full-decks/xhs-pastel-card/style.css +66 -0
- package/skills/design-templates/html-ppt/templates/full-decks/xhs-post/README.md +9 -0
- package/skills/design-templates/html-ppt/templates/full-decks/xhs-post/index.html +133 -0
- package/skills/design-templates/html-ppt/templates/full-decks/xhs-post/style.css +47 -0
- package/skills/design-templates/html-ppt/templates/full-decks/xhs-white-editorial/README.md +11 -0
- package/skills/design-templates/html-ppt/templates/full-decks/xhs-white-editorial/index.html +187 -0
- package/skills/design-templates/html-ppt/templates/full-decks/xhs-white-editorial/style.css +63 -0
- package/skills/design-templates/html-ppt/templates/full-decks-index.html +82 -0
- package/skills/design-templates/html-ppt/templates/layout-showcase.html +47 -0
- package/skills/design-templates/html-ppt/templates/single-page/arch-diagram.html +46 -0
- package/skills/design-templates/html-ppt/templates/single-page/big-quote.html +18 -0
- package/skills/design-templates/html-ppt/templates/single-page/bullets.html +19 -0
- package/skills/design-templates/html-ppt/templates/single-page/chart-bar.html +30 -0
- package/skills/design-templates/html-ppt/templates/single-page/chart-line.html +35 -0
- package/skills/design-templates/html-ppt/templates/single-page/chart-pie.html +36 -0
- package/skills/design-templates/html-ppt/templates/single-page/chart-radar.html +31 -0
- package/skills/design-templates/html-ppt/templates/single-page/code.html +33 -0
- package/skills/design-templates/html-ppt/templates/single-page/comparison.html +47 -0
- package/skills/design-templates/html-ppt/templates/single-page/cover.html +32 -0
- package/skills/design-templates/html-ppt/templates/single-page/cta.html +27 -0
- package/skills/design-templates/html-ppt/templates/single-page/diff.html +35 -0
- package/skills/design-templates/html-ppt/templates/single-page/flow-diagram.html +33 -0
- package/skills/design-templates/html-ppt/templates/single-page/gantt.html +29 -0
- package/skills/design-templates/html-ppt/templates/single-page/image-grid.html +34 -0
- package/skills/design-templates/html-ppt/templates/single-page/image-hero.html +33 -0
- package/skills/design-templates/html-ppt/templates/single-page/kpi-grid.html +19 -0
- package/skills/design-templates/html-ppt/templates/single-page/mindmap.html +38 -0
- package/skills/design-templates/html-ppt/templates/single-page/process-steps.html +27 -0
- package/skills/design-templates/html-ppt/templates/single-page/pros-cons.html +31 -0
- package/skills/design-templates/html-ppt/templates/single-page/roadmap.html +46 -0
- package/skills/design-templates/html-ppt/templates/single-page/section-divider.html +17 -0
- package/skills/design-templates/html-ppt/templates/single-page/stat-highlight.html +17 -0
- package/skills/design-templates/html-ppt/templates/single-page/table.html +33 -0
- package/skills/design-templates/html-ppt/templates/single-page/terminal.html +35 -0
- package/skills/design-templates/html-ppt/templates/single-page/thanks.html +21 -0
- package/skills/design-templates/html-ppt/templates/single-page/three-column.html +18 -0
- package/skills/design-templates/html-ppt/templates/single-page/timeline.html +32 -0
- package/skills/design-templates/html-ppt/templates/single-page/toc.html +26 -0
- package/skills/design-templates/html-ppt/templates/single-page/todo-checklist.html +33 -0
- package/skills/design-templates/html-ppt/templates/single-page/two-column.html +39 -0
- package/skills/design-templates/html-ppt/templates/theme-showcase.html +151 -0
- package/skills/design-templates/html-ppt-course-module/SKILL.md +78 -0
- package/skills/design-templates/html-ppt-course-module/example.html +542 -0
- package/skills/design-templates/html-ppt-dir-key-nav-minimal/SKILL.md +77 -0
- package/skills/design-templates/html-ppt-dir-key-nav-minimal/example.html +366 -0
- package/skills/design-templates/html-ppt-graphify-dark-graph/SKILL.md +77 -0
- package/skills/design-templates/html-ppt-graphify-dark-graph/example.html +402 -0
- package/skills/design-templates/html-ppt-hermes-cyber-terminal/SKILL.md +77 -0
- package/skills/design-templates/html-ppt-hermes-cyber-terminal/example.html +422 -0
- package/skills/design-templates/html-ppt-knowledge-arch-blueprint/SKILL.md +77 -0
- package/skills/design-templates/html-ppt-knowledge-arch-blueprint/example.html +407 -0
- package/skills/design-templates/html-ppt-obsidian-claude-gradient/SKILL.md +77 -0
- package/skills/design-templates/html-ppt-obsidian-claude-gradient/example.html +371 -0
- package/skills/design-templates/html-ppt-pitch-deck/SKILL.md +78 -0
- package/skills/design-templates/html-ppt-pitch-deck/example.html +495 -0
- package/skills/design-templates/html-ppt-presenter-mode-reveal/SKILL.md +78 -0
- package/skills/design-templates/html-ppt-presenter-mode-reveal/example.html +725 -0
- package/skills/design-templates/html-ppt-product-launch/SKILL.md +77 -0
- package/skills/design-templates/html-ppt-product-launch/example.html +467 -0
- package/skills/design-templates/html-ppt-taste-brutalist/SKILL.md +70 -0
- package/skills/design-templates/html-ppt-taste-brutalist/example.html +774 -0
- package/skills/design-templates/html-ppt-taste-editorial/SKILL.md +62 -0
- package/skills/design-templates/html-ppt-taste-editorial/example.html +689 -0
- package/skills/design-templates/html-ppt-tech-sharing/SKILL.md +77 -0
- package/skills/design-templates/html-ppt-tech-sharing/example.html +512 -0
- package/skills/design-templates/html-ppt-testing-safety-alert/SKILL.md +78 -0
- package/skills/design-templates/html-ppt-testing-safety-alert/example.html +413 -0
- package/skills/design-templates/html-ppt-weekly-report/SKILL.md +77 -0
- package/skills/design-templates/html-ppt-weekly-report/example.html +489 -0
- package/skills/design-templates/html-ppt-xhs-pastel-card/SKILL.md +78 -0
- package/skills/design-templates/html-ppt-xhs-pastel-card/example.html +381 -0
- package/skills/design-templates/html-ppt-xhs-post/SKILL.md +78 -0
- package/skills/design-templates/html-ppt-xhs-post/example.html +487 -0
- package/skills/design-templates/html-ppt-xhs-white-editorial/SKILL.md +77 -0
- package/skills/design-templates/html-ppt-xhs-white-editorial/example.html +418 -0
- package/skills/design-templates/html-ppt-zhangzara-8-bit-orbit/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-8-bit-orbit/SKILL.md +93 -0
- package/skills/design-templates/html-ppt-zhangzara-8-bit-orbit/example.html +1640 -0
- package/skills/design-templates/html-ppt-zhangzara-8-bit-orbit/template.json +48 -0
- package/skills/design-templates/html-ppt-zhangzara-biennale-yellow/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-biennale-yellow/SKILL.md +93 -0
- package/skills/design-templates/html-ppt-zhangzara-biennale-yellow/example.html +833 -0
- package/skills/design-templates/html-ppt-zhangzara-biennale-yellow/template.json +49 -0
- package/skills/design-templates/html-ppt-zhangzara-block-frame/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-block-frame/SKILL.md +93 -0
- package/skills/design-templates/html-ppt-zhangzara-block-frame/example.html +1453 -0
- package/skills/design-templates/html-ppt-zhangzara-block-frame/template.json +47 -0
- package/skills/design-templates/html-ppt-zhangzara-blue-professional/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-blue-professional/SKILL.md +93 -0
- package/skills/design-templates/html-ppt-zhangzara-blue-professional/example.html +1423 -0
- package/skills/design-templates/html-ppt-zhangzara-blue-professional/template.json +44 -0
- package/skills/design-templates/html-ppt-zhangzara-bold-poster/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-bold-poster/SKILL.md +93 -0
- package/skills/design-templates/html-ppt-zhangzara-bold-poster/example.html +876 -0
- package/skills/design-templates/html-ppt-zhangzara-bold-poster/template.json +45 -0
- package/skills/design-templates/html-ppt-zhangzara-broadside/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-broadside/SKILL.md +92 -0
- package/skills/design-templates/html-ppt-zhangzara-broadside/example.html +2144 -0
- package/skills/design-templates/html-ppt-zhangzara-broadside/template.json +49 -0
- package/skills/design-templates/html-ppt-zhangzara-capsule/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-capsule/SKILL.md +92 -0
- package/skills/design-templates/html-ppt-zhangzara-capsule/example.html +1413 -0
- package/skills/design-templates/html-ppt-zhangzara-capsule/template.json +51 -0
- package/skills/design-templates/html-ppt-zhangzara-cartesian/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-cartesian/SKILL.md +92 -0
- package/skills/design-templates/html-ppt-zhangzara-cartesian/example.html +1136 -0
- package/skills/design-templates/html-ppt-zhangzara-cartesian/template.json +47 -0
- package/skills/design-templates/html-ppt-zhangzara-cobalt-grid/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-cobalt-grid/SKILL.md +93 -0
- package/skills/design-templates/html-ppt-zhangzara-cobalt-grid/example.html +1205 -0
- package/skills/design-templates/html-ppt-zhangzara-cobalt-grid/template.json +49 -0
- package/skills/design-templates/html-ppt-zhangzara-coral/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-coral/SKILL.md +92 -0
- package/skills/design-templates/html-ppt-zhangzara-coral/example.html +1487 -0
- package/skills/design-templates/html-ppt-zhangzara-coral/template.json +45 -0
- package/skills/design-templates/html-ppt-zhangzara-creative-mode/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-creative-mode/SKILL.md +99 -0
- package/skills/design-templates/html-ppt-zhangzara-creative-mode/assets/deck-stage.js +619 -0
- package/skills/design-templates/html-ppt-zhangzara-creative-mode/example.html +636 -0
- package/skills/design-templates/html-ppt-zhangzara-creative-mode/template.json +47 -0
- package/skills/design-templates/html-ppt-zhangzara-daisy-days/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-daisy-days/SKILL.md +93 -0
- package/skills/design-templates/html-ppt-zhangzara-daisy-days/example.html +469 -0
- package/skills/design-templates/html-ppt-zhangzara-daisy-days/template.json +54 -0
- package/skills/design-templates/html-ppt-zhangzara-editorial-tri-tone/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-editorial-tri-tone/SKILL.md +98 -0
- package/skills/design-templates/html-ppt-zhangzara-editorial-tri-tone/assets/deck-stage.js +619 -0
- package/skills/design-templates/html-ppt-zhangzara-editorial-tri-tone/example.html +737 -0
- package/skills/design-templates/html-ppt-zhangzara-editorial-tri-tone/template.json +44 -0
- package/skills/design-templates/html-ppt-zhangzara-grove/LICENSE +21 -0
- package/skills/design-templates/html-ppt-zhangzara-grove/SKILL.md +92 -0
- package/skills/design-templates/html-ppt-zhangzara-grove/example.html +1676 -0
- package/skills/design-templates/html-ppt-zhangzara-grove/template.json +51 -0
- package/skills/figma-code-connect-components/SKILL.md +42 -0
- package/skills/figma-create-design-system-rules/SKILL.md +42 -0
- package/skills/figma-create-new-file/SKILL.md +41 -0
- package/skills/figma-generate-design/SKILL.md +42 -0
- package/skills/figma-generate-library/SKILL.md +42 -0
- package/skills/figma-implement-design/SKILL.md +42 -0
- package/skills/figma-use/SKILL.md +42 -0
- package/skills/full-page-screenshot/SKILL.md +42 -0
- package/skills/interview-me/SKILL.md +64 -0
- package/skills/planning-and-task-breakdown/SKILL.md +52 -0
- package/skills/sora/SKILL.md +43 -0
- package/skills/theme-factory/SKILL.md +43 -0
- package/skills/web-design-guidelines/SKILL.md +42 -0
- package/dist/agents/prompt-library/orchestration.d.ts +0 -4
- package/skills/brainstorming/SKILL.md +0 -164
- package/skills/brainstorming/scripts/frame-template.html +0 -214
- package/skills/brainstorming/scripts/helper.js +0 -88
- package/skills/brainstorming/scripts/server.cjs +0 -354
- package/skills/brainstorming/scripts/start-server.sh +0 -148
- package/skills/brainstorming/scripts/stop-server.sh +0 -56
- package/skills/brainstorming/spec-document-reviewer-prompt.md +0 -49
- 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
|
@@ -68,11 +68,11 @@ Manual alternative:
|
|
|
68
68
|
opencode debug config
|
|
69
69
|
hiai-opencode doctor
|
|
70
70
|
hiai-opencode mcp-status
|
|
71
|
-
hiai-opencode export-mcp .mcp.json
|
|
71
|
+
hiai-opencode export-mcp .opencode/.mcp.json
|
|
72
72
|
opencode mcp list --print-logs --log-level INFO
|
|
73
73
|
```
|
|
74
74
|
|
|
75
|
-
`opencode mcp list` reads static `.mcp.json` files in many OpenCode versions. Runtime MCP servers launched by the plugin may work but not appear there until a static config exists. The plugin auto-exports `.mcp.json` on startup when missing. In `always` mode it overwrites only hiai-managed exports unless forced. `hiai-opencode export-mcp .mcp.json` can refresh it manually.
|
|
75
|
+
`opencode mcp list` reads static `.opencode/.mcp.json` files in many OpenCode versions. Runtime MCP servers launched by the plugin may work but not appear there until a static config exists. The plugin auto-exports `.opencode/.mcp.json` on startup when missing. In `always` mode it overwrites only hiai-managed exports unless forced. `hiai-opencode export-mcp .opencode/.mcp.json` can refresh it manually.
|
|
76
76
|
|
|
77
77
|
## Post-Install Bootstrap Instructions
|
|
78
78
|
|
|
@@ -122,7 +122,7 @@ When a user asks OpenCode or another agent to finish installing this plugin, fol
|
|
|
122
122
|
- `opencode debug config`
|
|
123
123
|
- `hiai-opencode doctor`
|
|
124
124
|
- `hiai-opencode mcp-status`
|
|
125
|
-
- `hiai-opencode export-mcp .mcp.json` when static MCP visibility is needed
|
|
125
|
+
- `hiai-opencode export-mcp .opencode/.mcp.json` when static MCP visibility is needed
|
|
126
126
|
- `opencode mcp list --print-logs --log-level INFO`
|
|
127
127
|
|
|
128
128
|
### MCP Setup Matrix
|
|
@@ -158,7 +158,7 @@ Check which services can run here:
|
|
|
158
158
|
|
|
159
159
|
Report missing keys without printing secret values. Never invent or hardcode API keys.
|
|
160
160
|
|
|
161
|
-
Run hiai-opencode mcp-status and opencode debug config. If the user wants opencode mcp list visibility, run hiai-opencode export-mcp .mcp.json before opencode mcp list --print-logs --log-level INFO. If something is missing, propose or run only user-level/project-local install commands.
|
|
161
|
+
Run hiai-opencode mcp-status and opencode debug config. If the user wants opencode mcp list visibility, run hiai-opencode export-mcp .opencode/.mcp.json before opencode mcp list --print-logs --log-level INFO. If something is missing, propose or run only user-level/project-local install commands.
|
|
162
162
|
```
|
|
163
163
|
|
|
164
164
|
## Expected Agent State
|
|
@@ -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 |
|
|
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 |
|
|
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:
|
|
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` (
|
|
273
|
-
- Coder: `src/agents/coder/agent.ts`, `src/agents/coder/
|
|
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
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
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
|
|
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
|
|
|
@@ -540,26 +541,19 @@ If an agent response is missing `<CLOSURE>` at runtime but the source prompts lo
|
|
|
540
541
|
|
|
541
542
|
### `opencode mcp list` does not show hiai-opencode MCP servers
|
|
542
543
|
|
|
543
|
-
- `opencode mcp list` reads static `.mcp.json` files, not runtime plugin MCP
|
|
544
|
-
- Run `hiai-opencode export-mcp .mcp.json` to write a static export
|
|
544
|
+
- `opencode mcp list` reads static `.opencode/.mcp.json` files, not runtime plugin MCP
|
|
545
|
+
- Run `hiai-opencode export-mcp .opencode/.mcp.json` to write a static export
|
|
545
546
|
- The plugin auto-exports on startup when `HIAI_OPENCODE_AUTO_EXPORT_MCP` is not disabled
|
|
546
547
|
|
|
547
548
|
### Firecrawl tools return "FIRECRAWL_API_KEY missing" despite having the key set
|
|
548
549
|
|
|
549
|
-
The `
|
|
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
|
-
```
|
|
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
|
-
|
|
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 (
|
|
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
|
-
"
|
|
635
|
+
"stitch": {
|
|
642
636
|
"enabled": true,
|
|
643
|
-
"environment": { "
|
|
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
|
-
|
|
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
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# hiai-opencode
|
|
2
2
|
|
|
3
3
|
[](https://github.com/HiAi-gg/hiai-opencode/actions/workflows/ci.yml?query=branch%3Amain)
|
|
4
|
-
[](https://www.npmjs.com/package/@hiai-gg/hiai-opencode)
|
|
5
5
|
[](LICENSE.md)
|
|
6
6
|
|
|
7
7
|
`hiai-opencode` is an OpenCode plugin that turns vanilla OpenCode into an opinionated multi-agent cockpit.
|
|
@@ -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,
|
|
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`, `
|
|
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.
|
|
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.
|
|
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
|
|
|
@@ -247,12 +275,12 @@ See [Environment Variables And Keys](#environment-variables-and-keys) for the fu
|
|
|
247
275
|
opencode
|
|
248
276
|
hiai-opencode doctor
|
|
249
277
|
hiai-opencode mcp-status
|
|
250
|
-
hiai-opencode export-mcp .mcp.json
|
|
278
|
+
hiai-opencode export-mcp .opencode/.mcp.json
|
|
251
279
|
opencode debug config
|
|
252
280
|
opencode mcp list --print-logs --log-level INFO
|
|
253
281
|
```
|
|
254
282
|
|
|
255
|
-
`opencode mcp list` reads static `.mcp.json` files in many OpenCode versions. Runtime MCP servers launched by plugins may work but not appear there. If you want `opencode mcp list` visibility, run `hiai-opencode export-mcp .mcp.json` first.
|
|
283
|
+
`opencode mcp list` reads static `.mcp.json` files in many OpenCode versions. Runtime MCP servers launched by plugins may work but not appear there. If you want `opencode mcp list` visibility, run `hiai-opencode export-mcp .opencode/.mcp.json` first.
|
|
256
284
|
|
|
257
285
|
`hiai-opencode mcp-status` is the fastest visibility check. It does not change OpenCode config; it reports config location, enabled MCP services, missing keys, and basic local runtime availability.
|
|
258
286
|
|
|
@@ -292,17 +320,18 @@ 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
|
|
|
302
331
|
Run verification commands where available:
|
|
303
332
|
- opencode debug config
|
|
304
333
|
- hiai-opencode mcp-status
|
|
305
|
-
- hiai-opencode export-mcp .mcp.json
|
|
334
|
+
- hiai-opencode export-mcp .opencode/.mcp.json
|
|
306
335
|
- opencode mcp list --print-logs --log-level INFO
|
|
307
336
|
|
|
308
337
|
If a dependency is missing, install only user-level or project-local dependencies, explain every command before running it, and do not use sudo/admin rights unless the user explicitly asks.
|
|
@@ -334,15 +363,14 @@ Prompting has two main layers:
|
|
|
334
363
|
|
|
335
364
|
Important prompt entrypoints:
|
|
336
365
|
|
|
337
|
-
- `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
|
|
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
|
-
|
|
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,24 +539,24 @@ 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 `
|
|
542
|
+
- enabled MCP integrations with missing required env vars such as `STITCH_AI_API_KEY`
|
|
512
543
|
|
|
513
544
|
Available CLI:
|
|
514
545
|
|
|
515
546
|
```bash
|
|
516
547
|
hiai-opencode doctor
|
|
517
548
|
hiai-opencode mcp-status
|
|
518
|
-
hiai-opencode export-mcp .mcp.json
|
|
549
|
+
hiai-opencode export-mcp .opencode/.mcp.json
|
|
519
550
|
```
|
|
520
551
|
|
|
521
|
-
By default, the plugin auto-exports `.mcp.json` at workspace startup when the file is missing. This closes the visibility gap where runtime plugin MCP works but `opencode mcp list` only reads static files. Control it with:
|
|
552
|
+
By default, the plugin auto-exports `.opencode/.mcp.json` at workspace startup when the file is missing. This closes the visibility gap where runtime plugin MCP works but `opencode mcp list` only reads static files. Control it with:
|
|
522
553
|
|
|
523
554
|
```bash
|
|
524
555
|
export HIAI_OPENCODE_AUTO_EXPORT_MCP=if-missing # default
|
|
525
556
|
export HIAI_OPENCODE_AUTO_EXPORT_MCP=always # overwrite only managed hiai-opencode exports
|
|
526
557
|
export HIAI_OPENCODE_AUTO_EXPORT_MCP=force # force overwrite even non-managed files
|
|
527
558
|
export HIAI_OPENCODE_AUTO_EXPORT_MCP=0 # disable auto-export
|
|
528
|
-
export HIAI_OPENCODE_MCP_EXPORT_PATH=.mcp.json # override path
|
|
559
|
+
export HIAI_OPENCODE_MCP_EXPORT_PATH=.opencode/.mcp.json # override path
|
|
529
560
|
export HIAI_OPENCODE_EXPORT_MCP_MODE=safe # export-mcp command mode: safe|force
|
|
530
561
|
```
|
|
531
562
|
|
|
@@ -542,7 +573,7 @@ Use:
|
|
|
542
573
|
|
|
543
574
|
```bash
|
|
544
575
|
hiai-opencode mcp-status
|
|
545
|
-
hiai-opencode export-mcp .mcp.json
|
|
576
|
+
hiai-opencode export-mcp .opencode/.mcp.json
|
|
546
577
|
opencode debug config
|
|
547
578
|
opencode mcp list --print-logs --log-level INFO
|
|
548
579
|
```
|
|
@@ -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
|
|
|
@@ -592,7 +623,7 @@ Before publishing:
|
|
|
592
623
|
1. run `bun run build`
|
|
593
624
|
2. run `npm pack --dry-run`
|
|
594
625
|
3. verify `debug config`
|
|
595
|
-
4. run `hiai-opencode export-mcp .mcp.json` if you need static `mcp list` visibility
|
|
626
|
+
4. run `hiai-opencode export-mcp .opencode/.mcp.json` if you need static `mcp list` visibility
|
|
596
627
|
|
|
597
628
|
Publish:
|
|
598
629
|
|
|
@@ -343,7 +343,7 @@ function checkStaticMcpFreshness(outputPath, config) {
|
|
|
343
343
|
}
|
|
344
344
|
}
|
|
345
345
|
|
|
346
|
-
function exportMcp(outputPath = join(process.cwd(), ".mcp.json")) {
|
|
346
|
+
function exportMcp(outputPath = join(process.cwd(), ".opencode", ".mcp.json")) {
|
|
347
347
|
const { path, config, error } = loadConfig()
|
|
348
348
|
if (error) {
|
|
349
349
|
console.error(`Config parse warning: ${error}`)
|
|
@@ -793,7 +793,7 @@ function statusIcon(level) {
|
|
|
793
793
|
|
|
794
794
|
async function mcpStatus(options = {}) {
|
|
795
795
|
const { path, config, error } = loadConfig()
|
|
796
|
-
const staticMcpPath = join(process.cwd(), ".mcp.json")
|
|
796
|
+
const staticMcpPath = join(process.cwd(), ".opencode", ".mcp.json")
|
|
797
797
|
console.log(options.doctor ? "hiai-opencode doctor" : "hiai-opencode mcp-status")
|
|
798
798
|
console.log(`Config: ${path ?? "not found; using defaults"}`)
|
|
799
799
|
if (error) console.log(`Config parse warning: ${error}`)
|
|
@@ -873,7 +873,7 @@ async function mcpStatus(options = {}) {
|
|
|
873
873
|
|
|
874
874
|
console.log("")
|
|
875
875
|
console.log("Recommended follow-ups:")
|
|
876
|
-
console.log(" - hiai-opencode export-mcp .mcp.json")
|
|
876
|
+
console.log(" - hiai-opencode export-mcp .opencode/.mcp.json")
|
|
877
877
|
console.log(" - opencode debug config")
|
|
878
878
|
console.log(" - opencode mcp list --print-logs --log-level INFO")
|
|
879
879
|
}
|
|
@@ -937,7 +937,7 @@ async function runDiagnose(outputPath) {
|
|
|
937
937
|
sections.push(` CWD: ${process.cwd()}`)
|
|
938
938
|
sections.push(` Package root: ${PACKAGE_ROOT}`)
|
|
939
939
|
sections.push(` Config: ${configPath ?? "(none)"}`)
|
|
940
|
-
sections.push(` Static MCP: ${join(process.cwd(), ".mcp.json")}`)
|
|
940
|
+
sections.push(` Static MCP: ${join(process.cwd(), ".opencode", ".mcp.json")}`)
|
|
941
941
|
sections.push("")
|
|
942
942
|
|
|
943
943
|
sections.push("=".repeat(60))
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"strategist": {
|
|
27
27
|
"$ref": "#/definitions/modelSlot"
|
|
28
28
|
},
|
|
29
|
-
"
|
|
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
|
-
"
|
|
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
|
-
"
|
|
55
|
+
"manager",
|
|
59
56
|
"critic",
|
|
60
57
|
"designer",
|
|
61
58
|
"researcher",
|
|
62
|
-
"
|
|
63
|
-
"
|
|
64
|
-
"
|
|
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
|
|
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 "
|
|
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
|
-
|
|
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,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;
|