From dd77177c722bb73acbac0f288cc76aaaf916e040 Mon Sep 17 00:00:00 2001 From: bastien Date: Wed, 15 Apr 2026 22:35:58 +0200 Subject: [PATCH] chore(release): update docs and changelog for v3.4.0 Bump version to 3.4.0. Changelog covers 9 new skills, 7 new agents, install.sh bootstrap, hooks, and plugins.lock additions. README and USAGE updated with new skill table, decision tree, and patterns. TODO items marked done. Co-Authored-By: Claude --- CHANGELOG.md | 33 +++++++++++++++- README.md | 104 ++++++++++++++++++++++++++++++++++++++------------- TODO.md | 6 +-- USAGE.md | 85 +++++++++++++++++++++++++++++++++-------- version.txt | 2 +- 5 files changed, 182 insertions(+), 48 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index df430e3..492c5cd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,38 @@ All notable changes to claude-config will be documented in this file. Format follows [Keep a Changelog](https://keepachangelog.com/). -## [Unreleased] +## [3.4.0] — 2026-04-15 + +### Added +- **9 new skills**: `/bugfix`, `/code-clean`, `/commit-change`, `/doc`, `/feat`, `/graphify`, `/hotfix`, `/seo`, `/skills-perso` +- **7 new agents**: `bugfixer.md`, `code-cleaner.md`, `commit-changer.md`, `doc-syncer.md`, `feater.md`, `hotfixer.md`, `seo-analyzer.md` +- `install.sh`: bootstrap script — installs Claude Code CLI, authenticates, sets up shell env vars, then runs link.sh + install-plugins.sh +- `hooks/statusline.sh`: Claude Code status line configuration hook +- `hooks/rtk-rewrite.sh`: RTK hook for code rewrites +- `plugins.lock.json`: ctx7, graphifyy, and emil-design-eng entries added +- `skills-perso`: lists personal (user-created) skills from `~/.claude/skills/` +- `.graphifyignore`: excludes gstack submodule and install logs from graphify indexing + +### Changed +- `Makefile`: `install` target now runs `install.sh` (bootstrap); new `plugin` target runs `install-plugins.sh` only +- `update-all.sh`: now also updates Claude CLI, ctx7, graphifyy, and marketplace plugins +- `install-plugins.sh`: added emil-design-eng skill download step; fixed skill-creator install to use `anthropics/skills` marketplace +- `skills/`: logic extracted from inline SKILL.md into standalone agent `.md` files — skills now delegate to agents +- `skills/commit-change/`: renamed from `git-smart-commit`; confirmation step removed +- `settings.json`: keys reordered for readability +- `CLAUDE.md`: added architecture decisions (no SPA for public sites, versioned APIs, security defaults), communication mode (radical honesty), graphify context navigation guidelines +- `README.md`: file tree, skill table, install section, plugins.lock section, Makefile targets, update-all description all updated for new skills/agents +- `USAGE.md`: command table expanded (9 → 18), decision tree restructured with lightweight skill routing +- `version.txt`: 3.3.0 → 3.4.0 + +### Removed +- `agents/readme-updater.md`: replaced by `agents/doc-syncer.md` (broader scope — all docs, not just README) +- `skills/readme/`: replaced by `skills/doc/` + +### Fixed +- `skills-perso`: YAML description parsing handles both inline and block formats; detects personal skills via agent reference; excludes framework/gstack skills from listing +- `install-plugins.sh`: skill-creator install corrected to use `anthropics/skills` marketplace +- GStack skill symlinks untracked from git — auto-created by `install-plugins.sh` ## [3.3.0] — 2026-04-08 diff --git a/README.md b/README.md index a8c9c8e..181b76f 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,7 @@ This repo is your personal Claude Code setup, versioned and reproducible across claude-config/ ├── CLAUDE.md # Global coding preferences (style, rules, workflow) ├── settings.json # Global permissions (100 deny / 18 ask / 57 allow rules) +├── install.sh # Bootstrap: Claude Code CLI + auth + shell env vars + link + plugins ├── install-plugins.sh # One-shot installer: prerequisites + all plugins (reads plugins.lock.json) ├── link.sh # Symlinks this repo into ~/.claude/ ├── doctor.sh # Setup diagnostic — checks symlinks, plugins, permissions, token budget @@ -25,29 +26,45 @@ claude-config/ ├── lib/ │ └── detect-plugins.sh # Shared plugin detection — sourced by all scripts ├── hooks/ -│ └── session-start.sh # Health check + toggle plugin status at session start +│ ├── session-start.sh # Health check + toggle plugin status at session start +│ ├── statusline.sh # Claude Code status line configuration +│ └── rtk-rewrite.sh # RTK hook for code rewrites ├── skills-external/ │ └── gstack/ # Git submodule — garrytan/gstack (symlinked to ~/.claude/skills/gstack) ├── .gitmodules # Submodule declaration ├── agents/ │ ├── analyzer.md # Factual codebase analysis (read-only) +│ ├── bugfixer.md # Structured bug fix with root cause investigation +│ ├── code-cleaner.md # Dead code removal, style/norm enforcement +│ ├── commit-changer.md # Smart commit grouping from staged/unstaged changes +│ ├── doc-syncer.md # Detect stale docs, audit, and patch +│ ├── feater.md # Small feature implementation (1-5 files) +│ ├── hotfixer.md # Quick fix for superficial bugs (max 2 files) │ ├── interviewer.md # Project questionnaire → PROJECT BRIEF │ ├── onboarder.md # Onboard existing project — CLAUDE.md, settings, optional GSD ROADMAP -│ ├── status-reporter.md # Consolidated project status — read-only snapshot │ ├── plugin-advisor.md # Plugin check: detect signals, apply compatibility matrix, block if needed -│ ├── readme-updater.md # Update README from git history + codebase │ ├── refactorer.md # Surgical refactoring with norm enforcement -│ └── scaffolder.md # Full project generation (CLAUDE.md, README, code) +│ ├── scaffolder.md # Full project generation (CLAUDE.md, README, code) +│ ├── seo-analyzer.md # Full SEO/GEO audit and fix +│ └── status-reporter.md # Consolidated project status — read-only snapshot ├── skills/ │ ├── analyze/ # /analyze — deep factual analysis +│ ├── bugfix/ # /bugfix — structured bug fix with root cause investigation +│ ├── code-clean/ # /code-clean — dead code removal, style enforcement +│ ├── commit-change/ # /commit-change — smart commit grouping +│ ├── doc/ # /doc — documentation audit and sync +│ ├── feat/ # /feat — small feature implementation (1-5 files) +│ ├── graphify/ # /graphify — codebase knowledge graph navigation │ ├── health/ # /health — run setup diagnostic +│ ├── hotfix/ # /hotfix — quick fix for superficial bugs │ ├── init-project/ # /init-project — full project initialization │ ├── onboard/ # /onboard — onboard existing project into claude-config -│ ├── status/ # /status — consolidated project snapshot │ ├── plugin-check/ # /plugin-check — check plugin config vs project needs -│ ├── readme/ # /readme — update README from current state │ ├── refactor/ # /refactor — improve code without changing behavior -│ └── ship-feature/ # /ship-feature — ship a feature end-to-end +│ ├── seo/ # /seo — full SEO/GEO audit and optimization +│ ├── ship-feature/ # /ship-feature — ship a feature end-to-end +│ ├── skills-perso/ # /skills-perso — list personal (user-created) skills +│ └── status/ # /status — consolidated project snapshot └── templates/ ├── project-CLAUDE.md # Template for per-project CLAUDE.md └── settings/ @@ -74,11 +91,11 @@ claude-config/ git clone --recurse-submodules git@github.com:youruser/claude-config.git cd claude-config -# 2. Symlink into ~/.claude/ -bash link.sh - -# 3. Install prerequisites + all plugins (detects OS, reads pinned versions from plugins.lock.json) -bash install-plugins.sh +# 2. Bootstrap (installs Claude Code CLI, authenticates, sets up shell env vars, then runs link.sh + install-plugins.sh) +bash install.sh +# Or step by step: +# bash link.sh # symlink into ~/.claude/ +# bash install-plugins.sh # prerequisites + all plugins # 4. Context7 CLI (optional — for fast-evolving libs like Next.js, React, Prisma) npm install -g ctx7 @@ -111,13 +128,22 @@ Install output is logged to `install-YYYYMMDD-HHMMSS.log` in the repo directory | Command | Description | |---|---| | `/analyze` | Deep factual analysis of code before any modification | -| `/refactor` | Improve code quality without changing behavior (strict norms) | -| `/readme` | Full README audit — diff vs codebase, mandatory stop, surgical updates | -| `/plugin-check` | Check active plugins vs project needs — recommend enable/disable | -| `/init-project` | Initialize a complete project from scratch (full orchestrator) | -| `/ship-feature` | Ship a feature end-to-end with validation gates (full orchestrator) | +| `/bugfix` | Structured bug fix with root cause investigation | +| `/code-clean` | Dead code removal, style/norm enforcement | +| `/commit-change` | Smart commit grouping from staged/unstaged changes | +| `/doc` | Documentation audit and sync — detect stale docs, patch | +| `/feat` | Small feature implementation (1-5 files, lightweight) | +| `/graphify` | Codebase knowledge graph — navigation for large-scope tasks | | `/health` | Run setup diagnostic — check symlinks, plugins, permissions, token budget | +| `/hotfix` | Quick fix for superficial bugs (typos, CSS, config — max 2 files) | +| `/init-project` | Initialize a complete project from scratch (full orchestrator) | | `/onboard` | Onboard an existing project — generate CLAUDE.md, settings, optional GSD v2 ROADMAP | +| `/plugin-check` | Check active plugins vs project needs — recommend enable/disable | +| `/refactor` | Improve code quality without changing behavior (strict norms) | +| `/seo` | Full SEO/GEO audit and optimization | +| `/ship-feature` | Ship a feature end-to-end with validation gates (full orchestrator) | +| `/skills-perso` | List personal (user-created) skills | +| `/status` | Consolidated project snapshot — plugins, git, GSD milestone | ### Superpowers skills (auto-invoked or explicit) @@ -272,9 +298,11 @@ cd mon-projet-existant/ ### Pattern D — Hotfix / modification ponctuelle ``` -# Pas de /init-project, pas de GSD -/analyze src/module-cible.py → rapport factuel sans solution -/ship-feature "corriger X" → brainstorm + plan + gate + impl + review +# Bug superficiel (typo, mauvais import, CSS cassé — max 2 fichiers, cause évidente) : +/hotfix "le bouton submit est invisible sur mobile" + +# Bug plus complexe (investigation root cause nécessaire) : +/bugfix "les notifications ne partent plus depuis mardi" ``` ### Pattern E — Refactoring ciblé @@ -283,6 +311,23 @@ cd mon-projet-existant/ /refactor src/legacy.py → corrections sans changement de comportement ``` +### Pattern F — Petite feature (1-5 fichiers) +``` +# Pas d'orchestration lourde, pas de brainstorming superpowers +/feat "ajouter un endpoint GET /api/v1/users/:id/stats" +# → planning léger, implémentation directe, tests +``` + +### Choisir entre /ship-feature, /feat, /hotfix et /bugfix + +| Critère | /ship-feature | /feat | /bugfix | /hotfix | +|---|---|---|---|---| +| Scope | Feature complète | 1-5 fichiers | Bug complexe | Bug superficiel | +| Orchestration | Superpowers pipeline | Léger | Investigation | Direct | +| Fichiers touchés | Illimité | ≤ 5 | Variable | ≤ 2 | +| Validation gate | Oui | Non | Non | Non | +| Code review | Auto (superpowers) | Non | Régression test | Non | + ### Choisir entre /ship-feature et gsd auto | Critère | /ship-feature | gsd auto | @@ -459,13 +504,16 @@ claude plugin install --scope user frontend-design@claude-code-plugins ### Version pinning -RTK, GSD v2, and ruflo versions are pinned in `plugins.lock.json`: +Non-marketplace tools are pinned in `plugins.lock.json`: ```json { - "rtk": { "source": "https://github.com/rtk-ai/rtk", "version": "v0.34.3" }, - "gsd": { "source": "npm:gsd-pi", "version": "2.64.0" }, - "ruflo": { "source": "npm:ruflo", "version": "3.5.58" } + "rtk": { "source": "https://github.com/rtk-ai/rtk", "version": "v0.34.3" }, + "gsd": { "source": "npm:gsd-pi", "version": "2.64.0" }, + "ruflo": { "source": "npm:ruflo", "version": "3.5.58" }, + "ctx7": { "source": "npm:ctx7", "version": "latest" }, + "graphifyy": { "source": "pypi:graphifyy", "managed_by": "pipx" }, + "emil-design-eng": { "source": "https://github.com/emilkowalski/skill", "managed_by": "curl" } } ``` @@ -565,8 +613,9 @@ cp "$CONF/templates/project-CLAUDE.md" CLAUDE.md ```bash # From the repo directory bash update-all.sh -# Pulls config, prompts before updating GStack (tracks main), updates RTK + GSD v2 (pinned), -# updates ruflo if installed, refreshes symlinks, runs doctor +# Updates Claude CLI, pulls config, prompts before updating GStack (tracks main), +# updates RTK + GSD v2 (pinned), updates ruflo if installed, updates ctx7 + graphifyy, +# refreshes marketplace plugins, refreshes symlinks, runs doctor ``` ### Manual updates @@ -685,7 +734,8 @@ bash doctor.sh # Unified commands via Makefile (from the repo directory) make doctor # diagnostic make update # pull + submodules + symlinks + doctor -make install # link.sh + install-plugins.sh +make install # bootstrap: Claude Code CLI + auth + symlinks + plugins +make plugin # install prerequisites + all plugins only make onboard # reminder to run /onboard in Claude Code make new-skill name=myskill # scaffold agent + skill files ``` diff --git a/TODO.md b/TODO.md index 293869f..113a62f 100644 --- a/TODO.md +++ b/TODO.md @@ -1,5 +1,5 @@ -faire skill / agent SEO + GEO +~~faire skill / agent SEO + GEO~~ ✓ done (skills/seo/ + agents/seo-analyzer.md) -faire skill / agent clean code +~~faire skill / agent clean code~~ ✓ done (skills/code-clean/ + agents/code-cleaner.md) -faire skill / agent do doc (CLAUDE.md, INSTALL.md, README.md, Docker files, Comments) +~~faire skill / agent do doc~~ ✓ done (skills/doc/ + agents/doc-syncer.md) diff --git a/USAGE.md b/USAGE.md index 27776b8..ec547ff 100644 --- a/USAGE.md +++ b/USAGE.md @@ -28,7 +28,16 @@ Tu veux... │ → /onboard │ ├─ Ajouter une feature à un projet existant ? -│ → /ship-feature "description" +│ ├─ Feature complète (multi-fichiers, orchestration) ? +│ │ → /ship-feature "description" +│ └─ Petite feature (1-5 fichiers, rapide) ? +│ → /feat "description" +│ +├─ Corriger un bug ? +│ ├─ Bug superficiel (typo, CSS, config, max 2 fichiers) ? +│ │ → /hotfix "description" +│ └─ Bug complexe (investigation root cause nécessaire) ? +│ → /bugfix "description" │ ├─ Reprendre après une pause / orienter la session ? │ → /status @@ -38,14 +47,20 @@ Tu veux... │ → (mode DEBUG si tu passes une erreur/stack trace) │ ├─ Améliorer la qualité sans changer le comportement ? -│ → /refactor src/module.py -│ ⚠️ Pour un refactoring profond (module entier) : -│ /analyze src/module/ ← rapport de violations d'abord -│ /refactor src/module/ ← corrections sur rapport -│ /analyze src/module/ ← vérification après (cycle complet) +│ ├─ Refactoring ciblé (un fichier/module) ? +│ │ → /refactor src/module.py +│ │ ⚠️ Pour un refactoring profond (module entier) : +│ │ /analyze src/module/ ← rapport de violations d'abord +│ │ /refactor src/module/ ← corrections sur rapport +│ │ /analyze src/module/ ← vérification après (cycle complet) +│ └─ Dead code, violations de style (codebase-wide) ? +│ → /code-clean │ -├─ Vérifier/mettre à jour le README ? -│ → /readme +├─ Docs périmées / vérifier la sync code↔docs ? +│ → /doc ← audit complet tous les fichiers .md +│ +├─ Optimiser le SEO/GEO ? +│ → /seo │ ├─ Vérifier si les plugins sont bien configurés ? │ → /plugin-check "description du projet" @@ -67,11 +82,19 @@ Tu veux... |---|---| | Tout nouveau | `/init-project` | | Code existant sans config | `/onboard` | -| Feature à ajouter | `/ship-feature` | +| Feature complète | `/ship-feature` | +| Petite feature (1-5 fichiers) | `/feat` | +| Bug superficiel (typo, CSS) | `/hotfix` | +| Bug complexe (root cause) | `/bugfix` | | Reprise de session | `/status` | | Debug / comprendre | `/analyze` | -| Nettoyage code | `/refactor` | -| Doc périmée | `/readme` | +| Nettoyage code ciblé | `/refactor` | +| Dead code / style codebase | `/code-clean` | +| Docs périmées | `/doc` | +| SEO/GEO audit | `/seo` | +| Commit structuré | `/commit-change` | +| Navigation codebase large | `/graphify` | +| Lister ses skills | `/skills-perso` | | Plugins OK ? | `/plugin-check` | | Rien ne marche | `/health` | @@ -83,13 +106,22 @@ Tu veux... |---|---|---| | `/init-project` | Nouveau projet from scratch | 12-13 steps, deux gates obligatoires | | `/ship-feature` | Feature sur projet existant | 8 steps, une gate | +| `/feat` | Petite feature (1-5 fichiers) | Léger, pas d'orchestration lourde | +| `/bugfix` | Bug avec investigation root cause | Hypothèses, diagnostic, fix minimal | +| `/hotfix` | Bug superficiel (typo, CSS, config) | Max 2 fichiers, cause évidente | | `/onboard` | Projet existant non géré par ce config | Génère CLAUDE.md + settings | | `/plugin-check` | Avant de démarrer tout travail | Aussi embarqué en STEP 0 des orchestrateurs | | `/analyze` | Comprendre du code avant de le modifier | Read-only, aucune solution proposée | | `/analyze` + erreur | Diagnostiquer un test/build qui échoue | Mode DEBUG : hypothèses ordonnées | | `/refactor` | Améliorer un fichier sans changer le comportement | Rapport de violations d'abord, modif ensuite | -| `/readme` | Après une série de features | AUDIT : compare README vs code réel | +| `/code-clean` | Dead code, violations de style | Audit + rapport, fixes après approbation | +| `/doc` | Docs périmées après des changements | Audit drift code↔docs, patch chirurgical | +| `/seo` | Audit SEO/GEO complet | Détecte framework, audite meta/OG/sitemap | +| `/commit-change` | Commits bien structurés | Groupe les changements par unité logique | +| `/graphify` | Navigation codebase large-scope | Knowledge graph, pour tâches multi-fichiers | +| `/skills-perso` | Lister ses skills personnels | Skills créés dans ~/.claude/skills/ | | `/health` | Quand quelque chose ne fonctionne pas | Lance doctor.sh | +| `/status` | Reprendre après une pause | Snapshot : plugins, git, GSD milestone | --- @@ -186,12 +218,14 @@ cd mon-projet-existant/ /ship-feature "prochaine feature" ``` -### Pattern D — Hotfix / modification chirurgicale · ~500-800t +### Pattern D — Hotfix / bugfix · ~200-800t ``` -# Pas de /init-project, pas de GSD, pas de plugin lourd -/analyze src/module-bugue.py # comprendre sans modifier -/ship-feature "corriger X" # pipeline complet mais ciblé +# Bug superficiel (typo, CSS, config, max 2 fichiers, cause évidente) : +/hotfix "le bouton submit est invisible sur mobile" # ~200t + +# Bug complexe (investigation root cause nécessaire) : +/bugfix "les notifications ne partent plus depuis mardi" # ~500-800t ``` ### Pattern E — Debug d'erreur de build/test · ~600-900t @@ -208,6 +242,25 @@ cd mon-projet-existant/ /ship-feature "corriger le test_create_order — cause: champ quantity manquant" ``` +### Pattern F — Petite feature (1-5 fichiers) · ~300-600t + +``` +# Feature simple, pas d'orchestration lourde +/feat "ajouter un endpoint GET /api/v1/users/:id/stats" +# → planning léger, implémentation directe, tests +# Pas de brainstorming superpowers, pas de gate de validation +``` + +**Choisir entre /ship-feature et /feat :** + +| Critère | `/ship-feature` | `/feat` | +|---|---|---| +| Scope | Feature complète, multi-fichiers | 1-5 fichiers max | +| Orchestration | Pipeline superpowers complet | Planning léger, direct | +| Gate de validation | Oui | Non | +| Code review auto | Oui (superpowers) | Non | +| Tokens estimés | ~1500-3000t | ~300-600t | + --- ## Exemples complets diff --git a/version.txt b/version.txt index 15a2799..1809198 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -3.3.0 +3.4.0