Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.trytrellis.app/llms.txt

Use this file to discover all available pages before exploring further.

Appendix B: Command & Skill Cheat Sheet

Trellis ships only a small session-boundary command surface. Everything else is an auto-trigger skill or a sub-agent. This is intentional: commands are for explicit user boundaries; the rest of the workflow runs itself.

Slash Commands (per platform)

finish-work and continue are the normal user-invoked commands. start is only user-facing on platforms that do not auto-inject session context.
PlatformStartFinishContinueDelivery form
Claude Code / OpenCode / Gemini CLI / CodeBuddy / Droidautomatic SessionStart hook/trellis:finish-work/trellis:continueSlash command
Cursor / Pi Agent / Qoderautomatic SessionStart hook or extension/trellis-finish-work/trellis-continueNative command / prompt
Kiro@trellis:start@trellis:finish-work@trellis:continueSkill via @ picker
Kilo/start.md/finish-work.md/continue.mdWorkflow file (.kilocode/workflows/)
Antigravity / Windsurfworkflow picker → start / finish-work / continueWorkflow file
GitHub CopilotRun Prompt → trellis-start / trellis-finish-work / trellis-continuePrompt file (.github/prompts/)
Codexautomatic AGENTS.md prelude; optional SessionStart hookskill / prompt entryskill / prompt entrySkills + hooks

Auto-trigger Skills

These are matched by the platform based on user intent: no explicit invocation required. Trigger them manually with your platform’s skill invocation syntax if needed.
SkillTriggers when…What it does
trellis-brainstormUser describes a feature / bug / ambiguous requestProduces task + prd.md, spawns research as needed
trellis-before-devTask is in_progress and the AI is about to write codeReads relevant spec files for the package
trellis-checkImplementation phase finishedDiff review, lint / typecheck / test, self-fix loop
trellis-update-specA learning / decision / gotcha is worth capturingAdds an entry to the right spec file
trellis-break-loopA tricky bug was just resolved5-dimension root-cause + prevention analysis

Sub-agents

Spawned by the main session via the platform’s sub-agent / Task primitive.
Sub-agentRoleRestriction
trellis-researchCodebase / doc searchRead-only
trellis-implementCodingNo git commit
trellis-checkVerify + self-fixHas its own retry loop
Available as real sub-agents on Claude Code, Cursor, OpenCode, Codex, Kiro, Gemini CLI, Qoder, CodeBuddy, Copilot, Droid, and Pi Agent. Kilo, Antigravity, and Windsurf run the same work inline in the main session. Context is hook/extension-injected on Claude Code, Cursor, OpenCode, CodeBuddy, Droid, and Pi Agent; the other sub-agent platforms use a pull-based prelude.

task.py Subcommands

SubcommandPurposeUsage
createCreate task (also seeds implement.jsonl / check.jsonl when a sub-agent platform is installed)task.py create "title" [--slug name] [-a assignee] [-p priority]
add-contextAdd context entry (primary way to populate jsonl after create)task.py add-context "$DIR" <target> "<path>" "<reason>"
validateValidate JSONLtask.py validate "$DIR"
list-contextView all entriestask.py list-context "$DIR"
startSet as current task for this AI session/windowtask.py start "$DIR"
finishClear current task for this AI session/windowtask.py finish
set-branchSet branch nametask.py set-branch "$DIR" "feature/xxx"
set-base-branchSet PR target branchtask.py set-base-branch "$DIR" "main"
set-scopeSet scopetask.py set-scope "$DIR" "auth"
add-subtaskLink child to parenttask.py add-subtask <parent-dir> <child-dir>
remove-subtaskUnlink child from parenttask.py remove-subtask <parent-dir> <child-dir>
archiveArchive tasktask.py archive <name>
listList active taskstask.py list [--mine] [--status <s>]
list-archiveList archived taskstask.py list-archive [YYYY-MM]

Python Scripts

# Context
./.trellis/scripts/get_context.py                 # Full context
./.trellis/scripts/get_context.py --json          # JSON
./.trellis/scripts/get_context.py --mode packages # Per-package spec layers (monorepo)
./.trellis/scripts/get_context.py --mode record   # For /trellis:finish-work

# Session
./.trellis/scripts/add_session.py --title "..." --commit "..." --summary "..."

# Spec bootstrap (first-time)
./.trellis/scripts/create_bootstrap.py