Skip to main content
Beta.17 updates generated templates and platform integrations for built-in Trellis metadata, Pi subagents, and task context wiring.

Enhancements

Bundled trellis-meta skill

trellis-meta is now installed through the built-in skill template pipeline instead of requiring a separate marketplace install.
Areabeta.17 behavior
Template sourcepackages/cli/src/templates/common/bundled-skills/trellis-meta/
Template readergetBundledSkillTemplates() reads complete skill directories
Template resolverresolveBundledSkills() resolves placeholders across SKILL.md and references/**
Template writerwriteSkills() writes workflow skills plus bundled multi-file skills
Template trackingcollectSkillTemplates() includes every bundled skill file for update hash tracking
Every platform skill root now receives trellis-meta/SKILL.md plus its reference files during trellis init and trellis update.

Pi subagent launcher and config

The generated Pi extension now launches nested Pi subagents through a Windows-safe process path and supports per-agent model settings.
Capabilitybeta.17 behavior
CLI resolutionResolves @mariozechner/pi-coding-agent/dist/cli.js and runs it with process.execPath when available
FallbackUses spawn("pi", ...) when no JS entrypoint is found
Prompt transportSends delegated prompts through stdin instead of argv
Output modeRuns child Pi with --mode text -p --no-session
ContextForwards TRELLIS_CONTEXT_ID into child processes
CancellationWires AbortSignal to child process kill/reject behavior
Output boundsKeeps bounded stdout/stderr buffers with truncation notices
Subagent run configuration can come from .pi/agents/*.md frontmatter or per-call tool input:
---
model: anthropic/claude-sonnet-4
thinking: high
fallbackModels:
  - openai/gpt-5-mini
---
The extension maps those fields to Pi CLI args:
InputChild Pi args
model + thinking--model <model>:<thinking> unless the model already has a thinking suffix
model only--model <model>
thinking only--thinking <level>
Pi still keeps Trellis workflow skills under .pi/skills. Shared .agents/skills remains deferred until the shared skill text is platform-neutral.

Workflow task slug wording

The Trellis brainstorm instructions now state that task.py create --slug <auto> receives a slug without a date prefix. task.py create adds the MM-DD- directory prefix automatically, so command examples no longer imply that callers should include the date in --slug.

Behavior Changes

Init completion output

trellis init no longer prints the promotional completion block. The init completion path now stays focused on generated files, next actions, and testable onboarding output. Integration coverage asserts that the removed promotional pain-point copy does not return.

Bug Fixes

Subagent context wiring

Generated and dogfood platform files now preserve subagent context more consistently across host-specific payload formats.
Host / filebeta.17 behavior
.claude/hooks/inject-subagent-context.pyParses Cursor-style custom subagent payloads such as { custom: { name } } and { type: { case: "custom", value: { name } } }
.claude/hooks/inject-workflow-state.py / .codex/hooks/inject-workflow-state.pyWorkflow-state breadcrumbs require exact trellis-implement, trellis-check, or trellis-research agent names
.cursor/hooks/session-start.pyPersists TRELLIS_CONTEXT_ID through CLAUDE_ENV_FILE for later Bash commands when that bridge is available
AGENTS.md templateDocuments that subagents must complete before yielding and when to spawn them
These changes keep implement.jsonl and check.jsonl context loading tied to the Trellis agent names that receive injected task context.

Upgrade

Existing projects:
trellis update
No --migrate flag is required for this beta.