Summary
After reviewing everything-claude-code (50K+ stars, Anthropic hackathon winner), several patterns would improve our Claude Code developer experience.
Current State
Shakapacker has a solid foundation:
CLAUDE.md with critical requirements, testing, code style, git workflow ✅
.claude/commands/ (address-review, update-changelog) ✅
- Good open source maintainability guidelines ✅
Recommended ECC Patterns to Incorporate
1. Rules Directory .claude/rules/ (High Priority)
Move always-on guidelines from CLAUDE.md into .claude/rules/ files — the Claude Code-native structure for persistent rules.
Suggested split:
rules/coding-style.md — trailing newlines, bundle exec prefix, follow existing conventions
rules/testing.md — RSpec spy assertions, explicit test patterns, dual bundler testing
rules/git-workflow.md — feature branches, focused PRs, never push to main
rules/open-source.md — prefer removing complexity, security-safe defaults, no adjacent refactors in feature PRs
Why: Rules in .claude/rules/ are automatically loaded every session. The current CLAUDE.md works but this is cleaner and more maintainable.
2. Session Memory Hooks (High Priority)
ECC's session persistence hooks save/load context across Claude Code sessions automatically.
Why: Contributors working on multi-session features (e.g., rspack compatibility, hook system changes) lose context between sessions. Memory hooks fix this.
3. Verification Loop Command /verify (Medium Priority)
A single command that runs: bundle exec rubocop → yarn lint → bundle exec rspec → checks for both webpack and rspack compatibility.
Why: Our CLAUDE.md tells agents to lint before committing, but a structured verification loop catches issues more systematically. Especially important given dual bundler support.
4. Security Review Skill (Medium Priority)
Automated security checklist when PRs touch configuration, dependency management, or webpack/rspack loader configuration.
Why: Shakapacker handles build configuration which has security implications (loader injection, source map exposure, CSP headers). A security review skill would catch these.
5. Strategic Compaction (Low Priority)
Hook that suggests manual /compact at logical boundaries during long sessions.
What NOT to Adopt
- Full ECC plugin installation (cherry-pick only)
- Language-specific skills not relevant to our Ruby + JS stack
- Complex multi-agent orchestration
- Continuous learning / instincts system (overkill for a focused library)
Implementation Approach
Cherry-pick individual patterns, adapt to Ruby gem + npm package context. Keep changes minimal and aligned with our open source maintainability philosophy.
Summary
After reviewing everything-claude-code (50K+ stars, Anthropic hackathon winner), several patterns would improve our Claude Code developer experience.
Current State
Shakapacker has a solid foundation:
CLAUDE.mdwith critical requirements, testing, code style, git workflow ✅.claude/commands/(address-review, update-changelog) ✅Recommended ECC Patterns to Incorporate
1. Rules Directory
.claude/rules/(High Priority)Move always-on guidelines from
CLAUDE.mdinto.claude/rules/files — the Claude Code-native structure for persistent rules.Suggested split:
rules/coding-style.md— trailing newlines,bundle execprefix, follow existing conventionsrules/testing.md— RSpec spy assertions, explicit test patterns, dual bundler testingrules/git-workflow.md— feature branches, focused PRs, never push to mainrules/open-source.md— prefer removing complexity, security-safe defaults, no adjacent refactors in feature PRsWhy: Rules in
.claude/rules/are automatically loaded every session. The currentCLAUDE.mdworks but this is cleaner and more maintainable.2. Session Memory Hooks (High Priority)
ECC's session persistence hooks save/load context across Claude Code sessions automatically.
Why: Contributors working on multi-session features (e.g., rspack compatibility, hook system changes) lose context between sessions. Memory hooks fix this.
3. Verification Loop Command
/verify(Medium Priority)A single command that runs:
bundle exec rubocop→yarn lint→bundle exec rspec→ checks for both webpack and rspack compatibility.Why: Our
CLAUDE.mdtells agents to lint before committing, but a structured verification loop catches issues more systematically. Especially important given dual bundler support.4. Security Review Skill (Medium Priority)
Automated security checklist when PRs touch configuration, dependency management, or webpack/rspack loader configuration.
Why: Shakapacker handles build configuration which has security implications (loader injection, source map exposure, CSP headers). A security review skill would catch these.
5. Strategic Compaction (Low Priority)
Hook that suggests manual
/compactat logical boundaries during long sessions.What NOT to Adopt
Implementation Approach
Cherry-pick individual patterns, adapt to Ruby gem + npm package context. Keep changes minimal and aligned with our open source maintainability philosophy.