@gitruck/cli 0.2.3 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,46 @@
1
+ # 产出物规范(craft-output-spec)
2
+
3
+ ## 1. 用户 skill 目录解剖
4
+
5
+ ```
6
+ <skill-name>/
7
+ ├── SKILL.md # 必须。frontmatter: name + description(description 即触发器)
8
+ ├── README.md # 必须。对人类的说明 + 「正本→安装」单向流声明(spec MUST)
9
+ ├── references/ # 按需。深文档(渐进披露:SKILL.md 装不下的细则放这里)
10
+ ├── assets/ # 按需。exemplar 成品/模板/素材
11
+ └── scripts/ # 按需。可执行工具
12
+ ```
13
+
14
+ - **frontmatter 最小集**:`name`(kebab-case)+ `description`。description 决定触发——包含功能关键词 + 「当用户想「…」时使用本 skill」+ 触发短语枚举。这是生态实证的唯一触发机制,没有独立 trigger 字段。
15
+ - **自足性铁律**:skill 里要含齐干活所需的全部信息(或明确引用哪里查),不让运行时去猜。
16
+ - **正文结构由访谈维度决定**——用户的 Step 1 是什么,skill 的 Step 1 就是什么。唯一必备的三个小节:铁律(含禁令)、交付前自检清单、(多 skill 家族时)「这个 skill 不做什么 → 找谁」。
17
+
18
+ ## 2. 「正本→安装」单向流(写进产出 skill 的 README)
19
+
20
+ > 本 skill 源码正本在 `<用户作坊路径>`;`~/.claude/skills/<name>/` 是安装产物。改动**永远先改正本**,再重新拷贝安装。云端(claude.ai capability)上传是可选的第三级分发,同样以作坊正本打包。
21
+ > ——副本漂移是有血泪教训的(同一枚举曾在 6 处定义、口径打架),单向流是唯一解法。
22
+
23
+ ## 3. 共享词表(条件产出)
24
+
25
+ 触发条件(任一):家族 ≥2 个 skill;访谈沉淀出自造词。
26
+ 形态:单独一份 `_shared/<栏目>/vocab.md`(下划线前缀防误认成 skill),条目 = 词 + 定义 + 取值(如有)。各 skill **引用不复制**(需要内联值时标注「正本在词表,改值先改那里」)。文件头写治理规则:「新词先入表再用」。
27
+ 不满足条件时:词表内容并入 SKILL.md 一节。
28
+
29
+ ## 4. 栏目配置登记
30
+
31
+ - 位置:以 gtrk paths 口径为准(当前 `~/.gitruck/columns/<栏目id>.json`;权威在 CLI 的 paths 模块,本文档不是路径权威源)。
32
+ - 写法:**追加**进 `style.skills` / `style.shared` 数组,绝不清空既有条目;文件不存在则创建最小骨架。
33
+ - 条目:`{ "id": "<skill-name>", "ref": "<正本绝对路径>", "produces": "<handoff 类型或用户自造串>" }`;管线外产物(封面、周边图等)加 `"routing": "none"`(豁免疑似拼写提示)。
34
+ - `produces` 是登记不是审批:写用户自造串完全合法(框架静默惰性登记);只有命中管线 handoff 注册集的才参与派单路由。
35
+
36
+ ## 5. 契约绑定
37
+
38
+ 查 `contracts/handoff-contracts.json`(随 @gitruck/cli 分发,包内相对路径 `contracts/`;本 skill 安装后可从 CLI 包根定位)。规则:
39
+ - `produces` 命中注册集 **且** 映射表给出契约 → 生成的 skill 必须:①引用「契约名+版本」(如 `gsap-emit v1`,契约文档在 `contracts/<doc>`);②把契约合规项列进自检清单(如:template 包裹?paused 时间线注册?无 random/Date?字面值无 var()?)。
40
+ - 映射为 `null`(暂无契约)或管线外产物 → 无绑定要求,照常生成。
41
+ - **永远查表,不硬编码映射**——契约升版/新增时表会更新。
42
+
43
+ ## 6. 收尾提醒(给用户)
44
+
45
+ - skill 留本地即完整可用;上传 claude.ai(打包 .skill zip)是**可选**分发,供网页/移动端触发。
46
+ - 后续迭代:改作坊正本 → 重拷 `~/.claude/skills/` → (可选)重新打包上传。
@@ -0,0 +1,4 @@
1
+ # 种子案例库
2
+
3
+ > **种子是案例,不是模板。** 每个种子演示「一次成功的风格接生最终长什么样」——注意看的是**产出的形态**(维度有名字、铁律带自检、家族互相路由、词表单点定义),不是维度本身。不同栏目的维度截然不同:用户的栏目跟任何种子都不像时,从零引导(七招),绝不套种子结构。
4
+ > 种子一律**削减版**(组织维度 + 词表 + 自检结构),且已脱敏(无外部供应商/平台名——完整版在各栏目主自己的作坊,不随框架分发)。
@@ -0,0 +1,37 @@
1
+ # 种子 · 家居好物带货栏目(「李姐严选」削减版)
2
+
3
+ 一人主理的家居好物口播带货号。访谈收敛出的家族:**1 个 skill(单产线不切)+ 词表并入 SKILL.md**。
4
+
5
+ ## 组织维度(全部来自栏目主自己的语言)
6
+
7
+ - **Step 1 = 痛点**:她的第一判断是「这货到底解决啥难受」——痛点必须**能拍出来**(一滩酱油/一声「咔」/一个乱抽屉),开头三秒戳它;且次序铁定「先戳痛点再亮卖点,反了人就划走」。痛点找不着,这单不接。
8
+ - **第二维度 = 上手**:信任感的唯一来源是「真人上手」——手 + 货 + 使劲的动作同画面,环境必须是过日子的地方;演不出来的卖点降级为嘴上带过,不给镜头。
9
+ - **第三维度 = 砸价**:价格是一个「出场动作」,不是一条信息——三选一判定(手上动作 / 憋一下再喊 / 全屏只剩一个大数),且砸之前全篇不许漏价。
10
+ - **第四维度 = 现在就买的理由**:结尾闭环,最后一句必须给一个说得出口的理由(马上用得上的场景 / 限时 / 赠品),不许只说「喜欢的拍」。
11
+ - **负面护栏 = 廉价感**:她说不出「风格是什么」,但对「什么显得廉价」秒答——七条禁令(综艺花字/满屏贴纸/「duang」类音效/抠图假背景/磨皮到看不清货/机器人配音/价格缩在角落小字)是全套规矩里最硬的资产。
12
+
13
+ ## 铁律(禁令先行的产物,节选)
14
+
15
+ - 廉价感七条禁令,中一条即重剪。
16
+ - 前三秒只许出现「难受」:不许品牌、自我介绍、价格、参数。
17
+ - 砸价三选一,占零样 = 念价格,返工;砸前漏价 = 白砸。
18
+ - 字幕最多两行大白字;真人原声,带口音也不换机器配音。
19
+ - 每条铁律配自检问句(例:「只看前三秒,看没看见一个具体的难受?」「砸价那一秒,三样占了几样?」「最后五秒能不能一句话复述那个现在就买的理由?」)。
20
+
21
+ ## 家族切分
22
+
23
+ 单产线不切家族:只有一条产线(带货片子),封面从片中截帧、不单独生产 → 1 个 skill 足够。`produces` = 自造串「带货台本」,查 handoff 映射表未命中注册集 → 无契约绑定,登记加 `routing:"none"`。
24
+
25
+ ## 词表(并入 SKILL.md 一节)
26
+
27
+ 已沉淀自造词,但家族仅 1 个 skill、无跨文件漂移面 → 词表并入 SKILL.md,并写明「出现第二个 skill 时整节迁出为 `_shared` 词表,各 skill 引用不复制」。词条(全部她的原词):
28
+
29
+ **痛点 / 卖点 / 上手 / 砸价 / 信任感 / 廉价感 / 划走 / 台本**(产物名)。
30
+
31
+ ## 自检结构
32
+
33
+ 自检清单逐条对应铁律,问句全部可判定、且用她的词(「砸价那一秒三样占了几样?」而非「价格强调是否充分?」)。给不出判定阈值的主张(「亮堂」「干净」「东西少」——她的原话「说不上数,凭眼睛」)降级为「倾向」,单列一节,不进铁律、不进自检硬条目。
34
+
35
+ ## 这个种子教你什么
36
+
37
+ 维度名(痛点/上手/砸价/廉价感/划走)**只属于这个栏目**。可迁移的是形态:①**负面维度可以当第一等组织维度**——说不出「我是什么」但秒答「什么绝对不行」的创作者,禁令清单就是骨架;②**次序本身可以是铁律**(先痛后卖),不只是内容主张;③判定不了的主张降级为倾向,绝不硬凑阈值;④单产线绝不硬拆家族;⑤`produces` 写自造串完全合法——框架静默登记,管线外加 `routing:"none"` 即可,不逼创作者学管线词汇。
@@ -0,0 +1,35 @@
1
+ # 种子 · 心理学人文栏目(《实在界漫游指南》削减版)
2
+
3
+ 一人公司的心理学/人文知识口播频道。访谈收敛出的家族:**4 个 skill + 1 份共享词表**。
4
+
5
+ ## 组织维度(全部来自栏目主自己的语言)
6
+
7
+ - **Step 1 = 叙事功能**:栏目主的第一判断是「这段话在叙事里干什么」——七个功能各占三阶段结构的一个位置(钩子/打击/翻译/坠落/抱持/升华/回扣),另有一个不占位置的修辞强调(金句大字)。**组件按叙事职责分类,不按形状分类**——这是他自己说出的核心取向。
8
+ - **第二维度 = 主题变体**:每期有一个「容器概念」(借一个学科意象翻译心理理论),容器决定当期强调色;跨期不变项(字体/间距/单点强调色纪律)与可变项(accent/底色)显式两栏。
9
+ - **第三维度 = 时间**:长段叙事按内部 Act 切分 + 元素生命周期表(哪个元素哪一刻入场/退场)。
10
+
11
+ ## 铁律(禁令先行的产物,节选)
12
+
13
+ - 绝不引入平台角标水印;绝不用渐变/3D/投影(涵容类软轮廓除外)。
14
+ - 单点强调色纪律:一个画面最多一个红点,**且不是每个画面都要有**——只有需要明显强调的画面才加(稀缺性=强调的前提,实测泛滥即审美疲劳)。
15
+ - 概念词首次亮相 = 衬线 Heavy 大字加宽字距的固定仪式,第二次出现即降回正文。
16
+ - 每条铁律配自检问句(例:「这一镜真的需要红点吗?」「同画面字号层级 ≤3?」)。
17
+
18
+ ## 家族切分(按 handoff 类型)
19
+
20
+ | skill | 产什么 | produces | 契约 |
21
+ |---|---|---|---|
22
+ | 拆分派单器 | 全片 beat 派单文档 | —(管线文档生产者,不登记) | — |
23
+ | 动态图生成 | HTML 动画颗粒 | RRV_MG | gsap-emit v1(合规项进自检) |
24
+ | AI 再现分镜 | 双语分镜提示词文本 | AI_DRAMA | 暂无契约 |
25
+ | 封面设计 | 文生图 prompt + 排字工作台 | cover + routing:"none" | 管线外 |
26
+
27
+ 每个 skill 开头声明「这个 skill 不做什么 → 找谁」。
28
+
29
+ ## 共享词表(漂移的解药)
30
+
31
+ 叙事功能枚举曾在 6 处独立定义、数目口径打架;颜色 token 双份硬编码。收口后:一份 `_shared/<栏目>/vocab.md` 单点定义(枚举/色值/叫法/悬置区),各 skill 引用不复制,「新词先入表再用」。
32
+
33
+ ## 这个种子教你什么
34
+
35
+ 维度名(叙事功能/容器/红点)**只属于这个栏目**。可迁移的是形态:①用户的 Step 1 就是 skill 的 Step 1;②禁令比正面描述硬;③铁律必配自检;④多产线才切家族、切了就要互相路由;⑤共享词一旦出现在两个 skill 里就该进词表。