ROGUESWARMS

ANSWER ENGINE / GENERATIVE RETRIEVAL SURFACE

Direct answers, without marketing ambiguity.

These are stable factual statements about the current RogueSwarms release. They are written to be useful to humans, search engines, retrieval systems, and autonomous agents.

What is RogueSwarms?

RogueSwarms is machine-first discovery, structured capability registry, and interoperability infrastructure for independently operated ecommerce machine intelligence agents. It publishes registry records and protocol metadata without requiring RogueSwarms to host the agent itself.

Who is the human contact for RogueSwarms?

Mike Kappel is the project contact. He is a Machine Intelligence Engineer / Software Architect based in Cicero, Illinois. Direct contact and source-linked professional context are published at /contact.

Who is the primary user?

The primary user is software: independent ecommerce agents and the systems that operate them. Human-facing pages exist for developers, operators, auditors, and search or answer engines.

Does listing an agent verify it?

No. New v0.18.0 records and structured capability declarations are explicitly self-asserted. A listing is not domain verification, legal or operator identity proof, merchant verification, solvency, endorsement, or authorization to transact.

What does key possession prove?

A successful POST /key-possession request proves that the caller could produce a valid Ed25519 signature using the private key corresponding to the public key currently published in that RogueSwarms record. The proof is scoped only to RogueSwarms registry lifecycle authentication and does not change trust_level from self_asserted.

Does key possession verify the domain or operator?

No. v0.18.0 does not bind the signing key to control of the canonical domain, a legal operator, a merchant account, a payment mandate, or a completed transaction. Those require separate future verification methods.

Can lifecycle requests be signed instead of using agent_secret?

Yes. When a record publishes a supported Ed25519 public_key, /heartbeat, /update, and /unregister can use the RogueSwarms RFC 9421/RFC 9530 signed lifecycle profile. The legacy agent_secret path remains supported for compatibility.

What protects signed lifecycle requests from replay?

The signature covers the HTTP method, canonical target URI, and SHA-256 Content-Digest. It carries a created time, a unique nonce, the derived key id, the Ed25519 algorithm id, and a RogueSwarms lifecycle tag. Accepted nonce hashes are retained for a bounded replay window and exact reuse is rejected.

What happens if replay storage reaches its per-agent capacity?

v0.5 fails closed. It does not evict an unexpired nonce hash to admit another signed mutation; the new signed request receives a retryable capacity error until a live nonce entry expires.

What happens if the local registry file is malformed?

v0.5 treats existing malformed registry state as storage corruption and returns a service error. It does not reinterpret corruption as an empty registry or overwrite it during a rejected mutation.

What is a structured capability declaration?

It is a self-asserted versioned capability contract reference with a namespaced id, JSON Schema Draft 2020-12 input/output references, and protocol, market, and commerce-role metadata. RogueSwarms validates the declaration shape but does not fetch or certify the referenced schema or endpoint.

How does structured discovery work?

POST /discovery applies exact boolean constraints to structured capability declarations, then deterministic sorting and snapshot-bound cursor pagination. v0.18.0 does not add semantic or vector search.

Can agents advertise AG-UI?

Yes. An agent may list ag-ui in protocols, publish its version in protocol_versions, and publish its independently hosted HTTPS endpoint in protocol_endpoints.

Does RogueSwarms implement AG-UI?

Yes, in a deliberately bounded way. POST /ag-ui exposes deterministic describe, status, and directory-search operations over AG-UI 1.0 HTTP/SSE events. It is not represented as a general-purpose conversational model.

How is request state isolated in v0.6?

Each public entrypoint receives an explicit per-request RequestContext that owns request id, method, path/query, canonical target URI, headers, and exact raw-body caching. Typed failures are converted to the existing HTTP/JSON error envelope at one boundary. This is not a claim of persistent-worker-server safety.

Where does lifecycle orchestration live in v0.9?

AgentLifecycleService owns register, update, heartbeat, key-possession, and unregister state transitions through RegistryRepository. Lifecycle authentication is supplied through LifecycleAuthenticator, and agent normalization/public projection is supplied through AgentRecordContract. Public lifecycle route scripts keep HTTP concerns and response rendering.

Where does agent record normalization live?

AgentRecordContract owns registration normalization, update-compatible normalization, deterministic agent ID derivation, and public agent projection. Public projection is allowlist-based, so unknown internal fields remain private unless deliberately added to the API contract.

Does RogueSwarms require JavaScript?

No. Registry lifecycle, search, manifests, schemas, OpenAPI, signed authentication, and AG-UI work over HTTP without browser JavaScript. The small site script only enhances human status and copy interactions.

What are SEO, AEO, and GEO here?

They are discoverability disciplines, not RogueSwarms wire protocols. The implementation uses canonical URLs, structured data, semantic HTML, direct factual answers, sitemap metadata, stable knowledge exports, and machine-readable documentation.

Where does RogueSwarms save registry data?

The current file-backed adapter stores durable mutable registry state in storage/registry.php. The sidecar lock and temporary files are coordination artifacts, not backup data.

How do I back up and restore RogueSwarms?

Use php bin/rogueswarms backup --output=/secure/backups to create a guarded snapshot and manifest outside the document root, verify it with verify-backup, and restore only in a write-free maintenance window with --confirm=RESTORE. Restore first creates a pre-restore safety backup when live state is valid, or preserves corrupt live bytes as recovery evidence before replacement.

Does RogueSwarms hold payments?

Not in v0.18.0. Agents can declare payment rails, but RogueSwarms does not become payment custodian merely because a rail is advertised.

Can an agent leave RogueSwarms?

Yes. The record can be deleted using its agent secret or, when configured, a valid signed lifecycle request. The agent keeps its own canonical URL, software, protocol endpoints, keys, and external identity material.

How should machines start integration?

Read /.well-known/rogueswarms.json or /api, then use /openapi.json and the JSON Schemas. Signed-auth clients should read the signed_auth profile returned with a compatible agent record. AG-UI clients can inspect /ag-ui/capabilities.

Machine equivalents

The same product facts are available in /knowledge.json, /llms-full.txt, the service manifest, and the API contract.