From 3ef1b2df3f62a7a11319569ca4848920f4cb1723 Mon Sep 17 00:00:00 2001 From: Daniel McCoy Stephenson Date: Sun, 26 Jul 2026 19:51:34 -0600 Subject: [PATCH] Make my-claude-skills catalog recording optional Step 7 previously assumed every user maintains a ~/my-claude-skills catalog repo and would hard-fail (cd into a nonexistent directory) for anyone who doesn't. Check for its existence first and skip silently when absent -- it's a personal convenience convention, not required for the generated skill to work. --- README.md | 4 ++-- create-dev-loop.md | 14 +++++++++++--- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 2d363dc..5582d80 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ Running `/create-dev-loop` in any repo runs seven Steps (mapped 1:1 to Steps 1 4. **Fill in placeholders** — substitutes every `{{PLACEHOLDER}}` and `{{#if FLAG}}` token from Step 2's findings, using the Step 4 substitution table as the contract 5. **Register** it as a slash command at `~/.claude/commands/-dev-loop.md` 6. **Create** a private GitHub repo (`-dev-loop`) to serve as the issue tracker for self-audit findings, and seed it with the five gap-issue labels Phase 9 files against (skipped in update mode) -7. **Record** the skill in `~/my-claude-skills/README.md` for discoverability (skipped in update mode) +7. **Record** the skill in `~/my-claude-skills/README.md` for discoverability, if that optional personal catalog repo exists (skipped in update mode, and skipped silently if the catalog isn't present) The generated skill drives a 10-phase loop: triage → work selection → implementation → PR → review → address comments → doc check → merge → self-audit → repeat. @@ -41,7 +41,7 @@ The generated skill drives a 10-phase loop: triage → work selection → implem Run this from inside any git repository. If a skill already exists for the repo, you'll be asked to choose: -- **update** *(default)* — re-derive the skill from the current template and current repo state, then show a diff before overwriting. Use this to pull in template improvements without re-creating the GitHub repo or `my-claude-skills` entry. Aborts if the local skill directory has uncommitted changes. +- **update** *(default)* — re-derive the skill from the current template and current repo state, then show a diff before overwriting. Use this to pull in template improvements without re-creating the GitHub repo or catalog entry. Aborts if the local skill directory has uncommitted changes. - **overwrite** — full regeneration, idempotently re-asserting the repo and registry entry. - **cancel** — exit without changes. diff --git a/create-dev-loop.md b/create-dev-loop.md index 74c9d1d..d503cdc 100644 --- a/create-dev-loop.md +++ b/create-dev-loop.md @@ -655,11 +655,19 @@ done --- -### 7 — Record the skill in my-claude-skills +### 7 — Record the skill in a personal catalog (optional) -**Skip this step if `MODE=update`** — the entry already exists from the initial generation. (Run only when `MODE=fresh` or `MODE=overwrite`.) +**Skip this step if `MODE=update`** — the entry already exists from the initial generation, if one was made. (Run only when `MODE=fresh` or `MODE=overwrite`.) -Open `~/my-claude-skills/README.md` and append a new row to the skills table using the GitHub repo created in Step 6 (`OWNER=$(gh api user -q .login)`, same as Step 6): +`~/my-claude-skills` is an optional personal catalog convention, not something every user has. Check first: + +```bash +[ -d ~/my-claude-skills/.git ] && echo present || echo absent +``` + +**If absent**, skip this step silently — it is not required for the generated skill to work (Step 5 already registered the slash command). Do not create the directory or repo on the user's behalf. + +**If present**, open `~/my-claude-skills/README.md` and append a new row to the skills table using the GitHub repo created in Step 6 (`OWNER=$(gh api user -q .login)`, same as Step 6): ``` | -dev-loop | `/-dev-loop` | [$OWNER/-dev-loop](https://github.com/$OWNER/-dev-loop) | Autonomous dev loop for {{PROJECT_NAME}} |