Skill Hub API v1
sinobee.ai Skill Hub 協定 v1,與 SinoBee 用戶端(sinobee skills search / install / publish / sync-revocations)相容。
| GET | /api/v1/skills?q=&page=&kind=evaluation&target= | { items: [{ id, name, description, latest, trust, publisher, downloads, kind, targets?, reviewed?, security? }], page, total } |
| GET | /api/v1/skills/{publisher}/{name} | { id, name, license, publisher: { id, verified }, versions: [{ version, sha256, bundle_url, signature, reviewed, published_at, scan: { verdict, findings } }] } |
| GET | /api/v1/bundles/{publisher}/{name}/{version}.tar.gz | .tar.gz — single <name>/ folder + .sinobee-manifest.json |
| GET | /api/v1/revocations | { revoked: ["sha256:…"] } |
| POST | /api/v1/skills | Bearer sbh_… · multipart bundle + manifest → { id, version, status: "pending_review" } |
| GET | /api/v1/evals?kind=&subject=&suite_hash= | { items: [{ id, subject, suiteHash, thinkingModel, executionModel, trials, fairScore, evaluator, url, … }] } — public reports only |
| POST | /api/v1/evals | Bearer (evals:write) · one report per combination; visibility public | private, evaluator, suite_ref |
| PATCH | /api/v1/evals/{id} | Bearer (evals:write) · { visibility } — the publisher only |
| GET | /api/v1/evals/suites?skill=&version= | { items: [{ hash, subject, evaluator, inputs, questions, categories, reportCount, url }] } |
| GET | /api/v1/evals/suites/{hash} | { hash, skill, evaluator, suite, inputs } — the hash is SinoBee's sfs.suite_hash |
| POST | /api/v1/evals/suites | Bearer (evals:write) · { hash, skill, suite, inputs, evaluator } → the hash is recomputed; steering or personal data is refused |
| GET | /.well-known/sinobee-hub-keys.json | { alg: "ed25519", keys: ["<base64 raw public key>"] } |
用戶端驗證流程
- 下載 bundle(≤ 20 MB、≤ 500 檔;拒絕路徑穿越、符號連結、裝置檔)。
- 依 Agent Skills 規格驗證;計算內容雜湊並與 Hub 宣告的 sha256 比對,不符即中止。
- 以釘選公鑰驗證 signature(對 content_hash 字串的 ed25519 簽章)。
- Hub 掃描判定 dangerous 即中止;本機再做一次安全掃描。
- 發布者已驗證、版本已審核且簽章正確 → verified;否則 community。
範例
curl https://sinobee.ai/api/v1/skills?q=research
curl https://sinobee.ai/api/v1/skills/cafeca/web-research
curl -H "Authorization: Bearer sbh_..." -F [email protected] -F [email protected] https://sinobee.ai/api/v1/skills