Repository navigation
Releases
Releases · colmugx/cetas
cetas-v0.11.3
General
Native Ver.(cetas-native)
Feats
- Cetas Native now installs on Windows x64 in one command:
install.ps1resolves the latest Cetas release (or-Version X.Y.Z), prints the full installation plan, and only starts downloading after you confirm. - The Windows installer checks the release first: if
cetas-windows-x64.ziporSHA256SUMSis missing it stops before touching your disk, and the archive it does download is verified against the published checksum. - On Windows all four files land side by side —
cetas.exe,cetas-acp.exe,cetas-run.exeandcetas_moon.dll— because the executable loads its core from that DLL, so a split installation cannot silently break. - After installing, the installer runs
cetas --version,cetas acp --versionandcetas run --versionitself, so a damaged or mismatched download fails at install time instead of on your first launch. install.shnow covers Windows as well (Git Bash, MSYS2, Cygwin) and installs the same four files;-y/--yesmakes it suitable for unattended setups, and it warns you when the install directory is not onPATHor when anothercetaswould shadow the new one.install.shshows the plan before it changes anything — host, target, version, repository, destination, archives, and every file it will write, with existing files marked as replaced — and asks for confirmation, so you can abort with no side effects; a piped curl-to-bash install still gets the prompt through your terminal.- Native release binaries are now built size-first: MoonBit's generated C, dependency stubs and runtime compile through a size-optimizing compiler wrapper with section garbage collection, the Windows DLL links with link-time optimization and identical-code folding, the Go host drops symbols and dead code, so the downloads stay lean without any post-download unpacking or compression tricks.
ACP Ver.(cetas-acp)
Feats
cetas-acpis covered by the same one-command install on Windows and Unix: the installer verifies the release checksum and then runscetas acp --versionfor you, so an ACP binary that cannot start is reported during installation rather than when you open your editor.- The Windows package keeps
cetas-acp.exein the same folder as thecetas_moon.dllit loads, so an ACP host installed by the script works without extra manual placement. cetas-acpis produced by the new size-first native build, so its download is smaller than in previous releases.
Run Ver.(cetas-run)
Feats
cetas-runis delivered by the same verified installer on Windows and Unix, which runscetas run --versionafter copying the files, so a broken one-turn runner is caught at install time.- The Windows package keeps
cetas-run.exebeside thecetas_moon.dllit loads, so scripted runs work straight after installation. cetas-runis produced by the new size-first native build, so its download is smaller than in previous releases.
cetas-v0.11.2
General(Include Native Ver)
Feats
- The native terminal now runs on Windows:
cetas.exeis a cgo-free build that loads the Cetas core from a companioncetas_moon.dll, and the Windows download shipscetas-acp.exeandcetas-run.exein the same folder, socetas acpandcetas runwork out of the box. - You can now send images with a prompt. Mention an image file with
@(PNG, JPEG, GIF, WebP, up to 5 MB) or paste an image from the clipboard on macOS, and it travels with your message; the mention stays in the prompt text for reference, and a file that does not resolve is reported as a warning instead of silently dropped. - PNG attachments are drawn inline in the transcript on Ghostty and kitty (kitty graphics protocol), so you see the picture you sent; other formats and terminals fall back to a labelled attachment chip.
Escclears staged attachments before it does anything else. @file completion now covers far more of your project: 20,000 entries across 32 directory levels, using the same ignore rules as the read and glob tools, so the list matches the tree your tools actually see.@completion results are now ranked by real name match (exact, prefix, contains, path contains) instead of a fuzzy score, and entries that do not match at all are dropped — no more near-miss noise burying the file you meant.- A one-command installer is available for the native trio (
cetas,cetas-acp,cetas-run): it resolves the latest Cetas release, verifies every asset againstSHA256SUMS, supports--versionand--dir, installs all three side by side, and warns you when an npm-installedcetaswould shadow the native one onPATH.
Fixes
- Release executables for macOS and Windows are now code-signed before packaging: ad-hoc signing on macOS (per artifact, with the JIT entitlements the compiled Bun runtime needs) and a CI certificate signature on Windows. This is an integrity signature, not a trusted publisher identity, so Windows SmartScreen may still warn.
- Long sessions stay lean: rendered Markdown is held in an 8 MiB budgeted cache that evicts least-recently-used blocks and re-renders them from source on demand, instead of keeping every rendered message for the life of the session.
- Browsing sessions no longer stalls the conversation: the session catalog gets its own worker, so opening the picker on a machine with many session buckets does not delay paging the transcript you are reading, and vice versa.
- A slow transcript index no longer wedges a session: the UI wakes when the index deadline passes, retries within a bounded budget, and then gives up with a visible error instead of sitting on "loading transcript…" or silently restarting the probe on every redraw.
- A late result from a custom slash command can no longer overwrite your status line, transcript or composer — only the invocation you actually started can settle it.
- On Windows, the terminal's bridge to the agent core no longer allocates on every poll, so large or busy sessions stop paying for heap churn just to stay responsive.
- Transcript search hits are marked with a styled undercurl instead of a plain underline, so they stand out at a glance; terminals without styled underlines degrade to the old look.
- Native executables ship without Go debug symbols, so the downloads are smaller.
Bun Ver.(cetas-bun)
Fixes
- The macOS build is signed with the JIT entitlements its compiled Bun runtime requires, so
cetas-bunstarts on Apple silicon instead of being stopped at launch by the system.
cetas-v0.11.1
General
Feats
- The agent now writes code comments for one reason only — explaining intent the code cannot express. It stops narrating changes, keeps "this used to be…" history in your source, restates the obvious, and leaves sprint or milestone notes behind.
- The native
cetasterminal (new Alpha build for macOS and Linux, shipped ascetas) is now a real terminal application instead of a bare transcript: welcome screen, dashboard, status line and theme follow the JavaScript host.
Bun Ver.(cetas-bun)
Feats
- Subagents now run in the background by default: spawning one returns its receipt immediately and the result arrives later as a follow-up turn, so your turn keeps going. Pass
background=falsewhen you really want to wait for the child. - A new
stop_subagenttool stops one child you spawned without ending your own turn and without touching its siblings: its parked questions close at once and its cancelled result still arrives as a follow-up. Unknown ids, children of another session, runs that already finished, and repeated stops report their real state instead of pretending a fresh cancellation, and a blocking run that has no separate handle is refused explicitly.
Fixes
- Stopping a subagent and resuming the same child no longer confuses the display: the replaced run's terminal still reaches you once, but it no longer classifies, summarizes or disarms the run that replaced it.
- A subagent's question is no longer swallowed: once a question race ends or the child is shut down, the next question from that same child still reaches you.
cetas-v0.11.0
General
Feats
- All surface can now use OpenAI/Codex hosted Web Search.
- Z.ai GLM Coding Plan subscribers now get the plan's three bundled remote MCP servers — Web Search, Web Reader and Zread.
Fixes
- Model calls now ride out network trouble instead of failing the turn.
- Answering one pending question no longer silently withdraws the others.
Bun Ver.(cetas-bun)
Feats
- Input typed while a turn is running is no longer dropped: it queues in order, stays visible as pending input, and starts as its own new turn as soon as the agent is idle — after an interrupt, a compaction or a failed turn alike — and only says the text was not delivered once three delivery attempts really failed.
- The status bar now shows what the active model brings: a
web_searchsegment while the model is searching, and a provider capability segment such as3/3 Official MCPfor the model's provider-owned MCP set. - Board work now drives the app status: running tickets read "Board: N running", and a Board waiting on your answer flips the status to blocked with the question it is waiting for.
- Any Board question can be escalated to the product owner in one click ("Ask ") from the ticket inbox, instead of being answered by a separate refiner role.
- Pi extension packages that declare a directory entry (
"pi": {"extensions": ["./dist"]}, as pi-web-access 0.46+ does) now load, and a package whose entry resolves to nothing fails on its own with a warning instead of breaking the whole scan. - Pi packages can now change their active tool set at runtime: the tool list the model sees, with descriptions, schemas and prompt hints, follows the active set rather than the full registry.
Fixes
- Subagent streams are clean: child-only facts (context occupancy, compaction progress) are filtered out before reaching the parent, and an event the host cannot parse names its own inner type instead of surfacing as a misleading "unknown type subagent_event".
- A closed or stalled Board tab can no longer queue unbounded frames or keep cetas from exiting, and a slow backend no longer stacks overlapping polls.
cetas-v0.10.14
Bun Ver.(cetas-bun)
Fixes
- The Board ticket sheet no longer fabricates user story lines.
cetas-v0.10.13
Bun Ver.(cetas-bun)
Feats
/sessionsnow has two scopes,Current FolderandAll(presstabto switch):Allmixes sessions from every project newest-first, labels each row with the folder it belongs to, and resuming a row from another project switches cetas into that directory — tools, workspace anchor and session bucket follow — before replaying that transcript.- Board tickets can now be brought to the Scrum Master: ask a question about blockers, dependencies or the next step from the ticket sheet, and the answer arrives as a background advice run that never changes the ticket.
- The Scrum Master answers with the ticket's real coordination facts already in hand (stage, dependency states, other running work, open questions) plus read-only tools to re-read them by topic, instead of rediscovering the board on every question.
- Board teams now have a Scrum Master next to the Product Owner, and role names, skills and MCP tool selections are configured per role, so the Board addresses members by name ("Answer as Product Owner") instead of by raw role id.
Fixes
- The Board dashboard now works in the npm channel, which runs on plain Node.
- Streamed tool calls are matched to the right row: a call arriving in fragments no longer adopts an unrelated pending call, and a missing provisional row can no longer break the turn's tool display.
cetas-v0.10.12
Bun Ver.(cetas-bun)
Feats
- A Board ticket is now carried by three accountable roles instead of one anonymous worker.
- Your configured MCP servers now reach Board team members.
- Board team settings are now per role and per project.
- A work profile (Software / Document / Analysis) changes what the team produces — the deliverable, the checks designed against it, and what verification means — without changing the team structure.
- Team questions now name their audience: requirement and design questions go to the Refiner, business trade-offs to you as Product Owner, and the inbox shows the route by member name instead of raw role ids.
- A new backlog item starts from a plain-language idea ("What do you want to build?"); the Refiner turns it into a three-line user story, rewrites the title, and fills in definition of done and priority.
- Work reports are recorded against the role that produced them, and Review falls back to the TE's result when no structured report was submitted, so a finished ticket never opens with an empty report.
- Opening the Board now tells you, in the session, that cetas is acting as your Product Owner for that Board and will coordinate your questions and requirements with the team.
cetas-v0.10.11
General
Fixes
- Nested tool calls made from inside
run_codeare now bounded to a fixed depth: a runaway chain stops with an invocation-limit result instead of recursing without end. - Tool arguments are now checked against the full JSON Schema 2020-12 profile before a tool runs. Tools whose schemas use
oneOf/anyOf/$ref,pattern, or numeric bounds now load correctly, and arguments that violate the schema are reported up front instead of failing inside the tool.
Bun Ver.(cetas-bun)
Feats
- A ticket can no longer be marked Ready until the story, description, implementation suggestions, and at least one definition-of-done item all exist — the Board tells you which field is still missing.
- Board questions now show who asked them and who they are addressed to, and answers record who answered; answering from the Board also posts an "answered" entry in the run's progress feed.
Fixes
- Cancelling a turn now verifies the shell command actually stopped: a graceful signal, then a hard kill with a bounded confirmation wait. Commands that ignore the graceful signal are killed and reported as stopped instead of leaving a live process (and its concurrency slot) behind.
- In PTC-only mode, calling a tool that is folded into
run_codenow returns guidance telling the model to call it throughctx.call(...), instead of a bare "not executed".
cetas-v0.10.10
General
Feats
- A conversation model and a decision model can now be chosen independently:
/decisionlists the provider's decision slots (with the active marker), rejects a chat slot,/modelrejects a decision slot, and the choice is stored next tomodelin~/.cetas/settings.jsonso the terminal and ACP hosts restore it on the next start. - Decision backends for more providers: OpenRouter
typesafe/jev-*models, OpenCode Zen's SystemOne endpoint, and a dedicated Typesafejevprovider, each with its own credentials, timeout handling, and provider-specific errors instead of borrowing another provider's backend.
Fixes
- A model-stream parse failure now reports the parse error plus the payload head and tail, so malformed tool arguments are diagnosable from the error itself.
Bun Ver.(cetas-bun)
Feats
/boardnow opens the Board dashboard in your browser, and each ticket runs as a background worker with its own durable session.- Follow Board work from the terminal: the Activities header shows the shaping or working ticket, its step count, elapsed time, and current tool or latest activity, without opening the dashboard.
- The agent can answer "why does this code exist?":
board_workreports current tickets, finds tickets whose committed review mentions a path or ticket id, and shows one ticket's review report and feedback; opening the Board also tells the agent once to check provenance before deleting or reverting work. - Splitting an oversized ticket now cancels the source ticket instead of deleting it, preserving its description and attempt history.
Fixes
- Switching the model manager stops the open Board and says to reopen it with
/board, instead of leaving a stale dashboard behind. run_codenow selects each scoped tool from multi-tool providers, can runbashinside the nested scope without exposing shell session helpers, caps model-visible compiler diagnostics at 8K characters, and rejects untransportable attachments with an explicit error instead of dropping them.- Failures in background work (live model-catalog refresh, Board command replies) are reported as errors instead of becoming unhandled rejections that take down the terminal.
ACP Ver.(cetas-acp)
Feats
- The saved
/decisionmodel survives editor restarts: cetas-acp restores the decision slot on every new session, keeps it selected (decision off) when the provider is temporarily missing instead of silently switching backends, and tells you to switch with/decisiononce the provider returns.
Run Ver.(cetas-run)
Feats
- The built-in
cetas-aboutmanual now carries the exactcetas-runversion, so asking the agent which version it runs answers with the real distribution version.
cetas-v0.10.9
Bun Ver.(cetas-bun)
Feats
- Board tickets can now be executed: start a Ready ticket from the Board and Cetas runs it as a background worker, moves it through Running to In review, and files the outcome in the Board Inbox. One action starts the next Ready ticket, and finished results can be dismissed once handled.
- Pending questions can be answered with the new
/questionscommand and/answer: both open the same reply panel used for live asks, with the correct input, confirm, or option controls./board stopcloses all local Board servers. - Background shell sessions are now available: a long-running command can be started with
bashin the background and checked, waited on, or stopped withbash_status,bash_wait, andbash_killinstead of blocking the turn. - PTC
run_codenow accepts a complete.mbtxprogram throughsource— including imports andmain— in addition to the inline handler body, and gives a clear correction when both are supplied or when a function signature is sent as inline code.
Fixes
/boardnow serves the full interactive Board app from the Bun build instead of the earlier minimal snapshot page, so the same Kanban, ticket inbox, and ticket controls work in packaged installs.- OpenCode Zen responses that send explicit null
tool_callsor null reasoning fields no longer fail with a response parse error; null is treated as an absent field and the normal fallback still applies. - The PTC status segment now shows
Hybridinstead ofPTC: Hybrid, matching the other mode labels.