suna
Health Pass
- License — License: NOASSERTION
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 10 GitHub stars
Code Pass
- Code scan — Scanned 4 files during light audit, no dangerous patterns found
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
Suna is a lightweight, local-first terminal AI agent and agent runtime for coding, research, automation, and developer workflows.
Suna
Suna (सून्य / śūnya):梵文“空”。出厂无形,遇缘则生。
Suna 是一个运行在本地终端里的通用 AI Agent。它用 TUI 和你对话,由本地 daemon 负责模型调用、工具执行、Guard、记忆、Skill、MCP、附件和会话状态,让你可以在终端里直接让 AI 理解项目、修改文件、执行命令、访问 HTTP、处理图片,并在高风险操作前获得确认或 Smart Review。
Suna 的设计取向是轻量、克制、越用越懂你:不追求把所有能力堆成复杂面板,而是把关键能力收敛在本地 daemon、少量自然语言入口和可审查的工具链路里。随着使用增加,Suna 会通过轻量记忆、会话状态、Skill 和可配置模型逐渐贴合你的工作方式。
Suna 目前处于快速开发状态。如果升级或使用过程中遇到功能失效,建议先升级到最新版本,并在备份必要数据后清理 Suna 数据目录中的
.db文件。
亮点
- 智能模型路由,用 Subtask 发挥不同模型优势:这不是常见的“启动前手动选一个模型”,而是主 Agent 可以在运行中根据任务性质、模型能力、上下文窗口和多模态能力,显式选择某个模型执行独立子任务;每个 Subtask 都是独立上下文,并由主 Agent 动态分配可见信息、图片和工具权限,完成后只把结果交回主 Agent 汇总决策。
- Smart Mode:让安全审核理解工具意图:很多 Agent 只有
auto或手动确认两档;Suna 的smartGuard 会在硬规则、Workspace 和风险分级之外,用 LLM Review 判断工具调用是否安全且符合用户意图。Smart Review 是安全审查器,不做普通 tool-call 优化,因此在不牺牲高危拦截的前提下降低无意义打断。 - Skill 预检查与可选 LLM Check:目录式 Skill 导入或创建后先做静态检查,再可选 LLM review,最后由用户确认是否启用,避免把不合格或不可信 Skill 直接暴露给 Agent。
- 越用越懂你的轻量记忆:Suna 不把完整聊天历史当作长期记忆,而是提取稳定偏好、习惯、约束和纠错信息;记忆是轻量背景,不喧宾夺主。
- 终端里的高性能 Agent 工作台:TUI 支持流式回复、Markdown 渲染、reasoning 展开/折叠、工具详情、复制模式、会话恢复和配置页面;Chat transcript 使用窗口化渲染和流式增量渲染缓存,在不降低流式刷新体验的前提下降低长回复和滚动时的 CPU 压力。
- 本地 daemon 架构:TUI 专注交互,daemon 持有 Agent、模型、工具、安全策略、记忆和持久化状态,避免把业务逻辑塞进 UI。
- 真实可用的本地工具:内置读文件、列目录、搜索、执行命令、写文件、精确编辑、文件系统操作和 HTTP 请求。
- 图片附件和 MCP 扩展:支持多模态图片附件、会话恢复、上下文压缩,以及 stdio MCP tools-only runtime。
快速开始
从源码安装或构建
Suna 需要先安装或构建成二进制后运行;不要使用 go run . 启动,daemon / TUI 的本地进程管理依赖稳定的可执行文件路径。
安装到 Go bin:
git clone <repo-url>
cd suna
go install .
suna
或构建本地二进制:
go build -o suna .
./suna
Windows 下通常是:
.\suna.exe
打包脚本
./build/build-darwin.sh # 构建 macOS arm64 / amd64
./build/build-linux.sh # 构建 Linux arm64 / amd64
./build/build-windows.sh # 构建 Windows arm64 / amd64
./build/build-release.sh # 一次性构建以上 6 个平台包
构建产物默认放在 dist/,每个平台/架构只保留一个压缩包,便于 GitHub Release 分发。Darwin、Linux、Windows 产物不能混用,需要按目标系统选择对应包。
CLI 命令
suna # 打开 TUI;daemon 未运行时自动启动
suna status # 查看 daemon 状态
suna stop # 停止 daemon
suna help # 查看帮助
升级新版前建议先执行 suna stop,避免新版 TUI 连接到旧 daemon。
首次使用
- 启动
suna。 - 如果还没有模型配置,进入 Config / Setup 页面。
- 添加一个 Model Connection。
- 选择 Provider 类型:
- OpenAI:OpenAI Responses 协议。
- Anthropic:Anthropic Messages 协议。
- OpenAI Compatible:兼容 OpenAI Chat Completions 的第三方服务或网关。
- 填写模型名、Endpoint、API Key、上下文窗口和能力标签。
- 激活模型后回到 Welcome / New Conversation 开始对话。
常用设置都可以在 TUI 中通过 /config 修改,不必手动编辑配置文件。
可以直接让 Suna 做什么
帮我分析这个项目结构,并指出主要入口
读取 README,整理一版更适合用户上手的文档
定位这个测试失败的原因,必要时可以运行测试
把这个函数拆小一点,并补上行为测试
检查这次改动有没有安全风险
用另一个模型独立 review 这个方案
把刚才的代码审查流程保存成一个 Skill
打开 MCP 面板,看看有哪些 server 报错
Suna 会自行决定是否需要调用工具。写文件、执行命令、HTTP 写请求等行动类操作会经过 Guard。
TUI 快速上手
Suna 主要有四类页面/浮层:
- Welcome:显示版本、当前模型、用量、记忆、Guard、Workspace,并进入新会话、恢复会话、配置或帮助。
- Chat:输入自然语言、管理附件、查看回复、工具调用、Guard 确认和 AskUser 问题。
- Config:管理模型、主题、语言、Guard、Workspace、附件状态等。
- Overlay:模型选择器、工具详情、Skill 面板、MCP 面板、Guard 确认等临时浮层。
常用快捷键:
Enter 发送 / 确认
Shift+Enter 输入换行
Ctrl+J 输入换行
Esc 取消运行、返回或关闭浮层
Ctrl+Y 进入 / 退出复制模式
Ctrl+T 打开 / 关闭工具详情
Ctrl+R 展开 / 折叠 reasoning 详情
? 打开或关闭帮助
PgUp / PgDn 滚动
Ctrl+C 退出
常用 Slash 命令:
/new 新建会话
/model 打开模型选择器
/model <ref> 切换模型,例如 /model openai/gpt-4o-mini
/memory 查看 user profile memory
/mcp 打开 MCP 面板,查看、启停、reload MCP server
/skills 打开 Skill 面板,查看并切换启用状态
/compact 手动压缩当前上下文
/config 打开配置页面
/help 打开帮助页
未注册的 /文本 会作为普通消息发送。/model <ref> 的 <ref> 通常是 <provider>/<model>;如果只输入模型名,Suna 会尽量用当前 provider 补全。
核心设计一眼看懂
CLI / TUI
↓ protocol + local transport
Daemon
↓
Agent / Runner
↓
Model Provider / Tools / Guard / Memory / Skill / MCP / Subtask
关键原则:
- TUI 不承载业务语义:TUI 只负责交互和渲染,模型调用、工具执行、安全策略和持久化都在 daemon 侧。
- Agent 统一编排安全边界:工具只声明自身风险策略,Guard 决策由 Agent 结合当前会话、Workspace 和用户选择统一处理。
- 工具通过 Provider 暴露:模型可见工具统一注册到
tools.Manager,避免在 Agent 或 Runner 中手工拼 schema。 - 上下文面向缓存和可恢复设计:稳定 system/project/skill/tool schema 前缀 + Session State + recent messages + 靠近最新用户输入的 memory,降低长对话成本和上下文失控风险。
- Subtask 不是普通子对话:它不继承主对话历史、记忆、恢复会话或完整工具箱;主 Agent 必须为每次委派明确指定模型、任务、上下文、图片索引和工具白名单。
- MCP 失败不阻塞启动:单个 MCP server 失败会显示为运行态错误,不影响 Suna/daemon 启动。
更多设计细节见 docs/README.md。
模型与工具
模型引用格式为:
<provider>/<model>
例如:
openai/gpt-4o-mini
anthropic/claude-sonnet-4-20250514
deepseek/deepseek-chat
内置工具:
| 类型 | 工具 | 用途 |
|---|---|---|
| 感知 | readfile |
按行范围、tail 或 base64 读取本地文件 |
| 感知 | listdir |
列目录,支持递归、分页和 include/exclude 过滤 |
| 感知 | search |
搜文件路径、结构入口和正文;支持文件或目录、kind=auto/content/path/symbol、include/exclude、regex、上下文行和安全默认排除,优先替代普通 grep / rg / find |
| 行动 | exec |
执行 shell 命令;可证明只读的命令会被 Guard 归为低风险 |
| 行动 | writefile |
创建、覆盖或追加文件 |
| 行动 | editfile |
对单个文件原子应用一个或多个精确文本替换;默认唯一匹配,target="all" 替换全部,target="2" 替换第 2 个匹配 |
| 行动 | filesystem |
stat / mkdir / move / copy / remove 文件系统路径 |
| 行动 | http |
统一 HTTP 请求;GET / HEAD 为只读,写方法按风险审查 |
完整配置字段见 配置说明。
安全边界
Guard Mode 可在 /config 中切换:
ask 风险操作请求确认
smart 先由 active model 做安全审查,安全且符合意图则减少打扰,不确定或高风险时再确认/拒绝/建议更安全调用
auto 除硬性拦截规则外自动放行
readonly 只允许只读操作
Workspace 是可选目录边界:
- 设置后,本地文件和命令操作会限制在该目录内。
- 留空表示关闭 Workspace 边界。
~/.suna数据目录仍允许用于配置、日志、附件和 Skill 管理。- credentials 等敏感路径仍会被内置规则拦截。
注意:Workspace、Guard、Skill 和 MCP 都不是完整 OS sandbox。外部命令或 MCP server 启动后,仍拥有其进程本身的系统权限;启用前应确认你信任相关命令、脚本和 server。
数据目录
默认数据目录:
~/.suna/config.toml # 主配置
~/.suna/credentials.toml # API Key
~/.suna/memory.db # 记忆、会话、用量等本地数据
~/.suna/skills/ # Skill 目录
~/.suna/attachments/ # 图片和二进制附件
~/.suna/logs/app.log # 日志
Windows 示例:
C:\Users\<你>\.suna\config.toml
C:\Users\<你>\.suna\credentials.toml
C:\Users\<你>\.suna\logs\app.log
排查问题时优先查看 ~/.suna/logs/app.log。
开发者阅读入口
如果你想了解 Suna 的关键设计、架构、性能取舍和代码位置,建议从 docs 入口开始:
- 文档索引:各文档分工和推荐阅读路径。
- Subtask 设计:主 Agent 如何动态分配模型、上下文、图片和工具权限。
- 关键设计:架构、安全、上下文、性能、记忆、Subtask、Skill、MCP 等设计取舍。
- 架构说明:CLI、TUI、daemon、protocol 和核心包边界。
- 代码地图:功能到包、核心流程和常见代码入口。
- 当前实现:当前实际行为和未完成边界。
- 配置说明:
config.toml、credentials.toml字段和示例。 - TUI 架构:TUI 目录结构、Bubble Tea 约定和维护边界。
- 开发指南:构建、测试、提交前检查和代码约定。
当前边界
以下能力目前不要按完整产品能力依赖:
- Trigger、定时任务、文件监听等主动感知链路。
- 多会话管理 UI、完整历史搜索、向量记忆或知识库。
- 完整 MCP:远程 transport、resources、prompts、sampling、OAuth、sandbox 等尚未完成。
- Skill sandbox、市场和复杂生命周期 hooks。
- Hooks 执行链路。
- 成本统计与价格计算。
- 复杂权限 UI 或完整 OS sandbox。
- TUI 断开后对正在运行任务的完整事件回放/恢复。
许可证
Suna 使用 PolyForm Noncommercial License 1.0.0。
你可以在非商业目的下使用、学习、修改和分发 Suna;商业使用需要获得版权持有者的单独授权。分发原始或修改版本时,必须保留许可证条款和 required notice。
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found