kiokuko-dsh 0.2.36 → 0.2.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/PERMISSIONS.md +11 -5
- package/README.ja.md +54 -26
- package/README.ko.md +55 -24
- package/README.md +54 -23
- package/README.zh-CN.md +55 -24
- package/dist/dsh/setup.d.ts +22 -0
- package/dist/dsh/setup.d.ts.map +1 -1
- package/dist/dsh/setup.js +50 -4
- package/dist/dsh/setup.js.map +1 -1
- package/dist/dsh/standard-skill-deployment.d.ts +12 -1
- package/dist/dsh/standard-skill-deployment.d.ts.map +1 -1
- package/dist/dsh/standard-skill-deployment.js +76 -4
- package/dist/dsh/standard-skill-deployment.js.map +1 -1
- package/dist/locale/en.json +1 -1
- package/dist/locale/ja.json +1 -1
- package/dist/locale/ko.json +1 -1
- package/dist/locale/zh-CN.json +1 -1
- package/docs/README.ja.md +1 -0
- package/docs/README.md +1 -0
- package/docs/dsh-plugin.md +42 -14
- package/docs/getting-started.ja.md +2 -0
- package/docs/getting-started.md +2 -0
- package/docs/model-selection.ja.md +2 -2
- package/docs/model-selection.md +2 -2
- package/docs/store-evidence.md +6 -0
- package/docs/typed-decisions.md +75 -4
- package/docs/typesafe.md +8 -3
- package/docs/verification.md +28 -3
- package/package.json +4 -3
- package/scripts/prepare-build.mjs +13 -0
- package/scripts/setup-dsh.mjs +8 -3
package/PERMISSIONS.md
CHANGED
|
@@ -39,8 +39,10 @@ Skill collisions before mounting its runtime; it does not rewrite `AGENTS.md`.
|
|
|
39
39
|
the startup directory’s `AGENTS.md` with the DSH host-owned contract. Preserves
|
|
40
40
|
instructions outside the markers; absent or unmanaged files stay untouched.
|
|
41
41
|
Refuses linked files or ambiguous markers. The bundled `scripts/setup-dsh.mjs`
|
|
42
|
-
provides the same repair for an explicit workspace
|
|
43
|
-
|
|
42
|
+
provides the same repair for an explicit workspace, a read-only `--check`, and
|
|
43
|
+
explicit `--remove` retirement of byte-identical deployed files and its managed
|
|
44
|
+
block. It does not scan parent/global instruction files or other session
|
|
45
|
+
workspaces.
|
|
44
46
|
- On plugin load, enumerates stored DSH session IDs and validates each history.
|
|
45
47
|
When DSH rejects a v3 history containing legacy Kiokuko informational
|
|
46
48
|
events, reads that exact native session file and marks the five supported
|
|
@@ -131,13 +133,17 @@ Skill collisions before mounting its runtime; it does not rewrite `AGENTS.md`.
|
|
|
131
133
|
|
|
132
134
|
## Installation lifecycle
|
|
133
135
|
|
|
134
|
-
The
|
|
136
|
+
The source-install preparation hook is:
|
|
135
137
|
|
|
136
138
|
```text
|
|
137
|
-
prepare =
|
|
139
|
+
prepare = node scripts/prepare-build.mjs
|
|
138
140
|
```
|
|
139
141
|
|
|
140
|
-
It
|
|
142
|
+
It normally runs the invoking package manager's `run build` from the source
|
|
143
|
+
checkout. Only an explicit `CI=true` plus `KIOKUKO_CI_DEFER_PREPARE=1` defers
|
|
144
|
+
this package's duplicate prepare build to the selected verifier's required clean
|
|
145
|
+
build. Dependency lifecycle scripts still run; source/build digests and tested
|
|
146
|
+
archive receipts remain required. It does not modify a DSH
|
|
141
147
|
profile, contact an external service, or edit user configuration. A Git source
|
|
142
148
|
install must pin a full commit and authorize the exact generated archive key
|
|
143
149
|
with pnpm `allowBuilds`; the npm tarball already contains `dist/`.
|
package/README.ja.md
CHANGED
|
@@ -128,9 +128,9 @@ DSH 更新後に Kiokuko を読み込めない場合は、[起動失敗時の復
|
|
|
128
128
|
選択後の通常の編集・テストには追加確認を求めません。ソース・実データの削除と既存の永続DB変更は対象を確認します。各項目の最新の証拠と、通常の利用入口からの最終確認が揃った場合だけ完了します。[Goal 駆動コーディング](docs/coding-workflow.md)と[独自実行、レシート、記憶の再利用](docs/owned-execution.md)を参照してください。
|
|
129
129
|
[設定、API、停止・復旧方法](docs/lisp.md)を参照してください。
|
|
130
130
|
|
|
131
|
-
## 型付き判定(Jev / Laya / Nimble)
|
|
131
|
+
## 型付き判定(Jev / Laya / OpenAI / Nimble)
|
|
132
132
|
|
|
133
|
-
任意の[モデル自動選択](docs/model-selection.ja.md#通常実行のモデル自動選択)は、新しい通常タスクで検証済みの `openai-codex` モデルと推論強度を選びます。既定値は `modelAutoMode.mode: off` です。`/kioku-model-auto on | observe | off | status` は現在のセッションだけを変更します。`observe` は候補を計測し、実モデルは変えません。利用にはJev
|
|
133
|
+
任意の[モデル自動選択](docs/model-selection.ja.md#通常実行のモデル自動選択)は、新しい通常タスクで検証済みの `openai-codex` モデルと推論強度を選びます。既定値は `modelAutoMode.mode: off` です。`/kioku-model-auto on | observe | off | status` は現在のセッションだけを変更します。`observe` は候補を計測し、実モデルは変えません。利用にはJev・Laya・OpenAIのいずれかの準備完了、dsh-codex、DSHのモデル情報とtoken meterが必要です。判定不能なら現在のモデルを維持し、手動選択を優先します。
|
|
134
134
|
|
|
135
135
|
[回答の再検討](docs/answer-review.md)は、表示済みの通常回答を評価し、指摘があれば同じ主モデルに一度だけ見直させる機能です。通常版・modular coreで既定で有効です。既定値は次のとおりです。
|
|
136
136
|
|
|
@@ -140,46 +140,74 @@ answerReview:
|
|
|
140
140
|
budgetMs: 5000
|
|
141
141
|
```
|
|
142
142
|
|
|
143
|
-
無効にする場合は `answerReview.mode: off` を指定します。評価providerは `typedDecisions` のJev/Laya/Nimbleを継承します。選択したproviderが利用できない場合は評価をスキップし、元の回答で終了します。別providerへの自動切替はありません。最初の回答はそのまま表示され、評価の追加推論と、最大1回の主モデルによる再検討が発生します。Laya v1はworker内部の切り詰めを確認できないため、指摘は未確認の候補として扱います。`/kioku-decisions status` で進行状態・スキップ理由を確認できます。正しさを保証する機能ではありません。
|
|
143
|
+
無効にする場合は `answerReview.mode: off` を指定します。評価providerは `typedDecisions` のJev/Laya/OpenAI/Nimbleを継承します。選択したproviderが利用できない場合は評価をスキップし、元の回答で終了します。別providerへの自動切替はありません。最初の回答はそのまま表示され、評価の追加推論と、最大1回の主モデルによる再検討が発生します。Laya v1はworker内部の切り詰めを確認できないため、指摘は未確認の候補として扱います。`/kioku-decisions status` で進行状態・スキップ理由を確認できます。正しさを保証する機能ではありません。
|
|
144
144
|
|
|
145
145
|
|
|
146
|
-
|
|
146
|
+
通常の作業開始時に、decision/Lisp の4通りのON/OFFを一つのカードで選べます。取消・Skipでは開始しません。選択は依頼に保存し、同じ依頼の再処理・再起動・明示的な「続けて」では再利用します。別の依頼では確認し直します。LispがONでも既存の権限・承認・Stopは維持します。ヘッドレスでは既存設定と明示的なLispセッション設定を保ち、`typedDecisions.startup: {decision: true, lisp: true}` でも明示できます。ONは利用成功の証明ではなく、認証不足や判断失敗は記録して主モデルへ戻します。
|
|
147
147
|
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
/kioku-decisions use laya
|
|
151
|
-
/kioku-decisions use openai
|
|
152
|
-
/kioku-decisions use nimble
|
|
153
|
-
/kioku-decisions use default
|
|
154
|
-
```
|
|
148
|
+
<a id="openai-decisions-setup"></a>
|
|
149
|
+
### OpenAI Decisions の設定
|
|
155
150
|
|
|
156
|
-
Laya
|
|
151
|
+
既定はJevで、OpenAI・ローカルのLaya・Nimbleも選べます。OpenAIは公式 [Decisions API](https://developers.openai.com/api/docs/guides/decisions) の `POST /v1/decisions` を使い、このソースの既定判定モデルは `gpt-6-luna` です。主モデルの認証とは別です。ChatGPT/CodexのOAuthログインから `OPENAI_API_KEY` は供給されず、TypeSafe/Jevのキーも代用できません。
|
|
157
152
|
|
|
158
|
-
|
|
153
|
+
以下は現行ソースの手順で、公開済みnpmの `latest` にOpenAI対応が含まれることを示すものではありません。`use openai` がない場合は、まず導入済みbuildのコマンド対応を確認してください。
|
|
159
154
|
|
|
160
|
-
|
|
155
|
+
1. OpenAI APIプロジェクトのAPIキーを作り、稼働中DSHが使う保存先へ追加します。標準の `credentials-local` では次のように決まります。
|
|
161
156
|
|
|
162
|
-
|
|
157
|
+
| 設定 | credentialsファイル |
|
|
158
|
+
|---|---|
|
|
159
|
+
| 既定のharness home | `~/.dsh/.credentials.yaml` |
|
|
160
|
+
| `DSH_HOME` を指定 | `$DSH_HOME/.credentials.yaml` |
|
|
161
|
+
| `credentials.path` を明示(providerの `config.path`) | homeの既定値より優先される指定先 |
|
|
163
162
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
refs
|
|
167
|
-
|
|
163
|
+
`--profile web` のパッケージ・patchは `$DSH_HOME/profiles/web` にありますが、指定だけでcredentialsの保存先は移動しません。profileで `credentials.path` を変えた場合や、launcherが別の `DSH_HOME` を使う場合は、その実際の保存先を編集します。`profiles/web/.credentials.yaml` と推測しないでください。
|
|
164
|
+
|
|
165
|
+
2. 既存ファイルでは `refs` に `OPENAI_API_KEY` だけを追加し、ほかの `refs` と `records` はすべて残します。次は無効な例示キーを使った**新規ファイル用の最小例**です。
|
|
166
|
+
|
|
167
|
+
```yaml
|
|
168
|
+
version: 1
|
|
169
|
+
refs:
|
|
170
|
+
OPENAI_API_KEY: "OPENAI_API_KEY_EXAMPLE_ONLY"
|
|
171
|
+
records: {}
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
例示値を手元で実際のキーへ置き換えます。macOS/Linuxでは実際の保存先を権限600にします。既定パスの場合:
|
|
175
|
+
|
|
176
|
+
```sh
|
|
177
|
+
chmod 600 "$HOME/.dsh/.credentials.yaml"
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
保存先を変更している場合はコマンドのパスも変更します。既定の `watch: true` なら、有効なファイル編集は自動再読され、次の要求から使われます。DSH再起動は不要です。キーを会話・スクリーンショット・Gitへ貼らないでください。
|
|
181
|
+
|
|
182
|
+
3. DSHのコマンド入力欄で切り替え、状態を確認します。
|
|
183
|
+
|
|
184
|
+
```text
|
|
185
|
+
/kioku-decisions use openai
|
|
186
|
+
/kioku-decisions status
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
`use openai` のprobeは実API呼出しで、利用料金が発生する場合があります。probeと保存の成功後だけ、このプロジェクトの新しい要求へ選択を保存します。失敗・取消時は元の選択を保持し、進行中の要求のbindingも変えません。`status` は推論を呼びません。任意の `/kioku-decisions probe` は追加の実probeを行います。
|
|
190
|
+
|
|
191
|
+
標準providerの優先順位は **保存ファイル > 起動時環境変数 > projectの `.env` > harness homeの `.env`** です。credentialsサービスがある構成でも、保存値で上書きされていなければ環境変数を使えます。環境変数だけで設定する場合は、同じシェルからDSHを起動する**前**に設定します。
|
|
192
|
+
|
|
193
|
+
```sh
|
|
194
|
+
export OPENAI_API_KEY='OPENAI_API_KEY_EXAMPLE_ONLY'
|
|
168
195
|
```
|
|
169
196
|
|
|
170
|
-
|
|
197
|
+
この値は使用できない例示値です。DSH起動後に別シェルでexportしても起動時snapshotは変わりません。稼働中の更新にはwatch対象のファイルを使います。キーを書いた `.env` もGitへ追加しないでください。
|
|
171
198
|
|
|
172
|
-
|
|
199
|
+
ほかの選択肢も維持しています。
|
|
173
200
|
|
|
174
201
|
```text
|
|
175
|
-
/kioku-
|
|
176
|
-
/kioku-decisions
|
|
177
|
-
/kioku-decisions
|
|
202
|
+
/kioku-decisions use jev
|
|
203
|
+
/kioku-decisions use laya
|
|
204
|
+
/kioku-decisions use nimble
|
|
205
|
+
/kioku-decisions use default
|
|
178
206
|
```
|
|
179
207
|
|
|
180
|
-
`
|
|
208
|
+
Jevは `TYPESAFE_API_KEY` を使います。`/kioku-typesafe-key` が管理するのはこのキーだけで、OpenAIのキーは保存しません。Layaは `start-laya` で起動済みのworkerへ `~/Library/Caches/laya-coreml/worker.sock` のv1 `health`/`predict` で接続します。`install-laya` はworkerを再利用するか導入手順を案内します。Nimbleは接続先とモデルの事前設定が必要です。`use default` はプラグイン設定に戻します。
|
|
181
209
|
|
|
182
|
-
|
|
210
|
+
詳しくは[優先順位・設定・トラブル対処](docs/typed-decisions.md#openai-credentials)、[公式credentials仕様](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/credentials-local/README.md)、[TypeSafeのLisp API](docs/typesafe.md)を参照してください。
|
|
183
211
|
|
|
184
212
|
英語を含め、どの言語でも `aac6fef/laya-multilingual-coreml` を使います。入力上限は質問・選択肢・判定対象を合わせて1,024 tokensで、`-ane` 版は96 tokensのみです。[開発元のモデル仕様](https://github.com/mizorewww/laya-coreml#available-checkpoints)を参照してください。[初期導入](docs/Laya-CoreML-ja.md)を済ませてから、次のコマンドを実行します。起動中のLaya workerがあれば停止してから新しいモデルで起動してください。`LAYA_MODEL` の指定は、既存workerスクリプトの古い既定値も上書きします。
|
|
185
213
|
|
package/README.ko.md
CHANGED
|
@@ -13,7 +13,7 @@ DSH 표준 agent preset은 `subagent`와 `subagent_fork`를 제공합니다. 일
|
|
|
13
13
|
|
|
14
14
|
새 변경 작업에서는 일반 실행 또는 役小角(enno-oduno)를 선택할 수 있습니다. 역할별 모델은 추천 템플릿이나 DSH에 설정된 모델에서 선택합니다. [모델 선택과 연결 제한](docs/model-selection.md).
|
|
15
15
|
|
|
16
|
-
선택 기능인 [자동 모델 선택](docs/model-selection.md#automatic-model-selection)은 기본적으로 꺼져 있습니다(`modelAutoMode.mode: off`). `/kioku-model-auto on | observe | off | status`는 현재 세션만 바꿉니다. `observe`는 제안만 기록하고 실제 모델은 유지합니다. 일반 작업에서 준비된 Jev 또는
|
|
16
|
+
선택 기능인 [자동 모델 선택](docs/model-selection.md#automatic-model-selection)은 기본적으로 꺼져 있습니다(`modelAutoMode.mode: off`). `/kioku-model-auto on | observe | off | status`는 현재 세션만 바꿉니다. `observe`는 제안만 기록하고 실제 모델은 유지합니다. 일반 작업에서 준비된 Jev, Laya 또는 OpenAI, dsh-codex, DSH 모델 메타데이터와 token meter가 필요합니다. 판정에 실패하면 현재 모델을 유지하고 수동 선택을 우선합니다.
|
|
17
17
|
|
|
18
18
|
메모리는 선택 기능입니다. 작업이 끝나면 Kiokuko가 기록된 경험을 정리할지 묻고 임시 미리보기를 보여 주며, 사용자가 승인한 정확한 수정본만 저장합니다. 자동 메모리 쓰기는 더 이상 사용하지 않습니다. [검토, 회상 및 잊기](docs/replay-memory-review.md).
|
|
19
19
|
|
|
@@ -115,11 +115,11 @@ DSH 업데이트 후 Kiokuko를 불러오지 못하면 [시작 오류 복구 절
|
|
|
115
115
|
|
|
116
116
|
[문서](docs/README.md) · [권한](PERMISSIONS.md) · [MIT 라이선스](LICENSE)
|
|
117
117
|
|
|
118
|
-
## 타입 기반 판정(Jev / Laya / Nimble)
|
|
118
|
+
## 타입 기반 판정(Jev / Laya / OpenAI / Nimble)
|
|
119
119
|
|
|
120
|
-
선택 기능인 [자동 모델 선택](docs/model-selection.md#automatic-model-selection)은 새 일반 작업에 사용할 검증된 `openai-codex` 모델과 추론 강도를 선택합니다. 기본값은 `modelAutoMode.mode: off`이며, `/kioku-model-auto on | observe | off | status`는 현재 세션만 변경합니다. `observe`는 제안을 평가하지만 모델은 변경하지 않습니다. 준비된 Jev 또는
|
|
120
|
+
선택 기능인 [자동 모델 선택](docs/model-selection.md#automatic-model-selection)은 새 일반 작업에 사용할 검증된 `openai-codex` 모델과 추론 강도를 선택합니다. 기본값은 `modelAutoMode.mode: off`이며, `/kioku-model-auto on | observe | off | status`는 현재 세션만 변경합니다. `observe`는 제안을 평가하지만 모델은 변경하지 않습니다. 준비된 Jev, Laya 또는 OpenAI 백엔드, dsh-codex, 기본 모델 메타데이터와 token meter가 필요합니다. 분류에 실패하거나 사용할 수 없으면 현재 모델을 유지하며, 수동 모델 선택을 우선합니다.
|
|
121
121
|
|
|
122
|
-
[답변 검토](docs/answer-review.md)는 전체 플러그인과 모듈형 코어에서 기본으로 활성화됩니다. 설정된 Jev, Laya 또는 Nimble provider로 이미 표시된 일반 답변을 평가하고, 같은 주 모델에 한 번 재검토를 요청할 수 있습니다. 기본 설정은 다음과 같습니다.
|
|
122
|
+
[답변 검토](docs/answer-review.md)는 전체 플러그인과 모듈형 코어에서 기본으로 활성화됩니다. 설정된 Jev, Laya, OpenAI 또는 Nimble provider로 이미 표시된 일반 답변을 평가하고, 같은 주 모델에 한 번 재검토를 요청할 수 있습니다. 기본 설정은 다음과 같습니다.
|
|
123
123
|
|
|
124
124
|
```yaml
|
|
125
125
|
answerReview:
|
|
@@ -129,38 +129,69 @@ answerReview:
|
|
|
129
129
|
|
|
130
130
|
끄려면 `answerReview.mode: off`를 설정하세요. `typedDecisions` 설정을 이어받으며, 평가 추론과 최대 한 턴의 주 모델 호출이 추가되지만 첫 답변을 지연시키지는 않습니다. 선택한 provider를 사용할 수 없으면 검토를 건너뛰고 원래 답변을 유지하며, 다른 provider로 대체하지 않습니다. Laya v1의 결과는 worker 내부의 잘림을 확인할 수 없어 검증되지 않은 제안으로 취급합니다. `/kioku-decisions status`는 진행 상황과 건너뛴 이유를 보여 줄 뿐, 정확성을 보증하지 않습니다.
|
|
131
131
|
|
|
132
|
-
|
|
132
|
+
<a id="openai-decisions-setup"></a>
|
|
133
|
+
### OpenAI Decisions 설정
|
|
133
134
|
|
|
134
|
-
|
|
135
|
-
/kioku-decisions use jev
|
|
136
|
-
/kioku-decisions use laya
|
|
137
|
-
/kioku-decisions use nimble
|
|
138
|
-
/kioku-decisions use default
|
|
139
|
-
```
|
|
135
|
+
기본값은 Jev이며 OpenAI, 로컬 Laya, Nimble도 선택할 수 있습니다. OpenAI는 공식 [Decisions API](https://developers.openai.com/api/docs/guides/decisions)의 `POST /v1/decisions`를 사용하며, 이 소스의 기본 판정 모델은 `gpt-6-luna`입니다. 주 채팅 모델의 인증과는 별개입니다. ChatGPT/Codex OAuth 로그인은 `OPENAI_API_KEY`를 제공하지 않으며 TypeSafe/Jev 키로 대체할 수도 없습니다.
|
|
140
136
|
|
|
141
|
-
|
|
137
|
+
아래 내용은 현재 소스를 기준으로 하며, 공개된 npm `latest`에 OpenAI 지원이 이미 포함되었다는 뜻은 아닙니다. `use openai`가 없다면 먼저 설치된 build의 명령 지원을 확인하세요.
|
|
142
138
|
|
|
143
|
-
|
|
139
|
+
1. OpenAI API 프로젝트의 API 키를 만들고 실행 중인 DSH의 저장소에 추가하세요. 표준 `credentials-local`에서는 다음 경로를 사용합니다.
|
|
144
140
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
141
|
+
| 설정 | 자격 증명 파일 |
|
|
142
|
+
|---|---|
|
|
143
|
+
| 기본 harness home | `~/.dsh/.credentials.yaml` |
|
|
144
|
+
| 사용자 지정 `DSH_HOME` | `$DSH_HOME/.credentials.yaml` |
|
|
145
|
+
| 명시적인 `credentials.path` (provider의 `config.path`) | home 기본값보다 우선하는 지정 경로 |
|
|
146
|
+
|
|
147
|
+
`--profile web`의 패키지와 patch는 `$DSH_HOME/profiles/web`에 있지만, 이 옵션만으로 자격 증명 경로가 바뀌지는 않습니다. profile의 `credentials.path`나 launcher의 `DSH_HOME`이 다르면 실제 경로를 사용하세요. `profiles/web/.credentials.yaml`로 추측하지 마세요.
|
|
148
|
+
|
|
149
|
+
2. 기존 파일에서는 `refs` 아래에 `OPENAI_API_KEY`만 추가하고 나머지 `refs`와 `records`를 모두 유지하세요. 다음은 실제로 작동하지 않는 예시 키를 넣은 **새 파일용 최소 예제**입니다.
|
|
150
|
+
|
|
151
|
+
```yaml
|
|
152
|
+
version: 1
|
|
153
|
+
refs:
|
|
154
|
+
OPENAI_API_KEY: "OPENAI_API_KEY_EXAMPLE_ONLY"
|
|
155
|
+
records: {}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
예시 값은 본인의 환경에서 실제 키로 바꾸세요. macOS/Linux에서는 실제 파일의 권한을 600으로 설정하세요. 기본 경로라면:
|
|
159
|
+
|
|
160
|
+
```sh
|
|
161
|
+
chmod 600 "$HOME/.dsh/.credentials.yaml"
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
경로를 변경했다면 명령에도 해당 경로를 사용하세요. 기본 `watch: true`는 유효한 파일 수정을 자동으로 다시 읽어 다음 요청부터 사용하므로 DSH 재시작이 필요 없습니다. 키를 대화, 스크린샷 또는 Git에 올리지 마세요.
|
|
165
|
+
|
|
166
|
+
3. DSH 명령 입력란에서 OpenAI로 전환하고 결과를 확인하세요.
|
|
167
|
+
|
|
168
|
+
```text
|
|
169
|
+
/kioku-decisions use openai
|
|
170
|
+
/kioku-decisions status
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
`use openai`의 probe는 실제 API 호출이며 사용 요금이 발생할 수 있습니다. probe와 저장이 성공해야 프로젝트의 새 요청에 선택이 저장됩니다. 실패하거나 취소하면 이전 선택을 유지하며 진행 중인 요청의 binding은 바꾸지 않습니다. `status`는 추론을 호출하지 않습니다. 선택 사항인 `/kioku-decisions probe`는 실제 probe를 한 번 더 보냅니다.
|
|
174
|
+
|
|
175
|
+
표준 provider의 우선순위는 **저장 파일 > 시작 시 환경 변수 > 프로젝트 `.env` > harness home `.env`**입니다. credentials 서비스가 있어도 저장 값이 우선하지 않는 경우 환경 변수를 사용할 수 있습니다. 환경 변수만 사용하려면 같은 셸에서 DSH를 시작하기 **전에** 설정하세요.
|
|
176
|
+
|
|
177
|
+
```sh
|
|
178
|
+
export OPENAI_API_KEY='OPENAI_API_KEY_EXAMPLE_ONLY'
|
|
149
179
|
```
|
|
150
180
|
|
|
151
|
-
|
|
181
|
+
이 값은 사용할 수 없는 예시입니다. DSH 시작 후 다른 셸에서 export해도 시작 시 snapshot은 갱신되지 않습니다. 실행 중인 인스턴스에는 watch 대상 파일을 수정하세요. 키가 들어 있는 `.env`도 Git에 추가하지 마세요.
|
|
152
182
|
|
|
153
|
-
|
|
183
|
+
다른 선택도 계속 사용할 수 있습니다.
|
|
154
184
|
|
|
155
185
|
```text
|
|
156
|
-
/kioku-
|
|
157
|
-
/kioku-decisions
|
|
158
|
-
/kioku-decisions
|
|
186
|
+
/kioku-decisions use jev
|
|
187
|
+
/kioku-decisions use laya
|
|
188
|
+
/kioku-decisions use nimble
|
|
189
|
+
/kioku-decisions use default
|
|
159
190
|
```
|
|
160
191
|
|
|
161
|
-
|
|
192
|
+
Jev는 `TYPESAFE_API_KEY`를 사용합니다. `/kioku-typesafe-key`는 이 키만 관리하며 OpenAI 키를 저장하지 않습니다. Laya는 `start-laya`로 실행한 기존 worker에 `~/Library/Caches/laya-coreml/worker.sock`의 v1 `health`/`predict`로 연결합니다. `install-laya`는 worker를 재사용하거나 설치 방법을 안내합니다. Nimble은 엔드포인트와 모델을 미리 설정해야 합니다. `use default`는 플러그인 설정으로 되돌립니다.
|
|
162
193
|
|
|
163
|
-
|
|
194
|
+
[우선순위·설정·문제 해결](docs/typed-decisions.md#openai-credentials), [공식 자격 증명 저장소 문서](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/credentials-local/README.md), [TypeSafe Lisp API](docs/typesafe.md)를 참고하세요.
|
|
164
195
|
|
|
165
196
|
영어 및 다른 언어에는 `aac6fef/laya-multilingual-coreml`을 사용하세요. 1,024-token 입력 한도에는 질문, 선택지, 상태가 모두 포함되며, `-ane` 변형은 96 tokens만 허용합니다. [원본 모델 사양](https://github.com/mizorewww/laya-coreml#available-checkpoints)을 참고하세요. [초기 설정](docs/Laya-CoreML-ja.md)을 마친 뒤 아래 명령을 사용하세요. 실행 중인 Laya worker를 종료한 후 새 모델로 시작해야 합니다. `LAYA_MODEL`은 기존 worker 스크립트의 이전 기본값도 덮어씁니다.
|
|
166
197
|
|
package/README.md
CHANGED
|
@@ -129,11 +129,11 @@ Choose “使う” to use Lisp, “使わない” to use ordinary tools, or
|
|
|
129
129
|
Ordinary edits and tests run without further confirmation after that choice. Source/data deletion and existing durable user database mutation require a concrete review. Lisp and ordinary tools coexist. Completion requires current item evidence and a fresh final check through the user’s entry point. See [Goal-driven coding](docs/coding-workflow.md) and [owned execution, receipts and memory reuse](docs/owned-execution.md).
|
|
130
130
|
See [setup, APIs, limits and recovery](docs/lisp.md).
|
|
131
131
|
|
|
132
|
-
## Typed decisions (Jev / Laya / Nimble)
|
|
132
|
+
## Typed decisions (Jev / Laya / OpenAI / Nimble)
|
|
133
133
|
|
|
134
|
-
Optional [automatic model selection](docs/model-selection.md#automatic-model-selection) chooses a validated `openai-codex` model and reasoning effort for a new normal task. It defaults to `modelAutoMode.mode: off`; `/kioku-model-auto on | observe | off | status` changes only the current session. `observe` measures a proposal without changing the model. It requires a ready Jev or
|
|
134
|
+
Optional [automatic model selection](docs/model-selection.md#automatic-model-selection) chooses a validated `openai-codex` model and reasoning effort for a new normal task. It defaults to `modelAutoMode.mode: off`; `/kioku-model-auto on | observe | off | status` changes only the current session. `observe` measures a proposal without changing the model. It requires a ready Jev, Laya or OpenAI backend, dsh-codex, native model metadata and a token meter. Failed or unavailable classification keeps the current model; manual model selection takes priority.
|
|
135
135
|
|
|
136
|
-
[Answer review](docs/answer-review.md) is enabled by default on the full plugin and modular core. It evaluates an already displayed normal answer using the configured Jev, Laya or Nimble provider and may ask the same main model to reconsider once. The defaults are:
|
|
136
|
+
[Answer review](docs/answer-review.md) is enabled by default on the full plugin and modular core. It evaluates an already displayed normal answer using the configured Jev, Laya, OpenAI or Nimble provider and may ask the same main model to reconsider once. The defaults are:
|
|
137
137
|
|
|
138
138
|
```yaml
|
|
139
139
|
answerReview:
|
|
@@ -144,38 +144,69 @@ answerReview:
|
|
|
144
144
|
Set `answerReview.mode: off` to disable it. It inherits `typedDecisions`, adds evaluation inference (and at most one main-model turn), and does not delay the first answer. If the selected provider is unavailable, review is skipped and the original answer is preserved; no other provider is substituted. Laya v1 findings are unverified suggestions because worker-side truncation cannot be checked. `/kioku-decisions status` reports progress and skip reasons; it does not certify correctness.
|
|
145
145
|
|
|
146
146
|
|
|
147
|
-
|
|
147
|
+
<a id="openai-decisions-setup"></a>
|
|
148
|
+
### Set up OpenAI Decisions
|
|
148
149
|
|
|
149
|
-
|
|
150
|
-
/kioku-decisions use jev
|
|
151
|
-
/kioku-decisions use laya
|
|
152
|
-
/kioku-decisions use nimble
|
|
153
|
-
/kioku-decisions use default
|
|
154
|
-
```
|
|
150
|
+
Jev remains the default; OpenAI, local Laya and Nimble are alternatives. OpenAI uses the official [Decisions API](https://developers.openai.com/api/docs/guides/decisions), `POST /v1/decisions`, with `gpt-6-luna` as this checkout's default decision model. This is separate from the main chat model: ChatGPT/Codex OAuth login does not supply `OPENAI_API_KEY`, and a TypeSafe/Jev key cannot replace it.
|
|
155
151
|
|
|
156
|
-
|
|
152
|
+
These instructions describe the current source. They do not assert that the published npm `latest` already includes OpenAI support. If `use openai` is unavailable, check the installed build's command support first.
|
|
157
153
|
|
|
158
|
-
|
|
154
|
+
1. Create an API key for your OpenAI API project and add it to the credential store used by the running DSH. With the standard `credentials-local` provider, choose the path as follows:
|
|
159
155
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
156
|
+
| Configuration | Credential file |
|
|
157
|
+
|---|---|
|
|
158
|
+
| Default harness home | `~/.dsh/.credentials.yaml` |
|
|
159
|
+
| Custom `DSH_HOME` | `$DSH_HOME/.credentials.yaml` |
|
|
160
|
+
| Explicit `credentials.path` (the provider's `config.path`) | The configured path, overriding the home default |
|
|
161
|
+
|
|
162
|
+
`--profile web` keeps profile packages and patches under `$DSH_HOME/profiles/web`; it does **not** by itself move credentials there. A profile can override `credentials.path`, or its launcher can use another `DSH_HOME`. Use that effective file, not a guessed `profiles/web/.credentials.yaml`.
|
|
163
|
+
|
|
164
|
+
2. In an existing file, add only `OPENAI_API_KEY` under `refs` and preserve all other `refs` and `records`. This is a minimal **new-file example**, with a nonfunctional placeholder:
|
|
165
|
+
|
|
166
|
+
```yaml
|
|
167
|
+
version: 1
|
|
168
|
+
refs:
|
|
169
|
+
OPENAI_API_KEY: "OPENAI_API_KEY_EXAMPLE_ONLY"
|
|
170
|
+
records: {}
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
Replace the placeholder privately with your key. On macOS/Linux, protect the actual file; for the default path:
|
|
174
|
+
|
|
175
|
+
```sh
|
|
176
|
+
chmod 600 "$HOME/.dsh/.credentials.yaml"
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
Use your configured path instead when it differs. The default `watch: true` reloads valid file edits automatically for subsequent requests; restarting DSH is unnecessary. Do not paste keys into chat, screenshots or Git.
|
|
180
|
+
|
|
181
|
+
3. In DSH's command input, select OpenAI and inspect the result:
|
|
182
|
+
|
|
183
|
+
```text
|
|
184
|
+
/kioku-decisions use openai
|
|
185
|
+
/kioku-decisions status
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
`use openai` makes a real API probe, which may incur usage charges. Only a successful probe and save persist the choice for this project and new requests; failure or cancellation keeps the prior choice. Existing requests keep their binding. `status` makes no inference call. Optional `/kioku-decisions probe` makes another real probe.
|
|
189
|
+
|
|
190
|
+
The standard provider resolves **saved file > launch environment > project `.env` > harness-home `.env`**. Environment variables still work when the credentials service is present, unless a saved value overrides them. For an environment-only setup, export the key **before** launching DSH from that shell:
|
|
191
|
+
|
|
192
|
+
```sh
|
|
193
|
+
export OPENAI_API_KEY='OPENAI_API_KEY_EXAMPLE_ONLY'
|
|
164
194
|
```
|
|
165
195
|
|
|
166
|
-
|
|
196
|
+
This is a placeholder, not a usable key. An export in another shell after DSH has started does not update its launch snapshot; use the watched file to update an already running instance. Keep credential-bearing `.env` files out of Git.
|
|
167
197
|
|
|
168
|
-
|
|
198
|
+
Other selections remain available:
|
|
169
199
|
|
|
170
200
|
```text
|
|
171
|
-
/kioku-
|
|
172
|
-
/kioku-decisions
|
|
173
|
-
/kioku-decisions
|
|
201
|
+
/kioku-decisions use jev
|
|
202
|
+
/kioku-decisions use laya
|
|
203
|
+
/kioku-decisions use nimble
|
|
204
|
+
/kioku-decisions use default
|
|
174
205
|
```
|
|
175
206
|
|
|
176
|
-
|
|
207
|
+
Jev uses `TYPESAFE_API_KEY`; `/kioku-typesafe-key` manages only that key, never the OpenAI key. Laya connects to the existing `start-laya` worker at `~/Library/Caches/laya-coreml/worker.sock` using v1 `health`/`predict`. `install-laya` reuses a worker or shows setup instructions. Nimble requires its configured endpoint and model. `use default` restores the plugin configuration.
|
|
177
208
|
|
|
178
|
-
|
|
209
|
+
See [credential precedence, troubleshooting and configuration](docs/typed-decisions.md#openai-credentials), the [official credential-store reference](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/credentials-local/README.md), and the [TypeSafe Lisp API](docs/typesafe.md).
|
|
179
210
|
|
|
180
211
|
Use `aac6fef/laya-multilingual-coreml` for English and other languages. Its 1,024-token input capacity includes the question, options and state; the `-ane` variant allows only 96 tokens. See the [upstream model specifications](https://github.com/mizorewww/laya-coreml#available-checkpoints). After the [initial setup](docs/Laya-CoreML-ja.md), use the following commands. Stop any running Laya worker before starting it with the new model; `LAYA_MODEL` also overrides the old default in an existing worker script.
|
|
181
212
|
|
package/README.zh-CN.md
CHANGED
|
@@ -13,7 +13,7 @@ AgenticReplay 可记录模型和工具活动,查看记录并导出 HTML。
|
|
|
13
13
|
|
|
14
14
|
新的修改任务可以选择普通执行或役小角(enno-oduno)。役小角支持推荐模板,也可从DSH已配置的模型中为各角色选择模型。[模型选择与连接限制](docs/model-selection.md)。
|
|
15
15
|
|
|
16
|
-
可选的[自动模型选择](docs/model-selection.md#automatic-model-selection)默认关闭(`modelAutoMode.mode: off`)。`/kioku-model-auto on | observe | off | status` 仅更改当前会话;`observe` 只记录建议,不更换模型。普通任务需要已就绪的 Jev 或
|
|
16
|
+
可选的[自动模型选择](docs/model-selection.md#automatic-model-selection)默认关闭(`modelAutoMode.mode: off`)。`/kioku-model-auto on | observe | off | status` 仅更改当前会话;`observe` 只记录建议,不更换模型。普通任务需要已就绪的 Jev、Laya 或 OpenAI、dsh-codex,以及 DSH 的模型元数据和 token meter。判定失败时保留当前模型,手动选择优先。
|
|
17
17
|
|
|
18
18
|
记忆功能是可选的。任务结束后,Kiokuko 会询问是否整理记录的经验,显示临时预览,并且只保存用户批准的确切修订版本。自动记忆写入已停用。[审查、回忆与遗忘](docs/replay-memory-review.md)。
|
|
19
19
|
|
|
@@ -114,11 +114,11 @@ DSH 更新后若无法加载 Kiokuko,请参阅[启动恢复步骤](docs/dsh-pl
|
|
|
114
114
|
|
|
115
115
|
[文档](docs/README.md) · [权限](PERMISSIONS.md) · [MIT 许可证](LICENSE)
|
|
116
116
|
|
|
117
|
-
## 类型化判定(Jev / Laya / Nimble)
|
|
117
|
+
## 类型化判定(Jev / Laya / OpenAI / Nimble)
|
|
118
118
|
|
|
119
|
-
可选的[自动模型选择](docs/model-selection.md#automatic-model-selection)会为新的普通任务选择经过验证的 `openai-codex` 模型和推理强度。默认值为 `modelAutoMode.mode: off`;`/kioku-model-auto on | observe | off | status` 仅更改当前会话。`observe` 评估建议,但不更换模型。此功能需要已就绪的 Jev 或
|
|
119
|
+
可选的[自动模型选择](docs/model-selection.md#automatic-model-selection)会为新的普通任务选择经过验证的 `openai-codex` 模型和推理强度。默认值为 `modelAutoMode.mode: off`;`/kioku-model-auto on | observe | off | status` 仅更改当前会话。`observe` 评估建议,但不更换模型。此功能需要已就绪的 Jev、Laya 或 OpenAI 后端、dsh-codex、原生模型元数据和 token meter。分类失败或不可用时保留当前模型;手动选择优先。
|
|
120
120
|
|
|
121
|
-
[回答复核](docs/answer-review.md)在完整插件和模块化核心中默认启用。它通过配置的 Jev、Laya 或 Nimble provider 评估已经显示的普通回答,并可能让同一个主模型重新考虑一次。默认配置为:
|
|
121
|
+
[回答复核](docs/answer-review.md)在完整插件和模块化核心中默认启用。它通过配置的 Jev、Laya、OpenAI 或 Nimble provider 评估已经显示的普通回答,并可能让同一个主模型重新考虑一次。默认配置为:
|
|
122
122
|
|
|
123
123
|
```yaml
|
|
124
124
|
answerReview:
|
|
@@ -128,38 +128,69 @@ answerReview:
|
|
|
128
128
|
|
|
129
129
|
设置 `answerReview.mode: off` 可禁用此功能。它沿用 `typedDecisions` 配置,会增加评估推理(以及最多一轮主模型调用),但不会延迟首次回答。所选 provider 不可用时会跳过复核并保留原回答,不会替换为其他 provider。由于无法检查 worker 内部的截断,Laya v1 的评估结果仅作为未经验证的建议。`/kioku-decisions status` 显示进度与跳过原因,并不证明回答正确。
|
|
130
130
|
|
|
131
|
-
|
|
131
|
+
<a id="openai-decisions-setup"></a>
|
|
132
|
+
### 设置 OpenAI Decisions
|
|
132
133
|
|
|
133
|
-
|
|
134
|
-
/kioku-decisions use jev
|
|
135
|
-
/kioku-decisions use laya
|
|
136
|
-
/kioku-decisions use nimble
|
|
137
|
-
/kioku-decisions use default
|
|
138
|
-
```
|
|
134
|
+
默认仍为 Jev,也可选择 OpenAI、本地 Laya 或 Nimble。OpenAI 使用官方 [Decisions API](https://developers.openai.com/api/docs/guides/decisions) 的 `POST /v1/decisions`;此源码中的默认判定模型为 `gpt-6-luna`。它与主聊天模型的认证分开:ChatGPT/Codex OAuth 登录不会提供 `OPENAI_API_KEY`,TypeSafe/Jev 密钥也不能替代它。
|
|
139
135
|
|
|
140
|
-
|
|
136
|
+
以下步骤对应当前源码,并不表示已发布的 npm `latest` 已包含 OpenAI 支持。如果没有 `use openai`,请先确认已安装 build 支持的命令。
|
|
141
137
|
|
|
142
|
-
|
|
138
|
+
1. 为 OpenAI API 项目创建 API 密钥,添加到运行中的 DSH 使用的凭据存储中。标准 `credentials-local` 按以下规则选择文件:
|
|
143
139
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
140
|
+
| 配置 | 凭据文件 |
|
|
141
|
+
|---|---|
|
|
142
|
+
| 默认 harness home | `~/.dsh/.credentials.yaml` |
|
|
143
|
+
| 自定义 `DSH_HOME` | `$DSH_HOME/.credentials.yaml` |
|
|
144
|
+
| 显式 `credentials.path`(provider 的 `config.path`) | 指定路径,优先于 home 默认值 |
|
|
145
|
+
|
|
146
|
+
`--profile web` 的软件包和 patch 位于 `$DSH_HOME/profiles/web`,但该选项本身不会移动凭据文件。如果 profile 设置了 `credentials.path`,或 launcher 使用另一个 `DSH_HOME`,请编辑实际路径,不要猜测为 `profiles/web/.credentials.yaml`。
|
|
147
|
+
|
|
148
|
+
2. 对于已有文件,只在 `refs` 下添加 `OPENAI_API_KEY`,保留其他所有 `refs` 和 `records`。以下是带有无效示例密钥的**新文件最小示例**:
|
|
149
|
+
|
|
150
|
+
```yaml
|
|
151
|
+
version: 1
|
|
152
|
+
refs:
|
|
153
|
+
OPENAI_API_KEY: "OPENAI_API_KEY_EXAMPLE_ONLY"
|
|
154
|
+
records: {}
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
请在本机私下将示例值替换为真实密钥。macOS/Linux 上将实际文件权限设为600。默认路径的命令为:
|
|
158
|
+
|
|
159
|
+
```sh
|
|
160
|
+
chmod 600 "$HOME/.dsh/.credentials.yaml"
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
如果更改了路径,也请修改命令中的路径。默认 `watch: true` 会自动重新读取有效的文件修改,供后续请求使用,无需重启 DSH。不要把密钥贴到对话、截图或 Git 中。
|
|
164
|
+
|
|
165
|
+
3. 在 DSH 命令输入框中选择 OpenAI 并查看结果:
|
|
166
|
+
|
|
167
|
+
```text
|
|
168
|
+
/kioku-decisions use openai
|
|
169
|
+
/kioku-decisions status
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
`use openai` 的 probe 会调用真实 API,可能产生使用费用。只有 probe 和保存均成功后,才会为本项目的新请求保存选择;失败或取消时保留原选择,进行中的请求仍使用原 binding。`status` 不调用推理。可选的 `/kioku-decisions probe` 会再发送一次真实 probe。
|
|
173
|
+
|
|
174
|
+
标准 provider 的优先级为 **保存文件 > 启动时环境变量 > 项目 `.env` > harness home `.env`**。即使 credentials 服务存在,只要没有更高优先级的保存值,环境变量仍可使用。若只使用环境变量,请在同一 shell 中启动 DSH **之前**设置:
|
|
175
|
+
|
|
176
|
+
```sh
|
|
177
|
+
export OPENAI_API_KEY='OPENAI_API_KEY_EXAMPLE_ONLY'
|
|
148
178
|
```
|
|
149
179
|
|
|
150
|
-
|
|
180
|
+
此值只是不可用的示例。DSH 启动后在其他 shell 中 export 不会更新启动时 snapshot;更新运行中的实例应编辑 watch 监视的文件。含密钥的 `.env` 也不要提交到 Git。
|
|
151
181
|
|
|
152
|
-
|
|
182
|
+
其他选项仍可使用:
|
|
153
183
|
|
|
154
184
|
```text
|
|
155
|
-
/kioku-
|
|
156
|
-
/kioku-decisions
|
|
157
|
-
/kioku-decisions
|
|
185
|
+
/kioku-decisions use jev
|
|
186
|
+
/kioku-decisions use laya
|
|
187
|
+
/kioku-decisions use nimble
|
|
188
|
+
/kioku-decisions use default
|
|
158
189
|
```
|
|
159
190
|
|
|
160
|
-
|
|
191
|
+
Jev 使用 `TYPESAFE_API_KEY`;`/kioku-typesafe-key` 只管理该密钥,不会保存 OpenAI 密钥。Laya 通过 `~/Library/Caches/laya-coreml/worker.sock` 的 v1 `health`/`predict` 连接 `start-laya` 启动的现有 worker。`install-laya` 会复用 worker 或显示设置说明。Nimble 需要预先配置端点和模型。`use default` 恢复插件配置。
|
|
161
192
|
|
|
162
|
-
|
|
193
|
+
详情请参阅[优先级、设置与故障排查](docs/typed-decisions.md#openai-credentials)、[官方凭据存储说明](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/credentials-local/README.md)及 [TypeSafe Lisp API](docs/typesafe.md)。
|
|
163
194
|
|
|
164
195
|
英语及其他语言请使用 `aac6fef/laya-multilingual-coreml`。其 1,024-token 输入容量包括问题、选项和状态;`-ane` 变体仅允许 96 tokens。请参阅[上游模型规格](https://github.com/mizorewww/laya-coreml#available-checkpoints)。完成[初始设置](docs/Laya-CoreML-ja.md)后,使用以下命令。请先停止正在运行的 Laya worker,再使用新模型启动;`LAYA_MODEL` 也会覆盖现有 worker 脚本中的旧默认值。
|
|
165
196
|
|
package/dist/dsh/setup.d.ts
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
export declare const DSH_MANAGED_BLOCK = "<!-- BEGIN KIOKUKO-DSH MANAGED BLOCK -->\n<!-- kiokuko-dsh-template-version: 3 -->\n<!-- Managed by kiokuko-dsh setup on plugin load. Edit outside the markers. -->\n\n## Kiokuko DSH\n\nApply this entire block only when the current host is DSH and kiokuko-dsh is enabled for this session.\nOtherwise ignore every instruction in this block, including Skill routing, tools, planning, memory and completion rules.\nThe presence of this block, repository files or installed packages does not activate it.\nOnly kiokuko-dsh may update this block; other plugins and agents must preserve it verbatim.\nDo not apply kiokuko or kiokuko-ai instruction blocks as kiokuko-dsh configuration.\n\nBefore any non-trivial Kiokuko-governed DSH work, read and apply the complete bundled `kiokuko-soul` Skill before any other Kiokuko Skill. The DSH host performs Akinator intake, binds the native session and complete capability catalog, and resolves actionable intake. Optional enrichment failures are degraded guidance. For new build, debug, review and devops tasks the host separately asks for normal execution or Enno and, when selected, a template or custom model configuration. Unanswered execution choices stay pending. Normal execution never creates an Enno contract or WorkUnit; preserve memory, Skills, native permissions and focused verification. Model routing and child delegation are host-owned. `task_prepare` and `task_answer` are host operations, not model tools. DSH intake belongs to the kiokuko-dsh host. Never substitute same-named task_prepare/task_answer MCP tools from kiokuko or kiokuko-ai. A failed external MCP call does not prove DSH intake failed; preserve the admitted host state and follow its current directive. Follow the admitted state and current directive, then route to `kiokuko-enno-oduno`, `kiokuko-simple-work`, `kiokuko-single-purpose-functions`, and `kiokuko-ui-design-soul` only when applicable. For changes spanning setup, delivery, persisted state, or runtime handoffs, apply `veteran-programmer-skill` before and after implementation. When writing or changing code, also apply `one-shot-software-completion` and `coding-ideal-routine-skill` through the SOUL route. Read every applicable specialist `SKILL.md` index, then only the expert fragments selected by the current WorkUnit or concrete risk. Never substitute, install, or execute fetched external Skill content.\n\nThe host owns request identity, session binding, memory delivery and finalization.\nUse its admitted workspace and directive; do not read or modify the SQLite file directly.\n\nUse kioku_read, kioku_write, kioku_edit, kioku_remove, kioku_exec and kioku_result for host-observed development. Project edits, external investigation, PATH commands, bash/zsh and builds/tests need no extra approval. Source/data deletion and durable user database mutations require concrete review; declare destructiveTargets for commands. Generated/temp/disposable artifacts are ordinary development. Lisp and normal tools coexist. Plan, goal, cancellation and execution ownership remain authoritative. Explicit human implementation instructions request Plan exit at the next accepted step; presenting a plan alone does not exit. Bind task_completion checks and relevant source/test/config paths before execution. Collect asynchronous final results. Host receipts distinguish work outcome, verification and saving; model fields such as passed cannot supply proof. Apply recalled candidates only after comparing conditions, provenance and source versions; old verification is not current success. After task completion ask permission to organize memories, show the exact proposal, and save only the approved revision. Comments require revision and another preview; decline saves nothing. Saving failures do not stop coding. Reconcile uncertain saves by the original approval key; never blindly create a new save identity or replay edits or commands.\n\nDiscover unfamiliar repository filenames with native glob/grep before read; use an exact returned path. Never infer a test filename from a source basename or treat remembered/example paths as current filesystem evidence. Explicit user targets may be read directly; if missing, report that fact and discover relevant alternatives without silently changing the requested target. After a not-found error, do not repeat the unchanged read or assume a sandbox/configuration fault; check current path evidence. Do not create placeholder files or silently substitute another target to hide a missing-file error.\n\n### Engineering changes\n\nFor generated artifacts, update the owning schema, template or generator, then use the repository's documented regeneration path and inspect the resulting diff; do not patch only the output.\n\n### UI design\n\nChoose design tokens by semantic role, not by current appearance. If a role is missing, extend the design system instead of repurposing an unrelated token; when changing theme contracts, verify supported light, dark and custom-theme fallback behavior.\n\n<!-- END KIOKUKO-DSH MANAGED BLOCK -->";
|
|
2
|
+
interface DshBlockLocation {
|
|
3
|
+
readonly start: number;
|
|
4
|
+
readonly end: number;
|
|
5
|
+
}
|
|
6
|
+
/** Locate one complete DSH-owned block and reject ambiguous ownership markers. */
|
|
7
|
+
export declare function locateDshBlock(existing: string): DshBlockLocation | undefined;
|
|
2
8
|
/** Replace only a DSH-owned block, preserving every other product's instructions. */
|
|
3
9
|
export declare function renderDshInstructions(existing: string): string;
|
|
10
|
+
/** Remove only a DSH-owned block and its following setup separator newline. */
|
|
11
|
+
export declare function renderDshRemoval(existing: string): string;
|
|
4
12
|
/** Preflight both destinations before writing. A read-only check reports the same plan. */
|
|
5
13
|
export declare function setupDsh(options?: {
|
|
6
14
|
homeDirectory?: string;
|
|
@@ -19,5 +27,19 @@ export declare function setupDsh(options?: {
|
|
|
19
27
|
status: string;
|
|
20
28
|
};
|
|
21
29
|
}>;
|
|
30
|
+
/** Explicitly retire matching deployed Skills and remove this product's AGENTS.md block. */
|
|
31
|
+
export declare function removeDshSetup(options?: {
|
|
32
|
+
homeDirectory?: string;
|
|
33
|
+
cwd?: string;
|
|
34
|
+
check?: boolean;
|
|
35
|
+
}): Promise<{
|
|
36
|
+
current: boolean;
|
|
37
|
+
skills: import("./standard-skill-deployment.js").StandardSkillRetirement;
|
|
38
|
+
instructions: {
|
|
39
|
+
path: string;
|
|
40
|
+
status: string;
|
|
41
|
+
};
|
|
42
|
+
}>;
|
|
22
43
|
export declare function setupDshOnLoad(): Promise<void>;
|
|
44
|
+
export {};
|
|
23
45
|
//# sourceMappingURL=setup.d.ts.map
|
package/dist/dsh/setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/dsh/setup.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,iBAAiB,88JA6BvB,CAAA;AAEP,qFAAqF;AACrF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/dsh/setup.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,iBAAiB,88JA6BvB,CAAA;AAEP,UAAU,gBAAgB;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB;AAED,kFAAkF;AAClF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAoB7E;AAED,qFAAqF;AACrF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED,+EAA+E;AAC/E,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAOzD;AAYD,2FAA2F;AAC3F,wBAAsB,QAAQ,CAAC,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO;;;;;;;;;;;;GAoBrG;AAYD,4FAA4F;AAC5F,wBAAsB,cAAc,CAAC,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO;;;;;;;GAa3G;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAUpD"}
|