@drive9/drive9-dsh
Drive9 workspace and durable evidence components for DeepSeek Harness 适合使用 Drive9 工作区与证据存储的用户,需配置相关凭据。
설치
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:drive9-ai/drive9-dshConfiguration
The shipped bundle reads these environment variables:
| Variable | Required | Default | Purpose |
|---|---|---|---|
DRIVE9_BASE_URL | no | Drive9 SDK default | Drive9 API base for workspace SDK calls |
DRIVE9_WORKSPACE_API_KEY | yes | — | Workspace-scoped SDK credential |
DRIVE9_MOUNT_ROOT | no | /mnt/drive9 | Process-visible Drive9 mount |
DRIVE9_REMOTE_ROOT | no | / | Remote subtree represented by the mount |
DRIVE9_MOUNT_CONSISTENCY | no | strong | strong Linux FUSE or explicit eventual WebDAV semantics |
DRIVE9_EVIDENCE_BASE_URL | no | DRIVE9_BASE_URL | Drive9 API base for evidence |
DRIVE9_EVIDENCE_API_KEY | yes | — | Separate evidence-scoped credential |
DRIVE9_EVIDENCE_ROOT | no | /evidence/dsh | Unmounted 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.