helloagents 3.0.1-beta.1 → 3.0.3-beta.1

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.
@@ -9,7 +9,7 @@
9
9
  {
10
10
  "name": "helloagents",
11
11
  "description": "Quality-driven orchestration kernel for AI CLIs: intelligent routing, quality verification, safety guards, and notifications",
12
- "version": "3.0.1-beta.1",
12
+ "version": "3.0.3-beta.1",
13
13
  "source": "./",
14
14
  "author": {
15
15
  "name": "HelloWind",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "helloagents",
3
- "version": "3.0.1-beta.1",
3
+ "version": "3.0.3-beta.1",
4
4
  "description": "HelloAGENTS — The orchestration kernel that makes any AI CLI smarter. Adds intelligent routing, quality verification (Ralph Loop), safety guards, and notifications.",
5
5
  "author": "HelloWind",
6
6
  "license": "Apache-2.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "helloagents",
3
- "version": "3.0.1-beta.1",
3
+ "version": "3.0.3-beta.1",
4
4
  "description": "HelloAGENTS — Quality-driven orchestration kernel for AI CLIs with intelligent routing, quality verification (Ralph Loop), safety guards, and notifications.",
5
5
  "author": {
6
6
  "name": "HelloWind",
package/README.md CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  **Quality-driven orchestration kernel for AI coding CLIs — 14 auto-activated skills, process discipline, and checklist gating.**
10
10
 
11
- [![Version](https://img.shields.io/badge/version-3.0.1-orange.svg)](./package.json)
11
+ [![Version](https://img.shields.io/badge/version-3.0.2-orange.svg)](./package.json)
12
12
  [![npm](https://img.shields.io/npm/v/helloagents.svg)](https://www.npmjs.com/package/helloagents)
13
13
  [![Node](https://img.shields.io/badge/node-%3E%3D18-339933.svg)](./package.json)
14
14
  [![Skills](https://img.shields.io/badge/skills-14-6366f1.svg)](./skills)
@@ -226,7 +226,7 @@ Codex CLI does not need a manual plugin command. `helloagents --global` now inst
226
226
  ```
227
227
  💡【HelloAGENTS】- Help
228
228
 
229
- Available commands: ~auto, ~design, ~prd, ~loop, ~init, ~test, ~verify, ~review, ~commit, ~clean, ~help
229
+ Available commands: ~auto, ~design, ~prd, ~loop, ~wiki, ~init, ~test, ~verify, ~review, ~commit, ~clean, ~help
230
230
 
231
231
  Auto-activated skills (14): hello-ui, hello-api, hello-security, hello-test, hello-verify, hello-errors, hello-perf, hello-data, hello-arch, hello-debug, hello-subagent, hello-review, hello-write, hello-reflect
232
232
  ```
@@ -297,7 +297,8 @@ All commands run inside AI chat with the `~` prefix:
297
297
 
298
298
  | Command | Purpose |
299
299
  |---------|---------|
300
- | `~init` | Initialize project knowledge base (`.helloagents/`) |
300
+ | `~wiki` | Create or sync the project knowledge base only (`.helloagents/`) |
301
+ | `~init` | Full project bootstrap: KB + project-local carrier files |
301
302
  | `~commit` | Generate conventional commit message + KB sync |
302
303
  | `~clean` | Archive completed plans, clean temp files |
303
304
  | `~help` | Show all commands and current config |
@@ -328,7 +329,7 @@ Only include keys you want to override — missing keys use defaults.
328
329
  | `notify_level` | `0` | `0`=off, `1`=desktop, `2`=sound, `3`=both |
329
330
  | `ralph_loop_enabled` | `true` | Auto-run verification after task completion |
330
331
  | `guard_enabled` | `true` | Block dangerous commands |
331
- | `kb_create_mode` | `1` | `0`=off, `1`=auto on coding tasks, `2`=always |
332
+ | `kb_create_mode` | `1` | `0`=off, `1`=auto on coding tasks in activated projects or global mode, `2`=always in activated projects or global mode |
332
333
  | `commit_attribution` | `""` | Empty = no attribution. Set text to append to commit messages |
333
334
  | `install_mode` | `"standby"` | `"standby"` = per-project activation (lite rules), `"global"` = full rules for all projects |
334
335
 
@@ -394,10 +395,10 @@ HelloAGENTS supports two installation modes with different installation methods:
394
395
 
395
396
  | Mode | Install Method | Rules | Skills | Best For |
396
397
  |------|---------------|-------|--------|----------|
397
- | **Standby** (default) | `helloagents install <target> --standby` or `helloagents install --all --standby` | `bootstrap-lite.md` (lite rules) | `~command` on demand, `~init` for full activation | Selective use, keeping other projects unaffected |
398
+ | **Standby** (default) | `helloagents install <target> --standby` or `helloagents install --all --standby` | `bootstrap-lite.md` (lite rules) | `~command` on demand, project activation via `.helloagents/` (`~wiki` or `~init`) | Selective use, keeping other projects unaffected |
398
399
  | **Global** | Manual plugins for Claude/Gemini; native local-plugin auto-install for Codex | `bootstrap.md` (full rules) | 14 skills auto-activate | All-in on HelloAGENTS across every project |
399
400
 
400
- Standby mode injects rules into `~/.claude/CLAUDE.md`, `~/.gemini/GEMINI.md`, and `~/.codex/AGENTS.md`; Codex then loads that local merged file via `model_instructions_file` in `~/.codex/config.toml`. Each CLI also gets a `helloagents` package-root symlink. Claude Code and Gemini still use hooks where their host surfaces support quiet injection well. Codex deliberately does **not** enable HelloAGENTS hooks by default: the latest pre-source shows hook lifecycle output in TUI and does not honor `suppressOutput` as a true silent injection path, so Codex relies on the rules file plus a static runtime-context block instead. In global mode, Claude Code uses plugin hooks from `.claude-plugin/plugin.json`, Gemini loads `bootstrap.md` via `contextFileName` plus extension hooks, and Codex uses the native local-plugin chain (marketplace + local plugin root + cache + plugin enablement in `config.toml`) without plugin hooks.
401
+ Standby mode injects rules into `~/.claude/CLAUDE.md`, `~/.gemini/GEMINI.md`, and `~/.codex/AGENTS.md`; Codex then loads that local merged file via `developer_instructions` in `~/.codex/config.toml`. Each CLI also gets a `helloagents` package-root symlink. Claude Code and Gemini still use hooks where their host surfaces support quiet injection well. Codex deliberately does **not** enable HelloAGENTS hooks by default: the latest pre-source shows hook lifecycle output in TUI and does not honor `suppressOutput` as a true silent injection path, so Codex relies on the injected rules file plus the local symlink/native plugin layout instead. In global mode, Claude Code uses plugin hooks from `.claude-plugin/plugin.json`, Gemini loads `bootstrap.md` via `contextFileName` plus extension hooks, and Codex uses the native local-plugin chain (marketplace + local plugin root + cache + plugin enablement in `config.toml`) without plugin hooks.
401
402
 
402
403
  Bulk switch via CLI: `helloagents --global` or `helloagents --standby`
403
404
 
@@ -424,9 +425,9 @@ After every task, Ralph Loop auto-runs your project's verification commands:
424
425
 
425
426
  ### Knowledge Base (`.helloagents/`)
426
427
 
427
- `~init` creates a project-local knowledge base. `STATE.md` is a project-level recovery snapshot, not a universal memory file for every interaction.
428
+ `~wiki` creates or syncs the project-local knowledge base only. `~init` is the fuller bootstrap: it also writes project-local carrier files (`AGENTS.md`, `CLAUDE.md`, `.gemini/GEMINI.md`), refreshes the project `skills/helloagents` link, and appends the related ignore rules. In standby mode, the presence of `.helloagents/` is what promotes the current project into the full project workflow; project-local carrier files are optional.
428
429
 
429
- It is created and continuously updated for long-running project workflows such as `~init`, `~design`, `~auto`, `~prd`, and `~loop`; updated when already present for verification/review style tasks; and intentionally not created for one-off read-only interactions such as `~help`.
430
+ `STATE.md` is a project-level recovery snapshot, not a universal memory file for every interaction. It is created and continuously updated for long-running project workflows such as `~wiki`, `~init`, `~design`, `~auto`, `~prd`, and `~loop`; updated when already present for verification/review style tasks; and intentionally not created for one-off read-only interactions such as `~help`.
430
431
 
431
432
  | File | Purpose |
432
433
  |------|---------|
@@ -483,7 +484,7 @@ The test suite validates:
483
484
 
484
485
  **A:** Everything. The v3 line is a complete rewrite:
485
486
  - Python package → pure Node.js/Markdown architecture
486
- - 15 commands → 11 commands + 14 auto-activated quality skills
487
+ - 15 commands → 12 commands + 14 auto-activated quality skills
487
488
  - 6 CLI targets → 3 (Claude Code + Codex CLI + Gemini CLI)
488
489
  - New: checklist gate control, guard system, ~prd, ~loop, ~verify, design system generation
489
490
  - See [Version History](#-version-history) for full details.
@@ -520,13 +521,13 @@ Subagents may skip workflow packaging such as routing, interaction flow, and out
520
521
  <details>
521
522
  <summary><strong>Q: What is standby vs global mode?</strong></summary>
522
523
 
523
- **A:** Standby mode (default) deploys lite rules to the targets you choose, typically with `helloagents install <target> --standby` or `helloagents install --all --standby`. Projects need `~init` to activate full features. Global mode uses each CLI's native plugin/extension system for full rules everywhere; deploy it with `helloagents install <target> --global`, `helloagents install --all --global`, or bulk-switch with `helloagents --global`.
524
+ **A:** Standby mode (default) deploys lite rules to the targets you choose, typically with `helloagents install <target> --standby` or `helloagents install --all --standby`. A project enters the full project flow once it has `.helloagents/`, usually via `~wiki` (KB only) or `~init` (full bootstrap). Global mode uses each CLI's native plugin/extension system for full rules everywhere; deploy it with `helloagents install <target> --global`, `helloagents install --all --global`, or bulk-switch with `helloagents --global`.
524
525
  </details>
525
526
 
526
527
  <details>
527
528
  <summary><strong>Q: Where does project knowledge go?</strong></summary>
528
529
 
529
- **A:** In the project-local `.helloagents/` directory. Created by `~init`, auto-synced on code changes (controlled by `kb_create_mode`). `STATE.md` is used as a concise recovery snapshot for long-running workflows, not as a catch-all memory file for every interaction.
530
+ **A:** In the project-local `.helloagents/` directory. It can be created by `~wiki` (KB only) or `~init` (full project bootstrap), then auto-synced on code changes according to `kb_create_mode`. `STATE.md` is used as a concise recovery snapshot for long-running workflows, not as a catch-all memory file for every interaction.
530
531
  </details>
531
532
 
532
533
  <details>
@@ -643,7 +644,23 @@ Subagents may skip workflow packaging such as routing, interaction flow, and out
643
644
 
644
645
  ## 📈 Version History
645
646
 
646
- ### v3.0.1 (current)
647
+ ### v3.0.3 (current)
648
+
649
+ **Workflow and KB activation:**
650
+ - ✨ Added `~wiki` for creating or syncing `.helloagents/` without writing project-local carrier files
651
+ - 🔧 Clarified the activation boundary: in standby mode, `.helloagents/` is the actual project activation signal; project-local carrier files remain optional and belong to `~init`
652
+ - 🔧 Refined `kb_create_mode` wording across bootstrap, help text, and README so it only describes sync timing inside activated projects or global mode
653
+ - 🧪 Added routing coverage for `~wiki` and kept standby `.helloagents/` activation behavior under test
654
+
655
+ ### v3.0.2
656
+
657
+ **Fixes and verification:**
658
+ - 🔧 Removed the Codex-only static runtime-context block that had been reintroduced into generated `AGENTS.md` carriers in standby/global installs
659
+ - 🔧 Re-checked Claude/Gemini standby/global static carriers and confirmed they do not inject the same deprecated runtime-context rule block
660
+ - 🔧 Updated Codex installation docs to match the current `developer_instructions` loading path and the actual no-hooks behavior
661
+ - 🧪 Added regression assertions to ensure Codex standby/global carriers no longer contain the removed runtime-context prefix
662
+
663
+ ### v3.0.1
647
664
 
648
665
  **Fixes and verification:**
649
666
  - 🔧 `STATE.md` recovery rules are tightened: update on key decision changes, rewrite immediately when long-running work makes the snapshot stale, and confirm sync before host-driven compaction/recovery stages
package/README_CN.md CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  **质量驱动的 AI 编码 CLI 编排内核 — 14 个自动激活技能、流程纪律、检查清单门控。**
10
10
 
11
- [![Version](https://img.shields.io/badge/version-3.0.1-orange.svg)](./package.json)
11
+ [![Version](https://img.shields.io/badge/version-3.0.2-orange.svg)](./package.json)
12
12
  [![npm](https://img.shields.io/npm/v/helloagents.svg)](https://www.npmjs.com/package/helloagents)
13
13
  [![Node](https://img.shields.io/badge/node-%3E%3D18-339933.svg)](./package.json)
14
14
  [![Skills](https://img.shields.io/badge/skills-14-6366f1.svg)](./skills)
@@ -226,7 +226,7 @@ Codex CLI 无需手动执行插件命令。`helloagents --global` 会自动走
226
226
  ```
227
227
  💡【HelloAGENTS】- 帮助
228
228
 
229
- 可用命令: ~auto, ~design, ~prd, ~loop, ~init, ~test, ~verify, ~review, ~commit, ~clean, ~help
229
+ 可用命令: ~auto, ~design, ~prd, ~loop, ~wiki, ~init, ~test, ~verify, ~review, ~commit, ~clean, ~help
230
230
 
231
231
  自动激活技能 (14): hello-ui, hello-api, hello-security, hello-test, hello-verify, hello-errors, hello-perf, hello-data, hello-arch, hello-debug, hello-subagent, hello-review, hello-write, hello-reflect
232
232
  ```
@@ -297,7 +297,8 @@ HelloAGENTS 在不同模式下会写入不同文件,但写入/恢复/清理都
297
297
 
298
298
  | 命令 | 说明 |
299
299
  |------|------|
300
- | `~init` | 初始化项目知识库(`.helloagents/`) |
300
+ | `~wiki` | 仅创建/同步项目知识库(`.helloagents/`) |
301
+ | `~init` | 完整初始化项目:知识库 + 项目级载体文件 |
301
302
  | `~commit` | 生成规范化提交信息 + 知识库同步 |
302
303
  | `~clean` | 归档已完成方案,清理临时文件 |
303
304
  | `~help` | 显示所有命令和当前配置 |
@@ -328,7 +329,7 @@ HelloAGENTS 在不同模式下会写入不同文件,但写入/恢复/清理都
328
329
  | `notify_level` | `0` | `0`=关闭,`1`=桌面通知,`2`=声音,`3`=两者 |
329
330
  | `ralph_loop_enabled` | `true` | 任务完成时自动运行验证 |
330
331
  | `guard_enabled` | `true` | 拦截危险命令 |
331
- | `kb_create_mode` | `1` | `0`=关闭,`1`=编码任务自动,`2`=始终 |
332
+ | `kb_create_mode` | `1` | `0`=关闭,`1`=已激活项目或全局模式中的编码任务自动,`2`=已激活项目或全局模式中始终 |
332
333
  | `commit_attribution` | `""` | 空=不添加,填写内容则追加到 commit message |
333
334
  | `install_mode` | `"standby"` | `"standby"`=按项目激活(精简规则),`"global"`=所有项目启用完整规则 |
334
335
 
@@ -394,10 +395,10 @@ HelloAGENTS 支持两种安装模式,采用不同的安装方式:
394
395
 
395
396
  | 模式 | 安装方式 | 规则 | 技能 | 适用场景 |
396
397
  |------|---------|------|------|----------|
397
- | **标准模式** (默认) | `helloagents install <target> --standby` 或 `helloagents install --all --standby` | `bootstrap-lite.md`(精简规则) | `~command` 按需使用,`~init` 激活完整功能 | 按需使用,不影响其他项目 |
398
+ | **标准模式** (默认) | `helloagents install <target> --standby` 或 `helloagents install --all --standby` | `bootstrap-lite.md`(精简规则) | `~command` 按需使用,通过 `.helloagents/` 激活项目(`~wiki` `~init`) | 按需使用,不影响其他项目 |
398
399
  | **全局模式** | Claude/Gemini 手动装插件;Codex 自动装原生本地插件 | `bootstrap.md`(完整规则) | 14 个技能自动激活 | 全面使用 HelloAGENTS |
399
400
 
400
- 标准模式会把规则注入到 `~/.claude/CLAUDE.md`、`~/.gemini/GEMINI.md`、`~/.codex/AGENTS.md`;其中 Codex 再通过 `~/.codex/config.toml` 中的 `model_instructions_file` 加载这个本地合并后的文件。每个 CLI 还会创建 `helloagents` 包根目录符号链接。Claude Code 和 Gemini 仍使用 hooks,因为宿主可以较安静地承载这类注入;Codex 默认**不启用** HelloAGENTS hooks:最新 pre 源码里 hook 生命周期会在 TUI 中可见显示,且 `suppressOutput` 不能作为真正的静默注入通道,所以 Codex 改为依赖规则文件 + 静态运行时上下文。全局模式下,Claude Code 通过 `.claude-plugin/plugin.json` 中声明的 hooks 工作,Gemini 通过 `contextFileName=bootstrap.md` 和扩展 hooks 工作;Codex 仍使用原生本地插件安装链路(marketplace + 本地插件目录 + cache + `config.toml` 插件启用段),但不启用插件 hooks。
401
+ 标准模式会把规则注入到 `~/.claude/CLAUDE.md`、`~/.gemini/GEMINI.md`、`~/.codex/AGENTS.md`;其中 Codex 再通过 `~/.codex/config.toml` 中的 `developer_instructions` 加载这个本地合并后的文件。每个 CLI 还会创建 `helloagents` 包根目录符号链接。Claude Code 和 Gemini 仍使用 hooks,因为宿主可以较安静地承载这类注入;Codex 默认**不启用** HelloAGENTS hooks:最新 pre 源码里 hook 生命周期会在 TUI 中可见显示,且 `suppressOutput` 不能作为真正的静默注入通道,所以 Codex 改为依赖注入后的规则文件,以及本地符号链接 / 原生本地插件目录结构。全局模式下,Claude Code 通过 `.claude-plugin/plugin.json` 中声明的 hooks 工作,Gemini 通过 `contextFileName=bootstrap.md` 和扩展 hooks 工作;Codex 仍使用原生本地插件安装链路(marketplace + 本地插件目录 + cache + `config.toml` 插件启用段),但不启用插件 hooks。
401
402
 
402
403
  整套切换可用:`helloagents --global` 或 `helloagents --standby`
403
404
 
@@ -424,9 +425,9 @@ HelloAGENTS 支持两种安装模式,采用不同的安装方式:
424
425
 
425
426
  ### 知识库(`.helloagents/`)
426
427
 
427
- `~init` 创建项目本地知识库。`STATE.md` 是项目级恢复快照,不是所有交互的统一记忆文件。
428
+ `~wiki` 只创建或同步项目本地知识库。`~init` 是更完整的项目初始化:它还会写入项目级载体文件(`AGENTS.md`、`CLAUDE.md`、`.gemini/GEMINI.md`)、刷新项目 `skills/helloagents` 链接,并补齐相关忽略项。在标准模式下,真正让当前项目进入完整项目流程的是 `.helloagents/` 的存在,项目级载体文件只是 `~init` 的附加能力。
428
429
 
429
- 它会在 `~init`、`~design`、`~auto`、`~prd`、`~loop` 这类项目级连续流程中创建并持续更新;在验证/审查类任务中仅在文件已存在时更新;对 `~help` 这类一次性只读交互则不会创建。
430
+ `STATE.md` 是项目级恢复快照,不是所有交互的统一记忆文件。它会在 `~wiki`、`~init`、`~design`、`~auto`、`~prd`、`~loop` 这类项目级连续流程中创建并持续更新;在验证/审查类任务中仅在文件已存在时更新;对 `~help` 这类一次性只读交互则不会创建。
430
431
 
431
432
  | 文件 | 用途 |
432
433
  |------|------|
@@ -483,7 +484,7 @@ npm test
483
484
 
484
485
  **A:** 全部重写了:
485
486
  - Python 包 → 纯 Node.js/Markdown 架构
486
- - 15 个命令 → 11 个命令 + 14 个自动激活质量技能
487
+ - 15 个命令 → 12 个命令 + 14 个自动激活质量技能
487
488
  - 6 个 CLI 目标 → 3 个(Claude Code + Codex CLI + Gemini CLI)
488
489
  - 新增:检查清单门控、Guard 系统、~prd、~loop、~verify、设计系统生成
489
490
  - 详见[版本历史](#-版本历史)。
@@ -520,13 +521,13 @@ npm test
520
521
  <details>
521
522
  <summary><strong>Q:标准模式和全局模式有什么区别?</strong></summary>
522
523
 
523
- **A:** 标准模式(默认)把精简规则部署到你明确指定的目标 CLI,通常用 `helloagents install <target> --standby` 或 `helloagents install --all --standby`。项目需要 `~init` 才能激活完整功能。全局模式使用各 CLI 原生的插件/扩展系统,所有项目自动启用完整规则;可用 `helloagents install <target> --global`、`helloagents install --all --global`,或通过 `helloagents --global` 做整套切换。
524
+ **A:** 标准模式(默认)把精简规则部署到你明确指定的目标 CLI,通常用 `helloagents install <target> --standby` 或 `helloagents install --all --standby`。项目只要建立了 `.helloagents/` 就会进入完整项目流程,通常通过 `~wiki`(仅知识库)或 `~init`(完整初始化)完成。全局模式使用各 CLI 原生的插件/扩展系统,所有项目自动启用完整规则;可用 `helloagents install <target> --global`、`helloagents install --all --global`,或通过 `helloagents --global` 做整套切换。
524
525
  </details>
525
526
 
526
527
  <details>
527
528
  <summary><strong>Q:项目知识存在哪里?</strong></summary>
528
529
 
529
- **A:** 项目本地的 `.helloagents/` 目录。由 `~init` 创建,代码变更时自动同步(由 `kb_create_mode` 控制)。其中 `STATE.md` 只作为长流程任务的精简恢复快照,不承担所有交互的统一记忆。
530
+ **A:** 项目本地的 `.helloagents/` 目录。可以由 `~wiki`(仅知识库)或 `~init`(完整项目初始化)创建;之后会按 `kb_create_mode` 在代码变更场景中自动同步。其中 `STATE.md` 只作为长流程任务的精简恢复快照,不承担所有交互的统一记忆。
530
531
  </details>
531
532
 
532
533
  <details>
@@ -643,7 +644,23 @@ npm test
643
644
 
644
645
  ## 📈 版本历史
645
646
 
646
- ### v3.0.1(当前版本)
647
+ ### v3.0.3(当前版本)
648
+
649
+ **流程与知识库激活:**
650
+ - ✨ 新增 `~wiki`,用于只创建或同步 `.helloagents/`,不写项目级载体文件
651
+ - 🔧 明确标准模式下的激活边界:`.helloagents/` 才是项目进入完整流程的实际信号;项目级载体文件仍属于 `~init` 的职责
652
+ - 🔧 统一修正 bootstrap、帮助文本和 README 中 `kb_create_mode` 的表述,使其只描述已激活项目或全局模式下的同步时机
653
+ - 🧪 新增 `~wiki` 路由覆盖,并持续验证标准模式下基于 `.helloagents/` 的激活行为
654
+
655
+ ### v3.0.2
656
+
657
+ **修复与验证:**
658
+ - 🔧 移除误回流到 Codex 标准/全局安装产物 `AGENTS.md` 中的静态运行时上下文前缀
659
+ - 🔧 复查 Claude / Gemini 标准模式与全局模式静态载体,确认本来就不存在同类已废弃运行时规则块
660
+ - 🔧 同步修正文档中关于 Codex `developer_instructions` 加载路径和无 hooks 运行方式的表述
661
+ - 🧪 新增回归断言,确保 Codex 标准/全局载体中不再出现被移除的运行时上下文前缀
662
+
663
+ ### v3.0.1
647
664
 
648
665
  **修复与验证:**
649
666
  - 🔧 收敛并加强 `STATE.md` 恢复规则:关键决策变更即更新,长流程一旦失真立即重写,宿主明确进入压缩/恢复前置阶段前必须先确认已同步
package/bootstrap-lite.md CHANGED
@@ -142,7 +142,7 @@ templates/ 查找路径(按优先级,找到即停):
142
142
  - STATE.md — ≤50 行,项目级恢复快照。读完它就能接上工作,不需要再读其他文件;它不是所有交互的统一记忆载体
143
143
  内容:正在做什么、关键上下文(决策/变更/假设)、下一步(具体可执行动作含文件路径)、阻塞项
144
144
  适用边界:
145
- - 强制创建并持续更新:`~init`、`~design`、`~auto`、`~prd`、`~loop`
145
+ - 强制创建并持续更新:`~wiki`、`~init`、`~design`、`~auto`、`~prd`、`~loop`
146
146
  - 强制更新,不要求首次创建:`~clean`,主代理汇总子代理结果后
147
147
  - 已有则更新:`~review`、`~verify`、`~test`、`~commit`
148
148
  - 不创建:`~help`、未激活项目中的普通问答或一次性只读任务、子代理自身执行过程、压缩/恢复钩子
@@ -159,7 +159,7 @@ templates/ 查找路径(按优先级,找到即停):
159
159
  - archive/YYYY-MM/ — 已归档的方案包(整个 plans/{feature}/ 目录移入)
160
160
  - archive/_index.md — 归档索引
161
161
 
162
- ### 知识沉淀(受 kb_create_mode 控制,0=关闭/1=编码自动/2=始终)
162
+ ### 知识沉淀(受 kb_create_mode 控制,0=关闭/1=已激活项目中的编码自动/2=已激活项目中始终)
163
163
  - context.md — 项目架构、技术栈、目录结构、模块索引
164
164
  - guidelines.md — 编码约定(仅含非显而易见的约定)
165
165
  - CHANGELOG.md — 变更历史
package/bootstrap.md CHANGED
@@ -164,6 +164,7 @@ output_format 为 false 时,所有回复保持自然输出,不适用以下
164
164
  ### 1. ORIENT — 感知环境
165
165
  根据任务需要,按需读取项目上下文(知识库文件和项目文件)。
166
166
  若当前项目已存在由 `~init` 生成的 AGENTS.md / CLAUDE.md / .gemini/GEMINI.md,这些载体已由宿主自动加载,无需再次读取。
167
+ 当前项目只要已建立 `.helloagents/`(例如执行过 `~wiki`、`~init`,或已进入项目级连续流程),就按项目级完整流程执行,不要求项目根载体一定存在。
167
168
  简单任务:无额外操作。
168
169
  复杂任务:主动读取相关知识库文件和项目文件,理解现有架构。
169
170
 
@@ -206,7 +207,7 @@ hello-* 技能查找路径(按优先级,找到即停):
206
207
  所有任务:
207
208
  - `STATE.md` 维护:按上文“流程状态”中的适用边界执行。属于“强制创建并持续更新”范围时,重写 `.helloagents/STATE.md`("正在做什么"更新为已完成,清空关键上下文/下一步/阻塞项);属于“已有则更新”范围时,仅在文件已存在时重写;属于“不创建”范围时不生成此文件
208
209
  - 有方案包且任务已完成 → 将整个 plans/{feature}/ 目录归档到 .helloagents/archive/YYYY-MM/,并更新 archive/_index.md。清理临时文件(loop-results.tsv、.ralph-breaker.json)
209
- - 按 kb_create_mode 同步知识库(0=关闭/1=编码自动/2=始终):
210
+ - 按 kb_create_mode 同步知识库(0=关闭/1=已激活项目或全局模式中的编码自动/2=已激活项目或全局模式中始终):
210
211
  - .helloagents/ 不存在则按 templates/ 创建知识库文件(context.md、guidelines.md、verify.yaml、CHANGELOG.md、modules/)
211
212
  - 已存在但不完整(缺少上述核心文件)→ 按 templates/ 补全缺失文件,不覆盖已有文件
212
213
  - 已存在且完整则按模板格式更新 CHANGELOG.md、相关 modules/*.md、增量经验 delta 追加
@@ -239,7 +240,7 @@ templates/ 查找路径(按优先级,找到即停):
239
240
  - STATE.md — ≤50 行,项目级恢复快照。读完它就能接上工作,不需要再读其他文件;它不是所有交互的统一记忆载体
240
241
  内容:正在做什么、关键上下文(决策/变更/假设)、下一步(具体可执行动作含文件路径)、阻塞项
241
242
  适用边界:
242
- - 强制创建并持续更新:`~init`、`~design`、`~auto`、`~prd`、`~loop`,以及进入统一执行流程的项目级连续任务
243
+ - 强制创建并持续更新:`~wiki`、`~init`、`~design`、`~auto`、`~prd`、`~loop`,以及进入统一执行流程的项目级连续任务
243
244
  - 强制更新,不要求首次创建:`~clean`,主代理汇总子代理结果后
244
245
  - 已有则更新:`~review`、`~verify`、`~test`、`~commit`
245
246
  - 不创建:`~help`、一次性只读任务、子代理自身执行过程、压缩/恢复钩子
@@ -256,7 +257,7 @@ templates/ 查找路径(按优先级,找到即停):
256
257
  - archive/YYYY-MM/ — 已归档的方案包(整个 plans/{feature}/ 目录移入)
257
258
  - archive/_index.md — 归档索引
258
259
 
259
- ### 知识沉淀(受 kb_create_mode 控制,0=关闭/1=编码自动/2=始终)
260
+ ### 知识沉淀(受 kb_create_mode 控制,0=关闭/1=已激活项目或全局模式中的编码自动/2=已激活项目或全局模式中始终)
260
261
  - context.md — 项目架构、技术栈、目录结构、模块索引
261
262
  - guidelines.md — 编码约定(仅含非显而易见的约定)
262
263
  - CHANGELOG.md — 变更历史
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "helloagents",
3
- "version": "3.0.1-beta.1",
3
+ "version": "3.0.3-beta.1",
4
4
  "description": "Quality-driven orchestration kernel for AI CLIs",
5
5
  "contextFileName": "bootstrap.md",
6
6
  "author": "HelloWind",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "helloagents",
3
- "version": "3.0.1-beta.1",
3
+ "version": "3.0.3-beta.1",
4
4
  "type": "module",
5
5
  "description": "HelloAGENTS — The orchestration kernel that makes any AI CLI smarter. Adds intelligent routing, quality verification (Ralph Loop), safety guards, and notifications.",
6
6
  "author": "HelloWind",
@@ -246,28 +246,15 @@ function normalizePath(path) {
246
246
  return path.replace(/\\/g, '/');
247
247
  }
248
248
 
249
- function buildCodexRuntimeContext(runtimeRoot, mode) {
250
- const root = normalizePath(runtimeRoot);
251
- return [
252
- '## Codex 运行时上下文',
253
- `- 当前 HelloAGENTS 包根目录: ${root}`,
254
- `- 当前 HelloAGENTS 读取根目录: ${root}`,
255
- `- 当前命令技能目录: ${root}/skills/commands`,
256
- `- 当前模板目录: ${root}/templates`,
257
- `- 当前安装模式: ${mode}`,
258
- '- Codex 当前不启用 HelloAGENTS hooks:最新 Codex pre 源码下 hook 生命周期会在 TUI 中可见显示,且 suppressOutput 不会静默 SessionStart / UserPromptSubmit / Stop 等注入。请优先依赖本载体与上述固定目录,不要再假设存在静默 hook 注入。',
259
- ].join('\n');
249
+ function buildCodexRuntimeCarrier(bootstrapContent) {
250
+ const normalized = String(bootstrapContent || '').trim();
251
+ return normalized ? `${normalized}\n` : '';
260
252
  }
261
253
 
262
- function buildCodexRuntimeCarrier(bootstrapContent, runtimeRoot, mode) {
263
- const context = buildCodexRuntimeContext(runtimeRoot, mode);
264
- return bootstrapContent ? `${context}\n\n${bootstrapContent.trim()}\n` : `${context}\n`;
265
- }
266
-
267
- function writeCodexRuntimeCarrier(filePath, bootstrapPath, runtimeRoot, mode) {
254
+ function writeCodexRuntimeCarrier(filePath, bootstrapPath) {
268
255
  const bootstrapContent = safeRead(bootstrapPath);
269
256
  if (!bootstrapContent) return false;
270
- safeWrite(filePath, buildCodexRuntimeCarrier(bootstrapContent, runtimeRoot, mode));
257
+ safeWrite(filePath, buildCodexRuntimeCarrier(bootstrapContent));
271
258
  return true;
272
259
  }
273
260
 
@@ -281,7 +268,7 @@ export function installCodexStandby(home, pkgRoot) {
281
268
  if (bootstrapContent) {
282
269
  injectMarkedContent(
283
270
  codexAgentsPath,
284
- buildCodexRuntimeCarrier(bootstrapContent, join(codexDir, 'helloagents'), 'standby').trimEnd(),
271
+ buildCodexRuntimeCarrier(bootstrapContent).trimEnd(),
285
272
  );
286
273
  }
287
274
 
@@ -374,14 +361,10 @@ export function installCodexGlobal(home, pkgRoot) {
374
361
  writeCodexRuntimeCarrier(
375
362
  join(pluginRoot, CODEX_RUNTIME_CARRIER),
376
363
  join(pluginRoot, 'bootstrap.md'),
377
- pluginRoot,
378
- 'global',
379
364
  );
380
365
  writeCodexRuntimeCarrier(
381
366
  join(installedPluginRoot, CODEX_RUNTIME_CARRIER),
382
367
  join(installedPluginRoot, 'bootstrap.md'),
383
- installedPluginRoot,
384
- 'global-cache',
385
368
  );
386
369
 
387
370
  ensureDir(join(home, '.agents', 'plugins'));
@@ -41,16 +41,16 @@ export function createInstallMessagePrinter({ home, pkgVersion, msg }) {
41
41
  ));
42
42
  } else {
43
43
  if (isInstall) console.log(msg(
44
- `\n ✅ HelloAGENTS 已安装(standby 模式)!\n\n Claude Code: 已自动配置(~/.claude/CLAUDE.md + hooks)\n Gemini CLI: 已自动配置(~/.gemini/GEMINI.md)\n Codex: ${codexStandbyStatus()}\n\n standby 模式下,hello-* 技能不会自动触发。\n 在项目中使用 ~init 激活完整功能,或使用 ~command 按需调用。\n\n 切换模式:\n helloagents --global 全局模式(Claude/Gemini 装插件;Codex 自动装原生本地插件)`,
45
- `\n ✅ HelloAGENTS installed (standby mode)!\n\n Claude Code: Auto-configured (~/.claude/CLAUDE.md + hooks)\n Gemini CLI: Auto-configured (~/.gemini/GEMINI.md)\n Codex: ${codexStandbyStatus()}\n\n In standby mode, hello-* skills won't auto-trigger.\n Use ~init in a project to activate full features, or use ~command on demand.\n\n Switch modes:\n helloagents --global Global mode (manual plugins for Claude/Gemini; native local plugin auto-install for Codex)`,
44
+ `\n ✅ HelloAGENTS 已安装(standby 模式)!\n\n Claude Code: 已自动配置(~/.claude/CLAUDE.md + hooks)\n Gemini CLI: 已自动配置(~/.gemini/GEMINI.md)\n Codex: ${codexStandbyStatus()}\n\n standby 模式下,hello-* 技能不会自动触发。\n 在项目中使用 ~wiki 仅创建/同步知识库,或用 ~init 完整初始化项目;也可用 ~command 按需调用。\n\n 切换模式:\n helloagents --global 全局模式(Claude/Gemini 装插件;Codex 自动装原生本地插件)`,
45
+ `\n ✅ HelloAGENTS installed (standby mode)!\n\n Claude Code: Auto-configured (~/.claude/CLAUDE.md + hooks)\n Gemini CLI: Auto-configured (~/.gemini/GEMINI.md)\n Codex: ${codexStandbyStatus()}\n\n In standby mode, hello-* skills won't auto-trigger.\n Use ~wiki to create or sync the KB only, or ~init for the full project bootstrap; ~command stays available on demand.\n\n Switch modes:\n helloagents --global Global mode (manual plugins for Claude/Gemini; native local plugin auto-install for Codex)`,
46
46
  ));
47
47
  else console.log(msg(
48
48
  isRefresh
49
49
  ? ` standby 模式已刷新,CLI 注入与链接已同步最新文件。\n ${REMOVE_HINT}`
50
- : ` 项目需通过 ~init 激活完整功能,未激活项目仅注入通用规则。\n ${REMOVE_HINT}`,
50
+ : ` 项目可通过 ~wiki 创建/同步知识库,或通过 ~init 完整初始化;未激活项目仅注入通用规则。\n ${REMOVE_HINT}`,
51
51
  isRefresh
52
52
  ? ` Standby mode refreshed; injected files and links were synchronized.\n ${REMOVE_HINT}`
53
- : ` Projects need ~init to activate full features. Unactivated projects get lite rules only.\n ${REMOVE_HINT}`,
53
+ : ` Projects can use ~wiki for KB-only activation or ~init for the full bootstrap. Unactivated projects get lite rules only.\n ${REMOVE_HINT}`,
54
54
  ));
55
55
  }
56
56
  if (isInstall || isRefresh) console.log();
@@ -96,7 +96,7 @@ function cmdRoute() {
96
96
  if (cmdMatch) {
97
97
  const skillName = cmdMatch[1];
98
98
  const extraRules = skillName === 'help'
99
- ? ' 这是 HelloAGENTS 的帮助命令,不是宿主 CLI 的内置帮助。适用条件:仅显示 HelloAGENTS 的帮助和当前设置;优先使用当前上下文中已注入的“当前用户设置”,只有上下文不存在该信息时才尝试读取 ~/.helloagents/helloagents.json;自动激活技能说明仅在全局模式或当前项目已通过 ~init 激活后生效。排除条件:不要调用宿主 CLI 的帮助工具(如 cli_help 或 /help),不要使用子代理,不要读取项目文件;若受工作区限制无法读取配置,必须明确说明并按已知默认值或已注入设置展示;纯标准模式未激活项目不会自动触发。'
99
+ ? ' 这是 HelloAGENTS 的帮助命令,不是宿主 CLI 的内置帮助。适用条件:仅显示 HelloAGENTS 的帮助和当前设置;优先使用当前上下文中已注入的“当前用户设置”,只有上下文不存在该信息时才尝试读取 ~/.helloagents/helloagents.json;自动激活技能说明仅在全局模式,或当前项目已存在 .helloagents/(例如执行过 ~wiki 或 ~init)时生效。排除条件:不要调用宿主 CLI 的帮助工具(如 cli_help 或 /help),不要使用子代理,不要读取项目文件;若受工作区限制无法读取配置,必须明确说明并按已知默认值或已注入设置展示;纯标准模式未激活项目不会自动触发。'
100
100
  : '';
101
101
  suppressedOutput(EVENT_NAME.UserPromptSubmit, buildRouteInstruction({
102
102
  skillName,
@@ -15,7 +15,8 @@ Trigger: ~help
15
15
  | ~design | 深度设计:交互式需求挖掘 + 方案设计 + 方案包 |
16
16
  | ~prd | 完整 PRD:头脑风暴式逐维度挖掘,生成现代产品需求文档 |
17
17
  | ~loop | 自主迭代优化:设定目标和指标,循环修改-验证-保留/回滚 |
18
- | ~init | 初始化项目知识库和配置 |
18
+ | ~wiki | 仅创建/同步项目知识库(`.helloagents/`) |
19
+ | ~init | 完整初始化项目:知识库 + 项目级载体配置 |
19
20
  | ~test | 为指定模块或最近变更编写完整测试 |
20
21
  | ~verify | 运行所有验证命令并报告结果 |
21
22
  | ~review | 代码审查 |
@@ -24,7 +25,7 @@ Trigger: ~help
24
25
  | ~help | 显示此帮助 |
25
26
 
26
27
  ### 自动激活技能
27
- 适用条件:以下技能仅在全局模式,或当前项目已通过 `~init` 激活后自动激活:
28
+ 适用条件:以下技能仅在全局模式,或当前项目已存在 `.helloagents/` 后自动激活(例如执行过 `~wiki`、`~init`,或已处于项目级连续流程):
28
29
  排除条件:纯标准模式未激活项目不会自动触发。
29
30
 
30
31
  编码时:hello-ui, hello-api, hello-data, hello-security, hello-errors, hello-perf, hello-arch, hello-test
@@ -41,5 +42,5 @@ Trigger: ~help
41
42
  | notify_level | 0 | 0=关闭/1=桌面通知/2=声音/3=两者 | Claude Code + Gemini CLI + Codex CLI |
42
43
  | ralph_loop_enabled | true | 自动验证循环(任务完成时触发 lint/test/build) | Claude Code + Gemini CLI + Codex CLI |
43
44
  | guard_enabled | true | 阻断危险命令与写入后的安全扫描 | Claude Code + Gemini CLI + Codex CLI |
44
- | kb_create_mode | 1 | 0=关闭/1=编码自动/2=始终 | Claude Code + Gemini CLI + Codex CLI |
45
+ | kb_create_mode | 1 | 0=关闭/1=已激活项目或全局模式中的编码自动/2=已激活项目或全局模式中始终 | Claude Code + Gemini CLI + Codex CLI |
45
46
  | commit_attribution | "" | 空=不添加/填写内容则添加到 commit message | Claude Code + Gemini CLI + Codex CLI |
@@ -0,0 +1,57 @@
1
+ ---
2
+ name: ~wiki
3
+ description: 初始化或同步项目知识库(仅 `.helloagents/`,不写项目根载体)
4
+ policy:
5
+ allow_implicit_invocation: false
6
+ ---
7
+ Trigger: ~wiki
8
+
9
+ `~wiki` 是用户显式命令,用于只创建、补全或同步项目本地知识库,不创建项目根 `AGENTS.md` / `CLAUDE.md` / `.gemini/GEMINI.md`,也不创建项目级 `skills/helloagents` symlink。适用于标准模式下希望保留项目目录为“非载体项目”,但仍希望当前项目拥有 `.helloagents/`、`STATE.md` 和知识沉淀文件的场景。
10
+
11
+ `~wiki` 是显式知识库命令,不受 `kb_create_mode` 限制。
12
+
13
+ ## 流程
14
+
15
+ ### 阶段 1:基础准备(必做)
16
+
17
+ 1. 创建 `.helloagents/` 目录 + `STATE.md`(按 templates/STATE.md 格式)
18
+ 2. 追加 `.gitignore`(如果对应行不存在):
19
+ ```
20
+ .helloagents/
21
+ ```
22
+ 3. 明确不执行以下操作:
23
+ - 不创建或更新项目根 `AGENTS.md`
24
+ - 不创建或更新项目根 `CLAUDE.md`
25
+ - 不创建或更新 `.gemini/GEMINI.md`
26
+ - 不创建项目级 `skills/helloagents` symlink
27
+
28
+ ### 阶段 2:知识库创建或补全(条件性)
29
+
30
+ 检查项目是否有实际代码文件(非空项目):
31
+ - 有代码文件 → 执行完整知识库创建/补全(下方流程)
32
+ - 空项目 → 保留 `.helloagents/` 和 `STATE.md`,告知用户“项目为空,其余知识文件将在后续开发或首次编码任务中补全”
33
+
34
+ 知识库创建/补全流程:
35
+ 1. 按 templates/ 目录的模板格式,分析项目代码库后创建或补全:
36
+ - context.md — 按 templates/context.md 格式,填入项目概述、技术栈、架构、目录结构、模块链接
37
+ - guidelines.md — 按 templates/guidelines.md 格式,从现有代码推断编码约定
38
+ - verify.yaml — 验证命令(从 package.json/pyproject.toml 检测)
39
+ - CHANGELOG.md — 按 templates/CHANGELOG.md 格式创建或更新
40
+ - DESIGN.md — 如果项目包含 UI 代码,按 templates/DESIGN.md 格式提取设计系统
41
+ 2. 创建或补全 modules/ 目录,按 templates/modules/module.md 格式为主要模块生成文档
42
+ 3. 已存在的文件按模板格式增量更新,不自由改写结构;无新增信息时保持原样
43
+
44
+ ## verify.yaml 格式
45
+ ```yaml
46
+ commands:
47
+ - npm run lint
48
+ - npm run test
49
+ ```
50
+
51
+ ## 幂等性
52
+ 重复执行 `~wiki` 是安全的:
53
+ - `.helloagents/` 缺失时创建,已存在时复用
54
+ - `STATE.md` 按当前任务状态重写,不追加历史
55
+ - 知识库文件缺失时补全,已存在时按模板增量更新
56
+ - `.gitignore` 只追加缺失行
57
+ - 永不写入项目根载体文件,也不创建项目级 `skills/helloagents` symlink