先见之明,递你一簇火。 一个源码公开、可二次开发的 AI Agent 工作台:同一个内核,终端 / 桌面 / Web / 安卓四种入口。
快速开始 · 功能 · 隐私面罩 · 架构 · 写一个插件 · 部署文档 · 架构文档 · English
基于 PI Agent 运行时,不重写 Agent 循环,把精力放在“好用”和“好扩展”上。
| 一个内核,四个入口 | TUI、桌面 GUI(Tauri,Windows / macOS Intel 与 Apple 芯片,内置 Node 与 npm/npx)、Web、安卓共用同一套服务端与协议,会话随处可续。 |
| 接入任何模型 | 自定义 AI 网关:OpenAI Chat / Responses、Anthropic、Gemini 四种协议,自定义地址、鉴权头与密钥。 |
| 万物皆插件 | 网关、知识库、工具、命令、HTTP 路由、UI 面板全部通过 definePlugin 贡献,连内置功能也是插件。 |
| 隐私优先 | 隐私面罩在出网前脱敏机密,并可经指定代理出口。 |
| 可控的权限 | 写文件、执行命令前弹窗确认,可按命令“始终允许”;第三方凭据加密存储,永不进入模型上下文。 |
| 随时随地 | 一键部署到服务器,浏览器、手机直接访问;局域网 / 域名访问带密码与限速保护。 |
流式输出、Markdown / 表格 / 代码高亮、工具调用过程可展开查看,支持图片输入、语音输入、上下文用量仪表、会话分支与回滚。
默认模式下,写文件和执行命令都会先请求你的确认,并展示将要写入的内容或将要执行的命令。
在设置里添加网关即可使用自建代理、中转或官方端点,模型列表、上下文窗口、价格都可配置。
- Skills:兼容
SKILL.md,模型按描述按需加载,也可用/skill:名称手动调用;应用自带prometheus技能让模型了解本应用。 - Prometheus 插件:知识库(LanceDB 向量检索)、MCP 管理、记忆、待办、Git、自动化、语音、终端、工作台、连接器等均以插件形式提供,可单独停用。
- PI 插件市场:直接安装社区的 PI 扩展包。
- 编辑并重发:已发送的消息可修改后重发;排队 / 引导中的消息可编辑或撤回。
- 自动折叠步骤:一轮结束后,中间的工具调用自动折叠,只留最终回复,长对话更清爽。
@文件提及:输入框里@搜索工作区文件并引用。- 对话宽度可调;链接用系统默认浏览器打开,右键菜单可复制。
- 子代理(Subagents):在「设置 → 子代理」里配置内置与自定义子代理的说明、提示词模式、提示词、模型、工具与上下文限制;自带子代理运行时,支持并行与后台任务,每个子代理可选由 PI、Claude Code 或 Codex 命令行执行;「子代理增强」模式会让主代理优先把任务委派给子代理。
- 模式(Modes):默认 / 子代理增强 / 运维 / 白帽 / 净化 / 调研等模式,各自拥有独立的系统提示词与工具集,切换无需重载会话。
出网前把密钥、手机号、连接串、证件号等机密换成 {{类型_ULID}} 化名,回答回来再换回原文;脱敏失败直接拦截,绝不外发明文。另可开启区域中立化与出口代理(HTTP / HTTPS / SOCKS5),让模型请求从指定 IP 出去。详见 plugins/veil/README.md。
查看改动、暂存、提交、同步;Git 审阅可逐处审阅 Agent 的改动,分支选择器随时切换分支。
- SSH 插件:配置远程服务器后,Agent 可通过
ssh_exec/ssh_upload/ssh_download在远端执行命令、传输文件。 - 工作台:侧边文件查看器,Agent 可用
open_file直接把文件定位到指定行给你看。 - 文件夹选择器:资源管理器风格,可新建文件夹,桌面版使用原生对话框;可设置默认根目录。
保存多台 Prometheus 服务(本机、公司服务器、家里的 NAS……),在设置或侧边栏一键切换要连接的那一个,不用重复输入地址。支持访问令牌或登录密码,登录后只保存会话令牌;平台列表只存在当前设备。桌面版与安卓版都可以在「本机模式」与远程服务之间切换。
- 桌面:关闭窗口可最小化到托盘,会话在后台继续运行;托盘可查看运行中的会话;应用内检查并一键更新(同时更新本机服务端)。
- 网络访问:让局域网设备或通过域名(如 nginx 反代)访问本机的 Prometheus,带密码与限速。
- 安卓本机模式:APK 内置 Node、npm/npx、git、bash、rg,数据留在手机上;也可以连接远程服务器。
| 能力 | 说明 |
|---|---|
| 知识库 | 文档切分、向量化,Agent 通过 knowledge_search 自主检索;向量存储可替换 |
| 长期记忆 | 跨会话记住偏好、约定与决策,可在界面里查看与删除 |
| MCP | 在界面中管理 MCP 服务器 |
| 连接器 | GitHub、Jira / Confluence、Bitbucket、Microsoft 365、数据库;OAuth / 令牌授权,写操作可设“只读 / 写前确认 / 允许写”,详见 连接器设计 |
| 自动化 | 按计划在后台运行 Agent 任务,每次运行都生成可查看的会话 |
| 子 Agent | 把任务委派给子 Agent 并行处理 |
| 终端 | 内置终端面板 |
| 语音 | 语音输入 |
| PI 配置导入 | 网关默认值与一键导入已有 PI 配置 |
| 多皮肤 | 深浅主题 + 余烬 / 深海 / 森林 / 星云 / 玫瑰 五种皮肤,中英文界面 |
| 用量统计 | 查看 token 与费用用量 |
环境:Node ≥ 22.19(推荐 24)、pnpm 10。桌面版另需 Rust ≥ 1.77 与 Tauri 2 依赖。
git clone https://github.com/Mouseww/Prometheus.git
cd Prometheus
pnpm install| 方式 | 命令 | 说明 |
|---|---|---|
| TUI 终端 | pnpm tui |
PI 原生交互界面,自动加载网关与插件 |
| Web | pnpm --filter @prometheus/web build && pnpm dev:server |
访问 http://127.0.0.1:7420 |
| 桌面 GUI | pnpm dev:desktop |
Tauri 窗口,自动拉起本地服务端 |
首次启动后到 设置 → AI 网关 添加一个模型端点,就可以开始对话了。
docker build -t prometheus .
docker run -p 7420:7420 -e PROMETHEUS_TOKEN=<至少16位随机串> \
-v prometheus-data:/data -v $PWD:/workspace prometheus非回环地址监听必须设置令牌;公网部署请置于 HTTPS 反向代理之后。环境变量、局域网 / 域名访问、安卓版等完整说明见 docs/deployment.md。
flowchart TB
subgraph Clients["客户端"]
TUI["TUI 终端"]
Desktop["桌面 GUI (Tauri 2)"]
Android["Android"]
Browser["浏览器"]
end
subgraph Server["Prometheus Host"]
WS["HTTP + WebSocket"]
Core["core:会话 / 插件 / UI 桥"]
GW["gateway"]
KB["knowledge"]
end
PI["PI Runtime:AgentSession / Extensions / Skills"]
Desktop & Android & Browser --> WS --> Core
TUI --> Core
Core --> PI
GW --> PI
KB --> PI
packages/protocol 线协议类型
packages/plugin-sdk 插件开发 SDK(definePlugin)
packages/gateway AI 网关:OpenAI Chat/Responses、Anthropic、Gemini
packages/knowledge 知识库服务与 knowledge_search 工具
packages/core 运行时宿主(会话、插件、UI 桥)
plugins/* 内置插件:知识库、MCP、技能、记忆、Git、自动化、终端、SSH、隐私面罩、模式、连接器…
apps/server HTTP + WebSocket 服务端
apps/web React Web UI(桌面 / 安卓共用)
apps/desktop Tauri 桌面壳
apps/cli TUI 入口
完整设计见 docs/architecture.md(英文版:docs/en/architecture.md)。
import { definePlugin } from "@prometheus/plugin-sdk";
export default definePlugin({
name: "hello",
version: "0.1.0",
setup(ctx) {
ctx.extension((pi) => {
pi.registerCommand("hello", { description: "打招呼", handler: async (_args, c) => c.ui.notify("你好", "info") });
});
},
});放入 ~/.prometheus/plugins/ 或在配置中声明包名即可加载,详见架构文档 §11。
pnpm typecheck
pnpm test欢迎提交 Issue 与 PR。
本项目采用 GNU AGPL-3.0 开源许可证:
- 个人、组织、公司均可使用、修改、自行部署。
- 二次开发须保留版权与许可证声明、标注修改;分发或通过网络对外提供修改版本时,须以 AGPL-3.0 公开对应的完整源码。
如果 Prometheus 对你有帮助,欢迎点一个 Star,这是对我们最大的鼓励。
感谢并认可 LINUX DO 社区




