Maintenir la CLI et le MCP
Guide pour les contributeurs et opérateurs lomi. qui développent ou déploient apps/cli et apps/mcp, pas pour les intégrateurs marchands.
La CLI lomi. et le serveur MCP sont des outils d’intégration : ils aident les développeurs à s’appuyer sur l’API marchande hébergée. Cette page s’adresse à ceux qui maintiennent ces packages dans le monorepo ou déploient le serveur MCP hébergé.
Si vous intégrez lomi. dans votre produit, utilisez plutôt CLI et MCP.
Qui doit lire cette page
| Rôle | Utiliser CLI/MCP pour… | Cette page pour… |
|---|---|---|
| Développeur marchand | Intégrer checkout, webhooks, SDK | Non, voir Build |
| Contributeur | Tester les flux d’intégration en développant | Oui, en modifiant apps/cli ou apps/mcp |
| Opérateur | - | Oui, déployer MCP, régénérer les outils, publier la CLI |
CLI/MCP ne servent pas à exploiter apps/admin, à auto-héberger le traitement des paiements ni à la maintenance générale du monorepo (migrations, déploiement API, etc.).
CLI (apps/cli)
Documentation mainteneur : apps/cli/CONTRIBUTING.md
| Tâche | Commande / emplacement |
|---|---|
| Dev local | cd apps/cli && cargo build && cargo test |
| Dérive docs | lomi docs check ou dt check (depuis la racine du monorepo) |
| Scan / graphe docs | lomi docs scan, lomi docs graph (délègue à apps/doctool) |
| i18n docs | lomi docs sync-i18n, lomi docs translate-i18n |
| Amélioration / diff docs | lomi docs improve, lomi docs diff |
| Règles agent | ./apps/cli/scripts/generate-rules.sh |
| Release | Tag cli-v*, voir CONTRIBUTING.md |
doctool (dt)
Outil de documentation CLI (CORE-38). Dépôt autonome : github.com/lomiafrica/doctool (pas un sous-module git).
Clone dans le monorepo pour le dev local :
git clone git@github.com:lomiafrica/doctool.git apps/doctool
cd apps/doctool && cargo buildDocumentation mainteneur : apps/doctool/CONTRIBUTING.md
| Tâche | Commande / emplacement |
|---|---|
| Dev local | cd apps/doctool && cargo build && cargo test |
| Index monorepo | dt scan --root . → .doctool/index.json |
| Rapport de dérive | dt drift --root . |
| Graphe de connaissances | dt graph --root . |
| Scaffolder MDX REST | dt scaffold --root . |
| Sync i18n (déterministe) | dt sync-i18n --check |
| Traduction i18n (LLM) | dt translate-i18n --dry-run (définir DOCTOOL_LLM_API_KEY ou DOCTOOL_LLM_MOCK=1) |
| Améliorer MDX | dt improve --path build/usage-billing.mdx --stdout |
| Diff MDX proposé | dt diff --path build/usage-billing.mdx --proposed .doctool/out/... |
| CI | .github/workflows/doctool.yml |
MCP (apps/mcp)
Documentation mainteneur : apps/mcp/CONTRIBUTING.md
| Tâche | Commande / emplacement |
|---|---|
| Serveur HTTP local | cd apps/mcp && pnpm run start:http |
| Régénérer les outils | pnpm run generate → commit src/generated/tools-manifest.json |
| Dérive CI | pnpm docs:drift (OpenAPI ↔ MDX, manifest MCP, contrats agent) |
| OpenAPI agent | cd apps/api && pnpm run openapi:export:agent → apps/docs/agent-openapi.json (agent, provisioning, partners) |
| OAuth / agent connect env | API : LOMI_OAUTH_ISSUER, LOMI_DASHBOARD_BASE_URL — MCP : LOMI_OAUTH_ISSUER, LOMI_MCP_RESOURCE_URL |
| Déploiement | .env.example, railway.json |
| Tests | pnpm test |
Les intégrateurs doivent utiliser https://mcp.lomi.africa ou npx @lomi./mcp, pas une instance auto-déployée, sauf ingénierie lomi.