Pi-Entwicklungs-Workflow

Dieser Leitfaden fasst einen sinnvollen Workflow für die Arbeit an der Pi-Integration in Mayros zusammen.

Type Checking und Linting

  • Type Check und Build: pnpm build
  • Lint: pnpm lint
  • Format-Check: pnpm format
  • Vollständiges Gate vor dem Push: pnpm lint && pnpm build && pnpm test

Pi-Tests ausführen

Verwenden Sie das dedizierte Skript für das Pi-Integrations-Testset:

bash
scripts/pi/run-tests.sh

Um den Live-Test einzuschließen, der echtes Provider-Verhalten ausübt:

bash
scripts/pi/run-tests.sh --live

Das Skript führt alle Pi-bezogenen Unit-Tests über diese Globs aus:

  • src/agents/pi-*.test.ts
  • src/agents/pi-embedded-*.test.ts
  • src/agents/pi-tools*.test.ts
  • src/agents/pi-settings.test.ts
  • src/agents/pi-tool-definition-adapter.test.ts
  • src/agents/pi-extensions/*.test.ts

Manuelles Testen

Empfohlener Ablauf:

  • Gateway im Dev-Modus ausführen:
    • pnpm gateway:dev
  • Agent direkt auslösen:
    • pnpm mayros agent --message "Hallo" --thinking low
  • TUI für interaktives Debugging verwenden:
    • pnpm tui

Für Tool-Call-Verhalten fordern Sie eine read- oder exec-Aktion an, damit Sie Tool-Streaming und Payload-Handling sehen können.

Clean-Slate-Reset

Der State befindet sich im Mayros-State-Verzeichnis. Standard ist ~/.mayros. Wenn MAYROS_STATE_DIR gesetzt ist, verwenden Sie stattdessen dieses Verzeichnis.

Um alles zurückzusetzen:

  • mayros.json für Config
  • credentials/ für Auth-Profile und Tokens
  • agents/<agentId>/sessions/ für Agent-Session-Historie
  • agents/<agentId>/sessions.json für den Session-Index
  • sessions/ wenn Legacy-Pfade existieren
  • workspace/ wenn Sie einen leeren Workspace wollen

Wenn Sie nur Sessions zurücksetzen möchten, löschen Sie agents/<agentId>/sessions/ und agents/<agentId>/sessions.json für diesen Agent. Behalten Sie credentials/, wenn Sie sich nicht erneut authentifizieren möchten.

Referenzen