xdrs-core 0.49.1 → 0.51.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,13 +6,46 @@ description: >
6
6
  Also activate when you identify a need to check compliance with Policies during implementation.
7
7
  metadata:
8
8
  author: flaviostutz
9
- version: "1.0"
9
+ version: "1.0.0"
10
+ updated: 2026-09-19
10
11
  ---
11
12
 
12
13
  ## Overview
13
14
 
14
15
  Performs a structured review of code changes or files against the Policies in the repository, categorizing findings by severity and type, and reporting them without modifying any code.
15
16
 
17
+ ### Inputs
18
+
19
+ #### Required
20
+
21
+ - A git diff, file set, or documents to review.
22
+
23
+ #### Optional
24
+
25
+ - Specific Policies or scope to focus on.
26
+
27
+ ### Outputs
28
+
29
+ #### Contents
30
+
31
+ - Structured ERROR/WARNING findings report in chat.
32
+
33
+ #### Changes
34
+
35
+ - None.
36
+
37
+ ### Halt Conditions
38
+
39
+ - A declared follows scope is missing or unreadable.
40
+ - A declared extends scope is missing or unreadable.
41
+ - A local meta-policy file exists but cannot be read.
42
+ - The declared scope-type has no governance policy.
43
+
44
+ ### Runtime Requirements
45
+
46
+ - `git` available for diff-scoped reviews.
47
+ - `npx @mermaid-js/mermaid-cli` for Mermaid diagram checks.
48
+
16
49
  ## Instructions
17
50
 
18
51
  ### Phase 1: Code Gathering
@@ -112,10 +145,23 @@ Scope: [scope identifier]
112
145
  - If no Policies apply to the scope, output "No applicable Policies found" and skip reporting.
113
146
  - If a potential violation is in pre-existing code outside the diff, report it as WARNING only.
114
147
 
148
+ ## Anti-Patterns
149
+
150
+ - **Mistake:** Reporting a finding based on general good-practice opinion with no specific Policy citation.
151
+ **Why it happens:** The reviewer conflates "seems wrong" with "violates a documented rule".
152
+ **Instead:** Drop any finding that cannot be traced to a specific rule in an Accepted Policy.
153
+
154
+ - **Mistake:** Skipping the prerequisites gate (follows/extends/local meta-policy checks) when the scope looks simple.
155
+ **Why it happens:** The gate feels like overhead for a quick review request.
156
+ **Instead:** Always run the full prerequisites gate first; a silent FAIL on a missing governance layer is safer than an unreliable PASS.
157
+
158
+ - **Mistake:** Editing the reviewed code directly to "just fix it" instead of only reporting findings.
159
+ **Why it happens:** Fixing feels faster than describing the fix.
160
+ **Instead:** This skill MUST NOT edit code; only report findings and suggested actions.
161
+
115
162
  ## References
116
163
 
117
164
  - [_core-adr-policy-001 - XDRS standards](../../001-xdrs-standards.md)
118
165
  - [_core-adr-policy-002 - Policy standards](../../002-policy-standards.md)
119
166
  - [_core-adr-policy-003 - Skill standards](../../003-skill-standards.md)
120
167
  - [_core-adr-policy-020 - Media and asset standards](../../020-media-and-asset-standards.md)
121
-
@@ -4,13 +4,42 @@ description: >
4
4
  Creates a new article document following XDRS article standards: selects scope, type, subject, and number; then writes a focused synthetic text that combines and links multiple Policies, Research documents, and Skills around a topic. Activate this skill when the user asks to create, add, or write a new article, guide, or overview document within an XDRS project.
5
5
  metadata:
6
6
  author: flaviostutz
7
- version: "1.0"
7
+ version: "1.0.0"
8
+ updated: 2026-09-19
8
9
  ---
9
10
 
10
11
  ## Overview
11
12
 
12
13
  Guides the creation of a well-structured article by following `_core-adr-policy-004`, consulting `policy-standards` for every core element definition, researching the Policies, Research documents, and Skills to synthesize, and producing a concise document that serves as a navigable view without duplicating decision content.
13
14
 
15
+ ### Inputs
16
+
17
+ #### Required
18
+
19
+ - A topic for the article.
20
+
21
+ #### Optional
22
+
23
+ - Target audience, scope, or XDRS elements to synthesize.
24
+
25
+ ### Outputs
26
+
27
+ #### Contents
28
+
29
+ - A new article file.
30
+
31
+ #### Changes
32
+
33
+ - Index entry and back-references in synthesized documents.
34
+
35
+ ### Halt Conditions
36
+
37
+ - No relevant Policies, Research, or Skills exist to synthesize.
38
+
39
+ ### User Interaction
40
+
41
+ - Clarification of target audience when unspecified.
42
+
14
43
  ## Instructions
15
44
 
16
45
  ### Phase 0: Clarify Intent
@@ -151,6 +180,22 @@ Follow the lint verification steps in `.xdrs/_core/adrs/principles/skills/.asset
151
180
  - MUST NOT create documents in external scopes (scopes whose files appear in the workspace root `.filedist.lock`).
152
181
  - MUST defer to active and applicable Policies when article synthesis conflicts with them.
153
182
 
183
+ ## Anti-Patterns
184
+
185
+ - **Mistake:** Reproducing decision text verbatim from a Policy instead of summarizing and linking to it.
186
+ **Why it happens:** Copying feels safer/more accurate than paraphrasing.
187
+ **Instead:** Articles are views, not decisions; summarize and link back to the authoritative Policy.
188
+
189
+ - **Mistake:** Writing an article that spans multiple unrelated subjects without splitting it into chapters.
190
+ **Why it happens:** A broad topic feels easier to cover in one long document.
191
+ **Instead:** Once content approaches ~2000 words or covers distinct sub-topics, split into separate chapter articles per Phase 5/Edge Cases guidance.
192
+
193
+ - **Mistake:** Skipping Phase 0 clarifying questions (topic/audience/scope) because the request seems clear.
194
+ **Why it happens:** The request looks self-explanatory, so asking feels like unnecessary friction.
195
+ **Instead:** Always ask the mandatory Phase 0 questions in a single batch before reading standards; audience in particular is easy to assume wrongly.
196
+
197
+ ## References
198
+
154
199
  - [_core-adr-policy-004 - Article standards](../../004-article-standards.md)
155
200
  - [_core-adr-policy-006 - Research standards](../../006-research-standards.md)
156
201
  - [_core-adr-policy-001 - XDRS standards](../../001-xdrs-standards.md)
@@ -6,13 +6,42 @@ description: >
6
6
  Activate this skill when the user asks to create, add, or write an initiative, plan, project plan, roadmap, or execution plan within an XDRS project.
7
7
  metadata:
8
8
  author: flaviostutz
9
- version: "1.0"
9
+ version: "1.0.0"
10
+ updated: 2026-09-19
10
11
  ---
11
12
 
12
13
  ## Overview
13
14
 
14
15
  Guides the creation of a well-structured initiative document by following `_core-adr-policy-007`, consulting `xdrs-core` for every core element definition, researching related Policies and existing initiatives, and producing a focused execution document that connects to the decisions, research, and skills it relates to.
15
16
 
17
+ ### Inputs
18
+
19
+ #### Required
20
+
21
+ - A problem statement and proposed solution.
22
+
23
+ #### Optional
24
+
25
+ - Expected timeline or milestones.
26
+
27
+ ### Outputs
28
+
29
+ #### Contents
30
+
31
+ - A new initiative file.
32
+
33
+ #### Changes
34
+
35
+ - Index entry and back-references in related documents.
36
+
37
+ ### Halt Conditions
38
+
39
+ - Rejects an expected end date beyond 2 years.
40
+
41
+ ### User Interaction
42
+
43
+ - Clarifying questions about stakeholders and constraints, one batch.
44
+
16
45
  ## Instructions
17
46
 
18
47
  ### Phase 0: Scope Placement and Prerequisites Gate — MUST complete before writing
@@ -32,7 +61,6 @@ Guides the creation of a well-structured initiative document by following `_core
32
61
  - Typical questions cover: the problem being solved, the proposed solution, the expected timeline, the scope, the key stakeholders, and any known constraints or risks.
33
62
  - Do NOT ask questions whose answers are already clear from context.
34
63
 
35
-
36
64
  ### Phase 2: Select Scope, Type, and Subject
37
65
 
38
66
  Consult `001-xdrs-standards` while making each choice in this phase. The summaries below are orientation only; when any detail is unclear, the standard decides.
@@ -154,6 +182,20 @@ Follow the lint verification steps in `.xdrs/_core/adrs/principles/skills/.asset
154
182
  - If an initiative is fully implemented, delete it and confirm that all lasting outputs (Decisions, Skills, Articles, etc.) are properly linked and indexed.
155
183
  - If the user asks for an initiative that is really just a decision, guide them to create a Policy instead.
156
184
 
185
+ ## Anti-Patterns
186
+
187
+ - **Mistake:** Writing a heavy, generic project-management document instead of focusing on problem/solution/approach.
188
+ **Why it happens:** Initiative templates have many optional sections, tempting the author to fill all of them.
189
+ **Instead:** Only fill optional sections when they add real value; keep the document focused and ephemeral.
190
+
191
+ - **Mistake:** Leaving a completed initiative in the repository indefinitely instead of deleting it after implementation.
192
+ **Why it happens:** Deleting a finished document feels like discarding useful history.
193
+ **Instead:** Initiatives are ephemeral; delete them after full implementation once outputs are linked/indexed elsewhere.
194
+
195
+ - **Mistake:** Setting an Expected end date more than 2 years out instead of splitting the initiative.
196
+ **Why it happens:** A large effort feels like one continuous initiative.
197
+ **Instead:** Break initiatives whose scope exceeds 2 years into multiple smaller, independently actionable initiatives.
198
+
157
199
  ## References
158
200
 
159
201
  - [_core-adr-policy-001 - XDRS standards](../../001-xdrs-standards.md)
@@ -5,13 +5,42 @@ description: >
5
5
  Activate this skill when the user asks to create, add, or write a new Policy (ADR, BDR, or EDR).
6
6
  metadata:
7
7
  author: flaviostutz
8
- version: "1.0"
8
+ version: "1.0.0"
9
+ updated: 2026-09-19
9
10
  ---
10
11
 
11
12
  ## Overview
12
13
 
13
14
  Guides the creation of a well-structured Policy by following the standards in `_core-adr-policy-001`, consulting `policy-standards` for every core element definition, researching existing policies for conflicts, checking redundancy across related artifacts, and iterating until the document is concise, decision-focused, and clear about when the decision should be used.
14
15
 
16
+ ### Inputs
17
+
18
+ #### Required
19
+
20
+ - A decision topic to document.
21
+
22
+ #### Optional
23
+
24
+ - Preferred Policy type, if already known.
25
+
26
+ ### Outputs
27
+
28
+ #### Contents
29
+
30
+ - A new Policy file.
31
+
32
+ #### Changes
33
+
34
+ - Index entries added in the relevant scope.
35
+
36
+ ### Halt Conditions
37
+
38
+ - Decision conflicts with an existing Policy, unresolved.
39
+
40
+ ### User Interaction
41
+
42
+ - Clarifying questions when the decision topic is ambiguous.
43
+
15
44
  ## Instructions
16
45
 
17
46
  ### Phase 0: Scope Placement and Prerequisites Gate — MUST complete before writing
@@ -187,6 +216,20 @@ Follow the lint verification steps in `.xdrs/_core/adrs/principles/skills/.asset
187
216
  - MUST keep scope `_local` unless the user explicitly states otherwise.
188
217
  - MUST NOT create documents in external scopes (scopes whose files appear in the workspace root `.filedist.lock`).
189
218
 
219
+ ## Anti-Patterns
220
+
221
+ - **Mistake:** Creating a new Policy that duplicates a decision already captured elsewhere instead of extending or linking it.
222
+ **Why it happens:** Writing a fresh Policy feels faster than researching existing ones in Phase 4.
223
+ **Instead:** Always research related Policies first; extend or reference an existing decision rather than duplicating it.
224
+
225
+ - **Mistake:** Using lowercase "must"/"should" for normative requirements instead of uppercase BCP 14 keywords.
226
+ **Why it happens:** Natural writing style favors lowercase, and the distinction feels pedantic.
227
+ **Instead:** Use uppercase MUST/SHOULD/MAY for every normative statement in Details and Decision Outcome; verify in Phase 7.
228
+
229
+ - **Mistake:** Skipping the Phase 0 prerequisites gate for a scope that "obviously" has no follows/extends chain.
230
+ **Why it happens:** The gate feels unnecessary when the scope looks simple.
231
+ **Instead:** Always run the prerequisites gate before writing; a missing governance layer produces an unreliable Policy.
232
+
190
233
  ## References
191
234
 
192
235
  - [_core-adr-policy-001 - XDRS standards](../../001-xdrs-standards.md)
@@ -5,13 +5,46 @@ description: >
5
5
  Activate this skill when the user asks to create slides, a presentation, or a slide deck for an XDRS document.
6
6
  metadata:
7
7
  author: flaviostutz
8
- version: "1.0"
8
+ version: "1.0.0"
9
+ updated: 2026-09-19
9
10
  ---
10
11
 
11
12
  ## Overview
12
13
 
13
14
  Guides the creation of a Marp Markdown slide presentation that supports an existing XDRS document. The skill ensures the slides follow presentation standards (`_core-adr-policy-009`), are correctly placed in the `.assets/` folder, and maintain bidirectional links with the parent document.
14
15
 
16
+ ### Inputs
17
+
18
+ #### Required
19
+
20
+ - A parent XDRS document to present.
21
+
22
+ #### Optional
23
+
24
+ - Target audience for the slides.
25
+
26
+ ### Outputs
27
+
28
+ #### Contents
29
+
30
+ - A new Marp slide deck file.
31
+
32
+ #### Changes
33
+
34
+ - A bidirectional link added to the parent document.
35
+
36
+ ### Halt Conditions
37
+
38
+ - Parent document does not exist yet.
39
+
40
+ ### User Interaction
41
+
42
+ - Confirmation of audience when unclear.
43
+
44
+ ### Runtime Requirements
45
+
46
+ - Marp-compatible viewer for visual rendering (optional).
47
+
15
48
  ## Instructions
16
49
 
17
50
  ### Phase 0: Prerequisites Gate — MUST complete before writing
@@ -159,6 +192,20 @@ Follow the lint verification steps in `.xdrs/_core/adrs/principles/skills/.asset
159
192
  - If the content requires more than 30 slides, split into multiple slide sets with distinct audience or topic focus.
160
193
  - If the parent document changes after slides are created, the slides must be reviewed and updated.
161
194
 
195
+ ## Anti-Patterns
196
+
197
+ - **Mistake:** Creating standalone slides for multiple documents without first creating a synthesizing article.
198
+ **Why it happens:** Building slides directly from several source documents feels quicker than authoring an article first.
199
+ **Instead:** When slides must cover multiple documents, create (or point to) an article first and build slides for that article.
200
+
201
+ - **Mistake:** Packing dense paragraphs of text onto slides instead of short bullets and visuals.
202
+ **Why it happens:** Copying exact wording from the parent Policy feels safer than summarizing.
203
+ **Instead:** Minimize text per slide; use bullets, tables, and visuals, reserving longer text only for exact-wording cases like controls.
204
+
205
+ - **Mistake:** Forgetting to add a back-link from the parent document to the new slide file.
206
+ **Why it happens:** The slide file itself already links to the parent, so the reverse link feels redundant.
207
+ **Instead:** Bidirectional links are required; always update the parent document's `## References` (Phase 6).
208
+
162
209
  ## References
163
210
 
164
211
  - [_core-adr-policy-009 - Presentation standards](../../009-presentation-standards.md)
@@ -6,7 +6,8 @@ description: >
6
6
  Activate this skill when the user asks to create, add, or write a research document that backs a decision.
7
7
  metadata:
8
8
  author: flaviostutz
9
- version: "1.4"
9
+ version: "1.4.0"
10
+ updated: 2026-09-19
10
11
  ---
11
12
 
12
13
  ## Overview
@@ -15,6 +16,38 @@ Guides the creation of a well-structured research document by following `_core-a
15
16
 
16
17
  This skill is interactive by design. Ask clarifying questions to the user at each phase where direction, evidence, or scope is unclear. Ask sequentially — one focused set of questions at a time — and wait for the user's answers before advancing to the next phase. Never front-load all questions at once if not all are yet relevant.
17
18
 
19
+ ### Inputs
20
+
21
+ #### Required
22
+
23
+ - A research direction or question.
24
+
25
+ #### Optional
26
+
27
+ - Available evidence and the intended next step.
28
+
29
+ ### Outputs
30
+
31
+ #### Contents
32
+
33
+ - A standalone IMRAD research document.
34
+
35
+ #### Changes
36
+
37
+ - Index entry and back-references where relevant.
38
+
39
+ ### Halt Conditions
40
+
41
+ - Redirects to write-policy if a final decision is wanted.
42
+
43
+ ### User Interaction
44
+
45
+ - Interactive evidence-gathering, section by section.
46
+
47
+ ### Runtime Requirements
48
+
49
+ - Python 3 for the optional ratio-check script.
50
+
18
51
  ## Instructions
19
52
 
20
53
  ### Phase 0: Scope Placement and Prerequisites Gate — MUST complete before writing
@@ -188,7 +221,6 @@ for line in text.splitlines():
188
221
  if current is not None:
189
222
  sections[current].append(line)
190
223
 
191
-
192
224
  def count_words(markdown: str) -> int:
193
225
  cleaned = markdown
194
226
  cleaned = re.sub(r"^\|(?:\s*[-:]+\s*\|)+\s*$", " ", cleaned, flags=re.M)
@@ -202,7 +234,6 @@ def count_words(markdown: str) -> int:
202
234
  words = cleaned.strip().split()
203
235
  return len(words)
204
236
 
205
-
206
237
  targets = {
207
238
  "Introduction": 3,
208
239
  "Methods": 5,
@@ -276,12 +307,6 @@ Follow the lint verification steps in `.xdrs/_core/adrs/principles/skills/.asset
276
307
  - If the supported decision does not exist yet, reference the decision topic or planned Policy title in the introduction and conclusion.
277
308
  - If the user's direction, evidence base, or intended next step is vague, ask follow-up questions and wait for clarification instead of choosing a path yourself.
278
309
 
279
- ## References
280
-
281
- - [_core-adr-policy-006 - Research standards](../../006-research-standards.md)
282
- - [_core-adr-policy-001 - XDRS standards](../../001-xdrs-standards.md)
283
- - [write-policy skill](../write-policy/SKILL.md)
284
-
285
310
  ## Constraints
286
311
 
287
312
  - MUST consult `001-xdrs-standards` as the canonical source for every core element definition, especially type, scope, subject, numbering, naming, and placement.
@@ -289,3 +314,23 @@ Follow the lint verification steps in `.xdrs/_core/adrs/principles/skills/.asset
289
314
  - MUST keep scope `_local` unless the user explicitly states otherwise.
290
315
  - MUST NOT create documents in external scopes (scopes whose files appear in the workspace root `.filedist.lock`).
291
316
  - MUST keep the document as research rather than turning it into a final decision.
317
+
318
+ ## Anti-Patterns
319
+
320
+ - **Mistake:** Writing conclusions or a final decision inside the research document instead of keeping it exploratory.
321
+ **Why it happens:** The findings feel conclusive enough to just state the decision directly.
322
+ **Instead:** Keep the document as evidence and analysis; direct the user to `write-policy` for the actual decision.
323
+
324
+ - **Mistake:** Front-loading all clarifying questions at once instead of asking sequentially as each phase reveals new gaps.
325
+ **Why it happens:** Batching questions feels more efficient for the user.
326
+ **Instead:** This skill is interactive by design — ask one focused set of questions per phase and wait for answers before advancing.
327
+
328
+ - **Mistake:** Skipping the Phase 9 word-count/ratio check because the sections "look" balanced.
329
+ **Why it happens:** Running the Python script feels like unnecessary overhead once the draft reads well.
330
+ **Instead:** Always run the ratio check; imbalance is often invisible until measured (e.g., Results ballooning past Methods).
331
+
332
+ ## References
333
+
334
+ - [_core-adr-policy-006 - Research standards](../../006-research-standards.md)
335
+ - [_core-adr-policy-001 - XDRS standards](../../001-xdrs-standards.md)
336
+ - [write-policy skill](../write-policy/SKILL.md)
@@ -6,13 +6,46 @@ description: >
6
6
  Activate this skill when the user asks to create, add, or write a new skill, agent skill, or SKILL.md file.
7
7
  metadata:
8
8
  author: flaviostutz
9
- version: "1.0"
9
+ version: "1.0.0"
10
+ updated: 2026-09-19
10
11
  ---
11
12
 
12
13
  ## Overview
13
14
 
14
15
  Guides the creation of a well-structured skill package by following `_core-adr-policy-003` skill standards, consulting `xdrs-core` for every core element definition, checking existing skills to avoid duplication, and producing a complete SKILL.md ready to activate in VS Code.
15
16
 
17
+ ### Inputs
18
+
19
+ #### Required
20
+
21
+ - A description of the task the skill should perform
22
+
23
+ #### Optional
24
+
25
+ - None
26
+
27
+ ### Outputs
28
+
29
+ #### Contents
30
+
31
+ - A complete SKILL.md file
32
+
33
+ #### Changes
34
+
35
+ - A symlink under `.agents/skills/`
36
+
37
+ ### Halt Conditions
38
+
39
+ - No writable scope can be found or inferred
40
+
41
+ ### User Interaction
42
+
43
+ - A clarifying question when scope or type is ambiguous
44
+
45
+ ### Runtime Requirements
46
+
47
+ - Write access to the target scope.
48
+
16
49
  ## Instructions
17
50
 
18
51
  ### Phase 0: Scope Placement and Prerequisites Gate — MUST complete before writing
@@ -64,13 +97,46 @@ description: >
64
97
  [What the skill does AND exactly when an agent should activate it. Max 1024 chars.]
65
98
  metadata:
66
99
  author: [author]
67
- version: "1.0"
100
+ version: "1.0.0"
101
+ updated: [YYYY-MM-DD]
68
102
  ---
69
103
 
70
104
  ## Overview
71
105
 
72
106
  [1–3 sentence goal statement with the task objective, expected outcome, and relevant prerequisites or tools when they matter.]
73
107
 
108
+ ### Inputs
109
+
110
+ #### Required
111
+
112
+ [Bare-minimum bullets needed to invoke the skill, or a single "None" bullet. Each under 10 words.]
113
+
114
+ #### Optional
115
+
116
+ [Extra helpful-context bullets, or a single "None" bullet. Each under 10 words.]
117
+
118
+ ### Outputs
119
+
120
+ #### Contents
121
+
122
+ [End-objective files/chat text produced, or a single "None" bullet. Each under 10 words.]
123
+
124
+ #### Changes
125
+
126
+ [End-objective external system mutations, or a single "None" bullet. Each under 10 words.]
127
+
128
+ ### Halt Conditions
129
+
130
+ [This skill's specific stop-before-completing triggers, or a single "None" bullet. Each under 10 words.]
131
+
132
+ ### User Interaction
133
+
134
+ [Optional. Human-in-the-loop exchanges during execution: clarifying questions or approval gates, or a single "None" bullet. Each under 10 words. Omit the whole section if none apply.]
135
+
136
+ ### Runtime Requirements
137
+
138
+ [Optional. Tooling/network prerequisites as free-form bullets. Omit the whole section if none apply.]
139
+
74
140
  ## Instructions
75
141
 
76
142
  ### Phase 1: …
@@ -78,17 +144,23 @@ metadata:
78
144
 
79
145
  ## Examples
80
146
 
81
- [At least one concrete input/context → expected agent action pair.]
147
+ [At least one concrete input/context → expected agent action pair. Include 2-3 example prompts a user could type to trigger the skill.]
82
148
 
83
149
  ## Edge Cases
84
150
 
85
151
  [Situations where the skill must not activate or must behave differently.]
86
152
 
153
+ ## Anti-Patterns
154
+
155
+ [At least 3 entries. Each with **Mistake:**/**Why it happens:**/**Instead:** structure, grounded in this specific skill's domain.]
156
+
87
157
  ## References
88
158
 
89
159
  [Links to related Policies and skills.]
90
160
  ```
91
161
 
162
+ If the skill needs to be distributed as a standalone package outside the full `xdrs-core` package, it MAY also add a bundling `Makefile` following the optional mechanism in [`_core-adr-policy-021`](../../021-skill-bundling.md). This is not required for skills that are always consumed as part of the full package.
163
+
92
164
  Rules:
93
165
  - Use imperative language ("Read …", "Ask …", "Create …").
94
166
  - The `description` field must state both *what* the skill does and *when* to activate it.
@@ -100,7 +172,7 @@ Rules:
100
172
  - For diagrams and non-Markdown assets, follow `_core-adr-policy-020`: prefer plain Markdown tables/lists first, then ASCII art for very simple cases, then Mermaid.js (sequence, state, activity, entity diagrams) for complex ones, then draw.io when Mermaid is insufficient — save as Editable Vector (File → Save As → Editable Vector) and store as `.svg` in the sibling `.assets/` folder.
101
173
  - If `SKILL.md` genuinely needs local images or supporting files, store them in `.xdrs/[scope]/[type]/[subject]/skills/[skill-name]/.assets/` and link them using a same-folder relative path (e.g., `.assets/image.png`).
102
174
  - Use relative paths for all links; never use absolute paths starting with `/`.
103
- - No emojis. Lowercase filenames. Target under 6500 words.
175
+ - No emojis. Lowercase filenames. Target under 7000 words.
104
176
 
105
177
  ### Phase 5: Review the Draft
106
178
 
@@ -108,10 +180,12 @@ Before writing files, verify:
108
180
 
109
181
  1. **Activation criteria**: Is it unambiguous when this skill loads vs. when it should not?
110
182
  2. **Completeness**: Does every phase have actionable steps?
111
- 3. **Length**: Under 6500 words? Trim verbose explanations.
183
+ 3. **Length**: Under 7000 words? Trim verbose explanations.
112
184
  4. **Duplication**: Does this overlap an existing skill? If yes, revise.
113
185
  5. **References**: Are all related XDRs and skills linked, including the cases where the skill operationalizes multiple XDRs?
114
- 6. **Meta-policy compliance**: Run the shared module at `.xdrs/_core/adrs/principles/skills/.assets/meta-policy-compliance.md`. Substitute `[DOCUMENT]` with `skill`.
186
+ 6. **Anti-Patterns**: Does the skill include at least 3 genuine, domain-specific `## Anti-Patterns` entries (not generic filler)?
187
+ 7. **Required sections**: Does `## Overview` contain nested `### Inputs` (Required/Optional bullets), `### Outputs` (Contents/Changes bullets), and `### Halt Conditions` listing this skill's specific stop triggers — each bullet under 10 words or a single "None"?
188
+ 8. **Meta-policy compliance**: Run the shared module at `.xdrs/_core/adrs/principles/skills/.assets/meta-policy-compliance.md`. Substitute `[DOCUMENT]` with `skill`.
115
189
 
116
190
  If any check fails, revise before continuing.
117
191
 
@@ -137,6 +211,7 @@ Follow the lint verification steps in `.xdrs/_core/adrs/principles/skills/.asset
137
211
  - MUST keep scope `_local` unless the user explicitly states otherwise.
138
212
  - MUST NOT create documents in external scopes (scopes whose files appear in the workspace root `.filedist.lock`).
139
213
  - MUST include a References section linking to `003-skill-standards`.
214
+ - MUST include nested `### Inputs`, `### Outputs`, and `### Halt Conditions` subsections inside `## Overview` with skill-specific content.
140
215
 
141
216
  **Input**: "Create a skill to help debug CI pipelines"
142
217
  - Type: EDR (engineering workflow)
@@ -150,14 +225,32 @@ Follow the lint verification steps in `.xdrs/_core/adrs/principles/skills/.asset
150
225
  - Subject: `application`
151
226
  - Output: `.xdrs/_local/adrs/application/skills/review-api-design/SKILL.md`
152
227
 
228
+ **Input**: "Add a skill for our onboarding checklist"
229
+ - Asks a clarifying question if scope or type is ambiguous, then drafts the skill package.
230
+
153
231
  ## Edge Cases
154
232
 
155
233
  - If the user's goal is already covered by an existing skill, inform the user and offer to extend it instead of creating a new one.
156
234
  - If scope is ambiguous, default to `_local` and note the assumption.
157
235
  - If the goal spans multiple types (e.g., both EDR and ADR), favor the type that best matches the primary activity.
158
236
 
237
+ ## Anti-Patterns
238
+
239
+ - **Mistake:** Omitting the `metadata.author`/`metadata.version`/`metadata.updated` fields, or using a partial version like `1.0` instead of full semantic versioning.
240
+ **Why it happens:** These feel like optional bookkeeping details rather than required fields.
241
+ **Instead:** `author`, `version` (full `MAJOR.MINOR.PATCH`), and `updated` (ISO date) are all required per `_core-adr-policy-003`.
242
+
243
+ - **Mistake:** Writing a boilerplate `## Anti-Patterns` section that restates the Edge Cases content instead of describing real authoring mistakes.
244
+ **Why it happens:** Anti-Patterns and Edge Cases both describe "things that can go wrong", which invites duplication.
245
+ **Instead:** Edge Cases describe when the skill should behave differently; Anti-Patterns describe mistakes an agent following the skill is likely to make and how to avoid them.
246
+
247
+ - **Mistake:** Creating a new skill that duplicates an existing one instead of extending it, because the existing skill wasn't searched for first.
248
+ **Why it happens:** Writing fresh instructions feels faster than reading and understanding an existing skill.
249
+ **Instead:** Always list `.xdrs/[scope]/[type]/[subject]/skills/` first (Phase 3) and extend or reference an existing skill when one already covers the goal.
250
+
159
251
  ## References
160
252
 
161
253
  - [_core-adr-policy-003 - Skill standards](../../003-skill-standards.md)
162
254
  - [_core-adr-policy-001 - XDRS standards](../../001-xdrs-standards.md)
255
+ - [_core-adr-policy-021 - Skill bundling](../../021-skill-bundling.md)
163
256
  - [write-policy skill](../write-policy/SKILL.md)