ディレクトリに戻る

dsh-argp

キュレーションリスト掲載メンテナンス: 活発

yoza10635/dsh-argp

決定論的コンテキスト圧縮:参照グラフのトポロジカル順で会話アトムを剪定。圧縮中 LLM 呼び出しゼロ、剪定アトムはマーカーで再呼び出し可能

GitHub で見る
$ npm から導入:`dsh plugin --profile <name> add dsh-argp`——バンドルパッチが両ステージをマウントするため手動設定は不要

15

スター

2

フォーク

TypeScript

言語

MIT

ライセンス

2026-08-17

作成日

2026-11-09

最終プッシュ

MIT ライセンスの dsh プラグイン。LLM を環内に置きつつ束縛するアトム単位圧縮と 0-LLM のグラフ剪定、唯一の真実源としての append-only ログ、2 段階の再呼び出し、3 段階のトリガー、読み取り専用の `/argp` ステータスを備えます。

DSH 統合

ネイティブ実行

作者による申告

安全性監査

未監査

最終検証日

2026-11-10

ライセンス

MIT

01どんなタスクに使えるのか?

  • 長時間の DeepSeek Harness セッションを、要約による圧縮で正確なトークンを失わずに維持する

    2 段階の圧縮。モデルは提案のみを行い決定論的ガードが裁定するターン単位のアトム圧縮と、文字数予算へ収束する 0-LLM の参照グラフ剪定

    DeepSeek Harness で長いマルチターンのコーディングを続け、コンテキストウィンドウに繰り返し当たる人

  • 圧縮・剪定された内容を、モデルが必要としたときに原文で取り戻す

    2 段階の再呼び出し。`recall_summary(seq)` は圧縮後の姿、`recall_detail(seq, from?, limit?)` は append-only ログの原文を返し、大きなノードはページングで続きを読める

    圧縮後の履歴からも正確なパス・エラーコード・設定値を逐語で引用したい人

02DeepSeek Harness への導入方法

前提条件

  • dsh の profile 名(README は `dsh plugin --profile <name> add dsh-argp` で導入)
  • 指示追従性がある程度高いモデル。README によればガードによりどのモデルでも「壊れる」ことはないが、削減効果は追従率に比例します

インストール手順

  1. 01

    $ npm から導入:`dsh plugin --profile <name> add dsh-argp`——バンドルパッチが両ステージをマウントするため手動設定は不要

  2. 02

    リリースから 24 時間以内に導入する場合はバージョンを明示(`dsh-argp@<最新版本>`)。pnpm 11 の既定 `minimumReleaseAge` が 1440 分のため、黙って旧版へフォールバックします

  3. 03

    純粋な 0-LLM グラフ剪定へ戻すには profile 層で `config: { peratom: false }` を設定

導入成功の確認

  • セッションで `/argp` と入力するとライブ状態(engine・preset・budget・prunes・recall・cites)が表示されます。読み取り専用で圧縮は走りません
  • 手動圧縮は従来どおりホスト標準の `/compact` を使い、最終的に本エンジンの `compactNow` へ到達します

03DSH 統合と能力の範囲

DSH 統合ネイティブ実行

ネイティブなホスト側 dsh プラグイン。`dsh plugin --profile <name> add dsh-argp` はパッケージ同梱のバンドルパッチ(`cordis.patch.yml` の `insert`)でマウントされ、同じパッチが `- id: compaction-basic / disabled: true` で既存の要約器を無効化します。profile 層は設定の上書きのみを行い、再度 insert すると `duplicate loader entry id` になります。

  • Stage-1 のアトム単位圧縮(eager)

    アトムごとの `{seq, level, text}` 決定を返す 1 回の LLM 呼び出し→`extract`(逐語抜粋。高信号トークンが 1 つでも欠けるとガードが強制拒否)、`summary`(捨てたトークンは監査用に `summaryDropped` へ計上)、`false`(原文を保持)

    置換できるのは現在のターン区間のアトムのみ削減が 5% 以下のコピーは `false` とみなし replace を出さない
  • Stage-2 の参照グラフ剪定(0-LLM)

    決定論的な A→R エッジとモデルが宣言した意味的 `cites` エッジからなるアトムグラフ→逆トポロジ順にアトム単位で除去し、文字数予算を満たすまで進む

    クロージャのライフサイクル ACTIVE→COMPLETED→PRUNABLE→PRUNED により完了タスクのクロージャごと退役トリガー線は既定で `contextWindow×0.8`、保持目標は圧縮可能内容の 20%
  • 3 段階のトリガー

    ターン開始時の圧力判定(L1)、ターン途中の圧力(L1′)、外部による出力の制限(L3)→L1 はアトム単位の LLM パスとグラフ剪定、L1′ は 0-LLM のグラフ剪定のみ、L3 は強制剪定のうえ `steer` で継続メッセージを送り同じターンを進める

    `midTurnPrune` は既定 true、`midTurnTurnGuard` は既定 0`reactiveRetries` は 1 回の制限エピソードにつき既定 2
  • `/argp` ステータスコマンド

    セッションで `/argp` と入力→engine(`graph` か `graph+peratom`)、preset、推定ソース付きの予算行、剪定回数、再呼び出しのヒット率、cites の宣言数

    読み取り専用で圧縮は走らない

04誰に向いているのか?使うべきでない場面は?

向いている用途

  • DeepSeek Harness で長いマルチターンのコーディングを続け、コンテキストウィンドウに繰り返し当たる人
  • 圧縮後の履歴からも正確なパス・エラーコード・設定値を逐語で引用したい人

不向きな用途

  • リリースから 24 時間以内の導入では、旧バージョンが黙って入る可能性があります。pnpm 11 の `minimumReleaseAge` は既定 1440 分で、エラーを出さずにフォールバックし、その後にホストの peer チェックで失敗します。バージョンを明示するか、`minimumReleaseAgeExclude` に `dsh-argp` を追加してください。
  • 1.9.0 以降、ARGP は `skipPresets` に列挙されたプリセット(既定 `['minimal']`)では動作しません。minimal プリセットのセッションは剪定も圧縮も行われません。有効にするには profile 層で `config: { skipPresets: [] }` を設定します。
  • dsh の各層パッチは `config` をブロックごと置換し、深いマージは行いません。profile / home / CLI 層で `dsh-argp` の `config` を書くと前の層を丸ごと上書きします。`peratom` を書かなければ既定で有効なので問題なく、Stage-1 を止めたいときだけ `peratom: false` を書きます。
  • 予算は文字数基準(文字数 × charsPerToken の推定)で、トークン単位の正確な保証ではありません。実際のトークン数はプロバイダが返す usage にアンカーされます。

05互換性・メンテナンス・セキュリティ上の注意

  • リリースから 24 時間以内の導入では、旧バージョンが黙って入る可能性があります。pnpm 11 の `minimumReleaseAge` は既定 1440 分で、エラーを出さずにフォールバックし、その後にホストの peer チェックで失敗します。バージョンを明示するか、`minimumReleaseAgeExclude` に `dsh-argp` を追加してください。
  • 1.9.0 以降、ARGP は `skipPresets` に列挙されたプリセット(既定 `['minimal']`)では動作しません。minimal プリセットのセッションは剪定も圧縮も行われません。有効にするには profile 層で `config: { skipPresets: [] }` を設定します。
  • dsh の各層パッチは `config` をブロックごと置換し、深いマージは行いません。profile / home / CLI 層で `dsh-argp` の `config` を書くと前の層を丸ごと上書きします。`peratom` を書かなければ既定で有効なので問題なく、Stage-1 を止めたいときだけ `peratom: false` を書きます。
  • 予算は文字数基準(文字数 × charsPerToken の推定)で、トークン単位の正確な保証ではありません。実際のトークン数はプロバイダが返す usage にアンカーされます。
  • ARGP が置換していない live ノードは、コンテキストウィンドウに近づくとリクエスト組み立て層で痕跡なく切り落とされることがあり、`recall_pruned` でも取り戻せません。比例予算でトリガーを前倒しするのが緩和策で、根本対応は dsh 側(B-6)です。
2026-08-172026-11-08v1.11.2

MIT · 継続的にメンテナンス中(最新リリース v1.11.2、2026-11-09)· README によれば dsh.so の L4 は通過、L5.2(web 起動層)の検出は失敗し、ローカルでは再現できず

06よくある質問

通常の要約型圧縮と何が違いますか?

要約型はモデルに履歴を書き換えさせるため、正確なトークン(パス・エラーコード・設定値)が真っ先に失われ、プレフィックスキャッシュも全断します。dsh-argp は LLM を信頼できない提案者として環内に置き、決定論的ガードが裁定し、0-LLM のグラフ規則で「忘れる」ことを決定論的にするため、予算が実際に収束します。

圧縮後に原文を取り戻せますか?

はい。圧縮・剪定された内容はすべて append-only ログに残ります。`recall_summary(seq)` は圧縮後の姿、`recall_detail(seq, from?, limit?)` は原文を返し、テキストブロックは逐語、ツール呼び出しの引数は JSON 等価に再構築され明示されます。大きなノードはページングで続きを読めます。

導入後に手動設定は必要ですか?

不要です。`peratom` はエンジン構築時に既定で有効なため、導入すれば 2 エンジン構成になります。パッケージのバンドルパッチが `compaction-basic` も無効化します。純粋な 0-LLM グラフ剪定へ戻すには profile 層で `config: { peratom: false }` を設定します。

新しいリリースを入れたのに旧版になったのはなぜですか?

pnpm 11 の `minimumReleaseAge` が既定 1440 分のため、24 時間以内に公開された版はスキップされ、pnpm が黙って旧版へフォールバックします。その結果ホストの peer チェックで失敗します。バージョンを明示(`dsh-argp@<version>`)するか、`minimumReleaseAgeExclude` に `dsh-argp` を追加してください。

動作状況を確認する方法は?

セッションで `/argp` と入力すると、エンジンモード(`graph` か `graph+peratom`)、preset、推定ソース付きの予算行、剪定回数、再呼び出しのヒット率、cites の宣言数が表示されます。読み取り専用で圧縮は走りません。

08データと出典

  • 作者による申告github.com5d81fd5d9980…

    **dsh-argp 是 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness)(dsh)的第三方上下文压缩引擎**

  • 作者による申告github.com5d81fd5d9980…

    挂载同样由包的 bundle patch(`cordis.patch.yml`)负责(`insert` 创建 entry)

このページは、プロジェクトの公開ドキュメント、リポジトリのメタデータ、および DSH Plugins の構造化解析に基づいて生成されています。最終検証日:2026-11-10。誤りを見つけた場合は、修正を送信してください。

🏆

dsh プラグイン おすすめ

最初に入れたい 12 のプラグイン。全カタログ・全カテゴリから厳選しました。

DSH Plugins は DeepSeek Harness プラグインの独立したコミュニティ ディレクトリです。DeepSeek との提携・公認はありません。サードパーティ製プラグインはセキュリティ監査を受けていません。インストール前にソースコードをご確認ください。

DeepSeek Harnessの新着プラグインを毎週お届け。スパムはありません。