Skip to content

Refactor CLI commands into separate classes#20

Merged
pixelate merged 1 commit into
mainfrom
claude/refactor-commands-into-classes
Mar 15, 2026
Merged

Refactor CLI commands into separate classes#20
pixelate merged 1 commit into
mainfrom
claude/refactor-commands-into-classes

Conversation

@pixelate
Copy link
Copy Markdown
Owner

@pixelate pixelate commented Mar 14, 2026

Summary

  • Each command (`sync`, `analyze`, `set`, `help`) is now its own class under `lib/wavesync/commands/`
  • `Command` base class provides a `parse_options` helper that wires in `--config`, yields for command-specific options, and returns parsed options + loaded config
  • Command metadata (`name`, `description`, `options`, `subcommands`) is declared as class-level attributes on each command
  • `Help` generates its output from command metadata rather than hardcoded strings
  • `CLI` is now a thin dispatcher

@pixelate pixelate force-pushed the claude/refactor-commands-into-classes branch 4 times, most recently from 49473fb to 063e451 Compare March 15, 2026 20:02
@pixelate pixelate changed the base branch from claude/add-wavesync-help-command-VphWO to main March 15, 2026 20:02
@pixelate pixelate force-pushed the claude/refactor-commands-into-classes branch from 063e451 to e0b6538 Compare March 15, 2026 20:07
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@pixelate pixelate force-pushed the claude/refactor-commands-into-classes branch from e0b6538 to 37ed24f Compare March 15, 2026 20:13
@pixelate pixelate merged commit af3de3f into main Mar 15, 2026
2 checks passed
@pixelate pixelate deleted the claude/refactor-commands-into-classes branch March 15, 2026 20:14
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.

1 participant