Skip to main content
Glama

Cross-Vendor Delegate

nucleus_delegate

Hand a coding or review task to a cross-vendor lane — a cheap, non-Claude agent that does the work for you. Use this INSTEAD OF shelling out to any CLI: it picks the vendor, injects the correct per-vendor permission flags, captures all output synchronously, and reports a real status. Do NOT run agy/devin yourself in Bash — the raw CLIs take DIFFERENT per-vendor flags (pass the wrong one and a build silently makes ZERO edits yet exits 0), and hand-driven background calls flush output late (a finished call looks empty for tens of seconds). This tool is the only robust path.

First call list — it needs no setup, confirms cross-vendor is enabled, and shows each vendor's selectable_models + default_model. If dispatch/review return a disabled error, cross-vendor is OFF: run nucleus onboard once (one-time), then retry.

Actions: dispatch - Hand a task to a cross-vendor lane. params: {vendor, prompt, artifact_ref, mode?, model?, expect_paths?, to?} REQUIRED: vendor ∈ 'agy'|'devin', prompt, artifact_ref. mode ∈ 'write'|'read' (default 'write'): write = the vendor CHANGES things (edit files, run commands, build/fix). read = the vendor only LOOKS and REPORTS (analyze/summarize); no file changes. When unsure use 'write': a read task still works in write mode, but a write task silently does NOTHING in read mode. model? — optional. Defaults to the vendor's verified model (agy → gemini-3.1-pro-high, devin → glm-5.2). These are ALREADY the defaults, so omitting model is sufficient; pass it only to be explicit or to override. The response echoes model_id — read model_id (NOT model_family) to confirm which model ran. A cross-wired model (e.g. glm-5.2 with agy) is rejected with the valid ids named. artifact_ref — a commit SHA / PR# / file path to bind the result to. No commit yet (a from-scratch build)? Pass the repo-relative path you will write, e.g. src/foo.py. expect_paths? — optional list of file paths you expect the vendor to change. If you pass them and the vendor changes none, status comes back NOT success ("no_files_touched") even if it narrated success. Without expect_paths, success means only that the vendor produced output — not that it edited anything, so ALWAYS confirm with your own git diff. (Paths are checked in the nucleus server process's working dir; pass paths valid there.) You never pass CLI flags — the tool injects the right permissions per vendor. Example (build): action="dispatch", params={"vendor":"devin","prompt":"", "artifact_ref":"src/foo.py","mode":"write","model":"glm-5.2", "expect_paths":["src/foo.py"]} review - Independent, different-model verdict on pasted code / a diff. params: {content, ref?, vendor?, model?, to?} content REQUIRED (paste the code/diff inline). Default vendor agy (Gemini, model gemini-3.1-pro-high) — a genuinely different model from the devin/GLM builder, so the review is diverse. Read-only, edits nothing. Returns a terse two-line verdict. For a devin/GLM second opinion pass vendor='devin'. Example: action="review", params={"content":"", "model":"gemini-3.1-pro-high"} list - Show vendors, their selectable_models + default_model, the mode vocabulary, and whether cross-vendor is enabled. Needs no setup — call it first.

A green result is a hypothesis until you verify it on your own shell (zero-trust). Read the response's status and success: 'ok' = produced output; 'empty_output' / 'no_files_touched' / 'timed_out' / 'error' come back success=false — NOT done. (If NUCLEUS_ENVELOPE is on, gate on the INNER success flag, not the envelope's ok.)

Two caveats from real use:

  • SECRET HYGIENE: vendor OUTPUT is best-effort secret-redacted (Bearer/JWT/API-key patterns -> ; the count is in the response redacted field). This is a BACKSTOP, not a guarantee — never put credentials in a prompt, and the tool CANNOT scrub a file the vendor writes itself, so review any vendor file-writes near secrets yourself before trusting them.

  • REVIEW SEES ONLY WHAT YOU PASTE: 'review' (and 'dispatch') cannot read the repo, a diff, or any file — they judge only the text in your params. Paste the real code/diff or the reviewer will confidently critique things it cannot see. For a whole PR, paste the actual diff, not a description of it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYes
paramsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

TDQS

A3.9/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description contradicts annotations: annotations set destructiveHint=false, but the description says 'write = the vendor CHANGES things (edit files, run commands, build/fix)' which is destructive. This is a clear contradiction, warranting a score of 1.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is comprehensive but overly long. It repeats information (e.g., list action described twice) and includes verbose caveats that could be condensed. Still, it is well-structured with sections for each action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers setup, error handling, secret hygiene, and verification steps. It references an expected output schema (response fields) but the description itself is mostly complete. A slight deduction for not explicitly outlining all return fields, though output schema exists.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema only has 'action' and a generic 'params' object with no property definitions (0% coverage). The description compensates fully by detailing each allowable parameter, their constraints, defaults, examples, and behavior differences (e.g., mode, expect_paths).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Hand a coding or review task to a cross-vendor lane — a cheap, non-Claude agent that does the work for you.' It distinguishes from sibling tools by explicitly advising against manual CLI use.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance: 'Use this INSTEAD OF shelling out to any CLI', explains when not to use it (manual CLI), and tells the user to first call 'list'. It also covers prerequisites and alternatives with concrete reasoning.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

B3.3/5.0
Disambiguation4/5

Tools are grouped by domain with detailed descriptions, but some overlap exists (e.g., multiple relay-related tools like nucleus_relay, nucleus_relay_subscribe, nucleus_next_message). Overall, most tools have distinct purposes, and descriptions help disambiguate.

Naming Consistency5/5

All tool names follow the 'nucleus_' prefix with a consistent noun-like second part (e.g., nucleus_agents, nucleus_audit, nucleus_delegate). Even compound names like nucleus_lane_feedback maintain the pattern, with no mixing of conventions.

Tool Count3/5

With 28 tools, the count is on the higher end but still justifiable given the broad scope of an agent operating system. The tools cover many necessary functions, though the set could be slightly trimmed for focus.

Completeness4/5

The tool surface covers most aspects of an agent OS: agents, audit, delegation, memory, features, federation, governance, infra, lanes, messaging, orchestration, plans, relay, routing, sessions, slots, sync, tasks, telemetry. Minor gaps like a dedicated config tool are absent but not critical.

Resources