ai-ops-cli 1.2.0 → 1.3.0
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 +1 -2
- package/README.md +1 -2
- package/data/context-layer/AGENTS.md +1 -1
- package/data/context-layer/docs/agent/checks/impact-checklist.md +8 -6
- package/data/context-layer/docs/agent/workflow.md +21 -7
- package/data/skills/README.ko.md +12 -13
- package/data/skills/README.md +8 -9
- package/data/skills/skill-registry.json +0 -26
- package/data/skills/task-skills/context-promotion-review/SKILL.md +1 -1
- package/data/skills/task-skills/doc-impact-reviewer/SKILL.md +0 -1
- package/dist/bin/index.js +296 -384
- package/dist/bin/index.js.map +1 -1
- package/package.json +1 -1
- package/data/context-layer/docs/agent/checks/review-checklist.md +0 -17
package/README.ko.md
CHANGED
|
@@ -48,7 +48,6 @@ docs/agent/rules/routing-rules.md
|
|
|
48
48
|
docs/agent/rules/doc-update-rules.md
|
|
49
49
|
docs/agent/rules/stop-rules.md
|
|
50
50
|
docs/agent/checks/impact-checklist.md
|
|
51
|
-
docs/agent/checks/review-checklist.md
|
|
52
51
|
docs/agent/maps/codebase-map.md
|
|
53
52
|
docs/business/business-rules.md
|
|
54
53
|
docs/docs-status.md
|
|
@@ -71,7 +70,7 @@ receipts/config/*
|
|
|
71
70
|
|
|
72
71
|
### `ai-ops update`가 덮어쓰는 파일은 무엇인가요?
|
|
73
72
|
|
|
74
|
-
`AGENTS.md`, `GEMINI.md`, `CLAUDE.md`, `docs/agent/rules/*`, `docs/agent/checks
|
|
73
|
+
`AGENTS.md`, `GEMINI.md`, `CLAUDE.md`, `docs/agent/rules/*`, `docs/agent/checks/impact-checklist.md`, `docs/agent/workflow.md`는 ai-ops managed 문서입니다. 이 파일의 `<!-- ai-ops:start -->`부터 `<!-- ai-ops:end -->`까지는 CLI 템플릿 영역이고, `ai-ops update` 때 현재 CLI 템플릿으로 다시 적용됩니다. 사용자가 이 영역을 직접 수정하면 다음 update에서 유지되지 않습니다.
|
|
75
74
|
|
|
76
75
|
`.ai-ops/manifest.json`과 `.ai-ops/context-layer.json`도 직접 편집 대상이 아닙니다. 각각 설치 상태와 문서 index를 기록하는 CLI 상태 파일입니다.
|
|
77
76
|
|
package/README.md
CHANGED
|
@@ -48,7 +48,6 @@ docs/agent/rules/routing-rules.md
|
|
|
48
48
|
docs/agent/rules/doc-update-rules.md
|
|
49
49
|
docs/agent/rules/stop-rules.md
|
|
50
50
|
docs/agent/checks/impact-checklist.md
|
|
51
|
-
docs/agent/checks/review-checklist.md
|
|
52
51
|
docs/agent/maps/codebase-map.md
|
|
53
52
|
docs/business/business-rules.md
|
|
54
53
|
docs/docs-status.md
|
|
@@ -71,7 +70,7 @@ receipts/config/*
|
|
|
71
70
|
|
|
72
71
|
### What does `ai-ops update` overwrite?
|
|
73
72
|
|
|
74
|
-
`AGENTS.md`, `GEMINI.md`, `CLAUDE.md`, `docs/agent/rules/*`, `docs/agent/checks
|
|
73
|
+
`AGENTS.md`, `GEMINI.md`, `CLAUDE.md`, `docs/agent/rules/*`, `docs/agent/checks/impact-checklist.md`, 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.
|
|
75
74
|
|
|
76
75
|
`.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.
|
|
77
76
|
|
|
@@ -17,7 +17,7 @@ update_when:
|
|
|
17
17
|
2. `docs/agent/rules/00-agent-baseline.md`
|
|
18
18
|
3. `docs/agent/workflow.md`
|
|
19
19
|
4. 나머지 `docs/agent/rules/*.md`
|
|
20
|
-
5.
|
|
20
|
+
5. 변경 영향 확인이 필요하면 `docs/agent/checks/impact-checklist.md`
|
|
21
21
|
6. `docs/docs-status.md`
|
|
22
22
|
|
|
23
23
|
## 문서 신뢰도
|
|
@@ -3,14 +3,16 @@ status: Active
|
|
|
3
3
|
layer: agent
|
|
4
4
|
owner: ai-ops
|
|
5
5
|
read_when:
|
|
6
|
+
- change_impact_analysis
|
|
6
7
|
- before_finish
|
|
7
8
|
update_when:
|
|
8
|
-
-
|
|
9
|
+
- impact_policy_changes
|
|
9
10
|
---
|
|
10
11
|
# Impact Checklist
|
|
11
12
|
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
13
|
+
- business rule, domain invariant, 상태 전이에 영향이 있는가?
|
|
14
|
+
- DB schema, migration, seed, data backfill, analytics event에 영향이 있는가?
|
|
15
|
+
- public API, GraphQL schema, CLI command, request/response, SDK contract가 바뀌는가?
|
|
16
|
+
- auth, permission, privacy, billing, credential, audit log에 영향이 있는가?
|
|
17
|
+
- external integration, webhook, cron, queue, cache, background job에 영향이 있는가?
|
|
18
|
+
- project-owned 문서, specs, runbook, operator guide, `docs/docs-status.md`, context-layer 갱신이 필요한가?
|
|
@@ -7,16 +7,30 @@ read_when:
|
|
|
7
7
|
update_when:
|
|
8
8
|
- workflow_changes
|
|
9
9
|
---
|
|
10
|
+
|
|
10
11
|
# Workflow
|
|
11
12
|
|
|
12
|
-
|
|
13
|
+
이 문서는 에이전트의 기본 구현/검증 루프를 대체하지 않는다. 프로젝트별 문맥을 언제 읽고, 변경 영향과 문서 갱신 필요성을 언제 판단할지 정한다.
|
|
14
|
+
|
|
15
|
+
## 전역 guardrail
|
|
16
|
+
|
|
17
|
+
모든 단계에서 `docs/agent/rules/stop-rules.md`를 적용한다. 삭제, reset, credential 노출, 운영 데이터 접근, 계획과 코드 구조 충돌처럼 위험하거나 모호한 지점은 진행 전에 멈추고 확인한다.
|
|
18
|
+
|
|
19
|
+
## 판단 흐름
|
|
20
|
+
|
|
21
|
+
1. Intent Routing: 요청이 구현, 리뷰, 조사, 문서, 운영작업 중 무엇인지 분류하고 `docs/agent/rules/routing-rules.md`를 확인한다.
|
|
22
|
+
2. Context Loading: `AGENTS.md`, `docs/agent/rules/00-agent-baseline.md`, `docs/agent/workflow.md`, 관련 `Active` 문서, 실제 코드와 파일을 확인한다.
|
|
23
|
+
3. Change Impact Analysis: 변경 전후에 `docs/agent/checks/impact-checklist.md`를 사용해 영향 범위를 찾는다.
|
|
24
|
+
4. Native Agent Execution: 구현, 수정, 검증 선택은 에이전트(e.g. codex)의 기본 작업 루프와 repo의 기존 패턴을 따른다.
|
|
25
|
+
5. Context Update: 변경 결과가 project-owned 문서, specs, `docs/docs-status.md`, `.ai-ops/context-layer.json`에 영향을 주는지 판단한다.
|
|
26
|
+
6. Report: 결과, 실행한 검증, 갱신한 문서, 남은 리스크를 짧게 보고한다.
|
|
27
|
+
|
|
28
|
+
## 문서 사용 원칙
|
|
13
29
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
5. 변경 범위에 맞는 검증을 실행한다.
|
|
19
|
-
6. 결과, 검증, 남은 리스크를 짧게 보고한다.
|
|
30
|
+
- `Active` 문서만 현재 판단 근거로 사용한다.
|
|
31
|
+
- `Reserved` 문서는 자리만 만든 문서이므로 현재 사실로 인용하지 않는다.
|
|
32
|
+
- project-owned 문서가 비어 있거나 stale하면 실제 코드, 설정, schema, runtime 파일을 우선한다.
|
|
33
|
+
- 문서 상태가 애매하면 `docs/docs-status.md`와 각 문서 frontmatter를 함께 확인한다.
|
|
20
34
|
|
|
21
35
|
## 보존 원칙
|
|
22
36
|
|
package/data/skills/README.ko.md
CHANGED
|
@@ -65,7 +65,7 @@ apps/cli/data/skills/
|
|
|
65
65
|
|
|
66
66
|
1. 디렉터리 이름은 frontmatter `name`과 정확히 일치해야 합니다.
|
|
67
67
|
2. `SKILL.md`는 YAML frontmatter로 시작해야 합니다.
|
|
68
|
-
3. `kind`, `supported_tools`,
|
|
68
|
+
3. `kind`, `supported_tools`, 표시/discovery grouping, `source_path`는 `skill-registry.json`에 둡니다.
|
|
69
69
|
4. `reference` skill은 `reference-skills/` 아래에 두고 `references/reference.md`를 포함해야 합니다.
|
|
70
70
|
5. `task` skill은 `task-skills/` 아래에 두고 실행 절차를 `SKILL.md`에 둡니다.
|
|
71
71
|
6. 같은 상세 내용을 `SKILL.md`와 `references/`에 중복하지 않습니다.
|
|
@@ -77,23 +77,22 @@ apps/cli/data/skills/
|
|
|
77
77
|
|
|
78
78
|
`SKILL.md` frontmatter는 이제 agent-facing 용도입니다. CLI는 아래 필수 필드를 검증하고, 추가 도구별 frontmatter 필드는 무시합니다.
|
|
79
79
|
|
|
80
|
-
| 필드
|
|
81
|
-
|
|
|
82
|
-
| `name`
|
|
83
|
-
| `description` | 예
|
|
80
|
+
| 필드 | 필수 | 예시 | 의미 |
|
|
81
|
+
| ------------- | ---- | --------------------------------------------- | ----------------------------------- |
|
|
82
|
+
| `name` | 예 | `graphql-contract` | 고유 skill 이름과 설치 디렉터리 key |
|
|
83
|
+
| `description` | 예 | `Use when changing GraphQL schema contracts.` | discovery/autotrigger 요약 |
|
|
84
84
|
|
|
85
85
|
## Registry 필드
|
|
86
86
|
|
|
87
87
|
`skill-registry.json`은 install/catalog SSOT입니다.
|
|
88
88
|
|
|
89
|
-
| 필드
|
|
90
|
-
|
|
|
91
|
-
| `id`
|
|
92
|
-
| `kind`
|
|
93
|
-
| `supported_tools` | 예
|
|
94
|
-
| `groups`
|
|
95
|
-
| `
|
|
96
|
-
| `source_path` | 예 | `reference-skills/graphql-contract` | skill source가 있는 상대 디렉터리 |
|
|
89
|
+
| 필드 | 필수 | 예시 | 의미 |
|
|
90
|
+
| ----------------- | ---- | ------------------------------------ | --------------------------------- |
|
|
91
|
+
| `id` | 예 | `graphql-contract` | canonical skill id |
|
|
92
|
+
| `kind` | 예 | `reference` / `task` | skill category |
|
|
93
|
+
| `supported_tools` | 예 | `["claude-code", "codex", "gemini"]` | 설치 가능한 도구 |
|
|
94
|
+
| `groups` | 예 | `["frontend-web"]` | 표시/discovery grouping |
|
|
95
|
+
| `source_path` | 예 | `reference-skills/graphql-contract` | skill source가 있는 상대 디렉터리 |
|
|
97
96
|
|
|
98
97
|
## Content 배치
|
|
99
98
|
|
package/data/skills/README.md
CHANGED
|
@@ -65,7 +65,7 @@ apps/cli/data/skills/
|
|
|
65
65
|
|
|
66
66
|
1. Directory name must exactly match frontmatter `name`.
|
|
67
67
|
2. `SKILL.md` must start with YAML frontmatter.
|
|
68
|
-
3. `kind`, `supported_tools`,
|
|
68
|
+
3. `kind`, `supported_tools`, display grouping, and `source_path` live in `skill-registry.json`.
|
|
69
69
|
4. A `reference` skill must live under `reference-skills/` and include `references/reference.md`.
|
|
70
70
|
5. A `task` skill must live under `task-skills/` and keep its executable procedure in `SKILL.md`.
|
|
71
71
|
6. Do not duplicate the same detailed content across `SKILL.md` and `references/`.
|
|
@@ -86,14 +86,13 @@ apps/cli/data/skills/
|
|
|
86
86
|
|
|
87
87
|
`skill-registry.json` is the install/catalog SSOT.
|
|
88
88
|
|
|
89
|
-
| Field
|
|
90
|
-
|
|
|
91
|
-
| `id`
|
|
92
|
-
| `kind`
|
|
93
|
-
| `supported_tools`
|
|
94
|
-
| `groups`
|
|
95
|
-
| `
|
|
96
|
-
| `source_path` | Yes | `reference-skills/graphql-contract` | Relative directory that contains the skill source |
|
|
89
|
+
| Field | Required | Example | Meaning |
|
|
90
|
+
| ----------------- | -------- | ------------------------------------ | ------------------------------------------------- |
|
|
91
|
+
| `id` | Yes | `graphql-contract` | Canonical skill id |
|
|
92
|
+
| `kind` | Yes | `reference` / `task` | Skill category |
|
|
93
|
+
| `supported_tools` | Yes | `["claude-code", "codex", "gemini"]` | Where the skill may be installed |
|
|
94
|
+
| `groups` | Yes | `["frontend-web"]` | Display/discovery grouping |
|
|
95
|
+
| `source_path` | Yes | `reference-skills/graphql-contract` | Relative directory that contains the skill source |
|
|
97
96
|
|
|
98
97
|
## Content Placement
|
|
99
98
|
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
"kind": "reference",
|
|
6
6
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
7
7
|
"groups": ["backend-python"],
|
|
8
|
-
"included_in_presets": [],
|
|
9
8
|
"source_path": "reference-skills/ai-llm-python-runtime"
|
|
10
9
|
},
|
|
11
10
|
{
|
|
@@ -13,7 +12,6 @@
|
|
|
13
12
|
"kind": "reference",
|
|
14
13
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
15
14
|
"groups": ["backend-python"],
|
|
16
|
-
"included_in_presets": ["backend-python"],
|
|
17
15
|
"source_path": "reference-skills/backend-python-fastapi-runtime"
|
|
18
16
|
},
|
|
19
17
|
{
|
|
@@ -21,7 +19,6 @@
|
|
|
21
19
|
"kind": "reference",
|
|
22
20
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
23
21
|
"groups": ["backend-ts", "backend-python"],
|
|
24
|
-
"included_in_presets": ["backend-ts", "backend-python"],
|
|
25
22
|
"source_path": "reference-skills/backend-service-standards"
|
|
26
23
|
},
|
|
27
24
|
{
|
|
@@ -29,7 +26,6 @@
|
|
|
29
26
|
"kind": "reference",
|
|
30
27
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
31
28
|
"groups": ["backend-ts"],
|
|
32
|
-
"included_in_presets": ["backend-ts"],
|
|
33
29
|
"source_path": "reference-skills/backend-ts-nestjs-runtime"
|
|
34
30
|
},
|
|
35
31
|
{
|
|
@@ -37,7 +33,6 @@
|
|
|
37
33
|
"kind": "reference",
|
|
38
34
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
39
35
|
"groups": ["backend-python"],
|
|
40
|
-
"included_in_presets": [],
|
|
41
36
|
"source_path": "reference-skills/data-pipeline-python-performance"
|
|
42
37
|
},
|
|
43
38
|
{
|
|
@@ -45,7 +40,6 @@
|
|
|
45
40
|
"kind": "reference",
|
|
46
41
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
47
42
|
"groups": ["backend-ts"],
|
|
48
|
-
"included_in_presets": ["backend-ts"],
|
|
49
43
|
"source_path": "reference-skills/db-prisma-postgresql"
|
|
50
44
|
},
|
|
51
45
|
{
|
|
@@ -53,7 +47,6 @@
|
|
|
53
47
|
"kind": "reference",
|
|
54
48
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
55
49
|
"groups": ["backend-python"],
|
|
56
|
-
"included_in_presets": ["backend-python"],
|
|
57
50
|
"source_path": "reference-skills/db-sqlalchemy-postgresql"
|
|
58
51
|
},
|
|
59
52
|
{
|
|
@@ -61,7 +54,6 @@
|
|
|
61
54
|
"kind": "reference",
|
|
62
55
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
63
56
|
"groups": ["frontend-app"],
|
|
64
|
-
"included_in_presets": ["frontend-app"],
|
|
65
57
|
"source_path": "reference-skills/frontend-app-flutter-runtime"
|
|
66
58
|
},
|
|
67
59
|
{
|
|
@@ -69,7 +61,6 @@
|
|
|
69
61
|
"kind": "reference",
|
|
70
62
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
71
63
|
"groups": ["frontend-web"],
|
|
72
|
-
"included_in_presets": ["frontend-web"],
|
|
73
64
|
"source_path": "reference-skills/frontend-web-react-next-runtime"
|
|
74
65
|
},
|
|
75
66
|
{
|
|
@@ -77,7 +68,6 @@
|
|
|
77
68
|
"kind": "reference",
|
|
78
69
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
79
70
|
"groups": ["frontend-web"],
|
|
80
|
-
"included_in_presets": ["frontend-web"],
|
|
81
71
|
"source_path": "reference-skills/frontend-web-shadcn-ui"
|
|
82
72
|
},
|
|
83
73
|
{
|
|
@@ -85,7 +75,6 @@
|
|
|
85
75
|
"kind": "reference",
|
|
86
76
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
87
77
|
"groups": ["frontend-web", "frontend-app"],
|
|
88
|
-
"included_in_presets": ["frontend-web", "frontend-app"],
|
|
89
78
|
"source_path": "reference-skills/graphql-client-integration"
|
|
90
79
|
},
|
|
91
80
|
{
|
|
@@ -93,7 +82,6 @@
|
|
|
93
82
|
"kind": "reference",
|
|
94
83
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
95
84
|
"groups": ["frontend-web", "frontend-app", "backend-ts"],
|
|
96
|
-
"included_in_presets": ["frontend-web", "frontend-app", "backend-ts"],
|
|
97
85
|
"source_path": "reference-skills/graphql-contract"
|
|
98
86
|
},
|
|
99
87
|
{
|
|
@@ -101,7 +89,6 @@
|
|
|
101
89
|
"kind": "reference",
|
|
102
90
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
103
91
|
"groups": ["backend-ts"],
|
|
104
|
-
"included_in_presets": ["backend-ts"],
|
|
105
92
|
"source_path": "reference-skills/graphql-server-runtime"
|
|
106
93
|
},
|
|
107
94
|
{
|
|
@@ -109,7 +96,6 @@
|
|
|
109
96
|
"kind": "reference",
|
|
110
97
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
111
98
|
"groups": ["backend-python"],
|
|
112
|
-
"included_in_presets": ["backend-python"],
|
|
113
99
|
"source_path": "reference-skills/python-language"
|
|
114
100
|
},
|
|
115
101
|
{
|
|
@@ -117,7 +103,6 @@
|
|
|
117
103
|
"kind": "task",
|
|
118
104
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
119
105
|
"groups": ["agent-operating-layer"],
|
|
120
|
-
"included_in_presets": [],
|
|
121
106
|
"source_path": "task-skills/doc-impact-reviewer"
|
|
122
107
|
},
|
|
123
108
|
{
|
|
@@ -125,7 +110,6 @@
|
|
|
125
110
|
"kind": "task",
|
|
126
111
|
"supported_tools": ["codex"],
|
|
127
112
|
"groups": ["agent-operating-layer"],
|
|
128
|
-
"included_in_presets": [],
|
|
129
113
|
"source_path": "task-skills/context-promotion-review"
|
|
130
114
|
},
|
|
131
115
|
{
|
|
@@ -133,7 +117,6 @@
|
|
|
133
117
|
"kind": "task",
|
|
134
118
|
"supported_tools": ["codex"],
|
|
135
119
|
"groups": ["agent-operating-layer"],
|
|
136
|
-
"included_in_presets": [],
|
|
137
120
|
"source_path": "task-skills/pc"
|
|
138
121
|
},
|
|
139
122
|
{
|
|
@@ -141,7 +124,6 @@
|
|
|
141
124
|
"kind": "task",
|
|
142
125
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
143
126
|
"groups": [],
|
|
144
|
-
"included_in_presets": [],
|
|
145
127
|
"source_path": "task-skills/skill-load-check"
|
|
146
128
|
},
|
|
147
129
|
{
|
|
@@ -149,7 +131,6 @@
|
|
|
149
131
|
"kind": "task",
|
|
150
132
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
151
133
|
"groups": ["spec-lifecycle"],
|
|
152
|
-
"included_in_presets": [],
|
|
153
134
|
"source_path": "task-skills/spec-baseline-sync"
|
|
154
135
|
},
|
|
155
136
|
{
|
|
@@ -157,7 +138,6 @@
|
|
|
157
138
|
"kind": "task",
|
|
158
139
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
159
140
|
"groups": ["spec-lifecycle"],
|
|
160
|
-
"included_in_presets": [],
|
|
161
141
|
"source_path": "task-skills/spec-product-01-idea-to-brief"
|
|
162
142
|
},
|
|
163
143
|
{
|
|
@@ -165,7 +145,6 @@
|
|
|
165
145
|
"kind": "task",
|
|
166
146
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
167
147
|
"groups": ["spec-lifecycle"],
|
|
168
|
-
"included_in_presets": [],
|
|
169
148
|
"source_path": "task-skills/spec-product-02-brief-to-technical-context"
|
|
170
149
|
},
|
|
171
150
|
{
|
|
@@ -173,7 +152,6 @@
|
|
|
173
152
|
"kind": "task",
|
|
174
153
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
175
154
|
"groups": ["spec-lifecycle"],
|
|
176
|
-
"included_in_presets": [],
|
|
177
155
|
"source_path": "task-skills/spec-product-03-brief-to-product-spec"
|
|
178
156
|
},
|
|
179
157
|
{
|
|
@@ -181,7 +159,6 @@
|
|
|
181
159
|
"kind": "task",
|
|
182
160
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
183
161
|
"groups": ["spec-lifecycle"],
|
|
184
|
-
"included_in_presets": [],
|
|
185
162
|
"source_path": "task-skills/spec-product-04-product-spec-to-ui-spec"
|
|
186
163
|
},
|
|
187
164
|
{
|
|
@@ -189,7 +166,6 @@
|
|
|
189
166
|
"kind": "task",
|
|
190
167
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
191
168
|
"groups": ["spec-lifecycle"],
|
|
192
|
-
"included_in_presets": [],
|
|
193
169
|
"source_path": "task-skills/spec-product-05-spec-to-work-packets"
|
|
194
170
|
},
|
|
195
171
|
{
|
|
@@ -197,7 +173,6 @@
|
|
|
197
173
|
"kind": "task",
|
|
198
174
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
199
175
|
"groups": ["spec-lifecycle"],
|
|
200
|
-
"included_in_presets": [],
|
|
201
176
|
"source_path": "task-skills/spec-shared-glossary-sync"
|
|
202
177
|
},
|
|
203
178
|
{
|
|
@@ -205,7 +180,6 @@
|
|
|
205
180
|
"kind": "reference",
|
|
206
181
|
"supported_tools": ["claude-code", "codex", "gemini"],
|
|
207
182
|
"groups": ["frontend-web", "backend-ts"],
|
|
208
|
-
"included_in_presets": ["frontend-web", "backend-ts"],
|
|
209
183
|
"source_path": "reference-skills/typescript-language"
|
|
210
184
|
}
|
|
211
185
|
]
|
|
@@ -34,7 +34,7 @@ hook이 전달한 Project root가 이 검토의 유일한 프로젝트 기준이
|
|
|
34
34
|
- `docs/docs-status.md`
|
|
35
35
|
- `.ai-ops/context-layer.json`
|
|
36
36
|
- `docs/agent/rules/*`
|
|
37
|
-
- `docs/agent/checks
|
|
37
|
+
- `docs/agent/checks/impact-checklist.md`
|
|
38
38
|
5. context layer 파일이 없으면 absent로 기록하고, 다른 repo에서 대체 근거를 찾지 않는다.
|
|
39
39
|
6. 이미 있는 규칙이면 `already-covered`로 보고하고 새 승격 후보로 만들지 않는다.
|
|
40
40
|
7. 새 후보가 있으면 `core`, `project-local`, `global` 중 하나 이상으로 분류하고, 추천 위치를 제안한다.
|
|
@@ -41,7 +41,6 @@ staged 변경과 untracked 파일도 구현 영향에 포함한다.
|
|
|
41
41
|
- `.ai-ops/context-layer.json`
|
|
42
42
|
- `docs/agent/rules/doc-update-rules.md`
|
|
43
43
|
- `docs/agent/checks/impact-checklist.md`
|
|
44
|
-
- `docs/agent/checks/review-checklist.md`
|
|
45
44
|
|
|
46
45
|
필요하면 변경 파일과 가까운 README, runbook, spec, API 문서도 읽되, 전체 문서를 기계적으로 훑지 않는다.
|
|
47
46
|
|