ai-ops-cli 1.0.1 → 1.0.3

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.ko.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # ai-ops-cli
2
2
 
3
+ [English](./README.md)
4
+
3
5
  `ai-ops-cli`는 프로젝트에 AI agent operating layer를 설치하고, 사용자 환경에 agent skills/subagents를 설치하는 CLI입니다.
4
6
 
5
7
  이 문서는 현재 구현된 breaking model을 설명합니다. old rules + skills scaffolder 모델은 deprecated 문맥으로만 남깁니다.
@@ -36,6 +38,7 @@ Project repo:
36
38
  AGENTS.md
37
39
  GEMINI.md
38
40
  CLAUDE.md
41
+ docs/agent/rules/00-agent-baseline.md
39
42
  docs/agent/workflow.md
40
43
  docs/agent/rules/routing-rules.md
41
44
  docs/agent/rules/doc-update-rules.md
@@ -49,6 +52,8 @@ docs/docs-status.md
49
52
  .ai-ops/context-layer.json
50
53
  ```
51
54
 
55
+ `docs/agent/rules/00-agent-baseline.md`는 기존 `role-persona`, `communication`, `code-philosophy`, `naming-convention`, `plan-mode`의 기본 의도를 새 operating layer 문서로 이관한 Active 규칙입니다. `AGENTS.md` 직후 먼저 읽습니다.
56
+
52
57
  Global tool home:
53
58
 
54
59
  ```text
@@ -56,6 +61,26 @@ skills/*
56
61
  subagents/*
57
62
  ```
58
63
 
64
+ ## 수정 FAQ
65
+
66
+ ### `ai-ops update`가 덮어쓰는 파일은 무엇인가요?
67
+
68
+ `AGENTS.md`, `GEMINI.md`, `CLAUDE.md`, `docs/agent/rules/*`, `docs/agent/checks/*`, `docs/agent/workflow.md`는 ai-ops managed 문서입니다. 이 파일의 `<!-- ai-ops:start -->`부터 `<!-- ai-ops:end -->`까지는 CLI 템플릿 영역이고, `ai-ops update` 때 현재 CLI 템플릿으로 다시 적용됩니다. 사용자가 이 영역을 직접 수정하면 다음 update에서 유지되지 않습니다.
69
+
70
+ `.ai-ops/manifest.json`과 `.ai-ops/context-layer.json`도 직접 편집 대상이 아닙니다. 각각 설치 상태와 문서 index를 기록하는 CLI 상태 파일입니다.
71
+
72
+ ### 사용자가 직접 수정해야 하는 파일은 무엇인가요?
73
+
74
+ 프로젝트 지식은 project-owned 문서에 적습니다. 기본 project-owned 문서는 `docs/agent/maps/codebase-map.md`, `docs/business/business-rules.md`, `docs/docs-status.md`입니다. `docs/agent/maps/codebase-map.md`와 `docs/business/business-rules.md`는 처음에는 Reserved 템플릿이지만, 프로젝트가 실제 내용을 채운 뒤에는 update가 자동으로 덮어쓰지 않습니다.
75
+
76
+ `docs/docs-status.md`는 project-owned 문서이지만 자유 메모장이 아니라 context-layer registry입니다. 문서 status/frontmatter를 바꿀 때 함께 맞추는 파일이며, update 과정에서 manifest와 실제 문서 frontmatter 기준으로 테이블이 정리될 수 있습니다.
77
+
78
+ ### 프로젝트 고유 agent rule은 어디에 적나요?
79
+
80
+ 현재 기본 layer에는 프로젝트 구조와 비즈니스 규칙을 담는 project-owned 문서가 있지만, 프로젝트별 agent 행동 규칙만을 위한 별도 Active 문서는 아직 first-class 템플릿으로 열려 있지 않습니다. 그래서 `AGENTS.md`의 managed 영역이나 tool adapter에 직접 규칙을 추가하는 방식은 update-safe한 계약이 아닙니다.
81
+
82
+ 프로젝트별 agent rule을 안정적으로 지원하려면 `docs/agent/rules/project-rules.md` 같은 project-owned Active 문서를 추가하고, manifest/context-layer/docs-status가 함께 추적하도록 제품 계약을 확장하는 것이 다음 개선 후보입니다.
83
+
59
84
  ## 목표 CLI 표면
60
85
 
61
86
  ```text
package/README.md CHANGED
@@ -1,14 +1,16 @@
1
1
  # ai-ops-cli
2
2
 
3
- `ai-ops-cli`는 프로젝트에 AI agent operating layer를 설치하고, 사용자 환경에 agent skills/subagents를 설치하는 CLI입니다.
3
+ [Korean](./README.ko.md)
4
4
 
5
- 문서는 현재 구현된 breaking model을 설명합니다. old rules + skills scaffolder 모델은 deprecated 문맥으로만 남깁니다.
5
+ `ai-ops-cli` installs an AI agent operating layer into a project and installs reusable agent skills/subagents into the user's global tool environment.
6
+
7
+ This document describes the currently implemented breaking model. The old rules + skills scaffolder model remains only as deprecated context.
6
8
 
7
9
  ## Current Breaking Model
8
10
 
9
11
  ```mermaid
10
12
  flowchart TD
11
- init["ai-ops init"] --> layer["Project operating layer 설치"]
13
+ init["ai-ops init"] --> layer["Install project operating layer"]
12
14
  layer --> entry["AGENTS.md canonical entrypoint"]
13
15
  layer --> adapters["GEMINI.md / CLAUDE.md adapters"]
14
16
  layer --> docs["docs/agent/* / docs/business/*"]
@@ -19,16 +21,16 @@ flowchart TD
19
21
  pack["ai-ops pack ..."] --> docsSpecs["optional docs/specs/ pack"]
20
22
  ```
21
23
 
22
- 핵심 경계:
24
+ Core boundaries:
23
25
 
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 없이 실패합니다.
26
+ - Project scope manages only operating-layer documents.
27
+ - Global scope manages only skills/subagents.
28
+ - `AGENTS.md` is the canonical entrypoint.
29
+ - `GEMINI.md` and `CLAUDE.md` are adapters that point tools back to `AGENTS.md`.
30
+ - `docs/specs/` is the optional pack location.
31
+ - Global asset commands require `AI_OPS_HOME` or `HOME`; they fail closed without cwd fallback when neither exists.
30
32
 
31
- ## 설치 대상
33
+ ## Install Targets
32
34
 
33
35
  Project repo:
34
36
 
@@ -36,6 +38,7 @@ Project repo:
36
38
  AGENTS.md
37
39
  GEMINI.md
38
40
  CLAUDE.md
41
+ docs/agent/rules/00-agent-baseline.md
39
42
  docs/agent/workflow.md
40
43
  docs/agent/rules/routing-rules.md
41
44
  docs/agent/rules/doc-update-rules.md
@@ -49,6 +52,8 @@ docs/docs-status.md
49
52
  .ai-ops/context-layer.json
50
53
  ```
51
54
 
55
+ `docs/agent/rules/00-agent-baseline.md` is the Active rule that carries the original intent of the old `role-persona`, `communication`, `code-philosophy`, `naming-convention`, and `plan-mode` rules into the new operating layer. It is read immediately after `AGENTS.md`.
56
+
52
57
  Global tool home:
53
58
 
54
59
  ```text
@@ -56,7 +61,27 @@ skills/*
56
61
  subagents/*
57
62
  ```
58
63
 
59
- ## 목표 CLI 표면
64
+ ## Editing FAQ
65
+
66
+ ### What does `ai-ops update` overwrite?
67
+
68
+ `AGENTS.md`, `GEMINI.md`, `CLAUDE.md`, `docs/agent/rules/*`, `docs/agent/checks/*`, and `docs/agent/workflow.md` are ai-ops managed documents. In these files, the region from `<!-- ai-ops:start -->` through `<!-- ai-ops:end -->` is CLI template content. `ai-ops update` reapplies the current CLI template to that region. User edits inside that region are not preserved across update.
69
+
70
+ `.ai-ops/manifest.json` and `.ai-ops/context-layer.json` are also not direct-edit files. They are CLI state files for installation state and document indexing.
71
+
72
+ ### Which files should users edit directly?
73
+
74
+ Project knowledge belongs in project-owned documents. The default project-owned documents are `docs/agent/maps/codebase-map.md`, `docs/business/business-rules.md`, and `docs/docs-status.md`. `docs/agent/maps/codebase-map.md` and `docs/business/business-rules.md` start as Reserved templates, but once the project fills them with real content, update does not automatically overwrite them.
75
+
76
+ `docs/docs-status.md` is project-owned, but it is not a free-form notebook. It is the context-layer registry. Update it together with document status/frontmatter changes; the update flow may also normalize its table from the manifest and current document frontmatter.
77
+
78
+ ### Where should project-specific agent rules go?
79
+
80
+ The default layer currently has project-owned documents for project structure and business rules, but it does not yet provide a first-class Active template for project-specific agent behavior rules. Because of that, adding rules inside the managed region of `AGENTS.md` or inside a tool adapter is not an update-safe contract.
81
+
82
+ To support project-specific agent rules safely, the next product extension should add a project-owned Active document such as `docs/agent/rules/project-rules.md` and have the manifest, context-layer index, and docs-status table track it together.
83
+
84
+ ## CLI Surface
60
85
 
61
86
  ```text
62
87
  ai-ops [command]
@@ -72,9 +97,9 @@ Commands:
72
97
  pack Manage optional project operating layer packs
73
98
  ```
74
99
 
75
- `--tool`은 유지합니다. Codex, Claude Code, Gemini CLI 서로 다른 discovery 위치와 adapter 파일을 사용하기 때문입니다.
100
+ `--tool` remains because Codex, Claude Code, and Gemini CLI use different discovery locations and adapter files.
76
101
 
77
- Skill lifecycle 명령:
102
+ Skill lifecycle commands:
78
103
 
79
104
  ```bash
80
105
  ai-ops skill list
@@ -85,9 +110,9 @@ ai-ops skill update
85
110
  ai-ops skill uninstall skill-load-check
86
111
  ```
87
112
 
88
- `doc-impact-reviewer`는 변경 완료 또는 커밋 직전에 운영 문서 영향도를 확인하는 수동 task skill입니다. `$doc-impact-reviewer`로 호출하면 git status/diff 보고 `required / recommended / not needed` 문서 후보와 미갱신 리스크를 제안합니다. 사용자 승인 전에는 문서를 수정하지 않고, 직접 staging/commit도 하지 않습니다.
113
+ `doc-impact-reviewer` is a manual task skill for checking operating-document impact near the end of work or before commit. Invoking `$doc-impact-reviewer` reads git status/diff and reports document update candidates as `required / recommended / not needed`. It does not edit documents, stage files, or commit before user approval.
89
114
 
90
- Subagent lifecycle 명령:
115
+ Subagent lifecycle commands:
91
116
 
92
117
  ```bash
93
118
  ai-ops subagent list
@@ -97,9 +122,9 @@ ai-ops subagent update
97
122
  ai-ops subagent uninstall security-gate
98
123
  ```
99
124
 
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`에만 기록합니다.
125
+ Subagents are always installed into the global tool home. Codex uses `.codex/agents/<id>.toml`, Claude Code uses `.claude/agents/<id>.md`, Gemini CLI uses `.gemini/agents/<id>.md`, and state is recorded only in `.ai-ops/subagents-manifest.json`.
101
126
 
102
- Pack lifecycle 명령:
127
+ Pack lifecycle commands:
103
128
 
104
129
  ```bash
105
130
  ai-ops init --tool codex
@@ -110,14 +135,14 @@ ai-ops pack update spec-lifecycle
110
135
  ai-ops pack uninstall spec-lifecycle
111
136
  ```
112
137
 
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로만 기록됩니다.
138
+ The `spec-lifecycle` pack installs `docs/specs/README.md`, `docs/specs/README.ko.md`, `docs/specs/baseline/.gitkeep`, and `docs/specs/initial-build/.gitkeep`. Only Markdown documents are audited by the context-layer and `docs/docs-status.md`; `.gitkeep` files are tracked only as regular pack files in the manifest.
114
139
 
115
140
  ## Deprecated Old Model
116
141
 
117
- 다음 동작은 현재 코드나 과거 README에 남아 있을 있지만 계약에서는 제거 대상입니다.
142
+ The following behaviors may still appear in current code or older docs, but they are outside the new contract:
118
143
 
119
144
  - preset-first init UX
120
- - project scope skill 설치
145
+ - project-scope skill installation
121
146
  - `ai-ops skill install --project`
122
147
  - project-installed skill metadata
123
148
  - `.ai-ops-manifest.json`
@@ -125,26 +150,26 @@ ai-ops pack uninstall spec-lifecycle
125
150
  - root `specs/`
126
151
  - `ai-ops spec init`
127
152
 
128
- 기존 프로젝트 자동 마이그레이션은 제공하지 않습니다. 기존 사용자는 old CLI로 `ai-ops uninstall`을 실행한 major CLI `ai-ops init`을 다시 실행합니다.
153
+ Existing projects are not migrated automatically. Existing users should run `ai-ops uninstall` with the old CLI, then run `ai-ops init` again with the new major CLI.
129
154
 
130
155
  ## Old Model Command Notes
131
156
 
132
- Deprecated old model 문맥에서만 아래 명령을 과거 project scope skill 설치 예시로 남깁니다. 현재 skill CLI global-only이며 `--project`, `--global`, `--scope`를 공개 옵션으로 제공하지 않습니다.
157
+ The command below remains only as a deprecated old-model example for historical project-scope skill installation. The current skill CLI is global-only and does not expose `--project`, `--global`, or `--scope` as public options.
133
158
 
134
159
  ```bash
135
160
  ai-ops skill install skill-load-check --project --tool codex
136
161
  ```
137
162
 
138
- Deprecated old model 문맥에서만 유지되는 항목:
163
+ Deprecated old-model-only items:
139
164
 
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입니다.
165
+ - `--project` was the old option for project-scope skill installation.
166
+ - `--global` and `--scope` were old options for directly selecting skill scope.
167
+ - `spec init` was the removed old command that created root `specs/`.
168
+ - `.ai-ops-manifest.json` was the old project manifest.
144
169
 
145
- ## 개발
170
+ ## Development
146
171
 
147
- 저장소 루트 기준:
172
+ From the repository root:
148
173
 
149
174
  ```bash
150
175
  npm install
@@ -153,18 +178,18 @@ npm run compile
153
178
  npm test
154
179
  ```
155
180
 
156
- CLI workspace만 확인할 때:
181
+ To check only the CLI workspace:
157
182
 
158
183
  ```bash
159
184
  npm run build --workspace=apps/cli
160
185
  npm run test --workspace=apps/cli
161
186
  ```
162
187
 
163
- 코드와 운영 문서 변경은 `npm run check`를 기본 검증으로 사용합니다. CLI 배포 산출물 확인은 `npm run build`와 `npm run compile`을 함께 사용합니다.
188
+ Use `npm run check` as the default validation for code and operating-document changes. For CLI release artifacts, run both `npm run build` and `npm run compile`.
164
189
 
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` 상태만 확인합니다.
190
+ Self-dogfood validation runs `npm run build`, applies `init --tool codex --tool gemini --tool claude-code` to this repo, then checks `diff`, `audit`, `update --force`, `uninstall --yes`, re-`init`, and re-`audit`. This repo does not install the `spec-lifecycle` pack during self-dogfood; `pack list` only verifies the `not installed` state.
166
191
 
167
- ## 관련 문서
192
+ ## Related Docs
168
193
 
169
194
  - [Master blueprint](../../docs/plan.md)
170
195
  - [Implementation playbook](../../docs/implementation-playbook.md)
@@ -14,10 +14,11 @@ update_when:
14
14
  ## 읽기 순서
15
15
 
16
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`
17
+ 2. `docs/agent/rules/00-agent-baseline.md`
18
+ 3. `docs/agent/workflow.md`
19
+ 4. 나머지 `docs/agent/rules/*.md`
20
+ 5. 작업 성격에 맞는 `docs/agent/checks/*.md`
21
+ 6. `docs/docs-status.md`
21
22
 
22
23
  ## 문서 신뢰도
23
24
 
@@ -0,0 +1,47 @@
1
+ ---
2
+ status: Active
3
+ layer: agent
4
+ owner: ai-ops
5
+ read_when:
6
+ - before_task
7
+ update_when:
8
+ - baseline_rule_changes
9
+ ---
10
+ # Agent Baseline Rules
11
+
12
+ 이 문서는 모든 작업 전에 먼저 적용할 기본 협업 규칙이다. 세부 routing, workflow, stop rule보다 앞서 읽고, 프로젝트별 Active 문서가 더 구체적인 판단 근거를 제공하면 그 문서를 우선한다.
13
+
14
+ ## 협업 태도
15
+
16
+ - 사용자를 초보자로 낮춰 설명하지 않는다.
17
+ - 사용자는 senior developer라고 가정하되, 특정 도메인이나 패턴에 익숙하지 않을 수 있음을 고려한다.
18
+ - 패턴, 라이브러리, 아키텍처를 고를 때는 중요한 선택 이유를 짧게 설명한다.
19
+ - 아키텍처, edge case, 성능, 유지보수성을 우선해 판단한다.
20
+
21
+ ## 커뮤니케이션
22
+
23
+ - "Certainly", "Of course", "Here is the code", "I understand", "Great question" 같은 filler phrase로 시작하지 않는다.
24
+ - 사용자가 명시적으로 영어를 요청하지 않는 한, 코드와 inline code comment를 제외한 응답은 한국어로 작성한다.
25
+ - 불확실한 내용은 단정하지 않고 확인 가능한 근거, 추론, 남은 리스크를 구분한다.
26
+
27
+ ## 코드 철학
28
+
29
+ - clever하거나 opaque한 코드보다 의도가 드러나는 명시적인 코드를 우선한다.
30
+ - Rule of Three 이전에는 공통 abstraction을 서두르지 않는다.
31
+ - core business logic에는 side effect를 섞지 않고, functional core / imperative shell 구조를 선호한다.
32
+ - 상태 변경은 가능한 한 immutable update로 처리한다.
33
+ - 복잡한 business rule은 실패하는 테스트를 먼저 두고 구현한다.
34
+ - 파일 내부 선언은 types, constants, validators/guards, helper functions, main logic/exports 순서로 배치한다.
35
+ - 한 파일에 의미가 다른 그룹이 둘 이상 있으면 `// ----- types -----` 같은 section divider comment로 경계를 표시한다.
36
+
37
+ ## 네이밍
38
+
39
+ - directory name은 kebab-case를 사용한다.
40
+ - 새 파일과 문서 이름은 역할이 드러나는 구체적인 이름을 사용한다.
41
+
42
+ ## 계획과 다이어그램
43
+
44
+ - flow, sequence, state, structure를 설명할 때 긴 bullet list보다 Mermaid diagram을 우선 검토한다.
45
+ - UX/control flow와 decision tree는 `flowchart`, request/response와 service interaction은 `sequenceDiagram`, entity/schema relationship은 `erDiagram`, lifecycle/state transition은 `stateDiagram-v2`를 사용한다.
46
+ - Mermaid diagram은 fenced `mermaid` code block으로 작성한다.
47
+ - plan 문서를 저장할 때는 `YYYYMMDD_<topic>.md` 형식을 사용하고, topic은 kebab-case로 작성한다.
@@ -9,6 +9,8 @@ update_when:
9
9
  ---
10
10
  # Specs
11
11
 
12
+ [English](./README.md)
13
+
12
14
  이 문서는 Reserved 상태입니다. 프로젝트가 실제 spec lifecycle 문서를 보강하기 전까지 현재 판단 근거로 사용하지 마세요.
13
15
 
14
16
  ## 디렉토리 구조
@@ -9,6 +9,8 @@ update_when:
9
9
  ---
10
10
  # Specs
11
11
 
12
+ [Korean](./README.ko.md)
13
+
12
14
  This document is Reserved. Do not use this document as current decision-making evidence until the project fills in real spec lifecycle documents.
13
15
 
14
16
  ## Directory Structure
@@ -1,5 +1,7 @@
1
1
  # Skill 작성 가이드
2
2
 
3
+ [English](./README.md)
4
+
3
5
  이 디렉터리는 설치 가능한 agent skill의 source of truth입니다.
4
6
 
5
7
  ## 용어
@@ -1,5 +1,7 @@
1
1
  # Skill Authoring Guide
2
2
 
3
+ [Korean](./README.ko.md)
4
+
3
5
  This directory is the source of truth for installable agent skills.
4
6
 
5
7
  ## Terms
@@ -1,5 +1,7 @@
1
1
  # Subagent 작성 가이드
2
2
 
3
+ [English](./README.md)
4
+
3
5
  이 디렉터리는 global agent subagent의 source of truth입니다.
4
6
 
5
7
  ## 디렉터리 구조
@@ -1,5 +1,7 @@
1
1
  # Subagent Authoring Guide
2
2
 
3
+ [Korean](./README.ko.md)
4
+
3
5
  This directory is the source of truth for global agent subagents.
4
6
 
5
7
  ## Directory Shape