📦 Ainative Auth Guide — AI原生认证指南

v1.0.0

一站式文档,教你为AINative API接入API Key、JWT、邮箱/密码及OAuth2(LinkedIn/GitHub)等全套认证流程,提供Python与TS示例、Token刷新、登出及Next.js中间件写法,帮助开发者快速安全集成。

0· 101·1 当前·1 累计
by @urbantech (Toby Morning)·MIT-0
下载技能包
License
MIT-0
最后更新
2026/3/24
0
安全扫描
VirusTotal
无害
查看报告
OpenClaw
安全
high confidence
这是仅含指导的AINative API认证指南;示例与接口与声明用途一致,不索要额外权限,也不安装代码。
评估建议
这是一份纯文档型技能,内容聚焦AINative认证,看起来一致。使用前请:(1) 确认api.ainative.studio为预期服务并信任所引SDK(如@ainative/next-sdk);(2) 切勿在公开或不可信环境粘贴真实API Key或长期密钥,应使用环境变量与最小权限密钥;(3) SKILL.md示例出现process.env.AINATIVE_API_KEY,但技能元数据未声明需环境变量,仅为示例,不会自动读取凭据;(4) 若计划安装引用SDK或运行npx命令,先审查对应包源及发布出处;(5) 若后续出现额外代码文件或安装脚本(当前无),需重新评估风险。...
详细分析 ▾
用途与能力
名称/描述(实现API Key、JWT、OAuth2流程)与SKILL.md内容一致:示例请求、接口、Next.js中间件用法及Token流转均为认证指南应展示的内容,技能元数据未要求无关服务或凭据。
指令范围
指令仅限于演示对api.ainative.studio的HTTP调用、OAuth回调流程、Token刷新/登出及一段Next.js中间件代码,未指示读取任意本地文件或向异常端点外泄数据。对仓库路径及npx/SDK的引用仅为文档指引,非访问无关系统状态的命令。
安装机制
本技能为纯指令型,无安装规范与代码文件,因此不会在主机写入或执行代码,安装风险最低。
凭证需求
技能元数据未声明所需环境变量或凭据,这对指南而言合理。SKILL.md示例中出现process.env.AINATIVE_API_KEY及占位API Key(ak_your_key),属于正常示例用法,但未在requires.env体现;用户需知悉实施示例时需自行提供密钥。
持久化与权限
always为false且无安装或代码,因此不会持久化或修改其他技能及全局代理设置。该技能不请求常驻或提升平台权限。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.0.02026/3/24

- ainative-auth-guide技能首次发布。 - 为AINative API提供完整认证指导,包括API Key、JWT、邮箱/密码、OAuth2(LinkedIn/GitHub)及中间件模式。 - 附带Python与TypeScript使用示例,逐步演示注册、登录、Token管理、社交登录流程。 - 列出主要认证端点、错误码及参考文档链接。

无害

安装命令

点击复制
官方npx clawhub@latest install ainative-auth-guide
镜像加速npx clawhub@latest install ainative-auth-guide --registry https://cn.longxiaskill.com

技能文档

# AINative 身份验证指南 ## 认证方式 | 方法 | 使用场景 | 请求头 | |--------|----------|--------| | API Key | 服务器端、agents、SDK、MCP 工具 | X-API-Key: ak_... | | Bearer JWT | 用户会话、Web 应用 | Authorization: Bearer | | OAuth2 | 社交登录(LinkedIn、GitHub) | 标准 OAuth2 流程 | ## API Key 认证(最简单) 通过 npx zerodb init 或控制台获取密钥。 ``python import requests response = requests.get( "https://api.ainative.studio/api/v1/public/credits/balance", headers={"X-API-Key": "ak_your_key"} ) ` `typescript const res = await fetch("https://api.ainative.studio/api/v1/public/credits/balance", { headers: { "X-API-Key": "ak_your_key" } }); ` ## 邮箱/密码注册与登录 `python # 注册 resp = requests.post( "https://api.ainative.studio/api/v1/auth/register", json={"email": "user@example.com", "password": "securepass", "name": "Alice"} ) token = resp.json()["access_token"] # 登录 resp = requests.post( "https://api.ainative.studio/api/v1/auth/login", json={"email": "user@example.com", "password": "securepass"} ) access_token = resp.json()["access_token"] refresh_token = resp.json()["refresh_token"] ` ## JWT 使用 `python headers = {"Authorization": f"Bearer {access_token}"} me = requests.get("https://api.ainative.studio/api/v1/users/me", headers=headers).json() ` ## 刷新令牌 `python resp = requests.post( "https://api.ainative.studio/api/v1/auth/refresh", json={"refresh_token": refresh_token} ) new_access_token = resp.json()["access_token"] ` ## 登出 `python requests.post( "https://api.ainative.studio/api/v1/auth/logout", headers={"Authorization": f"Bearer {access_token}"} ) ` ## OAuth2 社交登录 `python # LinkedIn resp = requests.post( "https://api.ainative.studio/api/v1/auth/linkedin/callback", json={"code": oauth_code, "redirect_uri": "https://yourapp.com/callback"} ) # GitHub resp = requests.post( "https://api.ainative.studio/api/v1/auth/github/callback", json={"code": oauth_code, "redirect_uri": "https://yourapp.com/callback"} ) token = resp.json()["access_token"] ` ## Next.js 中间件 `typescript // middleware.ts import { createMiddleware } from '@ainative/next-sdk/middleware'; export const middleware = createMiddleware({ apiKey: process.env.AINATIVE_API_KEY!, protectedPaths: ['/dashboard', '/api/protected'], loginPath: '/login', }); ` ## 重置密码 `python # 请求重置邮件 requests.post("https://api.ainative.studio/api/v1/auth/forgot-password", json={"email": "user@example.com"}) # 使用邮件中的 token 设置新密码 requests.post("https://api.ainative.studio/api/v1/auth/reset-password", json={"token": "reset_token_from_email", "new_password": "newpassword"}) ` ## 认证端点 | 端点 | 方法 | 说明 | |----------|--------|-------------| | /api/v1/auth/register | POST | 创建账户 | | /api/v1/auth/login | POST | 邮箱/密码 → JWT | | /api/v1/auth/logout | POST | 使会话失效 | | /api/v1/auth/refresh | POST | 刷新访问令牌 | | /api/v1/users/me | GET | 当前用户资料 | | /api/v1/auth/verify-email | POST | 验证邮箱地址 | | /api/v1/auth/forgot-password | POST | 发送重置邮件 | | /api/v1/auth/reset-password | POST | 应用新密码 | | /api/v1/auth/linkedin/callback | POST | LinkedIn OAuth2 | | /api/v1/auth/github/callback | POST | GitHub OAuth2 | ## 错误码 | 状态码 | 含义 | |--------|---------| | 401 | 令牌/密钥无效或缺失 | | 403 | 认证有效但权限不足 | | 409 | 邮箱已被注册 | ## 参考资料 - src/backend/app/api/v1/endpoints/auth.py — 认证端点实现 - packages/sdks/nextjs/src/middleware/ — Next.js 认证中间件 - docs/guides/AUTHENTICATION.md` — 完整认证指南

数据来源ClawHub ↗ · 中文优化:龙虾技能库