@tanlinfeng/project-docs-workflow 0.0.0-stage → 2.1.0
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.
- package/LICENSE +21 -0
- package/NOTICE +52 -0
- package/README.md +162 -2
- package/bin/install.js +695 -0
- package/package.json +20 -4
- package/skills/deepwork/SKILL.md +15 -0
- package/skills/doc-opt/EXAMPLES.md +77 -0
- package/skills/doc-opt/SKILL.md +83 -0
- package/skills/doc-opt/agents/openai.yaml +5 -0
- package/skills/domain-modeling/SKILL.md +83 -0
- package/skills/domain-modeling/agents/openai.yaml +3 -0
- package/skills/grill-me/SKILL.md +13 -0
- package/skills/grill-with-docs/SKILL.md +18 -0
- package/skills/grilling/SKILL.md +46 -0
- package/skills/grilling/agents/openai.yaml +3 -0
- package/skills/improve-codebase-architecture/SKILL.md +15 -0
- package/skills/project-docs-workflow/SKILL.md +108 -0
- package/skills/project-docs-workflow/agents/openai.yaml +5 -0
- package/skills/project-docs-workflow/assets/templates/entries/adr-entry.md +27 -0
- package/skills/project-docs-workflow/assets/templates/entries/issue-entry.md +28 -0
- package/skills/project-docs-workflow/assets/templates/entries/pdr-current.md +19 -0
- package/skills/project-docs-workflow/assets/templates/entries/pdr-interfaces.md +28 -0
- package/skills/project-docs-workflow/assets/templates/entries/pdr-module-readme.md +34 -0
- package/skills/project-docs-workflow/assets/templates/entries/pdr-nfr.md +22 -0
- package/skills/project-docs-workflow/assets/templates/entries/pdr-spec.md +20 -0
- package/skills/project-docs-workflow/assets/templates/entries/term-entry.md +22 -0
- package/skills/project-docs-workflow/assets/templates/project/adr-readme.md +31 -0
- package/skills/project-docs-workflow/assets/templates/project/agents-block.md +15 -0
- package/skills/project-docs-workflow/assets/templates/project/agents-domain.md +44 -0
- package/skills/project-docs-workflow/assets/templates/project/agents-issues.md +65 -0
- package/skills/project-docs-workflow/assets/templates/project/agents-workflow.md +61 -0
- package/skills/project-docs-workflow/assets/templates/project/context.md +21 -0
- package/skills/project-docs-workflow/assets/templates/project/pdr-00-readme.md +36 -0
- package/skills/project-docs-workflow/references/adr.md +53 -0
- package/skills/project-docs-workflow/references/coexistence.md +49 -0
- package/skills/project-docs-workflow/references/deps/boundaries.md +29 -0
- package/skills/project-docs-workflow/references/deps/doc-opt.md +17 -0
- package/skills/project-docs-workflow/references/deps/domain-modeling.md +51 -0
- package/skills/project-docs-workflow/references/deps/grilling.md +31 -0
- package/skills/project-docs-workflow/references/deps/tdd.md +35 -0
- package/skills/project-docs-workflow/references/issues.md +51 -0
- package/skills/project-docs-workflow/references/pdr.md +33 -0
- package/skills/project-docs-workflow/references/terminology.md +21 -0
- package/skills/project-docs-workflow/references/workflow.md +45 -0
- package/skills/retro/SKILL.md +19 -0
- package/skills/tdd/SKILL.md +50 -0
- package/skills/tdd/agents/openai.yaml +3 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 project-docs-workflow contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/NOTICE
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
NOTICE
|
|
2
|
+
======
|
|
3
|
+
|
|
4
|
+
project-docs-workflow
|
|
5
|
+
Copyright (c) 2026 project-docs-workflow contributors
|
|
6
|
+
Licensed under the MIT License (see LICENSE).
|
|
7
|
+
|
|
8
|
+
Third-party attribution
|
|
9
|
+
-----------------------
|
|
10
|
+
|
|
11
|
+
Portions of the bundled skills in this package are trimmed / adapted from:
|
|
12
|
+
|
|
13
|
+
https://github.com/mattpocock/skills
|
|
14
|
+
MIT License
|
|
15
|
+
Copyright (c) 2026 Matt Pocock
|
|
16
|
+
|
|
17
|
+
The following bundled skills contain material derived from the project above:
|
|
18
|
+
|
|
19
|
+
- skills/grilling
|
|
20
|
+
- skills/grill-me
|
|
21
|
+
- skills/grill-with-docs
|
|
22
|
+
- skills/domain-modeling
|
|
23
|
+
- skills/tdd
|
|
24
|
+
- skills/deepwork
|
|
25
|
+
- skills/retro
|
|
26
|
+
- skills/improve-codebase-architecture
|
|
27
|
+
|
|
28
|
+
The MIT permission notice for the upstream material is reproduced below.
|
|
29
|
+
|
|
30
|
+
------------------------------------------------------------------------
|
|
31
|
+
|
|
32
|
+
MIT License
|
|
33
|
+
|
|
34
|
+
Copyright (c) 2026 Matt Pocock
|
|
35
|
+
|
|
36
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
37
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
38
|
+
in the Software without restriction, including without limitation the rights
|
|
39
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
40
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
41
|
+
furnished to do so, subject to the following conditions:
|
|
42
|
+
|
|
43
|
+
The above copyright notice and this permission notice shall be included in all
|
|
44
|
+
copies or substantial portions of the Software.
|
|
45
|
+
|
|
46
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
47
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
48
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
49
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
50
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
51
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
52
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,163 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @tanlinfeng/project-docs-workflow
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
> 项目文档工作流 skill 包:提供 issue tracker、ADR、PDR、术语表与协作工作流约定,自带轻量依赖 skill 与 ref 兜底,可独立分发。
|
|
4
|
+
|
|
5
|
+
## 这是什么
|
|
6
|
+
|
|
7
|
+
`project-docs-workflow` 是一套面向 AI agent 的「项目文档工作流」skill。它把项目中的几类关键文档沉淀为可复用的模板与约定:
|
|
8
|
+
|
|
9
|
+
- **issue tracker**:任务 / 缺陷的登记与追踪约定
|
|
10
|
+
- **ADR**(Architecture Decision Record):架构决策记录
|
|
11
|
+
- **PDR**(Product/Project Design Record):设计与需求记录
|
|
12
|
+
- **terminology**:领域术语表,统一团队与 agent 的词汇
|
|
13
|
+
- **workflow**:上述文档之间的协作与更新流程
|
|
14
|
+
|
|
15
|
+
skill 本身是自包含的:主 skill 内部带 `references/deps/*.md` 兜底材料,因此即使没有安装任何依赖 skill,也能独立工作。包内同时附带了若干**轻量依赖 skill**(来自 `mattpocock/skills` 的精简版本)以及一个**附赠的 `doc-opt` skill**。
|
|
16
|
+
|
|
17
|
+
## 安装
|
|
18
|
+
|
|
19
|
+
通过 npx 直接安装到默认的 skills 根目录(`~/.agents/skills`):
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npx @tanlinfeng/project-docs-workflow
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
常用选项:
|
|
26
|
+
|
|
27
|
+
| 命令 | 说明 |
|
|
28
|
+
| --- | --- |
|
|
29
|
+
| `npx @tanlinfeng/project-docs-workflow` | 默认动作 `install`:安装主 skill 及所有依赖 skill |
|
|
30
|
+
| `npx @tanlinfeng/project-docs-workflow --dir <path>` | 指定 skills 根目录(默认 `~/.agents/skills`) |
|
|
31
|
+
| `npx @tanlinfeng/project-docs-workflow --force` | 覆盖已存在的 `project-docs-workflow`(**仅主 skill**;依赖 skill 仍不覆盖) |
|
|
32
|
+
| `npx @tanlinfeng/project-docs-workflow --dry-run` | 只打印将执行的操作,不写入任何文件 |
|
|
33
|
+
| `npx @tanlinfeng/project-docs-workflow --with-matt-skills` | 可选:依赖 skill 改从上游 `mattpocock/skills` 安装**完整版**(需 Node >= 22.20) |
|
|
34
|
+
| `npx @tanlinfeng/project-docs-workflow --matt-agent <name>` | 上游安装使用的 agent(默认 `codex`,落盘到其全局目录 `~/.agents/skills`) |
|
|
35
|
+
| `npx @tanlinfeng/project-docs-workflow check` | 检查依赖 skill 的解析状态,全部可解析时退出码为 0,否则为 1 |
|
|
36
|
+
| `npx @tanlinfeng/project-docs-workflow uninstall` | 依据**安装清单**卸载本包安装的 skill(只删本包装的,见下文「卸载」) |
|
|
37
|
+
| `npx @tanlinfeng/project-docs-workflow uninstall --dry-run` | 只打印卸载计划(将删除 / 保留哪些),不写入 |
|
|
38
|
+
| `npx @tanlinfeng/project-docs-workflow uninstall --force` | 跳过交互确认;非 TTY 场景下**必须**加此参数 |
|
|
39
|
+
|
|
40
|
+
### 覆盖策略(安全优先)
|
|
41
|
+
|
|
42
|
+
安装器**永不覆盖用户已存在的同名 skill**。若目标目录中已存在同名目录,会打印 `同名 skill 已存在,保留用户版本:<name>` 并跳过。只有对主 skill `project-docs-workflow` 使用 `--force` 时才会覆盖它;依赖 skill 即使加了 `--force` 也仍会跳过。
|
|
43
|
+
|
|
44
|
+
### 可选:从上游安装「完整版」依赖 skill
|
|
45
|
+
|
|
46
|
+
包内自带的依赖 skill 是来自 `mattpocock/skills` 的**轻量版**。如果你更想要**完整上游版本**,可以启用 `--with-matt-skills`:安装器会调用官方 `skills` CLI(npm 包 `skills`)执行
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
npx --yes skills@latest add mattpocock/skills -g -y -a <agent> -s <name1> <name2> ...
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
- **交互式询问**:不带 `--with-matt-skills` 时,仅当 stdout 与 stdin **都是 TTY**、动作为 `install`(非 `check`)、且非 `--dry-run` 时,才提示一次 `是否从上游安装依赖 skill 的完整版(mattpocock/skills)?[y/N] `,**默认否**(空输入或其它输入均视为否)。非 TTY / 管道 / CI 场景**完全不询问**,不会挂起。
|
|
53
|
+
- **受管集合**:仅这 8 个名字参与上游安装:`grilling`、`grill-me`、`grill-with-docs`、`domain-modeling`、`tdd`、`deepwork`、`retro`、`improve-codebase-architecture`;`doc-opt` 与主 skill 不属于上游集合,维持原有行为。
|
|
54
|
+
- **永不覆盖**:调用上游前会先检测这 8 个名字里哪些在目标目录中**已存在**,已存在者**原样保留、绝不提交给上游**;只有缺失的名字才会通过 `-s` 传给上游。
|
|
55
|
+
- **顺序与去重**:先跑上游;随后复核上游目标目录,仍然缺失的名字才回退复制本包的轻量版。启用上游时,由上游负责的名字不会再复制轻量版;未启用时(默认)行为与之前完全一致。
|
|
56
|
+
- **降级、绝不失败**:Node < 22.20、找不到 `npx`、上游非 0 退出或网络错误时,只打印中文告警并回退到缺失项的轻量版安装,整体仍以退出码 0 结束。
|
|
57
|
+
- **agent 与目录注意**:上游固定以 `-a <agent> -g` 安装到该 agent 的**全局目录**(默认 `codex` → `~/.agents/skills`,正好与默认目标一致)。可用 `--matt-agent <name>` 覆盖 agent。若你传入了非默认的 `--dir`,上游部分**无法跟随 `--dir`**(仍落到 agent 全局目录),安装器会明确告警,同时 `--dir` 下的轻量版仍按原逻辑处理。
|
|
58
|
+
- **dry-run**:`--dry-run --with-matt-skills` 只打印将执行的上游命令、以及哪些名字因已存在而跳过,不实际执行。
|
|
59
|
+
|
|
60
|
+
## 卸载
|
|
61
|
+
|
|
62
|
+
安装时,本包会在 `<target>/.project-docs-workflow.install.json`(`<target>` 为 `--dir` 或默认 `~/.agents/skills`)写入一份**安装清单**,记录每个被处理过的 skill 及其**归属**。卸载完全依据这份清单,而不是靠猜测。
|
|
63
|
+
|
|
64
|
+
清单形如:
|
|
65
|
+
|
|
66
|
+
```json
|
|
67
|
+
{
|
|
68
|
+
"version": "2.1.0",
|
|
69
|
+
"target": "/home/me/.agents/skills",
|
|
70
|
+
"updatedAt": "2026-10-12T05:24:36.386Z",
|
|
71
|
+
"entries": {
|
|
72
|
+
"project-docs-workflow": { "kind": "main", "action": "installed", "at": "…" },
|
|
73
|
+
"tdd": { "kind": "lite", "action": "installed", "at": "…" },
|
|
74
|
+
"doc-opt": { "kind": "doc-opt", "action": "installed", "at": "…" },
|
|
75
|
+
"deepwork": { "kind": "lite", "action": "skipped", "at": "…" },
|
|
76
|
+
"retro": { "kind": "upstream", "action": "installed", "agent": "codex", "at": "…" }
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
- `kind`:`main` / `lite` / `doc-opt`(本包复制的轻量版)/ `upstream`(委托上游 `skills` CLI 安装的完整版)。
|
|
82
|
+
- `action`:`installed`(本次由本包创建)、`forced`(被 `--force` 覆盖,仍属本包)、`skipped`(安装时已存在,本包原样保留,**永不删除**)。
|
|
83
|
+
- 每次成功 `install` 都会**合并更新**清单(不会丢失旧条目);`--dry-run` 不写清单。
|
|
84
|
+
|
|
85
|
+
**归属规则(安全优先)**:`uninstall` 只删除清单中 `action` 为 `installed` / `forced` 的名字——无论是本包复制的轻量版,还是本包委托上游安装的完整版。凡是安装时**已存在**(记为 `skipped`)的名字,一律不碰;首次记为 `skipped` 的名字即使后续再次安装也始终保持 `skipped`。
|
|
86
|
+
|
|
87
|
+
用法:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
npx @tanlinfeng/project-docs-workflow uninstall [--dir <path>] [--dry-run] [--force]
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
- **确认**:在交互式终端会询问一次 `确认卸载本包安装的 skill?[y/N] `,**默认否**。非交互式(管道 / CI / 非 TTY)**拒绝执行**,除非显式传入 `--force`。`--dry-run` 从不询问、从不写入。
|
|
94
|
+
- **删除方式**:`main` / `lite` / `doc-opt` 直接删除 `<target>/<name>` 目录。`upstream` 的完整版**优先委托上游** `skills` CLI 卸载(按 agent 批量):`npx --yes skills@latest remove <names> -g -y -a <agent>`;当无法委托时(Node < 22.20、找不到 `npx`、上游非 0 退出)会打印告警并**回退直接删除**目录,并提示上游锁文件 `~/.agents/.skill-lock.json` 可能残留过期条目,可用 `npx skills@latest list` 核对。
|
|
95
|
+
- **收尾**:处理完成后删除清单文件本身;**不会**删除目标目录本身,其它文件与空目录保持不动。
|
|
96
|
+
- **幂等**:没有可删项时打印友好提示并以退出码 0 结束。若**清单缺失**,会告警「无清单,尽力而为」,此时**仅**在 `project-docs-workflow` 存在时询问是否删除它,其余 skill 一律不动。
|
|
97
|
+
|
|
98
|
+
## 直接复制(不使用 npm 安装器)
|
|
99
|
+
|
|
100
|
+
也可以完全跳过安装器,手动把 `skills/` 下需要的内容复制进你的 skills 根目录:
|
|
101
|
+
|
|
102
|
+
- 逐个复制 `skills/*` 中的目录;**遇到同名目录就跳过,绝不覆盖用户版本**。
|
|
103
|
+
- 也可以**只复制 `skills/project-docs-workflow` 这一个目录**:它会通过内部的 ref 兜底(`references/deps/*.md`)独立工作,无需其他依赖 skill。
|
|
104
|
+
|
|
105
|
+
## 两级解析协议
|
|
106
|
+
|
|
107
|
+
skill 在引用依赖能力时,遵循两级解析:
|
|
108
|
+
|
|
109
|
+
1. **按名解析**:如果 skills 根目录下存在同名 skill(`<target>/<name>/SKILL.md`),直接使用该已安装的 skill。
|
|
110
|
+
2. **ref 兜底**:否则,回退到主 skill 内部自带的 `references/deps/<fallback>.md`。
|
|
111
|
+
|
|
112
|
+
| 引用名 | 兜底文件 |
|
|
113
|
+
| --- | --- |
|
|
114
|
+
| `grilling` | `grilling.md` |
|
|
115
|
+
| `grill-me` | `grilling.md` |
|
|
116
|
+
| `grill-with-docs` | `grilling.md`、`domain-modeling.md` |
|
|
117
|
+
| `domain-modeling` | `domain-modeling.md` |
|
|
118
|
+
| `tdd` | `tdd.md` |
|
|
119
|
+
| `deepwork` | `boundaries.md` |
|
|
120
|
+
| `retro` | `boundaries.md` |
|
|
121
|
+
| `doc-opt` | `doc-opt.md` |
|
|
122
|
+
| `improve-codebase-architecture` | `boundaries.md` |
|
|
123
|
+
|
|
124
|
+
`check` 子命令会对照上表逐个报告「按名可解析(skill 已安装)」或「ref 兜底可用」,只要每个名字能通过任一级解析即视为通过。
|
|
125
|
+
|
|
126
|
+
## 内置 skill 与来源
|
|
127
|
+
|
|
128
|
+
| skill | 说明 | 来源 |
|
|
129
|
+
| --- | --- | --- |
|
|
130
|
+
| `project-docs-workflow` | 主 skill:issue / ADR / PDR / 术语 / 工作流 | 本包 |
|
|
131
|
+
| `grilling`、`grill-me`、`grill-with-docs` | 需求拷问相关 | `mattpocock/skills` 精简版(MIT,Matt Pocock) |
|
|
132
|
+
| `domain-modeling` | 领域建模 | 同上 |
|
|
133
|
+
| `tdd` | 测试驱动开发 | 同上 |
|
|
134
|
+
| `deepwork`、`retro`、`improve-codebase-architecture` | 精简/占位版本 | 同上 |
|
|
135
|
+
| `doc-opt` | 文档优化(附赠完整版) | 本包附赠 |
|
|
136
|
+
|
|
137
|
+
部分内置 skill 内容摘自 <https://github.com/mattpocock/skills>(MIT License,Copyright (c) 2026 Matt Pocock),详见 [`NOTICE`](./NOTICE)。
|
|
138
|
+
|
|
139
|
+
上表中的 8 个上游依赖 skill 都可以改用完整版:安装时加 `--with-matt-skills` 即会从上游安装(见上文「可选:从上游安装『完整版』依赖 skill」)。
|
|
140
|
+
|
|
141
|
+
## 版本说明
|
|
142
|
+
|
|
143
|
+
本包版本 `2.x` 与「模板生成 v2」对齐:模板结构与生成约定以 v2 为准。
|
|
144
|
+
|
|
145
|
+
## License
|
|
146
|
+
|
|
147
|
+
MIT,见 [`LICENSE`](./LICENSE)。
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## English summary
|
|
152
|
+
|
|
153
|
+
`project-docs-workflow` is an npm-packaged agent **skill bundle** for project documentation workflows: issue tracking, ADRs, PDRs, a terminology glossary, and the workflow that ties them together. The main skill is self-contained via internal `references/deps/*.md` fallbacks, and ships with lightweight dependency skills (trimmed from [mattpocock/skills](https://github.com/mattpocock/skills), MIT, Matt Pocock) plus a bundled `doc-opt` bonus skill.
|
|
154
|
+
|
|
155
|
+
Install with `npx @tanlinfeng/project-docs-workflow` (defaults to `~/.agents/skills`; options: `--dir <path>`, `--force`, `--dry-run`, `--with-matt-skills`, `--matt-agent <name>`, and the `check` / `uninstall` subcommands). The installer **never overwrites** an existing skill of the same name — it skips it, preserving your version. `--force` overwrites only the main `project-docs-workflow` skill.
|
|
156
|
+
|
|
157
|
+
Every successful install writes an **install manifest** at `<target>/.project-docs-workflow.install.json` recording, per skill name, the `kind` (`main`/`lite`/`doc-opt`/`upstream`) and `action` (`installed`/`forced`/`skipped`), merged across re-installs. `uninstall [--dir <path>] [--dry-run] [--force]` removes **only** the names this package owns (`installed`/`forced`) and never touches names that pre-existed (`skipped`, decided by the record, not by guessing). On a TTY it asks once (`[y/N]`, default No); on a non-TTY it refuses unless `--force` is given. Lite/main/doc-opt copies are deleted directly; upstream full versions are removed via the `skills` CLI (`npx --yes skills@latest remove <names> -g -y -a <agent>`), falling back to direct deletion with a warning about a possibly-stale `~/.agents/.skill-lock.json` if delegation is impossible. `--dry-run` prints the plan and never prompts or writes; the manifest is deleted afterwards, the target directory itself is left in place.
|
|
158
|
+
|
|
159
|
+
Optionally, `--with-matt-skills` installs the **full upstream** versions of the dependency skills from `mattpocock/skills` via the official `skills` CLI (`npx --yes skills@latest add mattpocock/skills -g -y -a <agent> -s ...`, requires Node >= 22.20). Without the flag, an interactive TTY gets a single prompt (default **No**); non-TTY/piped/CI runs never prompt. The 8 upstream-managed names are `grilling`, `grill-me`, `grill-with-docs`, `domain-modeling`, `tdd`, `deepwork`, `retro`, `improve-codebase-architecture`; `doc-opt` and the main skill are unaffected. Any name already present is left untouched and never sent upstream, and the installer re-checks afterwards, falling back to the bundled lite copy for anything still missing. If upstream can't run (Node too old, no `npx`, non-zero exit, network error), it warns and falls back — the install still exits 0. Upstream installs into the agent's global dir (`codex` → `~/.agents/skills`), so it cannot follow a custom `--dir` (a warning is printed).
|
|
160
|
+
|
|
161
|
+
You can also copy `skills/*` directly into your skills root (skip any existing directory name, never overwrite); copying just `skills/project-docs-workflow` works standalone thanks to the internal ref fallbacks.
|
|
162
|
+
|
|
163
|
+
Resolution is two-level: use an installed skill by name if present, otherwise follow `references/deps/*.md` inside the skill. Version `2.x` aligns with template generation v2. Licensed MIT (see `LICENSE` and `NOTICE`).
|