[2.16.0] Consolidate DHH styles and add /feature-video command
- Merge dhh-ruby-style into dhh-rails-style for comprehensive Rails conventions - Add testing.md reference covering Rails testing patterns - Add /feature-video command for recording PR demo videos - Update docs and component counts 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Compounding Engineering - AI-Powered Development Tools for Claude Code</title>
|
||||
<meta content="Your code reviews just got 12 expert opinions in 30 seconds. 24 specialized agents, 19 workflow commands, and 11 skills that make today's work easier than yesterday's." name="description" />
|
||||
<meta content="Your code reviews just got 12 expert opinions in 30 seconds. 27 specialized agents, 19 workflow commands, and 12 skills that make today's work easier than yesterday's." name="description" />
|
||||
<meta content="width=device-width, initial-scale=1" name="viewport" />
|
||||
|
||||
<!-- Open Graph -->
|
||||
@@ -12,7 +12,7 @@
|
||||
<meta property="og:site_name" content="Compounding Engineering" />
|
||||
<meta property="og:locale" content="en_US" />
|
||||
<meta property="og:title" content="Compounding Engineering - AI Development Tools" />
|
||||
<meta property="og:description" content="Get 12 expert code reviews in 30 seconds. 24 specialized agents that make today's work easier than yesterday's." />
|
||||
<meta property="og:description" content="Get 12 expert code reviews in 30 seconds. 27 specialized agents that make today's work easier than yesterday's." />
|
||||
<meta name="twitter:card" content="summary_large_image" />
|
||||
<meta name="twitter:title" content="Compounding Engineering" />
|
||||
<meta name="twitter:description" content="12 expert code reviews in 30 seconds. Make today's work easier than yesterday's." />
|
||||
@@ -161,7 +161,7 @@
|
||||
Your Code Reviews Just Got 12 Expert Opinions. In 30 Seconds.
|
||||
</h1>
|
||||
<p class="paragraph m secondary balanced" style="margin-bottom: 32px;">
|
||||
Here's what happened when we shipped yesterday: security audit, performance analysis, architectural review, pattern detection, and eight more specialized checks—all running in parallel. No meetings. No waiting. Just answers. That's compounding engineering: 24 specialized agents, 19 workflow commands, and 11 skills that make today's work easier than yesterday's.
|
||||
Here's what happened when we shipped yesterday: security audit, performance analysis, architectural review, pattern detection, and eight more specialized checks—all running in parallel. No meetings. No waiting. Just answers. That's compounding engineering: 27 specialized agents, 19 workflow commands, and 12 skills that make today's work easier than yesterday's.
|
||||
</p>
|
||||
<div class="button-group margin-paragraph centered">
|
||||
<a href="#install" class="button primary">
|
||||
@@ -179,7 +179,7 @@
|
||||
<div class="stats-container">
|
||||
<div class="stat-card">
|
||||
<div class="stat-icon"><i class="fa-solid fa-users-gear"></i></div>
|
||||
<div class="stat-number">24</div>
|
||||
<div class="stat-number">27</div>
|
||||
<div class="stat-label">Specialized Agents</div>
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
@@ -189,7 +189,7 @@
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
<div class="stat-icon"><i class="fa-solid fa-wand-magic-sparkles"></i></div>
|
||||
<div class="stat-number">11</div>
|
||||
<div class="stat-number">12</div>
|
||||
<div class="stat-label">Intelligent Skills</div>
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
@@ -244,9 +244,9 @@
|
||||
The <code>security-sentinel</code> has checked 10,000 PRs for SQL injection. The <code>kieran-rails-reviewer</code> never approves a controller with business logic. They don't get tired, don't skip Friday afternoon reviews, don't forget the conventions you agreed on in March. Run <code>/work</code> and watch your plan execute with quality gates that actually enforce your standards—every single time.
|
||||
</p>
|
||||
<div class="pillar-tools">
|
||||
<span class="tool-tag">24 specialized agents</span>
|
||||
<span class="tool-tag">27 specialized agents</span>
|
||||
<span class="tool-tag">/work</span>
|
||||
<span class="tool-tag">dhh-ruby-style skill</span>
|
||||
<span class="tool-tag">dhh-rails-style skill</span>
|
||||
<span class="tool-tag">git-worktree skill</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -292,7 +292,7 @@
|
||||
<section id="agents">
|
||||
<div class="heading">
|
||||
<h2 class="no-top-margin">
|
||||
<i class="fa-solid fa-users-gear color-accent"></i> 24 Specialized Agents
|
||||
<i class="fa-solid fa-users-gear color-accent"></i> 27 Specialized Agents
|
||||
</h2>
|
||||
<p class="paragraph m secondary">
|
||||
Think of them as coworkers who never quit. The security-sentinel has seen every SQL injection variant. The kieran-rails-reviewer enforces conventions with zero compromise. The performance-oracle spots N+1 queries while you're still reading the PR. Run them solo or launch twelve in parallel—your choice.
|
||||
@@ -683,10 +683,10 @@
|
||||
<section id="skills">
|
||||
<div class="heading">
|
||||
<h2 class="no-top-margin">
|
||||
<i class="fa-solid fa-wand-magic-sparkles color-accent"></i> 11 Intelligent Skills
|
||||
<i class="fa-solid fa-wand-magic-sparkles color-accent"></i> 12 Intelligent Skills
|
||||
</h2>
|
||||
<p class="paragraph m secondary">
|
||||
Domain expertise on tap. Need to write a Ruby gem? The andrew-kane-gem-writer knows the patterns Andrew uses in 50+ popular gems. Building a Rails app? The dhh-ruby-style enforces 37signals conventions. Generating images? The gemini-imagegen has Google's AI on speed dial. Just invoke the skill and watch it work.
|
||||
Domain expertise on tap. Need to write a Ruby gem? The andrew-kane-gem-writer knows the patterns Andrew uses in 50+ popular gems. Building a Rails app? The dhh-rails-style enforces 37signals conventions. Generating images? The gemini-imagegen has Google's AI on speed dial. Just invoke the skill and watch it work.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -704,11 +704,11 @@
|
||||
</div>
|
||||
<div class="skill-card">
|
||||
<div class="skill-header">
|
||||
<span class="skill-name">dhh-ruby-style</span>
|
||||
<span class="skill-name">dhh-rails-style</span>
|
||||
<span class="skill-badge">Rails</span>
|
||||
</div>
|
||||
<p class="skill-description">Write Ruby/Rails code in DHH's 37signals style. Convention over configuration, beautiful code.</p>
|
||||
<code class="skill-usage">skill: dhh-ruby-style</code>
|
||||
<p class="skill-description">Write Ruby/Rails code in DHH's 37signals style. REST purity, fat models, thin controllers, Hotwire patterns.</p>
|
||||
<code class="skill-usage">skill: dhh-rails-style</code>
|
||||
</div>
|
||||
<div class="skill-card">
|
||||
<div class="skill-header">
|
||||
@@ -943,7 +943,7 @@ skill: gemini-imagegen</code></pre>
|
||||
<strong>Agents</strong> are coworkers with specific jobs. The security-sentinel does security reviews. The kieran-rails-reviewer enforces Rails conventions. You call them directly: <code>claude agent security-sentinel</code>.
|
||||
</p>
|
||||
<p>
|
||||
<strong>Skills</strong> are expertise Claude can tap into when needed. The dhh-ruby-style knows 37signals patterns. The gemini-imagegen knows how to generate images. Claude invokes them automatically when relevant, or you can explicitly call them: <code>skill: dhh-ruby-style</code>.
|
||||
<strong>Skills</strong> are expertise Claude can tap into when needed. The dhh-rails-style knows 37signals Rails patterns. The gemini-imagegen knows how to generate images. Claude invokes them automatically when relevant, or you can explicitly call them: <code>skill: dhh-rails-style</code>.
|
||||
</p>
|
||||
</div>
|
||||
</details>
|
||||
@@ -989,7 +989,7 @@ skill: gemini-imagegen</code></pre>
|
||||
<span class="cta-badge"><i class="fa-solid fa-bolt"></i> Free & Open Source</span>
|
||||
<h2>Install Once. Compound Forever.</h2>
|
||||
<p class="paragraph m cta-subheading">
|
||||
<strong>Your next code review takes 30 seconds.</strong> The one after that? Even faster. That's compounding. Get 24 expert agents, 19 workflow commands, and 11 specialized skills working for you right now.
|
||||
<strong>Your next code review takes 30 seconds.</strong> The one after that? Even faster. That's compounding. Get 27 expert agents, 19 workflow commands, and 12 specialized skills working for you right now.
|
||||
</p>
|
||||
<div class="button-group margin-paragraph centered">
|
||||
<a href="#install" class="button primary cta-primary">
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Skill Reference - Compounding Engineering</title>
|
||||
<meta content="Complete reference for all 11 intelligent skills in the Compounding Engineering plugin." name="description" />
|
||||
<meta content="Complete reference for all 12 intelligent skills in the Compounding Engineering plugin." name="description" />
|
||||
<meta content="width=device-width, initial-scale=1" name="viewport" />
|
||||
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" />
|
||||
@@ -33,9 +33,9 @@
|
||||
<div class="nav-section">
|
||||
<h3>Reference</h3>
|
||||
<ul>
|
||||
<li><a href="agents.html">Agents (23)</a></li>
|
||||
<li><a href="commands.html">Commands (13)</a></li>
|
||||
<li><a href="skills.html" class="active">Skills (11)</a></li>
|
||||
<li><a href="agents.html">Agents (27)</a></li>
|
||||
<li><a href="commands.html">Commands (19)</a></li>
|
||||
<li><a href="skills.html" class="active">Skills (12)</a></li>
|
||||
<li><a href="mcp-servers.html">MCP Servers (2)</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -48,7 +48,7 @@
|
||||
<div class="nav-section">
|
||||
<h3>On This Page</h3>
|
||||
<ul>
|
||||
<li><a href="#development-tools">Development (7)</a></li>
|
||||
<li><a href="#development-tools">Development (8)</a></li>
|
||||
<li><a href="#content-workflow">Content & Workflow (3)</a></li>
|
||||
<li><a href="#image-generation">Image Generation (1)</a></li>
|
||||
</ul>
|
||||
@@ -84,7 +84,7 @@ skill: [skill-name]
|
||||
|
||||
# Examples
|
||||
skill: gemini-imagegen
|
||||
skill: dhh-ruby-style
|
||||
skill: dhh-rails-style
|
||||
skill: create-agent-skills</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
@@ -101,7 +101,7 @@ skill: create-agent-skills</code></pre>
|
||||
|
||||
<!-- Development Tools -->
|
||||
<section id="development-tools">
|
||||
<h2><i class="fa-solid fa-code"></i> Development Tools (7)</h2>
|
||||
<h2><i class="fa-solid fa-code"></i> Development Tools (8)</h2>
|
||||
<p>These skills teach Claude specific coding styles and architectural patterns. Use them when you want code that follows a particular philosophy—not just any working code, but code that looks like it was written by a specific person or framework.</p>
|
||||
|
||||
<div class="skill-detail" id="create-agent-skills">
|
||||
@@ -158,31 +158,34 @@ skill: create-agent-skills</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-detail" id="dhh-ruby-style">
|
||||
<div class="skill-detail" id="dhh-rails-style">
|
||||
<div class="skill-detail-header">
|
||||
<h3>dhh-ruby-style</h3>
|
||||
<h3>dhh-rails-style</h3>
|
||||
<span class="skill-badge">Rails</span>
|
||||
</div>
|
||||
<p class="skill-detail-description">
|
||||
You want Rails controllers that are five lines, not fifty. Models that handle authorization, broadcasting, and business logic without service objects everywhere. This skill teaches Claude to write code the way DHH writes it at 37signals—REST-pure, Hotwire-first, no architectural astronautics.
|
||||
Comprehensive 37signals Rails conventions based on Marc Köhlbrugge's analysis of 265 PRs from the Fizzy codebase. Covers everything from REST mapping to state-as-records, Turbo/Stimulus patterns, CSS with OKLCH colors, Minitest with fixtures, and Solid Queue/Cache/Cable patterns.
|
||||
</p>
|
||||
<h4>Key Patterns</h4>
|
||||
<ul>
|
||||
<li><strong>REST Purity</strong> - 7 REST actions only</li>
|
||||
<li><strong>Fat Models</strong> - Business logic, authorization, broadcasting in models</li>
|
||||
<li><strong>Thin Controllers</strong> - 1-5 line actions</li>
|
||||
<li><strong>Current Attributes</strong> - Request context</li>
|
||||
<li><strong>Hotwire/Turbo</strong> - Model-level broadcasting</li>
|
||||
<li><strong>REST Purity</strong> - Verbs become nouns (close → closure)</li>
|
||||
<li><strong>State as Records</strong> - Boolean columns → separate records</li>
|
||||
<li><strong>Fat Models</strong> - Business logic, authorization, broadcasting</li>
|
||||
<li><strong>Thin Controllers</strong> - 1-5 line actions with concerns</li>
|
||||
<li><strong>Current Attributes</strong> - Request context everywhere</li>
|
||||
<li><strong>Hotwire/Turbo</strong> - Model-level broadcasting, morphing</li>
|
||||
</ul>
|
||||
<h4>Ruby Syntax Preferences</h4>
|
||||
<h4>Reference Files (6)</h4>
|
||||
<ul>
|
||||
<li>Symbol arrays <code>%i[...]</code></li>
|
||||
<li>Modern hash syntax</li>
|
||||
<li>Ternaries for simple conditionals</li>
|
||||
<li>Bang methods for mutations</li>
|
||||
<li><code>controllers.md</code> - REST mapping, concerns, Turbo responses</li>
|
||||
<li><code>models.md</code> - Concerns, state records, callbacks, POROs</li>
|
||||
<li><code>frontend.md</code> - Turbo, Stimulus, CSS layers, OKLCH</li>
|
||||
<li><code>architecture.md</code> - Routing, auth, jobs, caching</li>
|
||||
<li><code>testing.md</code> - Minitest, fixtures, integration tests</li>
|
||||
<li><code>gems.md</code> - What to use vs avoid, decision framework</li>
|
||||
</ul>
|
||||
<div class="card-code-block">
|
||||
<pre><code>skill: dhh-ruby-style</code></pre>
|
||||
<pre><code>skill: dhh-rails-style</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -331,6 +334,28 @@ skill: create-agent-skills</code></pre>
|
||||
<pre><code>skill: compound-docs</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="skill-detail" id="agent-native-architecture">
|
||||
<div class="skill-detail-header">
|
||||
<h3>agent-native-architecture</h3>
|
||||
<span class="skill-badge">AI</span>
|
||||
</div>
|
||||
<p class="skill-detail-description">
|
||||
Build AI agents using prompt-native architecture where features are defined in prompts, not code. When creating autonomous agents, designing MCP servers, or implementing self-modifying systems, this skill guides the "trust the agent's intelligence" philosophy.
|
||||
</p>
|
||||
<h4>Key Patterns</h4>
|
||||
<ul>
|
||||
<li><strong>Prompt-Native Features</strong> - Define features in prompts, not code</li>
|
||||
<li><strong>MCP Tool Design</strong> - Build tools agents can use effectively</li>
|
||||
<li><strong>System Prompts</strong> - Write instructions that guide agent behavior</li>
|
||||
<li><strong>Self-Modification</strong> - Allow agents to improve their own prompts</li>
|
||||
</ul>
|
||||
<h4>Core Principle</h4>
|
||||
<p>Whatever the user can do, the agent can do. Whatever the user can see, the agent can see.</p>
|
||||
<div class="card-code-block">
|
||||
<pre><code>skill: agent-native-architecture</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- Content & Workflow -->
|
||||
|
||||
Reference in New Issue
Block a user