fix: install skills in flat structure for auto-discovery#18
Merged
Conversation
added 4 commits
November 3, 2025 22:54
Skills must be directly under ~/.claude/skills/ for Claude Code to discover them. The nested devflow/ subdirectory was preventing skill auto-activation. Changes: - Install skills to ~/.claude/skills/ (flat) instead of ~/.claude/skills/devflow/ - Add migration cleanup for old devflow/ subdirectory - Preserve user's personal skills during cleanup - Keep commands and agents in devflow/ subdirectories (working correctly) Result: - Skills are now discoverable: ~/.claude/skills/pattern-check/SKILL.md - Old structure cleaned automatically during upgrade - Commands still work: /devflow:code-review, /devflow:commit, etc. Fixes auto-activation for all 7 skills: - pattern-check, test-design, code-smell - research, debug, input-validation, error-handling
Previously uninstall tried to remove ~/.claude/skills/devflow/ which no longer exists since skills are now in flat structure. Changes: - Remove individual skill directories instead of devflow/ subdirectory - Remove all 7 skills: pattern-check, test-design, code-smell, research, debug, input-validation, error-handling - Also clean up old devflow/ subdirectory if it exists (migration) - Show count of removed skills in output Result: - Uninstall now properly removes all skills - Install/uninstall cycle works correctly - Clean migration from old nested to new flat structure
Skills are now installed flat for Claude Code auto-discovery. Updated documentation to reflect the correct structure. Changes: - README.md: Update installation path descriptions - CLAUDE.md: Update file structure and installation paths - Add note explaining why skills use flat structure Before: ~/.claude/skills/devflow/pattern-check/ After: ~/.claude/skills/pattern-check/
Users don't need to know about flat structure - that's an internal implementation detail. Removed '(flat structure for auto-discovery)' comments from README as they add confusion without user value.
dean0x
pushed a commit
that referenced
this pull request
Mar 14, 2026
Batch 1 — Mechanical fixes: - Fix duplicate step 5→6 in 4 explorer prompts (implement-teams.md) - Fix fractional 2.5→3 renumbering in 4 reviewer prompts (code-review-teams.md) - Fix fractional 1.5→2 renumbering in reviewer.md responsibilities - Update stale counts: 24→31 skills, 8→17 plugins (file-organization.md) - Add missing ambient-prompt.sh to hooks listing (file-organization.md) Batch 2 — DRY extraction via knowledge-persistence skill: - Create shared/skills/knowledge-persistence/SKILL.md with canonical procedure (ADR/PF formats, lock protocol, capacity cap, dedup, TL;DR update) - Replace 8 inline extraction procedures with skill references in implement, code-review, debug, resolve (base + teams variants) - Register skill in 4 plugin manifests (plugin.json + plugins.ts) Batch 3 — Hook improvements: - Collapse head+sed+grep into single sed -n for TL;DR extraction - Guard section joins to prevent leading newlines when Section 1 skipped Batch 4 — Quick fixes: - Add TL;DR-only rationale comment to skimmer.md step 6 - Log createMemoryDir errors in verbose mode instead of silent catch - Add 3 hook integration tests (TL;DR injection, no leading newlines, no knowledge section when files absent) Issues dismissed: #9 (TL;DR sanitization — trust model), #10 (integrity verification — instruction-enforced), #17 (mkdir failure test — low value), #18 (phase ordering cosmetic), #19 (intentional scope exclusion)
6 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Skills were not auto-activating because they were installed in a nested directory structure that Claude Code couldn't discover. This PR fixes the installation to use a flat structure.
Problem
~/.claude/skills/devflow/pattern-check/SKILL.md~/.claude/skills/pattern-check/SKILL.mdCommands and agents support subdirectory namespacing, but skills require flat structure for auto-discovery.
Changes
Installation (
init.ts)~/.claude/skills/instead of~/.claude/skills/devflow/Uninstallation (
uninstall.ts)Documentation
Testing
<available_skills>Impact
Before this fix:
After this fix:
🎯 This unblocks the core value proposition of DevFlow's quality enforcement system.