Why Skills Matter
In a multi-agent network, capability discovery is how work gets routed to the right agent. Without a standard way to declare skills, every integration becomes a custom handshake.| Without skills | With Bindu skills |
|---|---|
| Capabilities are implicit or undocumented | Skills are declared in a structured manifest |
| Orchestrators cannot discover what an agent does | Skills are published at /agent/skills |
| Task routing requires manual configuration | Agents can be matched to tasks by capability |
| No standard input/output contract | Each skill defines its expected I/O |
| Fine for single-agent scripts | Required for multi-agent systems |
Skills are defined in a
skills/ directory inside your project. Bindu reads them
automatically during bindufy and exposes them via the agent card and the
/agent/skills endpoint.How Bindu Skills Work
A skill is a directory insideskills/ that contains a skill.json manifest. The manifest describes the skill’s identity, input schema, output schema, and any configuration it needs.
The Skills Model
A minimal skill looks like this:Declarative
Skills are defined in JSON. No code required to declare what your agent can do.
Discoverable
Published at
/agent/skills so orchestrators and other agents can find them.Composable
Multiple skills per agent. Each skill is independently addressable.
The Lifecycle: Define, Register, Discover
Define
Create a Each
skills/ directory in your project root. Each subdirectory is a skill,
identified by its folder name.skill.json declares the skill’s identity and I/O contract.Register
Reference the skills directory in your agent config:Bindu reads the manifests during
bindufy and registers them automatically.
No additional code is needed.The Skill Manifest
Theskill.json file is the complete definition of a skill. All fields except id and name are optional, but the more you declare, the more useful the skill is for discovery and routing.
Fields
| Field | Required | Description |
|---|---|---|
id | Yes | Unique identifier for the skill, matches the directory name |
name | Yes | Human-readable name shown in the agent card |
description | No | What the skill does — used for capability matching |
tags | No | Keywords for discovery and routing |
examples | No | Sample inputs that demonstrate the skill |
inputModes | No | MIME types the skill accepts (default: text/plain) |
outputModes | No | MIME types the skill produces (default: text/plain) |
Multiple Skills
An agent can declare as many skills as it has capabilities. Each skill is independently addressable and can have its own I/O contract./agent/skills response. Orchestrators can inspect the full list and route tasks to the most appropriate skill.
Skills and Task Routing
In a multi-agent system, an orchestrator fetches the skills of available agents and matches incoming tasks to the right agent based on skill tags, descriptions, and examples. The orchestrator does not need to know the agent’s internals. The skill manifest is the contract.Real-World Use Cases
Research agent with multiple skills
Research agent with multiple skills
A research agent might declare
question-answering, summarization, and
web-search as separate skills. An orchestrator can route a summarization task
directly to the right skill without guessing.Specialized single-skill agent
Specialized single-skill agent
A focused agent that only does one thing well. Declaring a single skill makes its
purpose unambiguous and easy to route to.
Agent swarm with skill-based routing
Agent swarm with skill-based routing
In a swarm, each agent declares its skills. The orchestrator builds a capability
map at startup by fetching
/agent/skills from every agent, then routes tasks
dynamically based on what each agent can do.Project Structure
Thecreate-bindu-agent template scaffolds the skills directory for you:
skills/ and adding a skill.json to each one.