Skip to content

feat(agent): add DeepSeek Harness runtime - #248

Merged
BobbyZhouZijian merged 1 commit into
devfrom
feat/dsh-runtime
Aug 21, 2026
Merged

feat(agent): add DeepSeek Harness runtime#248
BobbyZhouZijian merged 1 commit into
devfrom
feat/dsh-runtime

Conversation

@BobbyZhouZijian

Copy link
Copy Markdown
Collaborator

Motivation

CORAL supports several coding-agent CLIs but cannot currently run DeepSeek's official Harness. This adds first-class support for the official dsh --profile headless surface while preserving CORAL's runtime, model, gateway, sandbox, and shared-state contracts.

Changes

  • Add a dsh runtime with deepseek, deepseek-harness, and deepseek_harness aliases.
  • Run the official headless profile with .dsh shared state, AGENTS.md instructions, subprocess logging, sandbox and OS-user isolation support.
  • Map CORAL gateway credentials to DEEPSEEK_BASE_URL and DEEPSEEK_API_KEY.
  • Generate a final Cordis overlay so agents.model and the optional provider override the DSH profile defaults.
  • Cover registry lookup, argv construction, model overlays, environment mapping, runtime options, and the current no-resume limitation.
  • Document DSH across the English and Chinese READMEs, runtime/setup/config/gateway guides, and keep the README agent tables aligned (including existing Pi support).

DeepSeek Harness's current headless profile does not expose a session id or resume argument. CORAL restarts therefore create a fresh DSH session with a continuation prompt; existing configurations need no migration, and the compatibility aliases remain accepted.

Test plan

  • uv run ruff check . — passed
  • uv run ruff format --check . — passed (137 files already formatted)
  • uv run pytest tests/ -q — 694 passed, 1 skipped
  • cd docs && npm run build — passed; 41 static pages generated
  • git diff --check — passed

The first full pytest run exposed stale local editable-install version metadata. Reinstalling the checkout into .venv corrected the environment; the subsequent full run passed as reported above.

Affected areas

  • coral/agent/ (runtime, manager, heartbeat, warmstart)
  • coral/grader/ (daemon, TaskGrader, subprocess grader, loader)
  • coral/hub/ (attempts, notes, skills, checkpoint)
  • coral/workspace/ (project setup, worktrees, grader env)
  • coral/cli/ (commands, helpers)
  • coral/hooks/ (post_commit / submit_eval)
  • coral/template/ (CORAL.md, bundled skills/agents)
  • coral/gateway/ (LiteLLM gateway)
  • coral/web/ (dashboard)
  • examples/ (new or modified task)
  • docs/ (docs site)
  • CI / tooling / packaging
  • Other: root English and Chinese READMEs

Checklist

  • PR targets the dev branch (not main).
  • Title follows Conventional Commits (feat:, fix:, docs:, refactor:, ...).
  • uv run pytest tests/ -v passes locally.
  • uv run ruff check . and uv run ruff format --check . pass.
  • Added or updated tests under tests/ for any behavior change.
  • Updated docs (docs/content/, README, or relevant skill under .claude/skills/) for any user-visible or contract change.
  • If this changes a config field, CLI flag, hook, or runtime contract — noted the migration path in the PR description.
  • New examples/<task>/: coral validate <task> succeeds and a smoke run produces at least one finalized score. No hidden answer keys committed under seed/.
  • AI-assisted PR: a human author has read every changed line and can defend the design. See AGENTS.md.

Authored with assistance from Codex. I read every changed line, ran the tests above locally, and verified the behavior described in the test plan.

@vercel

vercel Bot commented Aug 21, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
coral-docs Ready Ready Preview Aug 21, 2026 12:07pm
coral-web Ready Ready Preview Aug 21, 2026 12:07pm

Request Review

@BobbyZhouZijian
BobbyZhouZijian merged commit 41f3c85 into dev Aug 21, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant