@opvs-ai/skills-sdk
v0.2.3
Published
Embeddable OPVS skill toolkit — ToolSpec definitions + executor for the 6 public OPVS skills: AgentBoard, AgentDocs, AgentMemory, OPVS Protocol, Auth, Integrations.
Maintainers
Readme
@opvs-ai/skills-sdk
Embeddable OPVS skill toolkit — the same tool definitions that power OpenClaw Tier 3 plugins and @opvs-ai/mcp-*, usable from any Node.js agent framework.
Install
npm install @opvs-ai/skills-sdk @opvs-ai/coreUse one skill
Each skill is a subpath export exposing tools (a ToolSpec[]) and execute (a dispatcher):
import { tools, execute } from "@opvs-ai/skills-sdk/agentboard";
// Inspect
console.log(tools.length); // 60
console.log(tools[0].name); // "agentboard_getSession"
// Call a tool — auth is read from ~/.opvs/config.json (same as the CLI)
const result = await execute("agentboard_listBoards", {});
console.log(result.text); // YAML or JSON bodyAvailable subpaths: /agentboard, /agentdocs, /opvs-protocol (plus all other OPVS skills — same pattern).
ToolSpec contract
interface ToolSpec {
name: string; // e.g. "agentboard_listTasks"
description: string;
inputSchema: JsonSchema; // standard JSON Schema for params
http: {
method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
path: string; // e.g. "/api/v1/board/..."
pathParams: string[];
queryParams: string[];
bodyParams: string[];
};
}This is everything an LLM or agent framework needs: describe the tool to the model, then hand raw params to executeTool(spec, args, ctx).
Adapt to any framework
// Vercel AI SDK
import { tools as agentboard, execute } from "@opvs-ai/skills-sdk/agentboard";
const aiSdkTools = Object.fromEntries(
agentboard.map((t) => [
t.name,
{ description: t.description, parameters: t.inputSchema, execute: (args) => execute(t.name, args) },
]),
);Same shape works for LangChain, OpenAI SDK tool calling, or any MCP server — ToolSpec is the source of truth.
Auth
Token + brand come from ~/.opvs/config.json (created by opvs auth request). Override per-call via the optional context arg: execute(name, args, { workspace: "slug" }).
Regeneration
All per-skill tools.ts files are auto-generated from schema.yaml. Do not edit them.
opvs-skills generate --all --sdk packages/skills-sdkSee also
- @opvs-ai/mcp-agentboard — 10-line MCP wrapper around this SDK
- @opvs-ai/mcp-runtime — shared stdio server used by the wrappers
- @opvs-ai/mcp — original all-in-one MCP (417+ tools), kept for existing users
