Aller au contenu principal

Configuration

IaC Code lit la configuration depuis les arguments CLI, les variables d'environnement et les fichiers dans le répertoire de configuration à l'exécution.

Priorité de configuration :

Arguments CLI > variables d'environnement > fichiers de configuration

Le répertoire d'exécution par défaut est :

~/.iac-code/

Vous pouvez le déplacer en définissant la variable d'environnement IAC_CODE_CONFIG_DIR (prend en charge l'expansion de ~ et $VAR). Une fois définie, tous les artefacts persistés — identifiants, paramètres, historique, projects/, image-cache/, tool-results/, logs/, memory/, a2a/, telemetry/, skills/ — suivent le nouvel emplacement.

Fichiers courants :

FichierDescription
.credentials.ymlIdentifiants LLM
.cloud-credentials.ymlIdentifiants du fournisseur cloud
settings.ymlFournisseur sélectionné, modèle et paramètres associés
AGENTS.mdMémoire utilisateur chargée comme instructions persistantes
history filesHistorique de saisie pour les flux de travail interactifs

Évitez de commiter ou de partager les fichiers de ce répertoire car ils peuvent contenir des secrets ou des préférences locales.

Fichiers mémoire

IaC Code possède deux emplacements mémoire publics :

EmplacementObjectif
<project-root>/AGENTS.mdMémoire de projet. Elle peut être commitée lorsque les instructions sont utiles à toutes les personnes travaillant sur le projet.
<config-dir>/AGENTS.mdMémoire utilisateur. Elle suit IAC_CODE_CONFIG_DIR et reste privée pour l'utilisateur local.

Définissez IAC_CODE_INSTRUCTION_MEMORY_FILE pour utiliser un autre nom de fichier de mémoire d'instructions, par exemple IAC-CODE.md.

Les fichiers de sujets auto-memory du projet sont stockés sous :

<config-dir>/projects/<project-key>/memory/

MEMORY.md dans ce dossier est l'index des sujets utilisé par les side calls auto-memory. Il n'est pas chargé comme contexte permanent. Lorsque auto-memory est activé, IaC Code peut sélectionner des fichiers de sujets pertinents et les ajouter comme contexte de conversation masqué.

Paramètres du projet

En plus du fichier ~/.iac-code/settings.yml au niveau utilisateur, IaC Code charge les paramètres au niveau projet depuis le répertoire de travail courant :

FichierPortée
.iac-code/settings.ymlParamètres partagés du projet (sûr à commiter).
.iac-code/settings.local.ymlSurcharges locales (doit être dans .gitignore).

Ordre de fusion : paramètres utilisateur → paramètres projet → paramètres locaux projet → arguments CLI (les sources ultérieures remplacent les précédentes).

Configuration des permissions d'outils

La section permissions dans settings.yml configure quelles actions d'outils sont autorisées, refusées ou nécessitent une confirmation :

permissions:
mode: default
allow:
- "bash(git *)"
- "bash(ls:*)"
deny:
- "bash(rm -rf *)"
ask:
- "bash(curl:*)"
additional_directories:
- "/tmp/workspace"
ChampDescription
modeMode de permission : default, accept_edits, bypass_permissions, dont_ask.
allowListe des modèles de permissions d'outils à approuver automatiquement.
denyListe des modèles de permissions d'outils à refuser automatiquement.
askListe des modèles de permissions d'outils nécessitant toujours une confirmation.
additional_directoriesRépertoires supplémentaires au-delà de cwd dans lesquels l'agent peut écrire.

Syntaxe des modèles

Les modèles de permissions d'outils suivent le format tool_name(rule) :

ModèleSignification
bashCorrespondre à toutes les commandes bash (nom d'outil nu).
bash(git *)Correspondre aux commandes bash commençant par git.
bash(curl:*)Correspondre aux commandes bash commençant par curl.
write_fileCorrespondre à tous les appels d'outil write_file.

Les règles sont évaluées dans l'ordre : deny → ask → allow → comportement par défaut. Les arguments CLI (--allowed-tools, --disallowed-tools) ont la priorité la plus élevée.