ai-ops-cli 0.2.6 → 1.0.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.
Files changed (62) hide show
  1. package/README.ko.md +170 -0
  2. package/README.md +109 -163
  3. package/data/context-layer/AGENTS.md +29 -0
  4. package/data/context-layer/CLAUDE.md +14 -0
  5. package/data/context-layer/GEMINI.md +14 -0
  6. package/data/context-layer/docs/agent/checks/impact-checklist.md +16 -0
  7. package/data/context-layer/docs/agent/checks/review-checklist.md +17 -0
  8. package/data/context-layer/docs/agent/maps/codebase-map.md +16 -0
  9. package/data/context-layer/docs/agent/rules/doc-update-rules.md +22 -0
  10. package/data/context-layer/docs/agent/rules/routing-rules.md +22 -0
  11. package/data/context-layer/docs/agent/rules/stop-rules.md +20 -0
  12. package/data/context-layer/docs/agent/workflow.md +25 -0
  13. package/data/context-layer/docs/business/business-rules.md +16 -0
  14. package/data/context-layer/docs/docs-status.md +14 -0
  15. package/data/packs/pack-registry.json +8 -0
  16. package/data/packs/spec-lifecycle/docs/specs/README.ko.md +26 -0
  17. package/data/packs/spec-lifecycle/docs/specs/README.md +26 -0
  18. package/data/packs/spec-lifecycle/docs/specs/baseline/.gitkeep +1 -0
  19. package/data/packs/spec-lifecycle/docs/specs/initial-build/.gitkeep +1 -0
  20. package/data/skills/README.ko.md +182 -0
  21. package/data/skills/README.md +27 -2
  22. package/data/skills/skill-registry.json +64 -16
  23. package/data/skills/task-skills/doc-impact-reviewer/SKILL.md +101 -0
  24. package/data/skills/task-skills/doc-impact-reviewer/agents/openai.yaml +6 -0
  25. package/data/skills/task-skills/spec-baseline-sync/SKILL.md +134 -0
  26. package/data/skills/task-skills/spec-baseline-sync/agents/openai.yaml +6 -0
  27. package/data/skills/task-skills/spec-baseline-sync/references/template.md +14 -0
  28. package/data/skills/task-skills/spec-product-01-idea-to-brief/SKILL.md +78 -0
  29. package/data/skills/task-skills/spec-product-01-idea-to-brief/agents/openai.yaml +6 -0
  30. package/data/skills/task-skills/spec-product-01-idea-to-brief/references/template.md +36 -0
  31. package/data/skills/task-skills/spec-product-02-brief-to-technical-context/SKILL.md +91 -0
  32. package/data/skills/task-skills/spec-product-02-brief-to-technical-context/agents/openai.yaml +6 -0
  33. package/data/skills/task-skills/spec-product-02-brief-to-technical-context/references/template.md +58 -0
  34. package/data/skills/task-skills/spec-product-03-brief-to-product-spec/SKILL.md +85 -0
  35. package/data/skills/task-skills/spec-product-03-brief-to-product-spec/agents/openai.yaml +6 -0
  36. package/data/skills/task-skills/spec-product-03-brief-to-product-spec/references/template.md +41 -0
  37. package/data/skills/task-skills/spec-product-04-product-spec-to-ui-spec/SKILL.md +93 -0
  38. package/data/skills/task-skills/spec-product-04-product-spec-to-ui-spec/agents/openai.yaml +6 -0
  39. package/data/skills/task-skills/spec-product-04-product-spec-to-ui-spec/references/stitch-prompt-template.md +41 -0
  40. package/data/skills/task-skills/spec-product-04-product-spec-to-ui-spec/references/ui-spec-template.md +39 -0
  41. package/data/skills/task-skills/spec-product-05-spec-to-work-packets/SKILL.md +157 -0
  42. package/data/skills/task-skills/spec-product-05-spec-to-work-packets/agents/openai.yaml +6 -0
  43. package/data/skills/task-skills/spec-product-05-spec-to-work-packets/references/stitch-html-review.md +25 -0
  44. package/data/skills/task-skills/spec-product-05-spec-to-work-packets/references/work-packet-template.md +67 -0
  45. package/data/skills/task-skills/spec-shared-glossary-sync/SKILL.md +102 -0
  46. package/data/skills/task-skills/spec-shared-glossary-sync/agents/openai.yaml +6 -0
  47. package/data/skills/task-skills/spec-shared-glossary-sync/references/checklist.md +36 -0
  48. package/data/skills/task-skills/spec-shared-glossary-sync/references/template.md +58 -0
  49. package/data/subagents/README.ko.md +47 -0
  50. package/data/subagents/README.md +47 -0
  51. package/data/subagents/security-gate/PROMPT.md +18 -0
  52. package/data/subagents/security-gate/claude.frontmatter.yaml +8 -0
  53. package/data/subagents/security-gate/codex.frontmatter.toml +6 -0
  54. package/data/subagents/security-gate/gemini.frontmatter.yaml +6 -0
  55. package/data/subagents/security-reviewer/PROMPT.md +17 -0
  56. package/data/subagents/security-reviewer/claude.frontmatter.yaml +9 -0
  57. package/data/subagents/security-reviewer/codex.frontmatter.toml +6 -0
  58. package/data/subagents/security-reviewer/gemini.frontmatter.yaml +6 -0
  59. package/data/subagents/subagent-registry.json +14 -0
  60. package/dist/bin/index.js +2101 -1712
  61. package/dist/bin/index.js.map +1 -1
  62. package/package.json +2 -2
package/README.ko.md ADDED
@@ -0,0 +1,170 @@
1
+ # ai-ops-cli
2
+
3
+ `ai-ops-cli`는 프로젝트에 AI agent operating layer를 설치하고, 사용자 환경에 agent skills/subagents를 설치하는 CLI입니다.
4
+
5
+ 이 문서는 현재 구현된 breaking model을 설명합니다. old rules + skills scaffolder 모델은 deprecated 문맥으로만 남깁니다.
6
+
7
+ ## Current Breaking Model
8
+
9
+ ```mermaid
10
+ flowchart TD
11
+ init["ai-ops init"] --> layer["Project operating layer 설치"]
12
+ layer --> entry["AGENTS.md canonical entrypoint"]
13
+ layer --> adapters["GEMINI.md / CLAUDE.md adapters"]
14
+ layer --> docs["docs/agent/* / docs/business/*"]
15
+ layer --> state[".ai-ops/manifest.json / context-layer.json"]
16
+
17
+ skill["ai-ops skill ..."] --> globalSkills["Global skills only"]
18
+ subagent["ai-ops subagent ..."] --> globalSubagents["Global subagents only"]
19
+ pack["ai-ops pack ..."] --> docsSpecs["optional docs/specs/ pack"]
20
+ ```
21
+
22
+ 핵심 경계:
23
+
24
+ - project scope는 operating layer 문서만 관리합니다.
25
+ - global scope는 skills/subagents만 관리합니다.
26
+ - `AGENTS.md`가 canonical entrypoint입니다.
27
+ - `GEMINI.md`와 `CLAUDE.md`는 `AGENTS.md`를 기준으로 삼게 하는 adapter입니다.
28
+ - `docs/specs/`는 optional pack 위치입니다.
29
+ - global asset 명령은 `AI_OPS_HOME` 또는 `HOME`이 없으면 cwd fallback 없이 실패합니다.
30
+
31
+ ## 설치 대상
32
+
33
+ Project repo:
34
+
35
+ ```text
36
+ AGENTS.md
37
+ GEMINI.md
38
+ CLAUDE.md
39
+ docs/agent/workflow.md
40
+ docs/agent/rules/routing-rules.md
41
+ docs/agent/rules/doc-update-rules.md
42
+ docs/agent/rules/stop-rules.md
43
+ docs/agent/checks/impact-checklist.md
44
+ docs/agent/checks/review-checklist.md
45
+ docs/agent/maps/codebase-map.md
46
+ docs/business/business-rules.md
47
+ docs/docs-status.md
48
+ .ai-ops/manifest.json
49
+ .ai-ops/context-layer.json
50
+ ```
51
+
52
+ Global tool home:
53
+
54
+ ```text
55
+ skills/*
56
+ subagents/*
57
+ ```
58
+
59
+ ## 목표 CLI 표면
60
+
61
+ ```text
62
+ ai-ops [command]
63
+
64
+ Commands:
65
+ init Install or refresh the project agent operating layer
66
+ diff Show drift in the project operating layer
67
+ update Re-apply the project operating layer
68
+ audit Check frontmatter, docs-status, manifest, and context-layer consistency
69
+ uninstall Remove project-managed operating layer files
70
+ skill Manage global agent skills
71
+ subagent Manage global agent subagents
72
+ pack Manage optional project operating layer packs
73
+ ```
74
+
75
+ `--tool`은 유지합니다. Codex, Claude Code, Gemini CLI가 서로 다른 discovery 위치와 adapter 파일을 사용하기 때문입니다.
76
+
77
+ Skill lifecycle 명령:
78
+
79
+ ```bash
80
+ ai-ops skill list
81
+ ai-ops skill install skill-load-check --tool codex
82
+ ai-ops skill install doc-impact-reviewer --tool codex
83
+ ai-ops skill diff
84
+ ai-ops skill update
85
+ ai-ops skill uninstall skill-load-check
86
+ ```
87
+
88
+ `doc-impact-reviewer`는 변경 완료 또는 커밋 직전에 운영 문서 영향도를 확인하는 수동 task skill입니다. `$doc-impact-reviewer`로 호출하면 git status/diff를 보고 `required / recommended / not needed` 문서 후보와 미갱신 리스크를 제안합니다. 사용자 승인 전에는 문서를 수정하지 않고, 직접 staging/commit도 하지 않습니다.
89
+
90
+ Subagent lifecycle 명령:
91
+
92
+ ```bash
93
+ ai-ops subagent list
94
+ ai-ops subagent install security-gate --tool codex
95
+ ai-ops subagent diff
96
+ ai-ops subagent update
97
+ ai-ops subagent uninstall security-gate
98
+ ```
99
+
100
+ Subagent는 항상 global tool home에 설치됩니다. Codex는 `.codex/agents/<id>.toml`, Claude Code는 `.claude/agents/<id>.md`, Gemini CLI는 `.gemini/agents/<id>.md`를 사용하고, 상태는 `.ai-ops/subagents-manifest.json`에만 기록합니다.
101
+
102
+ Pack lifecycle 명령:
103
+
104
+ ```bash
105
+ ai-ops init --tool codex
106
+ ai-ops pack list
107
+ ai-ops pack install spec-lifecycle
108
+ ai-ops pack diff spec-lifecycle
109
+ ai-ops pack update spec-lifecycle
110
+ ai-ops pack uninstall spec-lifecycle
111
+ ```
112
+
113
+ `spec-lifecycle` pack은 `docs/specs/README.md`, `docs/specs/README.ko.md`, `docs/specs/baseline/.gitkeep`, `docs/specs/initial-build/.gitkeep`를 설치합니다. Markdown 문서만 context-layer와 `docs/docs-status.md` 감사 대상이고, `.gitkeep`은 manifest의 일반 pack file로만 기록됩니다.
114
+
115
+ ## Deprecated Old Model
116
+
117
+ 다음 동작은 현재 코드나 과거 README에 남아 있을 수 있지만 새 계약에서는 제거 대상입니다.
118
+
119
+ - preset-first init UX
120
+ - project scope skill 설치
121
+ - `ai-ops skill install --project`
122
+ - project-installed skill metadata
123
+ - `.ai-ops-manifest.json`
124
+ - legacy manifest migration
125
+ - root `specs/`
126
+ - `ai-ops spec init`
127
+
128
+ 기존 프로젝트 자동 마이그레이션은 제공하지 않습니다. 기존 사용자는 old CLI로 `ai-ops uninstall`을 실행한 뒤 새 major CLI로 `ai-ops init`을 다시 실행합니다.
129
+
130
+ ## Old Model Command Notes
131
+
132
+ Deprecated old model 문맥에서만 아래 명령을 과거 project scope skill 설치 예시로 남깁니다. 현재 skill CLI는 global-only이며 `--project`, `--global`, `--scope`를 공개 옵션으로 제공하지 않습니다.
133
+
134
+ ```bash
135
+ ai-ops skill install skill-load-check --project --tool codex
136
+ ```
137
+
138
+ Deprecated old model 문맥에서만 유지되는 항목:
139
+
140
+ - `--project`는 project scope skill 설치용 old option입니다.
141
+ - `--global`, `--scope`는 skill scope를 직접 지정하던 old option입니다.
142
+ - `spec init`은 root `specs/`를 만들던 제거된 old command입니다.
143
+ - `.ai-ops-manifest.json`는 old project manifest입니다.
144
+
145
+ ## 개발
146
+
147
+ 저장소 루트 기준:
148
+
149
+ ```bash
150
+ npm install
151
+ npm run build
152
+ npm run compile
153
+ npm test
154
+ ```
155
+
156
+ CLI workspace만 확인할 때:
157
+
158
+ ```bash
159
+ npm run build --workspace=apps/cli
160
+ npm run test --workspace=apps/cli
161
+ ```
162
+
163
+ 코드와 운영 문서 변경은 `npm run check`를 기본 검증으로 사용합니다. CLI 배포 산출물 확인은 `npm run build`와 `npm run compile`을 함께 사용합니다.
164
+
165
+ Self-dogfood 검증은 `npm run build` 후 이 repo에 `init --tool codex --tool gemini --tool claude-code`를 적용하고, `diff`, `audit`, `update --force`, `uninstall --yes`, 재-`init`, 재-`audit` 순서로 확인합니다. 이 repo에는 `spec-lifecycle` pack을 설치하지 않고 `pack list`에서 `not installed` 상태만 확인합니다.
166
+
167
+ ## 관련 문서
168
+
169
+ - [Master blueprint](../../docs/plan.md)
170
+ - [Implementation playbook](../../docs/implementation-playbook.md)
package/README.md CHANGED
@@ -1,165 +1,150 @@
1
1
  # ai-ops-cli
2
2
 
3
- CLI for managing core AI tool rules and agent skills across projects.
3
+ `ai-ops-cli`는 프로젝트에 AI agent operating layer를 설치하고, 사용자 환경에 agent skills/subagents를 설치하는 CLI입니다.
4
4
 
5
- ## Why this exists
5
+ 문서는 현재 구현된 breaking model을 설명합니다. old rules + skills scaffolder 모델은 deprecated 문맥으로만 남깁니다.
6
6
 
7
- `ai-ops-cli` reduces configuration drift across AI coding tools.
7
+ ## Current Breaking Model
8
8
 
9
- - different tools use different file layouts and loading models
10
- - manual sync across tools is error-prone over time
11
- - teams need a deterministic setup for shared core rules and installable skills
9
+ ```mermaid
10
+ flowchart TD
11
+ init["ai-ops init"] --> layer["Project operating layer 설치"]
12
+ layer --> entry["AGENTS.md canonical entrypoint"]
13
+ layer --> adapters["GEMINI.md / CLAUDE.md adapters"]
14
+ layer --> docs["docs/agent/* / docs/business/*"]
15
+ layer --> state[".ai-ops/manifest.json / context-layer.json"]
12
16
 
13
- The CLI treats these as separate sources of truth:
14
-
15
- - `apps/cli/data/rules/*.yaml`: always-loaded core rules only
16
- - `apps/cli/data/skills/skill-registry.json`: install/catalog metadata for skills
17
- - `apps/cli/data/skills/reference-skills/<skill-id>/`: installable reference skills
18
- - `apps/cli/data/skills/task-skills/<skill-id>/`: installable task skills
19
- - `apps/cli/data/presets.yaml`: preset-to-core-rule mapping
20
-
21
- ## What this CLI provides
17
+ skill["ai-ops skill ..."] --> globalSkills["Global skills only"]
18
+ subagent["ai-ops subagent ..."] --> globalSubagents["Global subagents only"]
19
+ pack["ai-ops pack ..."] --> docsSpecs["optional docs/specs/ pack"]
20
+ ```
22
21
 
23
- - interactive project initialization (`ai-ops init`)
24
- - skill package installation and lifecycle management (`ai-ops skill ...`)
25
- - spec pipeline directory scaffolding (`ai-ops spec init`)
26
- - source drift checks (`ai-ops diff`)
27
- - deterministic re-apply (`ai-ops update`)
28
- - managed cleanup (`ai-ops uninstall`)
22
+ 핵심 경계:
29
23
 
30
- ## Supported tools and output layout
24
+ - project scope는 operating layer 문서만 관리합니다.
25
+ - global scope는 skills/subagents만 관리합니다.
26
+ - `AGENTS.md`가 canonical entrypoint입니다.
27
+ - `GEMINI.md`와 `CLAUDE.md`는 `AGENTS.md`를 기준으로 삼게 하는 adapter입니다.
28
+ - `docs/specs/`는 optional pack 위치입니다.
29
+ - global asset 명령은 `AI_OPS_HOME` 또는 `HOME`이 없으면 cwd fallback 없이 실패합니다.
31
30
 
32
- | Tool | Project rules output | Skill output |
33
- | --------------------------- | ----------------------------------------------------- | ---------------------------- |
34
- | Claude Code (`claude-code`) | `.claude/rules/<rule-id>.md`, `<workspace>/CLAUDE.md` | `.claude/skills/<skill-id>/` |
35
- | Codex (`codex`) | `AGENTS.md`, `<workspace>/AGENTS.override.md` | `.agents/skills/<skill-id>/` |
36
- | Gemini CLI (`gemini`) | `GEMINI.md`, `<workspace>/GEMINI.md` | `.agents/skills/<skill-id>/` |
31
+ ## 설치 대상
37
32
 
38
- Optional settings files:
33
+ Project repo:
39
34
 
40
- - Claude Code: `.claude/settings.local.json`
41
- - Gemini CLI: `.gemini/settings.json`
42
- - Formatting protection section: `.prettierignore`
35
+ ```text
36
+ AGENTS.md
37
+ GEMINI.md
38
+ CLAUDE.md
39
+ docs/agent/workflow.md
40
+ docs/agent/rules/routing-rules.md
41
+ docs/agent/rules/doc-update-rules.md
42
+ docs/agent/rules/stop-rules.md
43
+ docs/agent/checks/impact-checklist.md
44
+ docs/agent/checks/review-checklist.md
45
+ docs/agent/maps/codebase-map.md
46
+ docs/business/business-rules.md
47
+ docs/docs-status.md
48
+ .ai-ops/manifest.json
49
+ .ai-ops/context-layer.json
50
+ ```
43
51
 
44
- ## Install
52
+ Global tool home:
45
53
 
46
- ```bash
47
- npm install -g ai-ops-cli
54
+ ```text
55
+ skills/*
56
+ subagents/*
48
57
  ```
49
58
 
50
- ## Usage
59
+ ## 목표 CLI 표면
51
60
 
52
- ```bash
53
- # Initialize the current project
54
- ai-ops init
61
+ ```text
62
+ ai-ops [command]
55
63
 
56
- # Install a skill globally (user scope by default)
57
- ai-ops skill install skill-load-check --tool codex
64
+ Commands:
65
+ init Install or refresh the project agent operating layer
66
+ diff Show drift in the project operating layer
67
+ update Re-apply the project operating layer
68
+ audit Check frontmatter, docs-status, manifest, and context-layer consistency
69
+ uninstall Remove project-managed operating layer files
70
+ skill Manage global agent skills
71
+ subagent Manage global agent subagents
72
+ pack Manage optional project operating layer packs
73
+ ```
58
74
 
59
- # Install a skill only for the current project
60
- ai-ops skill install skill-load-check --project --tool codex
75
+ `--tool`은 유지합니다. Codex, Claude Code, Gemini CLI가 서로 다른 discovery 위치와 adapter 파일을 사용하기 때문입니다.
76
+
77
+ Skill lifecycle 명령:
61
78
 
62
- # Inspect or update installed skills
79
+ ```bash
63
80
  ai-ops skill list
81
+ ai-ops skill install skill-load-check --tool codex
82
+ ai-ops skill install doc-impact-reviewer --tool codex
64
83
  ai-ops skill diff
65
84
  ai-ops skill update
66
85
  ai-ops skill uninstall skill-load-check
67
-
68
- # Check project drift
69
- ai-ops diff
70
-
71
- # Re-apply current project state
72
- ai-ops update
73
- ai-ops update --force
74
-
75
- # Remove project-managed files
76
- ai-ops uninstall
77
-
78
- # Initialize spec pipeline directory structure
79
- ai-ops spec init
80
-
81
- # Force re-create even if specs/ already exists
82
- ai-ops spec init --force
83
86
  ```
84
87
 
85
- ## CLI Surface
88
+ `doc-impact-reviewer`는 변경 완료 또는 커밋 직전에 운영 문서 영향도를 확인하는 수동 task skill입니다. `$doc-impact-reviewer`로 호출하면 git status/diff를 보고 `required / recommended / not needed` 문서 후보와 미갱신 리스크를 제안합니다. 사용자 승인 전에는 문서를 수정하지 않고, 직접 staging/commit도 하지 않습니다.
86
89
 
87
- ```text
88
- ai-ops [command]
90
+ Subagent lifecycle 명령:
89
91
 
90
- Commands:
91
- init Initialize AI tool rules for a project
92
- skill Manage agent skills
93
- spec Manage spec pipeline
94
- update Update installed rules
95
- diff Show diff between installed and current rules
96
- uninstall Remove installed rules and manifest
97
-
98
- Options:
99
- --force Force update even when no changes are detected (update only)
100
- -V, --version Output version number
101
- -h, --help Display help
92
+ ```bash
93
+ ai-ops subagent list
94
+ ai-ops subagent install security-gate --tool codex
95
+ ai-ops subagent diff
96
+ ai-ops subagent update
97
+ ai-ops subagent uninstall security-gate
102
98
  ```
103
99
 
104
- ### `ai-ops spec` subcommands
100
+ Subagent는 항상 global tool home에 설치됩니다. Codex는 `.codex/agents/<id>.toml`, Claude Code는 `.claude/agents/<id>.md`, Gemini CLI는 `.gemini/agents/<id>.md`를 사용하고, 상태는 `.ai-ops/subagents-manifest.json`에만 기록합니다.
105
101
 
106
- ```text
107
- ai-ops spec init [options]
108
-
109
- Initialize the specs/ directory structure for AI-collaborative spec pipelines.
110
- Creates:
111
- specs/README.md — usage guide
112
- specs/baseline/ — baseline spec documents
113
- specs/delta/ — delta (incremental change) spec documents
102
+ Pack lifecycle 명령:
114
103
 
115
- Options:
116
- --force Overwrite existing specs/ directory
104
+ ```bash
105
+ ai-ops init --tool codex
106
+ ai-ops pack list
107
+ ai-ops pack install spec-lifecycle
108
+ ai-ops pack diff spec-lifecycle
109
+ ai-ops pack update spec-lifecycle
110
+ ai-ops pack uninstall spec-lifecycle
117
111
  ```
118
112
 
119
- Notes:
113
+ `spec-lifecycle` pack은 `docs/specs/README.md`, `docs/specs/README.ko.md`, `docs/specs/baseline/.gitkeep`, `docs/specs/initial-build/.gitkeep`를 설치합니다. Markdown 문서만 context-layer와 `docs/docs-status.md` 감사 대상이고, `.gitkeep`은 manifest의 일반 pack file로만 기록됩니다.
120
114
 
121
- - Project installation state is tracked in `.ai-ops-manifest.json`.
122
- - User-scope skill state is tracked in `~/.ai-ops/skills-manifest.json`.
123
- - `ai-ops skill` defaults to user scope. Use `--project` to keep a skill local to the current repo.
115
+ ## Deprecated Old Model
124
116
 
125
- ## Install / Update / Uninstall Behavior
117
+ 다음 동작은 현재 코드나 과거 README에 남아 있을 수 있지만 새 계약에서는 제거 대상입니다.
126
118
 
127
- - Managed project rule files are wrapped in an `ai-ops` section with metadata (`sourceHash`, `generatedAt`).
128
- - If a rule file already has an `ai-ops` section, only that section is replaced.
129
- - If a rule file has no managed section, generated content is appended and user content is preserved.
130
- - Skill packages are written into dedicated directories and replaced as full package trees on update.
131
- - `uninstall` removes only project-managed rule files and project-installed skill directories.
132
- - User-scope skills are never removed by `ai-ops uninstall`.
119
+ - preset-first init UX
120
+ - project scope skill 설치
121
+ - `ai-ops skill install --project`
122
+ - project-installed skill metadata
123
+ - `.ai-ops-manifest.json`
124
+ - legacy manifest migration
125
+ - root `specs/`
126
+ - `ai-ops spec init`
133
127
 
134
- ## Init Flow Summary
128
+ 기존 프로젝트 자동 마이그레이션은 제공하지 않습니다. 기존 사용자는 old CLI로 `ai-ops uninstall`을 실행한 뒤 새 major CLI로 `ai-ops init`을 다시 실행합니다.
135
129
 
136
- `ai-ops init` prompts for:
130
+ ## Old Model Command Notes
137
131
 
138
- 1. Tool selection (`claude-code`, `codex`, `gemini`)
139
- 2. Monorepo confirmation
140
- 3. Workspace selection for monorepos
141
- 4. Preset selection per workspace
142
- 5. Locked core rules review
143
- 6. Preset-linked `reference` skills only:
144
- - already-installed global skills are shown separately
145
- - only installable skills can be deselected
146
- 7. One shared install scope for selected installable skills (`user` default or `project`)
147
- 8. Optional settings installation
132
+ Deprecated old model 문맥에서만 아래 명령을 과거 project scope skill 설치 예시로 남깁니다. 현재 skill CLI는 global-only이며 `--project`, `--global`, `--scope`를 공개 옵션으로 제공하지 않습니다.
148
133
 
149
- Important behavior:
134
+ ```bash
135
+ ai-ops skill install skill-load-check --project --tool codex
136
+ ```
150
137
 
151
- - core rules come from the preset directly and are not fine-tuned in `init`
152
- - `init` shows only preset-linked `reference` skills
153
- - `task` skills are excluded from `init` and are managed with `ai-ops skill install/uninstall`
154
- - globally available skills are not reinstalled by default
155
- - when `user` scope is chosen, selected skills are written only to the global skill registry
156
- - when `project` scope is chosen, selected skills are recorded in `.ai-ops-manifest.json`
138
+ Deprecated old model 문맥에서만 유지되는 항목:
157
139
 
158
- Skill authoring rules live in `apps/cli/data/skills/README.md`.
140
+ - `--project`는 project scope skill 설치용 old option입니다.
141
+ - `--global`, `--scope`는 skill scope를 직접 지정하던 old option입니다.
142
+ - `spec init`은 root `specs/`를 만들던 제거된 old command입니다.
143
+ - `.ai-ops-manifest.json`는 old project manifest입니다.
159
144
 
160
- ## Local Development
145
+ ## 개발
161
146
 
162
- From repo root:
147
+ 저장소 루트 기준:
163
148
 
164
149
  ```bash
165
150
  npm install
@@ -168,57 +153,18 @@ npm run compile
168
153
  npm test
169
154
  ```
170
155
 
171
- From `apps/cli` workspace:
156
+ CLI workspace만 확인할 때:
172
157
 
173
158
  ```bash
174
159
  npm run build --workspace=apps/cli
175
160
  npm run test --workspace=apps/cli
176
161
  ```
177
162
 
178
- ## Local Skill Loading Check
179
-
180
- Use the built-in `skill-load-check` task skill before publishing to npm.
181
-
182
- Recommended local flow:
183
-
184
- ```bash
185
- # 1. Build the CLI
186
- npm run build
187
-
188
- # 2. Use an isolated user home so you do not pollute your real ~/.agents or ~/.claude
189
- export AI_OPS_HOME="$(mktemp -d)"
190
-
191
- # 3. Install the sample skill globally
192
- node apps/cli/dist/bin/index.js skill install skill-load-check --tool codex
193
-
194
- # 4. Verify files exist
195
- find "$AI_OPS_HOME/.agents/skills/skill-load-check" -maxdepth 2 -type f | sort
196
-
197
- # 5. Run the sample script manually
198
- node "$AI_OPS_HOME/.agents/skills/skill-load-check/scripts/loaded.js"
199
- ```
200
-
201
- Expected output:
202
-
203
- ```text
204
- A Skill loaded
205
- ```
206
-
207
- Project-scope verification:
208
-
209
- ```bash
210
- node apps/cli/dist/bin/index.js skill install skill-load-check --project --tool codex
211
- find ./.agents/skills/skill-load-check -maxdepth 2 -type f | sort
212
- node ./.agents/skills/skill-load-check/scripts/loaded.js
213
- ```
214
-
215
- After file placement is verified, use a real tool prompt that should trigger `skill-load-check` and confirm the tool discovers the skill metadata. If the tool caches skill discovery, restart that tool session before re-checking.
216
-
217
- ## Related Docs
163
+ 코드와 운영 문서 변경은 `npm run check`를 기본 검증으로 사용합니다. CLI 배포 산출물 확인은 `npm run build`와 `npm run compile`을 함께 사용합니다.
218
164
 
219
- - Master blueprint: [`docs/plan.md`](../../docs/plan.md)
220
- - Implementation playbook: [`docs/implementation-playbook.md`](../../docs/implementation-playbook.md)
165
+ Self-dogfood 검증은 `npm run build` 후 이 repo에 `init --tool codex --tool gemini --tool claude-code`를 적용하고, `diff`, `audit`, `update --force`, `uninstall --yes`, 재-`init`, 재-`audit` 순서로 확인합니다. 이 repo에는 `spec-lifecycle` pack을 설치하지 않고 `pack list`에서 `not installed` 상태만 확인합니다.
221
166
 
222
- ## License
167
+ ## 관련 문서
223
168
 
224
- MIT
169
+ - [Master blueprint](../../docs/plan.md)
170
+ - [Implementation playbook](../../docs/implementation-playbook.md)
@@ -0,0 +1,29 @@
1
+ ---
2
+ status: Active
3
+ layer: agent
4
+ owner: ai-ops
5
+ read_when:
6
+ - before_task
7
+ update_when:
8
+ - operating_layer_changes
9
+ ---
10
+ # Agent Operating Layer
11
+
12
+ 이 파일은 이 프로젝트의 canonical agent entrypoint다. 도구별 adapter가 있더라도 운영 판단은 이 파일과 `docs/agent/*` 문서를 기준으로 한다.
13
+
14
+ ## 읽기 순서
15
+
16
+ 1. `AGENTS.md`
17
+ 2. `docs/agent/workflow.md`
18
+ 3. `docs/agent/rules/*.md`
19
+ 4. 작업 성격에 맞는 `docs/agent/checks/*.md`
20
+ 5. `docs/docs-status.md`
21
+
22
+ ## 문서 신뢰도
23
+
24
+ - `Active`: 현재 판단 근거로 사용할 수 있다.
25
+ - `Reserved`: 자리만 만든 문서다. 프로젝트가 보강하기 전까지 현재 판단 근거로 사용하지 않는다.
26
+ - `Draft`: 작성 중인 문서다. 사용 전 검토가 필요하다.
27
+ - `Archived`: 과거 기록이다. 현재 운영 판단에 사용하지 않는다.
28
+
29
+ 문서 상태가 애매하면 `docs/docs-status.md`와 각 문서 frontmatter를 함께 확인한다.
@@ -0,0 +1,14 @@
1
+ ---
2
+ status: Active
3
+ layer: agent
4
+ owner: ai-ops
5
+ read_when:
6
+ - before_task
7
+ update_when:
8
+ - adapter_changes
9
+ ---
10
+ # Claude Code Adapter
11
+
12
+ 이 파일은 Claude Code가 프로젝트 운영 계층을 찾기 위한 adapter다.
13
+
14
+ 작업 전 `AGENTS.md`를 canonical entrypoint로 읽고, 세부 운영 문서는 `docs/agent/*`와 `docs/docs-status.md`를 따른다. 이 파일에는 중복 운영 규칙을 추가하지 않는다.
@@ -0,0 +1,14 @@
1
+ ---
2
+ status: Active
3
+ layer: agent
4
+ owner: ai-ops
5
+ read_when:
6
+ - before_task
7
+ update_when:
8
+ - adapter_changes
9
+ ---
10
+ # Gemini CLI Adapter
11
+
12
+ 이 파일은 Gemini CLI가 프로젝트 운영 계층을 찾기 위한 adapter다.
13
+
14
+ 작업 전 `AGENTS.md`를 canonical entrypoint로 읽고, 세부 운영 문서는 `docs/agent/*`와 `docs/docs-status.md`를 따른다. 이 파일에는 중복 운영 규칙을 추가하지 않는다.
@@ -0,0 +1,16 @@
1
+ ---
2
+ status: Active
3
+ layer: agent
4
+ owner: ai-ops
5
+ read_when:
6
+ - before_finish
7
+ update_when:
8
+ - checklist_changes
9
+ ---
10
+ # Impact Checklist
11
+
12
+ - 공개 CLI 표면이 바뀌었는가?
13
+ - 상태 파일 schema나 경로가 바뀌었는가?
14
+ - 기존 사용자 파일 보존 정책에 영향이 있는가?
15
+ - update/diff/uninstall 동작이 서로 같은 추적 기준을 쓰는가?
16
+ - 실패 시 사용자가 복구할 수 있는 메시지를 받는가?
@@ -0,0 +1,17 @@
1
+ ---
2
+ status: Active
3
+ layer: agent
4
+ owner: ai-ops
5
+ read_when:
6
+ - review
7
+ - before_finish
8
+ update_when:
9
+ - checklist_changes
10
+ ---
11
+ # Review Checklist
12
+
13
+ - 계획 문서의 의도와 실제 diff가 어긋나는 지점이 있는가?
14
+ - 테스트가 잡지 못하는 런타임 회귀 위험이 있는가?
15
+ - create-only 파일과 managed section 파일의 보존 정책이 섞이지 않았는가?
16
+ - manifest, context-layer, 실제 파일 상태가 같은 기준으로 갱신되는가?
17
+ - 검증 명령이 변경 범위에 충분히 직접적인가?
@@ -0,0 +1,16 @@
1
+ ---
2
+ status: Reserved
3
+ layer: agent
4
+ owner: project
5
+ read_when:
6
+ - codebase_navigation
7
+ update_when:
8
+ - architecture_changes
9
+ ---
10
+ # Codebase Map
11
+
12
+ 이 문서는 Reserved 상태입니다. 프로젝트가 실제 구조를 보강하기 전까지 현재 판단 근거로 사용하지 마세요.
13
+
14
+ ## 주요 영역
15
+
16
+ - TBD
@@ -0,0 +1,22 @@
1
+ ---
2
+ status: Active
3
+ layer: agent
4
+ owner: ai-ops
5
+ read_when:
6
+ - document_change
7
+ update_when:
8
+ - document_policy_changes
9
+ ---
10
+ # Document Update Rules
11
+
12
+ ## 갱신 기준
13
+
14
+ - 구현 동작이 바뀌면 해당 동작을 설명하는 `Active` 문서를 갱신한다.
15
+ - 문서 상태/frontmatter 관리는 모든 Markdown이 아니라 context-layer와 `docs/docs-status.md`에 등록된 operating-layer 문서를 기준으로 한다.
16
+ - `Reserved` 문서를 실제 판단 근거로 승격하려면 frontmatter와 `docs/docs-status.md`를 함께 갱신한다.
17
+ - 오래된 문서는 삭제보다 `Archived` 전환을 우선 검토한다.
18
+
19
+ ## 금지
20
+
21
+ - project-owned create-only 문서를 자동 update로 덮어쓰지 않는다.
22
+ - 도구 adapter에 canonical 운영 규칙을 중복 작성하지 않는다.
@@ -0,0 +1,22 @@
1
+ ---
2
+ status: Active
3
+ layer: agent
4
+ owner: ai-ops
5
+ read_when:
6
+ - before_task
7
+ update_when:
8
+ - routing_changes
9
+ ---
10
+ # Routing Rules
11
+
12
+ ## 판단 순서
13
+
14
+ 1. 요청이 코드 변경인지, 리뷰인지, 문서 정리인지 구분한다.
15
+ 2. repo 내부의 계획 문서가 지정되면 실제 diff와 직접 비교한다.
16
+ 3. 외부 사실이나 최신 정보가 필요한 경우 현재 출처를 확인한다.
17
+ 4. 프로젝트 문서가 `Reserved`이면 현재 사실로 인용하지 않는다.
18
+
19
+ ## 범위
20
+
21
+ - project scope: `AGENTS.md`, `GEMINI.md`, `CLAUDE.md`, `docs/agent/*`, `docs/business/*`, `docs/docs-status.md`, `.ai-ops/*`
22
+ - global scope: skills, subagents, tool-specific reusable assets