Skip to content

Commit 095980f

Browse files
mcp-tool-shopclaude
andcommitted
fix(cli): refresh note states live-vs-custom dest accurately (v1.0.2)
`loadout-os refresh` used to always print "this scratch/CLI run ... a LIVE run ... is deferred to a coordinator-supervised step", even after writing the live ~/.ai-loadout/index.json. The note is now contrastive: a default-dest run confirms "the change is live now"; a custom --dest run says the live index was NOT modified. Path equality is Windows-aware (new sameResolvedPath): node's path.resolve preserves drive-letter case, so a lowercase-drive --dest naming the live index no longer false-negatives into the misleading "NOT modified" advice. +3 regression tests (cli 80->83, suite 376->379). Also rewrites the README Status section (consolidation "in progress" -> shipped; ai-loadout now deprecated on npm) and regenerates the 7 README translations. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent c8da54e commit 095980f

12 files changed

Lines changed: 189 additions & 45 deletions

File tree

README.es.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ La descomposición por secretos (Parnas 1972) fue la solución ideal para un equ
7777

7878
## Estado
7979

80-
La consolidación está en curso. `loadout-os` integra el kernel y dos adaptadores que antes se encontraban como paquetes separados, además del "hook" de tiempo de ejecución activo. El paquete publicado hoy es **`@mcptoolshop/ai-loadout`** (el kernel); el paquete unificado `loadout-os` se envía desde este repositorio. Los tres binarios heredados seguirán funcionando hasta su retirada planificada.
80+
Enviado. **`@mcptoolshop/loadout-os`** se ha publicado en npm (público) e integra el núcleo, los dos adaptadores (memorias + reglas) y el enlace de tiempo de ejecución en vivo en una única CLI; instálelo con `npm install -g @mcptoolshop/loadout-os`. Los tres paquetes antiguos que reemplaza se han retirado: el núcleo `@mcptoolshop/ai-loadout` está obsoleto en npm (sigue siendo instalable, pero no recibirá más actualizaciones); `claude-memories` y `claude-rules` eran solo para uso local y ya no están disponibles. Todo el nuevo trabajo se realizará aquí.
8181

8282
## Modelo de confianza
8383

README.fr.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,16 @@ Vos fichiers d’instructions et vos bases de données de mémoire se développe
1212

1313
## Ce qu’il y a dedans
1414

15-
loadout-os unifie quatre éléments sous une seule application `loadout-os` :
15+
loadout-os unifie quatre éléments sous une seule unité binaire `loadout-os` :
1616

1717
| Élément | Ce que cela fait |
1818
|---|---|
19-
| **Kernel** (knowledge router) | Correspondance déterministe de mots-clés/motifs, résolveur hiérarchique à plusieurs niveaux (global → organisation → projet → session) et contrat d’exécution de l’agent. Les éléments principaux se chargent toujours ; les éléments de domaine se chargent en cas de correspondance ; les éléments manuels se chargent lors d’une recherche explicite. |
20-
| **Memories adapter** | Transforme une base de données `MEMORY.md` en une table de répartition lisible par machine et la vérifie (fichiers manquants, éléments orphelins, doublons, éléments trop longs). |
21-
| **Rules adapter** | Divise un fichier `CLAUDE.md` volumineux en un index allégé toujours chargé, ainsi qu’en des fichiers de règles chargés à la demande, et valide les métadonnées par rapport à l’index. |
22-
| **Runtime hook** | Un hook `UserPromptSubmit` qui injecte ≤ 5 lignes de pointeur (≤ 200 jetons) dans les éléments pertinents pour votre requête. En cas d’échec, il ne bloque pas : chaque chemin d’erreur se termine avec le code 0, de sorte qu’un hook défectueux ne peut jamais bloquer une requête. |
19+
| **Kernel** (knowledge router) | Correspondance déterministe de mots-clés/modèles, résolveur hiérarchique à plusieurs niveaux (global → organisation → projet → session) et contrat d’exécution de l’agent. Les éléments principaux se chargent toujours ; les éléments de domaine se chargent en cas de correspondance ; les éléments manuels se chargent lors d’une recherche explicite. |
20+
| **Memories adapter** | Transforme une base de données `MEMORY.md` en une table de répartition lisible par machine et la vérifie (fichiers manquants, orphelins, doublons, entrées trop longues). |
21+
| **Rules adapter** | Divise un fichier `CLAUDE.md` volumineux en un index allégé toujours chargé plus des fichiers de règles chargés à la demande, et valide l’en-tête par rapport à l’index. |
22+
| **Runtime hook** | Un hook `UserPromptSubmit` qui injecte ≤ 5 lignes de pointeur (≤ 200 jetons) dans les entrées pertinentes pour votre requête. En cas d’échec, il ne bloque pas : chaque chemin d’erreur se termine avec le code 0, de sorte qu’un hook défectueux ne peut jamais bloquer une requête. |
2323

24-
Plus trois rituels qui garantissent l’intégrité du système : **`refresh`** (régénérer → valider → publier l’index de répartition, avec un mécanisme de compensation), **`doctor`** (un écran d’état en lecture seule avec 8 vérifications) et **`report`** (observabilité de l’utilisation / des éléments inactifs / du budget de jetons).
24+
Plus trois rituels qui garantissent l’intégrité du système : **`refresh`** (régénérer → valider → publier l’index de répartition, avec un mécanisme de compensation), **`doctor`** (un écran d’état en lecture seule avec 8 vérifications) et **`report`** (observabilité de l’utilisation / des entrées obsolètes / du budget de jetons).
2525

2626
## Interface de commande
2727

@@ -54,7 +54,7 @@ loadout-os hook test [--prompt "<text>"] # drive the runtime hook on a samp
5454
loadout-os refresh [--store <d>] [--dest <p>] [--dry-run] # index → validate → publish
5555
```
5656

57-
> **Collision de noms, résolue par l’utilisation d’espaces de noms.** La commande plate `validate <index>` est le validateur de la structure d’index du noyau. Les vérificateurs de la base de données et des règles utilisent des espaces de noms (par exemple, `memories validate <MEMORY.md>` et `rules validate`), de sorte que les trois peuvent coexister. Exécutez `loadout-os <command> --help` pour obtenir un résumé, des arguments et des codes de sortie par commande.
57+
> **Collision de noms, résolue par l’utilisation d’espaces de noms.** La commande plate `validate <index>` est le validateur de la structure d’index du noyau. Les vérificateurs de la base de données et des règles utilisent des espaces de noms (par exemple, `memories validate <MEMORY.md>` et `rules validate`), de sorte que les trois peuvent coexister. Exécutez `loadout-os <commande> --help` pour obtenir un résumé, des arguments et des codes de sortie par commande.
5858
5959
## Installation
6060

@@ -68,16 +68,16 @@ Le noyau peut également être importé en tant que bibliothèque : `@mcptoolsh
6868

6969
## Documentation
7070

71-
- **[Manuel](https://mcp-tool-shop-org.github.io/loadout-os/handbook/)** : aperçu, installation, architecture, référence des commandes, rituels et migration à partir des anciens packages.
71+
- **[Manuel](https://mcp-tool-shop-org.github.io/loadout-os/handbook/)** : présentation, installation, architecture, référence des commandes, rituels et migration à partir des anciens packages.
7272
- **[Dépôt](https://github.com/mcp-tool-shop-org/loadout-os)** : code source, feuille de route et problèmes.
7373

74-
## Pourquoi consolider ?
74+
## Pourquoi consolider
7575

7676
La décomposition par secrets (Parnas 1972) était la solution idéale pour une équipe de N personnes. Pour un opérateur solo plus une équipe LLM, elle est opérationnellement inefficace : le travail multi-dépôts fragmente le contexte de l’agent entre les sessions, les adaptateurs non publiés se détériorent (seul le noyau a été publié) et l’avancement se sérialise entre les dépôts. Un seul dépôt unifié avec une seule CLI suffit pour l’opérateur. Le raisonnement complet est contenu dans la base de données de mémoire canonique (`feedback_consolidate_when_cant_juggle_repos.md`).
7777

7878
## État
7979

80-
La consolidation est en cours. loadout-os regroupe le noyau et les deux adaptateurs qui étaient auparavant des packages distincts, ainsi que le hook d’exécution en direct. La version publiée aujourd’hui sur la plateforme est **`@mcptoolshop/ai-loadout`** (le noyau) ; le package unifié `loadout-os` sera publié à partir de ce dépôt. Les trois anciens modules continueront de fonctionner jusqu’à leur retrait prévu.
80+
Publié. **`@mcptoolshop/loadout-os`** est publié sur npm (public) et regroupe le noyau, les deux adaptateurs (mémoires + règles) et le hook d’exécution en direct dans une seule CLI : installez-le avec `npm install -g @mcptoolshop/loadout-os`. Les trois anciens packages qu’il remplace sont mis hors service : le noyau `@mcptoolshop/ai-loadout` est obsolète sur npm (il peut toujours être installé, mais ne recevra plus de mises à jour) ; `claude-memories` et `claude-rules` étaient uniquement locaux et sont archivés. Tous les nouveaux travaux seront effectués ici.
8181

8282
## Modèle de confiance
8383

@@ -87,7 +87,7 @@ loadout-os s’exécute entièrement sur votre machine. Il n’y a pas d’appel
8787
- **Données auxquelles il n’accède PAS :** pas de transfert de données sur le réseau, pas de télémétrie, pas de services à distance, pas d’informations d’identification ou de secrets. Rien n’est lu, stocké ou transmis en dehors des chemins locaux ci-dessus.
8888
- **Autorisations requises :** uniquement le système de fichiers local. `doctor` et `report` sont en lecture seule (ils n’écrivent jamais). Les seules écritures concernent les fichiers d’index, la sortie interactive de `rules split` et le journal d’utilisation, le tout dans les emplacements locaux attendus ci-dessus. L’écriture irréversible (`refresh` publiant l’index global en direct) est protégée par un arrêt andon en cas d’échec de la validation et un mécanisme de compensation `<dest>.bak`. Le hook d’exécution ne bloque pas : chaque chemin d’erreur se termine avec le code `0`, de sorte qu’il ne peut jamais bloquer une requête.
8989

90-
Modèle complet des menaces et processus de signalement : [SECURITY.md](./SECURITY.md).
90+
Modèle de menace complet et processus de signalement : [SECURITY.md](./SECURITY.md).
9191

9292
## Licence
9393

0 commit comments

Comments
 (0)