I built and open-sourced tasuki, an AI CLI orchestrator that automatically rotates between Claude Code / Codex CLI / GitHub Copilot CLI based on priority.
- Repository: https://github.com/0xkohe/tasuki
Motivation
I’m the kind of person who prefers subscribing to multiple AI tools at $20–$30 each rather than committing to a single $100–$200 plan. I want to explore different tools and continuously feel the differences between models.
However, doing this means hitting usage limits fairly quickly, which interrupts workflow and requires manual switching — something I found annoying.
Each AI has its strengths — Codex for review, Claude for conversation, etc. But unless you’re extremely opinionated, there’s value in constantly rotating through tools and experiencing their evolution. If you stick to one, you may miss when another becomes better at something.
The switching decision itself is trivial labor — so I wanted to automate it.
That’s why I built tasuki.
Instead of treating rate limits as a constraint, I treat them as an opportunity to move to another model.
Intended Workflow
Prioritize Claude Code and Codex CLI (5-hour windows)
Since their reset cycles are short, it’s more cost-efficient to exhaust them first.Once both 5-hour windows are exhausted, switch to GitHub Copilot CLI
Copilot operates on a monthly quota, so it works well as a “bridge.”When Claude / Codex reset, switch back automatically
Monthly quota should be preserved as much as possible.
What It Does
Native UI stays intact
Each CLI runs inside a wrapped PTY, preserving the original interactive experience.Automatic switching based on usage
Adapters monitor CLI output streams and trigger a handoff when a threshold (default: 95%) is reached.Context-aware handoff
Progress is written to.tasuki/handoff.mdand injected into the next provider.
Try It in 5 Minutes
Install
go install github.com/0xkohe/tasuki/cmd/tasuki@latest
First Run
cd path/to/your/project
tasuki
Closing
Use everything. Keep exploring.
tasuki reduces the friction of doing that.



Top comments (0)