📦 deps(thirdparty): update snapshots
This commit is contained in:
@@ -0,0 +1,248 @@
|
||||
# Formatting Conventions
|
||||
|
||||
## Markdown in Instructions
|
||||
|
||||
Avoid `**bold**` and other emphasis markers in skill/instruction text unless explicitly formatting output. Claude doesn't need visual emphasis to understand importance — the words themselves convey it.
|
||||
|
||||
**Use markdown when**: formatting actual output, examples, or user-facing content
|
||||
**Skip markdown when**: writing instructions, rules, or guidance for Claude
|
||||
|
||||
## Concision Principle
|
||||
|
||||
Sacrifice grammar for concision — drop articles, filler words, verbose phrases. But don't strip meaning or context. Goal is density, not minimalism. If removing a word makes the instruction ambiguous, keep it.
|
||||
|
||||
Good: "Ask one question, wait for response"
|
||||
Bad: "Ask question wait response"
|
||||
|
||||
## Variables and Placeholders
|
||||
|
||||
**Variables** — all caps, no spaces, curly braces:
|
||||
- `{VARIABLE}` — concrete placeholder to be replaced
|
||||
- Examples: `{N}`, `{REASON}`, `{BAR}`, `{NAME}`, `{FILE_PATH}`
|
||||
|
||||
**Instructional prose** — lowercase, spaces inside braces:
|
||||
- `{ description of what goes here }` — guidance for what to fill in
|
||||
- Examples: `{ question text }`, `{ why it matters }`, `{ if needed }`
|
||||
|
||||
## XML Tags in Skills
|
||||
|
||||
Use XML tags for structural sections in skill files:
|
||||
- `<when_to_use>` — trigger conditions
|
||||
- `<confidence>` — confidence levels/tracking
|
||||
- `<stages>` — workflow stages
|
||||
- `<workflow>` — core process loop
|
||||
- `<rules>` — always/never constraints
|
||||
- `<references>` — links to supporting docs
|
||||
|
||||
Keep content inside tags terse. Sacrifice grammar for concision where meaning is preserved.
|
||||
|
||||
**GitHub rendering**: Add blank lines after opening tags and before closing tags. Without them, content renders incorrectly on GitHub.
|
||||
|
||||
```markdown
|
||||
<!-- Good -->
|
||||
<rules>
|
||||
|
||||
- First rule
|
||||
- Second rule
|
||||
|
||||
</rules>
|
||||
|
||||
<!-- Bad — won't render properly on GitHub -->
|
||||
<rules>
|
||||
- First rule
|
||||
- Second rule
|
||||
</rules>
|
||||
```
|
||||
|
||||
## Markdown Tables
|
||||
|
||||
Use markdown tables for structured data. Ensure the table is properly formatted with the correct number of columns and rows.
|
||||
|
||||
```markdown
|
||||
| Column 1 | Column 2 | Column 3 |
|
||||
| -------- | -------- | -------- |
|
||||
| Data 1 | Data 2 | Data 3 |
|
||||
```
|
||||
|
||||
Ensure pipes are properly aligned with spaces surrounding text or hyphens, at least between the header and separator rows. If pipes are used within a cell, ensure they are properly escaped.
|
||||
|
||||
## Indicators
|
||||
|
||||
Prefer ASCII/Unicode over emoji for terminal output (Claude Code, CLI, interactive sessions). Emoji acceptable in docs or user-facing content where rendering is reliable.
|
||||
|
||||
### Progress
|
||||
|
||||
- `░` — empty (light shade)
|
||||
- `▓` — filled (medium shade)
|
||||
- Example: `▓▓▓░░` = 3/5
|
||||
- Use for confidence, completion, capacity — anything with discrete levels
|
||||
|
||||
### Severity
|
||||
|
||||
Escalating:
|
||||
|
||||
- `◇` — minor/informational
|
||||
- `◆` — moderate/warning
|
||||
- `◆◆` — severe/blocking
|
||||
- Use for pushback, risk, alerts, uncertainty levels
|
||||
|
||||
### Caveats
|
||||
|
||||
- `△` — incomplete/uncertain (warning triangle U+25B3)
|
||||
- **Mid-stream**: `△` + description — flags issue for immediate attention
|
||||
- **At delivery**: `△ Caveats` — summary section of gaps, unknowns, assumptions, concerns, deferred items
|
||||
|
||||
### Checkmarks
|
||||
|
||||
- `✓` — completed/decided (U+2713)
|
||||
- Use for "Decisions Made:" lists, completed items, confirmed choices
|
||||
- Example:
|
||||
|
||||
```text
|
||||
Decisions Made:
|
||||
✓ /simplify offers two modes: quick (skill) vs deep (agent)
|
||||
✓ Agent returns: complexity identified + alternatives + escalation level
|
||||
✓ Uses ◇/◆/◆◆ indicators from simplify skill
|
||||
```
|
||||
|
||||
### Emphasis
|
||||
|
||||
Append to text:
|
||||
|
||||
- `★` — recommended/preferred
|
||||
|
||||
## Interactive Questions
|
||||
|
||||
For multi-option questions in skills:
|
||||
|
||||
- Use `EnterPlanMode` — enables keyboard navigation
|
||||
- **Prose above tool**: context, "why it matters"
|
||||
- **Inside tool**: options with inline recommendation marker
|
||||
- Always include escape hatch: "5. Something else — { brief prompt }"
|
||||
|
||||
### Inline Recommendations
|
||||
|
||||
Mark recommended option inline with `[★]` + emphasized rationale:
|
||||
|
||||
```text
|
||||
1. Google only [★] — simplest, highest coverage *good starting point, expand later*
|
||||
2. Google + GitHub — covers consumer and developer users
|
||||
3. Google + GitHub + Microsoft — comprehensive, more maintenance
|
||||
```
|
||||
|
||||
Pattern: `N. Option name [★] — brief description *why recommended*`
|
||||
|
||||
- `[★]` visually distinguishes the recommendation
|
||||
- `*italicized rationale*` provides quick reasoning
|
||||
- Everything scannable in one place
|
||||
|
||||
## Tasks
|
||||
|
||||
Give tasks friendly, context-specific descriptions instead of generic stage names. The description should tell the user what's actually happening.
|
||||
|
||||
**Prefer**:
|
||||
|
||||
```text
|
||||
- [x] Consider skills to load
|
||||
- [ ] Prep auth system requirements
|
||||
- [ ] Explore authentication approaches
|
||||
- [ ] Clarify platform and fallback needs
|
||||
- [ ] Deliver implementation plan
|
||||
```
|
||||
|
||||
**Avoid**:
|
||||
|
||||
```text
|
||||
- [ ] Gather Context
|
||||
- [ ] Synthesize Requirements
|
||||
- [ ] Provide Deliverables
|
||||
```
|
||||
|
||||
## Skill References
|
||||
|
||||
When referencing skills in documentation, use specific language based on skill type:
|
||||
|
||||
| Skill Type | Language | Example |
|
||||
|------------|----------|---------|
|
||||
| Standard | "Load the skill" | Load the `outfitter:skills-dev` skill |
|
||||
| Delegated (`context: fork` + `agent`) | "Delegate by loading" | Delegate by loading the `outfitter:security-audit` skill |
|
||||
|
||||
**Standard skills** load instructions into the current context. The agent continues with those instructions available.
|
||||
|
||||
**Delegated skills** hand off work to a subagent. The subagent runs in isolation and returns results.
|
||||
|
||||
**Format**: Always use backticks for skill names: `` `plugin:skill-name` ``
|
||||
|
||||
**Never**: Link to SKILL.md files. Always use the load/delegate pattern.
|
||||
|
||||
```markdown
|
||||
# Wrong
|
||||
See [skills-dev](../skills-dev/SKILL.md) for patterns.
|
||||
|
||||
# Right
|
||||
Load the `outfitter:skills-dev` skill for patterns.
|
||||
```
|
||||
|
||||
## Steps in Skills
|
||||
|
||||
Use a `## Steps` section for composable skill workflows. Place immediately after the H1 title.
|
||||
|
||||
```markdown
|
||||
## Steps
|
||||
|
||||
1. Load the `plugin:prerequisite-skill` skill
|
||||
2. { main action for this skill }
|
||||
3. If { condition }, load the `plugin:conditional-skill` skill
|
||||
4. { final action or output }
|
||||
```
|
||||
|
||||
**Pattern rules**:
|
||||
|
||||
- Numbered list (order matters)
|
||||
- Skill references use: `Load the \`plugin:skill-name\` skill`
|
||||
- Conditional steps: `If { condition }, load...` or `If { condition }, { action }`
|
||||
- Action descriptions: brief, imperative, no articles
|
||||
- Keep to 3-6 steps; split into stages if longer
|
||||
|
||||
**Delegated skills**: See "Skill References" section above for load vs delegate language.
|
||||
|
||||
**Plan mode and questions**: Use for decision points and user input:
|
||||
|
||||
```markdown
|
||||
5. Enter Plan mode
|
||||
6. Present options with AskUserQuestion
|
||||
```
|
||||
|
||||
**Brainstorming**: For complex problems, get multiple perspectives:
|
||||
|
||||
```markdown
|
||||
2. Brainstorm with Plan agent for approaches
|
||||
```
|
||||
|
||||
**When to use**:
|
||||
|
||||
- Skill depends on another skill being loaded first
|
||||
- Workflow has clear sequential stages
|
||||
- Steps can branch based on context
|
||||
|
||||
**When to skip**:
|
||||
|
||||
- Single-purpose skills with no dependencies
|
||||
- Skills where workflow is the entire body (use `<workflow>` tag instead)
|
||||
|
||||
## Markdown Links
|
||||
|
||||
Use short aliases for readability. Keep paths intact.
|
||||
|
||||
Prefer: `[filename.md](path/to/filename.md)`
|
||||
Avoid: `[path/to/filename.md](path/to/filename.md)`
|
||||
|
||||
```text
|
||||
# Good
|
||||
- [confidence.md](references/confidence.md)
|
||||
- [FORMATTING.md](../rules/FORMATTING.md)
|
||||
|
||||
# Avoid
|
||||
- [references/confidence.md](references/confidence.md)
|
||||
- [../rules/FORMATTING.md](../rules/FORMATTING.md)
|
||||
```
|
||||
Reference in New Issue
Block a user