Skip to main content

Multi-Platform and Team Configuration

Claude Code Full Experience

Claude Code is Trellis’s primary platform, with the most complete automation capabilities. Three core Hooks form the automation loop:
HookTrigger TimingCapability
session-start.pySessionStartAuto-injects context (identity, history, tasks)
inject-subagent-context.pyPreToolUse (Task)Auto-injects precise Spec context for Agents
ralph-loop.pySubagentStop (check)Auto-verifies code quality (Ralph Loop)
Claude Code exclusive features:
  • Hook auto-injection — start working immediately upon opening terminal, no manual /start needed
  • Multi-Agent Pipeline — /parallel orchestrates multiple worktree Agents in parallel
  • Ralph Loop — automatic quality gate, Check Agent auto-retries on failure
  • Agent system — 6 specialized Agents (dispatch, plan, implement, check, debug, research)

Cursor Integration

trellis init automatically generates Trellis command files under .cursor/commands/:
Claude Code CommandCursor Equivalent
/trellis:start/trellis-start
/trellis:before-dev/trellis-before-dev
/trellis:brainstorm/trellis-brainstorm
/trellis:check/trellis-check
/trellis:check-cross-layer/trellis-check-cross-layer
/trellis:finish-work/trellis-finish-work
/trellis:break-loop/trellis-break-loop
/trellis:create-command/trellis-create-command
/trellis:integrate-skill/trellis-integrate-skill
/trellis:onboard/trellis-onboard
/trellis:record-session/trellis-record-session
/trellis:update-spec/trellis-update-spec
Differences from Claude Code:
  • Files located at .cursor/commands/trellis-{name}.md
  • Cursor has 12 commands (no /parallel, as Cursor doesn’t support Multi-Agent Pipeline)
  • No Hook support — spec injection requires manual command invocation
  • No Agent system — all work happens in the main conversation
  • No Ralph Loop — check commands must be run manually
Recommended workflow for Cursor users:
# 1. Start session (required, replaces Hook auto-injection)
/trellis-start

# 2. Load relevant specs (recommended, replaces PreToolUse Hook)
/trellis-before-dev

# 3. Describe task, AI develops...

# 4. Manually check code quality (replaces Ralph Loop)
/trellis-check
/trellis-check-cross-layer     # Cross-layer check

# 5. Finish checklist
/trellis-finish-work

Codex Integration

trellis init --codex -u your-name
Generates the following configuration:
  • AGENTS.md (root directory) — Codex entry file, provides base project context (similar to CLAUDE.md)
  • .agents/skills/ — Shared Agent Skills directory (agentskills.io open standard, used by Codex, Kimi CLI, Amp, Cline, and others)
  • .codex/config.toml — Project-scoped Codex configuration
  • .codex/agents/ — Custom Codex agents (implement.toml, research.toml, check.toml)
  • .codex/skills/ — Codex-specific skills (e.g. parallel for multi-agent pipelines)
  • .codex/hooks/session-start.py + .codex/hooks.json — SessionStart hook that injects Trellis workflow, guidelines, and task context into Codex sessions
As of Codex CLI v0.116.0 (2026-03-24), hooks are an experimental feature that requires manual opt-in. Add this to ~/.codex/config.toml:
[features]
multi_agent = true
codex_hooks = true
This requirement may be removed in a future Codex release when hooks become stable.

Kilo Code Integration

Kilo Code is an open-source (Apache 2.0) AI coding Agent platform, available as a VS Code extension, JetBrains plugin, and CLI, with 750K+ users.
trellis init --kilo -u your-name
Generates configuration under the .kilocode/ directory: What Trellis generates for Kilo: trellis init --kilo generates workflow files under .kilocode/workflows/. These are Kilo’s equivalent of slash commands — invoked in chat as /start.md, /check.md, etc.
Trellis / Claude CodeKilo Code (generated by Trellis)Description
.claude/commands/*.md.kilocode/workflows/*.mdWorkflow commands invoked as /start.md, etc.
Generated directory structure:
project/
├── .kilocode/
│   └── workflows/                      # Commands (equivalent to slash commands)
│       ├── start.md                    # /start.md — session init
│       ├── brainstorm.md               # /brainstorm.md
│       ├── before-dev.md               # /before-dev.md
│       ├── check.md                    # /check.md
│       ├── check-cross-layer.md        # /check-cross-layer.md
│       ├── finish-work.md              # /finish-work.md
│       ├── break-loop.md               # /break-loop.md
│       ├── create-command.md           # /create-command.md
│       ├── integrate-skill.md          # /integrate-skill.md
│       ├── onboard.md                  # /onboard.md
│       ├── parallel.md                 # /parallel.md
│       ├── record-session.md           # /record-session.md
│       └── update-spec.md              # /update-spec.md
Kilo also supports rules/, rules-code/, rules-architect/, skills/, launchConfig.json, and mcp.json — but these are not generated by Trellis. You can create them manually if needed. See Kilo Code documentation for details.
Recommended workflow for Kilo users:
# 1. Run the start workflow for full context
/start.md

# 2. Switch to Orchestrator mode for complex tasks
# Kilo auto-decomposes tasks and assigns to Code/Architect modes

# 3. Describe task, AI develops...

# 4. Run check workflow
/check.md

# 5. Finish
/finish-work.md
Kilo’s Orchestrator Mode shares a similar philosophy with Trellis’s Multi-Agent Pipeline, but the implementation differs: Trellis uses git worktree physical isolation + Hook orchestration, while Kilo uses built-in mode switching + independent conversation context. The two are complementary — Trellis’s Spec management and Task system provide structured project context for Kilo.

Kiro Integration

Kiro is an AI IDE by Amazon, built on Code OSS (VS Code open-source core), focused on Spec-Driven Development. It supports IDE, CLI, and Autonomous Agent modes.
trellis init --kiro -u your-name
What Trellis generates for Kiro: trellis init --kiro generates skill files under .kiro/skills/. Each skill is a SKILL.md file with YAML frontmatter, following the Agent Skills open standard.
Trellis / Claude CodeKiro (generated by Trellis)Description
.claude/commands/*.md.kiro/skills/*/SKILL.md12 skills with YAML frontmatter
Generated directory structure:
project/
├── .kiro/
│   └── skills/                         # Agent Skills (YAML frontmatter + instructions)
│       ├── start/SKILL.md
│       ├── brainstorm/SKILL.md
│       ├── before-dev/SKILL.md
│       ├── check/SKILL.md
│       ├── check-cross-layer/SKILL.md
│       ├── finish-work/SKILL.md
│       ├── break-loop/SKILL.md
│       ├── create-command/SKILL.md
│       ├── integrate-skill/SKILL.md
│       ├── onboard/SKILL.md
│       ├── record-session/SKILL.md
│       └── update-spec/SKILL.md
Kiro also supports steering/, hooks/, specs/, prompts/, agents/, and settings/ directories — but these are not generated by Trellis. You can create them manually if needed. See Kiro documentation for details.
Recommended workflow for Kiro users:
# 1. Use the start skill to initialize session context
# 2. Describe task, AI develops...
# 3. Use the check skill to verify code quality
# 4. Use the finish-work skill for pre-commit checklist
# 5. Commit code when done

OpenCode Integration

OpenCode is an open-source AI coding CLI built on Bun. Trellis treats OpenCode as a near-Claude-Code-level platform thanks to its plugin system (.opencode/plugins/) which exposes SessionStart-equivalent hooks.
trellis init --opencode -u your-name
Generates:
  • .opencode/commands/trellis/ — slash commands (start.md, before-dev.md, check.md, finish-work.md, and the rest of the 0.4 command set)
  • .opencode/agents/ — sub-agent definitions (implement.md, research.md, check.md) for OpenCode’s Task-equivalent primitive
  • .opencode/plugins/session-start.js — session-start plugin that injects Trellis context
  • .agents/skills/ — shared Agent Skills layer (OpenCode also reads this directory)
Invoke commands as /trellis:start, /trellis:before-dev, etc. OpenCode is one of the few non-Claude platforms where sub-agents actually spawn in isolation.

iFlow Integration

iFlow is a TongYi-derived AI coding CLI. Trellis shares the Claude Code Python hook layout with iFlow, so the automation story is comparable.
trellis init --iflow -u your-name
Generates:
  • .iflow/commands/trellis/ — slash commands (/trellis:start, /trellis:before-dev, etc.)
  • .iflow/hooks/session-start.py + .iflow/hooks.json — SessionStart hook wiring (same Python script as Claude Code)
  • .iflow/settings.json — project-scoped iFlow config
iFlow was removed in 0.5.0-beta.0. If you’re on 0.4.0 GA it’s fully supported; upgrading to 0.5 will uninstall the .iflow/ directory.

Gemini CLI Integration

Gemini CLI is Google’s official Gemini-powered terminal agent.
trellis init --gemini -u your-name
Generates:
  • .gemini/commands/trellis/{name}.toml — TOML command files for the 0.4 command set. Gemini CLI loads them via its TOML command format, so each command’s prompt lives in a prompt = """...""" block.
  • .agents/skills/ — shared skills layer (Gemini CLI reads the agentskills.io standard path).
Gemini CLI does not expose SessionStart hooks, so the prelude is loaded by explicitly running /trellis:start at session start.

Qoder Integration

Qoder does support Custom Commands (typed with / in the agent input, stored under ~/.qoder/commands/ or <project>/.qoder/commands/), but Trellis’s design choice on Qoder is to deliver its workflow as auto-trigger skills only. Trellis doesn’t write to .qoder/commands/ — that space stays free for your own custom commands.
trellis init --qoder -u your-name
Generates:
  • .qoder/skills/{name}/SKILL.md — the full 0.4 command set rendered as skills (start, brainstorm, before-dev, check, check-cross-layer, finish-work, break-loop, create-command, integrate-skill, onboard, record-session, update-spec). The platform auto-matches based on user intent.
In 0.4.0 Qoder has no SessionStart hook path at Trellis level, so prelude context is loaded on demand when the user triggers the start skill (Qoder’s skill picker is the only user-facing entry point).

GitHub Copilot Integration

GitHub Copilot (Chat) doesn’t expose a slash-command primitive of its own. Trellis delivers its 0.4 command set as prompt files plus an always-loaded instructions file.
trellis init --copilot -u your-name
Generates:
  • .github/copilot-instructions.md — auto-loaded every chat session, carries the Trellis prelude
  • .github/prompts/trellis-{name}.prompt.md — per-command prompts (trellis-start.prompt.md, trellis-check.prompt.md, etc.). Invoke via Copilot’s “Run Prompt” picker.
No hook support — the prelude instructions file replaces SessionStart.

Windsurf Integration

Windsurf (Codeium’s agent IDE) uses workflow files and always-on rules. Trellis maps its commands to Windsurf workflows and the prelude to Windsurf rules.
trellis init --windsurf -u your-name
Generates:
  • .windsurf/workflows/trellis-{name}.md — each Trellis command as a workflow, invoked from Windsurf’s workflow picker
  • .windsurf/rules/trellis.md — always-on rule carrying the Trellis prelude
No hook system. Workflows are manual-invoke; the rule file ensures context is always available.

CodeBuddy Integration

CodeBuddy is Tencent Cloud’s AI coding assistant with MCP extensibility.
trellis init --codebuddy -u your-name
Generates:
  • .codebuddy/commands/trellis/{name}.md — 12 slash commands (invoked as /trellis:start, /trellis:check, etc.)
In 0.4.0 CodeBuddy integration is command-only; no hooks or sub-agents — spec loading requires explicit /trellis:before-dev invocation.

Antigravity Integration

Antigravity is Google’s experimental agent IDE. It uses workflow files under .agent/workflows/.
trellis init --antigravity -u your-name
Generates:
  • .agent/workflows/{name}.md — Trellis workflows, invoked via Antigravity’s workflow picker. Content is adapted from the shared Codex skill source.
No hook or sub-agent support; manual-invoke workflow model.

Factory Droid Integration

Factory Droid is Factory.ai’s agent-capable CLI. It has hooks and sub-agents, so Trellis gives it the near-full Claude Code experience.
trellis init --droid -u your-name
Generates:
  • .factory/commands/trellis/{name}.md — slash commands
  • .factory/agents/{name}.md — sub-agent definitions (implement, research, check)
  • .factory/skills/ — auto-trigger skills
  • .factory/hooks/session-start.py + .factory/hooks.json — SessionStart hook (same Python script family as Claude Code)

Operating System Compatibility

OSSupport StatusNotes
macOS✅ Full supportPrimary development platform, all features verified
Linux✅ Full supportAll features verified
Windows✅ Full supportAll scripts migrated to Python, natively supports Windows
Cross-platform notes:
ConsiderationDetails
Python scriptsScripts under .trellis/scripts/ are Python, requiring Python 3.10+, cross-platform compatible
Python HooksHook scripts under .claude/hooks/ require Python 3.10+, cross-platform compatible
Path separatorsTrellis internally uses /, Python handles path conversion automatically
Git worktreeMulti-Agent Pipeline relies on git worktree, supported on all platforms

Multi-Developer Collaboration

Non-conflicting parts (per-developer isolation):
  • workspace/{name}/ — each developer has their own directory
  • .developer — gitignored, per-developer
  • Parallel task worktrees — physically isolated
Potentially conflicting parts (require coordination):
  • spec/ — multiple people may modify the same spec simultaneously
  • tasks/ — multiple people may operate on the same task
Best practices:
  • Spec changes go through PR review
  • Task assignments are explicit (--assignee parameter)
  • Important spec changes are discussed in team meetings

Complete worktree.yaml Configuration

# Worktree Configuration for Multi-Agent Pipeline

#───────────────────────────────────────────────────
# Paths
#───────────────────────────────────────────────────

# Worktree storage directory (relative to project root)
worktree_dir: ../trellis-worktrees

#───────────────────────────────────────────────────
# Files to Copy
#───────────────────────────────────────────────────

# Files that need independent copies in each worktree
# These files contain sensitive info or need independent config
copy:
  - .env                     # Environment variables
  - .env.local               # Local environment variables
  - .trellis/.developer      # Developer identity

#───────────────────────────────────────────────────
# Post-Create Hooks
#───────────────────────────────────────────────────

# Commands to run after creating a worktree
# Executed sequentially in the worktree directory; aborts on failure
post_create:
  - pnpm install --frozen-lockfile
  # - npm install
  # - yarn install --frozen-lockfile

#───────────────────────────────────────────────────
# Check Agent Verification (Ralph Loop)
#───────────────────────────────────────────────────

# Commands to verify code quality
# When configured, Ralph Loop runs these — all must pass
# Without configuration, falls back to completion markers mode
verify:
  - pnpm lint
  - pnpm typecheck
  # - pnpm test

trellis update and Version Management

# Check current version
cat .trellis/.version

# Update to latest version
trellis update

# Preview updates (dry run)
trellis update --dry-run

# Force overwrite all files
trellis update -f

# Skip all changed files
trellis update -s
Template hash mechanism: .trellis/.template-hashes.json stores the SHA-256 hash of each template file. During trellis update:
  1. Compute local file hashes
  2. Compare with recorded template hashes
  3. If they match — file not modified by user — safe to update
  4. If they differ — file was modified by user — prompt for conflict resolution
  5. User chooses: overwrite / skip / merge