Notion AI 多账号池、Dashboard 与本地协议代理
将多个 Notion 账号集中管理,通过一个本地入口实现账号池化、额度监控、API 代理、Web 代理,并兼容 Claude Code。
快速开始 • 核心能力 • 系统架构 • 完整安装 • 详细文档
English | 简体中文
notion-manager 是一个本地运行的 Notion AI 管理工具。构建多账号池,后台自动刷新额度与模型,对外提供三个入口:
- Dashboard
/dashboard/— 管理账号、查看额度、切换设置 - Reverse Proxy
/ai— 本地使用完整 Notion AI 页面 - Anthropic Messages API
POST /v1/messages— 兼容 Claude Code、Cherry Studio 等
前置要求: Go 1.25+,至少一个 Notion 账号。无需 Chrome 扩展。
# 1. 克隆并启动(配置首次运行自动生成)
git clone https://github.com/SleepingBag945/notion-manager.git
cd notion-manager
go run ./cmd/notion-manager首次启动时控制台会打印 管理密码 和 API Key — 请务必保存。
# 2. 打开 Dashboard
http://localhost:8081/dashboard/添加第一个账号:
- 在 Chrome 打开已登录的
notion.so→F12→ Application → Cookies → 复制token_v2 - 在 Dashboard 点击 「+ 添加账号」 → 粘贴
token_v2→ 完成
账号自动发现并热加载,无需重启。
# 3. 使用 API(Claude Code、Cherry Studio、curl 等)
export ANTHROPIC_BASE_URL=http://localhost:8081
export ANTHROPIC_API_KEY=<your-api-key>
claude # 或任何 Anthropic 兼容客户端也可以从 Releases 下载预编译二进制,无需 Go 工具链。
- 从
accounts/目录加载任意数量的账号 JSON - 按账号剩余额度优先分配请求,而不是简单随机轮询
- 账号额度耗尽后自动跳过,付费账号在后续刷新时可恢复
- 研究模式会单独选择更适合的账号,优先避开研究额度已紧张的账号
- 配额和已发现模型会持久化回写到账号 JSON
- 内置 React Dashboard,入口为
/dashboard/ - 支持密码登录、会话维持与登出
- 查看账号详情、额度、计划类型、可用模型和刷新状态
- 通过粘贴
token_v2添加账号,自动发现用户信息与模型 - 在账号卡片上直接删除账号,带确认提示
- 可触发手动刷新,并在页面内切换
enable_web_search、enable_workspace_search、debug_logging - 可一键打开“最佳账号”代理,或指定某个邮箱对应的账号打开代理可实现原版对话。
- 入口为
/ai - 通过
/proxy/start为指定账号创建会话,再进入完整的 Notion AI Web 界面 - 自动注入账号 Cookie,不需要在代理页重新登录
- 转发 Notion HTML、
/api/*、静态资源、msgstore和 WebSocket - 会动态改写
CONFIG.domainBaseUrl,并过滤分析脚本
- 提供
POST /v1/messages - 同时支持
Authorization: Bearer <api_key>和x-api-key: <api_key> - 支持流式与非流式响应
- 支持 Anthropic
tools - 支持图片、PDF、CSV 文件内容块,自动走 Notion 上传链路
- 请求里未指定
model时,自动回退到proxy.default_model

兼容 Cherry Studio — 多模型桌面客户端
兼容 Claude Code — Anthropic 官方的 Agentic 编程工具。多轮工具链调用、文件操作、Shell 命令和扩展思维链均可通过 Notion AI 正常工作,背后依赖三层兼容桥接实现。

Claude Code 通过 notion-manager 分析项目架构 — 多轮工具链 + 会话持久化

扩展思维链支持 — Claude Code 的推理过程完整流式输出
配置 — 仅需两个环境变量:
export ANTHROPIC_BASE_URL=http://localhost:8081
export ANTHROPIC_API_KEY=your-api-key
claude # 启动交互式会话支持的能力:Shell 命令、文件读写编辑、文件搜索(Glob/Grep)、联网搜索、多轮工具链、扩展思维链、流式输出、模型选择(Opus/Sonnet/Haiku)。
工作原理:Notion AI 服务端注入的 ~27k token 系统提示词赋予模型强烈的 "我是 Notion AI" 身份,会拒绝外部工具调用。代理通过三步绕过:(1) 丢弃冲突的系统提示词,(2) 剥离 XML 控制标签,(3) 将请求伪装为代码生成任务("单元测试"framing)。__done__ 伪函数使模型始终保持 JSON 输出模式 — 永远不切换到"正常回复"模式,避免触发 Notion AI 身份回归。详见 Claude Code 集成技术细节 和 Notion 系统提示词。
已知限制:仅支持 8 个核心工具(原 18+ 个,更大的工具列表会破坏 framing),每轮延迟较高,管理工具(Agent、MCP、LSP)被过滤。
- 使用
researcher或fast-researcher作为模型名即可触发研究模式 - 研究模式会流式输出 thinking 块和最终报告文本
- 普通模型支持联网搜索与工作区搜索
- 搜索开关优先级为:请求头覆盖 > Dashboard /
config.yaml> 默认值
- 扩展位于
chrome-extension/ - 可从当前登录的
notion.so会话中提取:token_v2full_cookieuser_id/space_idclient_version- 当前可用模型列表
- 生成的 JSON 可直接放入
accounts/使用
graph TD
A[Chrome 扩展] -->|提取账号 JSON| B[accounts/*.json]
A2[Dashboard] -->|通过 token_v2 添加| B
B --> C[Account Pool]
D[Dashboard /dashboard/] -->|会话登录| E[Admin API]
E --> C
F[API Client] -->|POST /v1/messages| G[Anthropic Handler]
G --> C
G --> H[文件上传 / 工具注入 / 搜索控制]
H --> I[Notion AI API]
J[Browser] -->|/proxy/start -> /ai| K[Reverse Proxy]
K --> C
K --> L[notion.so / msgstore]
- Go
1.25+(或使用 Release 预编译二进制) - 至少一个可用的 Notion 账号
- Chrome / Chromium(仅扩展方式需要 —— Dashboard 方式无需扩展)
仓库已内嵌 Dashboard 前端资源,直接 go run 即可。
Dashboard(推荐) — 在页面中粘贴 token_v2,详见快速开始。账号卡片底部的垃圾桶图标可删除账号。
Chrome 扩展 — 提取包含 full_cookie 的完整配置:
chrome://extensions→ 开启开发者模式 → 加载chrome-extension/- 打开已登录的
https://www.notion.so/ - 点击扩展 → 提取配置 → 保存到
accounts/<名字>.json
首次运行时自动生成 config.yaml(包含随机 API Key 和管理密码)。自定义配置:
cp example.config.yaml config.yaml| 配置项 | 说明 |
|---|---|
server.port |
监听端口(默认 8081) |
server.api_key |
留空则自动生成 |
server.admin_password |
留空则自动生成;明文密码启动时自动哈希 |
go run ./cmd/notion-manager # 直接运行
go build -o notion-manager.exe ./cmd/notion-manager # 编译二进制如果修改了前端源码(web/):
cd web && npm run build # 构建前端
cp -r dist ../internal/web/ # 复制到 embed 目录
cd .. && go build -o notion-manager.exe ./cmd/notion-managercurl http://localhost:8081/healthcurl http://localhost:8081/v1/messages \
-H "Authorization: Bearer <api_key>" \
-H "Content-Type: application/json" \
-d '{
"model": "sonnet-4.6",
"max_tokens": 512,
"messages": [
{ "role": "user", "content": "你好,介绍一下当前可用能力。" }
]
}'- API 接入 — 标准请求、搜索控制、文件上传、研究模式
- Dashboard 与代理 — 登录认证、代理会话流程
- 配置说明 — 完整配置参考、端点列表、项目结构、使用建议
- Claude Code 集成 — Claude Code 如何通过 Notion AI 工作、能力与限制
- Notion 系统提示词 — Notion AI 服务端注入的完整系统提示词(~27k tokens)
本项目采用 CC BY-NC-SA 4.0 许可证,仅限非商业用途。
