ai-developer-skill-os 7.0.2 → 7.5.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/AGENTS.md +44 -88
- package/.agents/CHANGELOG.md +70 -0
- package/.agents/LICENSE +21 -0
- package/.agents/README.md +100 -0
- package/.agents/docs/CHI_TIET_SKILLS.md +126 -0
- package/.agents/docs/GOVERNANCE.md +40 -0
- package/.agents/docs/HUONG_DAN_SU_DUNG.md +120 -0
- package/.agents/docs/SPEC.md +87 -0
- package/.agents/docs/adr/0001-intent-based-architecture.md +19 -0
- package/.agents/docs/adr/0002-kernel-freeze.md +21 -0
- package/.agents/docs/adr/0003-risk-based-verification.md +20 -0
- package/.agents/docs/adr/0004-progressive-evidence.md +19 -0
- package/.agents/docs/skill-classification.md +25 -0
- package/.agents/skills/qk-access-policy/SKILL.md +179 -0
- package/.agents/skills/qk-ai-builder/SKILL.md +215 -0
- package/.agents/skills/qk-api-lifecycle/SKILL.md +176 -0
- package/.agents/skills/qk-bug-resolution/SKILL.md +307 -0
- package/.agents/skills/qk-context-loader/SKILL.md +218 -0
- package/.agents/skills/qk-data-lifecycle/SKILL.md +192 -0
- package/.agents/skills/qk-db-optimizer/SKILL.md +196 -0
- package/.agents/skills/qk-docs/SKILL.md +198 -0
- package/.agents/skills/qk-engineering-standard/SKILL.md +351 -0
- package/.agents/skills/qk-engineering-standard/rules/backend.md +122 -0
- package/.agents/skills/qk-engineering-standard/rules/database.md +3 -0
- package/.agents/skills/qk-engineering-standard/rules/frontend.md +152 -0
- package/.agents/skills/qk-engineering-standard/rules/security.md +3 -0
- package/.agents/skills/qk-engineering-standard/rules/testing.md +3 -0
- package/.agents/skills/qk-fe-api-integration/SKILL.md +326 -0
- package/.agents/skills/qk-feature-delivery/SKILL.md +305 -0
- package/.agents/skills/qk-help/SKILL.md +193 -0
- package/.agents/skills/qk-orchestrator/SKILL.md +278 -0
- package/.agents/skills/qk-orchestrator/references/routing-table.md +78 -0
- package/.agents/skills/qk-production-release/SKILL.md +284 -0
- package/.agents/skills/qk-project-bootstrap/SKILL.md +235 -0
- package/.agents/skills/qk-project-health/SKILL.md +199 -0
- package/.agents/skills/qk-project-memory/SKILL.md +218 -0
- package/.agents/skills/qk-system-evolution/SKILL.md +281 -0
- package/.agents/skills/qk-ui-audit/SKILL.md +315 -0
- package/.agents/skills/qk-ui-audit/references/anti-slop-checklist.md +136 -0
- package/.agents/skills/qk-ui-builder/SKILL.md +446 -0
- package/.agents/skills/qk-ui-builder/references/anti-patterns.md +295 -0
- package/.agents/skills/qk-ui-builder/references/color.md +115 -0
- package/.agents/skills/qk-ui-builder/references/component-cookbook.md +1194 -0
- package/.agents/skills/qk-ui-builder/references/copy.md +250 -0
- package/.agents/skills/qk-ui-builder/references/interaction-and-states.md +115 -0
- package/.agents/skills/qk-ui-builder/references/layout-and-space.md +111 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/01-bento-grid.md +48 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/02-long-document.md +50 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/03-marquee-hero.md +51 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/04-stat-led.md +49 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/05-workbench.md +44 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/06-conversational-faq.md +50 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/07-manifesto.md +51 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/08-photographic.md +50 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/09-quote-led.md +50 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/11-catalogue.md +49 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/12-letter.md +49 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/13-index-first.md +49 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/14-narrative-workflow.md +48 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/15-split-studio.md +48 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/16-feature-stack.md +51 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/17-type-specimen.md +48 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/18-portfolio-grid.md +48 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/19-map-diagram.md +50 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/20-ecosystem-index.md +48 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures/21-component-playground.md +45 -0
- package/.agents/skills/qk-ui-builder/references/macrostructures.md +38 -0
- package/.agents/skills/qk-ui-builder/references/motion.md +95 -0
- package/.agents/skills/qk-ui-builder/references/responsive.md +115 -0
- package/.agents/skills/qk-ui-builder/references/slop-test.md +135 -0
- package/.agents/skills/qk-ui-builder/references/structure.md +280 -0
- package/.agents/skills/qk-ui-builder/references/themes/atmospheric.md +53 -0
- package/.agents/skills/qk-ui-builder/references/themes/carnival.md +52 -0
- package/.agents/skills/qk-ui-builder/references/themes/cobalt.md +52 -0
- package/.agents/skills/qk-ui-builder/references/themes/editorial.md +52 -0
- package/.agents/skills/qk-ui-builder/references/themes/garden.md +52 -0
- package/.agents/skills/qk-ui-builder/references/themes/hum.md +52 -0
- package/.agents/skills/qk-ui-builder/references/themes/lumen.md +52 -0
- package/.agents/skills/qk-ui-builder/references/themes/midnight.md +52 -0
- package/.agents/skills/qk-ui-builder/references/themes/modern-minimal.md +52 -0
- package/.agents/skills/qk-ui-builder/references/themes/playful.md +52 -0
- package/.agents/skills/qk-ui-builder/references/themes/specimen.md +52 -0
- package/.agents/skills/qk-ui-builder/references/themes/terminal.md +52 -0
- package/.agents/skills/qk-ui-builder/references/typography.md +129 -0
- package/.agents/skills/qk-ui-system-builder/SKILL.md +221 -0
- package/.agents/skills/qk-validation-gate/SKILL.md +359 -0
- package/.agents/skills.json +819 -0
- package/.github/workflows/ci.yml +1 -1
- package/CHANGELOG.md +2 -1
- package/CLAUDE.md +110 -0
- package/README.md +52 -10
- package/add_lang.js +21 -0
- package/add_lang.py +25 -0
- package/add_sections.py +53 -0
- package/bin/install.js +225 -170
- package/bin/lint.js +123 -0
- package/docs/CHI_TIET_SKILLS.md +27 -26
- package/docs/HUONG_DAN_SU_DUNG.md +3 -3
- package/docs/SPEC.md +70 -20
- package/framework/decision-primitives.md +2 -1
- package/framework/skill-schema.md +310 -0
- package/package.json +16 -5
- package/patch.js +15 -0
- package/patch.py +89 -0
- package/patch2.py +83 -0
- package/skills/_archive_old_skills/qk-accessibility-audit/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-agent-orchestrator/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-api-integration/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-auth-security/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-backend-architecture/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-bug-fix/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-component-generator/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-context-manager/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-database-engineer/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-deployment/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-design-system/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-form-builder/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-frontend-architecture/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-frontend-debug/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-frontend-performance/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-frontend-testing/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-git-engineer/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-help/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-migration/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-project-audit/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-refactor/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-state-management/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-table-crud-generator/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-ui-builder/SKILL.md +1 -0
- package/skills/_template/SKILL.md +239 -0
- package/skills/qk-access-policy/SKILL.md +180 -39
- package/skills/qk-ai-builder/SKILL.md +216 -40
- package/skills/qk-api-lifecycle/SKILL.md +177 -46
- package/skills/qk-bug-resolution/SKILL.md +308 -46
- package/skills/qk-context-loader/SKILL.md +219 -43
- package/skills/qk-data-lifecycle/SKILL.md +193 -44
- package/skills/qk-db-optimizer/SKILL.md +197 -41
- package/skills/qk-docs/SKILL.md +199 -40
- package/skills/qk-engineering-standard/SKILL.md +352 -42
- package/skills/qk-fe-api-integration/SKILL.md +327 -55
- package/skills/qk-feature-delivery/SKILL.md +306 -48
- package/skills/qk-help/SKILL.md +179 -23
- package/skills/qk-orchestrator/SKILL.md +279 -42
- package/skills/qk-orchestrator/references/routing-table.md +78 -0
- package/skills/qk-production-release/SKILL.md +285 -41
- package/skills/qk-project-bootstrap/SKILL.md +236 -38
- package/skills/qk-project-health/SKILL.md +200 -40
- package/skills/qk-project-memory/SKILL.md +219 -40
- package/skills/qk-system-evolution/SKILL.md +282 -40
- package/skills/qk-ui-audit/SKILL.md +316 -42
- package/skills/qk-ui-audit/references/anti-slop-checklist.md +136 -0
- package/skills/qk-ui-builder/SKILL.md +447 -0
- package/skills/qk-ui-builder/references/anti-patterns.md +295 -0
- package/skills/qk-ui-builder/references/color.md +115 -0
- package/skills/qk-ui-builder/references/component-cookbook.md +1194 -0
- package/skills/qk-ui-builder/references/copy.md +250 -0
- package/skills/qk-ui-builder/references/interaction-and-states.md +115 -0
- package/skills/qk-ui-builder/references/layout-and-space.md +111 -0
- package/skills/qk-ui-builder/references/macrostructures/01-bento-grid.md +48 -0
- package/skills/qk-ui-builder/references/macrostructures/02-long-document.md +50 -0
- package/skills/qk-ui-builder/references/macrostructures/03-marquee-hero.md +51 -0
- package/skills/qk-ui-builder/references/macrostructures/04-stat-led.md +49 -0
- package/skills/qk-ui-builder/references/macrostructures/05-workbench.md +44 -0
- package/skills/qk-ui-builder/references/macrostructures/06-conversational-faq.md +50 -0
- package/skills/qk-ui-builder/references/macrostructures/07-manifesto.md +51 -0
- package/skills/qk-ui-builder/references/macrostructures/08-photographic.md +50 -0
- package/skills/qk-ui-builder/references/macrostructures/09-quote-led.md +50 -0
- package/skills/qk-ui-builder/references/macrostructures/11-catalogue.md +49 -0
- package/skills/qk-ui-builder/references/macrostructures/12-letter.md +49 -0
- package/skills/qk-ui-builder/references/macrostructures/13-index-first.md +49 -0
- package/skills/qk-ui-builder/references/macrostructures/14-narrative-workflow.md +48 -0
- package/skills/qk-ui-builder/references/macrostructures/15-split-studio.md +48 -0
- package/skills/qk-ui-builder/references/macrostructures/16-feature-stack.md +51 -0
- package/skills/qk-ui-builder/references/macrostructures/17-type-specimen.md +48 -0
- package/skills/qk-ui-builder/references/macrostructures/18-portfolio-grid.md +48 -0
- package/skills/qk-ui-builder/references/macrostructures/19-map-diagram.md +50 -0
- package/skills/qk-ui-builder/references/macrostructures/20-ecosystem-index.md +48 -0
- package/skills/qk-ui-builder/references/macrostructures/21-component-playground.md +45 -0
- package/skills/qk-ui-builder/references/macrostructures.md +38 -0
- package/skills/qk-ui-builder/references/motion.md +95 -0
- package/skills/qk-ui-builder/references/responsive.md +115 -0
- package/skills/qk-ui-builder/references/slop-test.md +135 -0
- package/skills/qk-ui-builder/references/structure.md +280 -0
- package/skills/qk-ui-builder/references/themes/atmospheric.md +53 -0
- package/skills/qk-ui-builder/references/themes/carnival.md +52 -0
- package/skills/qk-ui-builder/references/themes/cobalt.md +52 -0
- package/skills/qk-ui-builder/references/themes/editorial.md +52 -0
- package/skills/qk-ui-builder/references/themes/garden.md +52 -0
- package/skills/qk-ui-builder/references/themes/hum.md +52 -0
- package/skills/qk-ui-builder/references/themes/lumen.md +52 -0
- package/skills/qk-ui-builder/references/themes/midnight.md +52 -0
- package/skills/qk-ui-builder/references/themes/modern-minimal.md +52 -0
- package/skills/qk-ui-builder/references/themes/playful.md +52 -0
- package/skills/qk-ui-builder/references/themes/specimen.md +52 -0
- package/skills/qk-ui-builder/references/themes/terminal.md +52 -0
- package/skills/qk-ui-builder/references/typography.md +129 -0
- package/skills/qk-ui-system-builder/SKILL.md +222 -43
- package/skills/qk-validation-gate/SKILL.md +360 -40
- package/skills.json +815 -825
- package/specs/fixtures/user-payload.json +12 -0
- package/specs/regressions/api-integration-null-fields.yaml +19 -0
- package/temp_fix.js +61 -0
- package/tests/registry.test.js +1 -1
- package/update_template.js +28 -0
- package/skills/qk-design-to-code/SKILL.md +0 -46
- package/skills/qk-policy-engine/SKILL.md +0 -39
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# AI Developer Skill OS - Specification (v7.5)
|
|
2
|
+
|
|
3
|
+
This document defines the strict contract and schema for all `SKILL.md` files in the AI Developer Skill OS. Every active skill MUST comply with this specification. The frontmatter is frozen to ensure cross-platform compatibility and deterministic agent behavior.
|
|
4
|
+
|
|
5
|
+
## 1. Frontmatter Contract (YAML)
|
|
6
|
+
|
|
7
|
+
Every `SKILL.md` must begin with this exact YAML structure. Do not add, remove, or rename fields.
|
|
8
|
+
|
|
9
|
+
```yaml
|
|
10
|
+
---
|
|
11
|
+
name: qk-[skill-name]
|
|
12
|
+
category: [core|frontend|backend|fullstack|security|qa|maintenance|devops|utilities]
|
|
13
|
+
version: X.Y.Z
|
|
14
|
+
description: "[One sentence — what this skill does]"
|
|
15
|
+
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
16
|
+
execution_mode: deterministic
|
|
17
|
+
|
|
18
|
+
# Orchestrator routing metadata
|
|
19
|
+
cost: [low|medium|high]
|
|
20
|
+
latency: [fast|medium|slow]
|
|
21
|
+
risk: [low|medium|high]
|
|
22
|
+
side_effects: [edit_files|run_commands|read_only|none]
|
|
23
|
+
produces: [report|code|schema|plan|tokens]
|
|
24
|
+
consumes: [context-graph|design-md|stack-trace|json-payload|none]
|
|
25
|
+
|
|
26
|
+
token_budget:
|
|
27
|
+
max_files_read: 3
|
|
28
|
+
max_lines_per_read: 150
|
|
29
|
+
max_shell_commands: 2
|
|
30
|
+
stop_early: true
|
|
31
|
+
|
|
32
|
+
exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
33
|
+
---
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Field Definitions
|
|
37
|
+
|
|
38
|
+
| Field | Type | Required | Description |
|
|
39
|
+
|-------|------|----------|-------------|
|
|
40
|
+
| `name` | string | YES | Skill identifier, must start with `qk-` |
|
|
41
|
+
| `category` | enum | YES | Primary domain: `core`, `frontend`, `backend`, `fullstack`, `security`, `qa`, `maintenance`, `devops`, `utilities` |
|
|
42
|
+
| `version` | semver | YES | Semantic version of this skill |
|
|
43
|
+
| `description` | string | YES | One-sentence summary of the skill's purpose |
|
|
44
|
+
| `platforms` | array | YES | Supported AI platforms. Valid values: `antigravity`, `claude-code`, `cursor`, `windsurf`, `kilo-code` |
|
|
45
|
+
| `execution_mode` | string | YES | Must be `deterministic` for all v7.5 skills |
|
|
46
|
+
| `cost` | enum | YES | Token/compute cost: `low`, `medium`, `high` |
|
|
47
|
+
| `latency` | enum | YES | Expected execution speed: `fast`, `medium`, `slow` |
|
|
48
|
+
| `risk` | enum | YES | Risk level of side effects: `low`, `medium`, `high` |
|
|
49
|
+
| `side_effects` | enum | YES | What the skill modifies: `edit_files`, `run_commands`, `read_only`, `none` |
|
|
50
|
+
| `produces` | array | YES | Output artifacts: `report`, `code`, `schema`, `plan`, `tokens` |
|
|
51
|
+
| `consumes` | array | YES | Required inputs: `context-graph`, `design-md`, `stack-trace`, `json-payload`, `none` |
|
|
52
|
+
| `token_budget.max_files_read` | int | YES | Maximum files to read before stopping |
|
|
53
|
+
| `token_budget.max_lines_per_read` | int | YES | Maximum lines per file read operation |
|
|
54
|
+
| `token_budget.max_shell_commands` | int | YES | Maximum shell commands allowed |
|
|
55
|
+
| `token_budget.stop_early` | bool | YES | Whether to stop when confidence threshold is reached |
|
|
56
|
+
| `exit_codes` | array | YES | Valid exit codes for this skill |
|
|
57
|
+
|
|
58
|
+
## 2. Skill Body Structure (Markdown)
|
|
59
|
+
|
|
60
|
+
The body of the `SKILL.md` file MUST contain the following sections in order:
|
|
61
|
+
|
|
62
|
+
1. **Header:** Skill title and language rule
|
|
63
|
+
2. **Preconditions:** Checklist of required inputs/state before execution
|
|
64
|
+
3. **Scope:** What the skill explicitly does (✅) and does not do (❌)
|
|
65
|
+
4. **Priority Order:** P1–P4 checks with skip thresholds for token budget management
|
|
66
|
+
5. **Workflow:** Phased execution steps with explicit decision trees and exit conditions
|
|
67
|
+
6. **Confidence Model:** HIGH/MEDIUM/LOW confidence levels with actions
|
|
68
|
+
7. **Severity:** CRITICAL/HIGH/MEDIUM/LOW severity definitions with examples
|
|
69
|
+
8. **Evidence Format:** Mandatory template for all findings
|
|
70
|
+
9. **Retry Policy:** Retry logic with maximum attempt limits
|
|
71
|
+
10. **Escalation Rules:** Structured BLOCKED response format
|
|
72
|
+
11. **Handoff Contract:** JSON schema for `Consumes` and `Produces`
|
|
73
|
+
12. **Output Format:** Mandatory output template
|
|
74
|
+
13. **Exit Codes:** Table mapping codes to meanings
|
|
75
|
+
|
|
76
|
+
## 3. Naming Conventions
|
|
77
|
+
|
|
78
|
+
- Skill files: `skills/qk-[skill-name]/SKILL.md`
|
|
79
|
+
- Registry entry: `qk-[skill-name]`
|
|
80
|
+
- All code, identifiers, and file names: English only
|
|
81
|
+
- Explanations and reports: Vietnamese (match user language)
|
|
82
|
+
|
|
83
|
+
## 4. Compliance Enforcement
|
|
84
|
+
|
|
85
|
+
- All skills MUST pass `npm run lint` (which validates frontmatter against this spec)
|
|
86
|
+
- The `## Compliance` table at the bottom of each `SKILL.md` is deprecated and MUST be removed
|
|
87
|
+
- CI pipeline enforces schema compliance automatically
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# 1. Intent-Based Architecture
|
|
2
|
+
|
|
3
|
+
Date: 2026-07-02
|
|
4
|
+
|
|
5
|
+
## Status
|
|
6
|
+
Accepted
|
|
7
|
+
|
|
8
|
+
## Context
|
|
9
|
+
As the framework grew from 5 to 20+ skills, managing individual tool permissions and specific verification overrides within each `SKILL.md` became a maintenance nightmare (violating DRY). Agents were also suffering from "context bloat" because they had to read sprawling, repetitive rules across different skills.
|
|
10
|
+
|
|
11
|
+
## Decision
|
|
12
|
+
We transitioned from a "Rule-Based" architecture to an "Intent-Based" architecture.
|
|
13
|
+
- Skills no longer define their own verification exceptions or tool usage logic.
|
|
14
|
+
- Instead, skills declare their `behavior` and `intent` via frozen YAML metadata.
|
|
15
|
+
- The OS Kernel (`AGENTS.md`) intercepts these intents and automatically applies the correct global routing and execution constraints based on the categorized behavior.
|
|
16
|
+
|
|
17
|
+
## Consequences
|
|
18
|
+
- **Positive:** Massive reduction in skill file size. Easier to scale to 100+ skills. Centralized logic in the Kernel. Agent routing is drastically improved due to clear `intent` mapping.
|
|
19
|
+
- **Negative:** Less granular control over unique outliers, but this enforces better standardization.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# 2. Kernel Freeze
|
|
2
|
+
|
|
3
|
+
Date: 2026-07-02
|
|
4
|
+
|
|
5
|
+
## Status
|
|
6
|
+
Accepted
|
|
7
|
+
|
|
8
|
+
## Context
|
|
9
|
+
The Global Policy file (`AGENTS.md`), which acts as the OS Kernel, was continuously expanding. Policies like Language, Decision, Engineering, Output, Tool Efficiency, Context Budget, and Escapation were all piled into a single document, threatening to balloon past 1,000 lines. A bloated kernel leads to Agent Hallucinations (due to context window pressure) and conflicting priorities.
|
|
10
|
+
|
|
11
|
+
## Decision
|
|
12
|
+
We officially "Freeze" the Kernel (`AGENTS.md`) at v4.0.0. The file is strictly rewritten to under 100 lines using absolute Rules (MUST/MUST NOT) and Guidelines (Prefer/Avoid).
|
|
13
|
+
Moving forward, no new policies will be added to the Kernel. All future expansions must occur at the higher layers:
|
|
14
|
+
- New Capabilities
|
|
15
|
+
- New Skills
|
|
16
|
+
- New Knowledge documents
|
|
17
|
+
- New Templates
|
|
18
|
+
|
|
19
|
+
## Consequences
|
|
20
|
+
- **Positive:** The baseline ruleset is locked, highly token-efficient, and easily digestible by any LLM. The framework achieves enterprise stability.
|
|
21
|
+
- **Negative:** Feature requests that require global policy shifts will be rejected by default unless they fundamentally rewrite the OS paradigm.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# 3. Risk-based Verification
|
|
2
|
+
|
|
3
|
+
Date: 2026-07-02
|
|
4
|
+
|
|
5
|
+
## Status
|
|
6
|
+
Accepted
|
|
7
|
+
|
|
8
|
+
## Context
|
|
9
|
+
Previously, Verification Levels were hardcoded into the Skill Classification (e.g., Development skills automatically forced Level 2 Verification, meaning test suites were run regardless of the actual change). This caused conflicting behavior. For example, fixing a typo in a comment using the `qk-bug-resolution` skill would still trigger a test run, wasting time and resources.
|
|
10
|
+
|
|
11
|
+
## Decision
|
|
12
|
+
We completely decoupled Verification Levels from Skill Classifications.
|
|
13
|
+
Skills now only define their "Preferred Evidence Strategy". The actual depth of verification is determined strictly by the **Risk-based Verification Policy** in the Kernel (`AGENTS.md`).
|
|
14
|
+
- Level 0 (Low Risk): Comments, typos (Static Analysis only).
|
|
15
|
+
- Level 2 (Medium Risk): Logic changes (Targeted tests).
|
|
16
|
+
- Level 3 (High Risk): Auth, DB (Full validation).
|
|
17
|
+
|
|
18
|
+
## Consequences
|
|
19
|
+
- **Positive:** Agents no longer blindly run tests for trivial changes. Verification scales with the danger of the code being modified, vastly improving speed and token efficiency.
|
|
20
|
+
- **Negative:** Agents must use logic to evaluate the "Risk" of their own changes before deciding whether to run a test.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# 4. Progressive Evidence Collection
|
|
2
|
+
|
|
3
|
+
Date: 2026-07-02
|
|
4
|
+
|
|
5
|
+
## Status
|
|
6
|
+
Accepted
|
|
7
|
+
|
|
8
|
+
## Context
|
|
9
|
+
AI Agents frequently fall into "hallucination loops" or "over-exploration loops", running commands like `ls`, `tree`, or reading entire project directories just to find one file. This burns through context windows rapidly and leads to poor reasoning.
|
|
10
|
+
|
|
11
|
+
## Decision
|
|
12
|
+
We implemented a strict **Progressive Evidence Collection** pipeline inside the OS Kernel (`AGENTS.md`):
|
|
13
|
+
- **Context Budget:** Agents must start by reading 1 file, then 3 files, then a directory. They must never read the whole project unless explicitly required.
|
|
14
|
+
- **Sufficient Confidence:** Agents must stop collecting evidence the moment they reach an 80% confidence threshold to proceed.
|
|
15
|
+
- **Evidence Priority:** User input > Existing context > Source code > Types > Logs > Runtime > External knowledge.
|
|
16
|
+
|
|
17
|
+
## Consequences
|
|
18
|
+
- **Positive:** Drastically reduced unnecessary `run_command` usage. Agents act much more like senior developers who pinpoint issues via stack traces instead of blindly searching the filesystem.
|
|
19
|
+
- **Negative:** Requires rigorous enforcement in the Kernel to prevent agents from falling back to old habits.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Skill Classifications (Intent-Based Policies)
|
|
2
|
+
|
|
3
|
+
Skills are classified into behavioral groups that define their **Primary Objective** and **Preferred Evidence Strategy**.
|
|
4
|
+
|
|
5
|
+
*Note: Actual verification depth is NOT determined by the skill itself, but must strictly follow the **Risk-based Verification Policy** defined in `AGENTS.md`.*
|
|
6
|
+
|
|
7
|
+
## 1. Static Analysis Skills
|
|
8
|
+
*e.g., Code Review, Project Health, Architecture, Documentation*
|
|
9
|
+
- **Primary Goal:** Audit, analyze, or document without altering system behavior.
|
|
10
|
+
- **Preferred Behavior:** Prefer static analysis (`read_file`, `grep_search`). Do not execute code or run test suites unless explicitly requested to validate the audit.
|
|
11
|
+
|
|
12
|
+
## 2. Development Skills
|
|
13
|
+
*e.g., Feature Delivery, Refactor, Bug Resolution*
|
|
14
|
+
- **Primary Goal:** Modify existing behavior or implement new features safely.
|
|
15
|
+
- **Preferred Behavior:** Apply localized changes. Gather targeted evidence. Avoid speculative full-project validation; verify only what is affected.
|
|
16
|
+
|
|
17
|
+
## 3. Validation Skills
|
|
18
|
+
*e.g., Validation Gate, CI Check, Release*
|
|
19
|
+
- **Primary Goal:** Ensure code quality, security, and build stability before release.
|
|
20
|
+
- **Preferred Behavior:** Exhaustive scanning. Running automated checks and full builds is encouraged to satisfy the validation gate.
|
|
21
|
+
|
|
22
|
+
## 4. Maintenance Skills
|
|
23
|
+
*e.g., System Evolution, Dependency Update*
|
|
24
|
+
- **Primary Goal:** Upgrade system foundations safely with a rollback strategy.
|
|
25
|
+
- **Preferred Behavior:** Inspect changelogs and compatibility carefully before updating. Run full system verifications post-update to ensure stability.
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: qk-access-policy
|
|
3
|
+
category: security
|
|
4
|
+
version: 7.5.0
|
|
5
|
+
description: "Quản lý RBAC, ABAC — định nghĩa role matrix trước, implement middleware sau."
|
|
6
|
+
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
7
|
+
execution_mode: deterministic
|
|
8
|
+
cost: medium
|
|
9
|
+
latency: medium
|
|
10
|
+
risk: high
|
|
11
|
+
side_effects: edit_files
|
|
12
|
+
produces: [code, report]
|
|
13
|
+
consumes: [user-description]
|
|
14
|
+
token_budget:
|
|
15
|
+
max_files_read: 3
|
|
16
|
+
max_lines_per_read: 100
|
|
17
|
+
max_shell_commands: 0
|
|
18
|
+
stop_early: true
|
|
19
|
+
exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
20
|
+
skill_version: 7.5.0
|
|
21
|
+
runtime_version: 1
|
|
22
|
+
schema_version: 2
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# qk-access-policy — Access Control Designer
|
|
26
|
+
|
|
27
|
+
> **Language rule:** Code, identifiers, file names ? English. Explanations, summaries ? Vietnamese.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Preconditions
|
|
32
|
+
- [ ] User roles and protected resources are defined
|
|
33
|
+
- [ ] Auth system (JWT, session, OAuth) is identified
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
On missing precondition:
|
|
37
|
+
EXIT: BLOCKED
|
|
38
|
+
Message: "Cần định nghĩa: danh sách roles + resources cần bảo vệ."
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Scope
|
|
44
|
+
- ✅ Define explicit Role-Permission Matrix before coding
|
|
45
|
+
- ✅ Implement middleware/guards based strictly on the matrix
|
|
46
|
+
- ✅ Separate auth (who are you?) from authz (what can you do?)
|
|
47
|
+
|
|
48
|
+
## Non-Goals
|
|
49
|
+
- ❌ Grant wildcard (*) permissions
|
|
50
|
+
- ❌ Mix authentication logic with authorization logic
|
|
51
|
+
- ❌ Hardcode role checks in business logic (use middleware/guards)
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## Priority Order
|
|
56
|
+
| P | Task | Skip Threshold |
|
|
57
|
+
|---|------|----------------|
|
|
58
|
+
| P1 | Define Role-Permission Matrix | Never |
|
|
59
|
+
| P2 | Implement deny-by-default middleware | Never |
|
|
60
|
+
| P3 | Add role guards to routes/controllers | Budget < 30% |
|
|
61
|
+
| P4 | Add audit logging for auth failures | Budget < 60% |
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Role-Permission Matrix Format (Required)
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
Resource | admin | manager | user | guest
|
|
69
|
+
─────────────────────────────────────────────────
|
|
70
|
+
GET /resource | ✅ | ✅ | ✅ | ✅
|
|
71
|
+
POST /resource | ✅ | ✅ | ❌ | ❌
|
|
72
|
+
DELETE /resource | ✅ | ❌ | ❌ | ❌
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## Workflow
|
|
78
|
+
|
|
79
|
+
### Phase 1 — Matrix Definition
|
|
80
|
+
1. List all roles and resources from requirements
|
|
81
|
+
2. Create Role-Permission Matrix (table format above)
|
|
82
|
+
3. Identify conflicts or contradictions
|
|
83
|
+
|
|
84
|
+
**Decision:** `IF matrix has contradiction → EXIT: BLOCKED — resolve ambiguity`
|
|
85
|
+
|
|
86
|
+
### Phase 2 — Implementation
|
|
87
|
+
1. Create deny-by-default guard/middleware
|
|
88
|
+
2. Apply guards to routes using matrix
|
|
89
|
+
3. Add auth failure logging
|
|
90
|
+
|
|
91
|
+
### Phase 3 — Verification
|
|
92
|
+
1. Read matrix vs implementation — spot check 3 routes
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Evidence Format
|
|
97
|
+
```
|
|
98
|
+
[SEVERITY] src/middleware/auth.ts:LINE
|
|
99
|
+
Rule: [WILDCARD | MISSING_GUARD | SOC_VIOLATION | HARDCODED_ROLE]
|
|
100
|
+
Reason: [specific issue]
|
|
101
|
+
Confidence: HIGH
|
|
102
|
+
Fix: [specific change]
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Exit Codes
|
|
108
|
+
| Code | Meaning | When |
|
|
109
|
+
|------|---------|------|
|
|
110
|
+
| SUCCESS | Matrix defined, middleware implemented, deny-by-default applied | Implementation complete |
|
|
111
|
+
| PARTIAL | Implemented but missing audit logging or some routes unguarded | Post-verification minor gaps |
|
|
112
|
+
| BLOCKED | Roles or resources undefined — cannot create matrix | Missing inputs |
|
|
113
|
+
| FAILED | Contradiction in matrix or auth/authz mixed | Architectural violation |
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Confidence Model
|
|
118
|
+
| Level | Condition | Action |
|
|
119
|
+
|-------|-----------|--------|
|
|
120
|
+
| HIGH | Roles and resources explicitly defined | Build matrix and implement |
|
|
121
|
+
| MEDIUM | Roles inferred from codebase | Build matrix, ask user to verify |
|
|
122
|
+
| LOW | Authentication strategy unknown | EXIT: BLOCKED |
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## Severity
|
|
127
|
+
| Level | Definition | Example |
|
|
128
|
+
|-------|-----------|---------|
|
|
129
|
+
| CRITICAL | Route unguarded due to missing middleware | Anyone can access DELETE /users |
|
|
130
|
+
| HIGH | Hardcoded roles in business logic | `if (user.role === 'admin')` in service layer |
|
|
131
|
+
| MEDIUM | Wildcard permissions granted | `user` can access `*` |
|
|
132
|
+
| LOW | Audit log missing for auth failure | Unlogged 403 error |
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Retry Policy
|
|
137
|
+
```
|
|
138
|
+
Route verification fails
|
|
139
|
+
└─ Route unguarded
|
|
140
|
+
├─ Add missing guard to route
|
|
141
|
+
└─ Do NOT retry more than 1 time per route
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## Escalation Rules
|
|
147
|
+
```
|
|
148
|
+
BLOCKED: Roles or resources undefined
|
|
149
|
+
Missing:
|
|
150
|
+
- List of user roles
|
|
151
|
+
- List of protected resources
|
|
152
|
+
Questions:
|
|
153
|
+
1. Hệ thống có những role nào? (ví dụ: admin, user, manager)
|
|
154
|
+
2. Những API/Route nào cần bảo vệ?
|
|
155
|
+
Recommended Assumptions:
|
|
156
|
+
- Deny-by-default for all non-public routes
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Handoff Contract
|
|
162
|
+
### Consumes
|
|
163
|
+
```json
|
|
164
|
+
{
|
|
165
|
+
"from": "user",
|
|
166
|
+
"required_fields": ["roles", "resources"],
|
|
167
|
+
"optional_fields": ["auth_strategy"]
|
|
168
|
+
}
|
|
169
|
+
```
|
|
170
|
+
### Produces
|
|
171
|
+
```json
|
|
172
|
+
{
|
|
173
|
+
"to": "user",
|
|
174
|
+
"output_fields": ["role_matrix", "middleware_files", "guarded_routes", "exit_code"]
|
|
175
|
+
}
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: qk-ai-builder
|
|
3
|
+
category: core
|
|
4
|
+
version: 7.5.0
|
|
5
|
+
description: "Thiết kế AI logic, Prompts, RAG pipelines với bảo mật chống Injection — structured output bắt buộc."
|
|
6
|
+
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
7
|
+
execution_mode: deterministic
|
|
8
|
+
cost: high
|
|
9
|
+
latency: slow
|
|
10
|
+
risk: high
|
|
11
|
+
side_effects: edit_files
|
|
12
|
+
produces: [code, schema]
|
|
13
|
+
consumes: [user-description]
|
|
14
|
+
skill_version: 7.5.0
|
|
15
|
+
runtime_version: 1
|
|
16
|
+
schema_version: 2
|
|
17
|
+
token_budget:
|
|
18
|
+
max_files_read: 3
|
|
19
|
+
max_lines_per_read: 100
|
|
20
|
+
max_shell_commands: 0
|
|
21
|
+
stop_early: true
|
|
22
|
+
exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# qk-ai-builder — AI Integration Designer
|
|
26
|
+
|
|
27
|
+
> **Language rule:** Code, identifiers, file names ? English. Explanations, summaries ? Vietnamese.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Preconditions
|
|
32
|
+
- [ ] AI task is defined: what input → what output
|
|
33
|
+
- [ ] LLM provider is specified (OpenAI, Anthropic, Gemini, local)
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Scope
|
|
38
|
+
- ✅ Design strict, deterministic system prompts
|
|
39
|
+
- ✅ Sanitize user inputs before LLM (Anti-Injection)
|
|
40
|
+
- ✅ Validate LLM output before using in business logic
|
|
41
|
+
- ✅ Structured output (JSON schema) over raw text
|
|
42
|
+
|
|
43
|
+
## Non-Goals
|
|
44
|
+
- ❌ Open-ended chat prompts without system boundaries
|
|
45
|
+
- ❌ Trust LLM output for critical logic without validation
|
|
46
|
+
- ❌ Use raw user input directly in prompts
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## System Prompt Template (Required Structure)
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
[ROLE]
|
|
54
|
+
You are a [specific role]. You [specific expertise].
|
|
55
|
+
|
|
56
|
+
[TASK]
|
|
57
|
+
Your task is to [exact task description].
|
|
58
|
+
|
|
59
|
+
[CONSTRAINTS]
|
|
60
|
+
- Always [constraint 1]
|
|
61
|
+
- Never [constraint 2]
|
|
62
|
+
- If [edge case] → [specific action]
|
|
63
|
+
|
|
64
|
+
[OUTPUT FORMAT]
|
|
65
|
+
Return ONLY valid JSON matching this schema:
|
|
66
|
+
{
|
|
67
|
+
"field1": "string",
|
|
68
|
+
"field2": number,
|
|
69
|
+
"confidence": "high|medium|low"
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
[EXAMPLES]
|
|
73
|
+
Input: [example]
|
|
74
|
+
Output: {"field1": "...", "field2": 0, "confidence": "high"}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## Anti-Injection Checklist
|
|
80
|
+
```
|
|
81
|
+
[ ] User input is wrapped in XML tags: <user_input>{input}</user_input>
|
|
82
|
+
[ ] System instructions are separate from user content
|
|
83
|
+
[ ] Input is validated/sanitized before injection (no raw HTML/JS)
|
|
84
|
+
[ ] Max token limit set for user input
|
|
85
|
+
[ ] Output is parsed as JSON (not eval'd)
|
|
86
|
+
[ ] Confidence field in output triggers human review if "low"
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## RAG Pipeline Pattern
|
|
92
|
+
```
|
|
93
|
+
User Query
|
|
94
|
+
└─ Sanitize + embed query
|
|
95
|
+
└─ Vector search (top-K = 5)
|
|
96
|
+
└─ Re-rank by relevance
|
|
97
|
+
└─ Build prompt: [System] + [Retrieved Context] + [User Query]
|
|
98
|
+
└─ LLM call
|
|
99
|
+
└─ Validate output schema
|
|
100
|
+
└─ Return to user
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## Priority Order
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Workflow
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
## Output Format
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
## Exit Codes
|
|
123
|
+
| Code | Meaning | When |
|
|
124
|
+
|------|---------|------|
|
|
125
|
+
| SUCCESS | Prompt designed with all required sections, anti-injection applied | All checks passed |
|
|
126
|
+
| PARTIAL | Prompt works but missing examples or output validation | Medium confidence result |
|
|
127
|
+
| BLOCKED | Task or output format not defined clearly enough | Cannot design without clear spec |
|
|
128
|
+
| FAILED | Prompt design has security vulnerability (direct injection risk) | Security gate failure |
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Confidence Model
|
|
133
|
+
| Level | Condition | Action |
|
|
134
|
+
|-------|-----------|--------|
|
|
135
|
+
| HIGH | Task clearly defined, output format specified, examples provided | Build directly |
|
|
136
|
+
| MEDIUM | Task clear but output format ambiguous | Note assumption, add validation layer |
|
|
137
|
+
| LOW | Task too vague ("make an AI assistant") | EXIT: BLOCKED — define specific task |
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
## Severity
|
|
142
|
+
| Level | Definition | Example |
|
|
143
|
+
|-------|-----------|---------|
|
|
144
|
+
| CRITICAL | Prompt injection attack possible | User input directly in system prompt |
|
|
145
|
+
| HIGH | LLM output used without validation in business logic | JSON parse without schema check |
|
|
146
|
+
| MEDIUM | Missing examples leads to inconsistent output | No few-shot examples in prompt |
|
|
147
|
+
| LOW | Output format not explicitly stated | Returns text instead of JSON |
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## Evidence Format
|
|
152
|
+
```
|
|
153
|
+
[SEVERITY] src/prompts/[name].ts:LINE
|
|
154
|
+
Issue: [specific vulnerability or gap]
|
|
155
|
+
Confidence: HIGH
|
|
156
|
+
Fix: [specific change]
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
**Example:**
|
|
160
|
+
```
|
|
161
|
+
[CRITICAL] src/prompts/chat.ts:34
|
|
162
|
+
Issue: User input `${userMessage}` injected directly in system prompt — injection risk
|
|
163
|
+
Confidence: HIGH
|
|
164
|
+
Fix: Wrap in <user_input>{userMessage}</user_input> XML tags
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## Retry Policy
|
|
170
|
+
```
|
|
171
|
+
LLM output validation fails
|
|
172
|
+
└─ Retry with stronger output format instruction (add explicit JSON schema)
|
|
173
|
+
├─ PASS on retry → EXIT: SUCCESS, note "required stronger schema enforcement"
|
|
174
|
+
└─ FAIL on retry → EXIT: PARTIAL — add human review gate
|
|
175
|
+
└─ Do NOT auto-retry more than 1 time — risk of infinite loop
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
## Escalation Rules
|
|
181
|
+
```
|
|
182
|
+
BLOCKED: AI task not specific enough to design prompt
|
|
183
|
+
Missing:
|
|
184
|
+
- Specific task description (what input → what output)
|
|
185
|
+
- Output format specification (JSON schema or text structure)
|
|
186
|
+
Questions:
|
|
187
|
+
1. Input cụ thể là gì? (user text, document, structured data)
|
|
188
|
+
2. Output cần trả về dạng gì? (JSON với field gì / plain text)
|
|
189
|
+
Recommended Assumptions (if proceeding):
|
|
190
|
+
- Structured JSON output with confidence field
|
|
191
|
+
- Deny-by-default: reject off-topic requests in system prompt
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## Handoff Contract
|
|
197
|
+
### Consumes
|
|
198
|
+
```json
|
|
199
|
+
{
|
|
200
|
+
"from": "user",
|
|
201
|
+
"required_fields": ["task_description", "input_type", "output_format"],
|
|
202
|
+
"optional_fields": ["examples", "llm_provider", "max_tokens"]
|
|
203
|
+
}
|
|
204
|
+
```
|
|
205
|
+
### Produces
|
|
206
|
+
```json
|
|
207
|
+
{
|
|
208
|
+
"to": "user or qk-validation-gate",
|
|
209
|
+
"output_fields": ["system_prompt", "output_schema", "anti_injection_checklist", "exit_code"]
|
|
210
|
+
}
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
|