STOP - Read before ANY tool call
- Read
E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/rules/guardrails.md
- Read
_shared/sdd-artifacts/SESSION.md; load session-state for $Cwd
- If the relevant gate is not approved: STOP - ask user (pt-BR) - do NOT Write/Shell
- SDD/develop skills: after ONE step/task, STOP session - handoff only
- This skill body is English; user-facing prompts may be (pt-BR)
Step -1 - Gate check (report in chat before continuing)
Gate check:
[ ] guardrails.mdc read
[ ] SESSION.md read; session-state loaded
[ ] User confirmed current action (sim)
-> If any unchecked: STOP
Step -1b - Caveman Mode (Full cap)
- Read
E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/sdd/preferences.json (create { "caveman_mode": false, "caveman_level": "full" } if missing).
- If
caveman_mode is false: continue without compression.
- If true: load
E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/_shared/caveman/CAVEMAN.md; apply Full participation cap + prefs caveman_level (Lite skills never escalate); show once: [Caveman] Modo ativo (respostas compactas, level={effective}). Digite caveman off para desativar.
- Honor
caveman on|off|status|lite|full|ultra (and stop caveman / normal mode) during the session.
- Auto-Clarity + never-compress gates/drafts/paths per
CAVEMAN.md.
Trigger
Use when user asks for /developer or requests generic coding/refactoring tasks without specifying a stack.
Outcome
Correct stack skill loaded and executed, or ad-hoc implementation in fallback mode with optional handoff to /commit.
Lazy-load (only when needed)
| When |
Path (after scripts/sync-cursor.ps1) |
| Git / language policy |
E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/AGENTS.md, E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/rules/branch-validation.mdc |
| Developer flow |
E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/_shared/developer-common/GUIDE.md |
| Context pressure |
E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/rules/context-management.mdc |
| Subagent-first / SPAWN.md |
E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/_shared/developer-common/subagent-first.md, E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/_shared/agents/SPAWN.md |
| Caveman Mode (if active) |
E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/_shared/caveman/CAVEMAN.md |
Do not load dev_persona or Antigravity KI artifacts.
Frontend design routing
Before UI implementation, check project context:
- If the task is net-new UI or a visual redesign and
PRODUCT.md is missing -> recommend /impeccable init first (new session).
- If
docs/DESIGN-BRIEF.md (or docs/design/DESIGN-BRIEF.md) exists -> treat it as acceptance source; delegate to the matching *-developer skill without reinterpreting visual decisions.
- One session = design (
impeccable shape) or implementation (*-developer), not both.
Premium UI without a brief -> suggest /impeccable shape before stack implementation.
Routing Logic
Inspect the workspace - identify stack in this order (frameworks before generic Node):
| Signal |
Route to |
User asks for new Blip plugin scaffold (no existing blip-ds project) |
blip-plugin-developer |
package.json with blip-ds and iframe-message-proxy (existing Blip plugin) |
react-developer (loads blip-guidelines/) |
.csproj with Microsoft.AspNetCore.Components, or _Imports.razor / App.razor |
blazor-developer |
package.json with electron, electron-builder, or electron-vite |
electron-developer |
package.json with vue (and not React/Angular) |
vue-developer |
package.json with react-native or expo |
react-native-developer |
package.json with react |
react-developer |
package.json with @angular/core or angular |
angular-developer |
package.json (Node.js, no framework above) |
javascript-developer |
.csproj / .sln without Blazor markers |
dotnet-developer |
pom.xml, build.gradle, build.gradle.kts, or settings.gradle |
java-developer |
.py, requirements.txt, pyproject.toml |
python-developer |
Invoke the specialized skill (if match found):
- Silently read the
SKILL.md of the matched stack under E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/:
blip-plugin-developer, blazor-developer, electron-developer, vue-developer, react-native-developer, dotnet-developer, java-developer, react-developer, angular-developer, javascript-developer, or python-developer
- Assume the identity and instructions of that skill immediately.
- Do not ask the user for confirmation to switch skills.
Fallback mode (if no match found):
- If no major framework structure is detected (e.g., isolated
.html, .sh, .bat, .ps1 files), do not delegate.
- Assume the task directly using standard, secure engineering practices as a Senior Developer.
- Proceed to the Execution Process below.
Execution Process (fallback mode only)
Subagent-first (before implement)
Stack *-developer skills own this policy when routed. In fallback mode: classify complexity → consult capability subagents → if medium/complex and native: spawn ≤2 children (scoped paths + receipt); trivial stays in-parent; if subagents=none or Task unavailable → fallback in-parent (never hard-fail). Load SPAWN.md + subagent-first.md; do not paste guidelines into child prompts.
0. Workspace
Confirm target repo, read README.md (if exists), and summarize requested acceptance.
1. Micro-plan
Define 2-5 concrete tasks. Checkpoint context usage after each major change per context-management.mdc.
2. Implement
Write clean, maintainable code following universal best practices for the target language (e.g., HTML, Bash, Python script).
3. Tests / Validation
Run local scripts or linting tools to ensure the code executes without syntax errors.
4. Handoff
Offer /commit. Do not commit automatically.
Must not
- Paste guideline packs into child prompts (pass scoped paths + require receipt only)
- Spawn children for trivial work (keep in-parent)
- Hard-fail when capability
subagents is none or Task is unavailable (use fallback in-parent)
- Auto-commit or auto-PR
- Leave AI traces in code comments or identifiers (see
ai-stealth.mdc)
- Delegate when a clear stack match exists
Handoff
| Situation |
Next |
| Commit |
/commit |
| .NET work (explicit) |
/dotnet-developer |
| Java work (explicit) |
/java-developer |
| Large scope |
/sdd-spec -> sdd-plan -> sdd-develop |
| UI design / brief |
/impeccable (shape / craft) |
| New Blip plugin scaffold |
/blip-plugin-developer |
1---2name: developer-23description: Smart router for stack skills, or senior fullstack for ad-hoc scripts/HTML/automation. Use for generic development or when invoking /developer.4---567## STOP - Read before ANY tool call891. Read `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/rules/guardrails.md`102. Read `_shared/sdd-artifacts/SESSION.md`; load session-state for `$Cwd`113. If the relevant gate is not approved: **STOP** - ask user **(pt-BR)** - do **NOT** Write/Shell124. SDD/develop skills: after **ONE** step/task, **STOP** session - handoff only135. This skill body is **English**; user-facing prompts may be **(pt-BR)**1415### Step -1 - Gate check (report in chat before continuing)1617```18Gate check:19[ ] guardrails.mdc read20[ ] SESSION.md read; session-state loaded21[ ] User confirmed current action (sim)22-> If any unchecked: STOP23```2425### Step -1b - Caveman Mode (Full cap)261. Read `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/sdd/preferences.json` (create `{ "caveman_mode": false, "caveman_level": "full" }` if missing).272. If `caveman_mode` is false: continue without compression.283. If true: load `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/_shared/caveman/CAVEMAN.md`; apply **Full** participation cap + prefs `caveman_level` (Lite skills never escalate); show once: `[Caveman] Modo ativo (respostas compactas, level={effective}). Digite caveman off para desativar.`294. Honor `caveman on|off|status|lite|full|ultra` (and `stop caveman` / `normal mode`) during the session.305. Auto-Clarity + never-compress gates/drafts/paths per `CAVEMAN.md`.3132---3334## Trigger3536Use when user asks for `/developer` or requests generic coding/refactoring tasks without specifying a stack.3738## Outcome3940Correct stack skill loaded and executed, or ad-hoc implementation in fallback mode with optional handoff to `/commit`.4142## Lazy-load (only when needed)4344| When | Path (after `scripts/sync-cursor.ps1`) |45|------|----------------------------------------|46| Git / language policy | `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/AGENTS.md`, `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/rules/branch-validation.mdc` |47| Developer flow | `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/_shared/developer-common/GUIDE.md` |48| Context pressure | `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/rules/context-management.mdc` |49| Subagent-first / SPAWN.md | `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/_shared/developer-common/subagent-first.md`, `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/_shared/agents/SPAWN.md` |50| Caveman Mode (if active) | `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/_shared/caveman/CAVEMAN.md` |5152Do **not** load `dev_persona` or Antigravity KI artifacts.5354## Frontend design routing5556Before UI implementation, check project context:57581. If the task is **net-new UI** or a **visual redesign** and `PRODUCT.md` is missing -> recommend `/impeccable init` first (new session).592. If `docs/DESIGN-BRIEF.md` (or `docs/design/DESIGN-BRIEF.md`) exists -> treat it as acceptance source; delegate to the matching `*-developer` skill **without reinterpreting visual decisions**.603. One session = design (`impeccable shape`) **or** implementation (`*-developer`), not both.6162Premium UI without a brief -> suggest `/impeccable shape` before stack implementation.6364## Routing Logic65661. **Inspect the workspace** - identify stack in this order (frameworks before generic Node):6768 | Signal | Route to |69 |--------|----------|70 | User asks for **new** Blip plugin scaffold (no existing `blip-ds` project) | `blip-plugin-developer` |71 | `package.json` with `blip-ds` and `iframe-message-proxy` (existing Blip plugin) | `react-developer` (loads `blip-guidelines/`) |72 | `.csproj` with `Microsoft.AspNetCore.Components`, or `_Imports.razor` / `App.razor` | `blazor-developer` |73 | `package.json` with `electron`, `electron-builder`, or `electron-vite` | `electron-developer` |74 | `package.json` with `vue` (and not React/Angular) | `vue-developer` |75 | `package.json` with `react-native` or `expo` | `react-native-developer` |76 | `package.json` with `react` | `react-developer` |77 | `package.json` with `@angular/core` or `angular` | `angular-developer` |78 | `package.json` (Node.js, no framework above) | `javascript-developer` |79 | `.csproj` / `.sln` without Blazor markers | `dotnet-developer` |80 | `pom.xml`, `build.gradle`, `build.gradle.kts`, or `settings.gradle` | `java-developer` |81 | `.py`, `requirements.txt`, `pyproject.toml` | `python-developer` |82832. **Invoke the specialized skill (if match found)**:84 - Silently read the `SKILL.md` of the matched stack under `E:/Source/Repos/agent-dev-toolkit/scripts/validation/fixtures/opencode/skills/`:85 - `blip-plugin-developer`, `blazor-developer`, `electron-developer`, `vue-developer`, `react-native-developer`, `dotnet-developer`, `java-developer`, `react-developer`, `angular-developer`, `javascript-developer`, or `python-developer`86 - Assume the identity and instructions of that skill immediately.87 - Do **not** ask the user for confirmation to switch skills.88893. **Fallback mode (if no match found)**:90 - If no major framework structure is detected (e.g., isolated `.html`, `.sh`, `.bat`, `.ps1` files), **do not delegate**.91 - Assume the task directly using standard, secure engineering practices as a Senior Developer.92 - Proceed to the Execution Process below.9394## Execution Process (fallback mode only)9596### Subagent-first (before implement)9798Stack `*-developer` skills own this policy when routed. In fallback mode: classify complexity → consult capability `subagents` → if medium/complex and `native`: spawn ≤2 children (scoped **paths** + **receipt**); **trivial** stays **in-parent**; if `subagents=none` or Task unavailable → **fallback** **in-parent** (never hard-fail). Load `SPAWN.md` + `subagent-first.md`; do not paste guidelines into child prompts.99100### 0. Workspace101102Confirm target repo, read `README.md` (if exists), and summarize requested acceptance.103104### 1. Micro-plan105106Define 2-5 concrete tasks. Checkpoint context usage after each major change per `context-management.mdc`.107108### 2. Implement109110Write clean, maintainable code following universal best practices for the target language (e.g., HTML, Bash, Python script).111112### 3. Tests / Validation113114Run local scripts or linting tools to ensure the code executes without syntax errors.115116### 4. Handoff117118Offer `/commit`. Do not commit automatically.119120## Must not121122- Paste guideline packs into child prompts (pass scoped **paths** + require **receipt** only)123- Spawn children for **trivial** work (keep **in-parent**)124- Hard-fail when capability `subagents` is `none` or Task is unavailable (use **fallback** **in-parent**)125- Auto-commit or auto-PR126- Leave AI traces in code comments or identifiers (see `ai-stealth.mdc`)127- Delegate when a clear stack match exists128129## Handoff130131| Situation | Next |132|-----------|------|133| Commit | `/commit` |134| .NET work (explicit) | `/dotnet-developer` |135| Java work (explicit) | `/java-developer` |136| Large scope | `/sdd-spec` -> `sdd-plan` -> `sdd-develop` |137| UI design / brief | `/impeccable` (`shape` / `craft`) |138| New Blip plugin scaffold | `/blip-plugin-developer` |