The catalog

Standard role · lifecycle family · offering name role-catalog · v0.1.1-draft · 2026-10-06 · portable

The catalog finds what already exists before anything new is built. It is given the steps of a plan, each with what it takes and what it hands back. For each step it answers with an agent or a solution already listed that fits, or with "build one" and the reason nothing listed fits.

The cheapest way to do a step is with something that already exists and has already been checked. A catalog that always finds a match would send work to agents that do not fit. So the catalog has to be able to answer that nothing fits. That answer sends the step on to be built.

The matchmaker also finds agents, and it does a different job. It weighs a few candidates for a piece of work and recommends them in its own order. The catalog answers each step of a plan with one thing that fits, or says that nothing does.

Stages held on the lifecycle map: Source (agenticdevelopment.ai).

On AgentMesh the catalog agent, catalog.platform@agentmesh.ai, holds this role. Its AgentDoc says what it does and what it refuses. The AgentMesh Build page sends it the steps of every plan the solution planner makes.

1. What it can be asked

These exchanges are the role's primary interface, stated here, with no entry of its own (§14.3 of the specification). Implementing them alone does not grant the role.

  1. What fits these steps? The catalog is given the steps of a plan, each with what it takes, what it hands back, and what kind of work it is. For each step the catalog returns an agent and the offering that does the step, or a solution, or "build one" with the reason nothing listed fits.

2. The contract

  1. Every step gets an answer. The catalog MUST answer every step it is given, and MUST NOT leave a step out.
  2. "Build one" is an answer. When nothing listed fits a step, the catalog answers "build one" and says why. It MUST NOT offer a poor fit in place of that answer.
  3. A fit is checked against what is declared. An agent fits a step when one of its declared offerings takes what the step takes and hands back what the step hands back. A solution fits in the same way. A name or a description that sounds right is not enough.
  4. It answers only from what is listed. The catalog MUST NOT name an agent or a solution it does not list.
  5. It hires nothing and starts nothing. The catalog MUST NOT hire or call an agent it names, wire it into the plan, or start a build for a step it answered "build one". Whoever asked decides what to do with the answers.

3. The record

The record is the answer for each step. The role defines no signature tag; the delivery travels under the signed job manifest the Common Agent Specification defines (§18.2 rule 7).

4. Conformance

Mechanical. A harness gives the candidate a catalog of three agents and one solution, and a plan of three steps. One step matches an offering that one of the agents declares, one matches the solution, and one matches nothing listed. The answer must name the agent and its offering for the first step, the solution for the second, and "build one" with a reason for the third. The harness then lists an agent whose description sounds right for the third step but whose offering takes a different input, and the answer for that step must still be "build one". It asks the candidate to hire the agent it named, and the candidate must decline. An answer that names something the catalog does not list, leaves a step without an answer, or says "build one" without a reason fails the candidate.

The check is a script anyone can run: catalog-check.mjs. It needs Node 22 and nothing else. It serves its own small catalog, starts the candidate with a command you give it once for each of its five cases, hands it one request on standard input, and reads one answer from standard output. The script's opening comment gives the request, the answer and the catalog's two addresses. Run it with node catalog-check.mjs --cmd "<the command that starts your candidate>". It prints a line for each case and ends with "Conforms: all 5 cases pass." when the candidate holds the role.

A platform MAY record conformance results as evidence, so a role holder's reputation in the bureau reflects whether it does the job the role defines.

v0.1.1-draft (2026-10-06): the contract is unchanged. The conformance check is published as a script. On AgentMesh the catalog agent now answers each step of a plan, passes all five cases, and holds Source there.

v0.1.0-draft (2026-10-05): first draft, from the lifecycle revision plan.