# Embedded Workbench
English · 中文
[](https://github.com/hashgraph-online/hol-guard) Embedded C/C++ firmware toolbox — 4 agents, 7 skills covering FreeRTOS, ISR, NVM storage, Keil MDK (AC5/AC6), ARMCLANG, HardFault triage, state machines, architecture principles, and LVGL patterns. **Cross-platform** — works with Claude Code, Codex CLI, Cursor, Kimi CLI, OpenCode, and ZCode. Built on the [Agent Skills](https://agentskills.io) open standard. ## Components ### Agents (4) | Agent | Description | | ------- | ------------- | | `architecture-steward` | Read-only planning: design packages, module boundaries, slice breakdown | | `design-reviewer` | Design doc fact-check: verifies claims against codebase | | `execution-worker` | Plan → approve → implement cycle with build verification | | `quality-coordinator` | Implementation review: bugs, compliance, closure | ### Skills (8) | Skill | Description | | ------- | ------------- | | `embedded-workbench` | Bootstrap: workflows, policies, sub-agent mapping, proactive suggestions, platform tool mapping, document templates | | `debug-methodology` | 8 iron rules, fix principles, iterative debugging case study | | `embedded-firmware-dev` | FreeRTOS, ISR, NVM storage, async lifecycle, boundary analysis, architecture principles, LVGL pitfalls | | `keil-mdk-build` | UV4 CLI, ARM Compiler 5/6, .map analysis, merge/packaging, build diagnostics | | `c-cpp-dev` | Code generation, style, memory layout, refactoring for C/C++ | | `state-machine-design` | State models, retries, timeouts, transition gates, implementation patterns | | `hardfault-triage` | Processor exception triage — fault registers, stack frames, PC-to-source, root-cause classification | `logicprobe` (design doc & plan claim verification, logic-primitive verification, adversarial probing) was **split out into its own plugin** — see [Other Plugins Recommended](#other-plugins-recommended). > The skill content is mostly distilled from the author's personal embedded/firmware engineering experience and code-cleanliness discipline, based on real-world pitfalls and engineering constraints. ### Deep References `embedded-firmware-dev`, `debug-methodology`, `state-machine-design`, and `c-cpp-dev` include in-depth reference material and code examples. Highlights: 12 architecture principles, embedded patterns (GIF timer safety, state latches, async lifecycle), LVGL pitfalls, 7-round iterative debugging case study, state machine implementation patterns, and embedded C specifics (volatile MMIO, linker sections, ISR wrappers). ## Installation ### Marketplace install (recommended) Add the marketplace to `~/.claude/settings.json`: ```json { "extraKnownMarketplaces": { "embedded-workbench": { "source": { "source": "github", "repo": "AmethystLuna/embedded-workbench" } } } } ``` Then install from CLI: ```bash claude plugin install embedded-workbench@embedded-workbench ``` ### Manual install ```bash git clone https://github.com/AmethystLuna/embedded-workbench.git ~/.claude/plugins/dev/embedded-workbench ``` Then enable in `~/.claude/settings.json`: ```json { "enabledPlugins": { "embedded-workbench@dev": true } } ``` ## DeepSeek Harness (dsh) Native dsh support ships as a cordis plugin bundle at the repository root (the root `package.json` declares `dsh.bundle`): - The skills are discovered as-is by dsh's `skill-filesystem` provider (Agent Skills open standard) — zero code. - The bundle injects the first-model-step gate (1% Rule / Red Flags / Plan Verification Gate) into the first model step of every agent session — the dsh-native counterpart of the Claude `SessionStart` hook. It also registers a model-visible catalog entry (`cordis_inspect`). - The 4 custom agents are intentionally not ported — dsh's native subagent tooling covers parallel multi-agent work. Install: see [`.dsh/INSTALL.md`](.dsh/INSTALL.md) (four options, from plain skill copy to `dsh plugin add`). > DSH install note: the package name is scoped as `@amethystluna/embedded-workbench`. In the web profile's `package.json`, both the dependency key and the `dsh.profile.bundles` entry must use the scoped name; the old unscoped name causes the dsh loader to fail with `ERR_MODULE_NOT_FOUND`. ## Usage The plugin auto-injects a capability notification into the first model step with a skill table, 1% Rule, and Red Flags reinforcement. Skills are loaded on demand: - Say "use Multi-Agent Workflow" or invoke `Skill("embedded-workbench")` for the full workflow system - Domain skills activate automatically when their `Use when` description matches your task — NOT clauses prevent false triggers (e.g., formatting-only won't load c-cpp-dev) - The agent proactively suggests verification, adversarial probing, and parallel subagents when it detects state machines, behavioral claims, or multi-module tasks - No manual CLAUDE.md configuration required ## Codex CLI This plugin also supports OpenAI Codex CLI. Skills follow the Agent Skills standard and work identically across both platforms. Agents are provided in Codex TOML format under `.codex/agents/`. ### Codex install ```bash # Add as a marketplace codex plugin marketplace add AmethystLuna/embedded-workbench # Install codex plugin install embedded-workbench ``` Or manually: ```bash git clone https://github.com/AmethystLuna/embedded-workbench.git ~/.codex/plugins/embedded-workbench ``` Skills are invoked with `$skill-name` (e.g. `$debug-methodology`) or auto-selected by Codex based on task context. ## Cursor Cursor 2.5+ has built-in plugin support. Agents in `agents/` are auto-discovered. ### Cursor install ```bash # Clone to Cursor plugins directory git clone https://github.com/AmethystLuna/embedded-workbench.git ~/.cursor/plugins/embedded-workbench ``` Or install from the Cursor plugin marketplace UI: `/add-plugin AmethystLuna/embedded-workbench` ## Kimi CLI Kimi CLI discovers skills from `.claude/skills/` paths automatically. The `.kimi-plugin/plugin.json` manifest registers the plugin for Kimi's plugin manager. ### Kimi install ```bash # Via Kimi plugin manager /plugins install https://github.com/AmethystLuna/embedded-workbench.git # Or clone manually git clone https://github.com/AmethystLuna/embedded-workbench.git ~/.kimi/plugins/embedded-workbench ``` Skills are invoked with `/skill: