Skip to content

feat: Rename 'learn' to 'extract-skills' for clarity #123

@jeremyeder

Description

@jeremyeder

Rename 'learn' Command to 'extract-skills'

Summary

The agentready learn command has been renamed to agentready extract-skills to better communicate its purpose: extracting successful patterns from high-scoring repositories as reusable Claude Code skills.

Motivation

The original name "learn" was ambiguous:

  • ❌ Suggests the tool is "learning" (passive, unclear)
  • ❌ Doesn't convey what the user gets (output-focused naming)
  • ❌ Not discoverable (what does "learn" do?)

The new name "extract-skills" is clear:

  • ✅ Action-oriented (extract = verb, skills = noun)
  • ✅ Describes the output (generates SKILL.md files)
  • ✅ Discoverable (agentready --help shows extract-skills)

Changes

Breaking Change

Before:

agentready learn . --output-format skill_md

After:

agentready extract-skills . --output-format skill_md

Files Modified

  • src/agentready/cli/learn.pysrc/agentready/cli/extract_skills.py
  • @click.command()@click.command("extract-skills")
  • Function def learn(...)def extract_skills(...)
  • tests/unit/test_cli_learn.pytests/unit/test_cli_extract_skills.py
  • Updated CLI registration in src/agentready/cli/main.py
  • Updated documentation in CLAUDE.md and specs/llm-pattern-extraction.md

Migration Guide

Users with existing scripts or CI/CD pipelines must update:

- agentready learn . --enable-llm
+ agentready extract-skills . --enable-llm

- agentready learn . --output-format all
+ agentready extract-skills . --output-format all

All flags and options remain identical - only the command name changed.

Implementation

Completed in commit: 80938e1

Checklist:

  • Rename CLI file
  • Update command decorator
  • Update CLI registration
  • Rename test file
  • Update test cases
  • Update documentation
  • Update CHANGELOG.md (next release)
  • Add deprecation notice in release notes

Related

Rollout

This is a breaking change and should be included in the next major or minor release with prominent documentation in:

  1. CHANGELOG.md - Breaking Changes section
  2. Release Notes - Migration guide
  3. README.md - Update all examples
  4. Documentation - Update user guide

Consider adding a deprecation warning in next patch release before full rename.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions