Skip to content

brucevon/opencode-api-deploy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Opencode API Deploy

将本地 opencode CLI 封装为 OpenAI 兼容 API,支持流式/非流式聊天和工具调用(tool calling),智能体拥有完整能力(读写文件、执行命令等)。

文件结构

opencode-api-deploy/
├── session-proxy.js       # OpenAI 兼容代理(核心)
├── opencode-api-setup.md  # 完整部署指南(博客风,另一台机器可读)
├── systemd/
│   ├── opencode-api.service           # opencode serve 原生 API
│   └── opencode-session-proxy.service # session proxy(OpenAI 兼容层)
└── README.md

快速开始

  1. 确保已安装 opencode 和 Node.js(推荐通过 mise 管理)
  2. 部署 opencode serve
    mkdir -p ~/.config/systemd/user
    cp systemd/opencode-api.service ~/.config/systemd/user/
    systemctl --user daemon-reload
    systemctl --user start opencode-api.service
    systemctl --user enable opencode-api.service
  3. 部署 session proxy
    mkdir -p ~/.opencode-cli-proxy/bin
    cp session-proxy.js ~/.opencode-cli-proxy/bin/opencode-session-proxy.js
    cp systemd/opencode-session-proxy.service ~/.config/systemd/user/
    systemctl --user daemon-reload
    systemctl --user start opencode-session-proxy.service
    systemctl --user enable opencode-session-proxy.service
  4. 测试
    curl -s http://127.0.0.1:18081/v1/models \
      -H "Authorization: Bearer sk-gw-demo"

环境变量

变量 默认值 说明
MODELS (自动获取) 静态覆盖模型列表,用逗号分隔。设置了则跳过自动获取
OPENCODE_BIN (自动探测) opencode 二进制路径。自动在 mise shims/ 和 PATH 中查找
OPCODE_HOST 127.0.0.1 opencode serve 监听地址
OPCODE_PORT 4096 opencode serve 端口
PROXY_PORT 18081 代理服务端口
API_KEY sk-gw-demo 客户端认证密钥

代理启动时自动执行 opencode models 获取最新可用模型列表,无需手动配置。

详细说明见 opencode-api-setup.md

设计

  • 不是 opencode run(一次性问答,无 agent 能力)
  • 而是 通过 /session API + /global/event SSE 流直接调用 opencode serve 的会话引擎
  • 工具调用:文本标记协议([TOOL_CALL: name] {json} [/TOOL_CALL]),转换为主流 OpenAI tool_calls 格式

About

使用opencode自己封装的API,克隆仓库使用opencode读取即可自我封装

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages