CodeNomad/docs/help/fr/install.md
Pascal André 01b20b5b78
Some checks are pending
Publish help / build (push) Waiting to run
Publish help / deploy (push) Blocked by required conditions
chore(opencode): qualify and recommend runtime 2.1.3 (#1098)
## Summary

- Qualify OpenCode **2.1.3** (latest stable, 22 October) with the
existing locked **2.1.0 client/plugin** dependencies, and **recommend**
it.
- Keep the technical **minimum at 2.1.2**: nothing CodeNomad consumes
changed, so the minimum has no new reason to move.
- A 2.1.2 daemon stays ready and gets an optional upgrade offer. 2.1.3
is the `tested` version. Newer and custom labels keep authenticated
contract recognition.
- The reviewed-contract fast path lists 2.1.3 beside the 2.1.2 minimum.
- The recommended version is updated in the help (all ten locales), both
READMEs, `dev-docs/OPENCODE_COMPATIBILITY.md` and the architecture
skill.

## Contract review (v2.1.2 → v2.1.3, 66 commits)

- **Authenticated OpenAPI:** 119 → **121 paths**, 144 → **146
operations**. Every consumed operation is unchanged. The only changes:
  - added `GET /api/experimental/voice/models`;
- added `POST /api/experimental/voice/session/{sessionID}/instructions`;
- an optional hosted `session.id` in the `POST
/api/experimental/voice/session` response.

  None of these is on the instance proxy allowlist, so they stay closed.
- **Published declarations:** the client adds only `voice.models` /
`voice.instructions`. The schema changes only typing (agent `color`
decoding, `Durable` as a tagged union). The plugin is unchanged.
- **Windows managed services** move their default port from **45278 to
28894** ([#57428](https://github.com/anomalyco/opencode/pull/57428)).
CodeNomad discovers the daemon through the selected CLI's `service
status` and the service registration, and assumes no port.
- Live check: this machine's shared daemon was upgraded to 2.1.3 and
restarted on 28894, and the running CodeNomad desktop kept working
through it.
- **Core:** mostly refactors, plus behaviour fixes that the native
suites below exercise:
  - compaction summary output limit;
  - `keepID` validated as a message ID;
  - MCP media kept out of attachments;
  - only changed instruction entries resent;
  - relative-directory V1 migration;
  - legacy `apply_patch` permission mapped to `edit`.

## Isolated Windows qualification

Base: dev `333d73452`, rebased on `853b14f2f` (#1097) for the final UI
unit run; Node **24.20.0**; exact official CLI **2.1.3**; unchanged
locked client/plugin **2.1.0**.

- **Build and checks:** production server/UI/native plugin builds,
server and root typechecks, native bundle guard.
- **Native runtime (9/9):**
  - Code Mode job ordering, plugin runtime, automation;
  - complete pruning, history, ownership, worktree and event relay;
  - loaded-only pending snapshot;
- Missions contract, family control, native and Compare/Wayfinder
trajectory.
- **Sessions (15/15):** environment, fork, aside, interrupt, lifecycle,
blank cleanup, prompt skills, provider usage/accounts/selection, service
usage, web search, plugin packages, output limit, Promise-tool failure.
- **Recurring (5/5):** all **11 recurring Mission journeys**, subagent
depth, **2 MiB** compaction, permission receipts.
- **Migrations (9/9):**
- history from **2.0.3, beta-19271, 2.0.32, 2.1.0, 2.1.1 and 2.1.2** to
2.1.3;
  - Git degraded/init;
  - temporary workspaces.
- **Installation (3/3), with the 2.1.3 recommendation:**
  - fresh install of the 2.1.2 minimum;
- native **2.0.15 → 2.1.3** upgrade, after which the already-running
daemon keeps its PID and 2.0.15 version;
  - explicit OpenCode **1.18.10 → 2.1.3** replacement.
- **After the recommendation change:**
  - admission/transport/update/setup units **36/36**;
  - full server **2,463 passed, 8 skipped**, no failure or cancellation;
  - UI units **1,694/1,694** (with #1097);
  - focused browser **126/126**;
  - native pruning with the real rendered UI;
  - the exact CI invocation of the Code Mode regression (without tsx);
  - ten-locale help checks.

The UI unit run on `333d73452` itself had two failures, in
`instances-pending-compaction.test.ts` (`toast.dismiss is not a
function`). They come from #1096 and also fail on unmodified `dev`;
#1097 fixes that fixture.

This is Windows automation evidence. In CI, `latest` now resolves to
2.1.3: the compatibility job runs the native suites against the minimum
and latest on Windows, and the migration and Git-degraded certification
runs them on Ubuntu, Windows and macOS. WSL, packaged desktop,
installers/updater end-to-end and real mobile devices keep their
separate release gates.
2026-10-22 16:17:20 +02:00

6.4 KiB
Raw Permalink Blame History

Installer CodeNomad

Choisissez un hôte de bureau local ou lancez le serveur autonome. Dans les deux cas, OpenCode possède le service natif partagé et l’historique.

Téléchargements pour ordinateur

  1. Ouvrez la dernière version.
  2. Choisissez la distribution correspondant à votre système d’exploitation et à votre processeur.
  3. Extrayez le ZIP ou installez/exécutez le paquet de la plateforme, puis lancez CodeNomad.
Plateforme Version Electron Version Tauri Notes de plateforme
macOS ZIP, Intel ou Apple Silicon ZIP, Intel ou Apple Silicon macOS 13.5 ou ultérieur requis par l’environnement d’exécution fourni.
Windows ZIP, x64 Installateur, x64 Windows 10 ou ultérieur ; Tauri utilise WebView2.
Linux Paquet Debian, x64 AppImage, x64 Compilé et testé sur Ubuntu 24.04 ; la compatibilité avec des distributions plus anciennes n’est pas garantie.

Les versions de bureau incluent les ressources d’exécution nécessaires au backend et à l’installateur OpenCode ; aucune installation séparée de Node.js/npm n’est donc nécessaire. Git n’est pas fourni. L’automatisation native du navigateur est prise en charge dans Electron et Tauri Windows ; les autres plateformes Tauri utilisent des aperçus iframe.

Pour un téléchargement vérifié bloqué au lancement, consultez le dépannage de plateforme. N’exécutez jamais une archive non fiable simplement pour contourner un avertissement.

Installer sous Linux

Depuis le dossier contenant la version téléchargée, remplacez la version et le nom de fichier par leurs valeurs réelles :

sudo apt install ./CodeNomad-Electron-linux-x64-<version>.deb

Pour l’AppImage Tauri :

chmod +x CodeNomad-Tauri-linux-x64-<version>.AppImage
./CodeNomad-Tauri-linux-x64-<version>.AppImage

Si FUSE est indisponible, utilisez le mode extraction et exécution de l’AppImage :

./CodeNomad-Tauri-linux-x64-<version>.AppImage --appimage-extract-and-run

L’installation Debian d’Electron configure le bac à sable Chromium. Ne désactivez pas le bac à sable pour contourner un problème d’installation. Les problèmes graphiques de Tauri Linux disposent d’un contournement WebKit ciblé.

Prérequis

Prérequis Où il doit être disponible Exigence actuelle
CLI OpenCode Hôte d’exécution sélectionné, y compris la distribution WSL choisie le cas échéant Minimum 2.1.2 ; 2.1.3 est la cible recommandée/qualifiée. Les versions plus récentes ou personnalisées passent une validation des contrats plutôt qu’une interdiction des versions non testées.
Git PATH du compte du backend CodeNomad Requis pour l’identité des dépôts, les opérations Git et les worktrees.
Node.js/npm Hôte du serveur autonome et de compilation depuis les sources Node.js 24 LTS ; les compilations reproductibles utilisent .node-version (24.20.0). Fourni avec les ressources d’exécution/d’installation de bureau.
Dossier de travail Disque accessible au backend Dossier physique explicitement ouvert, pas un dossier local à l’appareil déduit par un navigateur distant.

Sous Windows, installez Git for Windows avec l’accès en ligne de commande/par les logiciels tiers activé. Une installation par utilisateur, modifiable par celui-ci, suffit. Sous macOS/Linux, suivez les instructions Git pour votre plateforme.

Après modification de PATH, quittez complètement puis relancez l’application de bureau, ou redémarrez le backend autonome sous le compte voulu. Recharger un navigateur ne met pas à jour l’environnement du backend. Un Git disponible uniquement dans WSL ne satisfait pas le besoin Git d’un backend Windows.

Sans Git, vous pouvez toujours ouvrir un dossier physique et utiliser des conversations limitées à ce répertoire, notamment pour demander de l’aide d’installation à l’agent. Les opérations de dépôt/worktree restent indisponibles ; l’accès aux sessions se limite à ce dossier exact. CodeNomad informe l’agent de la disponibilité de Git côté backend avant les prompts/commandes personnalisées et retire cet avis après rétablissement. L’hôte d’exécution de l’agent peut différer de celui du backend : installez donc Git pour le backend, pas seulement pour le shell de l’agent.

Sélectionner OpenCode au premier lancement

  1. Pendant la configuration, choisissez un exécutable existant compatible ou utilisez l’action d’installation OpenCode proposée.
  2. Vérifiez l’état de l’environnement d’exécution avant d’ouvrir un projet.
  3. Revenez à Préférences → OpenCode pour gérer séparément l’exécutable, l’installation et le service partagé.

CodeNomad privilégie les exécutables compatibles dans PATH et accepte un exécutable explicitement sélectionné. Si PATH lance un OpenCode plus ancien, la configuration propose, après confirmation, de remplacer un OpenCode 1.x installé avec npm, ou d’installer OpenCode 2 pour CodeNomad à côté d’une installation faite autrement, qu’elle ne modifie jamais ; voir la configuration d’OpenCode. Installer/mettre à jour une CLI ne redémarre pas silencieusement un service partagé déjà lancé. Consultez la configuration d’OpenCode pour les conséquences d’un redémarrage/rechargement, WSL et l’environnement des sessions.

Utiliser plutôt un navigateur

Installez Node.js/npm, Git et OpenCode sur l’hôte du serveur, puis suivez les procédures de lancement du serveur. Connectez-vous à l’adresse affichée avec l’authentification configurée et un certificat de confiance. Un navigateur/une PWA nécessite un backend actif ; ce n’est pas une copie hors ligne de vos projets.

Pour les ports, les adresses d’écoute et TLS, consultez l’accès direct. Pour appairer un appareil sans ouvrir de ports entrants, utilisez le Contrôle à distance. Pour les commandes de développement et de création des paquets, consultez la compilation depuis les sources.