Skip to main content

radisha-improve-skill

Automatically detect and improve skills when gaps are noticed during work - proactively proposes updates

インストールへ移動

ソース情報

リポジトリ
ROCm/rocprofiler-systems-skills
ソースの最終更新活動
2026年3月16日 11:36
検出された SKILL.md の言語
英語
スター
4
フォーク
0

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
radisha-improve-skill
description
Automatically detect and improve skills when gaps are noticed during work - proactively proposes updates
# Improve Skill **Proactive skill improvement.** When you notice a gap in a skill during work, this skill automatically: 1. Detects which skill is responsible 2. Drafts an improvement 3. Proposes the update to the user <IMPORTANT> **This skill should be invoked AUTOMATICALLY when:** - You're using a skill and notice it's missing something - A pattern/rule you need isn't documented - The skill gave incorrect or incomplete guidance - You had to figure something out that should be in the skill **DO NOT wait for the user to ask.** Propose improvements immediately. </IMPORTANT> ## Automatic Detection ### How to Detect the Responsible Skill When you notice a gap, identify the skill by: | Signal | Responsible Skill | |--------|-------------------| | Currently loaded skill (via Skill tool) | That skill | | Agent prompt references a skill | That skill | | Task type matches a skill category | See mapping below | | Pattern/rule domain | Domain-specific skill | ### Task-to-Skill Mapping | Task You're Doing | Likely Responsible Skill | |-------------------|-------------------------| | PR review, code quality | `pr-review`, `code-smells`, `static-analysis` | | C++ implementation | `programming-cpp`, `programming-cpp-design-patterns` | | Python implementation | `programming-python` | | CMake work | `programming-cmake-best-practices` | | Planning features | `planning-feature`, `planning-base` | | Architecture analysis | `architecture-analyze` | | Writing tests (C++) | `testing-gtest-gmock` | | Writing tests (Python) | `testing-pytest` | | Git operations | `git-commit`, `git-prepare-pull-request` | | AMD SMI code | `library-amd-smi` | | Debugging profiler | `debugging-rocprof-sys` | ### Gap Detection Triggers Automatically propose improvement when: ``` IF (using skill X) AND (any of these occur): - You need a rule that doesn't exist - The skill's threshold seems wrong for this case - A pattern you encountered isn't documented - You found a better way to do something - The skill's guidance was incomplete - You had to look up something externally THEN: - Invoke this skill - Propose the improvement ``` ## Automatic Process ``` ┌─────────────────────────────────────────────────────────────────┐ │ AUTOMATIC: Gap Detected During Work │ │ "I need X but the skill doesn't cover it" │ └─────────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────┐ │ AUTOMATIC: Identify Responsible Skill │ │ Use task-to-skill mapping + context │ └─────────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────┐ │ AUTOMATIC: Draft Improvement Proposal │ │ Match skill style, find right section │ └─────────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────────┐ │ PROPOSE TO USER │ │ "I noticed X is missing from skill Y. Add this?" │ └─────────────────────────────────────────────────────────────────┘ │ │ no yes │ │ ▼ ▼ ┌─────────┐ ┌───────────────────────┐ │Continue │ │ Apply + Report │ │ work │ └───────────────────────┘ └─────────┘ ``` ## Proposal Format When proposing an improvement to the user, use this format: ```markdown --- **Skill Improvement Detected** **Skill:** `[skill-name]` **Gap:** [What's missing or wrong] **Context:** [How you discovered this] **Proposed Addition:** [Show the exact content to add, in skill's style] **Location:** [Section where it would go] --- Apply this improvement? (y/n) ``` ### Example Proposal ```markdown --- **Skill Improvement Detected** **Skill:** `code-smells` **Gap:** Missing "Parallel Inheritance Hierarchies" detection criteria **Context:** During PR review, found this smell but skill didn't have clear thresholds **Proposed Addition:** ### Parallel Inheritance Hierarchies **Detection:** - Every time you create a subclass of one class, you need to create a subclass of another - Prefixes in class names match across hierarchies (e.g., `PhoneDevice`/`PhoneDialer`) **Severity:** Should Fix (50) **Location:** Category 3: Change Preventers section --- Apply this improvement? (y/n) ``` ## Phase 1: Locate the Skill Skills can be in multiple locations: | Location | Path | Priority | |----------|------|----------| | Global skills | `~/.claude/skills/<skill-name>/SKILL.md` | Check first | | Radisha project | `~/work/radisha/skills/<skill-name>/SKILL.md` | Primary source | | Current project | `./skills/<skill-name>/SKILL.md` | Project-specific | **To find a skill:** ```bash # Check global skills (symlinked from radisha) ls -la ~/.claude/skills/<skill-name>/ # Find the actual source readlink -f ~/.claude/skills/<skill-name>/SKILL.md ``` **Always edit the source file** in radisha project, not the symlink. ## Phase 2: Analyze Current Content Before making changes: 1. **Read the full skill** - understand its structure and style 2. **Identify the section** where your addition belongs 3. **Check for conflicts** - does your addition contradict existing content? 4. **Match the style** - use same formatting (tables, code blocks, etc.) ### Skill Structure (typical) ```markdown --- name: skill-name description: ... --- # Skill Title <IMPORTANT> key rules </IMPORTANT> ## When to Use ## Process/Phases ## Detailed Instructions ## Common Mistakes (if applicable) ## References ``` ## Phase 3: Draft Improvement ### Types of Improvements | Type | What to Add | Where | |------|-------------|-------| | **Missing rule** | New check or guideline | Appropriate phase/section | | **Missing pattern** | New detection criteria | Pattern/detection section | | **Better example** | Code snippet or scenario | Examples section | | **Clarification** | Explanation of edge case | Related rule section | | **New trigger** | When skill should activate | "When to Use" section | | **Threshold adjustment** | Different numeric value | Threshold/criteria section | ### Writing Guidelines 1. **Be concise** - skills should be scannable 2. **Use tables** - easier to read than paragraphs 3. **Include examples** - show, don't just tell 4. **Add rationale** - explain WHY, not just WHAT 5. **Match existing tone** - consistent style throughout ### Improvement Template ```markdown ## [Section Name] ### [New Rule/Pattern Name] **Why:** [Brief rationale] **Detection:** - [Criteria 1] - [Criteria 2] **Example:** ```code // Bad [bad example] // Good [good example] ``` **Severity:** [Critical/Must Fix/Should Fix/Nitpick] ``` ## Phase 4: Apply Change ### Edit Checklist - [ ] Found the source file (not symlink) - [ ] Read surrounding context - [ ] Matched existing style - [ ] Added to appropriate section - [ ] No contradictions with existing content - [ ] Used Edit tool (not Write) for existing files ### Common Edit Locations | Skill Type | Typical Sections to Update | |------------|---------------------------| | Programming skills | Rules tables, code examples | | Planning skills | Phase checklists, task lists | | Review skills | Detection criteria, severity tables | | Debugging skills | Troubleshooting steps, symptoms | ## Phase 5: Report After making the change, report: ```markdown ## Skill Improved: [skill-name] **What was missing:** [Description of the gap] **What was added:** - [Summary of addition] **Location:** [File:Line or Section name] **Reason:** [Why this improvement helps] ``` ## Examples of Automatic Detection ### Example 1: During PR Review **Situation:** Reviewing C++ code, you encounter a pattern that looks wrong but isn't in `code-smells`. **Internal thought:** "This is a 'Refused Bequest' - subclass doesn't use parent methods. The skill mentions it but has no detection criteria." **Automatic action:** ```markdown --- **Skill Improvement Detected** **Skill:** `code-smells` **Gap:** "Refused Bequest" lacks detection criteria **Context:** Found during PR review of inheritance hierarchy **Proposed Addition:** **Detection criteria:** - Subclass overrides parent method to do nothing or throw - Subclass uses <30% of inherited interface - Subclass only uses parent for type compatibility **Severity:** Should Fix (50) - indicates wrong inheritance **Location:** Object-Orientation Abusers section --- Apply this improvement? (y/n) ``` ### Example 2: During Implementation **Situation:** Writing C++ code, you need a pattern for optional parameters but `programming-cpp` doesn't cover it. **Internal thought:** "I know std::optional is the right choice here, but the skill doesn't mention it." **Automatic action:** ```markdown --- **Skill Improvement Detected** **Skill:** `programming-cpp` **Gap:** No guidance on optional parameters **Context:** Needed while implementing function with optional config **Proposed Addition:** ### Optional Parameters | Pattern | Use Case | |---------|----------| | `std::optional<T>` | Value may or may not be present | | Default argument | Always has a sensible default | | Overloads | Different behavior, not just presence | ```cpp // Good: explicit optionality void configure(std::optional<Config> config = std::nullopt); // Bad: using pointer for optionality void configure(Config* config = nullptr); ``` **Location:** Parameters section --- Apply this improvement? (y/n) ``` ### Example 3: After Debugging **Situation:** Spent time debugging a rocprofiler-systems issue. The solution should be in the debugging skill. **Internal thought:** "I figured out that `ROCPROFSYS_VERBOSE=3` helps diagnose this. Others will hit this too." **Automatic action:** ```markdown --- **Skill Improvement Detected** **Skill:** `debugging-rocprof-sys` **Gap:** Missing verbose logging troubleshooting step **Context:** Discovered while debugging instrumentation failure **Proposed Addition:** ### Enable Verbose Logging When standard troubleshooting doesn't reveal the issue: ```bash export ROCPROFSYS_VERBOSE=3 rocprof-sys-run -- ./app ``` Levels: 1 (errors), 2 (warnings), 3 (info), 4+ (debug) **Location:** General Troubleshooting section --- Apply this improvement? (y/n) ``` ## When NOT to Use This Skill | Situation | What to Do Instead | |-----------|---------------------| | Creating a new skill | Use `radisha-create-skill` | | Major skill rewrite | Plan it as a feature | | Project-specific rules | Add to project's CLAUDE.md | | One-time exception | Just note it in the review | ## Quick Reference ```bash # Find skill source readlink -f ~/.claude/skills/<name>/SKILL.md # Edit skill # Use Edit tool on the source file # After editing, changes are immediately available # (skills are symlinked, no need to "deploy") ``` ## Integration This skill works with: - `radisha-create-skill` - for new skills - `radisha-update` - for updating radisha itself - `radisha-skills` - to list available skills
GitHubで見る