skill-creator
This skill provides guidance for creating effective skills.
This skill should be used when writing technical content in the style of Hunt/Thomas (The Pragmatic Programmer) and Joel Spolsky (Joel on Software). It applies when creating technical essays, documentation, tutorials, or explanatory content that needs to be clear, engaging, and
$ npx -y skills add robertguss/claude-code-toolkit --skill pragmatic-writing --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/pragmatic-writingContext preview
The summary Claude sees to decide when to auto-load this skill.
This skill should be used when writing technical content in the style of Hunt/Thomas (The Pragmatic Programmer) and Joel Spolsky (Joel on Software). It applies when creating technical essays, documentation, tutorials, or explanatory content that needs to be clear, engaging, and
name: pragmatic-writing description: This skill should be used when writing technical content in the style of Hunt/Thomas (The Pragmatic Programmer) and Joel Spolsky (Joel on Software). It applies when creating technical essays, documentation, tutorials, or explanatory content that needs to be clear, engaging, and actionable.
Writing style modeled on the masters of technical communication: Andy Hunt, Dave Thomas (The Pragmatic Programmer), and Joel Spolsky (Joel on Software). This skill transforms technical content into engaging, memorable prose.
This skill applies when:
> "The difference between 'almost right' and 'right' is the difference between the lightning bug and the lightning." — Mark Twain (quoted by Pragmatic Programmers)
Technical writing doesn't have to be dry. The best technical writers make complex ideas feel obvious, use concrete examples before abstract theory, and treat the reader as a smart colleague.
Reference the complete technique guide at [techniques.md](./references/techniques.md).
**Always** start with a concrete example, then extract the principle.
❌ "Dependency injection is a design pattern where dependencies are passed
to objects rather than created by them."
✅ "Imagine your class needs a database connection. You could create it
yourself:
def initialize
@db = Database.new("localhost:5432")
end
But now your class is stuck with that exact database. What if you
want to test with a fake one? What if production uses a different host?
Instead, accept it as a parameter:
def initialize(db)
@db = db
end
That's dependency injection. Simple."Map abstract concepts to physical experiences readers already understand.
See [examples.md](./references/examples.md) for analogy patterns:
Write like you're explaining to a smart colleague at a whiteboard.
**Markers of conversational register:**
Use humor strategically, not decoratively:
Build to moments of realization: 1. Present a familiar problem 2. Show the common (flawed) approach 3. Reveal why it fails 4. Present the insight 5. Show the better way 6. Connect back to the principle
Like this.
Code examples should:
After a concrete exploration, box the principle:
> **Tip 23: Always Design for Concurrency** > Allow for concurrency, and you will design cleaner interfaces with fewer assumptions.
When discussing pitfalls:
See [anti-patterns.md](./references/anti-patterns.md) for common technical writing mistakes.
End by connecting back to the opening example or question. Close the loop.
**Use**: specific, concrete, everyday words **Avoid**: jargon without explanation, buzzwords, corporate-speak
1. Open with a problem or scenario 2. Explore the messy middle 3. Reveal the insight 4. Show the solution 5. Extract the principle 6. Callback to opening
1. Start with what the reader wants to do 2. Show the simplest working example 3. Expand with options and edge cases 4. Explain the "why" after the "how"
1. State the goal clearly 2. Show the end result first 3. Build up in small, testable steps 4. Explain mistakes, not just successes
Before publishing, verify:
Extend Claude Code with specialized workflows, automatic formatting, and better defaults. Skills give Claude domain expertise—brainstorming methods, documentation generation, book writing pipelines.
Repo: robertguss/claude-code-toolkit
This skill provides guidance for creating effective skills.
This skill should be used when writing in the distinctive style of David Heinemeier Hansson (DHH). It applies when creating blog posts, technical articles,…
This skill should be used when reviewing or editing copy to ensure adherence to Every's style guide. It provides a systematic line-by-line review process for…
This skill should be used when extracting voice profiles from sample text, creating voice documentation, or matching a specific writing style. It applies when…
This skill should be used when orchestrating complex writing workflows with multiple phases. It provides two-agent orchestration patterns, the two-gate content…
A collaborative brainstorming system designed for multi-session ideation projects that span days or weeks.