Skip to main content
Glama
Knuckles-Team

Repository Manager

Receive Artifact

rm_remote_workers_receive_artifact

Receive an artifact or log from a remote worker, storing it under a specified root and optionally validating its declared digest.

Instructions

Receive artifact (rm_remote_workers). Remote worker registry, immutable source staging, and artifact transport.

Composes RMDD-15's repository_manager.remote_execution package with the RMDD-08 CapacityInventory resource ledger. The optional tunnel-manager dependency is never required to import this tool: recheck/live remote dispatch refuse with a named, cause-preserving error when it is absent instead of raising an ImportError. host_loss_reconcile always refuses today: no live WorkItem-authoritative ResourceScheduler is wired into any repository-manager entrypoint yet, and this tool never substitutes a local in-memory reservation ledger for that authority.

Input Schema

NameRequiredDescriptionDefault
kindNoFor receive_artifact: 'artifact' (default) or 'log'.
pathNoFor seed_from_inventory: override the inventory.yaml path (default ~/.config/agent-connectors/inventory.yaml).
rootNoFor receive_artifact: store root.
actorNoFor recheck: the requesting actor.
fenceNoFor host_loss_reconcile.
labelsNoFor register_worker.
originNoFor stage_source: credential-free Git origin.
reasonNoFor host_loss_reconcile, optional.
attemptNoFor host_loss_reconcile.
commandNoFor dispatch_build: the fixed argv to run on the remote host after staging.
host_idNoTarget host id.
workdirNoFor dispatch_build: path relative to the staged worktree root to run 'command' in (default '.', the worktree root itself).
disk_mibNoFor register_worker.
tree_shaNoFor stage_source: the full 40-hex immutable commit SHA.
cpu_weightNoFor register_worker.
media_typeNoFor receive_artifact, optional.
memory_mibNoFor register_worker.
toolchainsNoFor register_worker.
destinationNoFor verify_source.
parent_rootNoFor stage_source: the worker's authorized parent root.
expected_shaNoFor verify_source.
work_item_idNoFor host_loss_reconcile.
process_slotsNoFor register_worker.
relative_pathNoFor receive_artifact.
repository_idNoFor recheck/stage_source/verify_source.
worktree_nameNoFor stage_source.
content_base64NoFor receive_artifact.
reservation_idNoFor host_loss_reconcile.
declared_digestNoFor receive_artifact, optional.
execute_locallyNoFor stage_source: also run+verify the commands via a local executor.
inventory_aliasNoFor register_worker/recheck: the tunnel-manager inventory alias.
timeout_secondsNoFor stage_source/dispatch_build.
repository_rootsNoFor register_worker: repository id -> authorized absolute worktree root.
required_toolchainNoFor recheck.
source_descriptionNoFor receive_artifact.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.5.1

TDQS

C2.4/5.0
Behavior3/5

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

Annotations declare a non-read-only, non-idempotent, non-destructive, closed-world mutation surface, and the description usefully adds that recheck/live dispatch raise a named cause-preserving error when tunnel-manager is missing and that host_loss_reconcile always refuses pending a live ResourceScheduler. That is genuine context beyond annotations, but core traits (what gets written where, permissions, whether artifacts persist) are absent.

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

Conciseness2/5

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

The text is dominated by internal design notes (RMDD-15, RMDD-08, CapacityInventory, ImportError behavior) rather than front-loaded operational information. The most useful sentence for an agent is buried at the end, and the opening scope phrase is not developed.

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

Completeness2/5

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

For a 35-parameter, 0-required umbrella tool spanning eight operations, the description omits the single most important fact for correct invocation: how an operation is selected and what the tool returns for each. An output schema exists so return values need not be restated, but the operation-selection gap is disqualifying.

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

Parameters3/5

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

Schema description coverage is 100%, so the per-parameter "For <op>: ..." strings already carry the semantics; baseline 3 applies. The description adds nothing about parameter meaning or how the 35 fields map onto an operation, but it does not need to given the schema's verbosity.

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

Purpose2/5

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

The first line gives a verb+resource ("Receive artifact") and a subsystem scope ("Remote worker registry, immutable source staging, and artifact transport"), but the schema exposes ~8 distinct operations (receive_artifact, seed_from_inventory, register_worker, stage_source, verify_source, recheck, host_loss_reconcile, dispatch_build) that all have dedicated sibling tools. The description never reconciles the name "receive_artifact" with this umbrella surface, so an agent cannot tell what this tool uniquely does versus its siblings.

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

Usage Guidelines2/5

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

There is no statement of when to use this tool versus rm_remote_workers_register_worker, stage_source, dispatch_build, etc., nor how to select an operation from the shared parameter bag. The only conditional information (tunnel-manager absence, host_loss_reconcile refusal) is about failure modes, not selection guidance.

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

Deploy Server

Other Tools