What is a Capability?
In Naftiko, a capability is the fundamental unit of integration. It wraps one or more upstream APIs into a single, governed, domain-driven contract that can be consumed by developers, AI copilots, and autonomous agents. Each capability is defined by a spec, runs on the framework, and is discoverable in the fleet.
Anatomy of a capability
- What it consumes – Upstream APIs declared as source adapters with authentication, endpoints, and operations.
- What it orchestrates – Multi-step workflows that combine data from multiple sources.
- What it exposes – REST endpoints, MCP tools, Agent Skills, and A2A interfaces for downstream consumers.
- How it is governed – Policies for security, compliance, quality, and operational constraints.
- How it is deployed – Docker, Kubernetes, and environment-specific configuration.
Why it matters
A capability is more than an API proxy or wrapper. It is a reusable, governed building block that carries its own documentation, contracts, governance rules, and deployment configuration. This makes integration a first-class engineering discipline rather than ad-hoc glue code.