obra
@obra
Public Skills
finishing-a-development-branch
by obra
Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting structured options for merge, PR, or cleanup
requesting-code-review
by obra
Use when completing tasks, implementing major features, or before merging to verify work meets requirements
brainstorming
by obra
"You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation."
executing-plans
by obra
Use when you have a written implementation plan to execute in a separate session with review checkpoints
test-driven-development
by obra
Use when implementing any feature or bugfix, before writing implementation code
using-superpowers
by obra
Use when starting any conversation - establishes how to find and use skills, requiring Skill tool invocation before ANY response including clarifying questions
subagent-driven-development
by obra
Use when executing implementation plans with independent tasks in the current session
receiving-code-review
by obra
Use when receiving code review feedback, before implementing suggestions, especially if feedback seems unclear or technically questionable - requires technical rigor and verification, not performative agreement or blind implementation
dispatching-parallel-agents
by obra
Use when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies
verification-before-completion
by obra
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
using-git-worktrees
by obra
Use when starting feature work that needs isolation from current workspace or before executing implementation plans - creates isolated git worktrees with smart directory selection and safety verification
systematic-debugging
by obra
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
writing-plans
by obra
Use when you have a spec or requirements for a multi-step task, before touching code
writing-skills
by obra
Use when creating new skills, editing existing skills, or verifying skills work before deployment
writing-clearly-and-concisely
by obra
Apply Strunk's timeless writing rules to ANY prose humans will read—documentation, commit messages, error messages, explanations, reports, or UI text. Makes your writing clearer, stronger, and more professional.
slack-messaging
by obra
Use when asked to send or read Slack messages, check Slack channels, test Slack integrations, or interact with a Slack workspace from the command line.
finding-duplicate-functions
by obra
Use when auditing a codebase for semantic duplication - functions that do the same thing but have different names or implementations. Especially useful for LLM-generated codebases where new functions are often created rather than reusing existing ones.
mcp-cli
by obra
Use MCP servers on-demand via the mcp CLI tool - discover tools, resources, and prompts without polluting context with pre-loaded MCP integrations
using-tmux-for-interactive-commands
by obra
Use when you need to run interactive CLI tools (vim, git rebase -i, Python REPL, etc.) that require real-time input/output - provides tmux-based approach for controlling interactive sessions through detached sessions and send-keys
browsing
by obra
Use when you need direct browser control - teaches Chrome DevTools Protocol for controlling existing browser sessions, multi-tab management, form automation, and content extraction via use_browser MCP tool
developing-claude-code-plugins
by obra
Use when working on Claude Code plugins (creating, modifying, testing, releasing, or maintaining) - provides streamlined workflows, patterns, and examples for the complete plugin lifecycle
working-with-claude-code
by obra
Use when working with Claude Code CLI, plugins, hooks, MCP servers, skills, configuration, or any Claude Code feature - provides comprehensive official documentation for all aspects of Claude Code
Getting Started with Skills
by obra
Skills wiki intro - mandatory workflows, search tool, brainstorming triggers
Brainstorming Ideas Into Designs
by obra
Interactive idea refinement using Socratic method to develop fully-formed designs
Executing Plans
by obra
Execute detailed plans in batches with review checkpoints
Subagent-Driven Development
by obra
Execute implementation plan by dispatching fresh subagent for each task, with code review between tasks
Finishing a Development Branch
by obra
Complete feature development with structured options for merge, PR, or cleanup
Writing Plans
by obra
Create detailed implementation plans with bite-sized tasks for engineers with zero codebase context
Verification Before Completion
by obra
Run verification commands and confirm output before claiming success
Code Review Reception
by obra
Receive and act on code review feedback with technical rigor, not performative agreement or blind implementation
Systematic Debugging
by obra
Four-phase debugging framework that ensures root cause investigation before attempting fixes. Never jump to solutions.
Requesting Code Review
by obra
Dispatch code-reviewer subagent to review implementation against plan or requirements before proceeding
Remembering Conversations
by obra
Search previous Claude Code conversations for facts, patterns, decisions, and context using semantic or text search
Encapsulating Complexity
by obra
Hide implementation details behind interfaces - work at domain level (what), not implementation level (how)
Localizing Variables
by obra
Declare variables in smallest possible scope, initialize close to first use, minimize span and live time
Maintaining Consistent Abstractions
by obra
Class interfaces present one cohesive abstraction - don't mix domain logic with serialization, persistence, or unrelated concerns
Domain-Focused Naming
by obra
Name code by what it does in the domain, not how it's implemented or its history
Commenting Intent
by obra
Comment WHY code exists and non-obvious decisions, not WHAT code does (mechanics)
Naming Variables
by obra
Choose names that fully and accurately describe what the variable represents
Exploring Alternatives
by obra
Try 2-3 different approaches before implementing - don't settle for first design you think of
Refactoring Safely
by obra
Refactor with tests first, one change at a time, never mix refactoring with bug fixes or new features
Keeping Routines Focused
by obra
Each routine does one thing and does it well - extract when routines have multiple responsibilities
Simplifying Control Flow
by obra
Flatten nested conditionals with early returns or table-driven methods - keep nesting depth under 3 levels
Single Purpose Variables
by obra
Use each variable for exactly one purpose - no hybrid coupling or hidden meanings
Validating Inputs
by obra
Check all external inputs for validity - garbage in, nothing out, never garbage out
Writing Evergreen Comments
by obra
Write comments explaining WHAT and WHY, never temporal context or history
Reducing Complexity
by obra
Managing complexity is software's primary technical imperative - all other goals are secondary
Designing Before Coding
by obra
Design in pseudocode first, iterate approaches, then translate to code
Dispatching Parallel Agents
by obra
Use multiple Claude agents to investigate and fix independent problems concurrently
Root Cause Tracing
by obra
Systematically trace bugs backward through call stack to find original trigger
codex-subagents
by obra
Spawn background subagents for parallel or long-running tasks. Use when you need research threads, context isolation, or detached execution.