关于 altium-schematic-reader
altium-schematic-reader 是用于查询 Altium 原理图项目的技能,通过解析电路数据回答问题。它支持按需检查元件、网络、连接和 BOM,并指导区分已确认事实与推测。
主要功能
- 01项目与图纸摘要
- 02查询元件、网络和引脚
- 03检查 BOM 与变体
- 04以 JSON 输出定向结果
- 05依据证据回答电路问题
适用场景
- 01追踪元件连接的引脚
- 02检查设计中的电源网络
- 03核对元件与 BOM 变体
- 04引用证据回答电路问题
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ tansuo2021/ adtokeil --skill altium-schematic-reader安装后在 Claude Code 中输入/altium-schematic-reader确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
agents/openai.yamlreferences/software_design.mdscripts/read_schematic.py详细介绍
Altium 原理图读取器
使用此技能,根据可靠的电路事实回答有关 Altium 原理图设计的问题,而不是根据文件名或截图猜测。
随附脚本通过 altium-monkey 读取 Altium 文件,并返回精简的 JSON 数据片段,供 AI 推理使用。
前置条件
Python 环境中必须能够导入 altium-monkey。
推荐的安装方式:
pip install altium-monkey
在 altium_monkey 源代码检出目录中操作时,运行脚本前将 PYTHONPATH 设置为其 src/py 目录。
$env:PYTHONPATH="path\to\altium_monkey\src\py"
定位设计
如果用户没有指定项目,请查找候选 Altium 项目:
Get-ChildItem -Recurse -Filter *.PrjPcb
如果有多个可能的项目,请询问用户要检查哪一个。对于单个 .SchDoc,请使用 sheet 命令。
命令模式
可从任意工作目录运行:
python <skill_dir>\scripts\read_schematic.py <command> [args]
所有命令都会将 JSON 输出到 stdout。错误会将 JSON 输出到 stderr。
工作流
对于本次会话中尚未检查的项目,始终先运行 summary。
python <skill_dir>\scripts\read_schematic.py summary path\to\Project.PrjPcb
然后选择有针对性的后续查询:
- 使用
components --brief了解工作表上的内容。 - 使用
nets列出命名网络,或搜索电源轨/信号名称。 - 使用
nets --name NET_NAME检查某个网络上的所有端子。 - 使用
connections --designator U1检查元件的所有连接引脚。 - 使用
connections --designator U1 --pin 5检查单个引脚。 - 使用
bom查询物料清单和变体相关问题。 - 仅在没有
.PrjPcb时使用sheet。 - 仅在最后不得已时使用
raw design或raw netlist,因为输出可能很大。
对于 MCU、处理器、连接器和排针表格,不要只依赖网表连接。网表会省略未连接的引脚。请检查元件符号引脚(通过 altium-monkey 检查 component.pins,或使用 altium-circuit-investigator 的 port_inventory.py),并将这些引脚与网表端点合并,确保列出所有引脚,包括 NC/未连接 引脚。
命令
项目摘要:
python <skill_dir>\scripts\read_schematic.py summary path\to\Project.PrjPcb
元件:
python <skill_dir>\scripts\read_schematic.py components path\to\Project.PrjPcb --brief
python <skill_dir>\scripts\read_schematic.py components path\to\Project.PrjPcb --sheet Power.SchDoc --brief
python <skill_dir>\scripts\read_schematic.py components path\to\Project.PrjPcb --designator U7
网络:
python <skill_dir>\scripts\read_schematic.py nets path\to\Project.PrjPcb
python <skill_dir>\scripts\read_schematic.py nets path\to\Project.PrjPcb --contains P3V3
python <skill_dir>\scripts\read_schematic.py nets path\to\Project.PrjPcb --name GND
引脚级连通性:
python <skill_dir>\scripts\read_schematic.py connections path\to\Project.PrjPcb --designator U7
python <skill_dir>\scripts\read_schematic.py connections path\to\Project.PrjPcb --designator U7 --pin C9
物料清单:
python <skill_dir>\scripts\read_schematic.py bom path\to\Project.PrjPcb
python <skill_dir>\scripts\read_schematic.py bom path\to\Project.PrjPcb --variant PCBA_Build
单张工作表:
python <skill_dir>\scripts\read_schematic.py sheet path\to\Sheet.SchDoc
原始数据备用命令:
python <skill_dir>\scripts\read_schematic.py raw path\to\Project.PrjPcb design
python <skill_dir>\scripts\read_schematic.py raw path\to\Project.PrjPcb netlist
推理规则
- 在回答中注明位号、引脚编号、网络名称和工作表文件名。
- 优先使用项目级命令,而不是检查单张工作表,因为项目级命令会解析位号和层级结构。
- 有网表查询可用时,不要根据符号图形或元件名称推断连通性。
- 区分“网表中不存在”和“符号上不存在”:需要覆盖所有引脚时,仍必须将符号上未连接的引脚报告为 NC。
- 对于
CTRL、OUT、IN、FB、AD、QD或AUX等含义不明确的信号名称,请检查局部原理图标签,或在命名其功能前使用altium-circuit-investigator。 - 对于“这段电路有什么作用”之类的问题,先检查
summary,再检查工作表级元件简表,最后检查主要 IC 的连接。 - 对于电源问题,请检查
summary.power_and_ground_nets、类似电源轨的网络名称,以及目标 IC 上的 POWER 引脚。 - 对于审查类问题,先查找证据,再分别说明已确认的问题与假设。
已知限制
- 复杂的层级通道和由
.Annotation驱动的映射可能需要人工验证。 - 变体支持取决于
altium-monkey,对不常见的变体配置可能有限。 - 解析失败时,应报告出错文件的路径和完整的 JSON 错误。
altium-monkey使用 AGPL-3.0-or-later 许可证;将其嵌入分发式或网络服务前,请先审查相关许可义务。
参考资料
围绕此技能设计后端、API、缓存、UI 或 AI 工作流时,请阅读 references/software_design.md。