跳到主内容

@txopc/sdk · TypeScript

官方 TypeScript 客户端

基于 OpenAPI 3.1( /docs/api )。一行代码访问所有公开端点;带 PAT 时自动注入 Bearer,错误统一 `TxopcApiError`。

安装

# bun / npm / pnpm
bun add @txopc/sdk
# 或:npm i @txopc/sdk

公开调用(无 PAT)

import { TxopcClient } from "@txopc/sdk";

const client = new TxopcClient({ baseUrl: "https://txopc.ai" });

// 技能市场列表
const { items } = await client.skills.list({ q: "翻译", limit: 10 });

// 热门分享(24h)
const { items: hot } = await client.shares.trending({ window: "24h" });

// 平台总指标 + 24h / 7d 增量
const stats = await client.platform.stats();
console.log(stats.delta_24h);

PAT 鉴权(用户态)

const me = new TxopcClient({ token: process.env.TXOPC_PAT });

await me.messages.send({
  content: "Hello",
  trigger_ai: true,
  model: "google/gemini-2.5-flash",
});

const usage = await me.usage.summary({ days: 30 });

嵌入 iframe

const url = client.embedUrl("share_id_xxx", { theme: "auto" });
// 直接挂在你的页面:
// <iframe src={url} style="width:100%;height:600px;border:0" />

错误处理

import { TxopcApiError } from "@txopc/sdk";

try {
  await client.shares.get("missing");
} catch (e) {
  if (e instanceof TxopcApiError) {
    console.error(e.status, e.body, e.headers["x-ratelimit-reset-in"]);
  }
}

从 OpenAPI 全量再生成

cd packages/sdk-ts
bun regen           # 抓 https://txopc.ai/api/public/v1/openapi.json
bun regen:local     # 抓本地 http://localhost:8080

Try it · 浏览器内即时调用

直接在当前域名下发请求;带 PAT 时自动加 Bearer。响应原文展示,2xx 绿色 / 非 2xx 红色。