Documentación / reference
API de administración
Endpoints autenticados que editan el contenido del sitio mediante commits de git validados.
All admin endpoints need Authorization: Bearer <admin token> (Jenks keeps it in the macOS Keychain as agent-env:JENKSGUO_ADMIN_TOKEN; tools read env JENKSGUO_ADMIN_TOKEN).
Writes are validated with the same schema as the build, then committed to GitHub. CI translates changed entries into every language, rebuilds and deploys: main → jenksguo.xyz, dev → dev.jenksguo.xyz.
| Método | Ruta | Herramienta |
|---|---|---|
| GET | /api/admin/whoami |
— |
| POST | /api/admin/login · /api/admin/logout |
— (cookie de sesión de consola) |
| 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 |
Errors: 401 unauthorized, 403 forbidden_path (only content files are writable), 422 invalid with errors[], 409/502 github_error, 503 github_not_configured.
admin_schema — Esquema de contenido
El modelo de contenido: campos y reglas de las entradas, etiquetas, lentes, tipos, rutas editables, documentos y convenciones de edición. Léelo antes de escribir.
- MCP:
admin_schemaonhttps://jenksguo.xyz/mcp/admin - REST:
GET /api/admin/schema(admin token) - CLI:
jenks admin schema
Sin argumentos.
curl -s "https://jenksguo.xyz/api/admin/schema" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_list_files — Listar archivos de contenido
Lista los archivos de contenido editables en una rama (ruta, tamaño, sha), opcionalmente dentro de una carpeta como content/corpus/experiences.
- MCP:
admin_list_filesonhttps://jenksguo.xyz/mcp/admin - REST:
GET /api/admin/files?dir=&branch=(admin token) - CLI:
jenks admin ls [dir]
| Argumento | Tipo | Requerido | Notas |
|---|---|---|---|
dir |
cadena | no | p. ej., content/corpus/projects (por defecto: todo el contenido) |
branch |
main · dev |
no | main publica en jenksguo.xyz; dev previsualiza en dev.jenksguo.xyz (por defecto main). |
curl -s "https://jenksguo.xyz/api/admin/files" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_read_file — Leer un archivo de contenido
Lee el origen bruto Markdown/JSON de un archivo de contenido (con su sha). Pasa path, o slug para una entrada, lente o habilidad.
- MCP:
admin_read_fileonhttps://jenksguo.xyz/mcp/admin - REST:
GET /api/admin/file?path=&slug=&branch=(admin token) - CLI:
jenks admin get <slug|path>
| Argumento | Tipo | Requerido | Notas |
|---|---|---|---|
path |
cadena | no | |
slug |
cadena | no | |
branch |
main · dev |
no | main publica en jenksguo.xyz; dev previsualiza en dev.jenksguo.xyz (por defecto main). |
curl -s "https://jenksguo.xyz/api/admin/file" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_validate — Validar un cambio
Valida el contenido de un archivo contra el esquema de contenido sin hacer commit. Devuelve una lista de problemas (vacía = válido).
- MCP:
admin_validateonhttps://jenksguo.xyz/mcp/admin - REST:
POST /api/admin/validate(admin token) - CLI:
jenks admin validate <path> <file>
| Argumento | Tipo | Requerido | Notas |
|---|---|---|---|
path |
cadena | sí | |
content |
cadena | sí |
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 — Crear o actualizar un archivo de contenido
Valida y hace commit de un archivo de contenido (crear o reemplazar). La publicación es automática: CI vuelve a traducir las entradas cambiadas a todos los idiomas, recompila y despliega (main → jenksguo.xyz, dev → dev.jenksguo.xyz) en unos minutos.
- MCP:
admin_write_fileonhttps://jenksguo.xyz/mcp/admin - REST:
PUT /api/admin/file(admin token) - CLI:
jenks admin put <path> <file> -m <message>
| Argumento | Tipo | Requerido | Notas |
|---|---|---|---|
path |
cadena | sí | |
content |
cadena | sí | |
message |
cadena | sí | Mensaje de commit |
branch |
main · dev |
no | main publica en jenksguo.xyz; dev previsualiza en dev.jenksguo.xyz (por defecto 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 — Eliminar un archivo de contenido
Elimina un archivo de contenido (p. ej., quitar una entrada) con un mensaje de commit. El historial de Git lo mantiene recuperable.
- MCP:
admin_delete_fileonhttps://jenksguo.xyz/mcp/admin - REST:
DELETE /api/admin/file?path=&message=&branch=(admin token) - CLI:
jenks admin rm <path> -m <message>
| Argumento | Tipo | Requerido | Notas |
|---|---|---|---|
path |
cadena | sí | |
message |
cadena | sí | |
branch |
main · dev |
no | main publica en jenksguo.xyz; dev previsualiza en dev.jenksguo.xyz (por defecto 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 — Hacer commit de varios archivos a la vez
Valida y hace commit de varios cambios de archivos como UN solo commit. Cada cambio es {path, content} o {path, delete: true}.
- MCP:
admin_commit_changesonhttps://jenksguo.xyz/mcp/admin - REST:
POST /api/admin/changes(admin token) - CLI:
jenks admin commit <changes.json> -m <message>
| Argumento | Tipo | Requerido | Notas |
|---|---|---|---|
changes |
arreglo | sí | |
message |
cadena | sí | |
branch |
main · dev |
no | main publica en jenksguo.xyz; dev previsualiza en dev.jenksguo.xyz (por defecto 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 — Redactar una edición con IA
Pídele al modelo del sitio que reescriba un archivo de contenido a partir de una instrucción en inglés llano. Devuelve el contenido propuesto, un diff y problemas de validación. NO hace commit: revísalo y luego llama a admin_write_file.
- MCP:
admin_ai_editonhttps://jenksguo.xyz/mcp/admin - REST:
POST /api/admin/ai-edit(admin token) - CLI:
jenks admin ai-edit <slug|path> "<instruction>" [--apply]
| Argumento | Tipo | Requerido | Notas |
|---|---|---|---|
path |
cadena | no | |
slug |
cadena | no | |
instruction |
cadena | sí | |
branch |
main · dev |
no | main publica en jenksguo.xyz; dev previsualiza en dev.jenksguo.xyz (por defecto main). |
content |
cadena | no | Texto opcional no guardado del archivo desde el cual redactar (por defecto: el archivo guardado). |
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 — Estado de despliegue
Ejecuciones recientes de CI (translate → build → deploy) con estado, rama, commit y enlaces.
- MCP:
admin_deploy_statusonhttps://jenksguo.xyz/mcp/admin - REST:
GET /api/admin/deploys?branch=(admin token) - CLI:
jenks admin deploys
| Argumento | Tipo | Requerido | Notas |
|---|---|---|---|
branch |
main · dev |
no | main publica en jenksguo.xyz; dev previsualiza en dev.jenksguo.xyz (por defecto main). |
curl -s "https://jenksguo.xyz/api/admin/deploys" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_promote — Promocionar dev a producción
Fusiona la rama dev en main, publicando todo lo previsualizado en dev.jenksguo.xyz en jenksguo.xyz.
- MCP:
admin_promoteonhttps://jenksguo.xyz/mcp/admin - REST:
POST /api/admin/promote(admin token) - CLI:
jenks admin promote
| Argumento | Tipo | Requerido | Notas |
|---|---|---|---|
message |
cadena | no |
curl -s -X POST https://jenksguo.xyz/api/admin/promote \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
-H 'content-type: application/json' \
-d '{}'
.mdEsta página está traducida con ayuda de IA; los títulos oficiales permanecen en inglés.