drive9-ai/drive9-dsh ↗★ 2

@drive9/drive9-dsh

Drive9 workspace and durable evidence components for DeepSeek Harness 适合使用 Drive9 工作区与证据存储的用户,需配置相关凭据。

Package
@drive9/drive9-dsh
Compatibility
Unverified
Harness peer range
^0.1.0-rc.6
Cordis peer range
^4.0.1
Version
0.1.0
License
Apache-2.0
Last updated
Aug 14, 2026

Install

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:drive9-ai/drive9-dsh

Configuration

The shipped bundle reads these environment variables:

VariableRequiredDefaultPurpose
DRIVE9_BASE_URLnoDrive9 SDK defaultDrive9 API base for workspace SDK calls
DRIVE9_WORKSPACE_API_KEYyes—Workspace-scoped SDK credential
DRIVE9_MOUNT_ROOTno/mnt/drive9Process-visible Drive9 mount
DRIVE9_REMOTE_ROOTno/Remote subtree represented by the mount
DRIVE9_MOUNT_CONSISTENCYnostrongstrong Linux FUSE or explicit eventual WebDAV semantics
DRIVE9_EVIDENCE_BASE_URLnoDRIVE9_BASE_URLDrive9 API base for evidence
DRIVE9_EVIDENCE_API_KEYyes—Separate evidence-scoped credential
DRIVE9_EVIDENCE_ROOTno/evidence/dshUnmounted evidence root

Programmatic composition is also supported inside a DSH context that already provides the standard sandboxPolicy, systemPrompt, and tools services:

import { Context } from '@deepseek-ai/cordis'
import * as Drive9Dsh from '@drive9/drive9-dsh'

const ctx = new Context()

await ctx.plugin(Drive9Dsh, {
  filesystem: {
    mountRoot: '/mnt/drive9',
    remoteRoot: '/workspace',
    baseUrl: process.env.DRIVE9_BASE_URL,
    apiKey: process.env.DRIVE9_WORKSPACE_API_KEY,
    mountConsistency: 'strong',
  },
  evidence: {
    root: '/evidence/dsh',
    baseUrl: process.env.DRIVE9_BASE_URL,
    apiKey: process.env.DRIVE9_EVIDENCE_API_KEY!,
  },
  resultTools: {
    maxScanBytes: 16 * 1024 * 1024,
  },
})

The preset rejects missing credentials and rejects using the same credential for workspace and evidence.