claude-code-showcase: the copy-paste-ready config that started as a Hacker News comment
ChrisWiles/claude-code-showcase · 6,074★ · 577 forks
A “copy-paste ready” example configuration for Claude Code: project memory, hooks, skills, agents, commands, MCP servers, and GitHub Actions workflows, all in a single repository.
Disambiguation note: the repository is simply named
claude-code-showcaseand should not be confused with the abundant generic YouTube content titled “Claude Code Tutorial/Course,” nor with theobra/superpowersproject (a skills methodology) orawesome-claude-codelists. This report documents only theChrisWiles/claude-code-showcaserepository, a concrete project-configuration example, not an installable package or framework.

Origin
The repository was created on January 6, 2026 by Christopher Wiles (ChrisWiles), a full-stack developer focused on the React/Node ecosystem, with a GitHub account dating back to 2014 and residence in Austin, Texas, per his profile. All content was published that same day: the repository’s 4 commits (the initial one and a second “feat: add MCP servers, LSP support, and /ticket command”) are dated January 6, 2026, between 18:50 and 19:05 UTC, and the only registered contributor is the author himself.
The narrative trigger was documented on Hacker News. In thread 46515696 — “Opus 4.5 is not the normal AI agent experience that I have had thus far,” posted by tbassetto and which reached 879 points and 123 comments — user OldGreenYodaGPT wrote a long comment on January 6, 2026 at 18:13 UTC (comment id 46516157) describing how his team uses Claude Code with skills, code-review agents, scheduled GitHub workflows, and ticket triage. The comment ends with the note “Edit: made an example repo for ya” and links directly to the repository. The first line of that comment — “Most software engineers are seriously sleeping on how good LLM agents are right now, especially something like Claude Code” — is, literally, the opening line of the README, confirming that the repository is the materialization of that comment.
Two anecdotes add color to the origin story: the author himself admits he dictated the comment by voice and let Claude reword it (“used voice to text then had claude reword, I am lazy and not gonna hand write it all for yall sorry!”), and the comment closed with an alarmist-toned prophecy: “There is so much low-hanging fruit here that it honestly blows my mind people aren’t all over it. 2026 is going to be a wake-up call.”
Identity caveat: the Hacker News user is OldGreenYodaGPT, not ChrisWiles. The attribution to Christopher Wiles is inferred, not a direct account verification: the literal text match between the comment and the README, the exact link to the repository, and the identical date make it practically certain they are the same person, but there is no explicit statement from the author linking the two handles.

Philosophy and principles
The README doesn’t state principles as a formal list, but its opening argument synthesizes the project’s philosophy: the “real unlock” is a solid set of reusable skills plus a few agents (“The real unlock is building a solid set of reusable “skills” plus a few “agents” for the stuff you do all the time.”). The core idea is that an unconfigured Claude Code is a teammate with superpowers but no knowledge of your conventions; with skills, it “already matches our patterns and standards out of the box.”
Other pillars: automating repetitive work with hooks (formatting code, running tests when a test file changes, TypeScript type-checking, and blocking edits on the main branch should be automatic behavior, not a human reminder); keeping maintenance “on autopilot” (most quality and maintenance work is delegated to agents scheduled via GitHub Actions); and integrating the ticketing system as the source of truth (through MCP servers, Claude can read a ticket, understand acceptance criteria, implement, update the ticket status, and create new tickets if it finds bugs).
In practice the philosophy is that of a best-practices template: it doesn’t ship a model or a runtime, it ships a directory and file structure that the user replicates in their own project.
How it works
The repository models the structure of a React/TypeScript project configured for Claude Code.
CLAUDE.md (project memory): loaded automatically at session start. It documents the stack, key commands (npm test, npm run lint, npm run build), directories, code style (strict TypeScript, prefer interface over type, forbid any), git conventions (branch names {initials}/{description}, Conventional Commits), and critical rules (error handling, UI states, mutations). The README documents three locations with precedence order: .claude/CLAUDE.md, ./CLAUDE.md, and ~/.claude/CLAUDE.md (user level).

.claude/settings.json (hooks and environment): defines environment variables (INSIDE_CLAUDE_CODE, BASH_DEFAULT_TIMEOUT_MS) and the hooks. The documented events are PreToolUse, PostToolUse, UserPromptSubmit, and Stop. The example includes a PreToolUse (matcher Edit|MultiEdit|Write) that blocks edits on the main branch and returns a message asking to create a feature branch; a PostToolUse that auto-formats JS/TS with npx prettier --write, auto-installs dependencies when package.json changes, runs related tests when a *.test.* file changes, and type-checks TypeScript with npx tsc --noEmit; and a UserPromptSubmit that fires the skill-evaluation system (skill-eval.sh).

.claude/skills/ (domain knowledge): six skills each with a SKILL.md: testing-patterns (Jest, TDD, factory functions, mocking), systematic-debugging (four-phase debugging methodology), react-ui-patterns (loading/error/empty states, GraphQL hooks), graphql-schema (queries, mutations, codegen), core-components (design system, tokens), and formik-patterns (forms, validation, submission). Each SKILL.md uses frontmatter with name and description (the field Claude uses to decide when to apply the skill) and standard sections “When to Use / Core Patterns / Anti-Patterns / Integration.”

.claude/agents/ (specialized agents): code-reviewer.md (thorough review with a checklist: no any, error handling, UI states, Error → Loading → Empty → Success ordering) and github-workflow.md (commits, branches, PRs). .claude/commands/ (slash commands): /onboard, /pr-review, /pr-summary, /code-quality, /docs-sync, and /ticket. The /ticket command orchestrates an end-to-end flow: read the ticket via MCP, explore the code, create a branch, implement with TDD, update the ticket, create and link the PR, and create a new ticket if a bug appears.

Skill-evaluation system (.claude/hooks/skill-eval.js + skill-rules.json): an engine that analyzes every submitted prompt (keywords, regex patterns, file paths, intent) and suggests which skills to activate, with a confidence score (keyword=2, keywordPattern=3, pathPattern=4, directoryMatch=5, intentPattern=4). .mcp.json (MCP integrations): declares servers for JIRA, GitHub, Linear, Sentry, Postgres, Slack, Notion, and Memory. LSP servers: enables real-time code intelligence (diagnostics, types, navigation) via plugins such as typescript-lsp, pyright-lsp, and rust-lsp.

GitHub Actions (.github/workflows/): four workflows that use anthropics/claude-code-action@beta with the claude-opus-4-5-20251101 model:
| Workflow | Schedule | Function |
|---|---|---|
pr-claude-code-review.yml | Per PR / @claude mention | Automatic PR review against the agent checklist |
scheduled-claude-code-docs-sync.yml | Monthly (1st) | Aligns documentation with code changes |
scheduled-claude-code-quality.yml | Weekly (Sunday) | Reviews random directories and auto-fixes |
scheduled-claude-code-dependency-audit.yml | Biweekly (1st and 15th) | Updates dependencies with test verification |

The ecosystem
The author’s other repositories (Christopher Wiles)
The author has few relevant contributions beyond this repository; most of his other repos are personal. The ones aligned with the same line of thinking: ChrisWiles/how-we-build-now — an essay on AI-native software engineering (“why verification became the constraint”), published in September 2026, sharing the showcase’s thesis that verification and testing are the bottleneck of the agentic flow (0 stars); and ChrisWiles/wiles-wiki — a personal wiki (Obsidian + obsidian-wiki skills + Quartz, deployed to GitHub Pages, 1 star), which is not a direct companion to the showcase. The author’s other repos (pickleball guides, travel itineraries, stock analysis) are unrelated to Claude Code.
Community ports and forks
joeangel/gemini-showcase — 6 stars, created January 12, 2026. A port to the Gemini CLI: “Comprehensive Gemini CLI project configuration with hooks, skills, agents, commands, and GitHub Actions workflows.” It was born as a direct response to issue #1, where nvictor asked how to adapt the showcase to Gemini CLI and joeangel answered by building this starting point. It’s the only non-idiomatic, verifiable port found in this research.
Curated lists that include it
ithiria894/awesome-claude-code-workflows — 120 stars, 26 forks, created March 23, 2026. A curated list of workflow “recipes” combining hooks, MCP servers, skills, agents, and CLAUDE.md. The showcase is listed there, as announced by issue #15, precisely because it demonstrates “real, working workflow patterns (not just loose tools).”
Adjacent projects the showcase extends or depends on
anthropics/claude-code-action — 8,844 stars, 2,135 forks, created May 19, 2025. Anthropic’s official GitHub Action that all of the showcase’s workflows invoke (anthropics/claude-code-action@beta). Without this project the scheduled flows wouldn’t function. modelcontextprotocol/servers — 90,241 stars. The official MCP-servers repository of the Model Context Protocol ecosystem, which the showcase’s .mcp.json draws inspiration from (albeit with an important caveat detailed in “Common pitfalls”).
These figures come from the GitHub API as of September 11, 2026, and are not a support or quality audit of each derivative.
Official / semi-official status
The showcase has no official status from Anthropic or any vendor. It doesn’t appear in any official plugin marketplace, carries no formal license, and is neither a spec nor a package. What it does document: verifiable community inclusion in the curated list ithiria894/awesome-claude-code-workflows (issue #15), maintained by the community, not a vendor; dependency on official components, since all its CI flows use the official anthropics/claude-code-action GitHub Action and its MCP model aligns with the modelcontextprotocol ecosystem; and de facto adoption as a template, with 6,062 stars in under 8 months and a single author, functioning as a de facto reference for “what a React/TypeScript project configured for Claude Code should look like.” No source consulted designates it a formal standard, and the absence of a license legally limits its reuse (see pitfalls).
Quick-start guide
This project is a configuration template, not an installable package. There’s no
npm installfor the showcase itself: the flow is to clone it and copy the configuration files into your own project.
Installation and first run
Prerequisites: Claude Code installed and working, git, Node.js/npx, and (for the workflows) the ANTHROPIC_API_KEY variable saved in the repository’s secrets. The README suggests the target structure:
your-project/
├── CLAUDE.md # Project memory
├── .mcp.json # MCP server config
├── .claude/
│ ├── settings.json # Hooks, environment, permissions
│ ├── settings.local.json # Personal overrides (gitignored)
│ ├── agents/ # Custom agents
│ ├── commands/ # Slash commands
│ ├── hooks/ # Hook scripts
│ └── skills/ # Domain knowledge
└── .github/workflows/ # GitHub Actions flows
Create the minimal structure (Quick Start from the README):
mkdir -p .claude/{agents,commands,hooks,skills}
Then: add CLAUDE.md at the root with the stack, commands, directories, and project rules; add .claude/settings.json with the hooks (formatting, tests, branch protection); and add your first skill in .claude/skills/<name>/SKILL.md. On first run, Claude Code automatically loads CLAUDE.md at session start and applies the settings.json hooks to every edit.
Common workflows
- Working a JIRA/Linear ticket end to end: run
/ticket PROJ-123. Claude reads the ticket via MCP, finds related files, creates the branch{initials}/{ticket-id}-{description}, implements with TDD, updates the ticket status to “In Review,” and creates the linked PR. - Automated PR review: when a PR is opened or synced, the
pr-claude-code-review.ymlworkflow (or an@claudemention) runs the review against the.claude/agents/code-reviewer.mdchecklist and posts feedback grouped by severity. - Weekly quality sweep:
scheduled-claude-code-quality.ymlpicks random directories undersrc/, reviews them, and auto-fixes clear issues, opening a PR if it made changes. - Monthly documentation sync:
scheduled-claude-code-docs-sync.ymlreads the commits from the last 30 days, finds outdated documentation, and only fixes what’s broken.
Essential configuration
The 5 files a new user touches first: CLAUDE.md (project memory), .claude/settings.json (hooks and environment variables), .claude/skills/<name>/SKILL.md (domain knowledge, where the description field decides when it activates), .claude/hooks/skill-rules.json (skill-activation rules), and .mcp.json (MCP servers and their environment variables).
Common pitfalls and fixes
.mcp.jsonreferences packages that don’t exist on npm. The 8 declared servers use the@anthropic/mcp-*scope. All return HTTP 404 on the npm registry (checked one by one). Fix: treat.mcp.jsonas pseudocode/illustrative, and replace each entry with a real MCP server before using it; the/ticketflow won’t work until you do.- Slash commands are missing the
namefield in the frontmatter. All 6 commands havedescriptionandallowed-tools, but none declaresname. Issue #20, an automated NLPM audit, flagged this as 8 bugs “preventing registration” of the commands (the repository scored 81/100). skill-rules.jsonsuggests skills that don’t exist. The rules file lists 19 skills, but the repository only has 6 real skill directories. Fix: trimskill-rules.jsondown to the skills that actually exist in your project.- Branch protection is hardcoded to
main. If your project’s default branch is different (e.g.master), the block doesn’t apply. - There is no license. The API’s
licensefield isNone. Viewing/cloning is possible, but redistribution isn’t covered by an explicit license. - Open applicability questions (issues #6 and #1, unanswered by the author): whether Claude via VS Code Copilot subscription honors these instructions, and how to adapt the approach to Gemini CLI.
Integrations and migration
The project consumes MCP as an integration layer with JIRA, GitHub, Linear, Sentry, Postgres, Slack, Notion, and Memory (by filling .mcp.json with real servers and exporting the corresponding environment variables). The four CI workflows depend on anthropics/claude-code-action@beta; to migrate them, copy the .yml files and set the ANTHROPIC_API_KEY secret (the README estimates a monthly cost of ~$10–$50 depending on PR volume). It connects to TypeScript, Python (Pyright), and Rust (rust-analyzer) via LSP plugins for real-time intelligence. There’s no documented migration guide from other templates; the only example of porting the approach to another agent is joeangel/gemini-showcase (Gemini CLI).
Current metrics
Measured: September 11, 2026, GitHub API.
| Metric | Value |
|---|---|
| Stars | 6,062 |
| Forks | 574 |
| Subscribers (real) | 47 |
| Commits | 4 |
| Open issues per API | 12 |
| Main languages | JavaScript (10,789 bytes), Shell (902) |
| License | None |
| Created | January 6, 2026 |
| Last push | January 6, 2026 |
| Latest release | None (no releases or tags) |
The only registered contributor is ChrisWiles (4 contributions). All 4 commits were published on January 6, 2026. The general API’s watchers_count field returns 6,062, same as stars, so subscribers_count (47) is reported separately as real subscribers. open_issues_count (12) may include open PRs; of the 19 items retrieved (state=all), 6 are non-PR issues and 13 are PRs, of which 12 remain open. There are no releases or tags, so the code’s state is that of the last commit on January 6, 2026.
Community reception
Reception concentrates in the repository itself (issues) and in the originating Hacker News thread. No dedicated Product Hunt launch or specific Reddit threads were found.
Enthusiasm and adoption:
- The originating thread 46515696 accumulated 879 points and 123 comments;
OldGreenYodaGPT’s comment (id 46516157) links to the repository and states that “a ton of maintenance and quality work is just… automated. Runs ridiculously well.” - Issue #1 (
nvictor, January 7, 2026): thanks the resource and asks how to adapt it to Gemini CLI.joeangelresponded by buildingjoeangel/gemini-showcase. - Issue #15 (
ithiria894, March 23, 2026): the project was included inawesome-claude-code-workflowsbecause it “demonstrated real, working workflow patterns.” - Issue #13 (
tupe12334, March 19, 2026, closed): “This showcase is an excellent Claude Code configuration reference that many developers use as a starting point.”
Criticism and concrete objections:
- Issue #20 (
xiaolai, April 22, 2026): an automated NLPM audit that scored the repository 81/100 and flagged 8 bugs (the 6 commands missingnamein the frontmatter) and security findings: all 8 MCP servers usenpx -ywithout pinning a version (a compromised package would be silently adopted), and@anthropic/mcp-postgresgrants full read/write without scoped permissions. - Issue #12 (
Jackie-shi, February 26, 2026): a pitch for a skills marketplace asking to list the content as installable packs — not technical criticism, but evidence that the repository attracts third-party commercial proposals. - Issue #6 (
probonopd, January 9, 2026, unanswered): asks whether Claude via VS Code Copilot subscription honors these instructions, and whether it can be applied to an entire GitHub organization or only repo by repo.
Comparison with similar projects
| Project | Verifiable overlap | Verifiable difference |
|---|---|---|
obra/superpowers | Both teach Claude Code via skills and repeatable processes. | Superpowers is a plugin/marketplace with a methodology installable across multiple agents; the showcase is a project-configuration example focused on React/TypeScript, with no install and no license. |
joeangel/gemini-showcase (6 ⭐) | Same pieces (hooks, skills, agents, commands, GitHub Actions). | A port to Gemini CLI born from issue #1; the showcase is Claude Code-specific. |
VoltAgent/awesome-claude-code-subagents (25,001 ⭐) | A collection of subagents for Claude Code. | A list of 100+ specialized subagents, not a configurable project structure. |
rohitg00/awesome-claude-code-toolkit (2,608 ⭐) | An agents/skills “toolkit.” | Provides 135 curated agents and 35 skills; the showcase provides a complete project configuration. |
hesreallyhim/awesome-claude-code (53,872 ⭐) | A curated Claude Code resource. | A resource catalog; the showcase is a concrete implementation of configuration. |
The most useful comparison isn’t by popularity: the showcase stands out when you want an already-wired React/TypeScript project structure for Claude Code. When looking for a cross-agent portable methodology, obra/superpowers is more appropriate; when looking for a subagent library, the awesome-* collections cover that gap.
How to contribute
The repository does not document a formal contribution process: there’s no CONTRIBUTING.md, no wiki with a contribution guide, and has_discussions is false. The flow observed from the actual data (13 PRs received, 6 issues) is the GitHub standard: fork, create a branch, open a PR. Two important caveats: there’s no license, so contributing to an unlicensed repository is legally ambiguous, and the repo is a single-author template that hasn’t been updated since January 2026, so the window for a PR to be reviewed and merged is uncertain.
Use cases
- React/TypeScript/Node teams who want to “configure Claude Code once” can clone the structure and adapt it to their stack, so the agent generates code that already respects their conventions without repeating instructions every session.
- Code-quality owners with recurring PRs can enable
pr-claude-code-review.ymlso every PR goes through an automated review with feedback grouped by severity. - Teams with maintenance debt can chain the three scheduled workflows (monthly docs-sync, weekly quality, biweekly dependency-audit), with an estimated cost of ~$10–$50/month.
- Teams working with tickets (JIRA/Linear) can use
/ticket+ MCP servers, after replacing the example servers with real ones. - DevOps/CI engineers find a concrete reference for how to use
anthropics/claude-code-action@betawith--max-turnslimits and cost budgets. - Anyone maintaining internal agent instructions can start from
skill-rules.jsonas a model for deterministic domain-knowledge activation.
Resources
- Repository: https://github.com/ChrisWiles/claude-code-showcase
- Quick Start: https://github.com/ChrisWiles/claude-code-showcase#quick-start
- Official skills: https://github.com/ChrisWiles/claude-code-showcase/tree/main/.claude/skills
- Hooks configuration: https://github.com/ChrisWiles/claude-code-showcase/blob/main/.claude/settings.json
- GitHub Actions workflows: https://github.com/ChrisWiles/claude-code-showcase/tree/main/.github/workflows
- Gemini CLI port: https://github.com/joeangel/gemini-showcase
- Curated list that includes it: https://github.com/ithiria894/awesome-claude-code-workflows
- Dependent GitHub Action: https://github.com/anthropics/claude-code-action
- Originating Hacker News comment: https://news.ycombinator.com/item?id=46516157
- Notable issues: #20 · #1 · #6 · #13 · #15
Methodological note: this report combines the README and repository files, the GitHub API, the originating Hacker News thread, and public issues of ChrisWiles/claude-code-showcase, consulted on September 11, 2026. Figures change over time. The attribution of the HN comment to Christopher Wiles is inferred from the literal text match, the exact link, and the identical date; there is no explicit statement from the author linking the OldGreenYodaGPT and ChrisWiles handles.
Comments