Changelog

What's new in Ergoly.

New features, improvements and fixes, every week.

Artifacts, approvals, and workers that manage their own tools

Four new capabilities change how workers interact with people, what they're permitted to do, and how they connect to outside tools — plus a new way to publish rich, shareable pages straight from a conversation.

Artifacts

Workers can now publish self-contained pages that live in the control panel at a stable URL. Each page is private to your organization by default, or shareable by public link. Ask your worker for a report, a dashboard, a chart — anything you'd want to pass around as a link — and it handles the rest.

Approval flows

Ask your worker to “get approval before” doing something and it posts Approve and Reject buttons in the conversation. Whoever presses one starts a new turn that records who decided and when, and the buttons retire the moment they're used.

Workers manage their own tools

Ask your worker in Slack to connect an app, take an API key, or reconnect a service. For sign-in apps it posts a link anyone in the conversation can approve; for key-based apps, paste the key and it's stored securely. Each worker stays in its own lane — organization-wide connections are still made on the Connections page.

Responsibilities and behaviors

Every worker now has two short, editable lists on its page in the control panel: what it's responsible for, and how it goes about its work. Both start empty and change nothing until you fill them in. Edit them yourself, or ask your worker to propose an update when you hand it something new to own.

Slack's new agent experience

New workers install as Slack's current agent experience. When you DM a worker you'll see just the conversation — no more separate Messages and History tabs.

Improvements

  • Rename connections. Connections can now be renamed from the Connections page.
  • Smarter channel onboarding. Invite a worker to a channel and it privately suggests to you what the room might be for, based on its name and members. Workers leave immediately if added by a Slack Connect guest.
  • Progress updates in place. Each turn's status is posted once and updated as the turn runs, instead of occasionally splitting into several messages.
  • Long turns no longer look frozen. A turn running past five minutes now shows a clear error state rather than appearing stuck.
  • Two accounts of the same app. You can now connect a second account of an app you already use — two Attio workspaces on different workers, for example.

Fixes

  • API key field names. Connecting an app by API key now sends the key under the field name that app expects. Apps that named the field differently were being refused.
  • Apps that need extra fields. Apps that need more than a key, like a region or subdomain, now get correct defaults when a worker connects them, and a failed check no longer leaves a stray account behind.

Workers can see images, and connections that stay connected

Workers can look at what you send them for the first time, and third-party connections are both faster to set up and much harder to knock over.

Workers can see images

A photo, screenshot or diagram attached to a Slack message — or stored in a worker's memory — now reaches the worker as an image it can actually look at, rather than unreadable data. Ask about a chart, a mockup or a whiteboard photo and get a real answer.

A faster Connect sheet

The app catalog on the Connections page now opens instantly and caches what it loads, removing the four-to-six-second wait every time you opened it.

Improvements

  • Clearer direct API connections. For services connected by base URL rather than from the catalog, workers now see the full registered address and know it's a direct API, so they build correct requests without guessing.

Fixes

  • Permission errors no longer disconnect. When a service refused one specific call, the whole connection was being marked expired. Now only a genuinely invalid or revoked credential disconnects; a missing permission shows up as a clear “not permitted for this call” and the connection stays live.
  • Reconnect links complete. Reconnecting a key-based app through its link no longer lands on a mismatch error when the reconnect actually worked.
  • Real @mentions. Workers occasionally posted mention markup as plain text, so the person was never notified. Mentions now render as real Slack @mentions.
  • Moving older API keys across. Keys for services outside the app catalog now carry over correctly when an organization moves to the new connection system.
  • Credentials kept out of logs. A failed command in a worker's sandbox could write an internal access token into the sandbox log. It no longer can.

Connections: hundreds of apps, one page

This release is about how workers reach the rest of your stack. A new connections system gives every worker access to hundreds of ready-made apps — Google Sheets, HubSpot, Linear and many more — along with custom MCP servers and any service with an API key, all managed from one Connections page.

A single Connections page

Each connection now shows what it is, which account is signed in, where it's used and whether it's healthy. Click one to finish setting it up or change it. Older connections move to a Legacy tab and keep working exactly as before.

The full app catalog

Adding a connection opens a picker organized by category, with popular apps up front and the entire catalog one click away. Custom MCP servers, your own OAuth app and raw API keys are always options.

Any API, by key

A service that isn't in the catalog can be connected with its API key from the same page. The key is stored securely and the worker can use that service's full API through it.

One way to use every tool

Workers list, search and run whatever their connections provide through a single built-in skill, with no per-service setup. Every turn, a worker knows exactly what it has access to.

Progress you can read

Progress updates now read as narrated reasoning: each step in plain English, a header that describes the work, and a clean close when the turn ends. No more internal step names.

Improvements

  • DM anyone. A worker asked to message a colleague can now DM anyone the bot can see, not only people tied to a client. If a delivery fails, the notice names the person rather than showing a Slack ID.
  • Set the escalation contact. Choose who a worker escalates to directly in its settings.
  • Inbound webhooks. Workers can create their own inbound webhook endpoints, so events from outside services can kick off work.

Fixes

  • Authenticated calls. Some outbound requests — web searches among them — were going out without their credentials and failing. Every credentialed call is now authenticated correctly.
  • API key page redirect. Admins who hadn't finished setup were bounced to the setup flow when creating an API key. The settings page now stays put.

Workers get their own email

Email sending is live, and workers are substantially more reliable at reading the conversation they're in, finding their own skills and knowing who's in the room.

Worker email

Every worker now has its own address and can send email directly. The control panel shows your organization's sending domain, its DNS records, each worker's address and an on/off switch, and every message sent is logged.

Workers know what they know

Each turn, a worker sees an index of everything in its memory, with a description for every file. It can check what it knows before saying it doesn't — fewer invented or inconsistent answers.

Better at Slack

Workers look up who's in a channel, who a person is and what was said earlier directly, without a detour. They also report progress mid-turn without sending a reply, and escalations reliably reach a person.

Scheduled tasks can do what a live turn can

A scheduled run can now post into a thread, a DM or a new message — anything a worker can do when you're talking to it.

Fixes

  • Thread context. Workers couldn't always read the thread they were replying in. They now have the full thread on every turn.
  • Knowing itself. Workers sometimes read their own @mention as someone else's and mixed up people in the room. They now know their own identity.
  • Channel setup menu. The menu shown when a worker first joins a channel wasn't appearing. It's back.
  • Connections and new-worker setup. Both pages could fail to load with an error. Fixed.
  • Switching organizations. Switching organization from the sidebar led to a missing page. It now lands where it should.
  • Company page scrolling. A wide org chart scrolled the whole page sideways. The chart now pans and zooms inside its own frame.
  • Silent Slack failures. When Slack rejected a reply, nobody found out. The worker now posts a notice that something went wrong.

The platform API, a simpler worker, and better scheduled tasks

Three large changes this week — a public API, a simpler worker underneath every teammate, and scheduled tasks rebuilt — plus a sweep of reliability fixes.

The platform API

Everything in your Ergoly environment — workers, clients, channel mappings, tasks, spend and connections — can now be read and changed through an organization-scoped REST API. Create and set up workers, map channels, schedule tasks and write memory with an API key. The API reference is linked from the control panel.

A simpler, more consistent worker

Every worker now runs on the same small set of core tools, with everything else expressed as skills it reads and follows. Workers behave the same way across your organization and are easier to extend.

Scheduled tasks, rebuilt

Each run gets its own Slack thread and can be interrupted with a reply. Tasks run as a named person, can target several clients from one definition, and can be seen and managed in the control panel.

The Company page

A new page in the control panel shows your workers, people and teams as an org chart. Create teams and open roles, add people from Slack, and drag to reorganize.

Workers can read app messages

When an app posts a rich message in Slack — a Linear card, a form submission, an alert — the worker now receives the whole thing, not just the one-line preview.

Improvements

  • Choose your avatar style. Pick your organization's avatar style in settings; it applies to every worker straight away.
  • App icons set automatically. Installing a worker into Slack now sets its icon for you, with a button to re-push it if it changes.

Fixes

  • Long turns complete. A model step longer than a minute could derail a turn. Long turns now finish correctly.
  • Separate conversations for parallel runs. Runs of a scheduled task that fired at the same time could share one conversation. Each run now gets its own.
  • Usage metering. Per-customer usage was being under-recorded. It's now accurate.
  • No more stuck approvals. A stuck approval state could hold a worker indefinitely. The cause is fixed.
  • Client channels recognized. Workers sometimes treated a client channel as a private DM and declined to use that client's connections. Fixed.
  • Timeouts named correctly. A scheduled task that ran out of time now reports a timeout, not a generic failure.
  • Control panel stability. Crashes on the organization dashboard and the worker page are resolved.

Streamed replies, richer output, and a reliability sprint

The biggest change yet to how your worker speaks in Slack, plus a round of fixes aimed at the failures we heard about most.

Live streamed replies

Instead of sending several messages while it works, your worker now posts one message that updates in place. Named progress steps appear as they happen, then the answer streams in underneath. The channel stays readable and you always know where things stand.

Tables and files

Workers can send properly formatted tables and upload files directly into Slack. A comparison, a list of records or a report arrives as a real table instead of a wall of text.

One place for memory

The Knowledge tab in the control panel now shows a worker's memory as a single file tree with named folders, instead of four separate views.

Improvements

  • Faster long tasks. Workers run longer scripts more efficiently, so big tasks finish sooner.

Fixes

  • No more phantom deliveries. After a failed turn, a worker could claim work was waiting in a thread where nothing had been posted. It now knows whether its last reply landed.
  • Quotes no longer cut replies short. A reply containing a quotation mark was being truncated at the quote.
  • Scheduled tasks get the full time. Task runs were stopped after a minute. They now get the same 30 minutes as a live turn.
  • Listen-only means listen-only. Workers set to listen without speaking could still post in some cases. No longer.
  • Accurate explanations. Workers sometimes told people a message had been suppressed when it had been delivered. They now describe their own behavior correctly.
  • Recovering from stuck states. Many stuck-worker reports traced to one family of bugs, now reworked. Workers recover from these on their own instead of waiting for a reset.
  • Messages during start-up. Two messages arriving while a worker was waking could cause the second to fail. Both are now answered.