Skip to content

Releases: artysan-code/agents-multi

v1.2.1-rc.6

v1.2.1-rc.6 Pre-release
Pre-release

Choose a tag to compare

@artysan-code artysan-code released this 16 Oct 14:55

Fixed

  • node: the image carries railway, gitea-mcp and Railway's skill, pinned and checked (c59c1f2)
  • web: the voice note is always offered, with the mic icon; dictation gets its own (298e6be)

v1.2.1-rc.5

v1.2.1-rc.5 Pre-release
Pre-release

Choose a tag to compare

@artysan-code artysan-code released this 16 Oct 12:40

Added

  • vault: a vault of its own for server nodes, with its own key and a selection of secrets (55d16f6)
  • node: a headless node's children reach the brain MCP server with the node token (480c7fa)
  • agents: offer the agents server and its panel in Claude Desktop (4e52140)
  • agents: node_list and node_propose for a coordinator (4cfc543)
  • node: pair a server from the console's Add a server (4f7d6de)
  • brain: a node token scope, and pairing a server with its key (946214c)
  • web: the Agents view, live from the service's stream (3c6c246)
  • node: publish this machine's runs and check the phone's stop (f507252)
  • brain: the agents of every machine, their stream, a signed stop and a resume proposal (1eddc82)
  • doctor: node.seed, unknown machines and old client seeds (a6a6cdc)
  • node: agents node seed, the ignored env files through the vault (8ce7fcb)
  • node: clone a job's repository on first need, only from repos or gitHosts (04e771c)
  • agents: an MCP App panel of the session's children, runs, requests and limits (d379675)

Fixed

  • node: what a client's child waits on is not relayed to the phone (29e56af)
  • node: a headless node talks to the brain with its node token only, never the vault's (0a064c1)
  • node: a client's run goes with opaque ids; one ownership rule; agents node hosts (7855fba)
  • brain: runs tables in the migrations, stops in their own module, one open resume per run (1da26a6)
  • web: a server's pairing code is refused on Machines, it belongs to the console (ffea7c0)
  • pair: the console takes the fingerprint from the key it seals to, not the service's (bb70f3b)
  • launcher: no --mcp-config before a subcommand, or it swallows its name (a763f0a)

Documentation

  • adr: Telegram dropped, the web app is the phone's channel (aba9d65)
  • adr: F2 and the third round as built (8c32bf5)
  • readme: clone on first need and agents node seed (6b574c7)
  • adr: the third round's contract and F2's shape (4ea6ad3)

v1.2.1-rc.4

v1.2.1-rc.4 Pre-release
Pre-release

Choose a tag to compare

@artysan-code artysan-code released this 15 Oct 22:42

Added

  • web: swipe tabs and rows, compact tasks, chat actions, voice, forget a machine, v2 yes (c76e20e)
  • brain: voice notes, cancel a turn, rename a chat, forget a machine (6f7a8c8)
  • trust: the yes binds the request's words, signed job declines, revocations in the vault (50a3305)

Fixed

  • node: confine ffmpeg, cap voice notes, keep the undo when the phone hides the page (4bd3755)

Documentation

  • web: from the phone covers swipe, voice, chat actions, forgetting a machine; tests (b35787f)
  • adr: 0014, as built for voice, cancel and forget (d1e0c36)
  • adr: 0014, second round: voice, the chat's actions, forgetting a machine, a tighter yes (8670f08)

v1.2.1-rc.3

v1.2.1-rc.3 Pre-release
Pre-release

Choose a tag to compare

@artysan-code artysan-code released this 15 Oct 21:54

Added

  • ui: the web app redesigned: tab bar, rich chat, waiting with passkeys, pairing, themes (f68c7fe)
  • cli: agents passkeys and the console's Passkeys section (b1591a1)
  • brain: what waits, passkeys and the phone's answers, kept for the nodes to check (af831f1)
  • webauthn: the phone's passkey checks, endorsement and verifyJob via a passkey (c788efa)
  • console: the Chat on the service, turns pinned to this machine and relayed as NDJSON (4565509)
  • node: pair a machine with a code, service routes, agents node pair, console and web app (4b751e3)

Fixed

  • site: quote the hosted page's description, a colon broke its front matter (0eac6b5)
  • node: see the machine before pairing it, endorse only the passkey that was shown (dbba4ab)
  • ui: drop an attribute the Preact types do not know (40d0da5)

Documentation

  • starting on a hosted service, and the privacy notice for chats, machines, push and passkeys (565ecda)
  • from the phone, the redesigned web app (README, site EN and IT) (3637df7)
  • the phone's yes in the README, ADR 0012 and the site's nodes page (4cfcf72)
  • adr: 0014, the API of G4, G5 and G1b, and G7 (33849dc)

v1.2.1-rc.2

v1.2.1-rc.2 Pre-release
Pre-release

Choose a tag to compare

@artysan-code artysan-code released this 15 Oct 20:56

Added

  • ui: the web app, a second entry for the phone (chat, tasks, brain, machines, PWA) (28bd2ff)
  • brain: serve the web app under /app, with the sign-in redirect and the session for /api (190e4ba)
  • brain: chats, the node's turn routes and Web Push (ADR 0014 G1, G3) (02047c5)
  • node: answer the service's chat turns with the console's runner (2aa979e)
  • ui: minimal Tasks and Brain views behind More, with the brain's board link (3fef594)
  • node: a server set up by one command, Claude's tokens in the vault (ADR 0013) (91db8b4)

Fixed

  • node: one turn at a time, a heartbeat while answering, a failed answer keeps what it said (ce3efab)
  • brain: the web session reads only tasks, brain and nodes; chats and push are their own (3d974d6)
  • console: doctor fixes say how to run them, refusals read as messages, dead plugins API removed (bb0e029)
  • node: a container's node counts its own memory, init takes the brain, a server's doctor (382203c)
  • node: the vault reaches a node on Coolify, and the doctor says when it does not (33907a2)

Performance

  • release: the rpm is back, Tauri CLI 2.12.3 writes it in seconds (stable versions only) (cb722b5)

Documentation

  • from the phone, the web app at /app (README, site EN and IT) (03020c7)
  • adr: 0014 accepted, with the API of G1 to G3 (6eafc8c)
  • adr: 0014, from the phone: the web app on the service, the orchestrator on a paired machine (7ff287a)
  • adr: 0013, a server node without a terminal (proposed) (b4c8ff6)

v1.2.1-rc.1

v1.2.1-rc.1 Pre-release
Pre-release

Choose a tag to compare

@artysan-code artysan-code released this 15 Oct 15:29

Fixed

  • node: a node token of its own, sign-in with no browser, the vault in a folder of its own (642ea03)
  • console: the console opens the consent page itself, the page shows the link if it cannot (#14) (6f32394)

v1.2.0

Choose a tag to compare

@artysan-code artysan-code released this 15 Oct 14:57

Added

  • node: the server node's image, seccomp and AppArmor profiles, and compose (ADR 0012) (afc5ac6)
  • nodes: the doctor probes a headless node's sandbox; the site's page on nodes (EN, IT) (c3b36a0)
  • nodes: agents nodes — machines and jobs, accept signs here; the doctor's node checks (6ed5d47)
  • node: agentd takes the owner's jobs and follows its runs; agents node (ADR 0012) (c86fe4e)
  • node: the client of the service, a node's facts and its sandbox probe (ADR 0012) (fac63ee)
  • node: work that moves, a sandbox for headless children, the vault key in a file (ADR 0012) (38ca30f)
  • brain: the service keeps each account's nodes and jobs (ADR 0012) (0ad70df)
  • ui: Codex and stale readings on Accounts & limits; the chat list folds when narrow (4ccc169)
  • ui: the console cut to Chat, Runs and Accounts & limits; the rest behind More (d7a49e0)
  • routines: workflow steps of a routine get the reviewer's rules; reviewer.json example (1bc879c)
  • site: the docs in Italian too, with Starlight's locales (English at the root, Italian at /it/) (b11983c)
  • routines: the reviewer — rules and a judge answer what unattended runs ask for (ADR 0011) (d566b12)
  • platform: route process reads (parent, start, cmdline, age, running) through platform.ts (d8fb161)
  • routines: --workflow takes a saved workflow by name, with --var, checked at add time (67405ad)
  • platform: one module for the OS-bound operations (keyring, spawn, ps, notify, open) (8b3a87b)
  • workflows: saved workflows as skills — save, load by name with placeholders, example (1241e59)
  • limits: limits manager, account proposals and per-project default accounts (a5cd6cf)
  • hub: routines (cron, at, run events) and the unattended run policy (4473070)
  • codex: a Codex child gets the profile's MCP servers, allowed tools only (28ee180)
  • providers: one Provider interface, unified limits, agents limits and a limits tool (110cab4)
  • doctor: gateway checks; deny rules keep a session from calling the gateway by hand (29552bc)
  • console: the console supervises the MCP gateway; agents gateway and agents mcp warm (d836f95)
  • mcp: lazy gateway core, backend runner and the CLI side of its launch config (5cb92b4)
  • agents: isolate the hub by coordinator session, with orphan adoption (f31bdb0)
  • agents: Codex as a second provider: pinned CLI, per-profile account, hub child, limits (3428626)
  • mcp: keep the registry's servers in .claude.json for profiles with Desktop (200153c)
  • mcp: hand the CLI its servers at launch with --mcp-config, not a copy in .claude.json (ca626a8)

Fixed

  • node: the node image runs the official Node 24 LTS, pinned and checked, not Debian's Node 20 (faa2d4b)
  • console: only the machine's console runs the schedules and keeps the MCP gateway (f61c18f)
  • vault: vault run takes only the wrangler in the project's own node_modules (9ca7319)
  • limits: a reading older than half an hour blocks nobody; agents limits shows its age (f4e4d07)
  • routines: a finished child frees its slot; a proposal lapses when its routine starts (a308272)
  • codex: approve the allowed MCP tools; tasks reads are the Codex child's tools (615bef6)
  • mcp: doctor validated _npm servers after withNpm had set command (5f40ca8)
  • gateway: own fingerprints, server-side _deny, derived deny rules, file log (e6d491b)
  • gateway: shared start, cache, drain and orphans fixed in the server; integration test (8cf8222)
  • ci: statusline test finds jq where the runner installs it (8742192)
  • agents: make a Codex account's folder before codex runs (67ba797)
  • agents: a child or run without a project belongs to its folder's project (c35fecd)
  • agents: isolate the hub's children and runs by project (5388fd1)

Performance

  • usage: incremental ingest by byte offset, driven by the watcher; inotify narrowed (5c328ea)
  • mcp: the Code tab's .claude.json gets the gateway's http entries (28e11d0)
  • agents: a child's events are read from where the last look stopped (f31cbac)
  • mcp: third-party npm servers installed at their pin and started with node, not npx (a956d61)
  • mcp: launch.sh execs the server after the vault secret is resolved, no Deno wrapper left alive (cf4f119)
  • ci: jq and shellcheck as pinned, sha256-verified binaries fetched beside gitleaks, no apt-get (d6a96d0)
  • cli: run the doctor's groups and the status reads together (e4aaae1)
  • ci: release runs only the Rust half of the gate, without jq and shellcheck; caches corepack (5a0e767)
  • ci: check.sh runs its Deno, shell and Rust groups at once, with a --desktop mode (0de1446)

Changed

  • cli: usage.ts split into db, ingest, report and print; install's steps as a list (3a13884)

Documentation

  • nodes in the README; ADR 0012 with what F1 settled (dadfd70)
  • adr: 0012 — agentd, the service, and work that moves between machines (e76f4ee)
  • the console's three views and More in the README, AGENTS.md and the site (dd9a836)
  • adr: 0011 the reviewer — rules and a judge for unattended runs (08d5faf)
  • providers: ADR 0007 closes the MCP and limits issues, README on providers and limits (a1c710a)
  • adr: ADR 0009 Agents Multi 2, one agent you talk to (9b0bfc1)
  • mcp: ADR 0008 says what protects what; README on deny and warm --force (6f81b63)
  • agents: the gateway invariant (29b924a)
  • mcp: ADR 0008 and README for the lazy gateway (96b216d)
  • adr: Codex provider is ADR 0007 (0d03a0c)
  • mcp: ADR 0006, README, site and onboarding on MCP at launch (9a16ddb)
  • agents: group AGENTS.md rules by topic and tighten the wording (73553a9)

v1.2.0-beta.6

v1.2.0-beta.6 Pre-release
Pre-release

Choose a tag to compare

@artysan-code artysan-code released this 15 Oct 14:42

Fixed

  • node: the node image runs the official Node 24 LTS, pinned and checked, not Debian's Node 20 (faa2d4b)

v1.2.0-beta.5

v1.2.0-beta.5 Pre-release
Pre-release

Choose a tag to compare

@artysan-code artysan-code released this 15 Oct 14:34

Added

  • node: the server node's image, seccomp and AppArmor profiles, and compose (ADR 0012) (afc5ac6)
  • nodes: the doctor probes a headless node's sandbox; the site's page on nodes (EN, IT) (c3b36a0)
  • nodes: agents nodes — machines and jobs, accept signs here; the doctor's node checks (6ed5d47)
  • node: agentd takes the owner's jobs and follows its runs; agents node (ADR 0012) (c86fe4e)
  • node: the client of the service, a node's facts and its sandbox probe (ADR 0012) (fac63ee)
  • node: work that moves, a sandbox for headless children, the vault key in a file (ADR 0012) (38ca30f)
  • brain: the service keeps each account's nodes and jobs (ADR 0012) (0ad70df)
  • ui: Codex and stale readings on Accounts & limits; the chat list folds when narrow (4ccc169)
  • ui: the console cut to Chat, Runs and Accounts & limits; the rest behind More (d7a49e0)
  • routines: workflow steps of a routine get the reviewer's rules; reviewer.json example (1bc879c)
  • site: the docs in Italian too, with Starlight's locales (English at the root, Italian at /it/) (b11983c)
  • routines: the reviewer — rules and a judge answer what unattended runs ask for (ADR 0011) (d566b12)
  • platform: route process reads (parent, start, cmdline, age, running) through platform.ts (d8fb161)
  • routines: --workflow takes a saved workflow by name, with --var, checked at add time (67405ad)
  • platform: one module for the OS-bound operations (keyring, spawn, ps, notify, open) (8b3a87b)
  • workflows: saved workflows as skills — save, load by name with placeholders, example (1241e59)

Fixed

  • console: only the machine's console runs the schedules and keeps the MCP gateway (f61c18f)
  • vault: vault run takes only the wrangler in the project's own node_modules (9ca7319)
  • limits: a reading older than half an hour blocks nobody; agents limits shows its age (f4e4d07)
  • routines: a finished child frees its slot; a proposal lapses when its routine starts (a308272)

Performance

  • usage: incremental ingest by byte offset, driven by the watcher; inotify narrowed (5c328ea)

Changed

  • cli: usage.ts split into db, ingest, report and print; install's steps as a list (3a13884)

Documentation

  • nodes in the README; ADR 0012 with what F1 settled (dadfd70)
  • adr: 0012 — agentd, the service, and work that moves between machines (e76f4ee)
  • the console's three views and More in the README, AGENTS.md and the site (dd9a836)
  • adr: 0011 the reviewer — rules and a judge for unattended runs (08d5faf)

v1.2.0-beta.4

v1.2.0-beta.4 Pre-release
Pre-release

Choose a tag to compare

@artysan-code artysan-code released this 14 Oct 13:19

Added

  • limits: limits manager, account proposals and per-project default accounts (a5cd6cf)
  • hub: routines (cron, at, run events) and the unattended run policy (4473070)
  • codex: a Codex child gets the profile's MCP servers, allowed tools only (28ee180)
  • providers: one Provider interface, unified limits, agents limits and a limits tool (110cab4)

Fixed

  • codex: approve the allowed MCP tools; tasks reads are the Codex child's tools (615bef6)

Performance

  • mcp: the Code tab's .claude.json gets the gateway's http entries (28e11d0)
  • agents: a child's events are read from where the last look stopped (f31cbac)

Documentation

  • providers: ADR 0007 closes the MCP and limits issues, README on providers and limits (a1c710a)