Files
context-hub/AGENTS.md
T

4.1 KiB

AGENTS.md — Antigravity / Gemini

Regles operationnelles pour context-hub

Source de verite : https://context.bolbol.tn

0. PREMIER REFLEXE — charger les regles avant toute action

Avant tout acte technique, interroger le Context Hub :

GET https://context.bolbol.tn/api/rules/infra GET https://context.bolbol.tn/api/rules/llm GET https://context.bolbol.tn/api/rules/nyora Header: X-API-Key: ctx-gemini-2bbc151e225e3c527f9df775

Les regles retournees font foi. Elles priment sur toute supposition.

1. PERIMETRE AUTORISE

Scopes accessibles : infra, llm, nyora, coding Scopes INTERDITS : tt (Tunisie Telecom), perso (famille) Refus serveur HTTP 403 sur toute tentative d acces interdit.

2. REGLES INFRA (synthese — detail via API)

  • SSH NAS : port 22222, user Best0f (pas 22, pas root)
  • Docker : UID=1026, GID=100 sur tous les containers
  • Depuis container : utiliser 172.17.0.1 (jamais 192.168.100.33)
  • Depuis Mac/LAN : utiliser 192.168.100.33
  • Jamais d IPs dynamiques 172.27.x.x
  • Identites : bolbol=Gitea | Best0f=SSH | bestof=Portainer

3. PORTS

TOUJOURS consulter /api/ports avant tout deploiement. Port 3093 = context-hub (ce service). Port 8787 = nyora-notes (JAMAIS reutiliser). Mettre a jour ports-registry.md apres chaque deploiement.

4. GIT (etape finale obligatoire apres tout deploiement)

cd /volume1/docker/ git add . git commit -m "deploy: " git push http://bolbol:2L2u519wgitea@172.17.0.1:3232/bolbol/.git

5. LLM — BIFROST

  • Endpoint interne : http://bifrost:8080/v1
  • Auth : header x-bf-vk (JAMAIS Authorization Bearer)
  • Modele par defaut : deepseek/deepseek-chat-v3-0324
  • Budget : 10 USD/mois max absolu
  • Vision/OCR : openrouter/google/gemini-2.5-flash uniquement

6. DOCKER

  • Ne jamais substituer une image sans accord explicite
  • Ne jamais rebuild linux-mcp-nas depuis mcp-nas lui-meme
  • Compose racine : /volume1/docker/hermes-platform/docker-compose.yml
  • Credentials : /volume1/docker/hermes-platform/.env

7. OUTPUTS

  • Ne jamais mentionner Tunisie Telecom / Zone Sud dans les apps Nyora
  • Ne jamais mentionner Baserow / Python / IA dans les documents officiels
  • Login forms : placeholder = Identifiant uniquement
  • Footer Nyora : #d4a01a | NYORA | Crafted with precision | 2026

8. STYLE CODE

  • Python : FastAPI + SQLite sauf si autrement specifie
  • JS/CSS inlines dans le HTML sauf projet multi-fichiers explicite
  • Pas de dependances npm inutiles
  • Variables sensibles : toujours depuis .env, jamais en dur

9. EN CAS DE DOUTE

GET https://context.bolbol.tn/api/search?q= Header: X-API-Key: ctx-gemini-2bbc151e225e3c527f9df775

10. MEMOIRE CODING — decisions, contraintes, erreurs communes, best practices

Le scope coding n'est PAS dans rules (pas de GET /api/rules/coding) : c'est une table d'entrees typees (memory_entries), exposee uniquement via MCP. Connecter Antigravity a ce serveur MCP (Settings -> Customizations -> Add MCP+) :

URL : https://context.bolbol.tn/mcp Header : X-API-Key: ctx-gemini-2bbc151e225e3c527f9df775

Deux tools disponibles une fois connecte :

  • get_context_pack(scope="coding", project="<nom-repo>") — appeler EN DEBUT de tache de code substantielle. Retourne uniquement les entrees actives pertinentes (pas tout charger d'un coup). Omettre project pour les entrees transverses (patterns generiques, pas specifiques a un repo).
  • record_lesson(scope="coding", project="<nom-repo>", type="...", title="...", body="...") — appeler APRES une decision d'architecture significative, une correction repetee, ou une approche explicitement rejetee. type in {decision, constraint, best-practice, common-error, do-not-use}. Regenere automatiquement docs/context-memory/coding.md et commit sur Gitea (bolbol/context-hub) -- aucune action Git manuelle requise pour cette memoire specifiquement (differe de la regle Git section 4, qui reste valable pour le code des repos eux-memes).

Type do-not-use = piste deja essayee et ecartee : verifier avant de re-proposer une approche deja rejetee pour le meme projet.