SuperAPI AI 工具集

setup-source

通用与其它

查看项目

更新于 10-16 01:17

技能介绍

用途:OpenArc 本身不含与任何帖子来源通信的代码,它通过一个本地实现的接缝访问来源。本技能用于在仓库根目录编写 openarc_adapter.py,满足该接缝,让 openarc patrol 能搜索和回复。用户需自行遵守来源的服务条款。

主要能力与契约:openarc_adapter.py 必须暴露 create_source(config),返回带两个方法的对象(对应 src/openarc/source.py 的 PostSource 接缝):search(self, keyword: str, since: datetime) -> list[Post] 和 publish_reply(self, post_id: str, text: str) -> None。Post 为 openarc.source.Post,含 id、author_id、author_username、text、permalink、posted_at(ISO-8601 字符串);id 与 author_id 须对帖子/作者稳定,OpenArc 据此去重和限速。search 返回匹配 keyword、不早于 since 的帖子,最新在前;成功但无匹配返回 []。认证失败、限速、请求/模式漂移、解析失败及 API 级错误必须抛异常,不能报成空结果;GraphQL 类 API 即使 HTTP 200 也要检查响应体中的 errors。publish_reply 将 text 作为对 post_id 的回复发布。密钥从环境读取,会话/认证在这些方法内惰性管理。

使用方式:从 openarc_adapter.example.py 复制为 openarc_adapter.py 并填写两个方法。向用户索取来源及其客户端访问方式,不要臆造端点。可靠做法是让用户在自己已登录的浏览器/应用中执行一次搜索和一次回复,交出对应请求(如网络面板的 copy as fetch)。用 httpx 复现并映射为 Post 对象;私有或带版本的 Web 接口应重放完整捕获请求,只替换已知会变的字段(如 query),不要擅自删除看似冗余的字段。验证:openarc pending 为空,并跑一次真实 openarc patrol,应返回帖子或干净空结果而非报错;随后让用户在 openarc queue 审阅草稿再发布。

Windows/PowerShell 编码:不要把中文请求体或回复文本直接放进 PowerShell 命令、echo、Out-File 默认或 cmd /c 字符串;写 UTF-8 文件并传路径。含非 ASCII 的草稿回复用:openarc draft <post_id> --text-file <utf8_reply_file>。OpenArc 接受带或不带 BOM 的 UTF-8。诊断时先将 $OutputEncoding 和 [Console]::OutputEncoding 设为 UTF-8;openarc pending 有意输出转义 JSON 以保非 ASCII 文本。

限制:来源接口会变,若 patrol 返回空或报错,说明复现的请求已漂移,需重新捕获并调整。适配器仅限用户对自身访问的个人自动化,保持窄范围——只做 patrol 所需的搜索与回复,以人类节奏进行;不要加入批量抓取、多账号或规避行为,用户若要求应拒绝并说明风险。