Skip to content

v1.0.0-rc.2

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Nov 04:53
· 121 commits to main since this release
dfb0c9a

Before upgrading. Two migrations run at start, and the database moves to
0085_approval_rule_account. 0084_brokered_accounts creates a new, empty brokered_accounts
table, which fills as people open an app's page in Connections. 0085_approval_rule_account adds
a nullable account column to approval_rules. No existing row is rewritten or backfilled,
nothing is dropped and no existing constraint changes. A person's existing connection to an app is
untouched, and calls through it run as before. Going back to 1.0.0-rc.1 or 0.3.4 after people
connect more than one account of an app is not seamless: a rule saved for one account applies to
every account of that app, and Disconnect can leave an extra account connected at Arcade, so
restore the backup taken before the upgrade instead. Four things change for an existing
deployment:

  • OpenBot Desktop updates its back end to CopilotKit Intelligence 0.16.0-rc.10 at the next Start,
    saying "Updating the back end to 0.16.0-rc.10. Its data stays." With it, a first back end setup
    downloads all of its images through downloads.copilotkit.ai first, where its own images came
    straight from ghcr.io and Docker Hub, and a setup step that fails reports its own error, which
    OpenBot's log keeps (below).
  • The Helm chart's bundled back end (the intelligence subchart) is 0.16.0-rc.10, from rc.9.
  • The first time anybody opens OpenBot in a browser or in OpenBot Desktop after the upgrade, every
    built-in component description nobody has edited takes this release's wording, so Bots read the
    new Notice, Checklist, Record, Headline figures, Data table, Bar chart, Donut chart and Progress
    against target descriptions (below). Until then, Bots keep the old wording. A component whose
    description an admin saved, or that an admin published or unpublished, on Admin → UI components
    keeps what they chose. Each change is one row in Admin → Audit, "Update a component's
    description", started by this deployment. In the personal edition every built-in description
    follows, and Activity leaves these rows out.
  • On OpenBot Desktop, a Bot on LangChain that follows the installer has "Powered by LangChain
    (LangGraph)" in its subtitle changed to "Powered by LangChain" at the next Start, keeping the rest
    of the subtitle, and a Bot picked in setup before 0.3.3 and named "LangChain (LangGraph)" is
    renamed "LangChain". A Bot whose connection you set yourself keeps its subtitle.

Apps and connections

  • Connect more than one account of an app. Once an app is connected, its page in Connections,
    and Admin → Plugins for an admin's own account, offers Connect another account, on Composio
    and Arcade. Pressing Connect again used to be refused with "You already have an account connected
    to Gmail. Disconnect it first if you want to connect a different one." With several accounts the
    page lists each by its address, with Make default and a Disconnect that ends only that
    account. An app whose team account is shared still has one account.
  • A Bot can use the account a request is about. It is told the addresses of your accounts at
    that app; with none named it uses your default, the first you connected until you pick another.
    A name that isn't one of your accounts is refused, and nothing is sent.
  • An approval names the account ("Research Bot wants to send email from … on Gmail"), and Always
    allow here saves the rule for that account only, shown as "from" and the address under the rule.
    Once you connect a second account of an app, your own rules that let Bots act on that app without
    asking stop applying, so Bots ask again for each account. Rules that ask or hand off, and team
    rules, still cover every account.
  • Apps that need a key say so before you connect (on Composio). In Browse apps, an app you
    connect with a key reads "Needs a key from 1Password", and apps you sign in to are listed first,
    where the list was by name alone. Its Connections tile says the same until it is connected, and
    its page says "Needs a key from 1Password. Connect shows where to get one.", where it said the app
    "connects with a key you already have".
  • The key form says where the key comes from. Above the boxes, Connect says "1Password doesn't
    offer a sign-in here, so it connects with a key from your 1Password account.", what to do at the
    app, and Get a key from 1Password, which opens the app's own page, for 33 of the most-used key
    apps and any app whose listing publishes a link. Box labels read in plain words ("Access token"
    for "Bearer Token", "Web address" for "Base URL"), and help text that named Composio says
    OpenBot.

OpenBot Desktop

  • A back end setup that stops says why. OpenBot's log now records how every back end setup,
    start, update and stop ended: how long it took, its exit code, what its report says went wrong
    and the end of its error output. A setup that stopped used to leave nothing in the log. The card
    says whether the back end stopped with an error partway, quit without saying why, or could not
    be run, where all three said "The back end could not start."
  • When OpenBot Desktop is signed in with a model Learning can't use, Learn now in Settings →
    Learning says "Learning can't run on the model you signed in with. To use it, sign OpenBot in with
    an OpenAI or Anthropic API key, or a Claude or ChatGPT plan.", where it told you to give the back
    end's Learning agent a model and key.
  • The first notification after OpenBot Desktop starts is raised, for a Bot that needs you or
    replies while OpenBot is minimised or behind another window. The first one after each launch used
    to raise nothing, because the app was still checking that notifications were on. OpenBot's log
    now says whether each notification was shown, never what it said.
  • Setup says what is happening. The screen shown while OpenBot runs says you can show or stop
    it from its icon in the system tray on Windows, where it said the menu bar everywhere, and no
    longer flashes Start's own steps before OpenBot opens. After you accept the terms, the account
    step says "Setting up your apps" while they connect, where it flashed "Sign in to CopilotKit".
    Opening OpenBot after a restart says "Starting the engine machine." while it starts OpenBot's
    Podman machine, and Start's steps say "OpenBot's services" where they said "Containers".
  • Install's bar is full only when it is done. Once every byte has arrived and the last items are
    still unpacking, the bar keeps moving without filling and the line says "1.1 GB downloaded ·
    Unpacking the last item", where it showed a full bar beside "1.1 GB of 1.1 GB · 1 of 5 items
    remaining".
  • The screen shown while OpenBot runs opens on "OpenBot is running", with its Updates section under
    Show OpenBot and Stop OpenBot, as on the stopped screen, where it sat above the heading.
  • App updates download from downloads.copilotkit.ai. The update feed there names
    downloads.copilotkit.ai for the Windows installer and the Mac update archives, where they came
    from GitHub, and every signature is unchanged. If that download fails, OpenBot Desktop reads
    GitHub's update feed and downloads the same signed version from there, where the update failed.
    The log says where it came from.
  • A Bot with no folders says so in plain words, as every Bot does after OpenBot restarts: "This
    Bot has no folders it can read right now. Folder access ends when you stop OpenBot. To give it a
    folder, use Choose folder in Settings → Computer." It said "No host folders are granted to this
    Bot."

Teach a Bot

  • Teach a Bot says what happens after a recording saves: "OpenBot learns a skill from it, and
    you'll find it in Settings, Learning. Once it's learned, ask any Bot to do it." A row under the
    recording follows it through Learning: Learn now before a run, "Learning from your
    recordings" during one, "Ready to review" with Review, and "Skill learned" with Try it,
    which opens Home with the task in the message box, not sent. A failed run, Learning with no
    model, or a refused Learn now says why, and See your skills opens Settings → Learning. With
    the page in the background and notifications allowed, a notification says when the skill
    arrives. It used to say only that the recording was saved to your Learning space.
  • Teach a Bot is one page. Its title and one line on how sit above the browser, and Your
    recordings sits under it at the same width and scrolls on its own, so a long list no longer makes
    the browser smaller. The page was headed "Browser". Where the browser opens as a window on your
    desktop, the page is as it was.
  • The browser looks like a browser: tabs along the top, a rounded address bar with a lock on
    https pages, and a search field in an empty tab, sized so the page fills it. While it starts it
    says "Opening your browser…", where the page showed no browser.
  • Record is one button at the end of the toolbar. It opens Record a task, with the task's
    name, the Narration switch (its (i) says what narration is for) and Start recording, where the
    name field, the switch and Record sat in a bar above the browser. The narration line shows under
    the browser only while recording, or to say "No microphone found. Narration is off." on a
    computer with none. There, Record no longer asks "Narrate while you record?": it records without
    narration and asks the first time you record with a microphone.
  • Your recordings links to Settings → Learning ("See what your Bots learned").

Conversations

  • Bots answer in Markdown by default. Ordinary questions, explanations, summaries and short
    lists come back as a reply. A notice card is kept for an alert that needs you to act, or for when
    you ask for one, and a chart, table or card is drawn when it makes the answer easier to use. Bots
    used to be told to answer with a component whenever an answer had structure, so ordinary answers
    came back as cards.
  • A figure can link to where it came from. A bar, a progress row, a headline figure or a donut
    chart's legend row links to the record or search its figure came from when the Bot has that
    address, and opens it in a new tab (in OpenBot Desktop, in your own browser). Only web addresses
    become links.
  • A chart whose figures are still arriving shows "Drawing the chart…" at the chart's own height,
    where it said "There is no data to chart." A chart that was stopped, or has no figures, still says
    so.
  • + and Shift+N open a new conversation with To: empty and the Bot menu open, in the personal
    edition and wherever there is only one Bot, where since 0.3.3 they started with your Bot picked. A
    Bot's own Message link still starts with that Bot, and Send with nobody in To: still keeps the
    message and says "Choose a Bot first."
  • The Bot's screen shows where it is. In a conversation and in the panel beside it, the address
    the Bot's browser is on sits above the picture. While the Bot has control, a strip over the
    picture names it with Take control, where "The Bot has control." and Take control sat in a bar
    under the picture. The panel beside a conversation is narrower, and the full-size view is sized to
    the page.
  • A Bot that is working says so. Its conversation says "Working" in the sidebar where its time
    was, and Home shows that the Bot is working, with the conversation's name and Open.
  • A Bot's browsing names the site when it stayed on one, "Browsed example.com" or "Browsed 3 pages
    on example.com", where it said "Browsed 1 page".
  • Approvals for a folder or a Bot's own computer use the words of their step. The approval
    card, Needs you and a task's waiting line say "Save a file todo.txt in share", "Read a file" and
    "Run a command", where they said "Write file on todo.txt in share". A file on the Bot's own
    computer is named by its path, and its save step reads "Saved a file".
  • A Bot's Activity names an action waiting for your approval the way its card does, "Click
    the link “Python” on en.wikipedia.org" or "Send email on Gmail", where it read "Approve
    computer_click" with "write" beside it. Approval cards list what an action would send as
    labelled lines, where they showed raw JSON, and a click shows none. In Slack and Microsoft Teams
    the card says it the same way ("Research Bot wants to click the link “Python” on
    en.wikipedia.org"). A saved rule is titled "Click" or "Send email on Gmail" instead of its tool
    id, and the line under it reads "changes in share for Shop", where it read "write on
    host-grant-15407-… for shopper-bot".
  • An opened "Looked for a tool" step lists the tools the Bot found by name ("Send email on Gmail"),
    where it showed their ids and the descriptions the search returned to the Bot.

Personal edition

  • Home no longer shows an empty Explore Bots box saying "Nobody has shared a Bot with you yet."
  • In Activity, a Bot's call to an app you haven't connected reads "Not connected" with "Gmail isn't
    connected. Connect it in Connections.", or "No longer connected" when it needs connecting again,
    rows already recorded included. It read "The server didn't answer" with raw [connect-app] text
    under it, which Admin → Audit no longer shows either.
  • Activity names a skill by its title ("Write a skill", where it said "Skill creator"), on older
    rows too. An app a Bot got when you pressed Connect in a conversation reads "Let a Bot use an
    app", "Allowed automatically", where it read "Approve a request for an app", as if somebody had
    approved it.
  • An app's page names the setting that makes a Bot ask first by its name, "Always ask before making
    changes", where it said "Ask before acting".

Smaller changes

  • The sidebar floats as frosted glass over the colours of OpenBot's orb, the orb sits beside
    OpenBot's name, and the app is set in Atkinson Hyperlegible Next. The glass turns off with the
    system's reduce transparency or increase contrast setting, and a skin keeps its own look.
  • Settings → General, headed "Preferences" before, shows your name and standing instructions as
    rows under About you, each opening a dialog to change it, where both were edited on the page. Dark
    theme, Skin and Message list emphasis sit under Appearance.
  • Settings → Notifications shows a switch only for channels that are set up, where the rest showed
    as "Not set up". A choice saved for one is kept and comes back once it is set up. With none set up
    it says "Updates stay in OpenBot", with How to set them up for admins and anyone running
    OpenBot themselves, and that your admin sets them up for everyone else. In OpenBot Desktop it says
    they need OpenBot running on a server.
  • The skill OpenBot ships as Make a coworker is called Make a Bot, and Write a skill's
    description says it saves a new skill rather than a / command. Their / names are unchanged.
  • Activity and Admin → Audit say "Set up an app's sign-in" and "Check an app's sign-in", where they
    said "Register an OAuth client" and "Read an OAuth client".
  • Your skills on a Bot's page lists each skill by its title ("Tide report"), where it showed
    "/tide-report".
  • A notice card's supporting point that is itself a list is drawn as that list, without a stray
    dot and an extra indent beside it.
  • A long link or path in a card's text wraps where it was cut off at the card's edge: in a notice,
    a checklist, a record, a quotation, a data table, an approval, and a choice card's summary and
    options. A choice card's summary is drawn as Markdown, as an approval's is, where it showed the
    raw text, such as **two**.
  • When a bar chart's figures don't fit above their bars, every bar shows a shorter figure, such as
    "15K" or "3.7K", where they ran into each other. The exact figure shows when you point at it and
    is read out by screen readers.
  • New Bot lists the frameworks a custom agent can run on under Connect a custom agent on its
    first screen, below the form, one line each with its logo, Claude Agent SDK, LangChain, Google ADK
    and AWS Strands first, all four above Cancel and Create Bot in OpenBot Desktop's default window,
    800px tall. Choosing one goes straight to its address, and Back returns to the list. They were
    behind a Connect a custom agent button.
  • LangChain is called LangChain, with LangChain's own mark, where it said "LangChain
    (LangGraph)": in New Bot, a Bot's "Powered by" subtitle and its Runs on row, and OpenBot Desktop's
    note under a ChatGPT plan.
  • Settings → Activity and Admin → Audit reach past the newest 50 events. Show older events under
    the last row loads the next page, and the count reads "Newest 50 events", growing as more load,
    until nothing older is left. They stopped at the newest 50 and counted them as if that were
    everything.
  • Apps the broker lists in lowercase are named with capitals in Browse apps and when added, such as
    "1Password" where it said "1password". An app added before the upgrade keeps its name.
  • Onboarding's Welcome says "Give work to Bots in plain words.", where it said "Hand work to Bots".