dshbase

插件目录 / Developer / dsh-plugin-devin-bridge

dsh-plugin-devin-bridge

未验证 Arborsm

✓ 持续维护 2 位贡献者 基于 10 个官方 DSH 包

查看 GitHub ↗ ← 返回插件目录

1Stars
0Forks
0未关闭 issue
语言
2026-08-19最近推送
跨平台平台

功能简介

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

我们的评价
未验证 — 尚未实测

Devin Connect 反代为 OpenAI Chat Completions 兼容协议的 dsh 插件,服务 glm-5.2 / swe-1.7 尚未验证——请自行安装测试。

「未验证」表示我们的自动化 CI 尚未安装过该插件。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

你是插件作者? 想拿到「已验证」标签——提交你自己的验证证据(截图、日志或短视频),我们审核通过后即改为「已验证」。

提交验证证据 ↗

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

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 dsh-plugin-devin-bridge」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

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

实测报告

尚未 L3 验证——若已跑过,见下方失败备注。

状态:pending · 最近测试 2026-08-26
备注:验证: runtime-fail 浏览全部待验证失败 →
安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Developer 里更多

浏览全部 7795 个插件 →