dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
DSH plugin: plans accumulated GitHub Issues into ordered work packages in the background (decision model + deterministic rules, no LLM) and shows the next one in the sidebar
リポジトリの GitHub Issue を、着手する順番に並べておく DSH プラグインです。 一緒に片付けられる Issue は、ひとつの作業単位(パッケージ)にまとめます。次にやるパッケージがサイドバーに出るので、ボタンを押せばエージェントがその作業を始めます。
並べ替えは 1 時間ごとに裏で行います。規模や重要度の見積もりには Decision Model を使い、チャット用の LLM は使いません。GitHub には書き込みません。
dsh plugin --profile web add github:lifwsp/dsh-issue-priority
web は使っているプロファイル名に置き換えてください。外すときは dsh plugin --profile web remove dsh-issue-priority です。
サイドバーのタブを使うには dsh-better-sidebar が必要です。
既定では Decision Model を使いません。この状態でも動きますが、規模や重要度は見積もらず、依存関係と Issue 番号の順に並びます。
Decision Model を使うときは、呼び先と API キーを設定し、allowExternalJudgment を true にします。true にすると、Issue のタイトル・ラベル・本文と、人が書いたコメントが呼び先に送られます。
# cordis.patch.yml
- id: dsh-issue-priority
name: dsh-issue-priority
config:
decisionProvider: liquid # 下の表から選ぶ
allowExternalJudgment: true
decisionProvider | 呼び先 | API キーの名前 |
|---|---|---|
liquid | Liquid AI の API(d1) | LIQUID_API_KEY |
openrouter | OpenRouter(liquid/d1) | OPENROUTER_API_KEY |
typesafe | TypeSafe の API(Jev) | TYPESAFE_API_KEY |
custom | System One 形式の任意の API。decisionApiUrl と decisionModel も指定する | DECISION_API_KEY |
API キーは DSH の認証情報か環境変数に、表の名前で登録します。名前を変えたいときは decisionApiKeyRef で指定します。
Closes #N 付きの PR を出します。丸いアイコンにマウスを乗せると、そのパッケージを選んだ理由や同期の状態が見えます。アイコンが ! のときは、確認したほうがよいことがあります。
タブの代わりにコマンドでも操作できます。
| コマンド | 内容 |
|---|---|
/issues | 計画を表示する |
/issues next [ID] | 次のパッケージ(または ID のパッケージ)をエージェントに渡す |
/issues pin N / defer N / clear N | Issue N を優先 / 後回し / 元に戻す |
/issues done | 作業中の印を外す |
/issues sync | 今すぐ GitHub と同期する |
このプラグインを入れると、エージェントが Issue を作成・編集するとき、本文の末尾に次のような HTML コメントを追加するようになります。GitHub の画面には表示されません。
中身はエージェントが会話とコードから推定して書きます。このプラグインは、ここに書かれた規模・関係するファイル・依存関係を、まとめ方と順番の根拠に使います。コメントのない Issue も計画に入ります。
dependsOn、本文やコメントの blocked by #12 から読み取ります。本文やコメントから読み取った依存は、Decision Model がスレッド全体を読み、後のコメントで取り消されていれば外します。priority:high などのラベルがあればそれを使い、なければ Decision Model が見積もります。| キー | 既定値 | 内容 |
|---|---|---|
allowExternalJudgment | false | Decision Model に Issue を送ってよいか。decisionProvider と両方そろったときだけ使う |
decisionProvider | none | Decision Model の呼び先(上の表)。none は使わない |
decisionModel | (呼び先ごとの既定) | 使うモデルの ID |
syncIntervalMinutes | 60 | 同期の間隔(分)。0 で止める |
maxIssues | 300 | 1 回の同期で読む Issue の上限 |
githubTokenRef | GITHUB_TOKEN | GitHub トークンの名前。見つからなければ GH_TOKEN、gh auth token を使う |
ほかの項目は src/config.ts にあります。
pnpm install
pnpm check # 型チェック・テスト・ビルド
設計メモは docs/design.md にあります。