JSPM

@opvs-ai/skills-sdk

0.2.3
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 8
  • Score
    100M100P100Q51974F
  • License MIT

Embeddable OPVS skill toolkit — ToolSpec definitions + executor for the 6 public OPVS skills: AgentBoard, AgentDocs, AgentMemory, OPVS Protocol, Auth, Integrations.

Package Exports

  • @opvs-ai/skills-sdk
  • @opvs-ai/skills-sdk/agentboard
  • @opvs-ai/skills-sdk/agentdocs
  • @opvs-ai/skills-sdk/agentmemory
  • @opvs-ai/skills-sdk/auth
  • @opvs-ai/skills-sdk/integrations
  • @opvs-ai/skills-sdk/opvs-protocol
  • @opvs-ai/skills-sdk/runtime

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/core

Use 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 body

Available 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-sdk

See also