Three files. One of them is the only thing you swap.三个文件,换平台只换其中一个。
SKILL.md
selection + the reusable body供挑选的入口 + 可复用的正文OTP writes are irreversible; dump the bytes before you burn.OTP 烧入不可逆,烧之前先 dump 字节。
Signature check fails? Compare both hashes byte by byte.验签不过?两端 hash 逐字节比。
params/
L3 values — the swap pointL3 平台值 —— 换平台就换这里OTP[ADDR] · RSA-N · sign-x
OTP[ADDR'] · RSA-M · sign-y
pitfalls.md
every pitfall split in two每个坑都拆成两半params/soc-b.md事实 → params/soc-b.md来源 · 日期 · 复现记录 · 验证方式 · 置信度
| Layer层 | What it is是什么 | When you change platform换平台时 |
|---|---|---|
| L1 | principle / invariant — holds on any platform原理 / 不变量 —— 任何平台成立 | unchanged不动 |
| L2 | method / procedure / transferable lesson做法 / 流程 / 可迁移的教训 | unchanged不动 |
| L3 | platform values: addresses, sizes, branch names平台值:地址、尺寸、分支名 | add one params file加一份 params |
| L4 | session state — changes next run会话状态 —— 下次就变 | never stored in the package不进包 |
The kinds of skills people distill.能蒸出哪几类 skill。
Generic capability types. Your distilled versions keep the real values in params/.通用的能力类型。你蒸出来的版本把真实值放在 params/ 里。
Trust-chain verification信任链验签
Secure-boot first stage, AVB, download and OTA verification — who verifies whom, why each parameter has its value, and caution around irreversible fuses.安全启动一级验签、AVB、下载验签、OTA 验签 —— 谁验谁、每个参数为什么是这个值、不可逆熔丝要多小心。
L3 · OTP[ADDR] · RSA-N · SoC-XBoot-chain observability启动链可观测性
Stage-tagged logs, dump before a decision, read back after a write, byte snapshots before and after — find where a boot hangs over UART, without a debugger.统一的阶段标记、决策前先 dump、写完立刻读回、前后字节快照 —— 没有调试器时,靠 UART 定位卡在哪一级。
L3 · stage prefixes · field addressesVendor SDK migration厂商 SDK 迁移
Three-way compare, conflict classes (bulk / manual / redesign), a reusable library of conflict patterns, and a compile-then-correct loop that carries across versions.三方对比、冲突分类(批量 / 人工 / 重新设计)、可复用的冲突模式库、编译后逐轮自纠 —— 跨版本复用。
L3 · SDK vN → vN+1 · branch namesPartition / GPT layout分区 / GPT 布局
Grow, add or remove partitions: recompute offsets, both A/B slots, the dynamic-partition container, and the OTA-incompatible “change it all once, before ship”.扩、增、删分区:重算 offset、A/B 两个槽、动态分区容器,以及跟 OTA 不兼容所以「出货前一次改完」。
L3 · partition table · sizes · SoC-XHow to use one.怎么用一个 skill。
- 1
Trigger it触发
Say what you're doing in words its description covers; the runtime matches the description and loads the body.用它 description 里覆盖到的说法描述你在做的事,runtime 按 description 匹配后加载正文。
- 2
Swap platform换平台
New chip or SDK version → add one
params/<platform>.md. The L1/L2 body stays put.换芯片或 SDK 版本 → 加一份params/<platform>.md,L1/L2 正文不动。 - 3
Keep it honest and findable保持可信、好找
After adding or editing a skill:
whetstone verify(evidence),whetstone lint(menu overlaps) andwhetstone index(grouped catalog).新增或修改 skill 后跑:whetstone verify(证据)、whetstone lint(菜单重叠)、whetstone index(分组目录)。 - 4
Move machines换机器
Keep real skills in a private repo; clone and deploy into the runtime's skills folder. How the layering works →真实 skill 放私有仓,clone 后 deploy 进 runtime 的 skills 目录。分层是怎么设计的 →