权限模型
插件权限不是一次授权永久生效;真实代码按租户、角色、scope、状态和公开市场审核多层过滤。
可见性过滤
GET /api/v4/plugins:owner/admin 下租户内status=APPROVED且is_enabled=true的插件。GET /api/v4/public/plugins:匿名可读,但必须status=APPROVED、market_status=APPROVED、is_enabled=true。GET /api/v4/skill-store:公共技能要求scope=PUBLIC、status=APPROVED、未删除、未归档。GET /api/v4/tools:JWT 用户或 Desktop OAuth,scope 为tools。
OAuth scope
Desktop OAuth 里技能组包含 skill_store、tools、tools:execute。安装/认证技能走 skill_store,工具列表走 tools。
安全边界
API key 加密保存;公共市场 readme 和 usageInstructions 会做内容安全校验;Skill 上传会做 ZIP、URL、schema 和 prompt injection 检查。