workflow

A workflow skill for embedded-device projects that plans and runs building, flashing, debugging, observing, and diagnosis tasks.

In plain words
What is it for?
It supports Keil, GCC, or EIDE builds and J-Link, OpenOCD, or probe-rs for flashing, debugging, and device output such as RTT, SWO, semihosting, or ITM.
Why use it?
It coordinates available build and hardware tools so project settings and preferred backends are selected in a consistent order.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/zhinkgit/embeddedskills/workflow
Any agent
npx skills add zhinkgit/embeddedskills --skill workflow
Clone the repo
git clone --depth 1 https://github.com/zhinkgit/embeddedskills

Made for: Claude Code, Codex.

Per session 88 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 993 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00088 $0.00993
Opus 5 $0.00044 $0.00496
Sonnet 5 $0.00018 $0.00199
Haiku 4.5 $0.00009 $0.00099

Measured yesterday against content hash 5187fa1d3580, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

workflow scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

The scan reads SKILL.md. This mod also ships 3 executable files (scripts/workflow_plan.py, scripts/workflow_run.py, scripts/workflow_runtime.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

workflow/SKILL.md · 80 lines

How it starts

The opening of the file, as written. The whole thing — 80 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Workflow 编排层

本 skill 不重复实现底层逻辑,只做发现、选择、串联和聚合。

支持 Keil / GCC / EIDE 三种构建后端,以及 jlink / openocd / probe-rs 三种 flash/debug/observe 后端。

observe 阶段当前会给出 jlink:rttjlink:swoopenocd:semihostingopenocd:itmprobe-rs:rtt 这几类候选观测后端。

命令

python <skill-dir>/scripts/workflow_plan.py --json
python <skill-dir>/scripts/workflow_run.py plan --json
python <skill-dir>/scripts/workflow_run.py build --json
python <skill-dir>/scripts/workflow_run.py build-flash --json
python <skill-dir>/scripts/workflow_run.py build-debug --json
python <skill-dir>/scripts/workflow_run.py observe --json
python <skill-dir>/scripts/workflow_run.py diagnose --json

配置说明

workflow 不再维护独立的工程配置结构,所有工程参数统一从 .embeddedskills/config.json 读取。

配置结构

.embeddedskills/config.json 中的 workflow 段仅包含首选后端配置:

{
  "workflow": {
    "preferred_build": "auto",
    "preferred_flash": "auto",
    "preferred_debug": "auto",
    "preferred_observe": "auto"
  }
}

workflow 通过读取 .embeddedskills/config.json 中其他 skill 的配置段来获取工程参数(如 keil.projecteide.projecteide.configjlink.deviceprobe-rs.chip 等)。

参数解析顺序

按以下决策树依次判断,命中即停止:

  1. CLI 参数(优先级最高)

    • 条件:用户在命令行传入 --build-backend--flash-backend 等参数
    • 示例:workflow_run.py build-flash --build-backend=keil --flash-backend=jlink
    • --build-backend 可选值:auto / keil / gcc / eide
    • 行为:直接使用该参数指定的后端,跳过后续步骤
  2. 配置文件(次优先)

    • 条件:CLI 未指定,且 .embeddedskills/config.jsonworkflow 段中对应 preferred_* 字段不为 "auto"
    • 示例:"preferred_build": "keil" → 使用 keil 作为构建后端
    • 行为:读取配置值并使用,跳过自动发现
  3. 自动发现(兜底)

    • 条件:CLI 未指定,且配置中 preferred_*"auto" 或字段缺失
    • 示例:"preferred_flash": "auto" → 扫描 workspace 自动推断可用 flash 后端
    • 行为:枚举候选后端列表;若唯一则直接使用,若多个则返回列表请用户确认

成功执行后,实际使用的后端会自动写回 .embeddedskills/config.jsonworkflow 段。

规则

  • 发现多个工程或多个候选后端时,只返回候选列表,不自动猜测
  • 构建、烧录、调试、观测之间优先通过 .embeddedskills/state.json 串联
  • observe 只生成推荐命令,不在 workflow 内直接长时间占用观测通道
  • 失败时优先返回哪个阶段失败,以及底层脚本的结构化错误
  • workflow 与其他 Skill 的协同只通过 .embeddedskills/config.json.embeddedskills/state.json 和子进程调用底层 Skill

Read the full file on GitHub · 80 lines

Files

What ships with it

5 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 80 lines · 88 tokens per session scan A 5187fa1d3580

Subscribe to this mod's changes

workflow is a skill published in the GitHub repository zhinkgit/embeddedskills (606 stars, last pushed 12d ago), licensed MIT. It adds 88 tokens to every session and 993 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

browser-qa

Use when you need lightweight browser QA for a web page, local HTML file, or app: inspect console errors, broken assets, keyboard/focus behavior, viewport readability, and publish evidence-backed findings JSON through a local HTML report viewer.

liatrio-labs/ai-prompts · 51 tokens

mastra-api

Interact with Mastra development server API for debugging agents, viewing conversation threads, listing/inspecting tools and workflows, accessing observability data, and managing Mastra resources. Use when working with Mastra agents and need to inspect runtime state, debug agent errors, view thread history, see…

liatrio-labs/ai-prompts · 80 tokens

create-mermaid-diagrams

Create, validate, and repair Mermaid diagrams for technical documentation with a deterministic CLI feedback loop. Use when an AI needs to create Mermaid diagrams, improve Mermaid diagram quality, validate Mermaid fences in markdown, diagnose Mermaid rendering failures, or fix Mermaid syntax and formatting issues.

liatrio-labs/ai-prompts · 58 tokens

create-pull-request

Generate a reviewer-ready pull request or merge request title and description from branch changes. Use when a user asks to draft PR/MR content, summarize branch deltas against a base branch, or optionally create the PR with gh/glab after approval.

liatrio-labs/ai-prompts · 54 tokens

tilt-dev

Manage local development environments with Tilt. Use when working with projects that run services via Tilt (indicated by presence of Tiltfile), including checking service status, viewing logs, troubleshooting connectivity issues, or managing the Tilt stack. Essential for projects using Tiltfile with localresource for…

liatrio-labs/ai-prompts · 68 tokens

uv-usage

Provides concise guidance for using uv (Python package manager), including project workflows, pip-compatible commands, Python version management, and PEP 723 inline script dependencies. Use when users mention uv, uv run, inline dependencies, PEP 723, or Python dependency/project management.

liatrio-labs/ai-prompts · 59 tokens