Spring til indhold

Til Codex CLI-brugere

AGENTS.md fortæller Codex, hvordan den skal arbejde.
Ikke hvad der er der.

AGENTS.md fastlægger arbejdsaftalen. MCP lader Codex række ud efter værktøjer. Maguyva er MCP-serveren, der giver Codex et søgbart kort over dit repo, så den første rettelse ikke er et gæt på filstrukturen.

Free-niveau: 3 repos, Op til 50K indekserede repo-linjer, intet kort.

AGENTS.md er aftalen. MCP er kanalen. Maguyva er kortet.

Det lagdelte stack

Fire idéer. Hver løser én opgave.

// aftale

AGENTS.md

Hvordan Codex bør opføre sig på dette repo.

// transport

MCP

Hvordan Codex rækker ud efter eksterne værktøjer og kontekst.

// kodebase

Maguyva

MCP-serveren, der leverer forankrede repo-fakta.

// hvem betaler

Arbejdsområder, ikke brugerpladser

Agenter betaler ikke for brugerpladser. Se priser

AGENTS.md er en arbejdsaftale. Brug den.

Vedvarende instruktioner hører hjemme i AGENTS.md. Det er det rette sted til:

  • Build-, test- og lint-kommandoer, Codex bør køre.
  • “Gør altid X / gør aldrig Y”-sikkerhedsregler afgrænset til en mappe.
  • Navngivningskonventioner og refaktoreringspræferencer.
  • Henvisninger til de kanoniske beslutningslogge og arkitekturnoter.

Hold den kortfattet. Afgræns den. Commit den.

Men AGENTS.md blev aldrig designet til at være et søgbart indeks over hvert symbol, hver fil og hvert kaldested i dit repo.

Hvor AGENTS.md alene bliver statisk i stor skala

Fire svigttilstande, én pr. kort.

// aftaler er ikke et indeks

At fortælle Codex hvordan den skal arbejde fortæller den ikke hvad der findes. Den første rettelse på en ukendt pakke er et gæt på filstier og funktionsnavne. AGENTS.md kan ikke opremse hvert symbol, og det ville du heller ikke ønske.

// dokumentet driver væk fra koden

En AGENTS.md-blok, der beskriver din kø-topologi, er korrekt, indtil nogen introducerer en ny consumer. Koden er nu den eneste sandhed, og dokumentet er selvsikkert forældet. Codex læser det forkerte.

// omdøbning er et grafproblem

“Hvad refererer til denne klasse?” kan ikke besvares ud fra en markdown-fil. Codex enten grep'er-og-håber sig gennem monorepoet eller beder dig indsætte kaldesteder i chatten.

// kontekstvinduer er ikke gratis

At proppe AGENTS.md indtil Codex “ved nok” æder tokens, der burde betale for ræsonnement. Efter et par KB bytter du svarkvalitet for statisk kontekstvolumen.

Hvordan de tre lag hænger sammen

Codex-brugere tænker allerede i denne form. Siden bør gøre det tydeligt.

AGENTS.md

aftaler

hvordan Codex opfører sig

MCP

kanalen

hvordan den rækker ud

Maguyva

kodebasefakta

hvad den ser

  • AGENTS.md hvordan Codex opfører sig på dette repo.
  • MCP hvordan Codex rækker ud efter værktøjer og kontekst. (spec)
  • Maguyva hvad Codex ser, når den stiller kodebasen et spørgsmål. Semantisk, AST-, graf- og tekstsøgning leveret med filstier og linjenumre.

AGENTS.md fortæller Codex hvordan den skal arbejde.

Maguyva giver Codex noget at arbejde ud fra.

Tre workflows

Codex-specifikke. Forankret i den faktiske kaldgraf — ikke Codex' grep.

// workflow 01

Omdøb en delt klasse, find alle afhængige først

codex> omdøb PaymentClient → BillingClient

graph::callers(PaymentClient)            12 referencer på tværs af 7 pakker
graph::importers(src/payments/client.ts)  9 importører
graph::extends(PaymentClient)             2 underklasser (RetryClient, MockClient)

 Codex foreslår en migrering med 21 rettelser med fillisten direkte i svaret.
[exit 0]

Codex spørger Maguyva om afhængige før den begynder at rette. Migreringslisten kommer tilbage forankret i den faktiske graf — ikke Codex' erindring.

// workflow 02

Find den rigtige implementering, ikke teststubben

codex> hvordan håndterer normalizePhoneNumber E.164?

semantic::query("normalize phone E.164")
  src/util/phone.ts:88   normalizePhoneNumber()   ← rigtig impl.
  test/util/phone.spec.ts:14  jest.mock(...)      ← stub
[exit 0]

Navne lyver. Mocks overskygger rigtig kode. Maguyva rangerer den rigtige implementering over test-mock'en.

// workflow 03

Tjek blast radius før en refaktorering

codex> hvad kalder QueueDispatcher.publish?

graph::callers(QueueDispatcher.publish)
  3 i src/billing/*    1 i src/audit/*    1 i src/notifications/*
[exit 0]

Kaldesteder på tværs af pakker dukker op direkte. Diffen er forankret i de rigtige importører — ikke Codex' grep.

Opsætning i Codex CLI

Tre trin. Free-niveau: 3 repos, Op til 50K indekserede repo-linjer, intet kort.

  1. // step 01

    Indekser et repo på maguyva.ai

    Vælg ét, du kender godt, så du kan verificere svarene.

  2. // step 02

    Tilføj Maguyva som en MCP-server i din Codex-konfiguration

    $ export MAGUYVA_API_KEY=mgv_xxxx
    $ codex mcp add maguyva --url https://maguyva.tools/mcp \
        --bearer-token-env-var MAGUYVA_API_KEY
    
    # equivalent ~/.codex/config.toml
    [mcp_servers.maguyva]
    url = "https://maguyva.tools/mcp"
    bearer_token_env_var = "MAGUYVA_API_KEY"
  3. // step 03

    Stil ét spørgsmål, du allerede kender svaret på

    Start ikke med hele din virksomhed. Start med ét repo og ét verificerbart spørgsmål.