Skip to content

Trellium 2026.09.0 — upgrade mechanism, multi-task runtime, parked index

Choose a tag to compare

@zlin101 zlin101 released this 29 Aug 11:34
· 157 commits to develop since this release

中文摘要:Trellium(原 Agent Native Init)首个正式版本——数据保护式升级机制、多任务运行态(Focus + Active Tasks 指针表)、parked 挂起区、review 台账;Skill 包内嵌安装/升级器,协议内容更新经 --fetch 下发,无需重装 Skill。

Highlights

Data-preserving upgrade mechanism

  • trellium.py baseline / diff / upgrade commands, backed by a version stamp at vault/.agent-init.json (per-file content hashes recorded at install time).
  • Project data is never written by the upgrader: runtime, handoff, decisions, tasks, project, and collaboration are physically outside the write scope.
  • Protocol carriers (governance, index, task templates, the managed AGENTS.md region) refresh only when locally pristine; when both sides changed, a proposal lands in vault/.upgrade/<version>/ for agent semantic merge and user confirmation — local edits are never silently discarded.
  • Per-file opt-in (--only / --skip), clean-git requirement, backups for non-git targets, standalone revertable commits.

Multi-task runtime & parked index

  • runtime.md: Active Task becomes a Focus line + Active Tasks pointer table — one row per parallel task; a status change edits a single row.
  • handoff.md: entry-based, each entry named after its task id (at most 3).
  • New vault/parked.md: cold index of user-parked items (P-xxxx entries with resume triggers), read only when mentioned, cleanup is proposal-only, 60-line/20-entry budget, flows both ways with runtime.

Hot-file discipline & review ledger

  • Recent Changes capped at 10 entries (overflow merges into task-file execution history); update discipline codified: fixed section order, one item per line, single-line replacement.
  • Review ledger (TASK-xxxx-review.md): numbered findings with open / fixed / wont-fix / needs-discussion statuses; one batched write per round instead of message ping-pong; converged ledgers archive into the task's Execution Record.

Skill packages as the distribution channel

  • trellium.py ships inside both Skill packages (skills/trellium / skills/trellium-zh), auto-distributed by sync-skills.py and verified by CI; each package installs its own locale templates.
  • --fetch resolves the latest tagged release via the GitHub tags API, caches it under ~/.cache/trellium/<tag>/, and re-executes the fetched updater — protocol-content updates no longer require reinstalling the Skill. Downgrades are refused.
  • Rebrand: Agent Native Init → Trellium. Internal compatibility identifiers (AGENTS.md marker strings, stamp filename, backup directory) are unchanged — existing adopted projects need zero migration.

Upgrading an adopted project

Projects adopted before versioning: run baseline once, then:

python3 trellium.py diff /path/to/project              # read-only report
python3 trellium.py upgrade /path/to/project --apply   # safe subset + conflict proposals
# agent merges proposals semantically; user confirms
python3 trellium.py upgrade /path/to/project --complete

Skill users: run assets/trellium.py from the installed package, or add --fetch to use the latest release directly.

Installing

python3 "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-installer/scripts/install-skill-from-github.py" \
  --repo zlin101/trellium --path skills/trellium-zh   # or skills/trellium for English

Verification

  • 42 tests green (python3 -m unittest discover -s scripts -p 'test_*.py')
  • Protocol snapshots and embedded scripts in sync (python3 scripts/sync-skills.py --check)
  • End-to-end verified: adopt → project evolution → upstream drift → diff → upgrade --apply (proposal + backup, data untouched) → merge → complete → converged diff; and a real --fetch against this published tag

🤖 Generated with Claude Code