Skip to content

feat: add Gemini CLI as sixth target provider#190

Merged
kieranklaassen merged 7 commits intomainfrom
feat/gemini-target
Feb 15, 2026
Merged

feat: add Gemini CLI as sixth target provider#190
kieranklaassen merged 7 commits intomainfrom
feat/gemini-target

Conversation

@kieranklaassen
Copy link
Collaborator

Summary

  • Adds --to gemini support for both convert and install commands
  • Converts Claude Code plugins into Gemini CLI-compatible format (skills, TOML commands, settings.json)
  • Namespaced commands create directory structure (workflows:plancommands/workflows/plan.toml)

Component Mapping

Claude Code Gemini CLI Format
Agents .gemini/skills/*/SKILL.md YAML frontmatter + markdown
Commands .gemini/commands/*.toml TOML with description + prompt
Skills .gemini/skills/*/SKILL.md Pass-through (identical standard)
MCP servers .gemini/settings.json JSON mcpServers key
Hooks Skipped (warning emitted) Different format

Test plan

  • 27 new tests added (17 converter + 7 writer + 3 TOML/transform)
  • All 129 tests pass (102 existing + 27 new)
  • Integration test: converted compound-engineering plugin produces 148 valid output files
  • Verified output structure: namespaced dirs, SKILL.md frontmatter, TOML format, settings.json

Post-Deploy Monitoring & Validation

No additional operational monitoring required: CLI tool change with no runtime/server component.


Compound Engineered 🤖 Generated with Claude Code

kieranklaassen and others added 7 commits February 14, 2026 20:33
Add `--to gemini` support for both `convert` and `install` commands,
converting Claude Code plugins into Gemini CLI-compatible format.

- Agents convert to `.gemini/skills/*/SKILL.md` with description frontmatter
- Commands convert to `.gemini/commands/*.toml` with TOML prompt format
- Namespaced commands create directory structure (workflows:plan -> workflows/plan.toml)
- Skills pass through unchanged (identical SKILL.md standard)
- MCP servers written to `.gemini/settings.json` with merge support
- Content transforms: .claude/ paths, Task calls, @agent references
- Hooks emit warning (different format in Gemini)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Extract named GeminiMcpServer type (eliminates NonNullable indexing)
- Deep-merge mcpServers in settings.json (preserves existing entries)
- Warn when existing settings.json cannot be parsed
- Add test for uniqueName dedup (agent/skill name collision)
- Add test for TOML triple-quote escaping

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@kieranklaassen kieranklaassen merged commit bbe4dfa into main Feb 15, 2026
1 check passed
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