Octop v0.9.20 不内置“专家JWT”,需由外部认证服务签发含 roles: ["expert"] 的 JWT,并在 Agent YAML 工具配置中通过环境变量注入 Authorization: Bearer <token> 请求头,或用会话状态模拟专家上下文。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

Octop v0.9.20 本身不提供“专家JWT”这一内置概念,也没有预设的“专家”身份认证模块。所谓“专家JWT”,通常指为特定高权限角色(如领域专家、审核员、高级助手)签发的、携带明确角色声明(如 role: expert)并经可信密钥签名的 JWT,用于在多 Agent 协作或 API 调用中标识可信执行上下文。
明确 JWT 的用途和签发方
Octop 是一个可扩展的多 Agent 平台,它本身不生成或管理用户级 JWT,但支持消费外部签发的 JWT(例如来自 Okta、Auth0 或自建 Auth 服务)。因此,“设置专家JWT”实际分两步:
- 由你控制的认证服务(如 FastAPI 后端、Keycloak 或自研 Auth 模块)为具备专家资质的用户/Agent 签发带 roles: ["expert"] 声明的 JWT
- 在 Octop 中配置对应 Agent 或工具调用时,将该 JWT 作为 Authorization: Bearer <token> 注入请求头
在 Octop Agent 工具配置中注入专家 JWT
当你需要某个 Agent(例如“MBTI 专家分析员”)调用受保护的后端 API(如 /api/v1/analysis/expert)时,可在 YAML 工具定义中直接传入 JWT:
- 把 JWT 存为环境变量(推荐):EXPERT_JWT=eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...
- 在 YAML 的 parameters 或 headers 中引用:
headers:<br> - name: Authorization<br> value: "Bearer {{ env.EXPERT_JWT }}" - 确保该 Agent 的提示词逻辑中说明:“仅当持有有效 expert 角色 JWT 时,才执行深度分析步骤”
验证 JWT 的角色与权限(可选增强)
若后端 API 需校验 JWT 中的 expert 权限,需确保令牌包含标准角色声明:
- 使用 RS256 签名(推荐),公钥由后端通过
/.well-known/jwks.json自动获取 - 载荷(payload)中必须含 roles 字段,值为数组,且含 "expert"(注意大小写与格式统一)
- 颁发者(iss)和受众(aud)需与后端配置严格匹配,否则验证失败
替代方案:用 Octop 内置会话状态模拟“专家上下文”
若暂无完整 JWT 认证体系,可用轻量方式模拟专家身份:
- 在用户首次输入时识别关键词(如“我是心理督导”“持证 MBTI 讲师”),将其标记为 is_expert: true 并存入会话 state
- 后续所有 Agent 步骤读取该 state,动态调整提示词权重与响应深度(例如启用“临床级解读模式”)
- 此方式无需密钥管理,适合内部测试或低安全要求场景

















