Work with Obsidian vaults (plain Markdown notes) and automate via obsidian-cli.
npx skills add jacobh/agent-skills --skill "improve-skill"
Install specific skill from multi-skill repository
# Description
Extract learnings from session transcripts or notes and incorporate them into existing skills or create new ones. Use when the user has analysis documents, session learnings, or patterns they want to formalize into reusable skill content.
# SKILL.md
name: improve-skill
description: Extract learnings from session transcripts or notes and incorporate them into existing skills or create new ones. Use when the user has analysis documents, session learnings, or patterns they want to formalize into reusable skill content.
Improve Skill
Transforms session learnings, analysis documents, and discovered patterns into structured skill improvements.
When to Use
- User has notes/documents with learnings from a deep work session
- User wants to update an existing skill with new patterns discovered
- User wants to create a new skill from accumulated knowledge
- User says "improve skill", "update skill", "add to skill", "skill learnings"
Process
1. Gather Context
Identify the inputs:
- Learnings source: Session notes, analysis docs, conversation history
- Target skill: Existing skill to improve, or create new
- Scope: What categories of learnings (patterns, anti-patterns, workflows, reference data)
If the user hasn't specified a target skill, ask:
- Is this for an existing skill? Which one?
- Or should this become a new skill?
2. Read Existing Skill (if improving)
Read the target skill's files:
ls -la <skill-directory>/
cat <skill-directory>/SKILL.md
# Read any additional reference files
Understand the current structure before proposing changes.
3. Extract Learnings
From the source documents, identify:
| Category | What to Extract |
|---|---|
| Patterns | Recurring solutions, resolution strategies, code idioms |
| Anti-patterns | Common mistakes, things that don't work |
| Classifications | Module categories, conflict types, file groupings |
| Reference data | Tables, mappings, inventories |
| Workflows | Step-by-step procedures, checklists |
| Verification | Commands to validate, checks to run |
4. Decide on Structure
For small additions (< 50 lines):
- Add directly to SKILL.md in appropriate section
For substantial additions (50-200 lines):
- Create new section in SKILL.md with summary
- Consider separate reference file if content is lookup-oriented
For large additions (> 200 lines):
- Create separate .md file (e.g., MODULES.md, PATTERNS.md)
- Add brief reference in SKILL.md pointing to the new file
- Use progressive disclosure pattern
5. Apply Updates
Follow these principles:
- Preserve existing structure - Add to existing sections when possible
- Use consistent terminology - Match the skill's existing voice/terms
- Keep SKILL.md scannable - Move reference tables to separate files
- Add context on when to use - New content should explain its trigger
- Update description if needed - If scope changed, update frontmatter
6. Verify
After making changes:
# Check file exists and is valid
cat <skill-directory>/SKILL.md | head -20
# Verify frontmatter is valid YAML
# - name: lowercase, hyphens, max 64 chars
# - description: non-empty, max 1024 chars
# Check for broken internal links
rg "\[.*\]\(.*\.md\)" <skill-directory>/
Output Format
Present changes as:
- Summary - What was added/changed
- Rationale - Why this structure was chosen
- Files modified - List of files changed
- Skill description update - If the description should change
Guidelines
- Be concise: Only add what Claude doesn't already know
- Prefer tables: For reference data, classifications, mappings
- Use examples: Concrete over abstract
- One level deep: Reference files should link from SKILL.md, not from each other
- Test mentally: Would this help Claude in a future session?
Creating New Skills
If creating a new skill rather than improving existing:
- Choose location:
~/.claude/skills/<name>/- Personal, all projects-
.claude/skills/<name>/- Project-specific -
Create directory and SKILL.md:
bash mkdir -p <location>/<skill-name> -
Write SKILL.md with:
```markdown
name:
description:
#
## When to Use
## Process
## Guidelines
```
- Add reference files as needed for large content blocks
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.