
debug-jlink
当需要通过 J-Link GDB Server 启动或附着 GDB 会话,完成固件下载、在线调试或崩溃现场检查时使用。
- Installs
- 555
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/leokemp223/embed-ai-tool --skill debug-jlink- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads debug-jlink automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
J-Link GDB 调试
适用场景
- 用户希望通过 SEGGER J-Link 探针调试 Cortex-M 类目标。
- 工作区中已有
ELF和 J-Link 探针。 - 烧录或串口监视流程表明,需要进一步查看断点、停核控制、寄存器或回溯信息。
- 需要使用 SWO 输出捕获功能。
- 需要在调试前确认 JLinkGDBServer 和 GDB 环境是否就绪。
必要输入
- 一份带符号的
ELF,或包含artifact_path的Project Profile。 --device参数指定目标芯片型号(J-Link GDB Server 要求必须指定)。- 可选调试模式:
download-and-halt、attach-only、crash-context。 - 可选的 GDB 可执行文件路径。
自动探测
- 默认模式为
download-and-halt;只有用户显式要求附着调试或崩溃现场检查时才切换。 - GDB 由脚本自动探测,优先级为:显式用户输入、
Project Profile、arm-none-eabi-gdb、gdb-multiarch。 - JLinkGDBServer 按配置文件、PATH、常见安装路径顺序查找。
- 做符号级调试必须有
ELF。若只有HEX或BIN,应阻塞并要求提供匹配ELF。
执行步骤
- 先阅读 references/usage.md,确认本次是环境探测,还是执行调试会话。
- 若不确定环境是否就绪,先运行自带脚本 scripts/jlink_debugger.py 的
--detect模式确认。 - 根据用户意图选择调试模式:
download-and-halt(默认)、attach-only或crash-context。 - 使用
--elf+--device启动调试,可选--interface和--port。 - 需要 SWO 输出时,使用
--swo参数。 - 读取脚本输出的调试结果,重点关注寄存器状态、回溯帧和 Fault 寄存器。
失败分流
- 当缺少
JLinkGDBServerCLExe或兼容 GDB 时,返回environment-missing。 - 当没有可用的
ELF时,返回artifact-missing。 - 当 JLinkGDBServer 无法连接目标板时,返回
connection-failure。 - 当设备名不被 J-Link 识别或配置不一致时,返回
project-config-error。 - 当会话可以建立,但无法停核、加载或得到可信回溯时,返回
target-response-abnormal。 - 当
--device缺失且无法从工作区推断时,返回ambiguous-context。
平台说明
- JLinkGDBServer 在 Linux/macOS 下为
JLinkGDBServerCLExe,Windows 下为JLinkGDBServerCL.exe。 - 默认 GDB 端口为 2331(J-Link 默认),可通过
--port修改。 - 自带脚本使用 Python 标准库和 subprocess,跨平台兼容。
- SWO 功能为 J-Link 独有,可捕获 ITM printf 输出。
输出约定
- 输出调试模式、JLinkGDBServer 命令、GDB 可执行文件、
ELF路径和关键观察结论。 - 在
Project Profile中保留artifact_path、artifact_kind、gdb_executable、jlink_device。 - 当复位后或继续运行后下一步是观察运行行为时,推荐
serial-monitor。
交接关系
- 当目标恢复运行后,需要继续观察运行期日志时,将成功会话交给
serial-monitor。 - 当用户需要 RTOS 线程感知调试时,将会话交给
rtos-debug。
FAQ
What does the debug-jlink skill do?
当需要通过 J-Link GDB Server 启动或附着 GDB 会话,完成固件下载、在线调试或崩溃现场检查时使用。
How do I install debug-jlink?
Run npx skills add https://github.com/leokemp223/embed-ai-tool --skill debug-jlink in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/debug-jlink/ (personal) or .claude/skills/debug-jlink/ (project).
Which AI agents can use debug-jlink?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is debug-jlink safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains debug-jlink?
It is published by leokemp223 in leokemp223/embed-ai-tool. It has 555 recorded installs.
More from leokemp223/embed-ai-tool
build-keil
leokemp223/embed-ai-tool
当需要通过 Keil MDK 命令行编译嵌入式工程,调用自带脚本解析工程文件、执行构建并定位固件产物时使用。
build-platformio
leokemp223/embed-ai-tool
当需要通过 PlatformIO 命令行编译嵌入式工程,调用自带脚本解析环境配置、执行构建并定位固件产物时使用。
workflow
leokemp223/embed-ai-tool
当需要串联多个 skill 完成编译+烧录+监控或编译+烧录+调试等流水线任务时使用。
flash-keil
leokemp223/embed-ai-tool
当需要通过 Keil MDK 内置调试器烧录固件到目标板时使用,利用工程中已配置的调试器和 Flash 算法执行下载。
Popular code quality & workflow skills
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
improve-codebase-architecture
mattpocock/skills
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
handoff
mattpocock/skills
Compact the current conversation into a handoff document for another agent to pick up.
domain-modeling
mattpocock/skills
Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.
codebase-design
mattpocock/skills
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
diagnosing-bugs
mattpocock/skills
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.