Merge branch 'feat/pr-9-skill-improvements'

This commit is contained in:
Florian BRUNIAUX 2026-03-17 21:40:57 +01:00
commit 52f0e31305
19 changed files with 104 additions and 245 deletions

View file

@ -1,6 +1,6 @@
---
name: audit-agents-skills
description: Comprehensive quality audit for Claude Code agents, skills, and commands with comparative analysis
description: "Audit Claude Code agents, skills, and commands for quality and production readiness. Use when evaluating skill quality, checking production readiness scores, or comparing agents against best-practice templates."
allowed-tools: Read, Grep, Glob, Bash, Write
context: inherit
agent: specialist

View file

@ -1,6 +1,6 @@
---
name: ccboard
description: Comprehensive TUI/Web dashboard for Claude Code monitoring
description: "Launch and navigate the ccboard TUI/Web dashboard for Claude Code. Use when monitoring token usage, tracking costs, browsing sessions, or checking MCP server status across projects."
version: 0.1.0
category: monitoring
keywords: [dashboard, tui, mcp, sessions, costs, analytics]

View file

@ -1,6 +1,6 @@
---
name: cyber-defense-team
description: Orchestrate a 4-agent cyber defense pipeline to analyze log files for threats. Spawns log-ingestor → anomaly-detector → risk-classifier → threat-reporter as parallel-then-sequential agents. Produces a Markdown incident report.
description: "Orchestrate a 4-agent cyber defense pipeline to analyze log files for threats. Use when investigating security logs, detecting anomalies in access patterns, classifying breach severity, or generating incident reports from nginx/auth/syslog files."
version: 1.0.0
usage: /cyber-defense-team [log-file-path]
args:

View file

@ -1,6 +1,6 @@
---
name: design-patterns
description: Analyze codebase for GoF design patterns - detection, suggestions, evaluation with stack-aware adaptations
description: "Detect, suggest, and evaluate GoF design patterns in TypeScript/JavaScript codebases. Use when refactoring code, applying singleton/factory/observer/strategy patterns, reviewing pattern quality, or finding stack-native alternatives for React, Angular, NestJS, and Vue."
allowed-tools: Read, Grep, Glob, mcp__grepai__grepai_search
context: fork
agent: specialist

View file

@ -1,6 +1,6 @@
---
name: guide-recap
description: Transform CHANGELOG entries into social content (LinkedIn, Twitter/X, Newsletter, Slack) in FR + EN. Use after releases or weekly to generate ready-to-post content from guide updates.
description: "Transform CHANGELOG entries into social content (LinkedIn, Twitter/X, Newsletter, Slack) in FR + EN. Use after releases or weekly to generate release notes, announcements, social media posts, or recap summaries from guide updates."
argument-hint: "<latest|vX.Y.Z|week [YYYY-MM-DD]> [--interactive] [--format=linkedin|twitter|newsletter|slack] [--lang=fr|en] [--save]"
tags: [changelog, social-media, content, linkedin, twitter]
---

View file

@ -1,9 +1,6 @@
---
name: issue-triage
description: >
3-phase issue backlog management: audit open issues, deep analyze selected ones, draft and execute
triage actions with mandatory validation. Args: "all" to analyze all, issue numbers to focus
(e.g. "42 57"), "en"/"fr" for language, no arg = audit only in French.
description: "3-phase issue backlog management with audit, deep analysis, and validated triage actions. Use when triaging GitHub issues, sorting bug reports, cleaning up stale tickets, or detecting duplicate issues. Args: 'all' to analyze all, issue numbers to focus (e.g. '42 57'), 'en'/'fr' for language, no arg = audit only."
tags: [github, issue, triage, maintainer, multi-agent]
---

View file

@ -1,6 +1,6 @@
---
name: landing-page-generator
description: Generate complete landing pages from repositories. Analyzes README, features, and structure to create static sites following established patterns. Use for new project landings, open-source showcases, documentation portals.
description: "Generate complete, deploy-ready landing pages from any repository. Use when creating a homepage for an open-source project, building a project website, converting a README into a marketing page, or standardizing landing pages across multiple repos."
tags: [landing-page, static-site, github-pages, marketing]
---
@ -155,6 +155,14 @@ Generate these sections in order:
└── static.yml # GitHub Pages deployment
```
### Step 5: Validation Checkpoint
Before finalizing, verify:
- All sections render correctly in a browser
- Links point to valid targets (GitHub repo, docs, install commands)
- Responsive layout works at mobile (375px), tablet (768px), and desktop (1280px) widths
- Accessibility: skip links present, ARIA labels on interactive elements, color contrast passes WCAG AA
## Tech Stack
- **No build step**: Pure HTML + CSS + JS
@ -225,13 +233,6 @@ Creates `~/projects/my-project-landing/` with:
- Review generated FAQ - may need customization
- Test responsive design after generation
## Related Use Cases
- Open-source project showcases
- Documentation portals
- Product landing pages
- Tool/utility marketing sites
## References
See `references/landing-pattern.md` for detailed pattern documentation.

View file

@ -1,9 +1,6 @@
---
name: pr-triage
description: >
4-phase PR backlog management: audit open PRs, deep review selected ones, post validated
review comments, and optionally create local worktrees for hands-on review. Args: "all"
to review all, PR numbers to focus (e.g. "42 57"), "en"/"fr" for language, no arg = audit only.
description: "4-phase PR backlog management with audit, deep code review, validated comments, and optional worktree setup. Use when triaging pull requests, catching up on pending code reviews, or managing a backlog of open PRs. Args: 'all' to review all, PR numbers to focus (e.g. '42 57'), 'en'/'fr' for language, no arg = audit only."
tags: [github, pr, triage, review, maintainer, multi-agent, worktree]
---
@ -63,37 +60,27 @@ If either fails, stop and explain what is missing.
### Data Gathering (parallel commands)
```bash
# Repo identity
gh repo view --json nameWithOwner -q .nameWithOwner
# Open PRs with full metadata (body for cross-reference issues)
gh pr list --state open --limit 50 \
--json number,title,author,createdAt,updatedAt,additions,deletions,changedFiles,isDraft,mergeable,reviewDecision,statusCheckRollup,body
# Collaborators (to distinguish internal from external PRs)
gh api "repos/{owner}/{repo}/collaborators" --jq '.[].login'
```
**Collaborators fallback**: if `gh api .../collaborators` returns 403/404:
```bash
# Extract authors from last 10 merged PRs
gh pr list --state merged --limit 10 --json author --jq '.[].author.login' | sort -u
```
If still ambiguous, ask via `AskUserQuestion`.
For each PR, fetch existing reviews AND changed files:
For each PR, fetch reviews and changed files:
```bash
gh api "repos/{owner}/{repo}/pulls/{num}/reviews" \
--jq '[.[] | .user.login + ":" + .state] | join(", ")'
# Changed files (required for overlap detection)
gh pr view {num} --json files --jq '[.files[].path] | join(",")'
```
**Rate-limiting note**: fetching files requires N API calls (1 per PR). For repos with 20+ PRs, prioritize candidates for overlap detection (same functional domain, same author).
**Note**: `author` is an object `{login: "..."}` — always extract `.author.login`.
**Notes**: Fetching files requires 1 API call per PR — for 20+ PRs, prioritize overlap candidates. The `author` field is an object; always extract `.author.login`.
### Analysis
@ -181,7 +168,6 @@ Note: Phase 3 (posting comments) is NOT offered here — it requires the drafts
After displaying the triage table, copy to clipboard using platform-appropriate command:
```bash
# Detect platform and copy
UNAME=$(uname -s)
if [ "$UNAME" = "Darwin" ]; then
pbcopy <<'EOF'

View file

@ -1,6 +1,6 @@
---
name: release-notes-generator
description: Generate release notes in 3 formats (CHANGELOG.md, PR body, Slack announcement) from git commits. Automatically categorizes changes and converts technical language to user-friendly messaging. Use when preparing a production release.
description: "Generate release notes in 3 formats (CHANGELOG.md, PR body, Slack announcement) from git commits. Automatically categorizes changes and converts technical language to user-friendly messaging. Use for releases, changelogs, version notes, what's new summaries, or ship announcements."
tags: [release-notes, changelog, slack, git, automation]
---
@ -8,25 +8,14 @@ tags: [release-notes, changelog, slack, git, automation]
Generate comprehensive release notes in 3 formats from git commits.
## When to Use This Skill
## Workflow
- Preparing a production release (develop -> main)
- Creating release PR with proper documentation
- Generating Slack announcement for stakeholders
- Updating CHANGELOG.md with new version
- Analyzing commits since last release
## What This Skill Does
1. **Analyzes Git History**: Scans commits since last release tag or specified version
2. **Fetches PR Details**: Gets PR titles, descriptions, and labels via `gh api`
3. **Categorizes Changes**: Groups into features, bug fixes, improvements, security, breaking changes
4. **Generates 3 Outputs**:
- **CHANGELOG.md section** (technical, complete)
- **PR Release body** (semi-technical, checklist)
- **Slack message** (product-focused, user-friendly)
5. **Transforms Language**: Converts technical jargon to accessible messaging
6. **Migration Alert**: Displays prominent warning if database migrations are required
1. **Analyze git history** since last release tag or specified version
2. **Fetch PR details** (titles, descriptions, labels) via `gh api`
3. **Categorize changes** into features, bug fixes, improvements, security, breaking changes
4. **Generate 3 outputs**: CHANGELOG.md section (technical), PR release body (semi-technical), Slack message (user-friendly)
5. **Transform language** from technical jargon to accessible messaging
6. **Alert on migrations** if database migrations are detected
## How to Use

View file

@ -1,6 +1,6 @@
---
name: rtk-optimizer
description: Optimize command outputs with RTK (Rust Token Killer) for 70% token reduction
description: "Wrap high-verbosity shell commands with RTK to reduce token consumption. Use when running git log, git diff, cargo test, pytest, or other verbose CLI output that wastes context window tokens."
version: 1.0.0
tags: [optimization, tokens, efficiency, git]
---

View file

@ -1,23 +1,21 @@
---
name: skill-creator
description: Create new Claude Code skills with proper structure, YAML frontmatter, and bundled resources. Generates skill templates following best practices for modular, self-contained capability packages.
description: "Scaffold a new Claude Code skill with SKILL.md, frontmatter, and bundled resources. Use when creating a custom skill, standardizing skill structure across a team, or packaging a skill for distribution."
tags: [meta, skill, generator, claude-code]
---
# Skill Creator
This skill helps you create new Claude Code skills with proper structure and best practices.
Generate new Claude Code skills with correct directory structure, YAML frontmatter, and optional bundled resources.
## When to Use This Skill
## When to Use
- Creating a new custom skill for your project
- Standardizing skill structure across your team
- Creating a new custom skill for a project
- Standardizing skill structure across a team
- Generating skill templates with scripts, references, and assets
- Packaging skills for distribution
## Skill Structure
A Claude skill consists of:
## Skill Directory Structure
```
skill-name/
@ -27,99 +25,71 @@ skill-name/
└── assets/ # Optional: Templates, images, boilerplate (not loaded into context)
```
## SKILL.md Format
## Workflow
Every skill requires a `SKILL.md` file with:
```markdown
---
name: skill-name
description: One-line description of what the skill does and when to use it.
---
# Skill Name
Brief introduction explaining the skill's purpose.
## When to Use This Skill
- Trigger condition 1
- Trigger condition 2
- Trigger condition 3
## What This Skill Does
1. **Step 1**: Description
2. **Step 2**: Description
3. **Step 3**: Description
## How to Use
### Basic Usage
[Examples of how to invoke the skill]
### With Options
[Advanced usage patterns]
## Example
**User**: "Example prompt"
**Output**:
[Example output]
## Tips
- Best practice 1
- Best practice 2
## Related Use Cases
- Related task 1
- Related task 2
```
## How to Use
### Create a New Skill
### 1. Create the Skill
```
Create a new skill called "my-skill-name" in ~/.claude/skills/
```
### Create with Specific Purpose
Or with a specific purpose:
```
Create a skill for generating release notes from git commits,
with templates for CHANGELOG.md and Slack announcements
```
### Initialize Skill Structure
Run the initialization script:
Or via the initialization script:
```bash
python3 ~/.claude/skills/skill-creator/scripts/init_skill.py <skill-name> --path <output-directory>
```
### Package Skill for Distribution
### 2. Generated SKILL.md Template
The created SKILL.md follows this structure:
```markdown
---
name: skill-name
description: "What the skill does. Use when [trigger conditions]."
---
# Skill Name
## When to Use
- Trigger condition 1
- Trigger condition 2
## What This Skill Does
1. **Step 1**: Description
2. **Step 2**: Description
## How to Use
[Usage examples]
## Example
**User**: "Example prompt"
**Output**: [Example output]
```
### 3. Validate the Skill
After creation, verify:
1. **Frontmatter**: `name` is kebab-case, 1-64 chars; `description` is a quoted string with "Use when" clause
2. **Content**: Has "When to Use" section with trigger conditions and at least one usage example
3. **Structure**: SKILL.md is under 5000 words; references and assets are in correct subdirectories
4. **Test**: Invoke the skill with a real use case and confirm expected output
### 4. Package for Distribution (Optional)
```bash
python3 ~/.claude/skills/skill-creator/scripts/package_skill.py <path/to/skill-folder> [output-directory]
```
## Design Principles
### Progressive Disclosure
Context loads hierarchically to optimize token usage:
1. **Metadata** (~100 words): Always present via skill description
2. **SKILL.md** (<5k words): Loaded when skill is triggered
3. **Bundled resources**: Loaded as needed during execution
### Organizational Patterns
Choose the pattern that fits your skill:
## Organizational Patterns
| Pattern | Best For | Structure |
|---------|----------|-----------|
@ -128,59 +98,22 @@ Choose the pattern that fits your skill:
| **Reference/Guidelines** | Standards, specs | Rules and examples |
| **Capabilities-Based** | Interrelated features | Feature descriptions |
### Naming Conventions
- Use `kebab-case` for skill names: `release-notes-generator`
- Use descriptive names that indicate purpose
- Keep names concise but meaningful
## Bundled Resources
### scripts/
Executable code for deterministic, repeatable tasks:
- `init_skill.py` - Initialize new skill structure
- `package_skill.py` - Package skill for distribution
### references/
Documentation loaded contextually:
- API documentation
- Style guides
- Domain knowledge
### assets/
Templates and resources (not auto-loaded):
- Output templates
- Boilerplate code
- Images and fonts
## Example: Creating a Release Notes Skill
**User**: "Create a skill for generating release notes with 3 output formats: CHANGELOG.md, PR body, and Slack message"
**User**: "Create a skill for generating release notes with 3 output formats"
**Steps**:
1. Initialize structure: `init_skill.py release-notes-generator --path ~/.claude/skills/`
2. Add templates to `assets/`:
- `changelog-template.md`
- `pr-release-template.md`
- `slack-template.md`
3. Add transformation rules to `references/`:
- `tech-to-product-mappings.md`
1. Initialize: `init_skill.py release-notes-generator --path ~/.claude/skills/`
2. Add templates to `assets/`: `changelog-template.md`, `pr-release-template.md`, `slack-template.md`
3. Add rules to `references/`: `tech-to-product-mappings.md`
4. Complete `SKILL.md` with usage instructions
5. Package: `package_skill.py ~/.claude/skills/release-notes-generator`
5. Validate: check frontmatter, test with a real commit range
6. Package: `package_skill.py ~/.claude/skills/release-notes-generator`
## Tips
- Keep SKILL.md under 5000 words for efficient context usage
- Use references/ for domain knowledge that doesn't change often
- Put templates in assets/ so they're not auto-loaded
- Test your skill with real use cases before packaging
- Include concrete examples in your SKILL.md
## Related Use Cases
- Creating project-specific automation skills
- Building team-shared development workflows
- Packaging reusable Claude capabilities
- Use `references/` for domain knowledge that doesn't change often
- Put templates in `assets/` so they're not auto-loaded into context
- Always include a "Use when" clause in the description frontmatter
- Test with real use cases before packaging

View file

@ -1,12 +1,8 @@
---
name: talk-pipeline
description: Orchestrator for the complete talk preparation pipeline (REX or Concept mode). Runs all 6 stages in sequence with human-in-the-loop checkpoints.
description: "Orchestrates the complete talk preparation pipeline from raw material to revision sheets, running 6 stages in sequence with human-in-the-loop checkpoints for REX or Concept mode talks. Use when starting a new talk pipeline, resuming a pipeline from a specific stage, or running the full end-to-end preparation workflow."
tags: [talk, pipeline, presentation, orchestrator]
allowed-tools:
- Write
- Read
- AskUserQuestion
- Task
allowed-tools: "Write, Read, AskUserQuestion, Task"
---
# Talk Pipeline Orchestrator

View file

@ -1,11 +1,8 @@
---
name: talk-stage1-extract
description: Stage 1 — Extract and structure source material into a talk summary. Auto-detects REX vs Concept type.
description: "Extracts and structures source material (articles, transcripts, notes) into a talk summary with narrative arc, themes, metrics, and gaps. Auto-detects REX vs Concept type. Use when starting a new talk from any source material or auditing existing material before committing to a talk."
tags: [talk, pipeline, presentation, stage-1]
allowed-tools:
- Write
- Read
- AskUserQuestion
allowed-tools: "Write, Read, AskUserQuestion"
---
# Talk Stage 1: Extract

View file

@ -1,11 +1,8 @@
---
name: talk-stage2-research
description: Stage 2 (REX mode only) — Git archaeology, changelog analysis, verified factual timeline. Skip automatically in Concept mode.
description: "Performs git archaeology, changelog analysis, and builds a verified factual timeline by cross-referencing git history with source material. REX mode only — skipped automatically in Concept mode. Use when building a REX talk and you need verified commit metrics, release timelines, and contributor data from a git repository."
tags: [talk, pipeline, presentation, stage-2, git]
allowed-tools:
- Write
- Read
- Bash
allowed-tools: "Write, Read, Bash"
---
# Talk Stage 2: Research (REX mode only)

View file

@ -1,10 +1,8 @@
---
name: talk-stage3-concepts
description: Stage 3 — Build a numbered, scored concept catalogue. Every concept gets HIGH / MEDIUM / LOW talk-potential rating.
description: "Builds a numbered, categorized concept catalogue from the talk summary and timeline, scoring each concept HIGH / MEDIUM / LOW for talk potential with optional repo enrichment. Use when you need a structured inventory of concepts before choosing a talk angle, or when assessing which ideas have the strongest presentation potential."
tags: [talk, pipeline, presentation, stage-3]
allowed-tools:
- Write
- Read
allowed-tools: "Write, Read"
---
# Talk Stage 3: Concepts

View file

@ -1,11 +1,8 @@
---
name: talk-stage4-position
description: Stage 4 — Strategic angles, titles, descriptions, peer feedback draft. Includes mandatory CHECKPOINT before script can start.
description: "Generates 3-4 strategic talk angles with strength/weakness analysis, title options, CFP descriptions, and a peer feedback draft, then enforces a mandatory CHECKPOINT for user confirmation before scripting. Use when deciding how to frame a talk, preparing a CFP submission, or choosing between multiple narrative angles."
tags: [talk, pipeline, presentation, stage-4, checkpoint]
allowed-tools:
- Write
- Read
- AskUserQuestion
allowed-tools: "Write, Read, AskUserQuestion"
---
# Talk Stage 4: Position + CHECKPOINT

View file

@ -1,10 +1,8 @@
---
name: talk-stage5-script
description: Stage 5 — 5-act pitch with speaker notes, slide spec, and Kimi prompt for AI slide generation. Requires validated angle + title from Stage 4.
description: "Produces a complete 5-act pitch with speaker notes, a slide-by-slide specification, and a ready-to-paste Kimi prompt for AI slide generation. Requires validated angle and title from Stage 4. Use when you have a confirmed talk angle and need the full script, slide spec, and AI-generated presentation prompt."
tags: [talk, pipeline, presentation, stage-5, kimi]
allowed-tools:
- Write
- Read
allowed-tools: "Write, Read"
---
# Talk Stage 5: Script

View file

@ -1,10 +1,8 @@
---
name: talk-stage6-revision
description: Stage 6 — Revision sheets for during and after the talk. Master concept table, Q&A cheat-sheet, glossary, external resources.
description: "Produces revision sheets with quick navigation by act, a master concept-to-URL table, Q&A cheat-sheet with 6-10 anticipated questions, glossary, and external resources list. Use when preparing for a talk with Q&A, creating shareable reference material for attendees, or building a safety-net glossary for live delivery."
tags: [talk, pipeline, presentation, stage-6]
allowed-tools:
- Write
- Read
allowed-tools: "Write, Read"
---
# Talk Stage 6: Revision

View file

@ -1,6 +1,6 @@
---
name: voice-refine
description: Transform verbose voice input into optimized Claude prompts
description: "Transform verbose voice input into structured, token-efficient Claude prompts. Use when cleaning up voice memos, dictation output, or speech-to-text transcriptions that contain filler words, repetitions, and unstructured thoughts."
allowed-tools: Read
context: inherit
agent: specialist
@ -85,39 +85,11 @@ dans le projet donc faut que ça matche avec ça...
| Information retention | >95% |
| Structure clarity | High |
## Integration with Voice Tools
## Filtering Rules
### Wispr Flow
1. Dictate with `Cmd+Shift+Space`
2. Paste into Claude Code
3. Run `/voice-refine`
**Remove**: filler words ("euh", "um", "like", "basically"), repetitions, tangents, hedging ("maybe", "probably" unless relevant), politeness padding ("please", "could you").
### Superwhisper
1. Record with hotkey
2. Text appears in active window
3. Run `/voice-refine` to structure
### macOS Dictation
1. `Fn Fn` to start
2. Speak naturally
3. Run `/voice-refine` to clean up
## What Gets Removed
- Filler words: "euh", "um", "like", "you know", "basically"
- Repetitions: same concept stated multiple ways
- Tangents: off-topic thoughts
- Hedging: "maybe", "I think", "probably" (unless relevant)
- Politeness padding: "please", "could you", "I'd like"
## What Gets Preserved
- Technical requirements
- Constraints and limitations
- Context about existing code
- Expected output format
- Edge cases mentioned
- Business logic rules
**Preserve**: technical requirements, constraints, existing code context, expected output format, edge cases, business logic rules.
## See Also