- Delete extensions/anythingllm-workspaces; document migration to anythingllm-devtools - Add services/carbonyl: shallow submodule fathyb/carbonyl, run-carbonyl.sh (Docker/native) - Add scripts/open-carbonyl-preview-test.sh and smart_ide.preview_urls.test in example conf - Docs: service-carbonyl, carbonyl-terminal-browser, architecture index updates
1.8 KiB
anythingllm-devtools — API HTTP
Service sous services/anythingllm-devtools/. Écoute par défaut sur 127.0.0.1:37146.
Authentification
Toutes les routes sauf GET /health exigent :
Authorization: Bearer <ANYTHINGLLM_DEVTOOLS_TOKEN>
Routes
GET /health
Sans auth. Corps JSON : { "ok": true, "service": "anythingllm-devtools" }.
GET /v1/workspaces
Liste les workspaces AnythingLLM (GET …/api/v1/workspaces amont).
Réponse 200 :
{ "workspaces": [ { "id": 1, "name": "…", "slug": "…" } ] }
Erreurs 503 si ANYTHINGLLM_BASE_URL ou ANYTHINGLLM_API_KEY manquent.
POST /v1/devtools/run
Exécute une ou plusieurs lignes de commandes (même grammaire que l’ancien panneau extension : /repos-clone, /repos-clone-sync, repos-list, /repos-load, /repos-load-sync, /workspace-load, /workspace-sync, help).
Corps JSON (une des deux formes) :
{ "script": "/repos-list\n/workspace-sync my-repo" }
{ "lines": [ "/repos-list", "/workspace-sync my-repo" ] }
Réponse 200 :
{
"ok": true,
"output": "…",
"actions": [
{ "type": "openFolder", "path": "/abs/path/to/repo" },
{ "type": "openWorkspaceUrl", "slug": "my-slug", "url": "https://…/workspace/my-slug" }
]
}
Le serveur n’ouvre ni dossier ni navigateur : actions indique ce que le client peut faire localement.
Erreurs 400 : corps JSON invalide ou message d’erreur métier (ex. repo introuvable).
Voir aussi
- anythingllm-workspaces.md
- extension-anythingllm-workspaces.md (extension IDE supprimée ; service HTTP uniquement)
- repos-devtools-server.md