bots-garden/mini-mepublic Fork 0
main
Commits
Clone
git clone https://git.rickub.com/bots-garden/mini-me.git
git clone ssh://git@rickub.com/bots-garden/mini-me.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

cli.md · 79 lines · 3.9 KBmarkdown Blame HistoryRaw
💾 Saved. d722711 k33g 5h ago1# Référence : ligne de commande
2
3> Description neutre de l'exécutable `mm` : options, argument positionnel, variables d'environnement, sortie de démarrage et codes de sortie.
4
5## Invocation
6
7```
8mm [-config <chemin>] [-acp] [<chemin>]
9```
10
11| Élément | Type | Défaut | Description |
12|---------|------|--------|-------------|
13| `-config <chemin>` | chaîne | `""` | Chemin du fichier de configuration YAML. |
14| `<chemin>` | positionnel | aucun | Équivalent de `-config` quand `-config` n'est pas donné. Un second argument positionnel est une erreur. |
15| `-acp` | booléen | `false` | Sert l'Agent Client Protocol sur stdin/stdout au lieu du REPL du terminal. |
16| `-h` | — | — | Affiche l'usage des options et quitte. |
17
18## Résolution du fichier de configuration
19
20La première source existante gagne.
21
22| Ordre | Source | Fichier absent |
23|-------|--------|----------------|
24| 1 | Option `-config` ou argument positionnel | Erreur, code de sortie 1 |
25| 2 | Variable d'environnement `AGENT_CONFIG` | Erreur, code de sortie 1 |
26| 3 | `./agent.yaml` | Pas une erreur : les valeurs par défaut intégrées sont utilisées, la bannière affiche `config: built-in defaults` |
27
28## Variables d'environnement
29
30| Variable | Effet |
31|----------|-------|
32| `AGENT_CONFIG` | Chemin du fichier de configuration (voir ci-dessus). |
33| `AGENT_PROVIDER` | Surcharge la clé `provider`. |
34| `AGENT_MODEL` | Surcharge la clé `model`. |
35| `AGENT_BASE_URL` | Surcharge `baseUrl` et désactive la sonde de repli. |
36| `DMR_BASE_URL` | Comme `AGENT_BASE_URL`, pour le fournisseur `dmr` seulement ; `AGENT_BASE_URL` gagne quand les deux sont définies. |
37| Variable nommée par `apiKeyEnv` | Contient la clé d'API. Nom par défaut : aucun pour `dmr`, `LLAMA_API_KEY` pour `llamacpp`. |
38
39## Sortie de démarrage
40
41Affichée sur stdout en mode terminal, sur stderr en mode ACP. Grisée quand stdout est un terminal.
42
43| Ligne | Contenu |
44|-------|---------|
45| `[warning: …]` | Zéro ou plusieurs avertissements de la sonde : serveur injoignable, modèle absent de la liste du serveur, pas de template de chat, compression qui ne peut jamais se déclencher. |
46| `config: … \| provider: … \| model: … \| ctx: … \| tools: … \| skills: N` | Chemin de la configuration, nom du fournisseur, identifiant du modèle, fenêtre de contexte avec son origine (`config`, `/props`) ou `unknown`, noms des outils déclarés, nombre de skills trouvés. |
47| `Agent ready. Commands: …` | Mode terminal seulement. |
48| `Shortcut: Ctrl+C …` | Mode terminal seulement. |
49
50### Exemple
51
52```
53[warning: llamacpp: nothing answers at http://127.0.0.1:8080/v1 — start it: llama-server -m <model.gguf> --jinja --port 8080]
54config: agent.llamacpp.yaml | provider: llamacpp | model: jetbrains/mellum2-12b-a2.5b-instruct-gguf-q4_k_m:Q4_K_M | ctx: unknown | tools: bash, read_file, write_file, edit_file | skills: 0
55```
56
57## Spécificités du mode ACP
58
59| Aspect | Comportement |
60|--------|--------------|
61| stdout | Messages JSON-RPC 2.0 uniquement, un par ligne. |
62| stderr | Bannière, avertissements, trace `[acp] …`, journaux du SDK. |
63| Spinner | Désactivé. |
64| `skillsDir` relatif | Résolu par rapport au répertoire du fichier de configuration, quand un fichier a été trouvé ; sinon depuis le répertoire de travail, comme en mode terminal. |
65
66## Codes de sortie
67
68| Code | Cause |
69|------|-------|
70| 0 | `/quit`, `Ctrl+C` à l'invite, fin de stdin, ou le client ACP a fermé la connexion. |
71| 1 | Plus d'un argument positionnel ; erreur de chargement de la configuration ; erreur d'initialisation du moteur (fournisseur inconnu, clé requise absente). |
72
73## Compilation et installation
74
75| Commande | Effet |
76|----------|-------|
77| `go build -o mm .` | Compile le binaire dans le répertoire courant. |
78| `./install.sh` | Compile `mm` et le copie dans `/usr/local/bin`, avec `sudo` si le répertoire n'est pas accessible en écriture. |
79| `go test ./...` | Lance les tests unitaires. |