trae-api

command module
v0.0.0-...-d5c0846 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 30, 2026 License: Apache-2.0 Imports: 21 Imported by: 0

README

trae-api

trae-cli acp serve 包装为 OpenAI 兼容的 HTTP 服务。

安装

要求 Go 1.23 及以上,并已安装、登录 trae-cli

go install github.com/lftk/trae-api@latest

使用

启动服务:

trae-api

默认监听 127.0.0.1:8723

常用配置:

环境变量 默认值 说明
TRAE_API_ADDR 127.0.0.1:8723 监听地址
TRAE_API_WORKDIR 临时目录 项目目录
TRAE_API_TOKEN 非本机监听时必填
TRAE_API_BIN trae-cli CLI 可执行文件
TRAE_API_YOLO true 是否以 --yolo 启动 ACP
TRAE_API_SESSION_IDLE_TIMEOUT 720h session 空闲过期时间
TRAE_API_SESSION_SCAN_INTERVAL 1m session 过期扫描间隔

API

curl http://127.0.0.1:8723/v1/models

curl http://127.0.0.1:8723/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{"model":"","messages":[{"role":"user","content":"请简单介绍一下你自己"}]}'

支持:

  • GET /healthz
  • GET /v1/models
  • POST /v1/chat/completions
  • 文本消息和流式响应("stream": true
  • 使用请求头 X-Session-ID 复用会话,session ID 为随机 UUID
  • Claude Code 可直接使用其 X-Claude-Code-Session-Id 请求头复用会话(Claude Code 2.1.86+)

当前不支持图片等结构化消息。默认启动参数包含 --yolo,仅建议在受信任的本机项目目录中使用。

服务进程内会懒启动一个共享的 trae-cli acp serve 进程;每个逻辑 session 在该连接上拥有独立的 ACP SessionId。因此进程生命周期与 ACP session 生命周期 是分离的:稳定的 X-Session-IDX-Claude-Code-Session-Id 会复用对应 ACP session,而没有稳定标识的请求每次创建新的 ACP session,但不会创建新的 trae-cli 进程。服务只使用当前配置的一个工作目录。

session 当前仅存储在内存中,默认连续空闲 30 天后过期。若 ACP 声明支持 session/close,过期 session 会向 ACP 发送关闭请求;否则至少删除本地映射并记录 警告。共享进程崩溃会使该进程上的所有 session 一起失效,下一次请求会重新懒启动 进程;正在进行的请求会收到 upstream/ACP 错误。服务重启后需要重新建立 session。

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL