smart_ide/docs/API/claw-harness-proxy.md
Nicolas Cantu 088eab84b7 Platform docs, services, ia_dev submodule, smart_ide project config
- Add ia_dev submodule (projects/smart_ide on forge 4nk)
- Document APIs, orchestrator, gateway, local-office, rollout
- Add systemd/scripts layout; relocate setup scripts
- Remove obsolete nginx/enso-only docs from this repo scope
2026-04-03 16:07:58 +02:00

45 lines
1.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# API — claw-harness-api (proxy HTTP)
Le dossier [`services/claw-harness-api/`](../../services/claw-harness-api/) documente lintégration **claw-code** (amont, hors monorepo). Ce fichier décrit uniquement le **proxy Node** sous `services/claw-harness-api/proxy/`, qui aligne sécurité et bind avec les autres services locaux.
- **Bind** : `CLAW_PROXY_HOST` (défaut `127.0.0.1`)
- **Port** : `CLAW_PROXY_PORT` (défaut `37142`)
- **Amont** : `CLAW_UPSTREAM_URL` — URL de base du serveur HTTP claw-code (ex. `http://127.0.0.1:37143`)
## Authentification
Sur le proxy, les requêtes (hors `/health`) doivent inclure :
```http
Authorization: Bearer <CLAW_PROXY_TOKEN>
```
`CLAW_PROXY_TOKEN` est obligatoire au démarrage. Les en-têtes de la requête cliente (hors hop-by-hop et `Host`) sont recopiés vers lamont ; lamont peut avoir sa propre politique dauth.
## Endpoints (côté proxy)
### `GET /health` et `GET /health/`
**Réponse `200`**
```json
{ "status": "ok" }
```
Sans Bearer.
### Toute autre méthode et chemin (authentifié)
Après validation du Bearer, le proxy construit lURL cible : `CLAW_UPSTREAM_URL` + chemin et query de la requête entrante, puis **transfère** méthode, corps et en-têtes (filtrés) vers lamont. Le corps de réponse et le code statut viennent de lamont (ou `502` en cas derreur de connexion).
Il ny a **pas** de catalogue droutes fixe dans le monorepo : les chemins effectifs dépendent du serveur HTTP claw-code déployé.
## Variables denvironnement
| Variable | Obligatoire | Description |
|----------|-------------|-------------|
| `CLAW_PROXY_TOKEN` | oui | Secret Bearer côté clients du proxy |
| `CLAW_UPSTREAM_URL` | oui | Base URL du serveur claw HTTP |
| `CLAW_PROXY_HOST` | non | Bind |
| `CLAW_PROXY_PORT` | non | Port découte du proxy |