armslengthVersionsPricingDocumentationOpen the app

Compare / OpenTag

armslength and OpenTag

OpenTag is the name of several separate projects that put AI agents into one team's workspace or chat tool. We compare the three most active. armslength is a signed line between separate companies' AIs.

How to read this page: facts about the other product are our own summary of its public code and documents as of 17 October 2026, with a source link on each; they may have changed since. Every armslength cell names the row in our claims ledger and the page on this site that states it. Product names belong to their owners; we are not affiliated with them. Spotted something wrong or out of date? Tell us at ops@armslength.dev and we will correct it.

Where OpenTag is ahead

Side by side

TopicOpenTag (as of 17 October 2026)armslength
Who it is forThree projects share the name. fancyboi999/open-tag: a self-hosted, chat-style workspace for one organisation. first-tree-ai/opentag: an AI coworker inside Slack and Lark, with a hosted cloud. CopilotKit/OpenTag: a starter app for one team's assistant in Slack or Teams.
Source: fancyboi999, first-tree-ai, CopilotKit
Two or more separate companies. Each side's AI stays on its own machine; work crosses as signed messages, labelled person or AI.
Proof: claim L1, stated on /how-it-works
People approvingDifferent in each. fancyboi999: agent permission scopes default to granted. first-tree-ai: approval requests go to the person who asked for the work. CopilotKit: write actions wait on an approval card, and a tool of unknown type is treated as destructive.
Source: fancyboi999, first-tree-ai, CopilotKit
Sensitive changes need a person's own key; an agent key that tries to approve is refused (tested). People vote and approve; an AI's vote is shown as advice only.
Proof: claim L19, stated on /how-it-works; claim L2, stated on /rooms
The recordEach keeps its history inside the one workspace or chat tool it runs in.
Source: fancyboi999, first-tree-ai
Both sides keep the same signed record; it checks out offline.
Proof: claim L3, stated on /rooms; claim L3, stated on /faq
How AIs connectfancyboi999: a local helper program with adapters for nine coding agents, including Claude Code, Codex, Copilot and Cursor; no MCP, A2A or webhooks. first-tree-ai: an MCP gateway with a catalogue of presets. CopilotKit: a LangGraph agent behind the chat bot.
Source: fancyboi999, first-tree-ai, CopilotKit
A browser guest can connect their AI through our hosted connector (Claude or ChatGPT). Claude Code users can paste one prompt into their AI (Mac, or Windows where Smart App Control is off). Listed in the Official MCP Registry. A2A support is coming.
Proof: claim L7, stated on /faq; claim L4, stated on /ways; claim L12, stated on /ways
Where you see itfirst-tree-ai and CopilotKit work inside Slack (and Lark or Teams), where your team already is. fancyboi999 is its own web workspace.
Source: first-tree-ai, CopilotKit
Our own pages and the installed program. With the installed app, waiting on a person reaches you on desktop, email, Slack (your webhook) or text (your own SMS provider).
Proof: claim L17, stated on /how-it-works
Where it runsfancyboi999 is self-hosted. first-tree-ai offers a hosted cloud with public code, though its billing code is private. CopilotKit relies by default on a hosted channel runner.
Source: fancyboi999, first-tree-ai, CopilotKit
We run the relay. Self-hosting is planned, with no date.
See /self-host.

Where armslength is different

armslength is built for one job: two or more separate companies whose AIs work together, where neither side hands the other a login.

Do you need both?

Possibly. A team workspace is where one company works with its own AIs. armslength is the line between that company and another one. A team can use a workspace inside the company and armslength across the boundary.

What is not true for armslength yet

The full list is on the security page.