Remove batch-implement and implement commands from iw-cli core (#324) #361

Merged
mprihoda merged 1 commit from IW-324-remove-ai-commands into main 2026-04-17 14:55:41 +00:00
mprihoda commented 2026-04-17 14:26:01 +00:00 (Migrated from github.com)

Closes #324.

Summary

Finishes the AI-specific command extraction started in #323 / #331. The hook extraction for start, doctor, and phase-merge landed earlier (kanon now ships claude-session.hook-start.scala, claude-fix.hook-doctor.scala, claude-recovery.hook-phase-merge.scala), but batch-implement.scala and implement.scala were never removed from core.

  • Delete commands/batch-implement.scala and commands/implement.scala
  • Delete test/batch-implement.bats and test/implement.bats
  • Update the build-iw-cli-skills SKILL.md command categorization
  • Add a ## Plugins section to README documenting that AI-specific commands come from the kanon plugin

What stays in core

Pure domain helpers consumed by the kanon plugin remain in core/model/:

  • BatchImplement.scala (decision logic)
  • WorkflowStatePaths.scala (workflow state path partitioning)

And the GitHubClient.fetchCheckStatuses fix from #360 stays — it benefits phase-merge directly.

Verification

  • ./iw --list shows no core commands invoking claude directly (kanon plugin commands still reference it, which is correct)
  • grep -n claude commands/*.scala returns no matches
  • start, doctor, phase-merge still work (no changes)
  • All remaining bats tests pass locally (plugin-commands-*.bats)
  • All 33 remaining commands compile with -Werror
  • README documents plugins as the source of AI-specific commands

🤖 Generated with Claude Code

Closes #324. ## Summary Finishes the AI-specific command extraction started in #323 / #331. The hook extraction for `start`, `doctor`, and `phase-merge` landed earlier (kanon now ships `claude-session.hook-start.scala`, `claude-fix.hook-doctor.scala`, `claude-recovery.hook-phase-merge.scala`), but `batch-implement.scala` and `implement.scala` were never removed from core. - Delete `commands/batch-implement.scala` and `commands/implement.scala` - Delete `test/batch-implement.bats` and `test/implement.bats` - Update the `build-iw-cli-skills` SKILL.md command categorization - Add a `## Plugins` section to README documenting that AI-specific commands come from the kanon plugin ## What stays in core Pure domain helpers consumed by the kanon plugin remain in `core/model/`: - `BatchImplement.scala` (decision logic) - `WorkflowStatePaths.scala` (workflow state path partitioning) And the `GitHubClient.fetchCheckStatuses` fix from #360 stays — it benefits `phase-merge` directly. ## Verification - [x] `./iw --list` shows no core commands invoking `claude` directly (kanon plugin commands still reference it, which is correct) - [x] `grep -n claude commands/*.scala` returns no matches - [x] `start`, `doctor`, `phase-merge` still work (no changes) - [x] All remaining bats tests pass locally (`plugin-commands-*.bats`) - [x] All 33 remaining commands compile with `-Werror` - [x] README documents plugins as the source of AI-specific commands 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.
No description provided.