# ia_dev — dépôt de pilotage (agents, deploy, ticketing) Dépôt de pilotage par l'IA pour les projets : **équipe d'agents IA** dont le code et les définitions sont dans ia_dev, lancés de façon centralisée pour tous les projets configurés (lecoffreio, enso, algo, etc.) ; ils agissent sur ces projets, pas sur ia_dev. Objectif : une équipe autonome couvrant la **documentation**, le **code** (correctifs, évolutions), le **ticketing** (issues Gitea, mails), le **devops** (push, déploiement, branches), la **sécurité** et la **qualité** (lint, règles). **Principe** : ia_dev est un **dépôt autonome** (usage unique : standalone). La config par projet est dans `projects//conf.json` ; l'id projet est résolu par **MAIL_TO** (adresse « to » des mails) ou **AI_AGENT_TOKEN** (token des requêtes). Schéma détaillé : [ia-dev-project-conf-schema.md](./ia-dev-project-conf-schema.md). ## Usage (standalone) - **Racine d'exécution** : tous les scripts sont lancés depuis la **racine de ia_dev** (ce dépôt). L'id projet est résolu par **MAIL_TO**, **AI_AGENT_TOKEN**, **`IA_PROJECT_ID`**, **`--project`**, ou premier argument selon le script (voir [ia-dev-project-conf-schema.md](./ia-dev-project-conf-schema.md)). - **Config** : dans `projects//conf.json`, les chemins vers les dépôts projet peuvent être **absolus** ou **relatifs à la racine du monorepo smart_ide** lorsque ia_dev y est intégré (`lib/conf_path_resolve.sh`). Les champs `mail.imap_bridge_env` et `git.token_file` sont **relatifs à la racine de ia_dev**. Le répertoire `.secrets` à la racine de ia_dev contient `token` et `gitea-issues/agent-loop.env`, `gitea-issues/imap-bridge.env`. ## Agents et domaines Les **agents** ont leur **code et définitions** dans ia_dev (`.cursor/agents/`, `.cursor/rules/`) et sont **lancés de façon centralisée** depuis ce dépôt pour **tous les projets**. Ils sont **dédiés aux projets configurés** : ils agissent sur ces projets (doc, code, déploiement, ticketing), pas sur ia_dev. Chaque agent indique où se trouve la doc : **projets gérés** → `projects//docs` ; **ia_dev** → `ia_dev/projects/ia_dev/docs` (copie embarquée selon checkout). | Domaine | Agents / composants | |---------|---------------------| | **Doc** | `docupdate` ; `ia_dev/projects/ia_dev/docs/` ; migration wiki (`gitea-issues/wiki-migrate-docs.sh`). | | **Code** | `fix`, `evol`, `code`, `fix-search` ; workflow correctifs/évolutions. | | **Ticketing** | `gitea-issues-process`, `agent-loop` ; spooler `projects//data/issues` ; scripts `gitea-issues/`. | | **IA notaire (ai_working_help)** | `notary-ai-loop`, `notary-ai-process` ; API `ai_working_help/server.js` ; spooler `projects//data/notary-ai/{pending,responded}`. | | **DevOps** | `push-by-script`, `deploy-by-script`, `deploy-pprod-or-prod`, `branch-align-by-script-from-test`, `change-to-all-branches` ; scripts `deploy/`. | | **Sécurité / Qualité** | Règles `.cursor/rules/` ; pas de secrets en dur ; `fix-lint` ; clôture obligatoire (`.cursor/rules/cloture-evolution.mdc`). | Référence détaillée : `ia_dev/projects/ia_dev/docs/GITEA_ISSUES_SCRIPTS_AGENTS.md`. Index : `ia_dev/projects/ia_dev/docs/README.md`. ## Répertoire d'exécution (standalone) Tous les scripts sont invoqués depuis la **racine de ia_dev**. - **deploy/** : déploient les **projets configurés**, pas ia_dev. - **gitea-issues/** : logs et data par projet sous `projects//logs/` et `projects//data/issues/`. - **ai_working_help/** : API et scripts `notary-ai/` ; doc `ai_working_help/docs/notary-ai-api.md`. ## Scripts centralisés (`deploy/`) Les scripts **déploient et versionnent les projets configurés** dans leurs répertoires. Chaque script accepte en option un **project_id** (ou `--project`) ; sinon résolution par MAIL_TO ou AI_AGENT_TOKEN. **Orchestration générique** : - **deploy/lib/deploy-methodology.sh** : environnements `test` \| `pprod` \| `prod`, validations communes. - **deploy.sh** : `./deploy/deploy.sh [options…]` — puis **orchestrator.sh**. - **orchestrator.sh** : secrets depuis `conf.json`, puis **`exec`** du **script orchestrateur projet** : `deploy.project_orchestrator_path` (relatif à `repository_root`). **Repli** : `hooks.phases` ou `deploy.deploy_script_path`. - **run-project-hooks.sh** : délègue à **orchestrator.sh**. Autres : **bump-version.sh**, **deploy-by-script-to.sh**, **pousse.sh**, **branch-align.sh**, **change-to-all-branches.sh**. Bibliothèque partagée : **deploy/_lib/** — détail [ia-dev-deploy-lib.md](./ia-dev-deploy-lib.md). ## Intégration smart_ide Quand ia_dev est dans le monorepo **smart_ide** : [ia-dev-smart-ide-integration.md](./ia-dev-smart-ide-integration.md), [ia_dev-module.md](../ia_dev-module.md).