1.1 KiB
1.1 KiB
AGENTS.md — pi-devin
Pi package that registers the devin provider. Auth and the model catalog come from the local Devin CLI. Pi remains the harness.
Layout
extensions/index.ts # registerProvider("devin"), /login, /devin-status, /devin-refresh
src/cli.ts # locate + spawn `devin`
src/credentials.ts # ~/.local/share/devin/credentials.toml
src/models.ts # `devin models list --format json` → ProviderModelConfig[]
src/stream.ts # streamSimple via GetChatMessage (Connect/protobuf)
src/jwt.ts # GetUserJwt cache
src/metadata.ts # Metadata proto (ide_name=devin)
src/wire.ts # protobuf + Connect framing
src/context-map.ts # Pi Context → Cognition chat history
Contract
/login devinmust calldevin auth loginwhen credentials are missing, not a custom Windsurf paste flow.- Model IDs must come from
devin models list, not a hardcoded cloud allowlist. - Do not spawn
devin acpas the session owner. Pi keeps tools, permissions, and the session tree. - Package must stay installable as a Pi package:
keywords: ["pi-package"]andpi.extensions.