文档 / reference
管理 API
通过已验证的 git 提交编辑站点内容的需鉴权端点。
所有管理端点需要 Authorization: Bearer <admin token>(Jenks 将其保存在 macOS 钥匙串中,键为 agent-env:JENKSGUO_ADMIN_TOKEN;工具从环境变量 JENKSGUO_ADMIN_TOKEN 读取)。
写入会使用与构建相同的模式进行校验,然后提交到 GitHub。CI 会将变更条目翻译为所有语言、重建并部署:main → jenksguo.xyz,dev → dev.jenksguo.xyz。
| 方法 | 路径 | 工具 |
|---|---|---|
| GET | /api/admin/whoami |
— |
| POST | /api/admin/login · /api/admin/logout |
—(控制台会话 Cookie) |
| GET | /api/admin/schema |
admin_schema |
| GET | /api/admin/files |
admin_list_files |
| GET | /api/admin/file |
admin_read_file |
| POST | /api/admin/validate |
admin_validate |
| PUT | /api/admin/file |
admin_write_file |
| DELETE | /api/admin/file |
admin_delete_file |
| POST | /api/admin/changes |
admin_commit_changes |
| POST | /api/admin/ai-edit |
admin_ai_edit |
| GET | /api/admin/deploys |
admin_deploy_status |
| POST | /api/admin/promote |
admin_promote |
错误:401 unauthorized,403 forbidden_path(只有内容文件可写),422 invalid 携带 errors[],409/502 github_error,503 github_not_configured。
admin_schema — 内容模式
内容模型:条目字段与规则、标签、镜头、种类、可写路径、文档与编辑规范。写入前请先阅读。
- MCP:
admin_schemaonhttps://jenksguo.xyz/mcp/admin - REST:
GET /api/admin/schema(管理员令牌) - CLI:
jenks admin schema
无参数。
curl -s "https://jenksguo.xyz/api/admin/schema" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_list_files — 列出内容文件
列出某分支上的可编辑内容文件(路径、大小、sha),可选限定在某个文件夹内,例如 content/corpus/experiences。
- MCP:
admin_list_filesonhttps://jenksguo.xyz/mcp/admin - REST:
GET /api/admin/files?dir=&branch=(管理员令牌) - CLI:
jenks admin ls [dir]
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
dir |
字符串 | 否 | 例如 content/corpus/projects(默认:所有内容) |
branch |
main · dev |
否 | main 发布到 jenksguo.xyz;dev 预览到 dev.jenksguo.xyz(默认 main)。 |
curl -s "https://jenksguo.xyz/api/admin/files" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_read_file — 读取内容文件
读取内容文件的原始 Markdown/JSON 源(及其 sha)。传入 path,或为某个条目、镜头或技能传入 slug。
- MCP:
admin_read_fileonhttps://jenksguo.xyz/mcp/admin - REST:
GET /api/admin/file?path=&slug=&branch=(管理员令牌) - CLI:
jenks admin get <slug|path>
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
path |
字符串 | 否 | |
slug |
字符串 | 否 | |
branch |
main · dev |
否 | main 发布到 jenksguo.xyz;dev 预览到 dev.jenksguo.xyz(默认 main)。 |
curl -s "https://jenksguo.xyz/api/admin/file" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_validate — 校验变更
在不提交的情况下,根据内容模式校验文件内容。返回问题列表(空列表 = 有效)。
- MCP:
admin_validateonhttps://jenksguo.xyz/mcp/admin - REST:
POST /api/admin/validate(管理员令牌) - CLI:
jenks admin validate <path> <file>
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
path |
字符串 | 是 | |
content |
字符串 | 是 |
curl -s -X POST https://jenksguo.xyz/api/admin/validate \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
-H 'content-type: application/json' \
-d '{"path":"content/corpus/projects/example.md","content":"<content>"}'
admin_write_file — 新建或更新内容文件
校验并提交单个内容文件(新建或替换)。发布是自动的:CI 会在几分钟内将变更条目重新翻译为所有语言、重建并部署(main → jenksguo.xyz,dev → dev.jenksguo.xyz)。
- MCP:
admin_write_fileonhttps://jenksguo.xyz/mcp/admin - REST:
PUT /api/admin/file(管理员令牌) - CLI:
jenks admin put <path> <file> -m <message>
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
path |
字符串 | 是 | |
content |
字符串 | 是 | |
message |
字符串 | 是 | 提交信息 |
branch |
main · dev |
否 | main 发布到 jenksguo.xyz;dev 预览到 dev.jenksguo.xyz(默认 main)。 |
curl -s -X PUT https://jenksguo.xyz/api/admin/file \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
-H 'content-type: application/json' \
-d '{"path":"content/corpus/projects/example.md","content":"<content>","message":"<message>"}'
admin_delete_file — 删除内容文件
通过提交信息删除单个内容文件(例如移除一个条目)。Git 历史可用于恢复。
- MCP:
admin_delete_fileonhttps://jenksguo.xyz/mcp/admin - REST:
DELETE /api/admin/file?path=&message=&branch=(管理员令牌) - CLI:
jenks admin rm <path> -m <message>
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
path |
字符串 | 是 | |
message |
字符串 | 是 | |
branch |
main · dev |
否 | main 发布到 jenksguo.xyz;dev 预览到 dev.jenksguo.xyz(默认 main)。 |
curl -s -X DELETE https://jenksguo.xyz/api/admin/file \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
-H 'content-type: application/json' \
-d '{"path":"content/corpus/projects/example.md","message":"<message>"}'
admin_commit_changes — 批量提交多个文件
将多个文件变更作为“一个提交”进行校验并提交。每个变更为 {path, content} 或 {path, delete: true}。
- MCP:
admin_commit_changesonhttps://jenksguo.xyz/mcp/admin - REST:
POST /api/admin/changes(管理员令牌) - CLI:
jenks admin commit <changes.json> -m <message>
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
changes |
数组 | 是 | |
message |
字符串 | 是 | |
branch |
main · dev |
否 | main 发布到 jenksguo.xyz;dev 预览到 dev.jenksguo.xyz(默认 main)。 |
curl -s -X POST https://jenksguo.xyz/api/admin/changes \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
-H 'content-type: application/json' \
-d '{"changes":"<changes>","message":"<message>"}'
admin_ai_edit — 使用 AI 起草编辑
让站点的模型根据一条英文指令改写单个内容文件。返回提议的内容、diff 与校验问题。不会提交——请先审阅,然后调用 admin_write_file。
- MCP:
admin_ai_editonhttps://jenksguo.xyz/mcp/admin - REST:
POST /api/admin/ai-edit(管理员令牌) - CLI:
jenks admin ai-edit <slug|path> "<instruction>" [--apply]
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
path |
字符串 | 否 | |
slug |
字符串 | 否 | |
instruction |
字符串 | 是 | |
branch |
main · dev |
否 | main 发布到 jenksguo.xyz;dev 预览到 dev.jenksguo.xyz(默认 main)。 |
content |
字符串 | 否 | 可选的未保存文件文本,作为起草来源(默认:已保存文件)。 |
curl -s -X POST https://jenksguo.xyz/api/admin/ai-edit \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
-H 'content-type: application/json' \
-d '{"instruction":"<instruction>"}'
admin_deploy_status — 部署状态
最近的 CI 运行(translate → build → deploy),包含状态、分支、提交与链接。
- MCP:
admin_deploy_statusonhttps://jenksguo.xyz/mcp/admin - REST:
GET /api/admin/deploys?branch=(管理员令牌) - CLI:
jenks admin deploys
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
branch |
main · dev |
否 | main 发布到 jenksguo.xyz;dev 预览到 dev.jenksguo.xyz(默认 main)。 |
curl -s "https://jenksguo.xyz/api/admin/deploys" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_promote — 将 dev 提升到生产
将 dev 分支合并到 main,把在 dev.jenksguo.xyz 预览的一切发布到 jenksguo.xyz。
- MCP:
admin_promoteonhttps://jenksguo.xyz/mcp/admin - REST:
POST /api/admin/promote(管理员令牌) - CLI:
jenks admin promote
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
message |
字符串 | 否 |
curl -s -X POST https://jenksguo.xyz/api/admin/promote \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
-H 'content-type: application/json' \
-d '{}'
.md本页内容在 AI 协助下翻译;官方职位名称保留英文。