-
Notifications
You must be signed in to change notification settings - Fork 5.4k
Add Devin CLI provider #6235
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
rafael-franca
wants to merge
58
commits into
pingdotgg:main
from
rafael-franca:rafaelfranca/add-devin-provider
Closed
Add Devin CLI provider #6235
Changes from all commits
Commits
Show all changes
58 commits
Select commit
Hold shift + click to select a range
19f2030
feat: add Devin provider support
rafael-franca 7adc2cc
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca 80cab23
fix(server): improve Devin usage tracking and reasoning variant matching
rafael-franca 22c04f9
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca b117ec1
fix(devin): apply Macroscope review feedback and add mobile support
rafael-franca c109ae9
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca 71544c9
fix(server,web,acp): apply Macroscope round-2 review feedback
rafael-franca ab6f2d8
fix(server): remove devin thread lock entries on session stop
rafael-franca b7afac7
fix(web): show model description tooltip when description exists
rafael-franca 03d4094
test(web): update Devin settings field order expectation
rafael-franca 771c598
Merge remote-tracking branch 'origin/main' into rafaelfranca/add-devi…
rafael-franca 7c04fd9
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca 02aa3f6
feat(web,contracts): add Devin Desktop to editor picker
rafael-franca f379487
feat(marketing,server): add Devin to marketing page and improve adapter
rafael-franca d98293f
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca d6385c0
test(server): reformat DevinAcpSupport tests and remove unused import
rafael-franca 0b6c835
test(server): add token usage snapshot tests and refactor calculation…
rafael-franca de511f8
Merge remote-tracking branch 'origin/main' into rafaelfranca/add-devi…
rafael-franca 6d51d47
Increase Devin version probe timeout from 4s to 15s
rafael-franca 71edcec
fix(server): resolve Devin adapter PR feedback
rafael-franca 86dbbd4
Merge branch 'pingdotgg:main' into rafaelfranca/add-devin-provider
rafael-franca 5886ba6
fix(server): make Devin session stop uninterruptible
rafael-franca b74da06
test(server): rehydrate version dots in Devin model slugs
rafael-franca 1d9451c
fix(server): ProviderProbeError carries stage and exit code structurally
rafael-franca 00e4b44
Merge branch 'pingdotgg:main' into rafaelfranca/add-devin-provider
rafael-franca 5d7375e
fix(server): make ProviderProbeError failure kinds and stages typed
rafael-franca a1c6197
Update apps/server/src/provider/Drivers/DevinDriver.ts
rafael-franca 6a5f2c0
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca faba634
fix(server): address Cursor Bugbot Devin usage findings
rafael-franca 43fa427
Update apps/marketing/src/pages/index.astro
rafael-franca 3964471
Update apps/web/src/components/settings/ProviderModelsSection.tsx
rafael-franca 42265ec
Update apps/server/src/provider/Layers/DevinAdapter.ts
rafael-franca 28b3e8d
Update apps/server/src/provider/Layers/DevinAdapter.ts
rafael-franca 9fbb60d
Update apps/server/src/provider/Layers/DevinAdapter.ts
rafael-franca feb8162
fix(web, marketing): select field a11y and remove stray hero brace
rafael-franca 2403425
Merge remote-tracking branch 'origin/rafaelfranca/add-devin-provider'
rafael-franca 4902999
fix(server): restore ProviderAdapterProcessError in Devin startSession
rafael-franca a848be1
fix(web): add empty state and disable reorder while filtering models
rafael-franca c881862
Update DevinAdapter.ts
rafael-franca c6a638a
Merge branch 'rafaelfranca/add-devin-provider' of github.com:rafael-f…
rafael-franca cfdda8e
fix(web): show schema default in provider settings select
rafael-franca 2785263
Merge remote-tracking branch 'origin/main' into rafaelfranca/add-devi…
rafael-franca b88c4a6
fix(server): handle Devin context compaction in usage tracking
rafael-franca 5034747
fix(server): correct Devin usage delta and baseline accounting
rafael-franca 70e2260
fix(server): remove thread lock around Devin notification handler
rafael-franca ba8e4f7
fix(web): only show model search empty state while filtering
rafael-franca f3d48b9
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca b46f941
fix(server): address Bugbot permission mode and multi-home usage find…
rafael-franca 5e839fe
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca 9c36282
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca 4a808ef
fix(server): match underscored reasoning config option ids
rafael-franca 6f5b995
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca 0a515ca
fix(server): apply reasoning-only switches via model variants and bou…
rafael-franca baf4dd6
Merge branch 'main' into rafaelfranca/add-devin-provider
rafael-franca 2d3cdb4
fix(server): avoid redundant default reasoning switches
rafael-franca c97be39
fix(server): authenticate Devin ACP sessions on demand
rafael-franca dae3d05
fix(server): refine ACP config option handling
rafael-franca 79c8248
fix(web): align provider settings select popup
rafael-franca File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,32 @@ | ||
| import * as Effect from "effect/Effect"; | ||
| import * as FileSystem from "effect/FileSystem"; | ||
| import * as Path from "effect/Path"; | ||
| import { isCommandAvailable } from "@t3tools/shared/shell"; | ||
|
|
||
| const DEFAULT_DEVIN_BINARIES = ["devin", "devin-desktop"] as const; | ||
|
|
||
| export const resolveEffectiveDevinBinary = Effect.fn("resolveEffectiveDevinBinary")(function* ( | ||
| binaryPath: string | null | undefined, | ||
| environment?: NodeJS.ProcessEnv, | ||
| ): Effect.fn.Return<string, never, FileSystem.FileSystem | Path.Path> { | ||
| const configured = (binaryPath ?? "").trim() || "devin"; | ||
|
|
||
| const env = environment ?? process.env; | ||
|
|
||
| if (!DEFAULT_DEVIN_BINARIES.includes(configured as (typeof DEFAULT_DEVIN_BINARIES)[number])) { | ||
| return configured; | ||
| } | ||
|
|
||
| if (yield* isCommandAvailable(configured, { env })) { | ||
| return configured; | ||
| } | ||
|
|
||
| for (const candidate of DEFAULT_DEVIN_BINARIES) { | ||
| if (candidate === configured) continue; | ||
| if (yield* isCommandAvailable(candidate, { env })) { | ||
| return candidate; | ||
| } | ||
| } | ||
|
|
||
| return configured; | ||
| }); |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.