dsh-runner
Skill6 starsChanged 3 months agoMITView on GitHub
Запуск автономных агентных задач через DeepSeek Harness (dsh) — изолированные workspace, JSONL-логи сессий, параллельные прогоны. Скрипт dsh_task.py генерирует конфиг и запускает агента через Python SDK (jsonrpc-agent): задача → workspace → harness.run(prompt) → отчёт с final_response и логом. Режимы: headless-задача одной командой, Web UI (npx @deepseek-ai/dsh web), сравнение моделей. Ключ: DEEPSEEK_API_KEY (env) или автоматически из auth.json opencode (провайдер deepseek), либо OpenAI-совместимый endpoint через DEEPSEEK_BASE_URL. Триггеры: 'dsh', 'deepseek harness', 'агент в песочнице', 'изолированный агент', 'запусти агента на репо', 'агентная задача', 'агент-исполнитель', 'harness run', 'agent harness', 'запустить dsh', 'автономная задача агентом', 'параллельные агенты', 'сравнить модели на задаче', 'jsonrpc-agent'.
- Reads credentials
- Installs packages
In this repository59 other files it gives its agents.
- skills/chronos/references/AGENTS.mdAGENTS.md
- api-contract-testingSkill
- api-doc-generatorSkill
- canonSkill
- censorSkill
- changelog-generatorSkill
- chronosSkill
- code-reviewSkill
- commit-lintSkill
- commit-message-writerSkill
- coverage-analyzerSkill
- csv-proSkill
- data-analysisSkill
- deweySkill
- diagram-makerSkill
- doc-compareSkill
- docs-productSkill
- docs-projectSkill
- docs-systemSkill
- frontend-a11ySkill
- frontend-design-tasteSkill
- frontend-perfectionSkill
- frontend-performanceSkill
- frontend-testingSkill
- github-repo-hygieneSkill
- long-running-agent-workflowSkill
- mermaid-to-imageSkill
- mobile-frontendSkill
- pdf-report-builderSkill
- plan-skillSkill
- prd-to-appSkill
- presentation-craftSkill
- presentation-engineeringSkill
- presentation-makerSkill
- raster-to-svgSkill
- reddit-karmaSkill
- repo-community-filesSkill
- repo-metadata-healthSkill
- repo-readme-assetsSkill
- repo-social-previewSkill
- secret-scannerSkill
- security-reviewSkill
- seo-auditSkill
- seo-contentSkill
- seo-crawlSkill
- seo-schemaSkill
- seo-toolkitSkill
- skill-feedbackSkill
- skill-forgeSkill
- skill-suggesterSkill
- sql-helperSkill
- systematic-debuggerSkill
- test-generatorSkill
- test-graphicsSkill
- velesSkill
- version-bumperSkill
- video-script-writerSkill
- web-replicationSkill
- web-scraperSkill
The file
We split this skill into the rules it gives an agent
3 rules. About 0 are common, 3 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 24
Use this skill when:
- Distinctive: line 31
Do NOT use when:
- Distinctive: line 133
Do not use for ordinary local commands or interactive development.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
dsh-runner
Автономный агент DeepSeek Harness (
dsh) как внешний исполнитель задач: изолированная папка-workspace, полный JSONL-лог каждого шага, никакого доступа к файлам вне задачи.
Загружай этот скилл, когда нужно запустить агента на реальной задаче в отдельном окружении: починить баг в клоне репозитория, сгенерировать код по описанию, прогнать одну задачу на разных моделях и сравнить результат.
🎯 When to use
Use this skill when:
- Просят «запусти агента на репо», «почини баг автономно», «агентная задача»
- Нужен изолированный прогон: агент не должен трогать файлы вне workspace
- Нужен полный лог сессии (JSONL) для аудита каждого шага
- Нужно сравнить 2+ модели на одной задаче (по качеству и токенам)
- Нужен Web UI для интерактивной работы с агентами (
dsh web)
Do NOT use when:
- Задача простая и решается напрямую (мелкая правка, вопрос) — прямое редактирование быстрее, чем подъём агента
- Нет API-ключа и нет OpenAI-совместимого endpoint — dsh без них не запустится
- Нужна классическая оценка качества модели на бенчмарках (MMLU и т.п.) — это lm-evaluation-harness, а не dsh
- Нужен полный контроль каждого правки с апрувами — оставайся в основном агенте
📦 Files
SKILL.md— этот файлscripts/dsh_task.py— запуск одной агентной задачи (Python SDK, JSON-RPC)references/runbook.md— чек-листы, типовые ошибки, примеры конфигов
🧰 Usage
0. Требования (один раз)
# Python 3.10+; SDK:
pip install deepseek-harness-sdk
# API-ключ: DEEPSEEK_API_KEY в env…
export DEEPSEEK_API_KEY=sk-...
# …ИЛИ ключ DeepSeek из auth.json opencode (провайдер `deepseek`) —
# dsh_task.py подхватит его автоматически:
# ~/.local/share/opencode/auth.json → ~/.config/opencode/auth.json
# ИЛИ свой OpenAI-совместимый endpoint (vLLM и т.п.):
# export DEEPSEEK_BASE_URL=http://127.0.0.1:8000/v1
# Модель (по умолчанию deepseek-v4-flash):
# export DSH_MODEL=deepseek-v4-flash1. Одна задача в изолированном workspace
python3 skills/dsh-runner/scripts/dsh_task.py \
--workspace /tmp/agent-ws/dj1 \
--session-root /tmp/agent-sessions \
--session-id fix-001 \
"В репозитории падает тест test_player.test.ts. Найди причину и почини."Агент клонирует/принимает workspace, решает задачу, возвращает:
final_response— текстовый ответ агентаsession_root— корень, где SDK хранит логfinish_reason— чем завершился (например,completed)
Лог сессии: <session_root>/<sanitized-cwd>/<session-id>/session.jsonl.zstd
(zstd-сжатый JSONL, где каждый запрос/вызов инструмента/ответ — отдельная
запись; декодируется zstd -d -c <файл> | jq -s .).
2. Сравнение моделей на одной задаче
# Два прогона с разными моделями, отдельные session-id:
python3 skills/dsh-runner/scripts/dsh_task.py --workspace /tmp/ws --session-id cmp-a --model deepseek-v4-flash "задача"
python3 skills/dsh-runner/scripts/dsh_task.py --workspace /tmp/ws --session-id cmp-b --model anthropic/claude-sonnet-4-5 "задача"
# Сравни: final_response + размер JSONL-лога (токены) + время прогона3. Web UI (интерактив)
npx @deepseek-ai/dsh web # → http://127.0.0.1:3080⚠️ Оговорки (важно)
- Developer preview: версия 0.1.0-rc.x, API ломается между релизами.
Если SDK упал на незнакомой ошибке — проверь свежую версию
(
pip install -U deepseek-harness-sdk) и README репозитория. - Безопасность: композиция
jsonrpc-agentпо умолчанию даёт агенту полный доступ к workspace (danger-full-access). Запускай только в одноразовой папке/контейнере. Никогда не указывай workspace = домашнюю директорию или рабочее дерево с незакоммиченными изменениями. - Проверка результата — снаружи: dsh не оценивает «правильно/неправильно». После прогона запусти тесты/линтер сам и сравни патчи.
- Лог — JSONL в
--session-root/<session-id>.jsonl: каждый запрос к модели, вызов инструмента и ответ. Используй для аудита и метрики токенов.
🔬 Проверка результата
- Скрипт завершился кодом 0 →
final_responseнепустой, лог существует. - Лог:
find <session-root> -name "session.jsonl.zstd"; размер — метрика токенов; декод:zstd -d -c <файл> | jq -s .. - Если в workspace были тесты — прогони их после агента и сравни с состоянием «до».
- Если задача требует проверки «правильно ли починил» — собери diff
(
git diffв workspace, если это клон) и просмотри.
Runbook
Чек-листы «перед запуском», «после прогона», типовые ошибки и рабочие примеры конфигов — в references/runbook.md.
Boundaries
- Do not use for ordinary local commands or interactive development; use the project toolchain directly.
Evidence and completion gate
Run the documented command against the user’s actual input. Report the command, exit status, files changed or produced, and relevant stdout/stderr. Separate blocked or pre-existing failures from failures introduced by the current work. Do not call the result complete when the script was only described or when an artifact was not reopened and checked.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

