↓ Skip to main content

Agent support

Documented version: v0.5.1

What lazyagents can do with each agent, read from the adapters in internal/agent. Paths are the defaults on Linux and macOS. How sessions are read per agent is in the sessions guide.

Skills
#

A directory marked (shared) is read by several agents: lazyagents links a skill there only while it is enabled for every installed agent that reads it, and otherwise in each agent’s own directory.

AgentidEnables skills inAlso reads
Claude Codeclaude-code~/.claude/skills—
Codexcodex~/.codex/skills~/.agents/skills (shared)
Gemini CLIgemini-cli~/.gemini/skills~/.agents/skills (shared)
OpenCodeopencode~/.config/opencode/skills~/.claude/skills, ~/.agents/skills (shared)
Claude Desktopclaude-desktop— (not manageable locally)—
Hermes Agenthermes-agent~/.hermes/skills—
Pipi~/.pi/agent/skills~/.agents/skills (shared)
Crushcrush~/.config/crush/skills~/.config/agents/skills, ~/.claude/skills, ~/.agents/skills (shared)

Capabilities
#

AgentProviders (writes)Hooks (writes)Subscription limitsUsage historyLive-session badge
Claude Code~/.claude/settings.json~/.claude/settings.jsonyesyesyes
Codex~/.codex/config.toml~/.codex/hooks.jsonyesyes—
Gemini CLI—————
OpenCode—————
Claude Desktop—————
Hermes Agent—————
Pi~/.pi/agent/models.json——yes—
Crush~/.config/crush/crushrc~/.config/crush/crushrc———

Config overrides
#

Environment variables that move an agent’s files. lazyagents reads the same ones, so it looks where the CLI does; a relative value is ignored.

AgentVariableMoves
Claude CodeCLAUDE_CONFIG_DIR~/.claude: sessions, skills, settings, hooks, login
CodexCODEX_HOME~/.codex: sessions, skills, config.toml, hooks
OpenCodeXDG_CONFIG_HOME~/.config: opencode/ config and skills
OpenCodeXDG_DATA_HOME~/.local/share: opencode/opencode.db
OpenCodeOPENCODE_DBthe session database file itself
Hermes AgentHERMES_HOME~/.hermes (or the hermes profile use profile): skills and config.yaml
Hermes AgentLOCALAPPDATAWindows only: Hermes’ default home is %LOCALAPPDATA%\hermes instead of ~/.hermes
CrushXDG_CONFIG_HOME~/.config: crush/ config and skills, and agents/skills
CrushXDG_DATA_HOME~/.local/share: crush/projects.json, the index of project sessions
CrushCRUSH_GLOBAL_CONFIGthe dir of crushrc and crush.json (not the skills, which stay in ~/.config/crush/skills)
CrushCRUSH_GLOBAL_DATA~/.local/share/crush itself
CrushCRUSH_SKILLS_DIRreplaces every global skill dir: Crush then loads skills from that dir only
PiPI_CODING_AGENT_DIR~/.pi/agent: everything
PiPI_CODING_AGENT_SESSION_DIR<agent dir>/sessions

Hook events
#

A hook only installs in agents that fire its event; the TUI marks the others with –.

EventClaude CodeCodexCrush
SessionStartyesyes—
UserPromptSubmityesyes—
PreToolUseyesyesyes
PostToolUseyesyes—
Notificationyes——
Stopyes——
SubagentStopyes——
PreCompactyesyes—
SessionEndyesyes—