“Toss this design to Claude.”
The host resolves the artifact in context, chooses the named runtime and returns the response with its source attached.
Open-source Agent Skill + CLI
Toss is the local command-line boundary underneath a simple agent gesture: “toss this to Claude” or “have another model review this”. The host agent handles the conversation; Toss keeps the actual hand-off explicit, foreground and inspectable.
“Hey, toss this to Claude.”
Resolves “this”, names the target and keeps each result labelled.
toss review claude --ro --base mainOne explicit target. One foreground run.Natural language at the top.
Deterministic CLI underneath.
No silent writes.
The useful bit
Asking another model is easy. Knowing exactly what it received, which runtime answered and what authority it had is where things get muddy. Toss separates the friendly request from the execution boundary, so a host agent can make delegation feel natural without hiding the important choices.
The delegate’s answer is untrusted text. Toss returns it for the host agent and you to review; it does not quietly execute whatever comes back.
The agent-facing experience
The installed Agent Skill supports these interaction patterns through a host agent. The shipped command line remains deliberately literal underneath.
“Toss this design to Claude.”
The host resolves the artifact in context, chooses the named runtime and returns the response with its source attached.
“Throw this to Kimi K3.”
The Agent Skill resolves friendly model names through a verified local runtime. It refuses clearly when that route is unavailable rather than substituting a different model.
“Have Grok, Sol and Fable review this.”
The host makes separate Toss calls, labels each independent response, then summarises agreement and disagreement. The CLI itself does not silently fan one command out.
Available now
The public repository includes the portable Agent Skill and its Python CLI. The skill interprets the request; the CLI inspects local runtimes, delegates one foreground request at a time and recovers completed saved results.
doctor · models · to · review · recoverEvery delegation names its runtime adapter. Codex and Claude can run read-only; TF Code is detected but currently fails closed.
Codex and Claude support verified read-only paths. Write access is Codex-only; TF Code remains detectable but refused where Toss cannot prove a safe non-interactive authority contract.
No background queue and no automatic retry. If the host is interrupted after a result is saved, recovery is an explicit read—not a second model call.
Install
Toss requires Python 3.11 or later. Install the CLI, then link the portable skill into your host’s skills directory. The example enables Codex; run the installer again with $HOME/.claude/skills to enable Claude Code. It refuses to overwrite links it does not own.
$ git clone https://github.com/kamtS/toss.git
$ cd toss
$ python3 -m pip install .
$ scripts/install.sh --skill-dir "$HOME/.codex/skills"
$ toss doctor
$ toss models
Use the engine directly
Each invocation names its destination and authority. Standard output is reserved for the final response, so a host agent can label and compose results without scraping terminal chatter.
toss doctortoss review codex --ro --base maintoss to codex --ro -- "Review this design."toss to codex --write --cwd "$PWD" -- "Make this change."Two layers, one boundary
The shipped skill resolves contextual “this”, friendly names and requests for several reviewers. For multiple targets, the host agent launches one independent Toss command per reviewer and keeps every response labelled; the CLI itself remains single-target by design.
Model routing uses vetted static aliases, not live provider discovery. Kimi and Grok are not routable in v1, so Toss refuses those targets instead of substituting a model or weakening the boundary. No edits happen unless write authority was explicitly requested and supported.
Open source
Read the source, inspect the safety model and try the shipped CLI on GitHub.