经 AI Skill Hub 精选评估,嵌入式调试AI助手 获评「推荐使用」。这款Agent工作流在功能完整性、社区活跃度和易用性方面表现出色,AI 评分 7.2 分,适合有一定技术背景的用户使用。
专为嵌入式开发设计的AI工作流工具,集成串口、GDB、OpenOCD、JTAG等多种调试接口。支持AI驱动的自动化调试流程,帮助嵌入式工程师快速定位问题、优化开发效率。适合固件开发、硬件调试等专业人群。
嵌入式调试AI助手 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
专为嵌入式开发设计的AI工作流工具,集成串口、GDB、OpenOCD、JTAG等多种调试接口。支持AI驱动的自动化调试流程,帮助嵌入式工程师快速定位问题、优化开发效率。适合固件开发、硬件调试等专业人群。
嵌入式调试AI助手 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
# 方式一:pip 安装(推荐)
pip install embedded-agent-bridge
# 方式二:虚拟环境安装(推荐生产环境)
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install embedded-agent-bridge
# 方式三:从源码安装(获取最新功能)
git clone https://github.com/shanemmattner/embedded-agent-bridge
cd embedded-agent-bridge
pip install -e .
# 验证安装
python -c "import embedded_agent_bridge; print('安装成功')"
# 命令行使用
embedded-agent-bridge --help
# 基本用法
embedded-agent-bridge input_file -o output_file
# Python 代码中调用
import embedded_agent_bridge
# 示例
result = embedded_agent_bridge.process("input")
print(result)
# embedded-agent-bridge 配置文件示例(config.yml) app: name: "embedded-agent-bridge" debug: false log_level: "INFO" # 运行时指定配置文件 embedded-agent-bridge --config config.yml # 或通过环境变量配置 export EMBEDDED_AGENT_BRIDGE_API_KEY="your-key" export EMBEDDED_AGENT_BRIDGE_OUTPUT_DIR="./output"
Background daemons that manage serial ports, GDB, and OpenOCD so LLM agents (Claude Code, Cursor, Copilot, etc.) can interact with embedded hardware without hanging or wasting context tokens. The agent pings the daemon for data through a simple CLI and file interface instead of trying to hold open interactive sessions directly.
Agent ──eabctl──► Serial Daemon ──UART──► ESP32 / STM32
│
├──Python API──► JLinkBridge ──SWD/RTT──► nRF5340 / Zephyr targets
│
├──eabctl──► fault-analyze ──GDB──► Cortex-M registers (any probe)
│
└──eabctl──► DSS Transport ──JTAG/XDS110──► TI C2000
Serial Monitor Daemon - Auto-detect USB serial ports - Timestamped logging to latest.log - Pattern detection (crashes, errors, disconnects) → alerts.log - Bidirectional communication via cmd.txt queue - Auto-reconnection on disconnect - Pause/resume for flashing (port sharing) - JSON event stream (events.jsonl) for structured agent consumption
GDB + OpenOCD Bridge - Start/stop OpenOCD from CLI (eabctl openocd start --chip esp32s3) - One-shot GDB commands (eabctl gdb --cmd "bt" --cmd "info registers") - Chip-agnostic flash, erase, reset, chip-info commands - Automatic ELF-to-binary conversion for STM32 (st-flash requires .bin) - ESP32 and STM32 (ST-Link) support built-in
ESP-IDF Integration - eab-flash wrapper: auto-pauses daemon, flashes, daemon resumes - Works with idf.py flash and esptool directly
RTT (Real-Time Transfer) - J-Link transport: JLinkRTTLogger subprocess with background logging, multi-format output (rtt.log, rtt.jsonl, rtt.csv) - probe-rs transport: Native Rust extension (PyO3) for probe-agnostic RTT (ST-Link, CMSIS-DAP, J-Link, ESP USB-JTAG) - Log rotation, boot/reset detection - Real-time plotter (browser-based uPlot + WebSocket, parses DATA: key=value from RTT stream)
Cortex-M Fault Analysis - eabctl fault-analyze reads fault registers (CFSR, HFSR, BFAR, MMFAR, SFSR, SFAR) via GDB - Decodes fault bits to human-readable descriptions - Stacked PC extraction for crash location - Works with any debug probe (J-Link or OpenOCD/CMSIS-DAP)
Debug Probe Abstraction - Pluggable probe backends: J-Link (via JLinkGDBServer), OpenOCD (CMSIS-DAP, ST-Link) - Probe registry with auto-detection - Backward-compatible with legacy JLinkBridge API
C2000 DSS Transport - Persistent JTAG session via TI CCS scripting (Python API) - Fast memory read/write (~1-5ms per read vs ~50ms with DSLite) - ERAD profiler, DLOG buffer capture, register decode - Trace export to Perfetto JSON (ERAD spans, DLOG tracks, log events) - Variable streaming from live C2000 targets
ML Inference Benchmarking - INT8 TFLite Micro with CMSIS-NN backend on Cortex-M33 and Cortex-M55 - DWT hardware cycle counter profiling (zero-overhead, exact cycle counts) - Automated bench_capture regression step parses [ML_BENCH] output lines - Cross-board comparison: sine, person_detect, micro_speech, exoboot_gait models - STM32N6 SRAM boot automation (GDB load for boards without on-chip flash) - Example firmware: mcxn947-ml-bench/, stm32n6-ml-bench/, stm32n6-npu-bench/, stm32n6-gait-bench/
Zephyr RTOS Support - west flash integration for Zephyr targets - Chip profiles for nRF5340, MCXN947, RP2040, STM32N6 - Board detection from CMakeCache.txt - STM32N6 SRAM boot via sram_boot regression step
Hardware-in-the-Loop Regression Testing - Define tests in YAML — flash, reset, send commands, assert log output, check variables - eabctl regression --suite tests/hw/ --json runs a full suite with pass/fail JSON output - Setup/teardown phases, variable assertions (expect_eq/gt/lt), fault checking - ML benchmark steps: bench_capture (parse inference metrics), sram_boot (STM32N6 SRAM load) - CI-friendly: exit code 0 = all pass, 1 = any fail - Steps shell out to eabctl --json for full isolation
HIL pytest Plugin - Write hardware-in-the-loop tests as normal pytest functions with fixtures and assert - hil_device fixture manages device lifecycle (flash, reset, teardown) - RTT output captured per-test, attached to pytest report on failure - --hil-device, --hil-chip, --hil-probe CLI options; tests auto-skip without hardware - hil_central fixture for second BLE central device
BLE Hardware-in-the-Loop - Second nRF5340 DK as BLE central controlled via RTT shell (BleCentral) - Multi-device YAML regression: devices: {peripheral: ..., central: ...} - New YAML steps: ble_scan, ble_connect, ble_subscribe, ble_write, expect_notify - Full BLE end-to-end test: peripheral advertises → central connects → notifications flow → writes
DWT Non-Halting Watchpoints - Program Cortex-M DWT comparators to watch memory addresses without halting the CPU - Stream JSONL events when watched variables change (at ~100Hz polling via J-Link) - ELF symbol resolution — watch conn_interval by name, not address - Conditional halting watchpoints via GDB Python (e.g. halt only when value changes >20%) - eabctl dwt watch/halt/list/clear subcommands; all 4 comparators on Cortex-M33
Debug Monitor Mode - Non-halting breakpoints for BLE firmware — debug handler runs as Cortex-M exception - BLE Link Layer keeps running at high priority; GATT callbacks debuggable without disconnect - eabctl debug-monitor enable --device NRF5340_XXAA_APP [--priority 3] - DEMCR register control (MON_EN bit 16); integrates with regression YAML flash step - eabctl preflight --ble-safe warns when BLE build + halt-mode debugging detected
MCP Server - Exposes all eabctl commands as MCP tools for Claude Desktop, Cursor, and any MCP-aware agent - 8 tools: get_status, read_rtt, send_command, fault_analyze, flash_firmware, reset_device, run_regression, get_alerts - stdio transport; install with pip install embedded-agent-bridge[mcp] - Add to Claude Desktop: {"mcpServers": {"eab": {"command": "eabmcp"}}}
Anomaly Detection - Baseline recording: capture RTT metric distributions from a known-good firmware run - Z-score comparison: detect deviations from baseline (message rates, event intervals, error counts) - EWMA streaming: real-time sigma alerting on a rolling mean — pure Python, no numpy required - Regression step: anomaly_watch with configurable sigma threshold and fail_on_anomaly - Metrics extracted: BT notify count, connection interval, MTU, heap free, TX backpressure
Fault Analysis + RTT Context - --rtt-context N on fault-analyze: captures last N RTT log lines before crash timestamp - JSON output adds context_window and ai_prompt fields for LLM root cause analysis - Auto-trigger: crash pattern detection → automatic fault-analyze → fault_report event
Agent-Friendly Design - All output in files — agents read with cat, tail, or their native file tools - --json flag on every command for structured output - No interactive sessions, no stdin, no TTY requirements - Session directory (/tmp/eab-devices/<device>/) is the single source of truth
eabctl reg-read --reg IER --ccxml target.ccxml # Read/decode C2000 register eabctl erad-status --ccxml target.ccxml # ERAD profiler status eabctl stream-vars --vars error_count,heap_free --ccxml target.ccxml eabctl dlog-capture --ccxml target.ccxml -o dlog.json # Capture DLOG buffers eabctl c2000-trace-export -o trace.json --erad erad.json --dlog dlog.json
```bash
```bash pip install embedded-agent-bridge # or: git clone + pip install -e .
```
eabctl rtt start --device STM32L476RG --transport probe-rs eabctl rtt start --device STM32L476RG --transport probe-rs --probe-selector "0483:374b"
创新的嵌入式调试解决方案,将AI与多种调试工具整合。虽然项目规模小,但针对性强,对嵌入式开发者有实际价值。
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
AI Skill Hub 点评:嵌入式调试AI助手 的核心功能完整,质量良好。对于自动化工程师和运维人员来说,这是一个值得纳入个人工具库的选择。建议先在非生产环境试用,再逐步推广。
| 原始名称 | embedded-agent-bridge |
| 原始描述 | 开源AI工作流:AI agent bridge for embedded debugging - serial, GDB, OpenOCD, JTAG integration。⭐8 · Python |
| Topics | 嵌入式调试AI工作流GDB集成JTAG调试串口通信 |
| GitHub | https://github.com/shanemmattner/embedded-agent-bridge |
| License | MIT |
| 语言 | Python |
收录时间:2026-06-05 · 更新时间:2026-06-11 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端