DeepSHPlugins
ouroboros#integrations/dsh-plugin 專案預覽
GITHUB / COMMUNITY PROJECT

ouroboros#integrations/dsh-plugin

Agent 與自動化PythonMIT

透過 DSH MCP 客戶端掛載 Ouroboros 的純配置包,在 DSH 中提供 36 個涵蓋需求訪談、Seed、執行、評估與演化流程的工具。

5,803 StarsQ00 更新時間 2026-09-09
訪問 GitHub 倉庫
ouroboros#integrations/dsh-plugin 專案預覽

專案介紹

中文

透過 DSH MCP 客戶端掛載 Ouroboros 的純配置包,在 DSH 中提供 36 個涵蓋需求訪談、Seed、執行、評估與演化流程的工具。

English

Config-only bundle that mounts Ouroboros through the DSH MCP client, exposing 36 interview, Seed, execution, evaluation, and evolution workflow tools in DSH.

專案資訊與收錄訊號

快照 2026-09-11
作者 / 組織
Q00
倉庫
Q00/ouroboros#integrations/dsh-plugin
GitHub Stars
5,803
Forks
591
開發語言
Python
許可證
MIT
最近推送
2026-09-09
Manifest
資料中檢測到宣告

公開倉庫不自動等於可商用;許可證與當前相容性以原專案文件為準。Manifest 和資料評分不構成安裝安全認證。

資料評分

88/ 100
維護活躍
99
文件與實用資訊
74
生態關注度
94
安裝便捷訊號
80
專案宣告訊號
100

近 2 天仍在更新;5,803 stars 社群認可度高。

評分來自已有資料快照的五維模型,僅作瀏覽參考,不是實際使用評測或安全檢測結論。

安裝與使用

所有專案資料與許可均以對應 GitHub 倉庫為準。

dsh plugin --profile web add github:Q00/ouroboros#path:/integrations/dsh-plugin

複製命令不會自動執行。請先閱讀倉庫文件,確認環境要求與許可證。

專案截圖

倉庫 README

GitHub 原文

已儲存的倉庫文件快照;文件抓取時間未記錄,可能與上方目錄介紹處於不同版本。安裝前請核對當前倉庫說明。

儲存庫檔案保留原文,指令與授權文字不作自動改寫。

dsh-ouroboros

Mount Ouroboros — a spec-first AI dev workflow engine (Socratic interview → Seed spec → execute → evaluate → evolve) — into DeepSeek Harness as native tools. Once installed, type ooo interview <goal> or ooo auto <goal> directly in the dsh chat — the model finds and calls the matching mcp__ouroboros__* tool on its own.

This is a config-only bundle: it contains no custom plugin code, just one row that mounts dsh's existing @deepseek-ai/dsh-mcp-client against ouroboros mcp serve.

Requirements

  • uv on PATH. Nothing else — uvx fetches and

runs Ouroboros in an isolated environment on first launch, no pip install step.

  • Python >= 3.12 (whatever uv resolves).
  • Nothing else for execution: this bundle defaults OUROBOROS_AGENT_RUNTIME

to host, so dsh's own model does ooo run/ooo auto's execution step — no CLI to install. Set OUROBOROS_AGENT_RUNTIME (see below) to an executable runtime (claude-cli, codex, opencode, ...) if you'd rather have that CLI do the work instead.

Install

This bundle lives inside the main Ouroboros repository as a subdirectory (it has no independent release cadence or code of its own), so install it straight from GitHub with pnpm's subdirectory syntax. --profile is required by dsh plugin and names the profile to install into:

dsh plugin --profile <your-profile> add "github:Q00/ouroboros#main&path:integrations/dsh-plugin"

Then boot as usual (dsh --profile <your-profile>, or dsh web if your profile is named web). dsh --profile <your-profile> --dump-config shows the # == dsh-ouroboros layer once it's composed.

Configuration

Set these as environment variables before launching dsh. They are read from the dsh host environment and passed through to the spawned ouroboros mcp serve process:

VariablePurpose
OUROBOROS_AGENT_RUNTIMEAgent runtime for ooo run/ooo auto's execution step. Defaults to host (dsh's own model does the work — see below); set to claude-cli, codex, opencode, ... to use that CLI instead.
OUROBOROS_LLM_BACKENDLLM backend for interview/Seed/QA. Leave unset to keep your ouroboros setup default. dsh routes those calls through DeepSeek Harness — read the next section first, it needs two more variables.
OUROBOROS_DSH_CONFIG_PATHAbsolute path to the trusted Cordis composition the dsh LLM backend loads. Required whenever OUROBOROS_LLM_BACKEND=dsh.
OUROBOROS_DSH_CLI_PATHPath to the dsh-acp-demo bin, when it isn't on PATH.

Override any field — timeout, args, a pinned Ouroboros version — from your own profile's cordis.patch.yml by targeting the mcp-ouroboros row id; see "Package and install a plugin" for the override mechanics.

Routing interview/Seed/QA back through DeepSeek Harness

OUROBOROS_LLM_BACKEND=dsh is not a one-variable switch, and it does not reuse the dsh process you're already running. Ouroboros spawns its own dsh-acp-demo ACP child, and that child fails closed with invalid_config unless it is given a composition to load. To use it:

  1. Build DeepSeek Harness from source (pnpm install && pnpm run build,

Node.js >= 22) and make its dsh-acp-demo bin reachable — on PATH, or named by OUROBOROS_DSH_CLI_PATH. A source build is the working path today: installing the published @deepseek-ai/dsh-acp-demo still fails on a peer-dependency conflict inside its own dsh-tool-bash chain.

  1. Point OUROBOROS_DSH_CONFIG_PATH at an absolute composition file.

Relative paths are rejected on purpose (they would resolve against the untrusted project cwd). The file must sit where dsh's node_modules (or workspace) is reachable: plugin package names in a composition resolve relative to the composition file's own directory.

  1. Provide whatever credential that composition names — DEEPSEEK_API_KEY for

DeepSeek's own models. See the credentials note below: it must be present in the dsh host environment, and this bundle forwards it explicitly.

Without steps 1–2 the Ouroboros tools still register and list fine; the first interview/Seed/QA call is what fails. Everything except the dsh backend works without them.

Credentials

dsh does not hand child processes the harness environment wholesale. Its subprocess seam scrubs every credential-shaped name — anything matching /KEY|PASSWORD|SECRET|TOKEN/i — plus every DSH_* name, so harness credentials never leak into a spawned process implicitly. A plugin's explicit env layer merges after that scrub.

So this bundle names a short allowlist rather than passing everything through:

  • ANTHROPIC_API_KEY — Ouroboros' default LLM backend.
  • DEEPSEEK_API_KEY — the dsh backend loopback above.

To forward another (OPENAI_API_KEY, OPENROUTER_API_KEY, GOOGLE_API_KEY, ...), override the mcp-ouroboros row in your own profile's cordis.patch.yml with that one extra name in env. A later layer replaces a row's entire config rather than deep-merging it, so copy this bundle's config block and add your line to it. Everything non-credential-shaped — PATH, HOME, the OUROBOROS_* selectors — passes through untouched and needs no row at all.

Startup failures and recovery

Connection failures are non-fatal (failOnStartupError: false): a machine without uv on PATH yet still boots dsh normally, just without the Ouroboros tools, and every other plugin keeps working.

Recovery is not automatic in general. Whether mcp-client retries at all depends on your dsh build — the published 0.0.1-rc.1 has no reconnect loop, current main has one with bounded exponential backoff that gives up after a capped number of consecutive failures. Either way, after fixing the cause (installing uv, setting a runtime), reload the plugin or restart dsh rather than waiting for a reconnect.

What you get

36 tools under the ouroboros namespace — mcp__ouroboros__ouroboros_interview, mcp__ouroboros__ouroboros_auto, mcp__ouroboros__ouroboros_evaluate, mcp__ouroboros__ouroboros_ralph, and more. Each carries its own description, so a plain ooo interview: <vague idea> or ooo auto: <goal> in chat is enough — no extra prompting required.

License

MIT

使用前核對

安裝步驟、相容版本與授權範圍以原專案當前文件為準。Stars 和評分是快照中的導航訊號。

安裝與排錯 · 專案問題反饋

同類專案