首页 / 全部技能 / 内容创作 / json-canvas
内容创作 · freestylefly/canghe-skills

json-canvas

Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections. Use when working with .canvas files, creating visual canvases, mind maps, flowcharts, or when the user mentions Canvas files in Obsidian.

风险提醒:绿色 · 放心使用AI 侦查报告
作者 freestyleflyGitHub freestylefly/canghe-skills ↗许可 MIT(仓库根 LICENSE)commit dd0bf35595
agent 宿主通常会约束 skill 执行权限;风险提醒为 AI 侦查观点,不构成质量或安全保证。第三方 skill 仅作拆解与展示,安装使用风险自负,版权归原作者。

1实现原理 · 为什么它能做到

把 .canvas 定义为只含两个顶层数组的 JSON 文件:nodes 与 edges(均可选)。

skills/json-canvas/SKILL.md
- `nodes` (optional): Array of node objects
注:这里在做什么:先给出最小合法骨架,后续所有节点/边都挂在这两个数组下。

节点分四类:text / file / link / group,各自附加字段(text、file+subpath、url、label/background)。

skills/json-canvas/SKILL.md
- `group` - Visual container for other nodes
注:这里在做什么:用类型枚举覆盖画布上会出现的所有元素,编辑时有明确落点。

节点共有必填属性 id/type/x/y/width/height 与可选 color;数组顺序即 z-index(先底后顶)。

skills/json-canvas/SKILL.md
| `id` | Yes | string | Unique identifier for the node |
注:这里在做什么:把几何与层级规则写死,保证生成的画布可被应用正确渲染。

边 edges 连接节点,支持 fromSide/toSide/fromEnd/toEnd/color/label 等可选修饰。

skills/json-canvas/SKILL.md
| `toEnd` | No | string | `arrow` | Shape at edge end |
注:这里在做什么:把「谁连谁、从哪边、有无箭头、什么颜色」全部参数化。

颜色 canvasColor 支持 hex 或预设编号 "1"-"6",且预设具体值故意不定义。

skills/json-canvas/SKILL.md
Note: Specific color values for presets are intentionally undefined, allowing applications to use their own brand colors.
注:这里在做什么:让配色随宿主应用品牌走,规范只固定语义档位。

约定 ID 为 16 位小写十六进制(64 位随机值),并要求全局唯一。

skills/json-canvas/SKILL.md
This format is a 16-character lowercase hex string (64-bit random value).
注:这里在做什么:统一 ID 生成口径,避免跨节点/边冲突。

给出布局指南:坐标可为负、y 向下增大、推荐尺寸表与 20-50px 内边距、50-100px 节点间距。

skills/json-canvas/SKILL.md
- Space nodes 50-100px apart for readability
注:这里在做什么:把「排版好看」量化为可执行的间距/尺寸建议。

结尾附 8 条校验规则(唯一 id、引用存在、必填字段、枚举取值合法等),并外链 JSON Canvas Spec 1.0。

skills/json-canvas/SKILL.md
1. All `id` values must be unique across nodes and edges
注:这里在做什么:给出可自查的正确性清单,降低生成非法文件概率。

2核心能力

01创建/编辑 Obsidian 兼容的 .canvas 文件
02生成文本节点(Markdown 内容)
03文件/附件节点(含指向标题或块的 subpath)
04链接节点(外部 URL)
05分组容器节点(label 与背景图/背景样式)
06边连接:方向、端点形状、颜色、标签
07颜色:hex 或预设编号 1-6
08布局与校验:推荐尺寸、间距与 8 条合法性规则

4风险提醒 风险提醒:绿色 · 放心使用

风险提醒:绿色 · 放心使用
  • 无脚本校验,正确性完全依赖模型遵循文档。 — skill 不提供校验脚本,生成的 .canvas 可能违反 8 条校验规则;建议生成后由宿主或工具二次校验。
  • 随着 JSON Canvas 规范演进可能过期。 — 内容绑定 Spec 1.0,规范更新后需同步维护。
绿色:本 skill 目录仅一份 Markdown 指令,无脚本执行、无网络请求、无凭证读取、无写盘代码;不读取任何外部输入去执行,纯知识/规范编排。按统一分档准则取绿色。

5第二遍独立确认

  • [ok] 是否存在可执行脚本 — 目录清单仅 SKILL.md;扫描「执行外部程序」0 命中。
  • [ok] URL 命中性质 — §3 5 条 URL 均为规范链接(jsoncanvas.org/github.com/obsidianmd)或示例值(obsidian.md/example.com),非运行期请求。
  • [ok] 凭证/环境变量 — 0 命中,正文无 env/keychain 读取。
  • [ok] 写盘 — 0 命中;skill 只描述生成 JSON 内容,实际落盘由宿主完成。
  • [ok] 能力声明与内容相符 — description 声称创建/编辑 .canvas,正文含完整节点/边/示例/校验,无夸大。
  • [ok] 规范引用可定位 — 结尾 References 与开头 Overview 均指向 JSON Canvas Spec 1.0,口径一致。

6结论

  • 围绕开放规范 JSON Canvas Spec 1.0 编写,格式定义完整且可用于 Obsidian 等应用。
  • 文档自洽:属性表+完整示例+校验规则齐备,agent 可直接据此生成合法文件。
  • 零执行面、零依赖,纯知识型 skill,安全面极干净。
  • 适合:需要为 Obsidian/支持 JSON Canvas 的应用生成思维导图、流程图或视觉画布的用户与代理。
    不适合:需要运行时校验/渲染 .canvas,或使用其它画布格式的场景。
    安装 agent 直装可复制
    ① 本站镜像 更新 2026-10-10
    方式 A · 人下载镜像包下载 json-canvas.tar.gz
    sha256: c5f293ab4ece925e…
    方式 B · JSON 格式安装指南,复制给 agent
    安装指南
    agent 读 JSON 指南后会自动从本站下载安装,无需更多说明。
    ② 上游 GitHub · 原始来源
    能访问 GitHub?直接去上游安装(实时版,可能已更新)GitHub 原始 ↗
    本页镜像锁定 commit dd0bf35595;上游为实时仓库。
    来源信息 GitHub 原始
    作者 / 仓库freestylefly / freestylefly/canghe-skills
    本 skill commitdd0bf35595
    许可MIT(仓库根 LICENSE)
    本站信息
    收录日期2026-09-06
    分类内容创作
    侦查报告AI 侦查 · 2 遍 · 2026-09-06
    本站镜像与 GitHub 原始是不同来源:本站锁定 commit 快照经 /r2 分发;GitHub 为实时上游,内容可能已更新。
    同分类邻近