What each harness receives natively, capability by capability
Every cell here is derived from the integrations themselves: it is the plan an install takes.
Start with the overview, open the tab of the harness you use, and expand Compare all
harnesses when you need two side by side.
Every harness offers a plugin's agents by the same name, <plugin>:<name> (a subdirectory
under agents/ joins it), and receives each agent as a file carrying only the fields that
harness reads.
Works nativelyWorks through UZEWorks, with a stated limitNot available
A plugin reaches Claude Code through a plugin UZE generates from the package, which carries its skills, agents and MCP servers. UZE delivers its hooks beside it, to Claude Code's own native surfaces.
The generated plugin is served from a marketplace UZE manages; a skill the plugin does not cover
gets a directory of its own in ~/.claude/skills. Project context arrives through the CLAUDE.md
bridge (@AGENTS.md), the only bridge UZE maintains. Hooks merge into Claude Code's own
user-scope hook configuration. Its prompt renders every hook denial as a "hook error", even
one that worked as intended.
Capability
How
Skills
native
Agents
native
MCP
native
Skill: person only
native
Skill: model only
native
Hooks
native
Project AGENTS.md
read through the CLAUDE.md bridge (@AGENTS.md)
Workspace: resume a relaunched agent
Hooks
Runs on: PreToolUse, PostToolUse, Stop, SessionStart (new session), SessionStart (resumed session)