Skip to content

docs: ADR-013 plugin system + ADR-014 multi-CLI provider adapter - #22

Merged
aterrylu merged 1 commit into
mainfrom
terry/adr-014-multi-cli
Mar 11, 2026
Merged

docs: ADR-013 plugin system + ADR-014 multi-CLI provider adapter#22
aterrylu merged 1 commit into
mainfrom
terry/adr-014-multi-cli

Conversation

@aterrylu

Copy link
Copy Markdown
Owner

Summary

  • ADR-013: Modular plugin system with VSCode-style status bar — static registry, self-contained plugins
  • ADR-014: Multi-CLI provider adapter pattern — CLIProvider interface for Claude Code, Gemini CLI, Codex CLI with phased migration

Context

Documents the plugin system architecture (already implemented in PR #21) and the planned multi-CLI provider system (future implementation).

🤖 Generated with Claude Code

ADR-013: Modular plugin system with VSCode-style status bar.
Static registry, self-contained plugins, first plugin is Claude Usage.

ADR-014: CLIProvider adapter pattern for multi-CLI support.
Defines interface for Claude Code, Gemini CLI, and Codex CLI with
phased migration path. Provider knows args, session manager owns PTY.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@aterrylu
aterrylu enabled auto-merge (squash) March 11, 2026 21:32
@aterrylu
aterrylu merged commit af125bb into main Mar 11, 2026
1 check passed
@aterrylu
aterrylu deleted the terry/adr-014-multi-cli branch March 11, 2026 21:33

@nox-0x nox-0x left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Clean ADRs documenting what was built in #21 and planning the multi-CLI provider adapter. ADR-013 accurately captures the static plugin registry and VSCode-style status bar. ADR-014 is well-reasoned — the adapter interface is the right call over inheritance given how different each CLI is, and the phased migration plan is pragmatic. Minor: the ADR-014 interface snippet could note that buildArgs(options) takes a typed options object (resume ID, autonomous mode, etc.) to save future implementers a guessing step, but not blocking. LGTM.

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