pi-devin-auth

Pi coding agent extension for Devin/Cognition (Windsurf) OAuth + streaming

Packages

Package details

extension

Install pi-devin-auth from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:pi-devin-auth
Package
pi-devin-auth
Version
0.1.2
Published
Jul 13, 2026
Downloads
479/mo · 479/wk
Author
nmzpy
License
MIT
Types
extension
Size
126.8 KB
Dependencies
0 dependencies · 5 peers
Pi manifest JSON
{
  "extensions": [
    "./extensions/index.ts"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-devin-auth

A pi coding agent extension that adds the Devin (Cognition / Windsurf) provider with browser-based OAuth login and native streaming.

Install

Via pi (recommended)

pi install npm:pi-devin-auth

Then enable the extension:

pi config

Manual / local dev

pi -e ./extensions/index.ts

Or copy extensions/index.ts into ~/.pi/agent/extensions/ for auto-discovery.

Usage

Login

/login devin

This opens https://windsurf.com/windsurf/signin in your browser. After signing in, the page displays an auth token — paste it into the pi prompt. The extension exchanges it for a long-lived Devin API key via register.windsurf.com.

Select a model

/model devin/swe-1-6

Logout

/logout devin

How it works

pi  --login-->  windsurf.com (Auth0)  --token-->  register.windsurf.com (RegisterUser)  --api_key-->  ~/.pi/agent/auth.json
pi  --chat-->   streamDevin()  -->  cloud-direct/streamChatEvents()  -->  server.codeium.com (GetChatMessage gRPC)  -->  pi events

The extension reuses the battle-tested cloud-direct gRPC layer from opencode-windsurf-auth and wraps it in pi's native streamSimple + oauth extension API.

Models

Models are fetched dynamically from Cognition's GetCascadeModelConfigs RPC after login, so the list always reflects what your account tier can access. A static fallback set is included for offline use.

License

MIT