x-ipe 1.0.23__py3-none-any.whl → 1.0.25__py3-none-any.whl
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.
- x_ipe/app.py +32 -1
- x_ipe/handlers/terminal_handlers.py +6 -0
- x_ipe/handlers/voice_handlers.py +5 -0
- x_ipe/resources/copilot-instructions.md +19 -6
- x_ipe/resources/skills/lesson-learned/SKILL.md +208 -0
- x_ipe/resources/skills/lesson-learned/references/examples.md +238 -0
- x_ipe/resources/skills/project-quality-board-management/SKILL.md +135 -298
- x_ipe/resources/skills/project-quality-board-management/references/evaluation-principles.md +213 -0
- x_ipe/resources/skills/project-quality-board-management/references/evaluation-procedures.md +214 -0
- x_ipe/resources/skills/project-quality-board-management/templates/quality-report.md +70 -18
- x_ipe/resources/skills/task-execution-guideline/SKILL.md +2 -2
- x_ipe/resources/skills/task-execution-guideline/templates/task-record.yaml +1 -1
- x_ipe/resources/skills/task-type-code-implementation/SKILL.md +72 -270
- x_ipe/resources/skills/task-type-code-implementation/references/implementation-guidelines.md +432 -0
- x_ipe/resources/skills/task-type-code-refactor-v2/SKILL.md +127 -353
- x_ipe/resources/skills/task-type-code-refactor-v2/references/refactoring-techniques.md +373 -0
- x_ipe/resources/skills/task-type-feature-breakdown/SKILL.md +31 -243
- x_ipe/resources/skills/task-type-feature-breakdown/references/breakdown-guidelines.md +330 -0
- x_ipe/resources/skills/task-type-feature-refinement/SKILL.md +27 -180
- x_ipe/resources/skills/task-type-feature-refinement/references/specification-writing-guide.md +267 -0
- x_ipe/resources/skills/task-type-idea-mockup/SKILL.md +38 -276
- x_ipe/resources/skills/task-type-idea-mockup/references/mockup-guidelines.md +299 -0
- x_ipe/resources/skills/task-type-idea-to-architecture/SKILL.md +20 -218
- x_ipe/resources/skills/task-type-idea-to-architecture/references/architecture-patterns.md +342 -0
- x_ipe/resources/skills/task-type-ideation/SKILL.md +10 -266
- x_ipe/resources/skills/task-type-ideation/references/folder-naming-guide.md +55 -0
- x_ipe/resources/skills/task-type-ideation/references/tool-usage-guide.md +236 -0
- x_ipe/resources/skills/task-type-ideation-v2/SKILL.md +488 -0
- x_ipe/resources/skills/task-type-ideation-v2/references/examples.md +377 -0
- x_ipe/resources/skills/task-type-ideation-v2/references/folder-naming-guide.md +74 -0
- x_ipe/resources/skills/task-type-ideation-v2/references/tool-usage-guide.md +145 -0
- x_ipe/resources/skills/task-type-ideation-v2/references/visualization-guide.md +160 -0
- x_ipe/resources/skills/task-type-ideation-v2/templates/idea-summary.md +86 -0
- x_ipe/resources/skills/task-type-refactoring-analysis/SKILL.md +83 -145
- x_ipe/resources/skills/task-type-refactoring-analysis/references/output-schema.md +172 -0
- x_ipe/resources/skills/task-type-technical-design/SKILL.md +28 -214
- x_ipe/resources/skills/task-type-technical-design/references/design-templates.md +422 -0
- x_ipe/resources/skills/task-type-test-generation/SKILL.md +47 -332
- x_ipe/resources/skills/task-type-test-generation/references/test-patterns.md +368 -0
- x_ipe/resources/skills/tool-tracing-creator/SKILL.md +312 -0
- x_ipe/resources/skills/tool-tracing-creator/references/examples.md +324 -0
- x_ipe/resources/skills/tool-tracing-instrumentation/SKILL.md +373 -0
- x_ipe/resources/skills/tool-tracing-instrumentation/references/examples.md +264 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/SKILL.md +486 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/10. example-gate-conditions.md +73 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/11. reference-quality-standards.md +127 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/2. reference-section-order.md +127 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/3. example-step-based-code-review.md +84 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/4. example-step-based-feature-implementation.md +113 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/5. example-function-based-validation.md +73 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/6. example-function-based-analysis.md +94 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/7. example-task-io-code-implementation.md +36 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/8. example-structured-summary.md +43 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/9. example-dor-dod.md +77 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/examples.md +429 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/references/skill-general-guidelines-v2.md +611 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/skill-meta-x-ipe-meta.md +153 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/skill-meta-x-ipe-task-based.md +324 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/skill-meta-x-ipe-task-category.md +109 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/skill-meta-x-ipe-tool.md +205 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/x-ipe-meta.md +334 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/x-ipe-task-based.md +279 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/x-ipe-tool.md +175 -0
- x_ipe/resources/skills/x-ipe-skill-creator-v3/templates/x-ipe-workflow-orchestration.md +329 -0
- x_ipe/resources/skills/x-ipe-task-based-ideation/SKILL.md +487 -0
- x_ipe/resources/skills/x-ipe-task-based-ideation/references/examples.md +377 -0
- x_ipe/resources/skills/x-ipe-task-based-ideation/references/folder-naming-guide.md +74 -0
- x_ipe/resources/skills/x-ipe-task-based-ideation/references/tool-usage-guide.md +145 -0
- x_ipe/resources/skills/x-ipe-task-based-ideation/references/visualization-guide.md +160 -0
- x_ipe/resources/skills/x-ipe-task-based-ideation/templates/idea-summary.md +86 -0
- x_ipe/routes/__init__.py +2 -0
- x_ipe/routes/ideas_routes.py +289 -0
- x_ipe/routes/kb_routes.py +80 -0
- x_ipe/routes/main_routes.py +18 -0
- x_ipe/routes/project_routes.py +7 -0
- x_ipe/routes/proxy_routes.py +10 -2
- x_ipe/routes/quality_evaluation_routes.py +193 -0
- x_ipe/routes/settings_routes.py +6 -0
- x_ipe/routes/tools_routes.py +6 -0
- x_ipe/routes/tracing_routes.py +232 -0
- x_ipe/routes/uiux_feedback_routes.py +50 -0
- x_ipe/services/__init__.py +5 -0
- x_ipe/services/config_service.py +6 -0
- x_ipe/services/file_service.py +20 -0
- x_ipe/services/homepage_service.py +160 -0
- x_ipe/services/ideas_service.py +535 -2
- x_ipe/services/kb_service.py +378 -0
- x_ipe/services/proxy_service.py +37 -7
- x_ipe/services/settings_service.py +13 -0
- x_ipe/services/skills_service.py +4 -0
- x_ipe/services/terminal_service.py +24 -0
- x_ipe/services/themes_service.py +4 -0
- x_ipe/services/tools_config_service.py +4 -0
- x_ipe/services/tracing_service.py +333 -0
- x_ipe/services/uiux_feedback_service.py +148 -1
- x_ipe/services/voice_input_service_v2.py +11 -0
- x_ipe/static/css/base.css +7 -0
- x_ipe/static/css/homepage-infinity.css +330 -0
- x_ipe/static/css/kb-core.css +301 -0
- x_ipe/static/css/quality-evaluation.css +345 -0
- x_ipe/static/css/sidebar.css +14 -4
- x_ipe/static/css/terminal.css +23 -0
- x_ipe/static/css/tracing-dashboard.css +796 -0
- x_ipe/static/css/uiux-feedback.css +7 -1
- x_ipe/static/css/workplace.css +636 -0
- x_ipe/static/img/homepage-infinity-loop.png +0 -0
- x_ipe/static/js/features/confirm-dialog.js +169 -0
- x_ipe/static/js/features/folder-view.js +742 -0
- x_ipe/static/js/features/homepage-infinity.js +314 -0
- x_ipe/static/js/features/kb-core.js +371 -0
- x_ipe/static/js/features/quality-evaluation.js +387 -0
- x_ipe/static/js/features/sidebar.js +255 -12
- x_ipe/static/js/features/tracing-dashboard.js +855 -0
- x_ipe/static/js/features/tracing-graph.js +1031 -0
- x_ipe/static/js/features/tree-drag.js +227 -0
- x_ipe/static/js/features/tree-search.js +228 -0
- x_ipe/static/js/features/workplace.js +661 -33
- x_ipe/static/js/init.js +76 -0
- x_ipe/static/js/terminal-v2.js +45 -14
- x_ipe/static/js/terminal.js +50 -49
- x_ipe/static/js/uiux-feedback.js +75 -16
- x_ipe/templates/base.html +24 -0
- x_ipe/templates/index.html +10 -1
- x_ipe/templates/knowledge-base.html +110 -0
- x_ipe/templates/workplace.html +4 -0
- x_ipe/tracing/__init__.py +37 -0
- x_ipe/tracing/buffer.py +135 -0
- x_ipe/tracing/context.py +125 -0
- x_ipe/tracing/decorator.py +288 -0
- x_ipe/tracing/middleware.py +197 -0
- x_ipe/tracing/parser.py +235 -0
- x_ipe/tracing/redactor.py +111 -0
- x_ipe/tracing/writer.py +122 -0
- {x_ipe-1.0.23.dist-info → x_ipe-1.0.25.dist-info}/METADATA +2 -2
- {x_ipe-1.0.23.dist-info → x_ipe-1.0.25.dist-info}/RECORD +138 -65
- x_ipe/app.py.bak +0 -1333
- x_ipe/resources/skills/x-ipe-skill-creator/SKILL.md +0 -329
- x_ipe/resources/skills/x-ipe-skill-creator/references/output-patterns.md +0 -169
- x_ipe/resources/skills/x-ipe-skill-creator/references/skill-structure.md +0 -162
- x_ipe/resources/skills/x-ipe-skill-creator/references/workflows.md +0 -110
- x_ipe/resources/skills/x-ipe-skill-creator/templates/references/examples.md +0 -113
- x_ipe/resources/skills/x-ipe-skill-creator/templates/skill-category-skill.md +0 -296
- x_ipe/resources/skills/x-ipe-skill-creator/templates/task-type-skill.md +0 -269
- {x_ipe-1.0.23.dist-info → x_ipe-1.0.25.dist-info}/WHEEL +0 -0
- {x_ipe-1.0.23.dist-info → x_ipe-1.0.25.dist-info}/entry_points.txt +0 -0
- {x_ipe-1.0.23.dist-info → x_ipe-1.0.25.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,611 @@
|
|
|
1
|
+
# Skill General Guidelines
|
|
2
|
+
|
|
3
|
+
Core principles, patterns, and standards for X-IPE skills.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Part 1: Core Principles
|
|
8
|
+
|
|
9
|
+
## Principle 1: Concise is Key
|
|
10
|
+
|
|
11
|
+
```yaml
|
|
12
|
+
principle:
|
|
13
|
+
name: Concise is Key
|
|
14
|
+
rationale: Context window is shared resource
|
|
15
|
+
|
|
16
|
+
default_assumption: AI Agent is already very smart
|
|
17
|
+
rule: Only add context it doesn't already have
|
|
18
|
+
|
|
19
|
+
guidelines:
|
|
20
|
+
- challenge_each_paragraph: "Does this justify its token cost?"
|
|
21
|
+
- prefer: examples over verbose explanations
|
|
22
|
+
- max_skill_lines: 500
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Principle 2: Degrees of Freedom
|
|
26
|
+
|
|
27
|
+
Match specificity to task fragility and variability.
|
|
28
|
+
|
|
29
|
+
```yaml
|
|
30
|
+
principle:
|
|
31
|
+
name: Degrees of Freedom
|
|
32
|
+
metaphor: "Narrow bridge with cliffs needs guardrails (low freedom), open field allows many routes (high freedom)"
|
|
33
|
+
|
|
34
|
+
freedom_levels:
|
|
35
|
+
high:
|
|
36
|
+
use_when: Multiple approaches valid, decisions depend on context
|
|
37
|
+
format: Text instructions, prose
|
|
38
|
+
examples: [creative brainstorming, workflow decisions]
|
|
39
|
+
|
|
40
|
+
medium:
|
|
41
|
+
use_when: Preferred pattern exists, some variation acceptable
|
|
42
|
+
format: Pseudocode with parameters, numbered steps with conditions
|
|
43
|
+
examples: [execution procedures, conditional logic]
|
|
44
|
+
|
|
45
|
+
low:
|
|
46
|
+
use_when: Operations fragile/error-prone, consistency critical
|
|
47
|
+
format: Specific scripts, YAML schemas, explicit paths
|
|
48
|
+
examples: [data models, file operations, importance signals]
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Principle 3: Progressive Disclosure
|
|
52
|
+
|
|
53
|
+
Three-level loading system to manage context efficiently.
|
|
54
|
+
|
|
55
|
+
```yaml
|
|
56
|
+
principle:
|
|
57
|
+
name: Progressive Disclosure
|
|
58
|
+
|
|
59
|
+
loading_levels:
|
|
60
|
+
level_1:
|
|
61
|
+
content: Metadata (name + description)
|
|
62
|
+
when_loaded: Always in context
|
|
63
|
+
token_budget: ~100 words
|
|
64
|
+
|
|
65
|
+
level_2:
|
|
66
|
+
content: SKILL.md body
|
|
67
|
+
when_loaded: When skill triggers
|
|
68
|
+
token_budget: <500 lines
|
|
69
|
+
|
|
70
|
+
level_3:
|
|
71
|
+
content: Bundled resources (scripts/, references/, templates/)
|
|
72
|
+
when_loaded: As needed by AI Agent
|
|
73
|
+
token_budget: Unlimited (can execute without loading)
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## Principle 4: Agent-Optimized Expression Formats
|
|
77
|
+
|
|
78
|
+
Match content format to how AI Agents best consume information.
|
|
79
|
+
|
|
80
|
+
```yaml
|
|
81
|
+
principle:
|
|
82
|
+
name: Agent-Optimized Expression Formats
|
|
83
|
+
rationale: Agents parse structured data and keywords more reliably than prose and symbols
|
|
84
|
+
|
|
85
|
+
format_selection:
|
|
86
|
+
# Low freedom - fragile operations need precision
|
|
87
|
+
data_models:
|
|
88
|
+
freedom: low
|
|
89
|
+
format: YAML with explicit types
|
|
90
|
+
rationale: Agents parse structured data reliably
|
|
91
|
+
|
|
92
|
+
importance_signals:
|
|
93
|
+
freedom: low
|
|
94
|
+
format: "Keywords: BLOCKING:, MANDATORY:, CRITICAL:"
|
|
95
|
+
rationale: Pattern-matching more reliable than symbol recognition
|
|
96
|
+
avoid: ["⚠️", "⛔", "🔴", "🟢"]
|
|
97
|
+
|
|
98
|
+
file_operations:
|
|
99
|
+
freedom: low
|
|
100
|
+
format: "Explicit paths with {variable} syntax"
|
|
101
|
+
rationale: Fragile operations need precision
|
|
102
|
+
|
|
103
|
+
diagrams:
|
|
104
|
+
freedom: low
|
|
105
|
+
format: Indented lists or YAML with branching
|
|
106
|
+
rationale: Agents struggle to parse 2D ASCII spatial relationships; tokens are expensive
|
|
107
|
+
avoid: ["ASCII Art", "Box drawings", "Mermaid", "PlantUML"]
|
|
108
|
+
|
|
109
|
+
llm_model_definitions:
|
|
110
|
+
freedom: low
|
|
111
|
+
format: "Reference via input parameter ({model})"
|
|
112
|
+
rationale: Hardcoding models reduces reusability and adaptability
|
|
113
|
+
avoid: ["Hardcoded model names in instructions"]
|
|
114
|
+
|
|
115
|
+
# Medium freedom - balance readability and precision
|
|
116
|
+
conditional_logic:
|
|
117
|
+
freedom: medium
|
|
118
|
+
format: IF/THEN/ELSE in prose or pseudocode
|
|
119
|
+
|
|
120
|
+
execution_procedures:
|
|
121
|
+
freedom: medium
|
|
122
|
+
format: Numbered steps with inline conditions
|
|
123
|
+
|
|
124
|
+
quality_checklists:
|
|
125
|
+
freedom: medium
|
|
126
|
+
format: Tables with boolean descriptions
|
|
127
|
+
|
|
128
|
+
# High freedom - multiple valid paths
|
|
129
|
+
examples:
|
|
130
|
+
freedom: high
|
|
131
|
+
format: Prose with code blocks
|
|
132
|
+
|
|
133
|
+
workflow_decisions:
|
|
134
|
+
freedom: high
|
|
135
|
+
format: Prose with options
|
|
136
|
+
|
|
137
|
+
importance_keywords:
|
|
138
|
+
BLOCKING: Must not skip, halts execution if violated
|
|
139
|
+
MANDATORY: Required, but can continue with warning
|
|
140
|
+
CRITICAL: High priority, affects correctness
|
|
141
|
+
REQUIRED: Needed for completion
|
|
142
|
+
OPTIONAL: Can skip without impact
|
|
143
|
+
|
|
144
|
+
variable_syntax:
|
|
145
|
+
pattern: "{variable_name}"
|
|
146
|
+
examples:
|
|
147
|
+
- "{folder_path}"
|
|
148
|
+
- "{feature_id}"
|
|
149
|
+
- "{task_id}"
|
|
150
|
+
|
|
151
|
+
gate_format:
|
|
152
|
+
pattern: "GATE: {assertion}"
|
|
153
|
+
examples:
|
|
154
|
+
- "GATE: files_analyzed == true"
|
|
155
|
+
- "GATE: tests_passing AND coverage >= 80%"
|
|
156
|
+
- "GATE: human_approval == received"
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
## Principle 5: Sub-Agent Decomposition
|
|
160
|
+
|
|
161
|
+
Delegate specific concerns to isolated sub-agents when the main agent benefits from separation of concerns.
|
|
162
|
+
|
|
163
|
+
```yaml
|
|
164
|
+
principle:
|
|
165
|
+
name: Sub-Agent Decomposition
|
|
166
|
+
rationale: Some tasks benefit from isolated execution with fresh context
|
|
167
|
+
|
|
168
|
+
when_to_apply:
|
|
169
|
+
validation:
|
|
170
|
+
use_when: DoD checking, quality gates, or acceptance criteria need unbiased evaluation
|
|
171
|
+
why: Validator should not be influenced by the builder's context
|
|
172
|
+
example: "Spawn sub-agent to validate DoD after implementation"
|
|
173
|
+
|
|
174
|
+
feedback_and_reflection:
|
|
175
|
+
use_when: Output benefits from critique-and-revise cycle
|
|
176
|
+
why: Reviewer with fresh eyes catches what the author misses
|
|
177
|
+
example: "Spawn sub-agent to review technical design, main agent revises based on feedback"
|
|
178
|
+
|
|
179
|
+
parallel_work:
|
|
180
|
+
use_when: Independent work items have no data dependencies
|
|
181
|
+
why: Multiple sub-agents can work concurrently on separate concerns
|
|
182
|
+
example: "Spawn sub-agents to analyze 3 independent modules simultaneously"
|
|
183
|
+
|
|
184
|
+
no_decompose:
|
|
185
|
+
when: Steps are sequential with tight data coupling
|
|
186
|
+
when: Task is simple enough for single agent
|
|
187
|
+
when: Overhead of coordination exceeds benefit
|
|
188
|
+
|
|
189
|
+
sub_agent_definition:
|
|
190
|
+
agent_id:
|
|
191
|
+
role: "{role_name}"
|
|
192
|
+
goal: "{what_agent_should_accomplish}"
|
|
193
|
+
inputs: ["{input_variables}"]
|
|
194
|
+
outputs: ["{output_names}"]
|
|
195
|
+
tools: ["{tool_list}"]
|
|
196
|
+
isolated: true | false # true = fresh context, no builder bias
|
|
197
|
+
|
|
198
|
+
usage_in_skills:
|
|
199
|
+
format: |
|
|
200
|
+
sub_agents:
|
|
201
|
+
- id: "{agent_id}"
|
|
202
|
+
role: "{role}"
|
|
203
|
+
goal: "{goal}"
|
|
204
|
+
trigger: "{when_to_spawn}"
|
|
205
|
+
isolated: true | false
|
|
206
|
+
note: "Model is NOT specified here — each skill defines its own default model"
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
# Part 2: Skill Specification
|
|
212
|
+
|
|
213
|
+
## Skill Types
|
|
214
|
+
|
|
215
|
+
```yaml
|
|
216
|
+
skill_types:
|
|
217
|
+
x-ipe-task-based:
|
|
218
|
+
purpose: Development lifecycle workflows
|
|
219
|
+
naming_convention: "x-ipe-task-based-{name}"
|
|
220
|
+
examples:
|
|
221
|
+
- x-ipe-task-based-ideation
|
|
222
|
+
- x-ipe-task-based-code-implementation
|
|
223
|
+
- x-ipe-task-based-bug-fix
|
|
224
|
+
|
|
225
|
+
x-ipe-task-category:
|
|
226
|
+
purpose: Orchestration skill that is called when all related task-based skills in a category finish their work
|
|
227
|
+
naming_convention: "x-ipe-{category}-{operation-name}"
|
|
228
|
+
examples:
|
|
229
|
+
- x-ipe-task-board-management
|
|
230
|
+
- x-ipe-feature-board-management
|
|
231
|
+
|
|
232
|
+
x-ipe-tool:
|
|
233
|
+
purpose: Utility functions and tool integrations
|
|
234
|
+
naming_convention: "x-ipe-tool-{name}"
|
|
235
|
+
examples:
|
|
236
|
+
- x-ipe-tool-pdf
|
|
237
|
+
- x-ipe-tool-pptx
|
|
238
|
+
- x-ipe-tool-frontend-design
|
|
239
|
+
|
|
240
|
+
x-ipe-workflow-orchestration:
|
|
241
|
+
purpose: Multi-step workflow coordination across skill types
|
|
242
|
+
naming_convention: "x-ipe-workflow-{name}"
|
|
243
|
+
examples:
|
|
244
|
+
- x-ipe-workflow-task-execution-guideline
|
|
245
|
+
|
|
246
|
+
x-ipe-meta:
|
|
247
|
+
purpose: Skills used to create, validate, or manage other skills
|
|
248
|
+
naming_convention: "x-ipe-meta-{name}"
|
|
249
|
+
examples:
|
|
250
|
+
- x-ipe-meta-skill-creator-v3
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
## Skill Anatomy
|
|
254
|
+
|
|
255
|
+
```yaml
|
|
256
|
+
skill_structure:
|
|
257
|
+
required:
|
|
258
|
+
SKILL.md:
|
|
259
|
+
frontmatter:
|
|
260
|
+
name: required
|
|
261
|
+
description: required # Include trigger conditions here
|
|
262
|
+
body: Markdown instructions
|
|
263
|
+
|
|
264
|
+
optional:
|
|
265
|
+
scripts/:
|
|
266
|
+
purpose: Executable code
|
|
267
|
+
when_to_include: Same code rewritten repeatedly, deterministic reliability needed
|
|
268
|
+
benefit: Token efficient, deterministic
|
|
269
|
+
|
|
270
|
+
references/:
|
|
271
|
+
purpose: Documentation loaded as needed
|
|
272
|
+
when_to_include: Documentation AI Agent should reference while working
|
|
273
|
+
benefit: Keeps SKILL.md lean
|
|
274
|
+
|
|
275
|
+
templates/:
|
|
276
|
+
purpose: Document templates for output
|
|
277
|
+
when_to_include: Skill produces standardized documents
|
|
278
|
+
benefit: Consistent output format
|
|
279
|
+
|
|
280
|
+
directory_structure: |
|
|
281
|
+
skill-name/
|
|
282
|
+
├── SKILL.md (required)
|
|
283
|
+
│ ├── YAML frontmatter (required)
|
|
284
|
+
│ │ ├── name: (required)
|
|
285
|
+
│ │ └── description: (required)
|
|
286
|
+
│ └── Markdown instructions (required)
|
|
287
|
+
└── Bundled Resources (optional)
|
|
288
|
+
├── scripts/ - Executable code
|
|
289
|
+
├── references/ - Documentation loaded as needed
|
|
290
|
+
└── templates/ - Document templates for output
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
## Section Order Reference
|
|
294
|
+
|
|
295
|
+
See [2. reference-section-order.md](2.%20reference-section-order.md) for full section order by skill type.
|
|
296
|
+
|
|
297
|
+
---
|
|
298
|
+
|
|
299
|
+
# Part 3: Workflow Patterns
|
|
300
|
+
|
|
301
|
+
## Pattern Selection Guide
|
|
302
|
+
|
|
303
|
+
| Pattern | Best For | When to Use |
|
|
304
|
+
|---------|----------|-------------|
|
|
305
|
+
| Step-Based Workflow (XML) | Linear execution following exact steps | Task must be executed in specific order, steps have distinct constraints/outputs/success criteria |
|
|
306
|
+
| Function-Based Workflow (XML) | Caller selects functions as needed | Skill provides library of capabilities, caller decides which to use and when |
|
|
307
|
+
|
|
308
|
+
---
|
|
309
|
+
|
|
310
|
+
## Pattern 1: Step-Based Workflow (XML-Tagged)
|
|
311
|
+
|
|
312
|
+
**Use for:** Procedures that must be executed in exact step order.
|
|
313
|
+
|
|
314
|
+
CRITICAL: Only XML elements defined in the template below are allowed. Do NOT introduce custom XML tags or modify the structure.
|
|
315
|
+
|
|
316
|
+
### Template
|
|
317
|
+
|
|
318
|
+
```xml
|
|
319
|
+
<procedure name="{procedure_name}">
|
|
320
|
+
<!-- CRITICAL: Both DoR/DoD check elements below are MANDATORY -->
|
|
321
|
+
<execute_dor_checks_before_starting/>
|
|
322
|
+
<schedule_dod_checks_with_sub_agent_before_starting/>
|
|
323
|
+
|
|
324
|
+
<step_1>
|
|
325
|
+
<name>{Step Name}</name>
|
|
326
|
+
<action>
|
|
327
|
+
1. {sub_action_1}
|
|
328
|
+
2. {sub_action_2}
|
|
329
|
+
</action>
|
|
330
|
+
<constraints>
|
|
331
|
+
- BLOCKING: {must_not_violate}
|
|
332
|
+
- CRITICAL: {important_consideration}
|
|
333
|
+
</constraints>
|
|
334
|
+
<success_criteria>
|
|
335
|
+
- {criterion_1}
|
|
336
|
+
- {criterion_2}
|
|
337
|
+
</success_criteria>
|
|
338
|
+
<output>{what_this_step_produces}</output>
|
|
339
|
+
</step_1>
|
|
340
|
+
|
|
341
|
+
<step_2>
|
|
342
|
+
<name>{Next Step}</name>
|
|
343
|
+
<requires>{output_from_step_1}</requires>
|
|
344
|
+
<action>
|
|
345
|
+
1. {action}
|
|
346
|
+
</action>
|
|
347
|
+
<constraints>
|
|
348
|
+
- {constraint}
|
|
349
|
+
</constraints>
|
|
350
|
+
<success_criteria>
|
|
351
|
+
- {criterion}
|
|
352
|
+
</success_criteria>
|
|
353
|
+
<output>{output}</output>
|
|
354
|
+
</step_2>
|
|
355
|
+
|
|
356
|
+
<step_3>
|
|
357
|
+
...
|
|
358
|
+
</step_3>
|
|
359
|
+
|
|
360
|
+
<sub-agent-planning>
|
|
361
|
+
<sub_agent_1>
|
|
362
|
+
<sub_agent_definition>
|
|
363
|
+
<role>{role_name}</role>
|
|
364
|
+
<prompt>{context, goal}</prompt>
|
|
365
|
+
</sub_agent_definition>
|
|
366
|
+
<workflow_step_reference>step_1, step_2</workflow_step_reference>
|
|
367
|
+
</sub_agent_1>
|
|
368
|
+
<sub_agent_2>
|
|
369
|
+
<sub_agent_definition>
|
|
370
|
+
<role>{role_name}</role>
|
|
371
|
+
<prompt>{context, goal}</prompt>
|
|
372
|
+
</sub_agent_definition>
|
|
373
|
+
<workflow_step_reference>step_3</workflow_step_reference>
|
|
374
|
+
<starting_condition>
|
|
375
|
+
- "START sub-agent after sub-agent_1 completes"
|
|
376
|
+
</starting_condition>
|
|
377
|
+
</sub_agent_2>
|
|
378
|
+
</procedure>
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
### Examples
|
|
382
|
+
|
|
383
|
+
See examples in this folder:
|
|
384
|
+
- [3. example-step-based-code-review.md](3.%20example-step-based-code-review.md) - Code review with multi-component steps
|
|
385
|
+
- [4. example-step-based-feature-implementation.md](4.%20example-step-based-feature-implementation.md) - TDD-based feature implementation
|
|
386
|
+
|
|
387
|
+
---
|
|
388
|
+
|
|
389
|
+
## Pattern 2: Function-Based Workflow (XML-Tagged)
|
|
390
|
+
|
|
391
|
+
**Use for:** Skills that provide a library of capabilities where the caller decides which functions to use and when.
|
|
392
|
+
|
|
393
|
+
CRITICAL: This pattern defines available functions but does NOT prescribe execution order. Caller invokes functions based on their specific needs.
|
|
394
|
+
|
|
395
|
+
CRITICAL: Only XML elements defined in the template below are allowed. Do NOT introduce custom XML tags or modify the structure.
|
|
396
|
+
|
|
397
|
+
### Template
|
|
398
|
+
|
|
399
|
+
```xml
|
|
400
|
+
<functions>
|
|
401
|
+
<!-- CRITICAL: Both DoR/DoD check elements below are MANDATORY -->
|
|
402
|
+
<execute_dor_checks_before_starting/>
|
|
403
|
+
<schedule_dod_checks_with_sub_agent_before_starting/>
|
|
404
|
+
|
|
405
|
+
<function name="{function_name_1}">
|
|
406
|
+
<purpose>{what this function accomplishes}</purpose>
|
|
407
|
+
<when_to_use>{scenarios where this function is appropriate}</when_to_use>
|
|
408
|
+
<inputs>
|
|
409
|
+
- {input_parameter_1}: {description}
|
|
410
|
+
- {input_parameter_2}: {description}
|
|
411
|
+
</inputs>
|
|
412
|
+
<action>
|
|
413
|
+
1. {step_1}
|
|
414
|
+
2. {step_2}
|
|
415
|
+
3. {step_3}
|
|
416
|
+
</action>
|
|
417
|
+
<constraints>
|
|
418
|
+
- BLOCKING: {must_not_violate}
|
|
419
|
+
- CRITICAL: {important_consideration}
|
|
420
|
+
</constraints>
|
|
421
|
+
<outputs>
|
|
422
|
+
- {output_1}: {description}
|
|
423
|
+
- {output_2}: {description}
|
|
424
|
+
</outputs>
|
|
425
|
+
</function>
|
|
426
|
+
|
|
427
|
+
<function name="{function_name_2}">
|
|
428
|
+
<purpose>{what this function accomplishes}</purpose>
|
|
429
|
+
<when_to_use>{scenarios where this function is appropriate}</when_to_use>
|
|
430
|
+
<inputs>
|
|
431
|
+
- {input_parameter}: {description}
|
|
432
|
+
</inputs>
|
|
433
|
+
<action>
|
|
434
|
+
1. {step_1}
|
|
435
|
+
2. {step_2}
|
|
436
|
+
</action>
|
|
437
|
+
<constraints>
|
|
438
|
+
- {constraint}
|
|
439
|
+
</constraints>
|
|
440
|
+
<outputs>
|
|
441
|
+
- {output}: {description}
|
|
442
|
+
</outputs>
|
|
443
|
+
</function>
|
|
444
|
+
|
|
445
|
+
<function name="{function_name_3}">
|
|
446
|
+
<purpose>{what this function accomplishes}</purpose>
|
|
447
|
+
<when_to_use>{scenarios where this function is appropriate}</when_to_use>
|
|
448
|
+
<inputs>
|
|
449
|
+
- {input_parameter}: {description}
|
|
450
|
+
</inputs>
|
|
451
|
+
<action>
|
|
452
|
+
1. {step}
|
|
453
|
+
</action>
|
|
454
|
+
<outputs>
|
|
455
|
+
- {output}: {description}
|
|
456
|
+
</outputs>
|
|
457
|
+
</function>
|
|
458
|
+
|
|
459
|
+
</functions>
|
|
460
|
+
```
|
|
461
|
+
|
|
462
|
+
### Usage Notes
|
|
463
|
+
|
|
464
|
+
- Functions are **independent** - caller can invoke any function without prerequisites (unless explicitly stated in `<requires>` tag)
|
|
465
|
+
- Functions can be invoked **multiple times** if needed
|
|
466
|
+
- Functions can be invoked in **any order** based on caller's needs
|
|
467
|
+
- If a function requires output from another function, add `<requires>{function_name} output</requires>` tag
|
|
468
|
+
|
|
469
|
+
### Examples
|
|
470
|
+
|
|
471
|
+
See examples in this folder:
|
|
472
|
+
- [5. example-function-based-validation.md](5.%20example-function-based-validation.md) - Validation utilities library
|
|
473
|
+
- [6. example-function-based-analysis.md](6.%20example-function-based-analysis.md) - Code analysis toolkit
|
|
474
|
+
|
|
475
|
+
---
|
|
476
|
+
|
|
477
|
+
# Part 4: Common Skill Section Patterns
|
|
478
|
+
|
|
479
|
+
## Task Input
|
|
480
|
+
|
|
481
|
+
```yaml
|
|
482
|
+
task_input:
|
|
483
|
+
# Required attributes (from task board or previous task)
|
|
484
|
+
task_id: "{TASK-XXX}"
|
|
485
|
+
task_type: "{task_type}"
|
|
486
|
+
|
|
487
|
+
# Context attributes (loaded from project)
|
|
488
|
+
"{context_attr_1}": "{value or path}"
|
|
489
|
+
"{context_attr_2}": "{value or path}"
|
|
490
|
+
|
|
491
|
+
# Dynamic attributes (from previous task output)
|
|
492
|
+
"{dynamic_attr}": "{value}"
|
|
493
|
+
```
|
|
494
|
+
|
|
495
|
+
## Task Completion Output
|
|
496
|
+
|
|
497
|
+
```yaml
|
|
498
|
+
task_completion_output:
|
|
499
|
+
category: "{standalone | feature-stage | requirement-stage | ideation-stage}"
|
|
500
|
+
status: "{completed | blocked}"
|
|
501
|
+
next_task_type: "{next_task_type}"
|
|
502
|
+
require_human_review: "{yes | no}"
|
|
503
|
+
task_output_links:
|
|
504
|
+
- "{output_file_path_1}"
|
|
505
|
+
- "{output_file_path_2}"
|
|
506
|
+
# Dynamic attributes
|
|
507
|
+
"{attr_name}": "{value}"
|
|
508
|
+
```
|
|
509
|
+
|
|
510
|
+
See [7. example-task-io-code-implementation.md](7.%20example-task-io-code-implementation.md) for complete input/output example.
|
|
511
|
+
|
|
512
|
+
## Structured Summary
|
|
513
|
+
|
|
514
|
+
Use markdown table for skill outputs that summarize multiple items with consistent attributes.
|
|
515
|
+
|
|
516
|
+
### Template
|
|
517
|
+
|
|
518
|
+
```markdown
|
|
519
|
+
| {Column1} | {Column2} | {Column3} | {Column4} |
|
|
520
|
+
|-----------|-----------|-----------|-----------|
|
|
521
|
+
| {value} | {value} | {value} | {value} |
|
|
522
|
+
```
|
|
523
|
+
|
|
524
|
+
See [8. example-structured-summary.md](8.%20example-structured-summary.md) for examples (Feature, Dependency, Requirement, Test Coverage).
|
|
525
|
+
|
|
526
|
+
## DoR/DoD Pattern
|
|
527
|
+
|
|
528
|
+
Use XML format for Definition of Ready (DoR) and Definition of Done (DoD) sections.
|
|
529
|
+
|
|
530
|
+
### Template
|
|
531
|
+
|
|
532
|
+
```xml
|
|
533
|
+
<definition_of_ready>
|
|
534
|
+
<checkpoint required="true">
|
|
535
|
+
<name>{Prerequisite Name}</name>
|
|
536
|
+
<verification>{How to verify}</verification>
|
|
537
|
+
</checkpoint>
|
|
538
|
+
<checkpoint required="true">
|
|
539
|
+
<name>{Another Prerequisite}</name>
|
|
540
|
+
<verification>{How to verify}</verification>
|
|
541
|
+
</checkpoint>
|
|
542
|
+
<checkpoint required="recommended">
|
|
543
|
+
<name>{Optional Prerequisite}</name>
|
|
544
|
+
<verification>{How to verify}</verification>
|
|
545
|
+
</checkpoint>
|
|
546
|
+
</definition_of_ready>
|
|
547
|
+
```
|
|
548
|
+
|
|
549
|
+
```xml
|
|
550
|
+
<definition_of_done>
|
|
551
|
+
<checkpoint required="true">
|
|
552
|
+
<name>{Output Name}</name>
|
|
553
|
+
<verification>{How to verify}</verification>
|
|
554
|
+
</checkpoint>
|
|
555
|
+
</definition_of_done>
|
|
556
|
+
```
|
|
557
|
+
|
|
558
|
+
See [9. example-dor-dod.md](9.%20example-dor-dod.md) for examples (Code Implementation, Feature Refinement).
|
|
559
|
+
|
|
560
|
+
## Gate Conditions
|
|
561
|
+
|
|
562
|
+
Use Gate Conditions as an alternative to DoR/DoD when you have complex branching logic in entry/exit criteria.
|
|
563
|
+
|
|
564
|
+
### Simple Gates (Inline)
|
|
565
|
+
|
|
566
|
+
For simple pass/fail conditions, use inline format:
|
|
567
|
+
|
|
568
|
+
```
|
|
569
|
+
GATE: document_created == true
|
|
570
|
+
GATE: all_tests_pass == true
|
|
571
|
+
GATE: human_review == approved
|
|
572
|
+
```
|
|
573
|
+
|
|
574
|
+
### Complex Gates (YAML)
|
|
575
|
+
|
|
576
|
+
For gates with multiple conditions, thresholds, or branching logic:
|
|
577
|
+
|
|
578
|
+
```yaml
|
|
579
|
+
gate:
|
|
580
|
+
name: "{Gate Name}"
|
|
581
|
+
conditions:
|
|
582
|
+
logic: AND | OR
|
|
583
|
+
checks:
|
|
584
|
+
- type: completion
|
|
585
|
+
condition: "{condition_1} == true"
|
|
586
|
+
- type: threshold
|
|
587
|
+
condition: "{metric} >= {value}"
|
|
588
|
+
- type: approval
|
|
589
|
+
condition: "{approver} == approved"
|
|
590
|
+
on_pass: "{action_if_pass}"
|
|
591
|
+
on_fail: "{action_if_fail}"
|
|
592
|
+
```
|
|
593
|
+
|
|
594
|
+
See [10. example-gate-conditions.md](10.%20example-gate-conditions.md) for examples (Quality Gate, Approval Gate, Release Gate).
|
|
595
|
+
|
|
596
|
+
---
|
|
597
|
+
|
|
598
|
+
# Part 5: Quality Reference
|
|
599
|
+
|
|
600
|
+
CRITICAL: Use keywords (BLOCKING, CRITICAL, MANDATORY) for importance signals in skill content. Agents pattern-match keywords more reliably than Unicode symbols.
|
|
601
|
+
|
|
602
|
+
| Keyword | Meaning |
|
|
603
|
+
|---------|---------|
|
|
604
|
+
| `BLOCKING:` | Must not skip, halts execution |
|
|
605
|
+
| `CRITICAL:` | High priority, affects correctness |
|
|
606
|
+
| `MANDATORY:` | Required, continue with warning if missing |
|
|
607
|
+
|
|
608
|
+
See [11. reference-quality-standards.md](11.%20reference-quality-standards.md) for:
|
|
609
|
+
- Full importance keywords reference
|
|
610
|
+
- Common mistakes (anti-patterns)
|
|
611
|
+
- What NOT to include in skills
|