GitHub - smokeeaasd/yet-another-opencode-plugin: Yet another opencode plugin for lean, direct AI workflows. · GitHub
/" data-turbo-transient="true" />
Skip to content
Search/
Sign in<br>Sign upAppearance settings
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
smokeeaasd
yet-another-opencode-plugin
Public
Notifications<br>You must be signed in to change notification settings
Fork
Star
main
BranchesTags
Go to file
CodeOpen more actions menu
Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit
History<br>1 Commit<br>1 Commit
.github/workflows
.github/workflows
scripts
scripts
src
src
tests
tests
.gitignore
.gitignore
LICENSE
LICENSE
README.md
README.md
bun.lock
bun.lock
package.json
package.json
tsconfig.json
tsconfig.json
View all files
Repository files navigation
yet another opencode plugin
An opencode plugin that merges the best of two worlds:
Terse, direct responses — single low intensity: trim filler and hedging, keep<br>full sentences, preserve technical terms verbatim. Auto-clarity drops the terseness<br>on security warnings, irreversible actions, and ambiguity.
Lazy dev — YAGNI ladder before writing code, reuse over reinvention,<br>bug fix = root cause not symptom, strict calibration at trust boundaries, one<br>runnable check per non-trivial change.
Plus two read-only primary agents:
Review — always runs the full protocol: functional (YAGNI, overengineering, dead<br>code, root cause) and four non-functional layers (performance, security,<br>maintainability, architecture), using pattern skills and conditional deep-dive<br>subagents.
Dream — a planner that settles the architectural decisions of a new build before<br>code is written, asking only what matters and handing a plan to Build.
Install
Get the CLI, then register the plugin in an opencode config.
1. Install the CLI
Globally (the command lands in your PATH), or on demand with bunx/npx/pnpm dlx (no PATH pollution):
# or: bun install -g ...<br># or on demand — any of these are equivalent<br>bunx --bun yet-another-opencode-plugin install --global<br>npx yet-another-opencode-plugin install --global<br>pnpm dlx yet-another-opencode-plugin install --global">npm install -g package-or-tarball> # or: bun install -g ...<br># or on demand — any of these are equivalent<br>bunx --bun yet-another-opencode-plugin install --global<br>npx yet-another-opencode-plugin install --global<br>pnpm dlx yet-another-opencode-plugin install --global
--bun is a bunx-only flag; it is optional and not supported by npx/pnpm dlx.
2. Register the plugin in an opencode config
yet-another-opencode-plugin install adds the entry: --global targets<br>~/.config/opencode/opencode.json, the default targets ./opencode.json.
Until the package is published to npm, register the local build instead:
# after `bun run build`, use the local plugin file<br>bunx --bun yet-another-opencode-plugin install --global --entry-file
--entry-file writes the local dist/plugin.mjs path instead of the package name.
The Review and Dream agents, the Review's deep-dive subagents, and the skill paths are<br>registered at runtime by the plugin — no manual editing. Both opencode.json and<br>opencode.jsonc are supported; JSONC files are edited in place, preserving comments<br>and formatting.
Usage
Review agent — cycle with Tab to the review agent, then<br>ask it to review (e.g. "review the changes"). It is read-only, like Plan: it always<br>runs the full protocol and reports; it never edits.
Dream agent — cycle with Tab to the dream agent to settle<br>the architectural decisions of a new build before code is written. It is read-only:<br>it asks the decisions that matter and hands a plan to Build.
Ruleset — the yaop communication + engineering rules are embedded by default in<br>the review and dream agent prompts. The main Build/Plan agents are untouched.
Configuration
opencode validates opencode.json strictly, so plugin settings live in<br>~/.config/opencode/yaop.json:
"yaop": {<br>"review": {<br>"model": "anthropic/claude-haiku-4-20250514",<br>"deepDiveThreshold": "high",<br>"parallelSkills": true<br>},<br>"dream": {<br>"model": "anthropic/claude-haiku-4-20250514"
Key<br>Default<br>Meaning
review.model<br>(inherit global)<br>Override the model for the Review agent. Omit to use your global model; change at any time via /models.
review.deepDiveThreshold<br>"high"<br>Severity at or above which the Review spawns the matching deep-dive subagent. critical | high | medium | never.
review.parallelSkills<br>true<br>Analyze the four NFR layers in parallel (true) or one at a time (false).
review.deepDiveSubagents<br>all true<br>Per-layer toggle: { "security", "performance", "architecture" } booleans.
dream.model<br>(inherit global)<br>Override the model for the Dream planner. Omit to use your global model.
CLI equivalents: --review.model=MODEL,...