dshbase

Plugin directory / Developer / dsh-plugin-devin-bridge

dsh-plugin-devin-bridge

Unverified Arborsm

✓ Actively maintained 2 contributors Builds on 10 official DSH packages

View on GitHub ↗ ← Back to plugin directory

1Stars
0Forks
0Open issues
Language
2026-08-19Last push
Cross-platformPlatform

What it does

Devin Connect 反代为 OpenAI Chat Completions 兼容协议的 dsh 插件,服务 glm-5.2 / swe-1.7

Our take
Unverified — not yet verified

Devin Connect 反代为 OpenAI Chat Completions 兼容协议的 dsh 插件,服务 glm-5.2 / swe-1.7 Not yet verified — install and test it yourself.

“Unverified” means our automated CI has not yet installed this plugin. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.

Plugin author? Get the “Verified” label — submit your own evidence (screenshots, logs, or a short demo) and we'll review and flip the badge.

Submit verification evidence ↗

README

dsh-plugin-devin-bridge

English | 中文

A dsh LLM adapter plugin that bridges Devin's Connect RPC API into the dsh model provider system, enabling dsh's internal agent loop to use Devin-hosted models (glm-5.2, swe-1.7, and any other model Devin exposes) as backends.

How it works

The plugin registers a devin provider route on ctx.llm via the dsh LLM seam (LlmAdapter). When dsh's agent loop routes a request to provider: devin, the adapter:

  1. Translates dsh's GenerateOptions (messages, tools, system prompt, images) into Devin's GetChatMessageRequest protobuf
  2. Streams the response from Devin's Connect RPC endpoint
  3. Decodes each GetChatMessageResponse frame into dsh's StreamChunk protocol (text deltas, reasoning deltas, tool-call deltas, usage, finish)

Installation

pnpm add https://github.com/Arborsm/dsh-plugin-devin-bridge.git

Token resolution

The adapter needs a Devin session token (format: devin-session-token$<...>) to authenticate. It resolves the token in priority order:

  1. Settings panel — set token in the dsh settings UI (marked as secret, auto-redacted in wire responses)
  2. Entry configconfig.token in the plugin composition
  3. Devin CLI credentials — automatically read from credentials.toml created by devin auth login:
    • Windows: %APPDATA%\devin\credentials.toml
    • macOS/Linux: ~/.local/share/devin/credentials.toml (or $XDG_DATA_HOME/devin/credentials.toml)
    • Override path with DEVIN_CREDENTIALS_PATH environment variable

If no token is found, the plugin throws at startup with a actionable error message.

Configuration

All fields are optional — the plugin works out of the box once a token is available (via settings panel, entry config, or credentials.toml).

- id: devin-bridge
  name: dsh-plugin-devin-bridge
  config:
    token: ""  # optional: explicit token; empty = auto-detect from credentials.toml
    baseUrl: "https://server.codeium.com"  # optional: Devin Connect endpoint
    proxy: ""  # optional: outbound proxy URL (http/https/socks5)
    forceHttp1: true  # optional: force HTTP/1.1 (default true)
    defaultContextWindow: 128000  # optional: fallback context window
    defaultMaxTokens: 16384  # optional: fallback max output tokens
    models:  # optional; defaults to glm-5-2 and swe-1-7
      - id: "glm-5-2"
        name: "GLM-5.2"
        contextWindow: 128000
        maxTokens: 16384
        supportsImages: false
      - id: "swe-1-7"
        name: "SWE-1.7"
        contextWindow: 128000
        maxTokens: 16384
        supportsImages: true
    retryPolicy:  # optional
      mode: normal
      maxRetries: 3
      backoff:
        initialDelayMs: 500
        maxDelayMs: 10000
        jitterRatio: 0.1

When the dsh settings service is available, all of the above can be adjusted at runtime through the settings panel — changes take effect immediately (live applies). The token field is marked role('secret') so it is automatically redacted in settings descriptors returned to wire surfaces.

Usage

Once configured, dsh's model selector will show Devin as a provider with available models. Select any model in the dsh UI or route to it programmatically with provider: devin.

Features

  • Dynamic model catalog: Fetches the live model list from Devin via GetCascadeModelConfigs RPC (5-minute TTL cache), merging user-configured models as fallback. Network failures gracefully fall back to the static config.
  • Text streaming: Full text delta streaming with block assembly
  • Reasoning/thinking: Reasoning content mapped to dsh's reasoning block type
  • Tool calls: Devin tool-call deltas translated to dsh's tool-call blocks
  • Image support: Vision-capable models accept image inputs via dsh's attachment system
  • Token usage: Input/output token accounting reported to dsh
  • System prompt sanitization: Identity-agnostic system prompt rewriting for cross-model compatibility
  • Proxy support: Optional outbound HTTP/HTTPS/SOCKS5 proxy
  • Settings panel integration: Runtime-adjustable configuration via dsh settings service
  • Credential auto-detection: Reads devin auth login credentials when no explicit token is configured

Architecture

src/
├── index.ts              # Cordis plugin entry: Config schema, settings panel, ctx.llm registration
├── adapter/
│   ├── devin.ts          # DevinAdapter: GenerateOptions → Devin RPC → StreamChunk
│   ├── decoder.ts        # GetChatMessageResponse → StreamChunk translation
│   ├── transport.ts      # Connect transport with auth + proxy injection
│   └── credentials.ts    # Devin CLI credentials.toml auto-detection
└── proto/
    ├── devin.proto       # Trimmed protobuf definitions
    └── gen/              # @bufbuild/protobuf generated code

License

MIT

Install

🧩 Let your agent install it (recommended)

Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:

dsh plugin add dshbase-catalog

Then say "install dsh-plugin-devin-bridge for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.

This plugin is GitHub source (not published to npm) — install it straight from the repo:

Web profile:

dsh plugin --profile web add github:Arborsm/dsh-plugin-devin-bridge

Headless (CLI) profile:

dsh plugin --profile headless add github:Arborsm/dsh-plugin-devin-bridge

Test report

Not yet L3-verified — see failure note below if we already ran it.

Status: pending · last test 2026-08-26
Note: 验证: runtime-fail Browse all pending failures →
Security: not yet scanned — our daily static scan will cover it shortly.

Share this badge

More in Developer

Browse all 7795 plugins →