Skip to main content

What It Is

@nuwa-ai/cap-kit helps you register, discover, and manage Caps (Agent Capability Packages). It integrates DID auth, IPFS storage, Rooch contracts, and MCP.

Examples

Register a Cap
Query & Stats

Install

CapKit (Constructor)

Create a CapKit client. Inputs
object
required
Returns
CapKit
Configured CapKit instance

Methods

getTools

Fetch and cache MCP tool registry. Inputs
void
No input parameters
Returns
record
Server-exposed tools keyed by name

mcpClose

Close the underlying MCP client. Inputs
void
No input parameters
Returns
void
No return value

queryByID

Query Cap metadata by id or cid. Inputs
string?
Cap id (e.g., did:…:name)
string?
IPFS CID
Returns
Result<ResultCap>
Result wrapper with code, data?, error?

queryByName

Search Caps by name/tags with pagination/sort. Inputs
string?
Optional partial name
string[]?
Filter by tags
number?
Page index
number?
Page size
"average_rating"|"downloads"|"favorites"|"rating_count"|"updated_at"?
Sort field
"asc"|"desc"?
Sort order
Returns
Result<Page<ResultCap>>
Paged results

queryMyFavorite

List favorite Caps of the current DID. Inputs
number?
Page index
number?
Page size
Returns
Result<Page<ResultCap>>
Paged favorites

favorite

Add/remove/check favorite for a Cap. Inputs
string
required
Cap identifier
"add"|"remove"|"isFavorite"
required
Operation to perform
Returns
Result<boolean>
True on success

queryCapStats

Fetch downloads/ratings/favorites. Inputs
string
required
Cap identifier
Returns
Result<CapStats>
Stats including downloads, averages, favorites

rateCap

Rate a Cap (1..5). Inputs
string
required
Cap identifier
number
required
Integer 1..5
Returns
Result<boolean>
True on success

queryCapRatingDistribution

Get rating histogram for a Cap. Inputs
string
required
Cap identifier
Returns
Result<RatingDistribution[]>
Distribution list

updateEnableCap

Enable/disable a Cap. Inputs
string
required
Cap identifier
"enable"|"disable"
required
Toggle action
Returns
Result<boolean>
True on success

downloadByID / downloadByCID

Download Cap YAML via id/cid and parse into Cap. Inputs
string
required
Cap id or IPFS CID
"base64"|"utf8"?
Optional format
Returns
Cap
Parsed Cap object

registerCap

Upload Cap YAML to IPFS and register on-chain. Inputs
Cap
required
Cap content to register
Returns
string
IPFS CID