跳到正文
FunCoding

搜索

搜索文档、Skill 和 MCP

项目与系统 HTTP API

查询项目、配置、提供商、文件、工具状态,并驱动 TUI。

以下路径相对于 OpenCode 服务地址。先按服务端设置配置认证,并使用该实例的 /doc 核对请求/响应类型。

项目、路径与实例

方法和路径用途
GET /project列出项目
GET /project/current当前项目
GET /path当前路径信息
GET /vcs当前项目的版本控制信息
POST /instance/dispose释放当前实例,返回 boolean

先确认当前项目和路径,再调用文件或配置接口,避免把实例状态误认为客户端本地目录。

配置与提供商

方法和路径用途
GET /config读取配置
PATCH /config更新配置
GET /config/providers提供商和默认模型映射
GET /provider全部提供商、默认模型与 connected ID 列表
GET /provider/auth按提供商 ID 返回认证方法
POST /provider/{id}/oauth/authorize开始 OAuth 授权
POST /provider/{id}/oauth/callback处理 OAuth 回调
PUT /auth/:id设置认证凭据,请求体必须符合该提供商 schema

不能把所有认证都压成同一个 API Key 字段;具体方式见提供商认证。配置写入与登录是有状态操作。

文件与搜索

方法和路径用途
GET /find?pattern=<pat>按文本模式搜索文件内容
GET /find/file?query=<q>按名称模糊查找文件/目录
GET /find/symbol?query=<q>查找 workspace symbol
GET /file?path=<path>列出文件与目录
GET /file/content?path=<p>读取文件内容
GET /file/status获取受版本控制文件的状态

文本搜索结果包含 path、lines、line_number、absolute_offset、submatches。文件名称搜索返回路径数组,参数如下:

/find/file 查询参数含义
query必填,模糊搜索字符串
type可选 file 或 directory
directory覆盖本次搜索的项目根目录
limit最大返回数,范围 1–200
dirs旧兼容参数;"false" 只返回文件

工具、扩展与日志

方法和路径用途
GET /command命令列表
GET /agent可用智能体
GET /lspLSP 服务状态
GET /formatterformatter 状态
GET /mcp按名称返回 MCP 状态
POST /mcp动态添加 MCP;请求体 { name, config }
GET /experimental/tool/ids实验接口,列出工具 ID
GET /experimental/tool?provider=<p>&model=<m>实验接口,返回指定模型的工具及 JSON schema
POST /log写日志;请求体 { service, level, message, extra? }

实验工具端点与稳定接口分开管理,不能由其存在推断每个模型都能调用所有工具。

驱动 TUI

这些端点用于已有 TUI 的交互控制,IDE 插件也使用此类能力:

方法和路径用途
POST /tui/append-prompt向输入框追加文本
POST /tui/submit-prompt提交当前输入
POST /tui/clear-prompt清空输入
POST /tui/open-help打开帮助
POST /tui/open-sessions打开会话选择
POST /tui/open-themes打开主题选择
POST /tui/open-models打开模型选择
POST /tui/execute-command执行命令,请求体含 command
POST /tui/show-toast通知,请求体 { title?, message, variant }
GET /tui/control/next等待下一个控制请求
POST /tui/control/response以 { body } 响应控制请求

直接提交 Agent 任务应使用会话与消息 API。附加到输入框和真正执行任务是不同阶段。