☰
Diagram Design 可编辑安装:如何克隆仓库定制 style-guide 并注册到 Pi 与 Claude Code?
2026/9/30 20:32:44 网站建设 项目流程

Diagram Design 可编辑安装:如何克隆仓库定制 style-guide 并注册到 Pi 与 Claude Code?

【免费下载链接】diagram-design38 editorial diagram types for Claude Code, Codex, and Pi. Self-contained HTML + SVG. No shadows. No Mermaid slop.项目地址: https://gitcode.com/GitHub_Trending/di/diagram-design

如果你用 Diagram Design 这个 Agent Skill 生成品牌风格图表,并希望直接修改工作中的style-guide.md而不是每次走 onboarding,那么官方管理的插件安装方式有个隐患:README 明确说明,references/style-guide.md中的改动可能被后续 package update 替换掉。官方给出的解法是"可编辑安装"(editable install):克隆仓库到本地,把本地 checkout 注册给 Pi 和 Claude Code,之后所有图表皮肤都从你本地这份style-guide.md读取,改完即生效。

完成本文后你会得到:一个本地 checkout、Pi 与 Claude Code 两条可用的注册链路,以及一套能验证新皮肤是否真正生效的检查方法(画廊对比、首图 gate 判定、self_check.py输出OK)。

为什么托管安装不能直接改 style-guide

README 的 Editable install 一节给出了原因与替代边界:

  • 托管安装(marketplace/plugin 方式)的style-guide.md改动会被包更新替换。如果你只是想让某次定制不被覆盖,保存的客户端 profile(~/.diagram-design/profiles/下)能扛过更新,带.diagram-designmarker 的项目也不受影响——这两条是"不想动安装方式"时的官方替代路径。
  • 只有计划直接定制工作版 style guide 时,才需要克隆仓库并安装本地路径。这也是本文要完成的路线。

第一步:克隆仓库

README 给出的原始命令如下(SSH 形式,要求你的机器对 GitHub 有访问凭证):

git clone git@github.com:cathrynlavery/diagram-design.git ~/code/diagram-design

README 示例统一使用~/code/diagram-design这个目录。如果你换到别的本地路径,后面pi install与ln -s两条命令中的路径要同步替换。

克隆下来后,共享 skill 位于skills/diagram-design/。README 说明:Pi 通过仓库标准的skills/包目录发现它;Claude Code、Codex、Factory Droid 等其他 Agent Skills 兼容工具复用同一份文件。

第二步:把本地 checkout 注册到 Pi 与 Claude Code

两个宿主各一条注册命令,均出自 README:

# Pi: 把 checkout 注册为本地包 pi install ~/code/diagram-design # Claude Code: 符号链接内部 skill ln -s ~/code/diagram-design/skills/diagram-design ~/.claude/skills/diagram-design

两条命令的适用条件:

  • Pi:pi install指向的是仓库根目录,不是skills/子目录。在已打开的 Pi 会话里执行/reload使其生效。之后可以用自然语言匹配图表请求,或显式调用/skill:diagram-design;/export-diagram、/import-mermaid、/profile、/doctor等 prompt 模板也会随包加载。
  • Claude Code:符号链接的目标是~/.claude/skills/diagram-design(用户级 skill 目录)。链接指向 checkout 内的skills/diagram-design目录本身,因此你后续对其中文件的编辑会直接反映到 Claude Code 的加载结果。

注册完成后,两个宿主读到的都是你 checkout 里的那份文件,这是"改 style-guide 立即生效"的前提。

第三步:编辑 references/style-guide.md

要改的文件是 skills/diagram-design/references/style-guide.md。style-guide.md 自述是"颜色、排版与 token 的唯一事实来源:每一张图都从这里取色,而不是从其他 reference 文件里内联的 hex 值取色"。README 的 Manual override 一节也确认:打开这个文件编辑表格即可,所有下游都从那里读取——39 种图型、annotation 原始件、画廊,全部继承语义角色名(引用的是accent而不是#eb6c36)。

改哪些行

核心是### Semantic roles表格,默认值(light/dark 两列)如下:

Role用途默认(light)
paper页面背景、默认节点填充#f5f5f5(white-smoke)
ink主文本、主描边#2d3142(jet-black)
muted次级文本、默认箭头#4f5d75(blue-slate)
accent焦点元素,全图 1–2 个#eb6c36(atomic-tangerine)
linkHTTP/API 调用、外部箭头#2e5aa8

## Typography表格定义三套字体角色(title用 Instrument Serif、node-name用 Geist sans、sublabel用 Geist Mono 等)。style-guide.md 还给了 light→dark 的 inversion 规则:light 里的rgba(28,25,23, X)在 dark 中变为rgba(250,247,242, X),不透明度不变、RGB 翻转,accent 在暗色底上轻微提亮色相。

改动必须满足的约束

style-guide.md 的 Constraints 一节列了硬性限制,改完请逐条对照:

  • 对比度:ink在paper上必须达到 WCAG AA;muted在paper上对 11px+ 文本要达到 AA。
  • 一个 accent:只选一个颜色做accent,两个焦点色会抹掉焦点信号。
  • 不要彩虹配色:品牌如果给 8 个色,选 3 个(paper、ink、accent),其余降为muted变体。
  • 三套字体家族:serif + sans + mono 不能更多;即使品牌全是 sans,也保留 Instrument Serif 做title和callout。
  • paper 不取纯白:选带一点暖味的米色、骨色或浅灰。

另外注意文件中的说明:assets/里的预烘焙示例 HTML 是更早皮肤下构建的(文件里标注重生成是 v5.1 任务),不要拿这些 example 的配色当新皮肤基准;skill 新生成的图会使用你写进去的 token。

不想手改 hex 的话,style-guide.md 还列出三种替代:跑 onboarding(把网站 URL 丢给 skill,它提取调色板与字体并重写本文件,流程见 references/onboarding.md)、品牌 token JSON 手工映射、或用命名 client profile(references/profiles.md)。手动改完 token 后,文件建议跑一次 pre-output taste gate,确认新accent相对新paper仍读起来是"焦点"。

第四步:验证新皮肤是否生效

按从快到慢的顺序做三项检查,全部来自仓库文档:

1. 打开画廊肉眼过一遍 39 种图型

onboarding.md 的收尾验证(手动改 token 同样适用):

open skills/diagram-design/assets/index.html # macOS xdg-open skills/diagram-design/assets/index.html # Linux

确认新调色板在全部 39 种类型上观感一致。文档给出的唯一排障方向:如果某类图看着不对,通常是muted需要微调——相对新paper偏深或偏浅。

2. 确认首图 gate 已跳过

SKILL.md §0 定义了 first-run gate:skill 在新项目的第一张图前会检查 style guide 是否还是出厂默认(paper#f5f5f5、ink#2d3142、accent#eb6c36)。如果仍是默认值,agent 会停下来问你是否要先做品牌 onboarding,并给出 (a) 从网站 URL 提取、(b) 从已装 skill 提取、(c) 从本地文件夹提取、(d) 手工粘贴 token、(e) 用默认、(f) 载入已存 profile 六个选项。你改过 token 之后,任何语义角色值或字体家族与默认不同,就会被归类为 custom-unsaved 并跳过这个 gate——这正是"定制已生效"的行为信号。gate 只会在 token 全部回到出厂值且没有.diagram-designmarker 时触发。

3. 生成一张图并跑 self_check

让 agent 正常生成一张图(例如:"Make me a flowchart"),然后从 skill 目录运行随包自检脚本:

python3 scripts/self_check.py <生成的文件>.html

README 的 "It's working if…" 一节把成功条件写得很直接:python3 skills/diagram-design/scripts/self_check.py <file>在生成的文件上打印OK。该脚本检查 accessible-SVG 契约与单文件安全规则,无第三方依赖,随 skill 一起安装。

可选:跑环境诊断

如果生成链路本身出疑点(找不到 skill、Python 环境问题),用只读诊断命令:Claude Code 里/diagram-design:doctor,Pi 里/doctor。它不修改文件、不安装依赖,报告格式固定:

Doctor summary: <PASS|WARN|FAIL> (<pass_count> pass, <warn_count> warn, <fail_count> fail) [PASS] Python 3.11.9 found at ... [WARN] Playwright package not found in active interpreter ...

(以上为 references/doctor.md 给出的示例结果格式。)其中 Python 检查要求 3.10+;Playwright 缺失只报warn并给出pip install playwright && playwright install chromium提示,不会自动装。由于可编辑安装的解析根就是仓库 checkout(内含CONTRIBUTING.md、CI 工作流与scripts/verify-plugin-package.py),doctor 会进入 maintainer-checkout 模式,额外检查scripts/下五个验证脚本与commands/、prompts/的路由接线是否齐全——缺失会报fail,正好可以顺便确认你 checkout 是完整的。

限制与后续

  • 更新路径:托管安装的 Pi 侧没有自动包刷新,README 要求手动pi update --extensions拉取合入更新。本地 checkout 则是你自己的 git 仓库,同步上游走常规的 git 操作即可;同步前先留意你对style-guide.md的本地改动。
  • profile 仍是最稳的跨客户端做法:如果之后要服务多个客户品牌,把改好的 guide 存为命名 profile(Pi 用/profile,Claude Code 用/diagram-design:profile),再给项目加.diagram-designmarker(内容仅一行profile: <slug>)。带 marker 的项目直接读~/.diagram-design/profiles/<slug>.md,不会互相覆盖,完整的存储、slug 校验与恢复契约见 references/profiles.md。
  • profile 不要放进已安装插件目录:profiles.md 明确那些目录在更新时可能被替换。

三项验证都通过——画廊配色一致、gate 不再询问、self_check.py打印OK——即可认为可编辑安装完成:此后在 Pi 或 Claude Code 中生成的每张图,读的都是你 checkout 里这份style-guide.md。

【免费下载链接】diagram-design38 editorial diagram types for Claude Code, Codex, and Pi. Self-contained HTML + SVG. No shadows. No Mermaid slop.项目地址: https://gitcode.com/GitHub_Trending/di/diagram-design

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询