Go to file
bastien feed3dbae9 feat(validate): add W3C HTML/CSS validity + WCAG a11y audit skill
New /validate skill runs a narrow-scope web standards audit covering
W3C HTML validity (validator.nu API in FULL, html-validate / vnu.jar
in LOCAL), W3C CSS validity (jigsaw.w3.org/css-validator in FULL,
stylelint / css-tree in LOCAL), and WCAG 2.1 accessibility (pa11y,
@axe-core/cli, WAVE API, or static checklist fallback).

Dedicated validator-analyzer agent with a strict IN/OUT scope filter
so the report stays focused on conformance — no meta/OG/JSON-LD/
sitemap/CSP/cookie/CWV noise. Those remain owned by /seo, /geo, and
/harden respectively.

LOCAL mode degrades gracefully: tries local npm tools first, falls
back to static analysis if none present (same 12-point a11y checklist
as /onboard a11y dispatch). Never fails hard.

Framework awareness: validates built output (dist/, _site/, build/,
out/) for SPA/JS frameworks, not JSX/TSX source. Warns if no build
dir found.

Fix mode (--fix) produces a conservative auto-fix bundle: missing
lang attr, alt="" on decorative images, unclosed void tags, duplicate
IDs, unambiguous heading level skips. Content decisions (form labels,
color contrast, landmark restructure, alt text on content images)
always go to User actions, never auto-applied.

Flags: --local, --full, --fix, --no-external.

Routing updated in CLAUDE.md. /harden and /seo cross-refs narrowed
to redirect W3C / WCAG concerns to /validate (was previously routed
to /onboard a11y dispatch, which only runs at setup).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-22 22:39:30 +02:00
agents feat(validate): add W3C HTML/CSS validity + WCAG a11y audit skill 2026-04-22 22:39:30 +02:00
hooks fix(shell): resolve all shellcheck warnings across scripts 2026-04-16 01:08:23 +02:00
lib feat(archetypes): add project archetype library + detection algorithm 2026-04-21 22:37:07 +02:00
skills feat(validate): add W3C HTML/CSS validity + WCAG a11y audit skill 2026-04-22 22:39:30 +02:00
skills-external chore: update gstack submodule to v0.17.0 2026-04-16 01:08:28 +02:00
tasks feat(validate): add W3C HTML/CSS validity + WCAG a11y audit skill 2026-04-22 22:39:30 +02:00
templates final version seems 2026-04-08 13:46:45 +02:00
.env.example feat(toggle-external): manage Magic MCP (21st-dev) — installed disabled by default 2026-04-21 20:28:03 +02:00
.gitignore feat(toggle-external): manage Magic MCP (21st-dev) — installed disabled by default 2026-04-21 20:28:03 +02:00
.gitmodules added git management 2026-04-03 03:46:34 +02:00
.graphifyignore add .graphifyignore to exclude gstack submodule and install logs 2026-04-13 15:01:25 +02:00
CHANGELOG.md chore(release): update docs and changelog for v3.4.0 2026-04-15 22:35:58 +02:00
CLAUDE.md feat(validate): add W3C HTML/CSS validity + WCAG a11y audit skill 2026-04-22 22:39:30 +02:00
doctor.sh fix(shell): resolve all shellcheck warnings across scripts 2026-04-16 01:08:23 +02:00
install-plugins.sh feat(toggle-external): manage Magic MCP (21st-dev) — installed disabled by default 2026-04-21 20:28:03 +02:00
install.sh track install.sh bootstrap script 2026-04-13 14:08:48 +02:00
link.sh feat(toggle): enable/disable non-marketplace tools via lib/toggle-external.sh 2026-04-21 13:50:40 +02:00
Makefile refactor Makefile: install→bootstrap, add plugin target 2026-04-13 14:08:36 +02:00
plugins.lock.json chore(plugins): unpin rtk to latest 2026-04-17 05:16:40 +02:00
README.md docs(readme): add Context7 account setup and link 2026-04-16 00:28:34 +02:00
settings.json suppressed model 2026-04-21 16:59:16 +02:00
TODO.md added some info into claude.md and settings 2026-04-21 15:22:05 +02:00
update-all.sh feat(install): gstack disabled by default — opt-in via toggle-external 2026-04-21 15:30:52 +02:00
USAGE.md docs(onboard): document new pipeline (archetype detection + full audit) 2026-04-21 22:37:44 +02:00
version.txt chore(release): update docs and changelog for v3.4.0 2026-04-15 22:35:58 +02:00

claude-config

Global Claude Code configuration — agents, skills, plugins, and project templates.

Guide d'utilisation complet : voir USAGE.md — workflows typiques, exemples par type de projet, arbre de décision "quel skill utiliser ?".


Overview

This repo is your personal Claude Code setup, versioned and reproducible across machines.

claude-config/
├── CLAUDE.md              # Global coding preferences (style, rules, workflow)
├── settings.json          # Global permissions (deny / ask / allow rules)
├── install.sh             # Bootstrap: Claude Code CLI + auth + shell env vars + link + plugins
├── install-plugins.sh     # One-shot installer: prerequisites + all plugins
├── link.sh                # Symlinks this repo into ~/.claude/
├── doctor.sh              # Setup diagnostic
├── update-all.sh          # One-command update for all components
├── Makefile               # Unified entry point: make install / doctor / update
├── plugins.lock.json      # Version pinning for non-marketplace dependencies
├── hooks/                 # Session start, statusline, RTK rewrite
├── agents/                # Execution units called by skills (never invoked directly)
├── skills/                # Entry points invoked via /skill-name
├── skills-external/       # Git submodules (gstack)
├── templates/             # Per-project config templates (CLAUDE.md, settings, .claudeignore)
└── lib/                   # Shared shell functions (plugin detection)

Architecture principle:

  • skills/ = entry points you invoke via /skill-name
  • agents/ = execution units called by skills (never invoked directly by user)
  • templates/ = symlinked to ~/.claude/templates/ — copy into projects via /onboard or manually
  • Graphify builds a knowledge graph of any codebase (/graphify query), producing a navigable wiki in graphify-out/wiki/. This map helps Claude understand project structure, find relevant code faster, and reason across files. Essential for large-scope tasks (multi-file features, complex bugs, architectural changes). Small tasks should skip it and read files directly.

Fresh install (new machine)

# 1. Clone with submodules
git clone --recurse-submodules git@github.com:youruser/claude-config.git
cd claude-config

# 2. Create a free Context7 account at https://context7.com/
#    Copy your API key and set it:
export CONTEXT7_API_KEY="your-key-here"

# 3. Bootstrap (CLI + auth + symlinks + plugins)
bash install.sh

# 4. Verify setup
bash doctor.sh

# 5. Restart Claude Code — plugins load automatically

All scripts use their own location to find the repo — run them from anywhere. Install output is logged to install-YYYYMMDD-HHMMSS.log.


Installed components

Component Type Description Docs
Superpowers Plugin (required) Brainstorming, planning, subagent-driven dev, code review, branch finishing. Required by /init-project and /ship-feature. obra/superpowers-marketplace
GStack Plugin (toggle) Full-product workflow: UI + design + deploy + browser QA. Skip for backend/CLI projects. garrytan/gstack
GSD v2 External CLI Multi-session orchestration: crash recovery, cost tracking, parallel workers, context-fresh execution. gsd-build/gsd-2
RTK Plugin (always on) Code rewrite hook. Zero passive cost. rtk-ai/rtk
security-guidance Plugin (always on) Security hook. Zero passive cost. anthropics/claude-code
ui-ux-pro-max Plugin (toggle) Design system, color/typography choices. Enable for design-heavy projects. nextlevelbuilder/ui-ux-pro-max-skill
Context7 Plugin (toggle) Fast-evolving libs doc lookup (Next.js, React, Prisma...). Requires a free account + API key (see install). context7.com
pr-review-toolkit Plugin (toggle) Multi-agent PR review. anthropics/claude-code
Graphify Python CLI Codebase → knowledge graph → navigable wiki. Helps Claude map and search projects efficiently. pypi: graphifyy

Versions are pinned in plugins.lock.json. To update: edit the file, then re-run install-plugins.sh.


Slash commands

Command Description
/init-project Initialize a complete project from scratch (full orchestrator, 12+ steps)
/ship-feature Ship a feature end-to-end with validation gates (full orchestrator)
/onboard Onboard an existing project — generate CLAUDE.md, settings, .claudeignore
/feat Small feature implementation (1-5 files, lightweight)
/bugfix Structured bug fix with root cause investigation
/hotfix Quick fix for superficial bugs (typos, CSS, config — max 2 files)
/analyze Deep factual analysis of code before any modification
/refactor Improve code quality without changing behavior
/code-clean Dead code removal, style/norm enforcement
/doc Documentation audit and sync — detect stale docs, patch
/seo Full SEO/GEO audit and optimization
/commit-change Smart commit grouping from staged/unstaged changes
/graphify Codebase knowledge graph — navigation for large-scope tasks
/plugin-check Check active plugins vs project needs — recommend enable/disable
/health Run setup diagnostic
/status Consolidated project snapshot — plugins, git, GSD milestone
/skills-perso List personal (user-created) skills

Three core workflows

From scratch — /init-project

/plugin-check "description"     # configure plugins (also runs as STEP 0)
/init-project "description"     # interview → scaffold → implement → review
/ship-feature "next feature"    # ship feature by feature

Existing project — /onboard

cd my-existing-project/
/onboard                        # generates CLAUDE.md + settings + .claudeignore
/plugin-check "project type"
/ship-feature "next feature"

New feature — /ship-feature

/ship-feature "feature description"
# → STEP 0: plugin check
# → STEP 1-2: brainstorm + plan (superpowers)
# → STEP 3: validation gate — user approval required
# → STEP 4-7: implement (TDD) → review → finish
# → STEP 8: sync README

For small features (1-5 files), use /feat instead — no orchestration overhead.


Settings and permissions

Settings follow a hierarchy (highest priority first):

managed-settings.json   → enterprise (cannot be overridden)
CLI flags               → session only
.claude/settings.local  → personal machine overrides (gitignored)
.claude/settings.json   → project rules (committed)
~/.claude/settings.json → global user rules (this repo)

DENY always wins over ALLOW at any level. .claudeignore applies independently.

Templates for per-project settings are in templates/settings/. Copy them with /onboard or manually:

CONF="$(dirname "$(readlink ~/.claude/CLAUDE.md)")"
cp "$CONF/templates/settings/settings.json" .claude/settings.json
cp "$CONF/templates/settings/.claudeignore" .claudeignore

Diagnostic and maintenance

# Terminal
bash doctor.sh              # full diagnostic (symlinks, plugins, permissions, token budget)
bash update-all.sh          # update all components (CLI, plugins, submodules, symlinks)

# Claude Code
/health                     # runs doctor.sh
/status                     # project snapshot (plugins, git, GSD milestone)
/plugin-check "description" # audit plugin config vs project needs

# Makefile (from repo directory)
make install                # bootstrap: CLI + auth + symlinks + plugins
make doctor                 # diagnostic
make update                 # pull + submodules + symlinks + doctor
make plugin                 # install plugins only
make new-skill name=myskill # scaffold agent + skill files

doctor.sh checks: symlinks, GStack submodule, prerequisites (git, Node, Cargo, Python, Claude Code), plugins, permissions, token budget, config consistency.