Dokos CLI

Configuration

Connecter Dokos CLI à un site — assistant interactif, bench local avec émission automatique des clés d'API, variables d'environnement et registre multi-sites.

dokos a besoin de trois informations pour dialoguer avec un site : son URL, une clé d'API et un secret d'API. Plusieurs façons de les fournir coexistent.

Ordre de résolution des identifiants

dokos résout les identifiants dans cet ordre :

  1. Les variables d'environnement DOKOS_URL, DOKOS_API_KEY, DOKOS_API_SECRET (si les trois sont définies) l'emportent.
  2. Sinon, le fichier ~/.config/dokos/config.json.
  3. Sinon, la commande s'arrête avec un message pointant vers dokos configure.

A. Site distant, en interactif

dokos configure

L'assistant demande l'URL, la clé et le secret d'API, vérifie la connexion, puis enregistre le tout dans ~/.config/dokos/config.json (permissions 0600).

La clé et le secret se génèrent dans votre profil Dokos → Accès APIGénérer les clés. Le secret n'est affiché qu'une seule fois.

B. Bench local, en automatique

Si un bench Dokos tourne sur la même machine, laissez dokos le détecter et émettre les clés pour vous :

dokos use-site                                # depuis l'intérieur du bench (ou --bench <chemin>)
dokos use-site dev.localhost                  # cibler un site précis
dokos use-site dev.localhost --user jane@example.com   # agir en tant qu'un utilisateur donné

dokos remonte jusqu'à la racine du bench, choisit ou demande le site, puis demande pour quel utilisateur émettre les clés (par défaut Administrator). Les clés héritent des rôles et permissions de cet utilisateur : ce sont ses droits qui gouvernent ce que les commandes peuvent lire et écrire.

C. Onboarding en une commande

dokos setup

Un assistant guidé autour de use-site pour relier un bench/site local.

D. Site distant, en non interactif

Pratique pour les scripts et les agents :

dokos add-site akyer \
  --url https://akyer.dokos.cloud \
  --api-key CLE --api-secret SECRET

Variables d'environnement

export DOKOS_URL="https://votre-site.dokos.cloud"
export DOKOS_API_KEY="..."
export DOKOS_API_SECRET="..."
VariableRôle
DOKOS_URLURL de base du site
DOKOS_API_KEYClé d'API
DOKOS_API_SECRETSecret d'API
GITLAB_TOKENJeton utilisé par dokos self-update pour interroger le dépôt privé

Registre multi-sites

dokos gère plusieurs sites dans un même fichier de configuration et permet de basculer de l'un à l'autre :

dokos configure --name dashboard     # enregistrer un site distant sous un nom
dokos use-site --name staging        # relier un bench local sous un nom
dokos sites                          # lister les sites et afficher l'actif
dokos use dashboard                  # changer de site actif

Structure du fichier ~/.config/dokos/config.json :

{
  "sites": {
    "mysite": {
      "url": "https://votre-site.dokos.cloud",
      "api_key": "...",
      "api_secret": "..."
    }
  },
  "active_site": "mysite",
  "gitlab_token": "..."
}

Éditer une clé de configuration

dokos config list                    # toutes les clés, valeurs masquées, et leur source
dokos config set url https://demo.dokos.cloud
dokos config get api_secret --show-secrets
dokos config unset gitlab_token
dokos config path                    # emplacement du fichier

Cache du catalogue

dokos sync télécharge la liste des DocTypes et des rapports dans deux fichiers Markdown lisibles par un LLM :

~/.config/dokos/doctypes.md
~/.config/dokos/reports.md

Le cache est régénéré automatiquement s'il est absent ou vieux de plus de 30 jours. Relancez dokos sync manuellement après une mise à jour des applications Dokos.