Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/rome-os/rome/composio-clinpx skills add rome-os/rome --skill composio-cligit clone --depth 1 https://github.com/rome-os/romeWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00139 | $0.02666 |
| Opus 5 | $0.00069 | $0.01333 |
| Sonnet 5 | $0.00028 | $0.00533 |
| Haiku 4.5 | $0.00014 | $0.00267 |
Grade A, and why
composio-cli scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 240 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Composio CLI
Preflight: Is The User Logged In?
Before running any toolkit command, confirm the user is logged in. If they are not, stop and tell them to log in — do not improvise.
composio whoami # exits non-zero when there is no session
If whoami fails (no Composio session), the user is logged out. Stop here. Do not:
- run
composio loginyourself, - look for an alternate toolkit, slug, or
proxyroute, - ask the user to paste a key, or
- attempt any other workaround.
Respond directly to the user with one message: they need to log in to Composio first, via the "Log in with Composio" action on the Composio app's dashboard. Then end your turn and wait — the request cannot proceed until they have logged in.
Only once whoami succeeds do you continue to the workflow below.
Connection Invariant: One Account Per Toolkit
Rome operates exactly one connected account per toolkit. This is load-bearing
because execute, proxy, and run have no flag to choose an account — they
act on the toolkit's single connected account, and when more than one exists
Composio silently resolves a non-deterministic default. You cannot tell, and
cannot control, which account a tool ran as. A second Gmail means a "send email"
might go out from the wrong account with no signal.
To keep every tool call deterministic:
- Never create a second account for a toolkit. Do not pass
--aliastocomposio linkto add an additional account, and do not enable themulti_accountexperimental feature. The alias buys you nothing on execution — there is no--alias/--accountonexecute— it only lets you accumulate ambiguous accounts. - Check before linking.
composio link <toolkit> --listshows existing accounts. If one isACTIVE, you are connected — retryexecute, do not link again. - If
--listshows more than one account for a toolkit, stop and surface it. Tell the user the toolkit has duplicate accounts and tool calls are ambiguous until the extras are removed. Do not guess which one to use.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 240 lines · 139 tokens per session scan A efcfaacd6942
composio-cli is a skill published in the GitHub repository rome-os/rome (390 stars, last pushed 3d ago), licensed MIT. It adds 139 tokens to every session and 2,666 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
beevibe-team-mesh-negotiation
Multi-round negotiation protocol — covers both initiator and peer roles. Use when about to call negotiate(), when receiving a intent block as a peer, or when receiving an 'escalated' sentinel from a blocked respondnegotiate. Covers proposal crafting, counter-strategy, deadlock detection, when to accept early…
beevibe-verify-pr
CI verification before marking a PR-bearing task done. Use BEFORE calling mcpbeevibeupdateprogress(done) on any session whose deliverable is a pull request — including the first dispatch (you opened the PR with gh pr create) and any revision dispatch (you pushed new commits to an existing PR). Watches the PR's…
beevibe-pre-task-setup
Cold-start git workspace setup for a fresh beevibe task. Use at the start of a session whose intent has a block but NO or block — i.e. the first dispatch of this task. Checks for an existing repo clone, pulls the base branch if present (clone if missing), prunes any per-task worktrees from earlier tasks whose work has…
beevibe-use-repo
You are the child agent inside a fresh Docker sandbox. Borrow the given GitHub repo, produce a real artifact for the goal, and export it. Do not review the repo. The proof is that it works.
beevibe-discover-repo
Find the best GitHub repo for a goal, then call userepo to run it in a sandbox. Use whenever the user's goal requires a capability you don't have natively and you haven't been given a specific repo.
release
Dispatch a Chamber release build to either the insiders channel (Azure blob, Windows + macOS, invite-only testers) or the stable channel (public GitHub Releases, Windows + macOS). Use this skill whenever the user asks to release, cut, publish, promote, ship a build, push to insiders, send to testers, go public, or…