PIO Agent

io.github.jl-codes由 GitHub 帳號 jl-codes 發布v3.1.0更新於 Oct 24, 2026

Build, inspect, flash, and monitor PlatformIO firmware projects with policy-controlled tools.

概覽

AI 產生的概覽

PIO Agent 是本地 MCP 伺服器兼命令列工具,讓助理在政策控管下建置、檢查、燒錄並監控 PlatformIO 嵌入式韌體專案。

可以做什麼
探索開發板與裝置,初始化或檢查 PlatformIO 專案,並精確綁定專案、環境與裝置。建置韌體,並取得建置、上傳與序列埠失敗的結構化診斷。燒錄韌體並監控序列輸出,支援執行期斷言、有界健康檢查與背景任務輪詢。驗證專案就緒狀態、稽核 GPIO 腳位安全並產生開發板情報報告。檢視政策狀態、核准狀態與任務歷史,並以冪等方式取消任務。
適用情境
當助理需要協助 PlatformIO 專案的嵌入式韌體工作時使用,例如設定開發板、建置、診斷失敗,或燒錄並驗證裝置。適合希望以核准閘門方式讓代理驅動硬體流程、而非直接執行原始命令的開發者。
執行需求
以本機程序透過 stdio 執行,通常以 npx 呼叫 platformio-mcp 套件。需要 Node.js 20 或更新版本,以及已安裝的 PlatformIO Core CLI。燒錄與監控還需要連接開發板與序列埠。未宣告驗證、環境變數或標頭。
安裝前請注意
燒錄與重設韌體會寫入實體硬體,屬於高風險操作,在預設政策下需要人工明確核准。read_only、build_only、lab_runner 等政策設定會改變助理可執行的操作,使用前請檢查專案政策檔。操作可被稽核,暴露的日誌中機密會被遮蔽。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 PIO Agent,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[PIO Agent]

PIO Agent

PIO Agent is the open-source, agent-first hardware execution layer for embedded development, built on the PlatformIO MCP runtime.

Release status

The canonical 3.1.0 runtime is published. The 3.2.0 candidate makes the pio-agent CLI the primary adapter (nothing stays running unless asked), and adds a native Codex panel and public plugin listing metadata. See the changelog, compatibility guide, and distribution readiness for implemented behavior and the publication status of each package name.

Brand and Compatibility

PIO Agent is the product and Codex Plugin name. PlatformIO MCP is the underlying MCP runtime and the compatibility identity used by existing installations. The Codex plugin ID, marketplace ID, configuration keys, and skill namespace remain platformio-mcp. On npm, platformio-mcp is the canonical package while pio-mcp and pio-agent are thin compatibility packages that delegate to it. The canonical package also installs both platformio-mcp and pio-agent executable names. This lets existing consumers upgrade without migration while new users see PIO Agent throughout the interface.

It exposes PlatformIO workflows for board discovery, project setup, build, flash, monitor, diagnostics, and task orchestration through:

  • an MCP server adapter
  • a first-class CLI adapter (platformio-mcp / pio-agent)
  • an optional local dashboard for visibility and control

MCP is one adapter. PlatformIO is the first backend.

Quick start (recommended)

bash
npm install -g platformio-mcppio-agent devicespio-agent build --project-dir . --json

No server, no client configuration, nothing left running between commands.

Using it with a coding agent

Install the skills and point your agent at the pio-agent binary. The pio-manager skill documents every command.

MCP server (optional)

MCP remains fully supported for clients that prefer it:

bash
claude mcp add platformio -- node /path/to/platformio-mcp/build/index.js

Note that each session that connects this way runs its own server process. The CLI above avoids that. See Manual MCP Config below for other hosts.

Agent-First Capabilities

  • Project readiness validation (agent_validate_project)
  • Rich build diagnostics with structured error taxonomy (agent_build_diagnose)
  • Board-aware GPIO safety audits (agent_safe_pin_audit)
  • Flash + monitor + runtime assertions (agent_flash_monitor_verify)
  • Persistent workflow artifacts in .pio-mcp-workspace/ (lastAgentReport.json, boardReport.json)
  • Board intelligence reports (agent_generate_board_report)
  • Policy profile introspection (get_policy_status)
  • Exact project/environment/device bindings (agent_resolve_target)
  • Bounded, cursor-based serial health checks (agent_monitor_health)
  • Idempotent task cancellation and compact history (cancel_task, list_task_history)
  • Read-only approval status for agents; approval remains human-controlled

All risky operations still honor policy and approval rules.

Quick Start

1. Run the dashboard

bash
npx platformio-mcp dashboard --serve

2. Use the CLI

All three npm names are supported. platformio-mcp is canonical; pio-mcp and pio-agent install the same CLI through thin dependency-only aliases:

bash
npx platformio-mcp --helpnpx pio-mcp --helpnpx pio-agent --help
bash
npx --package platformio-mcp pio-agent devicesnpx --package platformio-mcp pio-agent boards --filter esp32npx platformio-mcp init --board esp32dev --framework arduino --project-dir ./firmwarenpx platformio-mcp build --project-dir ./firmwarenpx platformio-mcp flash --project-dir ./firmware --port autonpx platformio-mcp monitor --project-dir ./firmware --port auto --expect BOOT_OK --timeout 30npx platformio-mcp agent-validate --project-dir ./firmwarenpx platformio-mcp agent-build-diagnose --project-dir ./firmwarenpx platformio-mcp agent-safe-pin-audit --project-dir ./firmware --board esp32devnpx platformio-mcp agent-flash-monitor-verify --project-dir ./firmware --expect-all BOOT_OK --reject-patterns "Guru Meditation,Brownout detector,WDT reset" --timeout 45npx platformio-mcp agent-last-report --project-dir ./firmwarenpx platformio-mcp policy-status --project-dir ./firmwarenpx platformio-mcp task-status <task-id>

Use --json for machine-readable output:

bash
npx platformio-mcp build --project-dir ./firmware --json

3. Install into AI hosts

bash
npx platformio-mcp install --clinenpx platformio-mcp install --claudenpx platformio-mcp install --vscodenpx platformio-mcp install --antigravitynpx platformio-mcp install --codex

4. Install the full Codex Plugin

The PIO Agent Codex Plugin adds the bundled MCP runtime, focused embedded skills, secure in-app dashboard flow, and monitoring-automation guidance. Codex requires one stable plugin identifier, so install selectors and skill namespaces remain platformio-mcp; the installed product is shown as PIO Agent. From a clone:

bash
npm installnpm --prefix web installnpm run plugin:buildnode build/cli.js install --codex-plugin

From npm:

bash
npx -y platformio-mcp install --codex-plugin

Start a new Codex task after installation. The legacy install --codex command remains available for MCP-only configuration. See the full Codex Plugin guide for update, uninstall, browser fallback, policy, automation, and rollback details.

The plugin release gates run on Windows, macOS, and Linux, exercise the authenticated dashboard in Chromium, validate the bundled runtime and public tool registry, and keep physical-board evidence in a separate manual workflow. That workflow uploads only bounded, sanitized evidence; raw hardware logs stay on the self-hosted runner. See the release and validation guide.

For headless verification and status inspection, the same CLI also provides plugin validate, target-resolve, monitor-status, monitor-health, task-history, approval-status, and pending-approvals. Run platformio-mcp --help for bounded options and JSON output support.

Manual MCP Config

json
{  "mcpServers": {    "platformio": {      "command": "npx",      "args": ["-y", "platformio-mcp", "serve"]    }  }}

On Windows, use npx.cmd if your host requires explicit shim resolution.

Core Capabilities

  • Board and device discovery for PlatformIO-supported hardware
  • Project initialization and config inspection
  • Build, upload, monitor, and background task polling
  • Structured diagnostics for build/upload/serial failures
  • Safety and policy guardrails (approval gates, audit logs, redaction)
  • Dashboard visibility for commands, logs, locks, and safety state

Safety Model

PIO Agent enforces policy decisions across CLI and MCP flows.

  • Actions can be allow, deny, or requires_approval
  • Risky operations (for example firmware upload/reset paths) require explicit approval
  • All actions can be audited
  • Secrets are redacted in exposed log streams

Policy profiles can be selected per-project via .pio-mcp-policy.json:

json
{  "profile": "flash_requires_approval"}

Supported profiles:

  • read_only
  • build_only
  • monitor_only
  • flash_requires_approval
  • lab_runner (explicit, expiring unattended-lab policy required)
  • lab_admin

CLI approval workflows:

bash
npx platformio-mcp approvals --status pending --jsonnpx platformio-mcp approve <approval-id> --jsonnpx platformio-mcp deny <approval-id> --json

Codex Usage

Codex-facing docs and prompt cookbook:

Documentation

Getting started:

Guides and references:

Specifications:

Development

Prerequisites:

  • Node.js >= 20 (including the bundled direct-serial runtime)
  • PlatformIO Core CLI (install guide)

Local setup:

bash
git clone https://github.com/jl-codes/platformio-mcp.gitcd platformio-mcpnpm installnpm run buildnpm run testnpm run smoke-test

CI/CD test tiers:

  • npm run test:ci:unit runs unit/component coverage used in cross-platform CI.
  • npm run test:e2e:ci runs CI-safe end-to-end tests for agent workflows and CLI wiring.
  • .github/workflows/ci.yml runs typecheck, tests, and package smoke checks on pull requests/pushes.
  • .github/workflows/hardware-e2e.yml is a manual self-hosted-runner workflow for one explicitly confirmed physical-board write, bundled-plugin protocol checks, post-flash identity/serial assertions, cleanup proof, and sanitized evidence.

Contributing

Contributions are welcome.

  • Open an issue for bugs or feature requests
  • Submit a pull request with tests when applicable

License

MIT. See LICENSE.

Firmware crash and size analysis

The MCP tools decode_backtrace and size_report analyze an explicitly selected project/environment using its registered GNU toolchain. Metadata and memory checks require build permission because they can execute project scripts. Reports identify the exact ELF, retain unresolved crash addresses, and distinguish PlatformIO memory usage from GNU estimates. They do not prove which firmware is on a device. See firmware analysis for inputs, approval behavior, evidence and current limits.

來源:README.md,提交 f3928e8

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v3.1.0最新Sep 26, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分