Skip to main content

0.2.23

Behavior changes​

  • a web-publish plugin pack plans, builds and checks a business website from a brief, with approval steps before build and release and a local-folder default for publishing; adapted with permission from passeth/business-motion-websites (MIT).
  • the Korean docs site now marks pages that are not translated yet with a "translation pending" notice above the English text, and flags Korean pages older than their English source, instead of silently showing English.
  • the docs home, site tagline, llms.txt and README describe elanous with the current one-line definition, and the Releases menu opens the release list instead of the oldest release.
  • both graph canvases (editor and live run) highlight a hovered node's direct connections, dim the rest and draw connected edges as gold flowing lines; design credit to Gongnyang AI Lab in the canvas and NOTICE.
  • typing after "/" or pressing up/down in the TUI slash picker no longer clears and repaints the whole screen.
  • the first-run notice that error reports are on by default now follows the user's language (en, ja, zh) and keeps the off command verbatim.
  • the TUI keeps a single "new version installed" line and updates it in place instead of stacking a warning each time the installed version changes.
  • the CEO loop card says no schedules are registered instead of a bare 0 when the schedule list is empty.
  • the PWA treats /board like the other TUI-only slash commands.
  • when the model runs out of tool turns without an answer, the reply now opens with a plain sentence in your language saying what happened and what to ask next, instead of an internal English marker.
  • elanous release run --publish-at <iso> waits after approval and checks until the promised time before publishing; an invalid or non-existent time is refused before anything runs.
  • a release checklist cell can be marked --kind postpub (measured after publication); the release gate lists such cells separately and no longer blocks publication on them.
  • elanous mcp login signs in with an OAuth device code when no browser is available (or the server only offers device login), and on a desktop lets aside approve the browser step, falling back to the default browser.
  • two public sample knowledge packs (semiconductor process basics from public sources, and a B2B sales playbook) install from a signed market with skills install --market, and CLI chat can query installed packs and cite them.
  • when a remote harness run is stopped by its launch check, the failure reason now names the blocking check (for example no target paths) instead of an unreadable stage.
  • elanous release resume --waive <node> --reason <text> resumes a stopped release past a failed display check (mac smoke or TUI) without re-running it, records the original failure, and lists the reason under Known issues in the public notes.
  • the PWA Loops view gains one resource node that shows seats, jobs, leases and queued cells from the same traffic decision the scheduler uses, served read-only at GET /v1/loops/resources.
  • outbound messages can name a main and a backup channel per message kind or role (the backup is tried only if the main fails), plugins can add channel connectors, and a new public channel setup guide covers Telegram, Discord and Pushcut.
  • elanous tasks hand --child-llm <provider>/<model> [--child-llm-effort <level>] launches the run with that implementation model, records it on the task card, and reuses it on relaunch; without the flag the command and card are unchanged.
  • draft harvest and resume runs now mark the draft they own with a «🔧 in progress — owner, run» label and comment, and clear it when that run ends; manually released claims and other seats' claims are left alone.
  • OpenRouter implementation children now receive the requested tool choice (forced choices become auto for Kimi in thinking mode); requests for other providers are byte-identical.
  • an OpenRouter implementation child that answers with text only and has not called any tool is asked up to twice to actually call a tool before the turn is accepted; other providers keep the current behaviour.
  • when a large pull request is reviewed in several chunks, each chunk now gets the reviewer context for its own files (still capped per chunk), so the reviewer sees all of it instead of the same first 12,000 characters; single-chunk reviews are unchanged.

Plus 276 internal changes.