@jennie-shawn/starwork 0.1.0-alpha.2 → 0.1.0-alpha.5

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/README.md CHANGED
@@ -1,83 +1,87 @@
1
1
  # StarWork
2
2
 
3
- StarWork is an AI workspace protocol and toolkit for keeping long-running work organized across agents, projects, and sessions.
3
+ StarWork 是一套面向 AI Agent 的工作台协议和工具集,用来帮助用户把长期工作、跨会话协作、多项目管理和 Agent 工作流组织清楚。
4
4
 
5
- It provides:
5
+ 它包含四个核心部分:
6
6
 
7
- - **Core**: workspace structures, roles, health checks, and project-state conventions.
8
- - **CLI**: commands for creating, checking, adapting, extending, and spawning workspaces.
9
- - **Packs**: scenario templates for common workflows.
10
- - **Skills**: Agent workflows that help Codex and other agents design StarWork workspaces.
7
+ - **Core**:定义工作台应该长什么样,包括目录结构、角色边界、状态文件和健康检查规则。
8
+ - **CLI**:提供 `init`、`doctor`、`spawn`、`adapt`、`pack install` 等命令,用来创建、检查和扩展工作台。
9
+ - **Packs**:场景模板包。当前 A 测阶段默认使用通用 Pack。
10
+ - **Skills**:给 Codex Agent 使用的工作流说明,让 Agent 能更可靠地帮用户设计和生成 StarWork 工作台。
11
11
 
12
- StarWork is currently in early A-test. The current package is intended for installation testing, workflow validation, and product feedback.
12
+ 当前版本处于 A 测阶段,适合测试安装流程、基础命令、工作台结构和 Agent skill 使用体验。
13
13
 
14
- ## Install
14
+ ## 安装 CLI
15
15
 
16
- Install the CLI globally:
16
+ 全局安装:
17
17
 
18
18
  ```bash
19
19
  npm install -g @jennie-shawn/starwork
20
20
  starwork --help
21
21
  ```
22
22
 
23
- Or run it without global installation:
23
+ 不全局安装,直接运行:
24
24
 
25
25
  ```bash
26
26
  npx @jennie-shawn/starwork --help
27
27
  ```
28
28
 
29
- ## Install Skills
29
+ ## 安装 Skills
30
30
 
31
- StarWork skills are distributed through the `skills` CLI from the GitHub repository.
31
+ StarWork skills 通过 GitHub 仓库和 `skills` CLI 分发。
32
32
 
33
- Install all StarWork skills for Codex:
33
+ Codex 安装全部 StarWork skills
34
34
 
35
35
  ```bash
36
36
  npx skills add jennie-shawn/starwork --skill '*' -g -a codex -y
37
37
  ```
38
38
 
39
- Install individual skills:
39
+ 单独安装某个 skill:
40
40
 
41
41
  ```bash
42
42
  npx skills add jennie-shawn/starwork --skill starworkInit -g -a codex -y
43
43
  npx skills add jennie-shawn/starwork --skill starworkSpawn -g -a codex -y
44
44
  ```
45
45
 
46
- Available skills:
46
+ 当前 skills
47
47
 
48
- - `starworkInit`: helps an agent design a friendly `starwork init` plan for a new workspace.
49
- - `starworkSpawn`: helps an agent design a `starwork spawn --blueprint` plan for a satellite workspace.
48
+ - `starworkInit`:帮助 Agent 判断工作台类型、语言、是否需要事项,并生成友好的 `starwork init` 初始化方案。
49
+ - `starworkSpawn`:帮助 Agent 为已有 Hub 设计 `starwork spawn --blueprint` 工作台定制单。
50
50
 
51
- ## Quick Start
51
+ 如果你希望让 Agent 帮你完成安装,可以把 [Agent 安装指南](docs/agent-install-guide.md) 里的提示词发给你的 Agent。
52
52
 
53
- Create a single-project workspace:
53
+ ## 快速开始
54
+
55
+ 创建一个长期单项目工作台:
54
56
 
55
57
  ```bash
56
58
  starwork init \
57
59
  --type single-matter \
58
60
  --pack general \
61
+ --language zh \
59
62
  --name "StarWork A Test" \
60
63
  --target ~/Desktop/starwork-a-test \
61
64
  --yes
62
65
  ```
63
66
 
64
- Check the workspace:
67
+ 检查工作台:
65
68
 
66
69
  ```bash
67
70
  starwork doctor --target ~/Desktop/starwork-a-test
68
71
  ```
69
72
 
70
- Create a multi-project Hub:
73
+ 创建一个多项目中枢:
71
74
 
72
75
  ```bash
73
76
  starwork init \
74
77
  --type hub \
78
+ --language zh \
75
79
  --name "StarWork Hub A Test" \
76
80
  --target ~/Desktop/starwork-hub-a-test \
77
81
  --yes
78
82
  ```
79
83
 
80
- Spawn a project from the Hub:
84
+ Hub 生成一个项目:
81
85
 
82
86
  ```bash
83
87
  starwork spawn \
@@ -88,13 +92,13 @@ starwork spawn \
88
92
  --yes
89
93
  ```
90
94
 
91
- Check the spawned project:
95
+ 检查生成的项目:
92
96
 
93
97
  ```bash
94
98
  starwork doctor --target ~/Desktop/starwork-alpha-project
95
99
  ```
96
100
 
97
- ## CLI Commands
101
+ ## CLI 能力
98
102
 
99
103
  ```text
100
104
  starwork init
@@ -104,49 +108,49 @@ starwork adapt
104
108
  starwork pack install
105
109
  ```
106
110
 
107
- Current capabilities:
111
+ 当前能力:
108
112
 
109
- - `init`: creates a local starter workspace, local matter workspace, or multi-project Hub.
110
- - `doctor`: checks workspace health, required files, Pack installation, and blueprint customization.
111
- - `spawn`: creates and registers a satellite project from an existing Hub.
112
- - `adapt`: generates Agent-specific adapter files for Claude Code, Cursor, and related tools.
113
- - `pack install`: installs supported Packs into compatible workspaces.
113
+ - `init`:创建轻量单项目、长期事项型单项目或多项目 Hub
114
+ - `doctor`:检查工作台健康状态、必需文件、Pack 落地结果和 blueprint 定制结果。
115
+ - `spawn`:从已有 Hub 创建并登记卫星项目。
116
+ - `adapt`:生成 Claude CodeCursor Agent 的适配文件。
117
+ - `pack install`:向兼容工作台安装支持的 Pack。
114
118
 
115
- ## Repository Structure
119
+ ## 仓库结构
116
120
 
117
121
  ```text
118
122
  .
119
- ├── core/ # StarWork Core protocol, kits, profiles, and presets
120
- ├── cli/ # CLI implementation and command specifications
121
- ├── packs/ # Scenario Packs
123
+ ├── core/ # StarWork Core 协议、Kit、Profile、Preset
124
+ ├── cli/ # CLI 实现和命令规格
125
+ ├── packs/ # 场景 Pack
122
126
  ├── skills/ # Agent skills
123
- ├── schemas/ # Structured schemas
124
- ├── adapters/ # Agent adapter rules
125
- ├── examples/ # Examples and sample snippets
126
- └── docs/ # Product documentation and A-test guides
127
+ ├── schemas/ # 结构化 schema
128
+ ├── adapters/ # Agent 适配规则
129
+ ├── examples/ # 示例
130
+ └── docs/ # 产品文档和 A 测指南
127
131
  ```
128
132
 
129
- ## A-test Notes
133
+ ## A 测反馈重点
130
134
 
131
- This release is intended for early testers. Please focus feedback on:
135
+ 请优先反馈:
132
136
 
133
- - whether the CLI installs and runs cleanly;
134
- - whether generated workspace structures are easy to understand;
135
- - whether `doctor` explains problems clearly;
136
- - whether Hub + Satellite workflows feel natural;
137
- - whether `starworkInit` and `starworkSpawn` can be discovered and used by Codex.
137
+ - CLI 是否能顺利安装和运行。
138
+ - `init` 创建的工作台结构是否容易理解。
139
+ - `doctor` 的检查结果是否能指导修复问题。
140
+ - Hub + Satellite 工作流是否自然。
141
+ - `starworkInit` `starworkSpawn` 是否能被 Agent 正确识别和调用。
138
142
 
139
- For a fuller test script, see [docs/alpha-test-guide.md](docs/alpha-test-guide.md).
143
+ 更完整的测试脚本见 [A 测安装指南](docs/alpha-test-guide.md)
140
144
 
141
- ## Development
145
+ ## 开发
142
146
 
143
- Run the test suite:
147
+ 运行测试:
144
148
 
145
149
  ```bash
146
150
  npm test
147
151
  ```
148
152
 
149
- Preview the npm package contents:
153
+ 预览 npm 包内容:
150
154
 
151
155
  ```bash
152
156
  npm pack --dry-run
package/cli/README.md CHANGED
@@ -25,7 +25,7 @@ v0.1 只覆盖最小可用安装和适配能力:
25
25
 
26
26
  - `starwork init` 第一版:可以初始化轻量单项目、长期单项目和多项目管理中枢,并通过 Pack 语言配置组装通用工作、内容创作者和中枢管理场景。
27
27
  - `starwork spawn` 第一版:可以从健康 Hub 生成 `satellite-starter` / `satellite-matter` 项目工作台,支持 `--blueprint` 定制目录、路径、规则和 seed,并回写 Hub 项目注册表。
28
- - `starwork doctor` 第一版:可以检查 workspace state、Core 必需角色、Kit 文件、正式事实源、业务工作区和 Pack 落地结果,并支持 `--json` 输出。
28
+ - `starwork doctor` 第一版:可以检查 workspace state、Core 必需角色、Kit 文件、正式事实源、业务工作区和 Pack 落地结果,并支持 `--json` 输出;alpha.4 开始可识别历史模板并给出升级建议;alpha.5 开始输出目录 `inventory` 与语义 `signals`,供 `starworkDoctor` skill 判断。
29
29
  - `starwork adapt` 第一版:可以为 Codex、Claude Code、Cursor、Trae 生成或登记轻量适配入口。
30
30
  - `starwork pack install` 第一版:可以在健康工作台上补装 Pack,并更新路径、规则、模板和 workspace state。
31
31
 
@@ -6,8 +6,8 @@
6
6
  - 所属模块:StarWork CLI
7
7
  - 命令:`starwork doctor`
8
8
  - 前置状态:Core v0.1 已封版,`starwork init` 第一版已落地
9
- - 实现状态:v0.1 最小实现已落地
10
- - 目标:检查一个 StarWork 工作台是否健康,并告诉用户问题在哪里、严重到什么程度、下一步该做什么
9
+ - 实现状态:v0.1 最小实现已落地;历史模板升级诊断、目录 inventory 和 signals 已进入 alpha
10
+ - 目标:检查一个 StarWork 工作台是否健康,并把结构事实、风险和候选信号暴露出来;对历史模板用户只输出可供 AI 判断的诊断信号,不直接生成行动建议
11
11
 
12
12
  ## 一句话定义
13
13
 
@@ -15,6 +15,8 @@
15
15
 
16
16
  它不负责创建工作台,不负责升级工作台,也不默认修复文件。它只做一件事:把 Core、Kit、Pack 和 Agent 适配文件之间的不一致检查出来,用人能看懂的方式报告。
17
17
 
18
+ 从 alpha.4 起,`doctor` 还承担一个轻量探测入口职责:当目录不是标准 StarWork 工作台,但看起来像用户正在使用的历史模板时,它不会只说“不是工作台”,而是输出历史模板识别结果、目录 inventory 和 semantic signals,交给 `starworkDoctor` 做后续判断。
19
+
18
20
  ## 为什么先做 doctor
19
21
 
20
22
  Core v0.1 已封版后,项目进入 M2:CLI v0.1 最小闭环。
@@ -90,6 +92,8 @@ starwork doctor --verbose
90
92
  | `--json` | 输出机器可读 JSON。 |
91
93
  | `--strict` | 将部分 warning 视为失败,适合测试和发布前检查。 |
92
94
  | `--verbose` | 显示通过项、检查来源和路径解析细节。 |
95
+ | `--inventory-depth <number\|all>` | 控制目录结构探测深度,默认用于保护过大的工作区。 |
96
+ | `--inventory-limit <number>` | 控制最多输出多少个目录和文件条目。 |
93
97
  | `--help` | 显示帮助。 |
94
98
 
95
99
  v0.1 暂不提供 `--fix`。修复动作后续可以单独设计为 `starwork doctor --fix` 或 `starwork repair`,但第一版不要混入。
@@ -142,7 +146,7 @@ v0.1 暂不提供 `--fix`。修复动作后续可以单独设计为 `starwork do
142
146
  结果:
143
147
 
144
148
  - 找到:使用该目录作为工作区根目录。
145
- - 未找到但当前目录有 StarWork 痕迹:报告 `fail` 或 `warn`,提示运行 `starwork init` 或手动补齐 state
149
+ - 未找到但当前目录有 StarWork 或历史模板痕迹:报告缺少 workspace state,同时输出历史模板候选信号。
146
150
  - 未找到且无 StarWork 痕迹:报告不是 StarWork 工作台。
147
151
 
148
152
  v0.1 判断标准:
@@ -150,9 +154,41 @@ v0.1 判断标准:
150
154
  | 情况 | 结果 |
151
155
  |---|---|
152
156
  | 找到 `.starwork/workspace.json` | 继续检查。 |
153
- | 未找到 state,但有 `AGENTS.md` 和 `_系统/` / `_system/` | `fail`:缺少 workspace state |
157
+ | 未找到 state,但有 `AGENTS.md` 和 `_系统/` / `_system/` | `fail`:缺少 workspace state,并输出候选信号。 |
158
+ | 未找到 state,但有 `references/outputs` 或 `参考资料/输出` | `fail`:识别为历史模板升级候选。 |
154
159
  | 完全没有 StarWork 痕迹 | `fail`:不是 StarWork 工作台。 |
155
160
 
161
+ ### Step 1.5:历史模板升级诊断
162
+
163
+ 历史模板诊断只读文件结构,不移动、不复制、不写入任何文件。
164
+
165
+ 识别信号:
166
+
167
+ | 信号 | 示例 |
168
+ |---|---|
169
+ | Agent 入口规则 | `AGENTS.md`、`CLAUDE.md`、`.cursorrules` |
170
+ | 系统目录 | `_系统/`、`_system/` |
171
+ | 事项目录 | `事项/`、`matters/` |
172
+ | 参考资料目录 | `参考资料/`、`资料/`、`素材/`、`references/`、`reference/` |
173
+ | 输出目录 | `输出/`、`成果/`、`outputs/`、`output/` |
174
+ | 身份和教训 | `identity/`、`lessons/`、`_系统/身份/`、`_system/identity/` |
175
+
176
+ 推断规则:
177
+
178
+ | 推断项 | 规则 |
179
+ |---|---|
180
+ | `language` | 中文路径多则 `zh`,英文路径多则 `en`,不确定时默认为 `zh`。 |
181
+ | `workspace_type` | 存在 `事项/` 或 `matters/` 时推断为 `single-matter`,否则推断为 `single-light`。 |
182
+ 输出内容:
183
+
184
+ - `upgrade.candidate: true`
185
+ - `upgrade.source: legacy-template`
186
+ - `upgrade.inferred.language`
187
+ - `upgrade.inferred.workspace_type`
188
+ - 检测到的参考资料目录和输出目录
189
+
190
+ 注意:`doctor --json` 不输出 `next_steps`,也不输出 Pack 建议,避免影响 `starworkDoctor` 基于上下文做独立判断。在没有正式 `starwork upgrade` 命令前,`doctor` 只提供事实和信号,不执行迁移。
191
+
156
192
  ### Step 2:读取 workspace state
157
193
 
158
194
  读取 `.starwork/workspace.json`。
@@ -388,6 +424,7 @@ Result:
388
424
  "language": "zh",
389
425
  "packs": ["content-creator"]
390
426
  },
427
+ "upgrade": null,
391
428
  "summary": {
392
429
  "pass": 18,
393
430
  "info": 1,
@@ -405,6 +442,29 @@ Result:
405
442
  }
406
443
  ```
407
444
 
445
+ 历史模板升级候选的 JSON 示例:
446
+
447
+ ```json
448
+ {
449
+ "schema": "starwork.doctor.result.v0.1",
450
+ "ok": false,
451
+ "strict_ok": false,
452
+ "workspace_root": null,
453
+ "workspace": null,
454
+ "upgrade": {
455
+ "candidate": true,
456
+ "source": "legacy-template",
457
+ "confidence": "high",
458
+ "inferred": {
459
+ "language": "zh",
460
+ "workspace_type": "single-matter",
461
+ "references": ["参考资料"],
462
+ "outputs": ["输出"]
463
+ }
464
+ }
465
+ }
466
+ ```
467
+
408
468
  ## 检查 ID 命名
409
469
 
410
470
  检查 ID 应稳定,方便测试、文档和后续自动化使用。
@@ -419,6 +479,7 @@ capability.*
419
479
  pack.*
420
480
  content.*
421
481
  adapter.*
482
+ legacy.*
422
483
  ```
423
484
 
424
485
  示例:
@@ -435,6 +496,9 @@ adapter.*
435
496
  - `pack.paths.exist`
436
497
  - `pack.templates.installed`
437
498
  - `content.current_work.too_long`
499
+ - `legacy.template.detected`
500
+ - `legacy.references.detected`
501
+ - `legacy.outputs.detected`
438
502
 
439
503
  ## 与其他命令的关系
440
504
 
@@ -503,6 +567,8 @@ adapter.*
503
567
  - 删除正式事实源目录后返回 fail。
504
568
  - 删除 Pack seed 文件后返回 fail。
505
569
  - 非 StarWork 目录返回 fail,并提示先运行 `starwork init`。
570
+ - 对存在 `references/outputs` 的英文历史模板返回 fail,但输出 `upgrade` 候选信号,不输出 `next_steps` 或 Pack 建议。
571
+ - 对存在 `参考资料/输出/事项` 的中文历史模板返回 fail,但推断为 `single-matter` + `zh`。
506
572
  - `--json` 输出稳定结构。
507
573
  - 没有 fail 时退出码为 `0`,有 fail 时退出码为 `1`。
508
574