文档助手

默认在本地检索本站文档;配置回答服务后可生成答案。

可询问有关 当前页面 或 Carina 文档的问题,例如:“如何回滚补丁?”

llms.txt

跳到内容

Markdown

Runtime API 概览

JSON-RPC、本地与可选 Gateway 传输、作用域和 SDK 接入面。

Carina 的主嵌入协议是 JSON-RPC 2.0:本机客户端通过 unix socket(~/.carina/daemon.sock)或 stdio 连接。面向网络的 WebSocket / HTTP Gateway 必须显式启用,并且默认关闭。

carina daemon start
carina gateway hello
carina gateway methods

gateway.hello 只描述版本、角色、功能和方法目录,不授予权限。真正的权限仍由传输来源、方法描述符与能力内核共同决定。

接入面适用场景
本地 JSON-RPCCLI、TUI、IDE 和自定义客户端的首选路径
WebSocket Gateway远程长连接;要求签名且带作用域的 token
HTTP GatewayOpenAI 风格 /v1 接口和受限工具调用
MCP 客户端 / 服务端在 Carina 策略下互操作工具
TS / Python / Go SDK类型化会话、事件、成本和 steering
  1. 本地权威:远程同步不能静默覆盖本机策略。
  2. 描述符目录:远程暴露范围和所需作用域来自方法注册表;严格模式拒绝未分类 handler。
  3. 结构化事件:客户端消费类型化事件,而不是解析终端文本。
  4. 显式能力:attach 必须选择 profile,最终副作用权限由能力内核裁决。
Scope含义
read状态、列表、回放、目录、审计与结果
write本地操作边界内的会话、任务、工作区变更
admin配置、密钥、策略、插件与审批等控制面动作
worker远程 worker 租约协议
stream长连接事件订阅

部分方法使用动态作用域。例如 workspace.patch.propose 遇到空路径、绝对路径或 .. 时会升级到 admin。作用域分类不是授权本身,能力内核仍是最终权威。

WebSocket 首帧必须是带签名 token 的 gateway.hello;浏览器 Origin 不在允许列表时会被拒绝。HTTP 请求必须带 Authorization: Bearer <gw1 token>,并匹配 transport、路由授权和 scope。

路由作用Scope
GET /v1/models列出 Carina agent 目标read
POST /v1/chat/completionsOpenAI 风格聊天转 Agent 任务write
POST /v1/responsesResponses 风格请求和有限连续性write
POST /tools/invokedaemon / kernel 下的只读允许列表read

/v1agent-firstmodel 选择 carinacarina/defaultcarina/<agent_id>,不是直接选择 provider 模型。/tools/invoke 不允许执行进程、写文件、应用补丁、注入会话或读取密钥。

分组示例
Runtime / Gatewayruntime.initializegateway.hellodaemon.doctor
Session / Tasksession.createsession.replayexecution.start、审批动作
Workspaceworkspace.treeworkspace.searchworkspace.patch.*
Memorymemory.listmemory.writememory.projection.*
Worker / Workflowworker.registerwork.pollworkflow.run
Auditaudit.reportaudit.export
session.create.json
{"jsonrpc":"2.0","id":1,"method":"session.create",
"params":{"workspace_root":"/repo","profile":"safe-edit"}}
  • 机器可读注册表:protocol/jsonrpc/methods.json(及 apps/docs/public/data/ 双目录)
  • 叙述:docs/rpc-api.md
  • 现场探索:方法目录(Playground Mock/Live)

这个页面有帮助吗?

本次会话中每个页面仅记录一次投票。