会员中心
个人主页
管理需求、创作者资料、钱包与账号信息
我的需求
通过顶部账号菜单切换分区;以下为当前分区内容。
卖家开发契约与可封装性
为保证平台能静态分析、替换网关地址并注入计量与身份,您的源码须满足最小契约;违反时上架应失败并提示可修复项。以下为摘要,完整说明见仓库文档
doc/agentstore-卖家开发契约与可封装性要求.md。
设计原则
- 默认无密钥:包内不得含 API Key、Secret、Bearer 明文;自测密钥仅本地使用,提交前删除。
- 可定位的单一出口(形态3):发往登记第三方 API 的 HTTP(S) 调用须在源码中可被静态分析到。
- 不破坏语义:平台只替换 URL 与鉴权头,不改请求体业务字段。
- 可观测:成功/失败路径下平台能记录「逻辑调用」用于计量(以网关为准)。
形态 1 / 2(本地离线 / 本地联网)
- 不上传压缩包、加密包(与平台上传策略一致)。
- 不调用第三方可计费 API;若需要请改为形态 3。
- 联网仅限声明用途(如版本检查);勿夹带未声明的追踪/外传(由 Semgrep 等策略覆盖)。
- 无需为权限锁/试用写代码,由封装模板注入。
形态 3(云端 API)HTTP 契约
| 编号 | 规则 | 目的 |
|---|---|---|
| R1 | 后台登记的「API 基础 URL」与源码中实际请求 URL 完全一致(含 path;可含 query 模板若平台支持登记)。 | 便于替换为平台网关入口 |
| R2 | 使用 HTTP(S);禁止硬编码密钥;自测的 Authorization 等须在上传前删除。 | 安全扫描 + 网关代发 |
| R3 | 每次计费 API 对应一次 requests.post / fetch / HttpClient 等可拦截调用。 | 计量与网关一致 |
| R4 | 调用结束后程序能继续运行(不崩溃退出),以便注入收尾逻辑。 | 与封装策略一致 |
推荐模式: Python(requests/httpx)、Node(fetch/axios)、Java(HttpClient)、Go(http.Post/client.Do),URL 为字面量或与常量拼接且在登记范围内。
告警/拒绝: URL 仅从加密配置、远程拉取、环境变量读取且无法替换;自建代理仅见代理地址;二进制混淆隐藏 URL;非 HTTP 协议且无适配层等。
可封装性:支持的代码模式(3.1)
以下为平台优先支持、便于静态替换与计量的写法。
- Python:
requests.post(url, …)或httpx,url为字面量或与常量拼接且在登记范围内。 - Node.js:
fetch(url, …)或axios,url为字面量。 - Java:
HttpClient/HttpURLConnection,URL 为String字面量或URI.create("…")。 - Go:
http.Post/client.Do,URL 为常量。
需限制或需人工复核(3.2)
- URL 从加密配置、远程拉取、环境变量读取(非平台注入):可能无法替换 → 扫描会告警,建议改为常量 URL。
- 通过自建代理再转发到目标 API:网关可能只看到代理地址 → 需拦截或声明代理地址。
- 多线程/异步并发调用:允许;每个独立请求应可被分别计量,并遵守幂等键约定(见 API 网关文档)。
反模式:应拒绝上架(3.3)
- 在二进制/混淆代码中隐藏 URL(无法替换)。
- 使用非 HTTP 协议(如 gRPC 自定义、私有 socket)连接第三方大模型,且未提供平台可识别的适配层。
管理端上架门禁(形态 3)
在管理后台保存商品时,若应用形态为云端 API且状态为上架,在下列情况下须额外提交待交付源码片段(字段 encapsulationSourceCode),并由后端执行与下方「源码可封装性自检」相同的静态分析;未通过则保存失败并返回可修复项:新建即上架、首次从下架改为上架、或修改了登记的上游 API 地址 / 应用形态。仅改简介等未触及上述条件时,无需重复提交源码。
上架前自测(建议)
- 本地用临时密钥完成联调。
- 删除所有密钥行与注释中的敏感串。
- 将源码中的
api_url与后台「接口地址」对齐为同一字符串。 - 跑通完整流程,确认无异常退出。
源码可封装性自检
粘贴主逻辑源码,选择形态;形态 3 时填写将登记的上游 API URL。提交后由后端做启发式静态分析(非完整 AST),与接口 POST /app-api/app-trade/store/encapsulation/validate-source 及管理端上架门禁同源。结果供上架前自查。
上架交付包上传(安全扫描)
对接后端 POST /app-api/app-trade/store/upload/listing:需登录;上传单文件后由服务端执行
前置校验 → ClamAV → Semgrep(与
doc/agentstore-上架安全扫描流水线.md 一致)。整段流水线默认约 10 秒超时。
支持扩展名以服务端白名单为准(如 .exe、.py、.js 等);禁止压缩包类后缀。
试用、激活与商品定价在管理后台创建/编辑商品时配置,本接口仅完成扫描通过与文件落库,返回可引用的文件 URL。
最近一次上传结果
我的创作者与上架应用
上架应用
钱包与资金流
充值、消费与最近动账
账户余额
¥0.00
最近资金动账
| 类型 | 描述 | 金额 | 状态 | 时间 |
|---|
修改登录密码请使用 登录页 相关流程。