Repository navigation
Releases
Releases · zlin101/trellium
2026.09.8
Trellium 2026.09.7
docs(vault): accept TASK-0012
2026.09.4
2026.09.3: fix(check): enforce state uniqueness, projections, and required files
Review fixes for the first cycle, released as 2026.09.3: - duplicate task_id across current task files -> TASK_ID_DUPLICATE error - duplicate Active Tasks rows for one task -> TASK_RUNTIME_DUPLICATE error - open task (draft/active/blocked/ready_for_review) without an Active Tasks projection row -> TASK_PROJECTION_MISSING error; closed (accepted/superseded) and legacy tasks are exempt (fail-closed) - required-file check now covers project.md, governance.md, and tasks/README.md per the 10-vault required-structure list - drop the unimplemented future max_bytes promise from the cycle plan; budget behavior unchanged (only explicit thresholds are enforced) No new abstractions; three finding codes and one widened constant list. 87 tests total (4 new behaviors + fixture updates).
2026.09.2
docs(release): document check workflow and migration (2026.09.2) - README (zh/en): new read-only 'check' section covering state/policy blocks, runtime projection, budget measurement, TASK storage, exit codes, and legacy fail-closed behavior - both SKILL.md packages: check bullet for adopted-project validation - init/VERSION: 2026.09.1 -> 2026.09.2 (CalVer, sole bump this cycle) - snapshots and embedded scripts regenerated via sync-skills.py - includes a behavior-preserving git_toplevel -> git_in_worktree simplification in trellium.py (reflection-gate cleanup: the toplevel value was never consumed) plus a fix so bare-named task files (TASK-0001.md, no slug suffix) are discovered per the TASK-*.md glob instead of silently skipped under storage checks Mechanical acceptance recorded on three temporary projects (fresh adopt exit 0; legacy exit 0 with unresolved warnings; local storage mismatch detection) and four ablation scenarios (remove state block, remove policy block, flip runtime row, flip tracked/local).
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