smart_ide/README.md
Nicolas Cantu d98e6bce60 feat: logs/ for pull-sync and ia_dev; document ia_dev as in-repo module
- Default PULL_SYNC_LOG to logs/git-pull-projects.log; add logs/README and gitignore
- Add services/ia_dev integration README and .env.example
- Replace docs/ia_dev-submodule.md with ia_dev-module.md; update ecosystem and README links
- Point ia_dev submodule to commit with smart_ide_logs.sh
2026-04-03 17:50:49 +02:00

63 lines
6.9 KiB
Markdown
Raw 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.

# smart_ide — IDE orienté intention et IA locale
Projet denvironnement de développement où l**inférence** repose sur **Ollama**, la **mémoire documentaire et RAG** sur **AnythingLLM**, la **bureautique métier riche** sur **ONLYOFFICE**, et l**édition / dépôt de fichiers Office par API** (docx programmatique) via **Local Office** (`services/local-office/`). Les **agents métier** existants (`ia_dev` et sous-agents) restent le noyau opératoire ; léditeur et lorchestrateur les exposent via une **grammaire de commandes** plutôt que via une navigation fichiers classique.
**Monorepo unique** : ce dépôt est le **référentiel principal** pour la doc, les **services locaux** (`services/`, dont Local Office), les scripts, les extensions et le **socle applicatif éditeur** (**Lapce** sous `core_ide/`, clone local hors index Git — voir [docs/core-ide.md](./docs/core-ide.md)). L**hébergement canonique** est la **forge interne** ; les dépôts publics cités en documentation sont des **amonts** ou références, pas des cibles de publication obligatoires pour les livrables 4NK. Détail architectural : [docs/system-architecture.md](./docs/system-architecture.md).
## Première cible de déploiement
Le **premier déploiement** visé est un **poste Linux client** qui se connecte en **SSH** à un **serveur distant** hébergeant :
- le **socle technique IA** (Ollama, AnythingLLM, services associés) ;
- les **dépôts** (sources, agents, procédures).
LUX (ex. Lapce) et les flux utilisateur peuvent tourner sur le client ; lexécution lourde, la mémoire projet et Git vivent **sur le serveur**. Détail : [docs/deployment-target.md](./docs/deployment-target.md).
## Positionnement
- **Pas dexplorer comme surface principale** : la navigation primaire passe par intentions, recherche, contexte, timeline, objets logiques et artefacts ; un accès brut (fichiers / arborescence) reste disponible en **mode expert / secours**, pas comme flux nominal.
- **Machine de travail orientée opérations** plutôt quéditeur de fichiers : lutilisateur exprime *ce quil veut faire*, *sur quel objet logique*, *avec quels droits*, *dans quel contexte projet*, *avec quelle procédure*, *avec quel agent*, *avec quel résultat attendu*.
- **Socle applicatif éditeur : [Lapce](https://lapce.dev/)** sous **`core_ide/`** — open source, Rust, rendu natif / GPU ; base pour le noyau dédition + agents. Mise à jour et build : [docs/core-ide.md](./docs/core-ide.md). Choix darchitecture, pas une obligation figée.
## AnythingLLM et projets
Pour chaque **projet**, un **workspace AnythingLLM** dédié est créé (ou rattaché) : corpus, embeddings et conversations restent **isolés par projet**. Une **moulinette de synchronisation** aligne un sous-ensemble de fichiers du dépôt avec le workspace concerné afin de garder la mémoire RAG alignée avec le code et la doc utiles.
Voir [docs/anythingllm-workspaces.md](./docs/anythingllm-workspaces.md).
## Module `ia_dev` (dans ce dépôt)
Le répertoire [`./ia_dev`](./ia_dev) contient l**équipe dagents**, les scripts `deploy/`, le ticketing Gitea, etc. (référence historique sur la forge : [**ia_dev**](https://git.4nkweb.com/4nk/ia_dev.git)). Les **fichiers `conf.json`** pour ce monorepo sont sous [`./projects/<id>/`](./projects/README.md) (pas les clones Git ; ceux-ci ailleurs, ex. `../projects/`). Un `git clone` du monorepo suffit. Détail : [docs/ia_dev-module.md](./docs/ia_dev-module.md), intégration [services/ia_dev/](services/ia_dev/README.md), journaux [logs/README.md](logs/README.md). Les agents Cursor **pont** (`ia-dev-*`) sont décrits dans [docs/ia_dev-project-smart_ide.md](./docs/ia_dev-project-smart_ide.md).
## Documentation
| Document | Contenu |
|----------|---------|
| [docs/README.md](./docs/README.md) | Index de la documentation technique (`docs/`, `docs/features/`, `docs/API/`) |
| [docs/platform-target.md](./docs/platform-target.md) | Plateforme en ligne : envs test/pprod/prod, IA same-host, SSO docv, API IA docv |
| [docs/API/README.md](./docs/API/README.md) | Référence HTTP des services sous `services/` + docv externe (endpoints, auth, ports) |
| [docs/infrastructure.md](./docs/infrastructure.md) | LAN, SSH, scripts daccès hôte |
| [docs/services.md](./docs/services.md) | Ollama, AnythingLLM Docker, intégration |
| [docs/anythingllm-workspaces.md](./docs/anythingllm-workspaces.md) | Workspaces par projet, synchronisation |
| [docs/ux-navigation-model.md](./docs/ux-navigation-model.md) | Remplacer lexplorer : intentions, risques, vues, graphe, mode expert |
| [docs/system-architecture.md](./docs/system-architecture.md) | Couches, modules, agents, gateway, OpenShell, événements |
| [docs/ecosystem-architecture-and-sync.md](./docs/ecosystem-architecture-and-sync.md) | smart_ide, clones projet, API IA, docv / données `../projects/<id>/data`, Git / Ollama / AnythingLLM |
| [docs/deployment-target.md](./docs/deployment-target.md) | Client Linux + SSH : serveur = socle IA + repos |
| [projects/README.md](./projects/README.md) | Confs `ia_dev` (`conf.json` seuls) — distinct des clones sous `../projects/` |
| [cron/README.md](./cron/README.md) | Config `cron/config.env`, pull Git planifié (`projects/*/conf.json`) |
| [scripts/install-git-pull-systemd-user.sh](./scripts/install-git-pull-systemd-user.sh) | Timer systemd **user** pour le pull automatique |
| [docs/ia_dev-module.md](./docs/ia_dev-module.md) | Module `ia_dev`, liens projet, journaux |
| [services/ia_dev/](services/ia_dev/README.md) | Contrat dintégration `ia_dev` dans smart_ide |
| [docs/ia_dev-project-smart_ide.md](./docs/ia_dev-project-smart_ide.md) | Projet `ia_dev` `smart_ide` : `conf.json`, wiki/issues forge 4nk, agents Cursor `ia-dev-*` |
| [docs/features/langextract-api.md](./docs/features/langextract-api.md) | API locale LangExtract (extraction structurée) |
| [docs/features/claw-harness-api.md](./docs/features/claw-harness-api.md) | Intégration claw-code (multi-modèles, sans Anthropic dans les gabarits) |
| [docs/features/agent-regex-search-api.md](./docs/features/agent-regex-search-api.md) | API recherche regex code (ripgrep), contexte article Cursor |
| [docs/features/local-office.md](./docs/features/local-office.md) | Local Office : API REST docx (upload, commandes), dossier `services/local-office/` |
| [docs/core-ide.md](./docs/core-ide.md) | Socle applicatif Lapce : répertoire `core_ide/`, clone, build |
## Dépôt actuel (outillage)
Scripts dinstallation et dexploitation sur Ubuntu : SSH, sudo ciblé, AnythingLLM Docker, Ollama exposé pour Docker, modèle Ollama alias `qwen3-code-webdev`, installer Desktop AnythingLLM. Ces scripts ciblent en priorité l**hôte serveur** qui porte le socle IA et les repos ; le **client Linux** repose surtout sur SSH et lIDE. LIDE complet (Lapce + orchestrateur + gateway) est **cible de conception** ; ce dépôt documente et supporte la **stack sur serveur** (Ollama + AnythingLLM) et laccès distant.
**Auteur :** Équipe 4NK