Repository navigation
Trellium 2026.09.0 — upgrade mechanism, multi-task runtime, parked index
中文摘要:Trellium(原 Agent Native Init)首个正式版本——数据保护式升级机制、多任务运行态(Focus + Active Tasks 指针表)、parked 挂起区、review 台账;Skill 包内嵌安装/升级器,协议内容更新经 --fetch 下发,无需重装 Skill。
Highlights
Data-preserving upgrade mechanism
trellium.py baseline / diff / upgradecommands, backed by a version stamp atvault/.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 Taskbecomes 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 withopen / fixed / wont-fix / needs-discussionstatuses; 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.pyships inside both Skill packages (skills/trellium/skills/trellium-zh), auto-distributed bysync-skills.pyand verified by CI; each package installs its own locale templates.--fetchresolves 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 --completeSkill 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 EnglishVerification
- 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
--fetchagainst this published tag
🤖 Generated with Claude Code