Idea

Tools are the platform

Build the safety machinery once, make it the only path, and let everything else be a declaration

Platform principleFour systemsOne pipeline · tools as data
Many declarations One frozen path, in a fixed order
  • 474tools behind one authenticated FAFOHive endpoint, under one trust model
  • 12steps in the frozen pipeline every Agent Swarm call passes
  • ~180gateway actions compiled from YAML schemas into dispatch

An agent is only as capable as the tools it can reach and only as safe as the path those tools take. I decided that the path would be built once, that it would be the only path, and that adding capability would be a matter of declaring a tool rather than writing a service. Validation, authorisation, limits, sanitisation, audit and observation happen in one pipeline for every call. A tool contributes its core behaviour and nothing else. An agent class is a composition of a tool subset, a policy, a workspace and a profile.

The shape

One frozen pipeline in a fixed order. Tools declared as data. Composition is declarative: a persona is a document, a function is a generated unit, a tool estate is a registry.

A tool is a declaration
schema
limits
grants
fixtures that prove it
fixtures that attack it
compiled into dispatchor the build fails
Every host, the same approved set
host 1
host 2
host 3

One hash-pinned catalog: a host cannot run a tool the others do not.

Where it appears

In Agent Swarm, the pipeline's order cannot change without sign-off: Tools are the platform.

In FAFO Core and Function Forge, one function definition becomes an orchestrated, budgeted, agent-callable tool, and agents can author new tools inside a sandbox that becomes callable only after a human restart: Tools that build tools, under governance.

In FAFOHive, the endpoint has three dispatch paths, and the business providers' APIs are rebuilt as tools under stable namespaces so agents see a steady surface: Agents with real tools and no keys.

The Capabilities model is where the size of the estate was answered: A hundred tokens instead of forty-two thousand.

Agent Swarm, all declarations
40 tools
29 personas, each a document
Capabilities model: the catalog, collapsed

One discovery tool, backed by a model that cannot name a tool outside the registry.

What it buys and what it costs

It buys a security posture that does not erode as the estate grows, because the hundredth tool gets exactly the scrutiny the first one got. It buys speed of extension, because declaring is cheaper than coding. It buys a catalog large enough that it needed its own routing model.

It costs flexibility: a frozen pipeline cannot be special-cased, and a tool that needs something the pipeline does not offer waits for the pipeline to grow. I pay that, because the alternative is a hole per tool.

The judgment in it

The hard discipline is refusing the exception. The trivial tool still needs fixtures, the unfinished tool kind stays unrunnable, and the generator that could hot-load a function rebuilds and waits for a human instead.

Exceptions are where the holes are.