Docs / reference
API d'administration
Points de terminaison authentifiés qui modifient le contenu du site via des commits Git validés.
All admin endpoints need Authorization: Bearer <admin token> (Jenks le conserve dans le trousseau macOS sous agent-env:JENKSGUO_ADMIN_TOKEN; les outils lisent la variable d'environnement JENKSGUO_ADMIN_TOKEN).
Les écritures sont validées avec le même schéma que la build, puis validées sur GitHub. La CI traduit les entrées modifiées dans chaque langue, reconstruit et déploie : main → jenksguo.xyz, dev → dev.jenksguo.xyz.
| Méthode | Chemin | Outil |
|---|---|---|
| GET | /api/admin/whoami |
— |
| POST | /api/admin/login · /api/admin/logout |
— (cookie de session console) |
| 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 |
Erreurs : 401 unauthorized, 403 forbidden_path (seuls les fichiers de contenu sont modifiables), 422 invalid avec errors[], 409/502 github_error, 503 github_not_configured.
admin_schema — Schéma de contenu
Le modèle de contenu : champs et règles des entrées, tags, lentilles, types, chemins inscriptibles, documents et conventions d'édition. Lisez ceci avant d'écrire.
- MCP :
admin_schemasurhttps://jenksguo.xyz/mcp/admin - REST :
GET /api/admin/schema(admin token) - CLI :
jenks admin schema
Aucun argument.
curl -s "https://jenksguo.xyz/api/admin/schema" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_list_files — Lister les fichiers de contenu
Lister les fichiers de contenu modifiables sur une branche (chemin, taille, sha), éventuellement dans un dossier comme content/corpus/experiences.
- MCP :
admin_list_filessurhttps://jenksguo.xyz/mcp/admin - REST :
GET /api/admin/files?dir=&branch=(admin token) - CLI :
jenks admin ls [dir]
| Argument | Type | Requis | Remarques |
|---|---|---|---|
dir |
string | non | p. ex. content/corpus/projects (par défaut : tout le contenu) |
branch |
main · dev |
non | main publie sur jenksguo.xyz ; dev prévisualise sur dev.jenksguo.xyz (par défaut main). |
curl -s "https://jenksguo.xyz/api/admin/files" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_read_file — Lire un fichier de contenu
Lire la source brute Markdown/JSON d'un fichier de contenu (avec son sha). Passer path, ou slug pour une entrée, une lentille ou une compétence.
- MCP :
admin_read_filesurhttps://jenksguo.xyz/mcp/admin - REST :
GET /api/admin/file?path=&slug=&branch=(admin token) - CLI :
jenks admin get <slug|path>
| Argument | Type | Requis | Remarques |
|---|---|---|---|
path |
string | non | |
slug |
string | non | |
branch |
main · dev |
non | main publie sur jenksguo.xyz ; dev prévisualise sur dev.jenksguo.xyz (par défaut main). |
curl -s "https://jenksguo.xyz/api/admin/file" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_validate — Valider une modification
Valider le contenu d'un fichier par rapport au schéma de contenu sans commit. Renvoie une liste de problèmes (vide = valide).
- MCP :
admin_validatesurhttps://jenksguo.xyz/mcp/admin - REST :
POST /api/admin/validate(admin token) - CLI :
jenks admin validate <path> <file>
| Argument | Type | Requis | Remarques |
|---|---|---|---|
path |
string | oui | |
content |
string | oui |
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 — Créer ou mettre à jour un fichier de contenu
Valider et committer un fichier de contenu (création ou remplacement). La publication est automatique : la CI retraduit les entrées modifiées dans toutes les langues, reconstruit et déploie (main → jenksguo.xyz, dev → dev.jenksguo.xyz) en quelques minutes.
- MCP :
admin_write_filesurhttps://jenksguo.xyz/mcp/admin - REST :
PUT /api/admin/file(admin token) - CLI :
jenks admin put <path> <file> -m <message>
| Argument | Type | Requis | Remarques |
|---|---|---|---|
path |
string | oui | |
content |
string | oui | |
message |
string | oui | Message de commit |
branch |
main · dev |
non | main publie sur jenksguo.xyz ; dev prévisualise sur dev.jenksguo.xyz (par défaut 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 — Supprimer un fichier de contenu
Supprimer un fichier de contenu (par ex. retirer une entrée) avec un message de commit. L'historique Git le rend récupérable.
- MCP :
admin_delete_filesurhttps://jenksguo.xyz/mcp/admin - REST :
DELETE /api/admin/file?path=&message=&branch=(admin token) - CLI :
jenks admin rm <path> -m <message>
| Argument | Type | Requis | Remarques |
|---|---|---|---|
path |
string | oui | |
message |
string | oui | |
branch |
main · dev |
non | main publie sur jenksguo.xyz ; dev prévisualise sur dev.jenksguo.xyz (par défaut 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 — Valider plusieurs fichiers en une seule fois
Valider et committer plusieurs modifications de fichiers en UN seul commit. Chaque modification est {path, content} ou {path, delete: true}.
- MCP :
admin_commit_changessurhttps://jenksguo.xyz/mcp/admin - REST :
POST /api/admin/changes(admin token) - CLI :
jenks admin commit <changes.json> -m <message>
| Argument | Type | Requis | Remarques |
|---|---|---|---|
changes |
array | oui | |
message |
string | oui | |
branch |
main · dev |
non | main publie sur jenksguo.xyz ; dev prévisualise sur dev.jenksguo.xyz (par défaut 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 — Proposer une modification avec l'IA
Demander au modèle du site de réécrire un fichier de contenu à partir d'une instruction en anglais simple. Renvoie le contenu proposé, un diff et les problèmes de validation. Ne commite PAS — relisez, puis appelez admin_write_file.
- MCP :
admin_ai_editsurhttps://jenksguo.xyz/mcp/admin - REST :
POST /api/admin/ai-edit(admin token) - CLI :
jenks admin ai-edit <slug|path> "<instruction>" [--apply]
| Argument | Type | Requis | Remarques |
|---|---|---|---|
path |
string | non | |
slug |
string | non | |
instruction |
string | oui | |
branch |
main · dev |
non | main publie sur jenksguo.xyz ; dev prévisualise sur dev.jenksguo.xyz (par défaut main). |
content |
string | non | Texte de fichier non enregistré facultatif à partir duquel rédiger (par défaut : le fichier enregistré). |
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 — Statut des déploiements
Exécutions CI récentes (traduction → build → déploiement) avec statut, branche, commit et liens.
- MCP :
admin_deploy_statussurhttps://jenksguo.xyz/mcp/admin - REST :
GET /api/admin/deploys?branch=(admin token) - CLI :
jenks admin deploys
| Argument | Type | Requis | Remarques |
|---|---|---|---|
branch |
main · dev |
non | main publie sur jenksguo.xyz ; dev prévisualise sur dev.jenksguo.xyz (par défaut main). |
curl -s "https://jenksguo.xyz/api/admin/deploys" \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"
admin_promote — Promouvoir dev en production
Fusionner la branche dev dans main, publiant tout ce qui a été prévisualisé sur dev.jenksguo.xyz vers jenksguo.xyz.
- MCP :
admin_promotesurhttps://jenksguo.xyz/mcp/admin - REST :
POST /api/admin/promote(admin token) - CLI :
jenks admin promote
| Argument | Type | Requis | Remarques |
|---|---|---|---|
message |
string | non |
curl -s -X POST https://jenksguo.xyz/api/admin/promote \
-H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
-H 'content-type: application/json' \
-d '{}'
.mdCette page est traduite avec l’aide de l’IA ; les titres officiels restent en anglais.