CLI Token
CLI Token 是给命令行工具和 AI Agent(如 Claude Code)使用的身份令牌,继承你在 mdocs 中的所有权限。Token 与你的访客身份绑定,创建后可以通过 HTTP API 读写文档。
适用场景
- 命令行管理:在服务器上通过脚本批量创建或更新文档
- Agent 集成:让 AI 编程助手直接读写你的知识库
- CI/CD 流水线:在自动化流程中同步文档
创建 Token
- 打开 mdocs 的设置页,切换到「通用」Tab。
- 找到 CLI Token 卡片,点击「创建」。
- 系统会生成一个新的 Token,仅在此时展示一次,请立即复制保存。

Token 是高熵随机字符串(32 字节,base64url 编码),安全强度与 Web 端访客令牌相同。
重置 Token
如果 Token 泄露或想更换,点击「重置」:
- 点击「重置」按钮,弹出确认弹窗。
- 确认后,系统会吊销所有已有 Token 并生成一个新的。
- 新的 Token 同样仅在此时展示一次,请立即复制保存。
CLI 客户端
mdocs 提供了独立的命令行客户端 mdocs-cli(GitHub 仓库),通过 Token 认证操作文档。
安装
git clone https://github.com/xuhuafeifei/mdocs-cli.git ~/.mdocs-cli
入口文件:~/.mdocs-cli/mdocs.mjs(需 Node.js 18+)
连接与认证
全局选项可放在命令任意位置,优先级高于环境变量:
| 来源 | Token | 服务端 |
|---|
| 命令行 | --token <token>(必填其一) | --ip <host[:port]> 可选 |
| 环境变量 | MDOCS_TOKEN | MDOCS_SERVER |
| 默认 | — | http://127.0.0.1:4000 |
# 连远程服务器(一次性)
node ~/.mdocs-cli/mdocs.mjs --token <token> --ip 101.132.222.88:4000 domains
# 或写入环境变量
export MDOCS_TOKEN="<你的 token>"
export MDOCS_SERVER="http://101.132.222.88:4000"
命令参考
| 命令 | 用途 |
|---|
search --q <关键词> [--domain <域ID>] [--topn <数量>] | 全文检索文档 |
get <文档ID> | 读取文档完整内容 |
create --name <文件名.md> --content <正文> [--domain <域ID>] [--parent <目录ID>] | 创建文档 |
update <文档ID> --content <新正文> [--title <新标题>] | 更新文档内容 |
domains | 列出当前 Token 可访问的所有域 |
mkdir --domain <域ID> --name <目录名> [--parent <目录ID>] | 创建目录 |
ls <documentId> 或 ls "关键词" --domain <域ID> | 列出目录下子节点 |
使用示例
# 搜索文档
node ~/.mdocs-cli/mdocs.mjs search --q "测试文章"
# 创建文档到指定目录
node ~/.mdocs-cli/mdocs.mjs create \
--name "笔记.md" \
--title "我的笔记" \
--content "# 标题\n\n正文内容" \
--domain <域ID> \
--parent <目录ID>
# 更新文档
node ~/.mdocs-cli/mdocs.mjs update <文档ID> \
--content "新内容" \
--title "新标题"
创建和更新文档时,--content 支持 Markdown 格式,后端会自动转换为富文本。
使用 Token
在命令行或 Agent 配置中,通过 x-cli-token 请求头发送:
# 使用 curl
curl -H "x-cli-token: <你的 token>" https://your-mdocs-server.com/api/documents
# 环境变量(与 --token 二选一)
export MDOCS_TOKEN="<你的 token>"
export MDOCS_SERVER="http://your-mdocs-server.com:4000" # 可选,默认本机 4000
也可在每条命令上用 --token / --ip 覆盖,见上文「连接与认证」。
Token 继承你当前访客的所有权限——能读的文档它也能读,能写的文档它也能写。
管理 Token
在设置页的 CLI Token 卡片中,你可以看到所有已创建的 Token 列表及状态(「活跃」/「已吊销」)。当前同一访客只保持一个活跃 Token,重置时会自动吊销旧的。
安全说明
- 服务端只存储 Token 的 SHA-256 哈希值,即使数据库泄露也无法伪造请求
- 原始 Token 仅在创建时展示一次,关闭后无法再次查看
- 如怀疑 Token 泄露,请立即重置