Worca
changelog · v1.5.0 → v1.6.0
What's new · v1.6.0

What's new
in Worca.

Ask Worca can read the web, each teammate can pay with their own key, free OpenRouter models are counted, and errors now say what to do next.

Web accessYour own keysFree modelsClear errorsworca runsSettings tabs
Ask Worca chat — a card asking to read nodejs.org, with the exact URL and Deny, Always allow and Allow for this chat
NewWeb access
NewApprove in the chat
Ask Worca

Ask Worca can read the web.

Want an answer backed by the real docs page?
Now Ask Worca can read public web pages. Sites on your list open right away. For any other site it asks first, in the chat, and shows the exact address it wants to open.

off until you switch it onallow a site once or alwaysprivate networks refusedeach chat keeps its own model
A new site, approved in the chat
Ask Worca wants to read a new site Web
nodejs.org
https://nodejs.org/api/stream.html#streampipeline
DenyAlways allowAllow for this chat

Read now · other chats still ask

No site on the list yet means Ask asks every time.

Settings, Ask Worca tab — Web access switched on, with two allowed sites and an optional search endpoint

Settings › Ask Worca: switch it on and list the sites it may read without asking.

Team

Everyone pays with their own key.

One shared Worca, but whose key pays for the run?
Now a hosted Worca can keep each person's model key or Claude subscription in a separate key service. Worca holds no key: each agent gets a short-lived pass, and the real key is added on the way out.

costs split per personagents never see a keyClaude subscriptions work toonothing changes on a laptop
What an agent holds, and what the provider sees
API key wbt_7f3a… one run onlysk-or-…9d92 Ada's own key
Inside the agent

The pass stops working the moment the agent exits.

What agents can no longer reach
Your model keyNOT IN WORCA — kept by the key service
Your Claude subscriptionONLY FOR YOUR OWN RUNS
Someone else's keyNEVER — each run bills its starter
Worca refuses to start if a key is in an agent's reachchecked at boot · ✓
Models

Free OpenRouter models, with a daily counter.

Ran out of free requests halfway through a run?
Now the sidebar shows how many of today's free OpenRouter requests are left. When they run out, the run pauses at once and says when they come back, instead of retrying all night.

1000 free requests a daywarns before you startpauses with the reset timebusy models retried, then paused
A day of free requests
OpenRouter free todayRunning
941 / 1000 leftresets 00:00 UTC
Free requests for today are used up — they reset at 00:00 UTC, in 3h 12m.
  1. 1Each call on a free model counts down
  2. 2At zero the run pauses, no retries
  3. 3Resume after the reset, or pick a paid model
Sidebar — spend this month and OpenRouter free today, 941 of 1000 left

The sidebar, under this month's spend: today's free requests left.

Errors

Errors that tell you what to do.

“claude exited with code 1” — and now what?
Now Worca checks that Claude Code is signed in before it starts a scan or a new agent, and says so in plain words with a link to fix it. A model your setup can't use gets a clear note that stays in the chat.

checks sign-in before startingone link to fix itthe note survives a reloadfailed pushes retried once
Connect Claude Code dialog — a new Then sign it in step, and a red line: installed but not signed in yet

Connect Claude Code: a new sign-in step, and a status that tells the two apart.

What used to go wrong quietly
Workspace scanBEFORE — failed 30 s in
Ask WorcaBEFORE — the raw error as the answer
Getting startedBEFORE — ticked while signed out
Now: stopped before it starts, with a way to fix itSign in… ✓
Terminal

See your runs from the terminal.

Which run paused, and why, when all you have is SSH?
Now worca runs lists every run with its status, and worca runs <id> shows one in detail. It reads Worca's records directly, so no Worca server needs to be running.

no server neededfilter by status or projecta short id is enoughJSON for scripts
Every run, newest first
$ worca runs ID STATUS STARTED PROJECT TITLE c88a0c7e paused (usage limit) 40m ago nimbus-crm Rate-limit the contact form 7b3fde66 done 1d ago lumen-docs Sitemap from git dates a72fd3ac done 2d ago nimbus-crm CSV export for contacts

A paused run shows why, right next to its status.

One run, in detail
$ worca runs c88a Rate-limit the contact form status paused (usage limit) free requests used up — reset 00:00 UTC phase implement started 40m ago (Sun Sep 27, 19:28) cost $0.00 · across 12 steps branch main → worca-cc/rate-limit-the-… changes +14 -0

Any unique start of the id finds the run.

Settings

Settings, sorted into tabs.

General had grown to thirteen cards?
Now budgets and schedules live under Runs, the assistant's limits and web access under Ask Worca, and the helper models under Models. Tabs run from simple to expert, left to right.

8 tabs, simple to expertbudgets under RunsAsk Worca has its own tabselect all projects at once
Settings, Runs tab — Budget and cost limits, under a tab strip from General to Providers

The new Runs tab: cost limits, scheduled runs and chat notifications.

Where the cards went

Runs

Budget & cost limits from General
Scheduled runs from General

Ask Worca

Limits & web access from General

Models

Title and Auto models from General

General keeps the everyday cards: appearance, folders, getting started.

And the receipts

Shipped, tested, verified live.

7,922
Tests green40 new suites · +7,028 test lines
+19.1k
Lines landed224 files · 21 commits
16
PRs mergedsince v1.5.0 · 3 days
43/43
Key service checkedlocal containers · rogue-agent probes included
0
Model keys inside Worcaone pass per agent · revoked on exit
5·10·20
Seconds between retrieswhen a model is busy · then the run pauses
WORCA · changelog · v1.5.0 → v1.6.0 Sep 24 – Sep 27, 2026