This document tracks hardcoded version dependencies in the devin-opencode-provider that may require updates when external services change.
Current versions (lines 26-27):
const extVer = opts.extensionVersion ?? "1.48.2"
const ideVer = opts.ideVersion ?? "3.6.27"Purpose: These versions are sent in the Connect-RPC metadata to match the official Devin IDE client signature.
Source: Derived from Devin IDE 3.7.25 decompiled binary analysis ("Golden 00007").
When to update:
- When Devin IDE releases a new major version that changes protocol expectations
- If authentication or API calls start failing with version mismatch errors
- When protocol debugging shows newer versions in official client traffic
How to update:
- Capture network traffic from the latest Devin IDE
- Locate the
exa.codeium_common_pb.Metadatamessage in Connect-RPC calls - Update the extension and IDE version strings to match
- Test authentication and model discovery flows
Risk assessment: High - incorrect versions may cause authentication failures or API rejections.
Current endpoints (lines 10-14):
// Latest endpoints verified against Devin IDE 3.7.25 decompiled:
// - Auth authorize: https://app.devin.ai/auth/cli/continue (PKCE S256)
// - Auth token exchange: https://api.devin.ai/auth/cli/token
// - API (chat, GetUserStatus, GetUserJwt): https://server.codeium.com
// - Alt inference: https://api.codeium.com (legacy, not used for chat)When to update:
- When Devin announces endpoint changes
- If API calls start failing with 404/403 errors
- When new authentication flows are introduced
How to verify:
- Check Devin official documentation
- Monitor decompiled IDE for endpoint changes
- Test OAuth flow end-to-end
Current critical dependencies:
{
"dependencies": {
"@ai-sdk/provider": "3.0.15"
},
"peerDependencies": {
"@opencode-ai/plugin": "^1.17.13"
},
"devDependencies": {
"@opencode-ai/plugin": "^1.18.16",
"@tsconfig/node22": "^22.0.6",
"typescript": "^5.9.3"
}
}Update recommendations:
@ai-sdk/provider: Follow AI SDK releases for protocol changes@opencode-ai/plugin: Update when OpenCode introduces new plugin hookstypescript: Update for new language features, but test thoroughly
When updating any hardcoded version:
-
Test authentication flow:
opencode auth login # Choose devin provider and test both OAuth and API key methods -
Test model discovery:
# Check that models are fetched and cached correctly cat ~/.cache/opencode/devin-models.json
-
Test chat functionality:
opencode run --model devin/swe-1-6 "Hello test" -
Monitor for errors:
DEVIN_PROVIDER_DEBUG=1 opencode run --model devin/swe-1-6 "test" # Check debug log for protocol errors
- Devin IDE release notes
- Devin API documentation
- OpenCode plugin changelog
- AI SDK release notes
Consider setting up automated tests that check:
- Authentication success rate
- Model discovery success rate
- Chat API response times
- Protocol error rates
If a version update causes issues:
- Revert the version change
- Clear model cache:
rm ~/.cache/opencode/devin-models.json - Restart OpenCode to reload the plugin
- Test with the previous version
- File an issue documenting the problem
| Date | Component | Old Version | New Version | Reason |
|---|---|---|---|---|
| 2026-08-29 | metadata.ts | - | 1.48.2/3.6.27 | Initial implementation from Devin IDE 3.7.25 |