Skip to content

chore(claude): migrate skills to dir structure, add command hints#1017

Open
FlorianBruniaux wants to merge 2 commits intodevelopfrom
feat/skills-dirs-and-command-hints
Open

chore(claude): migrate skills to dir structure, add command hints#1017
FlorianBruniaux wants to merge 2 commits intodevelopfrom
feat/skills-dirs-and-command-hints

Conversation

@FlorianBruniaux
Copy link
Copy Markdown
Collaborator

Summary

  • Convert repo-recap, security-guardian, ship skills from flat .md files to proper skill directories with SKILL.md inside
  • Remove performance.md (no replacement)
  • Add cross-platform clip() clipboard helper in issue-triage and pr-triage skills (pbcopy / xclip / wl-copy)
  • Add argument-hint metadata to worktree command files
  • Switch rust-rtk agent model from pinned ID (claude-sonnet-4-5-20250929) to sonnet alias
  • Remove hardcoded absolute paths in diagnose.md
  • Add .rtk/filters.toml project-local filter config

Test plan

  • Verify skills load correctly via Claude Code skill system
  • Test clip() helper on macOS (pbcopy) and Linux (xclip/wl-copy)
  • Confirm worktree commands show argument hints in UI
  • Check rtk verify passes with new .rtk/filters.toml

🤖 Generated with Claude Code

- Convert repo-recap, security-guardian, ship skills from flat .md to
  SKILL.md inside dedicated directories
- Remove performance.md (no replacement needed)
- Add cross-platform clip() helper in issue-triage and pr-triage skills
  (supports pbcopy, xclip, wl-copy)
- Add argument-hint metadata to worktree command files
- Update rust-rtk agent model from pinned ID to "sonnet" alias
- Remove hardcoded absolute paths from diagnose.md
- Add .rtk/filters.toml project-local filter config

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Florian BRUNIAUX <florian@bruniaux.com>
Copilot AI review requested due to automatic review settings April 4, 2026 13:46
@pszymkowiak pszymkowiak added the effort-small Quelques heures, 1 fichier label Apr 4, 2026
@pszymkowiak
Copy link
Copy Markdown
Collaborator

[w] wshm · Automated triage by AI

📊 Automated PR Analysis

🔧 Type chore
🟢 Risk low

Summary

Migrates several skills from flat .md files to directory-based structure with SKILL.md, adds argument-hint metadata to worktree commands, introduces a cross-platform clipboard helper, removes hardcoded absolute paths, and switches a model reference to use an alias instead of a pinned ID.

Review Checklist

  • Tests present
  • Breaking change
  • Docs updated

Analyzed automatically by wshm · This is an automated analysis, not a human review.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the repo’s Claude Code configuration by migrating several skills to the directory-based SKILL.md format, improving UX metadata for commands, and adding a project-local RTK filter configuration template.

Changes:

  • Add project-local .rtk/filters.toml template file for custom filters.
  • Update Claude skills (repo-recap, issue-triage, pr-triage, security-guardian, ship) with metadata and cross-platform clipboard helper; remove legacy .claude/skills/performance.md.
  • Add argument-hint metadata to worktree-related command files, update rust-rtk agent model to sonnet, and remove hardcoded absolute paths in diagnose.md.

Reviewed changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
.rtk/filters.toml Adds a committable template for project-local RTK filters.
.claude/skills/ship/SKILL.md Adds skill metadata (allowed-tools).
.claude/skills/security-guardian/SKILL.md Adds skill metadata (allowed-tools).
.claude/skills/repo-recap/SKILL.md Adds skill metadata + cross-platform clipboard helper instructions.
.claude/skills/pr-triage/SKILL.md Replaces pbcopy with cross-platform clipboard helper.
.claude/skills/issue-triage/SKILL.md Replaces pbcopy with cross-platform clipboard helper.
.claude/skills/performance.md Removes legacy flat skill file.
.claude/commands/worktree.md Adds argument-hint for UI/UX.
.claude/commands/worktree-status.md Adds argument-hint for UI/UX.
.claude/commands/tech/worktree.md Adds argument-hint for UI/UX.
.claude/commands/tech/worktree-status.md Adds argument-hint for UI/UX.
.claude/commands/tech/remove-worktree.md Adds argument-hint for UI/UX.
.claude/commands/tech/codereview.md Adds argument-hint for UI/UX.
.claude/commands/diagnose.md Removes hardcoded absolute paths in instructions.
.claude/agents/rust-rtk.md Switches model from pinned ID to sonnet alias.
Comments suppressed due to low confidence (4)

.claude/skills/repo-recap/SKILL.md:4

  • allowed-tools is declared as a single YAML scalar string here, while other skills in this repo typically use a YAML sequence (e.g. allowed-tools:\n - Bash\n - Read ...). To keep the skill frontmatter consistent and less error-prone for parsers, please switch this to the same list/array style used in the other SKILL.md files.
    .claude/skills/security-guardian/SKILL.md:4
  • allowed-tools is a scalar string here, whereas most other skills use a YAML list. For consistency (and to avoid tooling expecting a list), consider changing this to the same allowed-tools: list format used in the rest of .claude/skills/*/SKILL.md.
    .claude/skills/ship/SKILL.md:4
  • allowed-tools is provided as a single string here; other skills use a YAML list. Please align this frontmatter to the repo’s common format (YAML sequence or bracket list) to reduce the risk of the skill system mis-parsing tool permissions.
    .claude/skills/repo-recap/SKILL.md:149
  • clip() falls back to cat, which just re-prints the recap rather than copying it. That conflicts with the instruction to confirm that the recap was copied to the clipboard. Please tweak the fallback path (warning/error or conditional confirmation) so behavior and instructions stay consistent.

Comment on lines +165 to +171
# Cross-platform clipboard
clip() {
if command -v pbcopy &>/dev/null; then pbcopy
elif command -v xclip &>/dev/null; then xclip -selection clipboard
elif command -v wl-copy &>/dev/null; then wl-copy
else cat
fi
Copy link

Copilot AI Apr 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the clip() helper, the fallback branch uses cat, which does not copy anything to the clipboard. That makes the subsequent instruction to confirm "copied to clipboard" incorrect on systems without pbcopy/xclip/wl-copy. Consider either (1) emitting a clear warning and skipping the "copied" confirmation, or (2) returning a non-zero status and instructing the user to install a clipboard tool.

Copilot uses AI. Check for mistakes.
Comment on lines +156 to +162
# Cross-platform clipboard
clip() {
if command -v pbcopy &>/dev/null; then pbcopy
elif command -v xclip &>/dev/null; then xclip -selection clipboard
elif command -v wl-copy &>/dev/null; then wl-copy
else cat
fi
Copy link

Copilot AI Apr 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

clip() falls back to cat, which doesn’t copy to clipboard, but the surrounding text instructs to confirm the table was copied. Please adjust the fallback behavior/message so the skill doesn’t claim clipboard copy succeeded when no clipboard utility is available.

Copilot uses AI. Check for mistakes.
Convert .claude/skills/performance.md to .claude/skills/performance/SKILL.md
to match the same structure as repo-recap, security-guardian, and ship.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Florian BRUNIAUX <florian@bruniaux.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

effort-small Quelques heures, 1 fichier

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants