Cross ai
Skill Tanq16/claudex/internal/embedded/default-skills/cross-ai
Multi-account CLI companion for Claude Code that tracks usage limits, launches configured sessions, and applies skills & output styles.
npx -y skills add Tanq16/claudex --skill cross-aiAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
User-invoked dispatcher that hands a task to one or more external headless CLI coding agents (agy, gemini, codex, cursor) or Claude Code headless and relays their output. Invoked explicitly as `/cross-ai <agent> [task]`. Do NOT auto-trigger this from incidental mentions of these tools, and never use it for native Claude Code sub-agents (the Task tool).
SKILL.md
6.2 KB, as published. Nobody here has run it
cross-ai
Delegate the current task to an external CLI coding agent over bash, then relay its answer. You are the dispatcher: pick the command from the table, feed it the context, run it, report back. Nothing else.
This skill is explicit-invoke only (/cross-ai). It is NOT triggered by phrases like "use agy" on their own, and it is NOT the native Task tool — "launch a sub-agent" means the Task tool, not this.
Invocation
/cross-ai <agent> [task]
<agent>is one of:agy,gemini,codex,cursor,claude(Claude Code headless).[task]is the work. If omitted, use the surrounding request as the task.- Multiple agents in one request → run each on the same task, in parallel, and present results side by side labeled by agent. Two separate
/cross-ai agyand/cross-ai codexinvocations against the same ask are the same thing: launch both.
Dispatch table (read-only defaults)
Run these verbatim, substituting <TASK> and <FILE>. Each is read-only — no edits, no auto-approve of writes.
| Agent | Command |
|---|---|
agy | agy -p "<TASK> @<FILE>" --model gemini-3.1-pro-high --dangerously-skip-permissions < /dev/null 2>&1 |
gemini | gemini -m gemini-3.1-pro-preview -p "<TASK> @<FILE>" --output-format json | jq -r '.response' |
codex | codex exec -m gpt-5.5 --skip-git-repo-check "<TASK>" 2>/dev/null |
cursor | cursor-agent -p "<TASK>" --model gpt-5.5-high --trust --output-format json | jq -r '.result' |
claude | claude -p "<TASK>" --model claude-opus-4-8 --output-format json --allowedTools "Read,Grep,Glob,Bash" | jq -r '.result' |
@<FILE> injection is for agy/gemini. codex/cursor/claude read the current working directory themselves — reference paths in <TASK> and they will open them.
agy truncation guard: if its output looks cut off or garbled (it misbehaves on a non-TTY pipe), rerun under a pty and strip ANSI. script's flags differ by OS — claudex runs on both:
- macOS (BSD
script):script -q /dev/null agy -p "<TASK> @<FILE>" --model gemini-3.1-pro-high --dangerously-skip-permissions - Linux (GNU
script):script -qec 'agy -p "<TASK> @<FILE>" --model gemini-3.1-pro-high --dangerously-skip-permissions' /dev/null
Pipe either through perl -pe 's/\e\[[0-9;]*[A-Za-z]//g' to strip color codes (portable across macOS/Linux).
cursor workspace trust: cursor-agent refuses to run in an untrusted directory (it blocks on a "Workspace Trust Required" prompt instead of answering). The --trust in its command grants directory trust so the headless run proceeds; it is NOT --force/--yolo and does not auto-approve edits or command execution, so the read-only posture holds.
Execution recipe
- Stage context the agent can't see on its own. It starts blank — it does not inherit this conversation. If the task needs our analysis, a specific diff, or files outside its cwd, write that to a temp file first:
CTX=$(mktemp); e.g.git diff > "$CTX"orgh pr diff > "$CTX"for "review current PR". If the agent can gather it itself in the cwd (codex/cursor/claude can rungit diff), skip this. - Build the command from the table. Inject the staged file via
@$CTX(agy/gemini) or name$CTX/paths in<TASK>(codex/cursor/claude). - Run it with Bash. For multiple agents, launch them concurrently and wait for all.
- Relay each agent's raw output, labeled by agent. Don't compress or editorialize unless asked — the point is what the other model said.
Model override
Default to the flagship in the table. If the user names a model after the agent (/cross-ai cursor opus, /cross-ai cursor with grok, /cross-ai codex gpt-5.4), map it and pass it to that agent's model flag:
| Agent | Flag | Flagship (default) | Other selectable |
|---|---|---|---|
agy | --model | gemini-3.1-pro-high | gemini-3.5-flash-low, claude-opus-4-6-thinking, gpt-oss-120b-medium |
gemini | -m | gemini-3.1-pro-preview | gemini-3-pro-preview, gemini-2.5-pro, gemini-3-flash |
codex | -m | gpt-5.5 | gpt-5.4, gpt-5.4-mini, gpt-5.3-codex-spark |
cursor | --model | gpt-5.5-high | gpt-5.5-high-fast, claude-opus-4-8-thinking-high, composer-2.5, cursor-grok-4.5-high, gpt-5.3-codex |
claude | --model | claude-opus-4-8 | claude-sonnet-4-6, claude-opus-4-8[1m] |
Rules of engagement
- Just run it. Assume the binary is installed and authenticated. Do NOT
which, version-check,--help, or test-run first. Build the command and execute in one step. - Read-only by default. Never pass write/auto-approve flags (
--force,--yolo,--sandbox workspace-write,--permission-mode acceptEdits) unless the user explicitly asks the external agent to modify files. - Stale model id is the only thing to check. If a run fails because a model id was rejected, that is the one time to look: run the tool's list (
agy models,gemini --list-models,cursor-agent --list-models, or check--help), pick the current flagship, and rerun. Model ids drift; the table is a snapshot.cursor-agent --list-modelsprints real ids. Butagy modelsprints display names, not ids — the id is a lowercased/hyphenated form with a tier suffix (Gemini 3.1 Pro (High)→gemini-3.1-pro-high), the mapping is inconsistent (not every displayed tier resolves, and the dotted vs dashed version separator varies by family), so confirm a specific agy id with a one-lineagy -p "OK" --model <id> --dangerously-skip-permissionsrun before trusting it. - Auth failure → report and stop. If a run fails with an auth/login error, surface it verbatim and stop. Don't try to fix the other tool's credentials.
- Not for Claude sub-agents.
claudehere is the headless CLI process. The native Task tool ("launch a sub-agent") is unrelated and not dispatched through this skill.