Skip to content

Releases

cetas-v0.11.3

Choose a tag to compare

@github-actions github-actions released this 11 Nov 10:28

General

Native Ver.(cetas-native)

Feats

  • Cetas Native now installs on Windows x64 in one command: install.ps1 resolves 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.zip or SHA256SUMS is 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.exe and cetas_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 --version and cetas run --version itself, so a damaged or mismatched download fails at install time instead of on your first launch.
  • install.sh now covers Windows as well (Git Bash, MSYS2, Cygwin) and installs the same four files; -y/--yes makes it suitable for unattended setups, and it warns you when the install directory is not on PATH or when another cetas would shadow the new one.
  • install.sh shows 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-acp is covered by the same one-command install on Windows and Unix: the installer verifies the release checksum and then runs cetas acp --version for 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.exe in the same folder as the cetas_moon.dll it loads, so an ACP host installed by the script works without extra manual placement.
  • cetas-acp is produced by the new size-first native build, so its download is smaller than in previous releases.

Run Ver.(cetas-run)

Feats

  • cetas-run is delivered by the same verified installer on Windows and Unix, which runs cetas run --version after copying the files, so a broken one-turn runner is caught at install time.
  • The Windows package keeps cetas-run.exe beside the cetas_moon.dll it loads, so scripted runs work straight after installation.
  • cetas-run is produced by the new size-first native build, so its download is smaller than in previous releases.

cetas-v0.11.2

Choose a tag to compare

@github-actions github-actions released this 11 Nov 09:37

General(Include Native Ver)

Feats

  • The native terminal now runs on Windows: cetas.exe is a cgo-free build that loads the Cetas core from a companion cetas_moon.dll, and the Windows download ships cetas-acp.exe and cetas-run.exe in the same folder, so cetas acp and cetas run work 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. Esc clears 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 against SHA256SUMS, supports --version and --dir, installs all three side by side, and warns you when an npm-installed cetas would shadow the native one on PATH.

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-bun starts on Apple silicon instead of being stopped at launch by the system.

cetas-v0.11.1

Choose a tag to compare

@github-actions github-actions released this 10 Nov 09:51

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 cetas terminal (new Alpha build for macOS and Linux, shipped as cetas) 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=false when you really want to wait for the child.
  • A new stop_subagent tool 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

Choose a tag to compare

@github-actions github-actions released this 06 Nov 03:35

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_search segment while the model is searching, and a provider capability segment such as 3/3 Official MCP for 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

Choose a tag to compare

@github-actions github-actions released this 29 Oct 08:18

Bun Ver.(cetas-bun)

Fixes

  • The Board ticket sheet no longer fabricates user story lines.

cetas-v0.10.13

Choose a tag to compare

@github-actions github-actions released this 29 Oct 07:22

Bun Ver.(cetas-bun)

Feats

  • /sessions now has two scopes, Current Folder and All (press tab to switch): All mixes 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

Choose a tag to compare

@github-actions github-actions released this 28 Oct 06:03

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

Choose a tag to compare

@github-actions github-actions released this 27 Oct 10:33

General

Fixes

  • Nested tool calls made from inside run_code are 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_code now returns guidance telling the model to call it through ctx.call(...), instead of a bare "not executed".

cetas-v0.10.10

Choose a tag to compare

@github-actions github-actions released this 25 Oct 18:36

General

Feats

  • A conversation model and a decision model can now be chosen independently: /decision lists the provider's decision slots (with the active marker), rejects a chat slot, /model rejects a decision slot, and the choice is stored next to model in ~/.cetas/settings.json so 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 Typesafe jev provider, 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

  • /board now 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_work reports 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_code now selects each scoped tool from multi-tool providers, can run bash inside 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 /decision model 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 /decision once the provider returns.

Run Ver.(cetas-run)

Feats

  • The built-in cetas-about manual now carries the exact cetas-run version, so asking the agent which version it runs answers with the real distribution version.

cetas-v0.10.9

Choose a tag to compare

@github-actions github-actions released this 23 Oct 11:12

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 /questions command and /answer: both open the same reply panel used for live asks, with the correct input, confirm, or option controls. /board stop closes all local Board servers.
  • Background shell sessions are now available: a long-running command can be started with bash in the background and checked, waited on, or stopped with bash_status, bash_wait, and bash_kill instead of blocking the turn.
  • PTC run_code now accepts a complete .mbtx program through source — including imports and main — 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

  • /board now 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_calls or 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 Hybrid instead of PTC: Hybrid, matching the other mode labels.