Your agents. Your order.
It finds the agents you have installed. Choose their order and your accounts in one config file, or type /agent inside a session. uuldana-cli follows your order, and tries agents you did not rank after it.
Configuring agents
Your coding agents already know how to work.
uuldana-cli keeps them
working together, through one terminal workflow, on your terms.
Early version. Agents installed on the machine are found by themselves and run through it. See what works.
Illustrative agents, ordered by you. This is how a switch at a usage limit works.
A supervisor for the boundaries between agents. Each capability links to what it does today and where its limits are.
It finds the agents you have installed. Choose their order and your accounts in one config file, or type /agent inside a session. uuldana-cli follows your order, and tries agents you did not rank after it.
Configuring agentsWhen a provider prints its usage limit, uuldana-cli stops it gracefully and continues on the next agent in your list. No Ctrl+C, no retyping, no relaunch.
Automatic failoverA journal records every run of a session, and uuldana resume picks it up again. Work moves between agents as visible context, with honest fidelity labels.
You set a ceiling for approval, filesystem, and network. Switching agents keeps the same ceiling, and an agent that cannot enforce it is refused.
Permission behaviorAgents retain their own authentication, plugins, skills, and MCP servers. Nothing is translated between agents, and what does not carry over is stated.
Plugin compatibilityAdd a provider with a JSON manifest, or with a compiled adapter through the SDK. Provider-specific logic never enters the core.
Explore the Provider SDKWhichever agent runs, you use that agent. uuldana-cli's architecture leaves reasoning, tools, and native behavior with it.
The agent's own terminal interface runs in a pseudo terminal. Your keyboard is relayed to it unchanged, and its screen is drawn under a header that stays at the top. Structured transports have different capabilities and are documented as such.
Understand the transport modelIts native tools, instruction discovery, skills, and agent loop stay inside the provider process.
Process lifecycle, provider-neutral events, session records, and policy checks belong to Uuldana.
Agent selection and priorities are yours. Native approvals and hidden agent state are not transferable context.
Shared plugins need support from the receiving agent. Provider-specific behavior stays provider-specific.
Contracts are frozen. The runtime, finding agents by themselves, sessions, and failover are in this early version. What was tried on real programs is listed.
Read the evidence and limitationsSnapshot of the repository on 2026-10-31. The four agents installed on the test machine were found and run through it with no setup; limits were not tried again on a real exhausted account since the per-agent wording was removed.
For Windows x64. You need Node.js 18 or newer: it only runs a small launcher, and the program itself is a native binary.
npm install -g uuldana-cliLatest on npm: v0.1.0
uuldana. The first start looks for agents, which takes a while; after that it starts at once.uuldana resume picks the session up later.uuldana-cli is built by one person. Messages are read by that person, so say what you ran into and where, and keep keys and tokens out of it.
Include the uuldana version, your Windows version, which agents were running, the steps, and what you expected against what happened.
Email a bug report or open a GitHub issueSomething confusing, missing, or wrong in the tool or on this site. Short notes are fine.
Email feedbackWork together, a custom integration, or a question about using uuldana-cli in a team. Tell me who you are and what you need.
Email about business// support
uuldana-cli is developed and maintained outside of a day job, completely free and open source. If it saves you time, a donation helps keep it moving forward.
On a personal note, I'm building these tools to strengthen my portfolio so I can pursue better opportunities abroad. The biggest reason behind this dream is my girlfriend in Kyrgyzstan, and we've been in a long-distance relationship between Indonesia and Kyrgyzstan for a while now. Every donation brings me one step closer to closing this distance and building our future together.
Open to collaboration and international opportunities. Bugs, criticism, suggestions, or business enquiries are welcome on the contact page.
Build it and run your agents through one terminal. Nothing to set up.