[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:
Kieran Klaassen
2026-01-05 09:36:56 -08:00
parent 6d8c8675f3
commit 141bbb42cb
12 changed files with 845 additions and 1274 deletions

View File

@@ -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 -->