Skip to content

Wire Protocol — Caveats

Two clarifications that sit alongside the protocol reference. Both describe the wire as it stands today.

Registration.skills representation

Registration declares an agent's capabilities in the skills field. The control plane consumes those capabilities as skill trait-names — the lowercase strings ingest, sync, transform, emit, report — while the typed target is the repeated Skill enum carried on CommandChannel.

Aspect Trait-name form Skill enum form
Values ingest · sync · transform · emit · report SKILL_INGESTSKILL_REPORT
Where it appears control-plane storage and the skill-subset admission check Registration.skills and TaskSpec.skill on the wire
Stability canonical for matching today the target the wire is converging on

An agent sends the enum; the control plane maps each enum member to its trait-name and matches a manifest's required skills against that set. Emit the full closed set your agent supports so the subset check accepts the manifest.

Migration in progress

Treat the trait-name strings as the stable identifier for skill matching and the Skill enum as the typed wire form. New integrations read both and compare case-insensitively.

Framework ingestion rides the Gateway RPCs

The atelier-sdk framework ingestion layer — its Feeds and the SourcedOrderBook / SourcedTradeBook Books — reuses the exact three Gateway RPCs documented for any remote agent. A framework agent registers over CommandChannel, receives its Manifest and Commands there, and streams reconstructed book snapshots upstream as Envelope { ArtifactFrame } on TelemetryChannel (with raw events forwarded as TerminalEvents for the live data/logs feed). Feeds and Books are an agent-side reconstruction model over an agent's own artifact streams; they add no new RPCs and no new Envelope payloads.