CLI 命令参考
GEO Wiki Pro CLI 命令参考,涵盖全部 16 个命令的参数与用法
> GEO Wiki Pro CLI v1.0.7 提供 17 个命令,覆盖文档管理、草稿管理、分类管理、标签管理、搜索、配置、用户管理等全部功能。
---
## 命令总览
| 命令 | 说明 | 需要登录 |
|------|------|---------|
| `geo login` | 登录服务器 | 否 |
| `geo logout` | 登出并清除凭证 | 否 |
| `geo status` | 查看连接状态 | 否 |
| `geo health` | 服务器健康检查 | 否 |
| `geo doc` | 文档管理(CRUD + slug 重命名 + 排序 + 回收站) | 是 |
| `geo category` | 分类管理(CRUD + 排序) | 是 |
| `geo tag` | 标签管理(创建/列表/删除) | 是 |
| `geo search` | 搜索文档 | 否 |
| `geo config` | 站点配置读写 | 是 |
| `geo user` | 用户管理 + Token 管理 | 是 |
| `geo draft` | 草稿管理(列表/查看/发布/删除) | 是 |
| `geo stats` | 仪表盘统计数据 | 是 |
| `geo feedback` | 用户反馈管理 | 是 |
| `geo guestbook` | 留言簿管理 | 是 |
| `geo media` | 媒体文件上传/列表/删除 | 是 |
| `geo geo` | GEO 状态、报告、重建 | 是 |
---
## 认证命令
### geo login
登录 GEO Wiki Pro 服务器。使用 API Token 认证,有效期 90 天。
```bash
geo login --url https://geowiki.pro --token geo_xxxxx
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--url` | `-u` | 服务器地址 | 是 |
| `--token` | `-t` | API Token | 是 |
> Token 在管理面板「设置 -> API Token」中生成。
### geo logout
清除本地保存的认证信息。
```bash
geo logout
```
### geo status
查看当前连接状态和用户信息。
```bash
geo status
```
### geo health
检查服务器健康状态,无需认证。适合部署验证和监控脚本。
```bash
geo health
geo health --json
```
输出示例:
```
✅ Server is healthy
URL: https://geowiki.pro
Status: 200 OK
```
---
## 文档命令
### geo doc list
列出所有文档。
```bash
geo doc list
geo doc list --category can-motion
geo doc list --lang zh --json
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--category` | | 按分类过滤 | 否 |
| `--lang` | `-l` | 语言(必需:zh/en/jp) | 是 |
| `--page` | | 页码(默认 1) | 否 |
| `--limit` | | 每页数量(默认 50) | 否 |
### geo doc get
获取文档内容。
```bash
geo doc get --slug quick-start
geo doc get --slug quick-start --lang en
geo doc get --slug quick-start --format json
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--slug` | `-s` | 文档 slug | 是 |
| `--lang` | `-l` | 语言(默认 zh) | 否 |
| `--format` | `-f` | 输出格式:markdown 或 json | 否 |
### geo doc create
创建新文档。
```bash
# 从文件创建
geo doc create --file ./my-doc.md --category can-motion --lang zh
# 直接传内容创建
geo doc create --title "标题" --category docs --slug my-doc --content "# 正文内容"
# 保存为草稿
geo doc create --file ./my-doc.md --category guide --draft
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--file` | `-f` | Markdown 文件路径 | 是(或 --title) |
| `--title` | `-t` | 文档标题(无文件时使用) | 是(或 --file) |
| `--content` | | 内联内容(无需文件) | 否 |
| `--category` | `-c` | 分类 slug | 否 |
| `--slug` | `-s` | 自定义 slug | 否 |
| `--lang` | `-l` | 语言代码(必需:zh/en/jp) | 是 |
| `--tags` | `-T` | 逗号分隔的标签 | 否 |
| `--author` | `-a` | 作者(默认 Agent) | 否 |
| `--sort` | | 排序值(默认 999) | 否 |
| `--draft` | | 保存为草稿(不直接发布) | 否 |
::: tip
文件需要包含 YAML frontmatter(title、slug、category、tags、author)。如果文件包含 frontmatter,命令行参数可以省略,CLI 会自动提取。
:::
### geo doc update
更新文档。支持单字段更新——只修改指定字段,其他字段保持不变。
```bash
# 文件更新(最安全)
geo doc update --slug my-doc --file ./updated.md
# 更新标题
geo doc update --slug my-doc --title "新标题" --lang zh
# 更新描述
geo doc update --slug my-doc --description "新描述" --lang zh
# 更新作者
geo doc update --slug my-doc --author "张三" --lang zh
# 更新标签
geo doc update --slug my-doc --tags "tag1,tag2" --lang zh
# 更新通知
geo doc update --slug my-doc --notice "本文档已更新" --lang zh
# 仅更新排序值
geo doc update --slug my-doc --sort 0
# 仅更新分类
geo doc update --slug my-doc --category new-category
# 仅更新内容
geo doc update --slug my-doc --content "# 新标题\n\n新内容"
# 保存为草稿
geo doc update --slug my-doc --file ./updated.md --draft
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--slug` | `-s` | 文档 slug | 是 |
| `--file` | `-f` | 更新后的文件路径 | 是(其一) |
| `--content` | | 内联内容 | 是(其一) |
| `--title` | `-t` | 更新标题 | 否 |
| `--description` | `-d` | 更新描述 | 否 |
| `--author` | `-a` | 更新作者 | 否 |
| `--tags` | `-T` | 更新标签(逗号分隔) | 否 |
| `--notice` | | 更新通知 | 否 |
| `--category` | `-c` | 新分类 | 否 |
| `--sort` | | 新排序值 | 否 |
| `--lang` | `-l` | 语言代码 | 否 |
| `--draft` | | 保存为草稿 | 否 |
::: note
单字段更新只会修改指定的字段,其余字段保持原值不变。
:::
### geo doc delete
删除文档(移入回收站,30 天后自动清除)。
```bash
geo doc delete --slug my-doc
geo doc delete --slug my-doc --yes # 跳过确认
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--slug` | `-s` | 文档 slug | 是 |
| `--lang` | `-l` | 语言代码 | 否 |
| `--yes` | `-y` | 跳过确认提示 | 否 |
### geo doc slug-rename
重命名文档的 URL slug。所有语言版本(zh/en/jp)共享同一个 slug,重命名会同步更新所有语言版本。标题、内容等字段不受影响。
```bash
geo doc slug-rename --slug old-name --new-slug new-name
geo doc slug-rename --slug my-doc --new-slug my-document --json
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--slug` | `-s` | 当前文档 slug | 是 |
| `--new-slug` | | 新的 slug | 是 |
::: warning
slug 变更会导致文档 URL 改变。如果其他文档有链接到旧 slug,需要手动更新。
:::
### geo doc trash / recover
查看和恢复回收站中的文档。
```bash
geo doc trash # 列出回收站
geo doc trash --clear # 清空回收站
geo doc recover --file my-doc-zh-123456.md # 恢复文档
```
### geo doc reorder
批量调整文档排序。
```bash
geo doc reorder --orders "quick-start:0,faq:1,architecture:2"
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--orders` | `-o` | 格式:`slug1:排序值,slug2:排序值` | 是 |
---
## 分类命令
### geo category list
列出所有分类。
```bash
geo category list
geo category list --json
```
### geo category create
创建分类。
```bash
geo category create --name "CAN 电机" --name-en "CAN MOTION" --slug can-motion
```
| 参数 | 说明 | 必需 |
|------|------|------|
| `--name` | 分类名称(默认语言) | 是 |
| `--name-en` | 英文名称 | 否 |
| `--name-jp` | 日文名称 | 否 |
| `--slug` | 分类 slug | 是 |
### geo category update
更新分类信息。
```bash
geo category update --slug can-motion --name "新名称" --name-en "New Name"
```
### geo category reorder
批量调整分类排序。
```bash
geo category reorder --orders "products:0,technical:1,support:2"
```
### geo category delete
删除分类。
```bash
geo category delete --slug old-category
```
---
## 标签命令
### geo tag list / create / delete
```bash
geo tag list
geo tag list --json
geo tag create --name "CAN Bus" --slug can-bus
geo tag delete --slug can-bus
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--slug` | `-s` | 标签 slug | 是 |
| `--name` | `-n` | 标签显示名称 | 是(create) |
---
## 搜索命令
### geo search
搜索文档。
```bash
geo search "CAN bus" --lang zh
geo search "motor" --category can-motion --lang zh
geo search "Arduino" --lang en --json
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--category` | `-c` | 按分类过滤 | 否 |
| `--lang` | `-l` | 语言(必需:zh/en/jp) | 是 |
| `--limit` | | 最大结果数(默认 20) | 否 |
---
## 配置命令
### geo config get
获取站点配置。
```bash
geo config get
geo config get --json
```
### geo config update
更新站点配置。
```bash
geo config update --site-name "我的知识库"
geo config update --hero-title-zh "欢迎" --hero-title-en "Welcome"
geo config update --hero-subtitle-zh "产品文档" --hero-subtitle-en "Product docs"
geo config update --featured-slugs "quick-start,faq,overview"
geo config update --logo-url "/media/logo.png" --favicon-url "/media/favicon.ico"
geo config update --custom-head '<meta name="theme-color" content="#2563EB">'
```
| 参数 | 说明 | 必需 |
|------|------|------|
| `--site-name` | 站点名称 | 否 |
| `--site-desc` | 站点描述(SEO) | 否 |
| `--default-lang` | 默认语言(zh, en, jp) | 否 |
| `--hero-title` | Hero 区域标题 | 否 |
| `--hero-title-zh` | Hero 标题(中文) | 否 |
| `--hero-title-en` | Hero 标题(英文) | 否 |
| `--hero-title-jp` | Hero 标题(日文) | 否 |
| `--hero-subtitle` | Hero 副标题 | 否 |
| `--hero-subtitle-zh` | Hero 副标题(中文) | 否 |
| `--hero-subtitle-en` | Hero 副标题(英文) | 否 |
| `--hero-subtitle-jp` | Hero 副标题(日文) | 否 |
| `--featured-slugs` | 逗号分隔的推荐文档 slug | 否 |
| `--logo-url` | Logo 图片路径 | 否 |
| `--favicon-url` | Favicon 路径 | 否 |
| `--custom-head` | 自定义 HTML(注入到 `<head>`) | 否 |
---
## 用户命令
### geo user list / create / update / delete
```bash
geo user list
geo user list --json
geo user create --username editor1 --password MyPass123 --role editor
geo user update --id user-xxx --role admin
geo user reset-password --id user-xxx
geo user delete --id user-xxx
```
| 参数 | 说明 | 必需 |
|------|------|------|
| `--id` | 用户 ID(update/delete/reset-password 必需) | 是 |
| `--username` | 用户名(create 必需) | 是 |
| `--password` | 密码(create 必需) | 是 |
| `--role` | 角色:admin / editor / viewer(默认 editor) | 否 |
### geo user token
管理 API Token。
```bash
geo user token list # 列出所有 Token
geo user token list --json # JSON 格式输出
geo user token delete --id token-id # 撤销 Token
```
::: note
API Token 的创建只能在管理面板「设置 -> API Token」中操作。
:::
---
## 草稿命令
```bash
geo draft list # 列出所有草稿
geo draft list --json # JSON 格式输出
geo draft get --slug my-draft # 查看草稿内容
geo draft publish --slug my-draft # 发布草稿
geo draft publish --slug my-draft --lang en # 发布草稿(指定语言)
geo draft delete --slug my-draft # 删除草稿
geo draft delete --slug my-draft --lang en # 删除草稿(指定语言)
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--slug` | `-s` | 草稿 slug | 是 |
| `--lang` | `-l` | 语言代码 | 否 |
| `--json` | | JSON 格式输出 | 否 |
---
## 统计命令
```bash
geo stats # 查看仪表盘统计
geo stats metrics # 查看详细系统指标
geo stats --json # JSON 格式输出
```
---
## 反馈命令
```bash
geo feedback list # 列出所有反馈
geo feedback list --json # JSON 格式输出
geo feedback delete --id "feedback-id" # 删除反馈
geo feedback promote --id "feedback-id" # 将反馈提升为文档内容或 FAQ
```
---
## 留言簿命令
```bash
geo guestbook list # 列出所有留言
geo guestbook list --json # JSON 格式输出
geo guestbook toggle --enabled true # 启用留言簿
geo guestbook toggle --enabled false # 禁用留言簿
geo guestbook update --id "entry-id" --status approved # 审批通过
geo guestbook update --id "entry-id" --status rejected # 拒绝
geo guestbook delete --id "entry-id" # 删除留言
```
---
## 媒体命令
```bash
geo media upload --file ./diagram.png
geo media upload --file ./manual.pdf --directory docs
geo media upload --file ./model.step --directory models
geo media list --json
geo media delete --file old-image.jpg
```
| 参数 | 缩写 | 说明 | 必需 |
|------|------|------|------|
| `--file` | `-f` | 本地文件路径(上传)或文件名(删除) | 是 |
| `--directory` | `-d` | public/media 下的子目录 | 否 |
### 支持的文件类型
| 类型 | 格式 |
|------|------|
| 图片 | JPG, PNG, GIF, WebP |
| 视频 | MP4, WebM |
| 音频 | MP3, WAV, OGG |
| 文档 | PDF, DOC, DOCX, TXT, MD |
| 3D 模型 | STEP, STP, IGS |
---
## GEO 命令
### geo geo status
查看 GEO 优化状态。
```bash
geo geo status
```
### geo geo rebuild
重建 GEO 文件(llms.txt、sitemap.xml)。
```bash
geo geo rebuild
```
### geo geo report
查看 GEO 分析报告。
```bash
geo geo report
geo geo report --json
```
### geo geo llms / sitemap / manifest
```bash
geo geo llms # 查看 llms.txt 内容
geo geo sitemap # 查看 sitemap.xml 内容
geo geo manifest # 查看站点 manifest
```
---
## 全局选项
所有命令均支持 `--json` 标志,输出机器可读的 JSON 格式,适合 Agent 解析。
---
## 相关文档
- [CLI 安装与登录](/docs/cli-install) -- 安装与登录指南
- [CLI 快速参考](/docs/cli-quick-reference) -- Agent 快速使用手册
- [GEO Wiki Pro 用户手册](/docs/geo-wiki-pro-user-manual) -- 完整用户手册
- [REST API 文档](/docs/rest-api) -- API 端点参考