Skip to content

Commit 454449f

Browse files
committed
feat(skills): 新增 Aisee 入口定位 skill
新增 aisee:orient 用于判断项目阶段并路由到合适的 Aisee workflow,同时同步 skill taxonomy、workflow、兼容性说明和测试契约。
1 parent b51ac49 commit 454449f

12 files changed

Lines changed: 270 additions & 8 deletions

File tree

README.en.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,10 +101,11 @@ Compound Engineering = optional implementation / review / test consumer
101101

102102
## Skill Taxonomy
103103

104-
`plugins/aisee-plugin/.codex-plugin/plugin.json` still exposes all public skills through `skills: "./skills/"`, but the default happy path contains only **9 core iteration skills**, plus 1 project setup / governance skill. The full contract lives in [Skill Taxonomy](plugins/aisee-plugin/references/skill-taxonomy.md).
104+
`plugins/aisee-plugin/.codex-plugin/plugin.json` still exposes all public skills through `skills: "./skills/"`, but the default happy path contains only **9 core iteration skills**, plus project orientation and setup / governance skills. The full contract lives in [Skill Taxonomy](plugins/aisee-plugin/references/skill-taxonomy.md).
105105

106106
Project setup / governance:
107107

108+
- `aisee:orient`
108109
- `aisee:init`
109110

110111
Core iteration workflow:
@@ -311,6 +312,7 @@ For existing projects, use `aisee:spec-migrate` to derive OpenSpec baseline spec
311312
312313
| Skill | Purpose |
313314
| --- | --- |
315+
| `aisee:orient` | Determine the current project stage and user intent, then route to the right Aisee skill or workflow. |
314316
| `aisee:init` | Initialize or audit `AGENTS.md`, `openspec/project.md`, Aisee docs, memory, and Codex hooks. |
315317
| `aisee:srs` | Clarify software requirements and produce planning-level SRS documents. |
316318
| `aisee:ui-content` | Produce UI content specs for pages, elements, states, flows, permissions, and platform differences. |

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,10 +101,11 @@ Compound Engineering = 可选的执行 / 审查 / 测试消费方
101101

102102
## Skill 分层
103103

104-
`plugins/aisee-plugin/.codex-plugin/plugin.json` 继续通过 `skills: "./skills/"` 暴露全部公开 skill,但默认 happy path 只包含 **9 个核心迭代 skill**另有 1 个项目接入 / 治理 skill。完整分类合同见 [Skill Taxonomy](plugins/aisee-plugin/references/skill-taxonomy.md)
104+
`plugins/aisee-plugin/.codex-plugin/plugin.json` 继续通过 `skills: "./skills/"` 暴露全部公开 skill,但默认 happy path 只包含 **9 个核心迭代 skill**另有项目入口定位与接入 / 治理 skill。完整分类合同见 [Skill Taxonomy](plugins/aisee-plugin/references/skill-taxonomy.md)
105105

106106
项目接入 / 治理:
107107

108+
- `aisee:orient`
108109
- `aisee:init`
109110

110111
核心迭代主流程:
@@ -311,6 +312,7 @@ quick-fix / quick-research / 其它轻量 schema
311312
312313
| Skill | 作用 |
313314
| --- | --- |
315+
| `aisee:orient` | 判断当前项目阶段和用户意图,路由到合适的 Aisee skill / workflow。 |
314316
| `aisee:init` | 初始化或审计 `AGENTS.md`、`openspec/project.md`、Aisee docs、memory 和 Codex hooks。 |
315317
| `aisee:srs` | 澄清软件需求并生成规划级 SRS。 |
316318
| `aisee:ui-content` | 生成页面、元素、状态、流程、权限和平台差异等 UI 内容规格。 |

docs/compatibility-policy.en.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ Rules:
8888
The following are public contracts:
8989

9090
- `plugins/aisee-plugin/.codex-plugin/plugin.json`, `plugins/aisee-plugin/skills/`, `plugins/aisee-plugin/references/`, and schema pack directories in the GitHub repository remain loadable by the Codex marketplace plugin;
91-
- the core / optional / knowledge / hardware layering defined in `plugins/aisee-plugin/references/skill-taxonomy.md`, including the core set of 10 workflow skills;
91+
- the setup / core / optional / knowledge / hardware layering defined in `plugins/aisee-plugin/references/skill-taxonomy.md`, including the core set of 9 workflow skills;
9292
- `aisee plugin inspect --json` returns stable status and setup hints in PyPI / pipx installs;
9393
- the PyPI / pipx channel only promises CLI capabilities; skills, references, schema packs, team knowledge templates, and plugin metadata are distributed through the marketplace plugin or external repositories.
9494

docs/compatibility-policy.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@
8888
以下属于公开契约:
8989

9090
- GitHub 仓库中的 `plugins/aisee-plugin/.codex-plugin/plugin.json``plugins/aisee-plugin/skills/``plugins/aisee-plugin/references/` 和 schema pack 目录保持可被 Codex marketplace plugin 加载;
91-
- `plugins/aisee-plugin/references/skill-taxonomy.md` 中 core / optional / knowledge / hardware 分层,以及 core 10 skill 集合;
91+
- `plugins/aisee-plugin/references/skill-taxonomy.md`setup / core / optional / knowledge / hardware 分层,以及 core 9 skill 集合;
9292
- `aisee plugin inspect --json` 在 PyPI / pipx 安装中返回稳定状态和 setup hint;
9393
- PyPI / pipx 通道只承诺 CLI 能力;skills、references、schema packs、team knowledge templates 和 plugin metadata 通过 marketplace plugin 或外部仓库分发。
9494

docs/release.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,10 @@ Aisee 使用 SemVer:
3434

3535
公开契约分层和破坏性变更判断见 [Compatibility Policy](compatibility-policy.md)
3636

37+
## Next 合同提示
38+
39+
新增 `aisee:orient` 公开 skill,作为进入任意项目后的 Aisee workflow 入口定位器。它只读取项目状态并路由到后续 skill / CLI / workflow,不写 OpenSpec baseline、change artifacts、业务代码或 hooks;默认新功能 happy path 仍保持 9 个核心迭代 skill。
40+
3741
## 0.9.0 合同提示
3842

3943
`0.9.0` 新增公开 project memory CLI 面:

docs/workflow.en.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ This document describes the recommended software development workflow for Aisee
1717

1818
Use this for new projects or existing projects that are adopting OpenSpec.
1919

20+
If you have just entered a project and do not know which Aisee workflow should start, use `aisee:orient` first to identify project state, user intent, and the next route.
21+
2022
```bash
2123
aisee doctor --json
2224
aisee bootstrap --plan --json
@@ -37,7 +39,7 @@ For existing projects, avoid writing new changes immediately. Prefer `aisee:spec
3739

3840
## Default Path vs On-Demand Extensions
3941

40-
`aisee:init` belongs to project setup and governance, not to the default new-feature iteration happy path. The default new-feature happy path depends only on the core iteration workflow: `aisee:srs`, `aisee:ui-content`, `aisee:architecture`, `aisee:change-plan`, `aisee:change-author`, `aisee-schema-pack`, and `aisee:implementation-bridge`.
42+
`aisee:orient` and `aisee:init` belong to project orientation, setup, and governance, not to the default new-feature iteration happy path. The default new-feature happy path depends only on the core iteration workflow: `aisee:srs`, `aisee:ui-content`, `aisee:architecture`, `aisee:change-plan`, `aisee:change-author`, `aisee-schema-pack`, and `aisee:implementation-bridge`.
4143

4244
The following capabilities are conditional, not mandatory on every iteration:
4345

@@ -265,6 +267,7 @@ Boundaries:
265267
| Small fix | `quick-fix` schema -> change-author -> implementation-bridge -> implementation / review / test -> archive |
266268
| Technical research | `quick-research` schema -> findings/recommendation -> validate -> archive-guard |
267269
| Documentation site change | `aisee-docsite-driven` schema -> doc-change/tasks -> build/link evidence -> archive-guard |
270+
| Unsure where to start | `aisee:orient` -> recommended next skill / workflow |
268271
| Existing project adoption | `aisee:init` -> `aisee:spec-migrate` -> baseline specs -> new change |
269272

270273
## When To Stop

docs/workflow.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717

1818
适用于新项目或准备接入 OpenSpec 的已有项目。
1919

20+
如果刚进入项目且不确定从哪个 Aisee workflow 开始,先使用 `aisee:orient` 判断项目状态、用户意图和下一步路由。
21+
2022
```bash
2123
aisee doctor --json
2224
aisee bootstrap --plan --json
@@ -37,7 +39,7 @@ aisee doctor --json
3739

3840
## 默认主路径与按需扩展
3941

40-
`aisee:init` 属于项目接入 / 治理阶段能力,不是默认新功能迭代 happy path 的必经节点。默认新功能 happy path 只依赖核心迭代 workflow:`aisee:srs``aisee:ui-content``aisee:architecture``aisee:change-plan``aisee:change-author``aisee-schema-pack``aisee:implementation-bridge`
42+
`aisee:orient``aisee:init` 属于项目入口定位 / 接入 / 治理阶段能力,不是默认新功能迭代 happy path 的必经节点。默认新功能 happy path 只依赖核心迭代 workflow:`aisee:srs``aisee:ui-content``aisee:architecture``aisee:change-plan``aisee:change-author``aisee-schema-pack``aisee:implementation-bridge`
4143

4244
以下能力按条件触发,不是每次都要走:
4345

@@ -258,6 +260,7 @@ aisee:reflect
258260
| 小修复 | `quick-fix` schema -> change-author -> implementation-bridge -> implementation / review / test -> archive |
259261
| 技术调研 | `quick-research` schema -> findings/recommendation -> validate -> archive |
260262
| 文档站变更 | `aisee-docsite-driven` schema -> doc-change/tasks -> build/link evidence -> archive |
263+
| 不确定从哪开始 | `aisee:orient` -> 推荐下一步 skill / workflow |
261264
| 已有项目接入 | `aisee:init` -> `aisee:spec-migrate` -> baseline specs -> 新 change |
262265

263266
## 何时停止

plugins/aisee-plugin/references/skill-taxonomy.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,9 @@
44

55
## Project Setup / Adoption
66

7-
以下 skill 用于项目接入、初始化、配置审计和治理;它不是默认新功能迭代 happy path 的必经节点:
7+
以下 skill 用于项目入口定位、接入、初始化、配置审计和治理;它们不是默认新功能迭代 happy path 的必经节点:
88

9+
- `aisee:orient`
910
- `aisee:init`
1011

1112
## Core Workflow
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
---
2+
name: aisee:orient
3+
description: Aisee 默认入口定位 skill。用于进入任意项目后不确定该从哪个 Aisee skill、OpenSpec workflow 或 CLI 命令开始;根据项目状态、OpenSpec/Aisee 配置、baseline specs、active changes、规划文档和用户意图,输出下一步路由建议。触发词包括 aisee:orient、aisee orient、从哪开始、下一步用哪个 skill、判断项目状态、路由到 Aisee workflow。
4+
---
5+
6+
# aisee:orient
7+
8+
`aisee:orient` 是 Aisee 工作流入口定位器。它回答“我现在该用哪个 Aisee skill / workflow 继续?”,不生产具体业务产物。
9+
10+
## 职责
11+
12+
- 读取项目接入状态:OpenSpec、Aisee 配置、baseline specs、active changes、planning docs、memory/knowledge 入口。
13+
- 结合用户当前意图判断阶段:接入、迁移、需求澄清、架构/UI 补齐、change authoring、实现交接、验证、归档、记忆/知识维护。
14+
- 推荐首选下一步 skill、CLI 命令或 workflow,并说明证据和原因。
15+
- 标注阻塞项、风险、可选路径和需要用户确认的问题。
16+
- 在证据不足时输出定位报告,不猜测业务事实。
17+
18+
## 不负责
19+
20+
- 不写 SRS、UI Content、Architecture、Design Spec 或迁移文档。
21+
- 不写 `openspec/specs/` baseline,也不写 `openspec/changes/` artifacts。
22+
- 不实现代码、不执行 review/test、不 archive。
23+
- 不安装 schema pack、不维护 hooks、不替代 `aisee:init`
24+
- 不把 `aisee/docs/`、memory、knowledge 或 CLI JSON 输出当作 OpenSpec 事实源。
25+
26+
## 快速扫描
27+
28+
优先用轻量命令判断状态;不要全仓库裸扫描依赖、构建产物或缓存,也不要为了路由深读大量文档。`aisee:orient` 默认只看状态、目录、文件名和少量机器摘要。
29+
30+
```bash
31+
node -e "const fs=require('fs'); for (const [p,t] of [['openspec/config.yaml','file'],['openspec/specs','dir'],['openspec/changes','dir'],['AGENTS.md','file'],['openspec/project.md','file'],['aisee/docs','dir'],['aisee/memory/index.md','file'],['.codex/hooks.json','file']]) { try { const s=fs.statSync(p); console.log(p + ':' + ((t==='dir'?s.isDirectory():s.isFile())?'ok':'bad')); } catch { console.log(p + ':missing'); } }"
32+
node -e "const {execSync}=require('child_process'); for (const cmd of ['aisee doctor --json','aisee bootstrap --plan --json']) { try { console.log(cmd + ':ok'); execSync(cmd,{stdio:'ignore'}); } catch { console.log(cmd + ':unavailable-or-blocked'); } }"
33+
rg --files openspec aisee/docs 2>/dev/null | head -80
34+
```
35+
36+
如果 `aisee doctor --json` 可用,优先解析其 JSON;不可用时退回文件状态检查。若用户只问概念或路由,不需要运行破坏性或写入命令。
37+
38+
文档读取约束:
39+
40+
- 默认不打开 `docs/**``aisee/docs/**``openspec/specs/**``openspec/changes/**` 的正文。
41+
- 只有文件名无法判断路由,或用户明确要求解释某个 change/spec/doc 时,才读取最小必要文件。
42+
- 单次 orient 读取正文时优先选择入口文件:`AGENTS.md``openspec/project.md`、目标 active change 的 `tasks.md` / `source-map.md`,以及用户明确点名的文件。
43+
- 判断需要迁移、写需求、做架构或验证后,停止深读并转交 `aisee:spec-migrate``aisee:srs``aisee:architecture``aisee:verify` 等目标 skill。
44+
45+
## 路由规则
46+
47+
| 状态 / 意图 | 推荐下一步 |
48+
|---|---|
49+
| 缺少 `openspec/config.yaml`,且用户要接入 Aisee/OpenSpec | `aisee openspec ensure --json`,成功后 `aisee:init` |
50+
| OpenSpec 存在,但 `AGENTS.md``openspec/project.md`、Aisee 目录或 hooks 缺失/漂移 | `aisee:init` |
51+
| 已有项目需要建立当前行为基线,且 `openspec/specs/` 缺失或很薄 | `aisee:spec-migrate` |
52+
| 用户描述新产品/功能需求但范围未清 | `aisee:srs` |
53+
| 已有需求,涉及页面、交互、状态、权限或平台差异 | `aisee:ui-content` |
54+
| 需要确认技术栈、模块、接口边界、部署或复用能力 | `aisee:architecture` |
55+
| 已有需求/架构输入,需要拆成可交付 OpenSpec changes | `aisee:change-plan` |
56+
| 已有 change-plan 或明确 change 边界,但缺 OpenSpec artifacts | `/opsx:new --schema <schema>``aisee:change-author` |
57+
| 已有 active change 且 artifacts 基本完整,准备实现 | `aisee:implementation-bridge` |
58+
| 实现后需要检查 artifacts、tasks、source-map、evidence 或 validate | `aisee:verify` |
59+
| 准备执行 `openspec archive` | `aisee:archive-guard` |
60+
| 用户询问项目长期偏好、记住规则或检索项目记忆 | `aisee:memory` |
61+
| 用户询问团队知识、guardrails、跨项目经验或知识库同步 | `aisee:knowledge` |
62+
| 用户要复盘本次会话或沉淀候选经验 | `aisee:reflect` |
63+
| 用户要审查并推广 reusable knowledge candidates | `aisee:knowledge-curate` |
64+
| 用户要安装或审计 OpenSpec custom schemas | `aisee-schema-pack` |
65+
66+
若多个路径都合理,按“阻塞当前目标的最早缺口”排序。例如缺 OpenSpec 初始化时,不直接进入 `aisee:change-plan`;已有 active change 且用户要继续实现时,不重新走 SRS。
67+
68+
## 输出格式
69+
70+
```markdown
71+
# Aisee Orient 报告
72+
73+
## 当前判断
74+
- 项目状态:
75+
- OpenSpec 状态:
76+
- Aisee 配置状态:
77+
- Baseline specs:
78+
- Active changes:
79+
- 用户意图:
80+
81+
## 推荐下一步
82+
首选:
83+
原因:
84+
85+
## 可选路径
86+
- 如果目标是新需求:
87+
- 如果目标是迁移已有系统:
88+
- 如果目标是继续 active change:
89+
- 如果目标是验证或归档:
90+
91+
## 需要确认
92+
- ...
93+
94+
## 已检查
95+
- ...
96+
```
97+
98+
## Guardrails
99+
100+
- 只做定位和路由;需要写文件、安装 hooks、迁移 baseline 或生成 artifacts 时,转交对应 skill。
101+
- 不把 active change 当 baseline,不把 migration 草稿当正式 spec。
102+
- 不在用户未明确接入 OpenSpec 时生成 OpenSpec/Aisee 项目文件。
103+
- 不为路由目的过度扫描或深读文档;需要业务细节时交给后续目标 skill。
104+
- 不因找不到某个工具就停止定位;说明限制并使用文件状态 fallback。
105+
- 最终回复必须明确“下一步首选”以及理由,避免只列泛泛选项。
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
interface:
2+
display_name: "aisee:orient"
3+
short_description: "判断项目阶段并路由到合适的 Aisee workflow"
4+
default_prompt: "使用 $aisee:orient 检查当前项目状态,并告诉我下一步应该使用哪个 Aisee skill 或 workflow。"
5+
6+
policy:
7+
allow_implicit_invocation: true

0 commit comments

Comments
 (0)