文档助手

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

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

llms.txt

跳到内容

Markdown

运行时模型

客户端、Go 控制面、Rust 能力内核与 Zig 工具链组成的分层架构。

Carina 是分层 Agent 运行时。每层只承担一种职责,并通过明确协议调用下一层;这样客户端可以替换,模型可以切换,而权限与审计边界保持稳定。

语言职责
Agent SurfaceGo(daemon 内)Agent 循环、提示词和 reasoner backend
Client SurfacesTS / Python / GoCLI、TUI、IDE、Web 与 SDK,只渲染 JSON-RPC
Control PlaneGodaemon、RPC、会话、调度、worker 与模型路由
Capability KernelRust权限、策略、审计、事务补丁和 WASM 插件
Native ToolchainZigscan、grep、diff、patch、process runner 与 pty
Client Surfaces ──JSON-RPC──▶ Go Control Plane(Agent loop)
──Capability API──▶ Rust Kernel ──Native Calls──▶ Zig Tools
  1. Agent 不直接访问系统资源;读文件、执行命令、联网、读密钥和持久记忆写入都是能力请求。
  2. 每个副作用先经过能力内核,按会话 profile 产生 PermissionDecision
  3. 每次执行都写入追加式 Event Log,会话可仅凭事件回放。
  4. 每个补丁按 Proposed → Validated → Approved → Applied → Verified → Committed 流转,并保留回滚指针。
  5. 工具必须声明权限;未声明的能力使用会产生 PolicyViolation
  6. 本地单机是默认形态,远程 worker 是扩展;CLI 与 IDE 都只是同一 JSON-RPC 的客户端。
  7. 云身份与同步属于产品边界,本地 runtime 始终是仓库动作的最终权威。
  • go/daemon:daemon 生命周期、RPC、恢复、Agent loop 与受治理本地记忆。
  • go/rpc:JSON-RPC 2.0 实现,与 protocol/jsonrpc 注册表一致。
  • go/session-store:会话状态和追加式 JSONL 事件日志。
  • go/scheduler / go/worker:优先级、并发和本地/远程/CI worker。
  • go/model-router:provider fallback、速率限制、token 用量与 streaming。
  • go/kernel:Rust capability kernel bridge。
  • go/mcp / go/mcpserver:受治理的 MCP 管理器与服务端。
  • carina-kernel:所有副作用能力的类型与 facade。
  • carina-policyread-onlysafe-editfull-workspaceci-runner 等 profile。
  • carina-patch:补丁事务、冲突检测和回滚。
  • carina-audit:事件模型;protocol/events/events.json 是权威。
  • carina-plugin-runtime:只允许 manifest 声明能力的 WASM host。

carina-scancarina-grepcarina-diffcarina-patch-nativecarina-runcarina-pty 输出机器可读 JSON,并且不能绕过 kernel policy。

用户提示 → daemon 建会话 → Agent 调模型 → 模型请求 FileRead
→ Rust 内核检查策略 → Zig 扫描/读取 → 模型提出补丁
→ PatchTransaction 与审批 → Zig 应用 → daemon 请求 CommandExec 跑测试
→ Event Log 记录全部动作 → 用户检查或回滚
关注点MVP 选择
IPCstdio / unix socket 上的 JSON-RPC 2.0
存储JSON 状态、JSONL 事件、文件快照;carina-index 使用 SQLite
插件manifest 声明权限的 WASM
操作目标
CLI 冷启动< 100ms
CLI 热启动< 30ms
10k 文件工作区扫描< 1s
中型仓库 grep< 300ms
单文件补丁应用< 50ms
  • 架构:docs/architecture.md
  • 产品定位:docs/product.md
  • 能力与文档地图:apps/docs/FEATURE_MAP.md

这个页面有帮助吗?

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