mirror of
https://github.com/deepseek-ai/deepseek-harness
synced 2026-08-15 21:04:50 +00:00
refactor(examples): rename DSBench composition to jsonrpc-agent
This commit is contained in:
@@ -33,9 +33,9 @@ The full-screen terminal sibling of `repl-agent`: it reuses the same coding back
|
||||
|
||||
Run with: `pnpm run demo:tui` (needs `DEEPSEEK_API_KEY`). See [tui-agent/README.md](tui-agent/README.md) for controls and composition.
|
||||
|
||||
## dsbench-coding-agent
|
||||
## jsonrpc-agent
|
||||
|
||||
The unattended SDK composition used by DSBench: JSON-RPC stdio, foreground-only `bash`, `read` / `write` / `edit`, one foreground `subagent`, `todo_write`, JSONL persistence, and compaction. It excludes terminal UI, stdout logging, approvals, skills, and background task controls. See [dsbench-coding-agent/README.md](dsbench-coding-agent/README.md).
|
||||
An unattended coding agent driven through the Python SDK: JSON-RPC stdio, foreground-only `bash`, `read` / `write` / `edit`, one foreground `subagent`, `todo_write`, JSONL persistence, and compaction. It excludes terminal UI, stdout logging, approvals, skills, and background task controls. See [jsonrpc-agent/README.md](jsonrpc-agent/README.md).
|
||||
|
||||
## cordis-agent
|
||||
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
{
|
||||
"name": "dsbench-coding-agent-example",
|
||||
"private": true,
|
||||
"version": "0.0.1",
|
||||
"type": "module",
|
||||
"description": "DSBench JSON-RPC coding-agent composition"
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
# dsbench-coding-agent
|
||||
# jsonrpc-agent
|
||||
|
||||
The DSBench deployment composition for the Python SDK's bundled JSON-RPC runtime. It intentionally loads no terminal UI, console logger, approval surface, or user-interaction tool because stdout belongs to the SDK protocol and benchmark turns are unattended.
|
||||
The unattended coding-agent composition for the Python SDK's bundled JSON-RPC runtime. It intentionally loads no terminal UI, console logger, approval surface, or user-interaction tool because stdout belongs to the SDK protocol and turns are driven by the SDK.
|
||||
|
||||
The model-facing tools are:
|
||||
|
||||
@@ -9,7 +9,7 @@ The model-facing tools are:
|
||||
- `subagent`, using one foreground in-process spawn provider
|
||||
- `todo_write`
|
||||
|
||||
The surrounding runtime also loads JSONL session persistence and automatic context compaction. `maxTokensAsSuccess` keeps a token-limited model turn as an accepted benchmark result while preserving its `max-tokens` reason.
|
||||
The surrounding runtime also loads JSONL session persistence and automatic context compaction. `maxTokensAsSuccess` keeps a token-limited model turn as an accepted evaluation result while preserving its `max-tokens` reason.
|
||||
|
||||
## Runtime environment
|
||||
|
||||
@@ -17,8 +17,8 @@ The surrounding runtime also loads JSONL session persistence and automatic conte
|
||||
|---|---|
|
||||
| `DEEPSEEK_API_KEY` | Credential passed to the OpenAI-compatible host endpoint |
|
||||
| `DEEPSEEK_BASE_URL` | Host endpoint used by `dsh-llm-deepseek` |
|
||||
| `DSH_CWD` | Benchmark workspace for bash and filesystem tools |
|
||||
| `DSH_CWD` | Agent workspace for bash and filesystem tools |
|
||||
| `DSH_SESSION_ROOT` | JSONL trajectory directory |
|
||||
| `DSH_SYSTEM_PROMPT` | DSBench-provided coding persona |
|
||||
| `DSH_SYSTEM_PROMPT` | Deployment-provided coding persona |
|
||||
|
||||
Pass the config path through the Python SDK's `cordis` option or `DSH_CORDIS_CONFIG`. The bundled executable already carries every plugin named by this file; the target machine does not need Node.js.
|
||||
@@ -1,4 +1,4 @@
|
||||
# DSBench deployment for the bundled dsh-jsonrpc-agent runtime.
|
||||
# Unattended coding-agent deployment for the bundled dsh-jsonrpc-agent runtime.
|
||||
# stdout is reserved for JSON-RPC; do not add a console logger or terminal UI.
|
||||
|
||||
- id: jsonrpc
|
||||
@@ -21,7 +21,7 @@
|
||||
- id: agent-spine
|
||||
name: '@deepseek-ai/dsh-agent-spine-demo'
|
||||
config:
|
||||
persona: !!js process.env.DSH_SYSTEM_PROMPT ?? 'You are a coding agent driven by DSBench.'
|
||||
persona: !!js process.env.DSH_SYSTEM_PROMPT ?? 'You are a coding agent.'
|
||||
workspaceContext: false
|
||||
skills:
|
||||
enabled: false
|
||||
7
examples/jsonrpc-agent/package.json
Normal file
7
examples/jsonrpc-agent/package.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"name": "jsonrpc-agent-example",
|
||||
"private": true,
|
||||
"version": "0.0.1",
|
||||
"type": "module",
|
||||
"description": "Unattended JSON-RPC coding-agent composition"
|
||||
}
|
||||
@@ -28,7 +28,7 @@ function waitForLine(
|
||||
return
|
||||
}
|
||||
} catch {
|
||||
reject(new Error(`non-JSON stdout from DSBench runtime: ${line}`))
|
||||
reject(new Error(`non-JSON stdout from JSON-RPC agent runtime: ${line}`))
|
||||
return
|
||||
}
|
||||
}
|
||||
@@ -42,9 +42,9 @@ function waitForLine(
|
||||
})
|
||||
}
|
||||
|
||||
describe('dsbench-coding-agent keyless smoke', () => {
|
||||
describe('jsonrpc-agent keyless smoke', () => {
|
||||
it('boots the real Cordis tree and serves initialize/shutdown over clean stdout', async () => {
|
||||
const root = await mkdtemp(join(tmpdir(), 'dsh-dsbench-smoke-'))
|
||||
const root = await mkdtemp(join(tmpdir(), 'dsh-jsonrpc-agent-smoke-'))
|
||||
const modelRequests: Record<string, unknown>[] = []
|
||||
const modelServer = createServer((request, response) => {
|
||||
let body = ''
|
||||
@@ -2,5 +2,5 @@
|
||||
# side as of the last confirmed-consistent state. Both languages carry equal authority;
|
||||
# after editing either side, bring the other along and re-record with:
|
||||
# pnpm run verify-translation-pairing --write
|
||||
README.md: 80c9d1f50d26fc4f4670800fd7d7f5ea442ad891
|
||||
README.zh.md: ffedb5eb30f17388fe589863dbc654b22716b40c
|
||||
README.md: 5fd1bc7cd89152a28d3da17100fd62eed4f8cb14
|
||||
README.zh.md: 247a2ca5ea5c1c3afc19335a6bbcba356c823211
|
||||
|
||||
@@ -27,7 +27,7 @@ from deepseek_harness import DeepSeekHarness
|
||||
with DeepSeekHarness(
|
||||
provider="deepseek",
|
||||
model="deepseek-v4-flash",
|
||||
cordis="examples/dsbench-coding-agent/cordis.yml",
|
||||
cordis="examples/jsonrpc-agent/cordis.yml",
|
||||
) as harness:
|
||||
result = harness.run("Make the requested code change.")
|
||||
```
|
||||
|
||||
@@ -23,7 +23,7 @@ from deepseek_harness import DeepSeekHarness
|
||||
with DeepSeekHarness(
|
||||
provider="deepseek",
|
||||
model="deepseek-v4-flash",
|
||||
cordis="examples/dsbench-coding-agent/cordis.yml",
|
||||
cordis="examples/jsonrpc-agent/cordis.yml",
|
||||
) as harness:
|
||||
result = harness.run("Make the requested code change.")
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user