Skip to content

Deduplicate skills and commands — route everything through /do#39

Merged
Jason-Adam merged 3 commits intomainfrom
jasonadam.20260330.dedupe-skills-commands
Mar 30, 2026
Merged

Deduplicate skills and commands — route everything through /do#39
Jason-Adam merged 3 commits intomainfrom
jasonadam.20260330.dedupe-skills-commands

Conversation

@Jason-Adam
Copy link
Copy Markdown
Owner

Summary

  • Every skill+command pair showed up twice in the slash command menu (e.g. /gc and /autodidact-gc). This removes all 15 redundant command wrappers, keeping only /do as the single user-facing entry point that routes to autodidact-* skills via the cost-ascending router.
  • Creates proper skills for forget and learn-status (previously command-only with no skill counterpart).
  • Renames learn_statuslearn-status for naming consistency with other kebab-case skills.

Changes

install.py

  • COMMAND_FILES reduced to ["do.md"]
  • Added learn-status and forget to SKILL_DIRS
  • Added _LEGACY_COMMANDS list for cleanup of old symlinks during install/uninstall

src/router.py

  • learn_statuslearn-status everywhere
  • Added learn-status and forget to _AUTODIDACT_SKILLS (get autodidact- prefix)
  • Merged review keyword scores into polishreview now routes directly to autodidact-polish
  • Moved learn.?status pattern before learn to prevent greedy matching

New skills

  • skills/forget/skill.md — 5-section skill for decaying/removing learnings
  • skills/learn-status/skill.md — 5-section skill for knowledge inventory dashboard

skills/learn/skill.md — Added mine subcommand section (was only in the removed command wrapper)

skills/do/skill.md — Updated Tier 3 classification to list all skills with autodidact- prefix (no more command-only exceptions)

Test Plan

  • All 458 tests pass
  • All 61 router tests pass with updated assertions
  • ruff check and ruff format clean
  • mypy passes
  • Run ./install and verify only /do appears in command menu (no duplicates)
  • Verify /do gc, /do review, /do forget, /do learn-status all route correctly

🤖 Generated with Claude Code

Every skill+command pair was showing up twice in the slash command menu
(e.g. /gc and /autodidact-gc). Remove all commands except /do, which
serves as the single user-facing entry point and routes to skills via
the cost-ascending router.

- Remove 15 command wrappers from COMMAND_FILES, keep only do.md
- Add legacy cleanup to install/uninstall for old command symlinks
- Create skills for forget and learn-status (were command-only)
- Rename learn_status → learn-status for naming consistency
- Merge review keyword routing into polish (review was an alias)
- Move learn-status pattern before learn to prevent greedy matching
- Add mine subcommand docs to learn skill (was only in command)
- Update all router tests for new skill names

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings March 30, 2026 15:43
@Jason-Adam Jason-Adam self-assigned this Mar 30, 2026
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR removes redundant slash-command wrappers so /do is the single user-facing entry point, and updates routing/skills to support forget and learn-status as first-class skills (including renaming learn_statuslearn-status and routing reviewpolish).

Changes:

  • Deduplicates command entry points by installing only do.md and cleaning up legacy command symlinks.
  • Updates router patterns/keyword scoring to use learn-status, route review to polish, and qualify forget/learn-status with autodidact-.
  • Adds new skill markdown for forget and learn-status, and extends learn with a mine subcommand section.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
install.py Installs only /do and removes legacy command symlinks on install/uninstall.
src/router.py Renames learn_statuslearn-status, routes reviewpolish, and qualifies new skills.
tests/test_router.py Updates assertions for new skill names and review→polish routing.
skills/do/skill.md Updates Tier 3 guidance to list fully-qualified autodidact skills (including new ones).
skills/learn/skill.md Adds documentation for the mine subcommand workflow.
skills/learn-status/skill.md Adds the new knowledge-inventory skill protocol.
skills/forget/skill.md Adds the new forget/decay skill protocol.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Jason-Adam and others added 2 commits March 30, 2026 16:50
- Add polish.md to _LEGACY_COMMANDS (was missing, would leave orphan)
- Tighten learn-status regex from .? to [-_\s]? to reject learnXstatus
- Remove stale review alias mention from _qualify_skill docstring
- Remove duplicate comment in _patch_settings

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…on test

- Rename test_review_routes_to_review → test_review_routes_to_polish
- Rename test_forget_command_only → test_forget_routes_to_forget_skill
- Drop \s from learn-status regex so "learn status codes" routes to learn
- Add regression test for learn vs learn-status ambiguity
- Add concrete decay/delete commands to forget skill protocol

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@Jason-Adam Jason-Adam merged commit 00660d1 into main Mar 30, 2026
3 checks passed
@Jason-Adam Jason-Adam deleted the jasonadam.20260330.dedupe-skills-commands branch March 30, 2026 15:56
Jason-Adam added a commit that referenced this pull request Mar 31, 2026
Commit #39 removed all commands except /do from the install script but
left 16 orphan command .md files in the repo. This cleans them up and
updates every doc to reflect the skill-based architecture.

- Delete 16 dead command files from commands/ (only do.md remains)
- Rewrite docs/commands.md as "Skill Reference" with /do routing examples
- Add missing gc and create-pr sections to skill reference
- Fix broken README anchor links to gc and create-pr
- Update all docs to use /do prefix in examples (loop.md, planning.md)
- Correct stale counts: hooks 8->9, skills 14->16, commands 17->1
- Replace ASCII architecture diagram with mermaid in README
- Update test count 392->460

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Jason-Adam added a commit that referenced this pull request Mar 31, 2026
* Remove dead command files and fix stale docs after skill consolidation

Commit #39 removed all commands except /do from the install script but
left 16 orphan command .md files in the repo. This cleans them up and
updates every doc to reflect the skill-based architecture.

- Delete 16 dead command files from commands/ (only do.md remains)
- Rewrite docs/commands.md as "Skill Reference" with /do routing examples
- Add missing gc and create-pr sections to skill reference
- Fix broken README anchor links to gc and create-pr
- Update all docs to use /do prefix in examples (loop.md, planning.md)
- Correct stale counts: hooks 8->9, skills 14->16, commands 17->1
- Replace ASCII architecture diagram with mermaid in README
- Update test count 392->460

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Move loop box below connected skills in mermaid diagram

Eliminates crisscrossing lines by placing the loop node beneath
run, campaign, and fleet instead of beside the router.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Address PR review comments: mermaid IDs and skill invocation docs

- Use underscore IDs for hyphenated mermaid nodes to fix rendering
- Clarify that only /do is installed, no direct /skill-name commands

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants