Repository navigation
Supported Tools
EGC supports 19 AI coding tools ("harnesses") through 3 integration mechanisms, documented in docs/spec/integration-tiers.md in the repository. This page mirrors that source.
Gemini CLI, Continue.dev, and Roo Code were retired on 2026-08-16 (v1.1.19), after each vendor's own lifecycle decision: Gemini CLI stopped serving as a standalone product and Antigravity succeeded it on the same home directory, Continue.dev shut down, and Roo Code was archived upstream. Their adapter files remain in the tree, unregistered, for history and trivial rollback; their target ids are still recognized so every command explains the retirement.
| Tier | Name | What ships | Install pipeline |
|---|---|---|---|
| 1 | Full unified | Skills, agents, rules, hooks, MCP, install manifest |
scripts/install-apply.js via the shared install-target registry |
| 2 | Custom-script (retired) | Formerly tool-specific assets via a dedicated shell script | none: Kiro, Trae and CodeBuddy assets ship through their Tier 1 adapters |
| 3 | Protocol-only | MCP server registration plus memory protocol injection |
scripts/bootstrap-cognitive.js plus the shell installer's MCP registration |
Retired, after each vendor's own lifecycle decision: Gemini CLI, Continue.dev and Roo Code on 2026-08-16 (#1279); Amazon Q Developer CLI on 2026-09-30 (AWS closed new sign-ups on 2026-05-15 and ends support on 2027-04-30; the CLI became the Kiro CLI, which EGC serves as
kiro). The retired ids are still recognized byegc install,doctor,repairandauto-update, which explain the retirement, andegc uninstallstill cleans what those installs wrote. Renamed, not retired: Windsurf became Devin Desktop on 2026-06-02 (Cascade removed on 2026-09-08 in favour of Devin Local); the target id stayswindsurfbecause the vendor kept~/.codeium/windsurf/and the.windsurf/workspace fallback.
| # | Tool | Tier | Target id | Install path and notes |
|---|---|---|---|---|
| 1 | Claude Code | 1 | claude |
~/.claude/skills/<name>/SKILL.md; cognitive bootstrap via ~/.claude/CLAUDE.md; MCP registration through claude mcp add -s user, driven by egc init and the shell installers |
| 2 | Antigravity (AGY) | 1 | antigravity |
.agents/ (project-scoped, per repo): skills, the agents as subagents in .agents/agents/, rules, and the commands as skills; the Guardian, the GateGuard and the session-mesh notice as the egc-guardian, egc-gateguard and egc-mesh-notice named hooks in .agents/hooks.json, and globally in ~/.gemini/config/hooks.json through the egc target, which also installs skills, rules and agents under ~/.gemini/config/ and generates ~/.gemini/AGENTS.md
|
| 3 | Cursor | 1 | cursor |
.cursor/ (project-scoped): rules as .cursor/rules/*.mdc, the Guardian and Token Crusher hooks in .cursor/hooks.json, the project .mcp.json servers merged into .cursor/mcp.json; the rule .cursor/rules/egc-context.mdc is generated at install time; the user-level ~/.cursor/mcp.json registration comes from egc init
|
| 4 | Codex CLI | 1 | codex |
~/.agents/skills/<name>/SKILL.md; the memory protocol in the top-level developer_instructions key of ~/.codex/config.toml
|
| 5 | OpenCode | 1 | opencode |
~/.config/opencode/skills/<name>/SKILL.md; native plugin events for hooks |
| 6 | CodeBuddy | 1 | codebuddy |
.codebuddy/skills/<name>/SKILL.md; the memory protocol as a marker block in ~/.codebuddy/CODEBUDDY.md; hooks in hooks.json, with the Token Crusher rewrite returned as modifiedInput
|
| 7 | Devin Desktop (Windsurf until 2026-06-02) | 1 | windsurf |
~/.codeium/windsurf/skills/<name>/SKILL.md; GateGuard and Guardian as PreToolUse hooks of Devin Local in ~/.config/devin/config.json
|
| 8 | Amp | 1 | amp |
~/.agents/skills/<name>/SKILL.md (home) and .agents/skills/<name>/SKILL.md (project), the directories Amp discovers; Guardian and Token Crusher wired through Amp's plugin API (.amp/plugins/ or ~/.config/amp/plugins/) |
| 9 | VS Code Copilot | 1 | copilot |
~/.copilot/skills/<name>/SKILL.md, where VS Code reads personal skills; agents, commands and rules as library folders under ~/.github/
|
| 10 | Zed | 1 | zed |
~/.agents/skills/<name>/SKILL.md (the only global directory Zed reads, shared with Codex, Goose, OpenHands and Crush); bootstrap into ~/.config/zed/AGENTS.md; MCP registration into context_servers is done by egc init and the shell installers, not by the target |
| 11 | Kiro | 1 | kiro |
~/.kiro/skills/<name>/ (home) and .kiro/skills/<name>/ (project); project-local agents, steering docs, hooks and settings ship through the same Tier 1 adapter since the custom script was retired |
| 12 | Trae | 1 | trae |
.trae/skills/<name>/ (project only); commands, agents, rules and the ~/.trae/user_rules/egc-memory.md memory protocol ship through the same Tier 1 adapter since the custom script was retired (TRAE_ENV=cn for ~/.trae-cn/) |
| 13 | JetBrains Junie | 1 | junie |
.junie/guidelines.md (project only) |
| 14 | Goose | 1 | goose |
~/.agents/skills/<name>/SKILL.md (shared with Codex); Guardian via a PreToolUse hook at ~/.agents/plugins/egc-guardian/; no Token Crusher |
| 15 | OpenHands | 1 | openhands |
~/.agents/skills/<name>/SKILL.md (shared with Codex and Goose) plus .openhands/hooks.json (project); Guardian via a pre_tool_use hook; no Token Crusher |
| 16 | Aider | 1 | aider |
.aider/skills/<name>.md (project only); paths merged into the read: list of .aider.conf.yml
|
| 17 | Cline | 1 | cline |
.clinerules/ (project only); rules flattened with collision-safe namespaced filenames |
| 18 | Warp | 1 | warp |
.warp/skills/<name>/SKILL.md, the layout Warp invokes as /<name>, plus a skill index merged into the project root AGENTS.md (project only); uninstall removes only the EGC block |
| 19 | Qwen Code | 1 | qwen |
.qwen/skills/<name>/SKILL.md (project only); Guardian and Token Crusher hooks merged into .qwen/settings.json
|
| 20 | Kimi Code CLI | 1 | kimi |
~/.kimi-code/skills/<name>/SKILL.md (home only; KIMI_CODE_HOME moves the root); agents, commands and rules as library folders; MCP servers in ~/.kimi-code/mcp.json
|
| 21 | Crush (Charmbracelet) | 1 | crush |
~/.agents/skills/<name>/SKILL.md (shared root); agents, commands and rules under ~/.config/crush/; Guardian and Token Crusher hooks and the MCP servers in crush.json; memory protocol in CRUSH.md
|
| 22 | Auggie (Augment Code) | 1 | auggie |
~/.augment/skills/<name>/SKILL.md (home) and .augment/skills/<name>/SKILL.md (project); commands flat under .augment/commands/, rules under .augment/rules/; no hook API, so no Guardian or Token Crusher |
| 23 | Mistral Vibe | 1 | vibe |
~/.vibe/skills/<name>/SKILL.md (home; VIBE_HOME moves the root) and .vibe/skills/<name>/SKILL.md (project, trusted folders only); agents, commands and rules under egc/library/; the root AGENTS.md as ~/.vibe/AGENTS.md; Guardian and Token Crusher as [[hooks]] entries of type pre_tool in hooks.toml; MCP servers registered by egc init as [[mcp_servers]] tables with transport = "stdio" in config.toml
|
Kiro, Trae and CodeBuddy are fully on the unified pipeline: their non-skill assets moved into the Tier 1 adapters and the shell scripts they used to depend on no longer exist in the repository.
Every harness takes part in the real-time session mesh through two always-on layers, plus a native turn signal where the host can inject context:
-
MCP bus (all 23):
session_announce,session_events,session_send,claim_path,working_memory_*, and the long-pollsession_wait(wake-on-write, on by default;EGC_MESH_PUSH=0opts a server out). -
Cognitive protocol (all 23; v9 on main): every install's context file teaches the agent to announce presence after restoring state, drain events on the
[egc-mesh]notice, drainsession_eventsat the start of every turn while busy, claim paths before shared edits, and park withsession_waitwhen idle. -
Native turn signal: a per-turn hook injects a one-line drain notice on Claude Code, Antigravity (the
egc-mesh-noticePreInvocation hook, project and global), Codex CLI, Trae, Amp, and Kiro. The remaining harnesses expose no per-turn injection surface and rely on layers 1 and 2.
For all 19 harnesses:
- The install path is documented
- MCP server registration, where the tool supports MCP
- Memory protocol injection (the
get_state/update_stateinstructions reach the AI) - An uninstall path exists
For Tier 1 and Tier 2 only: skills, agents, and rules ship to the tool's filesystem and the tool can invoke EGC-defined workflows directly.
For Tier 1 only: a single pipeline produces all targets, conformance tests validate install output, and provenance metadata is recorded for every materialized file.
Tier 2 is now reserved for the non-skill assets of Kiro and Trae, which landed in EGC before the unified pipeline was stable; those installers do similar work to the Tier 1 pipeline but with a different asset shape. Tier 3 is the entry point for any MCP-capable tool with no filesystem skill discovery. Claude Code, Devin Desktop, Amp, and VS Code Copilot were promoted from Tier 3 to Tier 1 once they gained a skill-discovery filesystem path.
See Installation for per-target install commands and Configuration for how --target and --profile combine.