ai-developer-skill-os 8.2.1 → 8.3.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.
- package/.agents/LICENSE +21 -21
- package/.agents/README.md +90 -90
- package/.agents/docs/CHI_TIET_SKILLS.md +125 -125
- package/.agents/docs/MIGRATION-CLEANUP-V8.1.3.md +36 -36
- package/.agents/docs/MIGRATION-STATUS.md +35 -35
- package/.agents/docs/MIGRATION-V8.md +10 -10
- package/.agents/docs/V8-CERTIFICATION.md +27 -27
- package/.agents/docs/decisions/ADR-001-v8-migration.md +58 -58
- package/.agents/docs/decisions/ADR-002-workflow-separation.md +50 -50
- package/.agents/docs/decisions/ADR-003-registry-generated.md +54 -54
- package/.agents/docs/decisions/ADR-008-skill-boundary-review.md +27 -27
- package/.agents/registry/capability-graph.yml +67 -25
- package/.agents/registry/graph.json +135 -256
- package/.agents/registry/index.yaml +68 -95
- package/.agents/registry/skills-index.yml +548 -525
- package/.agents/rules/anti-patterns.md +45 -0
- package/.agents/rules/coding.md +10 -0
- package/.agents/rules/command-safety.md +37 -14
- package/.agents/rules/priorities.yml +13 -2
- package/.agents/rules/security.md +47 -7
- package/.agents/rules/skill-quality.md +32 -8
- package/.agents/skills/_template/SKILL.md +133 -132
- package/.agents/skills/_template/capability.yaml +22 -8
- package/.agents/skills/_template/evals/scorecard.yaml +19 -19
- package/.agents/skills/qk-access-policy/SKILL.md +5 -2
- package/.agents/skills/qk-access-policy/capability.yaml +23 -0
- package/.agents/skills/qk-access-policy/evals/scorecard.yaml +36 -0
- package/.agents/skills/qk-agent-observability/SKILL.md +112 -1
- package/.agents/skills/qk-agent-observability/capability.yaml +29 -0
- package/.agents/skills/qk-agent-observability/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-agent-observability/references/scorecard.yaml +80 -0
- package/.agents/skills/qk-ai-builder/SKILL.md +75 -6
- package/.agents/skills/qk-ai-builder/capability.yaml +23 -0
- package/.agents/skills/qk-ai-builder/evals/scorecard.yaml +30 -0
- package/.agents/skills/qk-api-lifecycle/SKILL.md +5 -3
- package/.agents/skills/qk-api-lifecycle/capability.yaml +23 -0
- package/.agents/skills/qk-api-lifecycle/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-bug-resolution/SKILL.md +4 -22
- package/.agents/skills/qk-bug-resolution/capability.yaml +25 -0
- package/.agents/skills/qk-bug-resolution/evals/scorecard.yaml +30 -0
- package/.agents/skills/qk-code-review/SKILL.md +188 -186
- package/.agents/skills/qk-code-review/capability.yaml +23 -0
- package/.agents/skills/qk-code-review/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-context-loader/SKILL.md +4 -12
- package/.agents/skills/qk-context-loader/capability.yaml +23 -0
- package/.agents/skills/qk-context-loader/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-data-lifecycle/SKILL.md +7 -2
- package/.agents/skills/qk-data-lifecycle/capability.yaml +23 -0
- package/.agents/skills/qk-data-lifecycle/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-db-optimizer/SKILL.md +4 -3
- package/.agents/skills/qk-db-optimizer/capability.yaml +22 -0
- package/.agents/skills/qk-db-optimizer/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-design-system-engineering/SKILL.md +235 -112
- package/.agents/skills/qk-design-system-engineering/capability.yaml +25 -0
- package/.agents/skills/qk-design-system-engineering/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-devops-platform/SKILL.md +241 -117
- package/.agents/skills/qk-devops-platform/capability.yaml +29 -0
- package/.agents/skills/qk-devops-platform/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-docs/SKILL.md +4 -2
- package/.agents/skills/qk-docs/capability.yaml +23 -0
- package/.agents/skills/qk-docs/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-engineering-standard/SKILL.md +5 -76
- package/.agents/skills/qk-engineering-standard/capability.yaml +23 -0
- package/.agents/skills/qk-engineering-standard/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-engineering-standard/references/anti-patterns.md +121 -0
- package/.agents/skills/qk-engineering-standard/rules/frontend.md +1 -1
- package/.agents/skills/qk-fe-api-integration/SKILL.md +14 -33
- package/.agents/skills/qk-fe-api-integration/capability.yaml +21 -0
- package/.agents/skills/qk-fe-api-integration/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-feature-delivery/SKILL.md +54 -222
- package/.agents/skills/qk-feature-delivery/capability.yaml +24 -0
- package/.agents/skills/qk-feature-delivery/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-frontend-architecture/SKILL.md +258 -134
- package/.agents/skills/qk-frontend-architecture/capability.yaml +28 -0
- package/.agents/skills/qk-frontend-architecture/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-help/SKILL.md +23 -161
- package/.agents/skills/qk-help/capability.yaml +20 -0
- package/.agents/skills/qk-help/evals/scorecard.yaml +13 -0
- package/.agents/skills/qk-orchestrator/SKILL.md +3 -35
- package/.agents/skills/qk-orchestrator/capability.yaml +22 -0
- package/.agents/skills/qk-orchestrator/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-orchestrator/references/routing-table.md +15 -3
- package/.agents/skills/qk-product-specification/SKILL.md +253 -130
- package/.agents/skills/qk-product-specification/capability.yaml +27 -0
- package/.agents/skills/qk-product-specification/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-production-release/SKILL.md +33 -68
- package/.agents/skills/qk-production-release/capability.yaml +27 -0
- package/.agents/skills/qk-production-release/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-project-bootstrap/SKILL.md +59 -8
- package/.agents/skills/qk-project-bootstrap/capability.yaml +23 -0
- package/.agents/skills/qk-project-bootstrap/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-project-health/SKILL.md +5 -3
- package/.agents/skills/qk-project-health/capability.yaml +23 -0
- package/.agents/skills/qk-project-health/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-project-memory/SKILL.md +4 -2
- package/.agents/skills/qk-project-memory/capability.yaml +23 -0
- package/.agents/skills/qk-project-memory/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-refactor/SKILL.md +117 -0
- package/.agents/skills/qk-refactor/capability.yaml +26 -0
- package/.agents/skills/qk-refactor/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-security-audit/SKILL.md +259 -135
- package/.agents/skills/qk-security-audit/capability.yaml +30 -0
- package/.agents/skills/qk-security-audit/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-system-evolution/SKILL.md +18 -68
- package/.agents/skills/qk-system-evolution/capability.yaml +24 -0
- package/.agents/skills/qk-system-evolution/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-test-engineering/SKILL.md +262 -139
- package/.agents/skills/qk-test-engineering/capability.yaml +28 -0
- package/.agents/skills/qk-test-engineering/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-ui-audit/SKILL.md +17 -90
- package/.agents/skills/qk-ui-audit/capability.yaml +23 -0
- package/.agents/skills/qk-ui-audit/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-ui-audit/references/anti-slop-checklist.md +2 -2
- package/.agents/skills/qk-ui-builder/SKILL.md +482 -509
- package/.agents/skills/qk-ui-builder/capability.yaml +29 -0
- package/.agents/skills/qk-ui-builder/references/component-cookbook.md +455 -1191
- package/.agents/skills/qk-ui-system-builder/SKILL.md +2 -6
- package/.agents/skills/qk-ui-system-builder/capability.yaml +25 -0
- package/.agents/skills/qk-ui-system-builder/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-validation-gate/SKILL.md +1 -75
- package/.agents/skills/qk-validation-gate/capability.yaml +23 -0
- package/.agents/skills/qk-validation-gate/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-web-quality-gate/SKILL.md +232 -114
- package/.agents/skills/qk-web-quality-gate/capability.yaml +24 -0
- package/.agents/skills/qk-web-quality-gate/evals/scorecard.yaml +26 -0
- package/.agents/workflows/_schema.yml +146 -109
- package/.agents/workflows/bug-resolution.yml +121 -101
- package/.agents/workflows/code-review.yml +93 -77
- package/.agents/workflows/documentation.yml +90 -75
- package/.agents/workflows/feature-delivery.yml +120 -103
- package/.agents/workflows/production-release.yml +173 -0
- package/.agents/workflows/refactor.yml +99 -81
- package/.agents/workflows/research.yml +75 -60
- package/.agents/workflows/security-audit.yml +115 -72
- package/.agents/workflows/skill-evolution.yml +97 -65
- package/.agents/workflows/spec-driven-development.yml +87 -57
- package/CHANGELOG.md +27 -0
- package/README.md +90 -90
- package/bin/install.js +329 -179
- package/package.json +4 -2
- package/tooling/build-registry.js +186 -186
- package/tooling/fix-refactor.js +8 -0
- package/tooling/sync-versions.js +49 -0
- package/tooling/validate-graph.js +87 -87
- package/.agents/CHANGELOG.md +0 -131
- package/.agents/learnings/draft/README.md +0 -37
- package/.agents/reports/RELEASE-CHECKLIST.md +0 -29
- package/.agents/reports/architecture-audit.md +0 -13
- package/.agents/reports/graph-health.md +0 -20
- package/.agents/reports/skill-audit.md +0 -215
- package/tooling/generate-registry.js +0 -157
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# V8 Migration Protocol
|
|
2
|
-
|
|
3
|
-
Every migrated skill MUST meet the following criteria before being marked as `status: stable`:
|
|
4
|
-
|
|
5
|
-
- [ ] **Preserve original capability**: Do not alter the core instructions and behavior of the skill unless fixing bugs.
|
|
6
|
-
- [ ] **Add V8 frontmatter**: Update the frontmatter strictly according to `_template/SKILL.md`.
|
|
7
|
-
- [ ] **Map workflow**: Ensure `workflow` references an existing V8 workflow (e.g. `feature-delivery`, `bug-resolution`, `code-review`).
|
|
8
|
-
- [ ] **Define verification**: Include the `verification` block with a valid `strategy`.
|
|
9
|
-
- [ ] **Define selection**: Include the `selection` block with `priority` and appropriate `confidence_threshold`.
|
|
10
|
-
- [ ] **Generate registry successfully**: Must pass schema validation in `node tooling/validate-skills.js` and `node tooling/generate-registry.js` without warnings.
|
|
1
|
+
# V8 Migration Protocol
|
|
2
|
+
|
|
3
|
+
Every migrated skill MUST meet the following criteria before being marked as `status: stable`:
|
|
4
|
+
|
|
5
|
+
- [ ] **Preserve original capability**: Do not alter the core instructions and behavior of the skill unless fixing bugs.
|
|
6
|
+
- [ ] **Add V8 frontmatter**: Update the frontmatter strictly according to `_template/SKILL.md`.
|
|
7
|
+
- [ ] **Map workflow**: Ensure `workflow` references an existing V8 workflow (e.g. `feature-delivery`, `bug-resolution`, `code-review`).
|
|
8
|
+
- [ ] **Define verification**: Include the `verification` block with a valid `strategy`.
|
|
9
|
+
- [ ] **Define selection**: Include the `selection` block with `priority` and appropriate `confidence_threshold`.
|
|
10
|
+
- [ ] **Generate registry successfully**: Must pass schema validation in `node tooling/validate-skills.js` and `node tooling/generate-registry.js` without warnings.
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
# V8 Certification
|
|
2
|
-
|
|
3
|
-
V8 preserves validated V7 knowledge while introducing structured retrieval, workflow reuse, verification contracts, and lifecycle management.
|
|
4
|
-
|
|
5
|
-
Skills:
|
|
6
|
-
22/22 stable
|
|
7
|
-
|
|
8
|
-
Registry:
|
|
9
|
-
generated
|
|
10
|
-
|
|
11
|
-
Schema:
|
|
12
|
-
validated
|
|
13
|
-
|
|
14
|
-
Legacy:
|
|
15
|
-
0
|
|
16
|
-
|
|
17
|
-
Retrieval tests:
|
|
18
|
-
PASS
|
|
19
|
-
|
|
20
|
-
Workflow tests:
|
|
21
|
-
PASS
|
|
22
|
-
|
|
23
|
-
Ambiguity:
|
|
24
|
-
PASS
|
|
25
|
-
|
|
26
|
-
Migration:
|
|
27
|
-
completed
|
|
1
|
+
# V8 Certification
|
|
2
|
+
|
|
3
|
+
V8 preserves validated V7 knowledge while introducing structured retrieval, workflow reuse, verification contracts, and lifecycle management.
|
|
4
|
+
|
|
5
|
+
Skills:
|
|
6
|
+
22/22 stable
|
|
7
|
+
|
|
8
|
+
Registry:
|
|
9
|
+
generated
|
|
10
|
+
|
|
11
|
+
Schema:
|
|
12
|
+
validated
|
|
13
|
+
|
|
14
|
+
Legacy:
|
|
15
|
+
0
|
|
16
|
+
|
|
17
|
+
Retrieval tests:
|
|
18
|
+
PASS
|
|
19
|
+
|
|
20
|
+
Workflow tests:
|
|
21
|
+
PASS
|
|
22
|
+
|
|
23
|
+
Ambiguity:
|
|
24
|
+
PASS
|
|
25
|
+
|
|
26
|
+
Migration:
|
|
27
|
+
completed
|
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
# ADR-001: V8 Architecture Migration Strategy
|
|
2
|
-
|
|
3
|
-
**Date:** 2026-07
|
|
4
|
-
**Status:** Accepted
|
|
5
|
-
**Deciders:** Quang Khánh
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Context
|
|
10
|
-
|
|
11
|
-
V7 (7.5.1) had 22 skills, each a monolithic SKILL.md containing:
|
|
12
|
-
- Routing logic
|
|
13
|
-
- Execution workflow
|
|
14
|
-
- Verification steps
|
|
15
|
-
- Rules and policies
|
|
16
|
-
|
|
17
|
-
This made skills hard to reuse, workflows inconsistent across skills, and AI agents often confused about which skill to choose.
|
|
18
|
-
|
|
19
|
-
---
|
|
20
|
-
|
|
21
|
-
## Decision
|
|
22
|
-
|
|
23
|
-
Migrate to V8 **Agent Knowledge System** using **Structured Monolith** approach:
|
|
24
|
-
|
|
25
|
-
1. **Keep skills** — don't split SKILL.md into multiple files
|
|
26
|
-
2. **Add schema** — new frontmatter fields (intent, triggers, workflow ref, verification)
|
|
27
|
-
3. **Extract workflows** — move execution pipelines to shared `workflows/*.yml`
|
|
28
|
-
4. **Extract rules** — move global policies to `rules/*.md`
|
|
29
|
-
5. **Add registry** — generated `registry/skills-index.yml` for AI retrieval
|
|
30
|
-
|
|
31
|
-
---
|
|
32
|
-
|
|
33
|
-
## Rationale
|
|
34
|
-
|
|
35
|
-
**Why not split SKILL.md into separate files?**
|
|
36
|
-
- Migration cost too high (22 skills × 4 extractions = 88 operations)
|
|
37
|
-
- Risk of losing embedded knowledge in the split
|
|
38
|
-
- Structured Monolith achieves the same retrieval benefit via references
|
|
39
|
-
|
|
40
|
-
**Why pilot 5 skills first?**
|
|
41
|
-
- Schema may need adjustment based on real agent behavior
|
|
42
|
-
- Safer to validate on 5 before committing to 22
|
|
43
|
-
|
|
44
|
-
**Why keep git history instead of `archive/` folder?**
|
|
45
|
-
- V7.5.1 tagged at git → complete history available
|
|
46
|
-
- Archive folder in repo creates noise for AI agents
|
|
47
|
-
- Clean break is cleaner than carrying historical artifacts
|
|
48
|
-
|
|
49
|
-
---
|
|
50
|
-
|
|
51
|
-
## Consequences
|
|
52
|
-
|
|
53
|
-
- ✅ Workflows are now reusable (shared across skills)
|
|
54
|
-
- ✅ AI retrieval is faster (registry index)
|
|
55
|
-
- ✅ Rules are explicit and non-duplicated
|
|
56
|
-
- ✅ Verification is mandatory and standardized
|
|
57
|
-
- ⚠️ New schema requires migration of all 22 skills (3 weeks)
|
|
58
|
-
- ⚠️ `skills.json` is now generated, not authoritative
|
|
1
|
+
# ADR-001: V8 Architecture Migration Strategy
|
|
2
|
+
|
|
3
|
+
**Date:** 2026-07
|
|
4
|
+
**Status:** Accepted
|
|
5
|
+
**Deciders:** Quang Khánh
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Context
|
|
10
|
+
|
|
11
|
+
V7 (7.5.1) had 22 skills, each a monolithic SKILL.md containing:
|
|
12
|
+
- Routing logic
|
|
13
|
+
- Execution workflow
|
|
14
|
+
- Verification steps
|
|
15
|
+
- Rules and policies
|
|
16
|
+
|
|
17
|
+
This made skills hard to reuse, workflows inconsistent across skills, and AI agents often confused about which skill to choose.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Decision
|
|
22
|
+
|
|
23
|
+
Migrate to V8 **Agent Knowledge System** using **Structured Monolith** approach:
|
|
24
|
+
|
|
25
|
+
1. **Keep skills** — don't split SKILL.md into multiple files
|
|
26
|
+
2. **Add schema** — new frontmatter fields (intent, triggers, workflow ref, verification)
|
|
27
|
+
3. **Extract workflows** — move execution pipelines to shared `workflows/*.yml`
|
|
28
|
+
4. **Extract rules** — move global policies to `rules/*.md`
|
|
29
|
+
5. **Add registry** — generated `registry/skills-index.yml` for AI retrieval
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Rationale
|
|
34
|
+
|
|
35
|
+
**Why not split SKILL.md into separate files?**
|
|
36
|
+
- Migration cost too high (22 skills × 4 extractions = 88 operations)
|
|
37
|
+
- Risk of losing embedded knowledge in the split
|
|
38
|
+
- Structured Monolith achieves the same retrieval benefit via references
|
|
39
|
+
|
|
40
|
+
**Why pilot 5 skills first?**
|
|
41
|
+
- Schema may need adjustment based on real agent behavior
|
|
42
|
+
- Safer to validate on 5 before committing to 22
|
|
43
|
+
|
|
44
|
+
**Why keep git history instead of `archive/` folder?**
|
|
45
|
+
- V7.5.1 tagged at git → complete history available
|
|
46
|
+
- Archive folder in repo creates noise for AI agents
|
|
47
|
+
- Clean break is cleaner than carrying historical artifacts
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Consequences
|
|
52
|
+
|
|
53
|
+
- ✅ Workflows are now reusable (shared across skills)
|
|
54
|
+
- ✅ AI retrieval is faster (registry index)
|
|
55
|
+
- ✅ Rules are explicit and non-duplicated
|
|
56
|
+
- ✅ Verification is mandatory and standardized
|
|
57
|
+
- ⚠️ New schema requires migration of all 22 skills (3 weeks)
|
|
58
|
+
- ⚠️ `skills.json` is now generated, not authoritative
|
|
@@ -1,50 +1,50 @@
|
|
|
1
|
-
# ADR-002: Workflow Separation from Skills
|
|
2
|
-
|
|
3
|
-
**Date:** 2026-07
|
|
4
|
-
**Status:** Accepted
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## Context
|
|
9
|
-
|
|
10
|
-
In V7, each SKILL.md contained its own workflow embedded in the body. This meant:
|
|
11
|
-
- Workflow for bug-fixing existed in `qk-bug-resolution/SKILL.md`
|
|
12
|
-
- Similar steps were duplicated across multiple skills
|
|
13
|
-
- No way to reuse or compose workflows
|
|
14
|
-
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
## Decision
|
|
18
|
-
|
|
19
|
-
Extract workflows into dedicated `workflows/*.yml` files. Skills reference workflows by name:
|
|
20
|
-
|
|
21
|
-
```yaml
|
|
22
|
-
# In SKILL.md frontmatter:
|
|
23
|
-
workflow: bug-resolution # → workflows/bug-resolution.yml
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
Each workflow step MUST define `inputs` and `outputs` (not just `actions`) so agents understand what a step achieves, not just how to do it.
|
|
27
|
-
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
## Rationale
|
|
31
|
-
|
|
32
|
-
**Why YAML instead of Markdown?**
|
|
33
|
-
- Machine-readable: easier for agents to parse step inputs/outputs
|
|
34
|
-
- Structured: enforces schema compliance
|
|
35
|
-
- If found to be too rigid, can switch to Markdown+frontmatter without breaking skill references
|
|
36
|
-
|
|
37
|
-
**Why inputs/outputs per step?**
|
|
38
|
-
- Agents need to know WHAT each step achieves, not just HOW
|
|
39
|
-
- Enables future: step skipping based on already-available outputs
|
|
40
|
-
- Better debugging: "step X failed because output Y was not produced"
|
|
41
|
-
|
|
42
|
-
---
|
|
43
|
-
|
|
44
|
-
## Consequences
|
|
45
|
-
|
|
46
|
-
- ✅ Workflows are reusable across skills
|
|
47
|
-
- ✅ Each step has clear contract (inputs → outputs)
|
|
48
|
-
- ✅ Easier to add new skills that reuse existing workflows
|
|
49
|
-
- ⚠️ YAML can be verbose — acceptable tradeoff for clarity
|
|
50
|
-
- ⚠️ If workflow changes, all referencing skills remain valid (they only reference by name)
|
|
1
|
+
# ADR-002: Workflow Separation from Skills
|
|
2
|
+
|
|
3
|
+
**Date:** 2026-07
|
|
4
|
+
**Status:** Accepted
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Context
|
|
9
|
+
|
|
10
|
+
In V7, each SKILL.md contained its own workflow embedded in the body. This meant:
|
|
11
|
+
- Workflow for bug-fixing existed in `qk-bug-resolution/SKILL.md`
|
|
12
|
+
- Similar steps were duplicated across multiple skills
|
|
13
|
+
- No way to reuse or compose workflows
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Decision
|
|
18
|
+
|
|
19
|
+
Extract workflows into dedicated `workflows/*.yml` files. Skills reference workflows by name:
|
|
20
|
+
|
|
21
|
+
```yaml
|
|
22
|
+
# In SKILL.md frontmatter:
|
|
23
|
+
workflow: bug-resolution # → workflows/bug-resolution.yml
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Each workflow step MUST define `inputs` and `outputs` (not just `actions`) so agents understand what a step achieves, not just how to do it.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Rationale
|
|
31
|
+
|
|
32
|
+
**Why YAML instead of Markdown?**
|
|
33
|
+
- Machine-readable: easier for agents to parse step inputs/outputs
|
|
34
|
+
- Structured: enforces schema compliance
|
|
35
|
+
- If found to be too rigid, can switch to Markdown+frontmatter without breaking skill references
|
|
36
|
+
|
|
37
|
+
**Why inputs/outputs per step?**
|
|
38
|
+
- Agents need to know WHAT each step achieves, not just HOW
|
|
39
|
+
- Enables future: step skipping based on already-available outputs
|
|
40
|
+
- Better debugging: "step X failed because output Y was not produced"
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Consequences
|
|
45
|
+
|
|
46
|
+
- ✅ Workflows are reusable across skills
|
|
47
|
+
- ✅ Each step has clear contract (inputs → outputs)
|
|
48
|
+
- ✅ Easier to add new skills that reuse existing workflows
|
|
49
|
+
- ⚠️ YAML can be verbose — acceptable tradeoff for clarity
|
|
50
|
+
- ⚠️ If workflow changes, all referencing skills remain valid (they only reference by name)
|
|
@@ -1,54 +1,54 @@
|
|
|
1
|
-
# ADR-003: Registry as Generated Artifact
|
|
2
|
-
|
|
3
|
-
**Date:** 2026-07
|
|
4
|
-
**Status:** Accepted
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## Context
|
|
9
|
-
|
|
10
|
-
V7 had `skills.json` as the primary manifest — manually maintained, often drifting from actual SKILL.md content. This created two sources of truth.
|
|
11
|
-
|
|
12
|
-
V8 needs a retrieval index for AI agents to find the right skill without reading all 22 SKILL.md files.
|
|
13
|
-
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
## Decision
|
|
17
|
-
|
|
18
|
-
`registry/skills-index.yml` is a **generated file**. It is produced by `tooling/generate-registry.js` by reading all `SKILL.md` frontmatter.
|
|
19
|
-
|
|
20
|
-
`SKILL.md` is the single source of truth. The registry is a derivative.
|
|
21
|
-
|
|
22
|
-
```
|
|
23
|
-
SKILL.md (source of truth)
|
|
24
|
-
↓
|
|
25
|
-
tooling/generate-registry.js
|
|
26
|
-
↓
|
|
27
|
-
registry/skills-index.yml (DO NOT EDIT MANUALLY)
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
`skills.json` is kept as a compatibility manifest for platforms that expect it (e.g., Antigravity v7 convention). It is also generated, not manually maintained.
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## Rationale
|
|
35
|
-
|
|
36
|
-
**Why not edit the registry manually?**
|
|
37
|
-
- Two sources of truth always drift
|
|
38
|
-
- Triggers, intent, complexity are already defined in SKILL.md
|
|
39
|
-
- Generator can be run as a pre-commit hook or on demand
|
|
40
|
-
|
|
41
|
-
**Why keep skills.json?**
|
|
42
|
-
- Antigravity and some platforms discover skills via `skills.json`
|
|
43
|
-
- Backward compatibility for v7 skill consumers
|
|
44
|
-
- It's generated, so no maintenance burden
|
|
45
|
-
|
|
46
|
-
---
|
|
47
|
-
|
|
48
|
-
## Consequences
|
|
49
|
-
|
|
50
|
-
- ✅ Single source of truth: SKILL.md
|
|
51
|
-
- ✅ No drift between skill and registry
|
|
52
|
-
- ✅ Registry update is automatic when skills are updated
|
|
53
|
-
- ⚠️ Requires running generator after any SKILL.md change
|
|
54
|
-
- ⚠️ If generator is not run, registry may be stale (mitigated by pre-commit hook)
|
|
1
|
+
# ADR-003: Registry as Generated Artifact
|
|
2
|
+
|
|
3
|
+
**Date:** 2026-07
|
|
4
|
+
**Status:** Accepted
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Context
|
|
9
|
+
|
|
10
|
+
V7 had `skills.json` as the primary manifest — manually maintained, often drifting from actual SKILL.md content. This created two sources of truth.
|
|
11
|
+
|
|
12
|
+
V8 needs a retrieval index for AI agents to find the right skill without reading all 22 SKILL.md files.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Decision
|
|
17
|
+
|
|
18
|
+
`registry/skills-index.yml` is a **generated file**. It is produced by `tooling/generate-registry.js` by reading all `SKILL.md` frontmatter.
|
|
19
|
+
|
|
20
|
+
`SKILL.md` is the single source of truth. The registry is a derivative.
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
SKILL.md (source of truth)
|
|
24
|
+
↓
|
|
25
|
+
tooling/generate-registry.js
|
|
26
|
+
↓
|
|
27
|
+
registry/skills-index.yml (DO NOT EDIT MANUALLY)
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
`skills.json` is kept as a compatibility manifest for platforms that expect it (e.g., Antigravity v7 convention). It is also generated, not manually maintained.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Rationale
|
|
35
|
+
|
|
36
|
+
**Why not edit the registry manually?**
|
|
37
|
+
- Two sources of truth always drift
|
|
38
|
+
- Triggers, intent, complexity are already defined in SKILL.md
|
|
39
|
+
- Generator can be run as a pre-commit hook or on demand
|
|
40
|
+
|
|
41
|
+
**Why keep skills.json?**
|
|
42
|
+
- Antigravity and some platforms discover skills via `skills.json`
|
|
43
|
+
- Backward compatibility for v7 skill consumers
|
|
44
|
+
- It's generated, so no maintenance burden
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## Consequences
|
|
49
|
+
|
|
50
|
+
- ✅ Single source of truth: SKILL.md
|
|
51
|
+
- ✅ No drift between skill and registry
|
|
52
|
+
- ✅ Registry update is automatic when skills are updated
|
|
53
|
+
- ⚠️ Requires running generator after any SKILL.md change
|
|
54
|
+
- ⚠️ If generator is not run, registry may be stale (mitigated by pre-commit hook)
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
# ADR 008: Skill Boundary Review (V8.1.3)
|
|
2
|
-
|
|
3
|
-
## Tiêu đề
|
|
4
|
-
Định hướng tương lai cho ranh giới của `qk-validation-gate` và `qk-ai-builder`.
|
|
5
|
-
|
|
6
|
-
## Bối cảnh
|
|
7
|
-
Trong quá trình hoàn thiện Agent Engineering OS (V8.1.3), quá trình kiểm toán phát hiện rằng một số skill ban đầu có phạm vi hoạt động (scope) quá rộng hoặc chưa phân vai rõ ràng, dễ dẫn đến conflict. Tuy nhiên, để không làm vỡ kiến trúc (scope creep) trong giai đoạn chốt Control Plane, chúng ta quyết định giữ nguyên nhưng ghi chú định hướng cho V8.2.
|
|
8
|
-
|
|
9
|
-
## Quyết định
|
|
10
|
-
|
|
11
|
-
### 1. Về `qk-validation-gate`
|
|
12
|
-
- **Hiện trạng:** Đang đóng vai trò validation coordinator.
|
|
13
|
-
- **Định hướng (V8.2):** Sẽ được định hình rõ thành `release decision orchestrator`.
|
|
14
|
-
- **Ranh giới tương lai:** Không trực tiếp chạy test, không trực tiếp scan security, không audit quality. Nhiệm vụ của nó là tổng hợp kết quả từ `qk-test-engineering`, `qk-security-audit`, và `qk-web-quality-gate` để ra quyết định cuối cùng (gate decision).
|
|
15
|
-
|
|
16
|
-
### 2. Về `qk-ai-builder`
|
|
17
|
-
- **Hiện trạng:** Đang quá rộng (gồm cả frontend AI apps, general AI coding, prompt writing...).
|
|
18
|
-
- **Định hướng (V8.2):** Đổi tên (rename semantic) thành `qk-agent-platform-engineering`.
|
|
19
|
-
- **Ranh giới tương lai:**
|
|
20
|
-
- **Owns:** agent architecture, MCP integration, skill generation, agent runtime patterns.
|
|
21
|
-
- **Does not own:** frontend AI apps, general AI coding, prompt writing.
|
|
22
|
-
|
|
23
|
-
## Trạng thái
|
|
24
|
-
Đề xuất được chấp nhận (Deferred to V8.2).
|
|
25
|
-
|
|
26
|
-
## Hệ quả
|
|
27
|
-
Ngăn chặn các kỹ năng này bị phình to trong quá trình triển khai thực tế. Chuẩn bị sẵn sàng cấu trúc cho giai đoạn V8.2 (Self-Improving Agent).
|
|
1
|
+
# ADR 008: Skill Boundary Review (V8.1.3)
|
|
2
|
+
|
|
3
|
+
## Tiêu đề
|
|
4
|
+
Định hướng tương lai cho ranh giới của `qk-validation-gate` và `qk-ai-builder`.
|
|
5
|
+
|
|
6
|
+
## Bối cảnh
|
|
7
|
+
Trong quá trình hoàn thiện Agent Engineering OS (V8.1.3), quá trình kiểm toán phát hiện rằng một số skill ban đầu có phạm vi hoạt động (scope) quá rộng hoặc chưa phân vai rõ ràng, dễ dẫn đến conflict. Tuy nhiên, để không làm vỡ kiến trúc (scope creep) trong giai đoạn chốt Control Plane, chúng ta quyết định giữ nguyên nhưng ghi chú định hướng cho V8.2.
|
|
8
|
+
|
|
9
|
+
## Quyết định
|
|
10
|
+
|
|
11
|
+
### 1. Về `qk-validation-gate`
|
|
12
|
+
- **Hiện trạng:** Đang đóng vai trò validation coordinator.
|
|
13
|
+
- **Định hướng (V8.2):** Sẽ được định hình rõ thành `release decision orchestrator`.
|
|
14
|
+
- **Ranh giới tương lai:** Không trực tiếp chạy test, không trực tiếp scan security, không audit quality. Nhiệm vụ của nó là tổng hợp kết quả từ `qk-test-engineering`, `qk-security-audit`, và `qk-web-quality-gate` để ra quyết định cuối cùng (gate decision).
|
|
15
|
+
|
|
16
|
+
### 2. Về `qk-ai-builder`
|
|
17
|
+
- **Hiện trạng:** Đang quá rộng (gồm cả frontend AI apps, general AI coding, prompt writing...).
|
|
18
|
+
- **Định hướng (V8.2):** Đổi tên (rename semantic) thành `qk-agent-platform-engineering`.
|
|
19
|
+
- **Ranh giới tương lai:**
|
|
20
|
+
- **Owns:** agent architecture, MCP integration, skill generation, agent runtime patterns.
|
|
21
|
+
- **Does not own:** frontend AI apps, general AI coding, prompt writing.
|
|
22
|
+
|
|
23
|
+
## Trạng thái
|
|
24
|
+
Đề xuất được chấp nhận (Deferred to V8.2).
|
|
25
|
+
|
|
26
|
+
## Hệ quả
|
|
27
|
+
Ngăn chặn các kỹ năng này bị phình to trong quá trình triển khai thực tế. Chuẩn bị sẵn sàng cấu trúc cho giai đoạn V8.2 (Self-Improving Agent).
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# registry/capability-graph.yml
|
|
2
|
-
# GENERATED FILE
|
|
2
|
+
# GENERATED FILE - DO NOT EDIT MANUALLY.
|
|
3
3
|
version: 8.1.3
|
|
4
|
-
generated_at: '2026-07-
|
|
4
|
+
generated_at: '2026-07-29T07:30:08.002Z'
|
|
5
5
|
nodes:
|
|
6
6
|
qk-access-policy:
|
|
7
7
|
type: capability
|
|
@@ -24,6 +24,7 @@ nodes:
|
|
|
24
24
|
- infrastructure_monitoring
|
|
25
25
|
- log_aggregation
|
|
26
26
|
- uptime_monitoring
|
|
27
|
+
- pass_fail_enforcement
|
|
27
28
|
conflicts: []
|
|
28
29
|
workflow: skill-evolution
|
|
29
30
|
qk-ai-builder:
|
|
@@ -47,6 +48,13 @@ nodes:
|
|
|
47
48
|
does_not_own: []
|
|
48
49
|
conflicts: []
|
|
49
50
|
workflow: bug-resolution
|
|
51
|
+
qk-code-review:
|
|
52
|
+
type: utility
|
|
53
|
+
maturity: stable
|
|
54
|
+
owns: []
|
|
55
|
+
does_not_own: []
|
|
56
|
+
conflicts: []
|
|
57
|
+
workflow: code-review
|
|
50
58
|
qk-context-loader:
|
|
51
59
|
type: utility
|
|
52
60
|
maturity: stable
|
|
@@ -142,7 +150,7 @@ nodes:
|
|
|
142
150
|
owns: []
|
|
143
151
|
does_not_own: []
|
|
144
152
|
conflicts: []
|
|
145
|
-
workflow:
|
|
153
|
+
workflow: documentation
|
|
146
154
|
qk-orchestrator:
|
|
147
155
|
type: orchestrator
|
|
148
156
|
maturity: stable
|
|
@@ -165,10 +173,15 @@ nodes:
|
|
|
165
173
|
qk-production-release:
|
|
166
174
|
type: capability
|
|
167
175
|
maturity: stable
|
|
168
|
-
owns:
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
176
|
+
owns:
|
|
177
|
+
- release-gate-checklist
|
|
178
|
+
- deployment-readiness-verdict
|
|
179
|
+
does_not_own:
|
|
180
|
+
- ci-cd-pipeline-design
|
|
181
|
+
- infrastructure-provisioning
|
|
182
|
+
conflicts:
|
|
183
|
+
- qk-devops-platform
|
|
184
|
+
workflow: production-release
|
|
172
185
|
qk-project-bootstrap:
|
|
173
186
|
type: capability
|
|
174
187
|
maturity: stable
|
|
@@ -190,6 +203,13 @@ nodes:
|
|
|
190
203
|
does_not_own: []
|
|
191
204
|
conflicts: []
|
|
192
205
|
workflow: documentation
|
|
206
|
+
qk-refactor:
|
|
207
|
+
type: capability
|
|
208
|
+
maturity: stable
|
|
209
|
+
owns: []
|
|
210
|
+
does_not_own: []
|
|
211
|
+
conflicts: []
|
|
212
|
+
workflow: refactor
|
|
193
213
|
qk-security-audit:
|
|
194
214
|
type: capability
|
|
195
215
|
maturity: experimental
|
|
@@ -230,19 +250,17 @@ nodes:
|
|
|
230
250
|
does_not_own: []
|
|
231
251
|
conflicts: []
|
|
232
252
|
workflow: code-review
|
|
233
|
-
qk-ui-builder:
|
|
234
|
-
type: capability
|
|
235
|
-
maturity: stable
|
|
236
|
-
owns: []
|
|
237
|
-
does_not_own: []
|
|
238
|
-
conflicts: []
|
|
239
|
-
workflow: feature-delivery
|
|
240
253
|
qk-ui-system-builder:
|
|
241
254
|
type: capability
|
|
242
255
|
maturity: stable
|
|
243
|
-
owns:
|
|
244
|
-
|
|
245
|
-
|
|
256
|
+
owns:
|
|
257
|
+
- tokens
|
|
258
|
+
- ui-system
|
|
259
|
+
does_not_own:
|
|
260
|
+
- page implementation
|
|
261
|
+
- visual direction
|
|
262
|
+
conflicts:
|
|
263
|
+
- qk-design-system-engineering
|
|
246
264
|
workflow: feature-delivery
|
|
247
265
|
qk-validation-gate:
|
|
248
266
|
type: utility
|
|
@@ -273,6 +291,9 @@ edges:
|
|
|
273
291
|
- from: qk-agent-observability
|
|
274
292
|
to: skill-evolution
|
|
275
293
|
relation: depends_on
|
|
294
|
+
- from: qk-agent-observability
|
|
295
|
+
to: qk-validation-gate
|
|
296
|
+
relation: feeds
|
|
276
297
|
- from: qk-ai-builder
|
|
277
298
|
to: feature-delivery
|
|
278
299
|
relation: depends_on
|
|
@@ -294,6 +315,18 @@ edges:
|
|
|
294
315
|
- from: qk-bug-resolution
|
|
295
316
|
to: qk-validation-gate
|
|
296
317
|
relation: feeds
|
|
318
|
+
- from: qk-code-review
|
|
319
|
+
to: code-review
|
|
320
|
+
relation: depends_on
|
|
321
|
+
- from: qk-code-review
|
|
322
|
+
to: qk-validation-gate
|
|
323
|
+
relation: feeds
|
|
324
|
+
- from: qk-code-review
|
|
325
|
+
to: qk-engineering-standard
|
|
326
|
+
relation: feeds
|
|
327
|
+
- from: qk-code-review
|
|
328
|
+
to: qk-project-health
|
|
329
|
+
relation: feeds
|
|
297
330
|
- from: qk-context-loader
|
|
298
331
|
to: research
|
|
299
332
|
relation: depends_on
|
|
@@ -394,7 +427,7 @@ edges:
|
|
|
394
427
|
to: qk-web-quality-gate
|
|
395
428
|
relation: feeds
|
|
396
429
|
- from: qk-help
|
|
397
|
-
to:
|
|
430
|
+
to: documentation
|
|
398
431
|
relation: depends_on
|
|
399
432
|
- from: qk-help
|
|
400
433
|
to: qk-orchestrator
|
|
@@ -418,8 +451,11 @@ edges:
|
|
|
418
451
|
to: qk-feature-delivery
|
|
419
452
|
relation: feeds
|
|
420
453
|
- from: qk-production-release
|
|
421
|
-
to:
|
|
454
|
+
to: production-release
|
|
422
455
|
relation: depends_on
|
|
456
|
+
- from: qk-production-release
|
|
457
|
+
to: qk-devops-platform
|
|
458
|
+
relation: conflicts_with
|
|
423
459
|
- from: qk-production-release
|
|
424
460
|
to: qk-validation-gate
|
|
425
461
|
relation: feeds
|
|
@@ -441,6 +477,15 @@ edges:
|
|
|
441
477
|
- from: qk-project-memory
|
|
442
478
|
to: qk-engineering-standard
|
|
443
479
|
relation: feeds
|
|
480
|
+
- from: qk-refactor
|
|
481
|
+
to: refactor
|
|
482
|
+
relation: depends_on
|
|
483
|
+
- from: qk-refactor
|
|
484
|
+
to: qk-engineering-standard
|
|
485
|
+
relation: feeds
|
|
486
|
+
- from: qk-refactor
|
|
487
|
+
to: qk-project-health
|
|
488
|
+
relation: feeds
|
|
444
489
|
- from: qk-security-audit
|
|
445
490
|
to: security-audit
|
|
446
491
|
relation: depends_on
|
|
@@ -474,15 +519,12 @@ edges:
|
|
|
474
519
|
- from: qk-ui-audit
|
|
475
520
|
to: qk-ui-builder
|
|
476
521
|
relation: feeds
|
|
477
|
-
- from: qk-ui-builder
|
|
478
|
-
to: feature-delivery
|
|
479
|
-
relation: depends_on
|
|
480
|
-
- from: qk-ui-builder
|
|
481
|
-
to: qk-ui-system-builder
|
|
482
|
-
relation: feeds
|
|
483
522
|
- from: qk-ui-system-builder
|
|
484
523
|
to: feature-delivery
|
|
485
524
|
relation: depends_on
|
|
525
|
+
- from: qk-ui-system-builder
|
|
526
|
+
to: qk-design-system-engineering
|
|
527
|
+
relation: conflicts_with
|
|
486
528
|
- from: qk-ui-system-builder
|
|
487
529
|
to: qk-ui-builder
|
|
488
530
|
relation: feeds
|