@mstar-harness/dsh 3.6.0-alpha.4 → 3.6.0

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/README.i18n.yaml CHANGED
@@ -1,6 +1,6 @@
1
- # Translation pairing record for the @mstar-harness/dsh package README pair.
1
+ # packages/dsh README language-pair confirmation.
2
2
  # Blob hashes (git hash-object) of each side as of the last confirmation that
3
3
  # both languages say the same thing (dsh i18n contract: a pair is three
4
4
  # sibling files; editing either side obligates re-confirming and re-recording).
5
- README.md: 3c746f34f77909574207ce1e7e57e9a913f8600e
6
- README.zh.md: 9a49488d93d71900a46cf62623a842b6e2fdd845
5
+ README.md: a791ed87500a5164387bbb72277bb1d09406937b
6
+ README.zh.md: 9c9cc7399c34045c52ab72167e4a40779c9f917e
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  English | [中文](README.zh.md)
4
4
 
5
- ![dsh](https://img.shields.io/badge/dsh-0.1.2--alpha.5-4B32C3.svg)
5
+ ![dsh](https://img.shields.io/badge/dsh-0.1.2--rc.1-4B32C3.svg)
6
6
 
7
7
  [Morning Star](https://github.com/btspoony/mstar-harness) as a first-class dsh (DeepSeek Harness) host — a cordis function plugin that mounts the mstar engine in-process, implements the engine `HostAdapter` (`host: 'dsh'`), guards `{HARNESS_DIR}/status.json` writes (validate + advisory; repair-escape under hard), blocks disallowed subagent dispatches when `Enforcement: hard` is on, lints `SKILL.md` writes under the mounted skill roots, mounts the mstar `skills/` mirror through the dsh skill-filesystem provider (single canonical mount), and appends a durable `mstar-engine-status` catalog row to every composed agent step. Boot with a dsh Loader app; everything acts through the seam's refusal/advisory channels, never by patching the tools.
8
8
 
package/README.zh.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [English](README.md) | 中文
4
4
 
5
- ![dsh](https://img.shields.io/badge/dsh-0.1.2--alpha.5-4B32C3.svg)
5
+ ![dsh](https://img.shields.io/badge/dsh-0.1.2--rc.1-4B32C3.svg)
6
6
 
7
7
  让 [Morning Star](https://github.com/btspoony/mstar-harness) 成为一等公民的 dsh(DeepSeek Harness)宿主——一个 cordis 函数插件,将 mstar engine 进程内挂载,实现 engine `HostAdapter`(`host: 'dsh'`),守护 `{HARNESS_DIR}/status.json` 写入(校验 + 咨询;hard 下按修复逃生放行),在 `Enforcement: hard` 开启时阻止被禁止的 subagent 派发,对挂载技能根下的 `SKILL.md` 写入执行技能撰写 lint,通过 dsh skill-filesystem 提供者挂载 mstar `skills/` 镜像(单一规范挂载),并向每个组合后的 agent 步骤追加一条持久化的 `mstar-engine-status` catalog 行。随 dsh Loader 应用启动;一切均通过 seam 的拒绝/咨询通道行使职责,从不改动工具本身。
8
8
 
package/dist/client.js CHANGED
@@ -6,46 +6,69 @@ var __defProp = Object.defineProperty;
6
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
7
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
8
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ function __accessProp(key) {
10
+ return this[key];
11
+ }
12
+ var __toESMCache_node;
13
+ var __toESMCache_esm;
9
14
  var __toESM = (mod, isNodeMode, target) => {
15
+ var canCache = mod != null && typeof mod === "object";
16
+ if (canCache) {
17
+ var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
18
+ var cached = cache.get(mod);
19
+ if (cached)
20
+ return cached;
21
+ }
10
22
  target = mod != null ? __create(__getProtoOf(mod)) : {};
11
23
  const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
12
- for (let key of __getOwnPropNames(mod))
13
- if (!__hasOwnProp.call(to, key))
14
- __defProp(to, key, {
15
- get: () => mod[key],
16
- enumerable: true
17
- });
24
+ if (mod && typeof mod === "object" || typeof mod === "function") {
25
+ for (let key of __getOwnPropNames(mod))
26
+ if (!__hasOwnProp.call(to, key))
27
+ __defProp(to, key, {
28
+ get: __accessProp.bind(mod, key),
29
+ enumerable: true
30
+ });
31
+ }
32
+ if (canCache)
33
+ cache.set(mod, to);
18
34
  return to;
19
35
  };
20
- var __moduleCache = /* @__PURE__ */ new WeakMap;
21
36
  var __toCommonJS = (from) => {
22
- var entry = __moduleCache.get(from), desc;
37
+ var entry = (__moduleCache ??= new WeakMap).get(from), desc;
23
38
  if (entry)
24
39
  return entry;
25
40
  entry = __defProp({}, "__esModule", { value: true });
26
- if (from && typeof from === "object" || typeof from === "function")
27
- __getOwnPropNames(from).map((key) => !__hasOwnProp.call(entry, key) && __defProp(entry, key, {
28
- get: () => from[key],
29
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
30
- }));
41
+ if (from && typeof from === "object" || typeof from === "function") {
42
+ for (var key of __getOwnPropNames(from))
43
+ if (!__hasOwnProp.call(entry, key))
44
+ __defProp(entry, key, {
45
+ get: __accessProp.bind(from, key),
46
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
47
+ });
48
+ }
31
49
  __moduleCache.set(from, entry);
32
50
  return entry;
33
51
  };
52
+ var __moduleCache;
53
+ var __returnValue = (v) => v;
54
+ function __exportSetter(name, newValue) {
55
+ this[name] = __returnValue.bind(null, newValue);
56
+ }
34
57
  var __export = (target, all) => {
35
58
  for (var name in all)
36
59
  __defProp(target, name, {
37
60
  get: all[name],
38
61
  enumerable: true,
39
62
  configurable: true,
40
- set: (newValue) => all[name] = () => newValue
63
+ set: __exportSetter.bind(all, name)
41
64
  });
42
65
  };
43
66
 
44
67
  // src/client/index.ts
45
68
  var exports_client = {};
46
69
  __export(exports_client, {
47
- inject: () => inject,
48
- apply: () => apply
70
+ apply: () => apply,
71
+ inject: () => inject
49
72
  });
50
73
  module.exports = __toCommonJS(exports_client);
51
74
 
package/dist/index.js CHANGED
@@ -3,21 +3,37 @@ var __getProtoOf = Object.getPrototypeOf;
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ function __accessProp(key) {
7
+ return this[key];
8
+ }
9
+ var __toESMCache_node;
10
+ var __toESMCache_esm;
6
11
  var __toESM = (mod, isNodeMode, target) => {
12
+ var canCache = mod != null && typeof mod === "object";
13
+ if (canCache) {
14
+ var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
15
+ var cached = cache.get(mod);
16
+ if (cached)
17
+ return cached;
18
+ }
7
19
  target = mod != null ? __create(__getProtoOf(mod)) : {};
8
20
  const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
9
- for (let key of __getOwnPropNames(mod))
10
- if (!__hasOwnProp.call(to, key))
11
- __defProp(to, key, {
12
- get: () => mod[key],
13
- enumerable: true
14
- });
21
+ if (mod && typeof mod === "object" || typeof mod === "function") {
22
+ for (let key of __getOwnPropNames(mod))
23
+ if (!__hasOwnProp.call(to, key))
24
+ __defProp(to, key, {
25
+ get: __accessProp.bind(mod, key),
26
+ enumerable: true
27
+ });
28
+ }
29
+ if (canCache)
30
+ cache.set(mod, to);
15
31
  return to;
16
32
  };
17
33
  var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
18
34
 
19
- // ../../node_modules/cosmokit/lib/index.cjs
20
- var require_lib = __commonJS((exports, module) => {
35
+ // ../../node_modules/.bun/cosmokit@1.8.1/node_modules/cosmokit/lib/index.cjs
36
+ var require_lib = __commonJS(function(exports, module) {
21
37
  var __defProp2 = Object.defineProperty;
22
38
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
23
39
  var __getOwnPropNames2 = Object.getOwnPropertyNames;
@@ -411,8 +427,8 @@ var require_lib = __commonJS((exports, module) => {
411
427
  })(Time || (Time = {}));
412
428
  });
413
429
 
414
- // ../../node_modules/schemastery/lib/index.cjs
415
- var require_lib2 = __commonJS((exports, module) => {
430
+ // ../../node_modules/.bun/schemastery@3.18.0/node_modules/schemastery/lib/index.cjs
431
+ var require_lib2 = __commonJS(function(exports, module) {
416
432
  var __defProp2 = Object.defineProperty;
417
433
  var __name = (target, value) => __defProp2(target, "name", { value, configurable: true });
418
434
  var import_cosmokit = require_lib();
@@ -663,7 +679,7 @@ var require_lib2 = __commonJS((exports, module) => {
663
679
  Schema.extend = /* @__PURE__ */ __name(function extend(type, resolve22) {
664
680
  resolvers[type] = resolve22;
665
681
  }, "extend");
666
- Schema.resolve = /* @__PURE__ */ __name(function resolve(data, schema, options = {}, strict = false) {
682
+ Schema.resolve = /* @__PURE__ */ __name(function resolve4(data, schema, options = {}, strict = false) {
667
683
  if (!schema)
668
684
  return [data];
669
685
  if (options.ignore?.(data, schema))
@@ -8573,35 +8589,35 @@ function apply(ctx, config) {
8573
8589
  registerSeamTools(ctx, resolver);
8574
8590
  }
8575
8591
  export {
8576
- skillLocalConfig,
8577
- setRolePersonaLogger,
8578
- setRolePersonaAgentsDir,
8579
- setAdvisoryLogger,
8580
- runFallbacksAdvisory,
8581
- registerRolePersonaChannel,
8582
- recordWorkflowVerdict,
8583
- recordSettle,
8584
- recordDispatch,
8585
- readAgentFlow,
8586
- name,
8587
- lintSkillWrite,
8588
- lintSkillDoc,
8589
- lintSeamWrite,
8590
- lintRolesWrite,
8591
- lintDesignMdWrite,
8592
- lintCompoundWrite,
8593
- lintAuditWrite,
8594
- inject,
8595
- apply,
8596
- SkillLintVetoError,
8597
- SeamVetoError,
8598
- SETTLE_SEAM,
8599
- ROLE_PERSONA_LOGGER,
8600
- HarnessResolver,
8601
- DshMstar,
8602
- DshHostAdapter,
8603
- Config,
8604
- AGENT_FLOW_MAX_EVENTS,
8592
+ ADVISORY_LOGGER,
8605
8593
  AGENT_FLOW_FILE,
8606
- ADVISORY_LOGGER
8594
+ AGENT_FLOW_MAX_EVENTS,
8595
+ Config,
8596
+ DshHostAdapter,
8597
+ DshMstar,
8598
+ HarnessResolver,
8599
+ ROLE_PERSONA_LOGGER,
8600
+ SETTLE_SEAM,
8601
+ SeamVetoError,
8602
+ SkillLintVetoError,
8603
+ apply,
8604
+ inject,
8605
+ lintAuditWrite,
8606
+ lintCompoundWrite,
8607
+ lintDesignMdWrite,
8608
+ lintRolesWrite,
8609
+ lintSeamWrite,
8610
+ lintSkillDoc,
8611
+ lintSkillWrite,
8612
+ name,
8613
+ readAgentFlow,
8614
+ recordDispatch,
8615
+ recordSettle,
8616
+ recordWorkflowVerdict,
8617
+ registerRolePersonaChannel,
8618
+ runFallbacksAdvisory,
8619
+ setAdvisoryLogger,
8620
+ setRolePersonaAgentsDir,
8621
+ setRolePersonaLogger,
8622
+ skillLocalConfig
8607
8623
  };
package/dist/invariant.js CHANGED
@@ -3,15 +3,31 @@ var __getProtoOf = Object.getPrototypeOf;
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ function __accessProp(key) {
7
+ return this[key];
8
+ }
9
+ var __toESMCache_node;
10
+ var __toESMCache_esm;
6
11
  var __toESM = (mod, isNodeMode, target) => {
12
+ var canCache = mod != null && typeof mod === "object";
13
+ if (canCache) {
14
+ var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
15
+ var cached = cache.get(mod);
16
+ if (cached)
17
+ return cached;
18
+ }
7
19
  target = mod != null ? __create(__getProtoOf(mod)) : {};
8
20
  const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
9
- for (let key of __getOwnPropNames(mod))
10
- if (!__hasOwnProp.call(to, key))
11
- __defProp(to, key, {
12
- get: () => mod[key],
13
- enumerable: true
14
- });
21
+ if (mod && typeof mod === "object" || typeof mod === "function") {
22
+ for (let key of __getOwnPropNames(mod))
23
+ if (!__hasOwnProp.call(to, key))
24
+ __defProp(to, key, {
25
+ get: __accessProp.bind(mod, key),
26
+ enumerable: true
27
+ });
28
+ }
29
+ if (canCache)
30
+ cache.set(mod, to);
15
31
  return to;
16
32
  };
17
33
  var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
@@ -23,7 +39,7 @@ var inject = ["invariants"];
23
39
  var install = () => {};
24
40
  var apply = (ctx) => Promise.resolve(ctx.invariants.register(PACKAGE_NAME, install));
25
41
  export {
26
- name,
42
+ apply,
27
43
  inject,
28
- apply
44
+ name
29
45
  };
@@ -8,17 +8,17 @@ Parallel PM dispatch: read **`parallel-dispatch.md`** when dispatching **N ≥ 2
8
8
 
9
9
  ## omp-only context
10
10
 
11
- - Plugin markers: **`.omp-plugin/plugin.json`** (Morning Star host marker) and **`.claude-plugin/plugin.json`** (Claude-compatible marketplace discovery). Plugin root is the **repo root**; paths stay `./skills/`, `./commands/`, `./agents/`.
12
- - Runtime skills: repo `skills/` discovered after `omp plugin install` / `omp plugin link` (OMP extension-package sub-discovery) or Claude marketplace install.
13
- - Plugin commands: repo `commands/<name>.md` → slash **`/<name>`** (e.g. `/iteration-start`). omp uses the **filename** as the command name (no `morning-star-harness:` prefix).
14
- - Plugin agents: repo **`agents/*.md`** are discovered into the live **`task.agent`** list after install/link + reload. Morning Star **subagent** role ids (`product-manager`, `architect`, `fullstack-dev`, `qc-specialist`, …) are valid `agent` values **when listed** — see C5. `project-manager` is **`mode: primary`** (orchestration seat), not a typical `task` dispatch target.
11
+ - Plugin markers: **`.omp-plugin/plugin.json`** (Morning Star host marker) and **`.claude-plugin/plugin.json`** (Claude-compatible marketplace discovery). The **npm package** (`@mstar-harness/omp`) ships its own package-root `plugin.json` + `skills/` + `commands/` + `agents/` + `hooks/` + `tools/` mirrors; the **maintainer link path** is now `<repo>/packages/omp` (built) — hooks/tools moved into the package (2026-09-03), so linking the repo root provides skills/commands/agents only, with NO runtime gates.
12
+ - Runtime skills: package `skills/` (or repo `skills/` on the link path) discovered after `omp plugin install` / `omp plugin link` (OMP extension-package sub-discovery) or Claude marketplace install.
13
+ - Plugin commands: `commands/<name>.md` → slash **`/<name>`** (e.g. `/iteration-start`). omp uses the **filename** as the command name (no `morning-star-harness:` prefix).
14
+ - Plugin agents: **`agents/*.md`** are discovered into the live **`task.agent`** list after install/link + reload. Morning Star **subagent** role ids (`product-manager`, `architect`, `fullstack-dev`, `qc-specialist`, …) are valid `agent` values **when listed** — see C5. `project-manager` is **`mode: primary`** (orchestration seat), not a typical `task` dispatch target.
15
15
  - **No Kimi-style `sessionStart.skill`** — enter PM manually via **`/skill:pm`** (or the `pm` skill), then **Read next** → `mstar-harness-core` → `project-manager.md`.
16
16
  - Install (user-scoped, recommended):
17
- - `omp plugin install github:btspoony/mstar-harness`
17
+ - `omp plugin install @mstar-harness/omp`
18
18
  - or CLI: `npx @mstar-harness/cli init --target omp --scope global` (links `~/.mstar/harness`)
19
- - Project scope: `omp plugin install github:btspoony/mstar-harness --scope project` or `npx @mstar-harness/cli init --target omp --scope project`.
20
- - Local maintainers: `omp plugin link /path/to/mstar-harness` (or the CLI-managed `~/.mstar/harness` checkout).
21
- - After install/link: `omp plugin list` should show package **`morning-star`** (root `package.json` name). Reload / new session to pick up skills, commands, and agents.
19
+ - Project scope: `omp plugin install @mstar-harness/omp --scope project` or `npx @mstar-harness/cli init --target omp --scope project`.
20
+ - Local maintainers: `omp plugin link /path/to/mstar-harness/packages/omp` (or the CLI-managed `~/.mstar/harness/packages/omp` checkout) — the linked package tree resolves the engine via the workspace member, so run `bun install && bun run engine:build && bun run --cwd packages/omp build` in the checkout first. Linking the repo root no longer provides the runtime gates (hooks/tools moved into the package); the npm install stays the primary path.
21
+ - After install/link: `omp plugin list` should show package **`@mstar-harness/omp`** (npm) or **`morning-star`** (root `package.json` name, link path). Reload / new session to pick up skills, commands, and agents.
22
22
 
23
23
  ## Skill loading
24
24
 
@@ -210,10 +210,10 @@ Cannot emit required **N** → **`Blocked`**.
210
210
 
211
211
  ## In-process engine binding (omp ≥ 17.2.11)
212
212
 
213
- - **Surfaces** (repo root = plugin root): `hooks/pre/mstar-gates.ts` — one `tool_call` pre-hook that returns `{ block: true, reason }` (structured refusal the model sees as the tool error) or `undefined` (pass); `tools/mstar_{status_validate,dispatch_validate,lease_verify,path_resolve,iteration_gate,worktree_check}/index.ts` — six model-callable validator tools (engine validators only, Zod params via `pi.zod`).
213
+ - **Surfaces** (npm package root = plugin root; sources live in `packages/omp/src/`): `hooks/pre/mstar-gates.js` — one `tool_call` pre-hook that returns `{ block: true, reason }` (structured refusal the model sees as the tool error) or `undefined` (pass); `tools/mstar_{status_validate,dispatch_validate,lease_verify,path_resolve,iteration_gate,worktree_check}.js` — six model-callable validator tools (engine validators only, Zod params via `pi.zod`). omp discovers these by convention from the installed package root (`<pkg>/hooks/pre/` any file, `<pkg>/tools/` direct `*.js` files — the sub-directory scan only accepts `tools/<name>/index.ts`), not from `dist/`.
214
214
  |- **Enforcement semantics**: block ONLY under `Enforcement: hard`. Both gates read the repo `.mstarc` `[config] enforcement`, else the harness compass frontmatter (`enforcement: hard`, active/locked iterations only); the dispatch gate ALSO honors each Assignment's own header flag (`assignmentHeaderRegion` — a body example never hardens). A hard repo setting therefore hardens flag-less dispatches (Gate 1 / dsh `resolveDispatchHard` parity). Soft-mode dispatch violations are warn-logged through the extension logger (never blocked); soft status-write violations stay a silent pass. Rollback = unset the flag (or `.mstarc` `soft`). Never global.
215
215
  - **Anti-recursion scope (issue #156)**: the engine's `antiRecursionPrecheck` is **caller-scoped** — it compares the DISPATCHING agent's own role against the new Assignment's `Execute as`. omp's `tool_call` event carries no caller identity and the task entry `agent` is the spawn TARGET, which equals `Execute as` on every compliant dispatch (C5 above) — so Gate 2 does NOT run the precheck on omp (the pre-#156 wiring hard-blocked every compliant hard-mode dispatch on `self-type`, or on `empty-binding` when `agent` was omitted). The NEVER red line stays prompt-level on this host (`mstar-dispatch-gates`); dsh enforces it in-engine via Config `dispatchBinding`.
216
- - **Engine dependency**: the adapters import the published engine package (root `package.json` `dependencies` entry). omp git/npm plugin installs run `bun install <spec>` in the plugins tree declared deps installed; a bare `-l` / `omp plugin link` symlink install without `node_modules` cannot resolve the modules.
216
+ - **Engine dependency**: the npm package **bundles the engine inline** into every hook/tool bundle at build time — zero runtime package resolution, so module link can never fail on a missing package (the 2026-09-03 hotfix for the bare-import load failure). The maintainer `omp plugin link` path (now `<repo>/packages/omp`) still resolves the engine via the workspace member — run `bun install && bun run engine:build && bun run --cwd packages/omp build` in the checkout first (the member's `dist/` and the package's generated mirrors are gitignored).
217
217
  - **Graceful degradation (explicit)**: module load failure → `mstar_*` tools skipped, hook absent (no blocking), `commands/*.md` shell-out fallback intact. Caveat: a partial failure is SILENT — no in-band signal that gates are off; verify with `omp -p '/extensions'`.
218
218
  |- **`MSTAR_HARNESS_DIR` override / `.mstarc`**: the hook and tools discover `{HARNESS_DIR}` via `resolveHarnessDir` — a repo `.mstarc` `[config] harness_dir` (gitignored local config) first, then the probe `.mstar/` → `.agents/` → `.plans/`/`plans/`. Repos using a non-standard harness root can declare it in `.mstarc` or MUST export `MSTAR_HARNESS_DIR` (absolute path) in the omp session env — without either the status gate does not cover those roots and tools like `mstar_path_resolve` / `mstar_lease_verify` error out (parity with the opencode binding).
219
219
  - **Edit-path limitation**: the status gate validates the on-disk file for `edit` events (pre-edit state) — a corrupting edit is caught by the next write or `mstar_status_validate` (known v1 limitation, parity with opencode).
@@ -234,7 +234,7 @@ Cannot emit required **N** → **`Blocked`**.
234
234
 
235
235
  ## Gotchas
236
236
 
237
- - Installed npm/git plugin package name is root **`morning-star`** (`package.json`); Morning Star display name remains **morning-star-harness**.
237
+ - Installed npm plugin package name is **`@mstar-harness/omp`** (git/link path: root **`morning-star`**); Morning Star display name remains **morning-star-harness**.
238
238
  - Marketplace (Claude) installs and `omp plugin install` are different discovery providers — prefer one install path per machine to avoid duplicate skill listings.
239
239
  - Session plan UI / todos are not durable SSOT unless mirrored to `{HARNESS_DIR}`.
240
240
  - After install/link, **reload / new session** so `agents/*.md` appear in the live `task.agent` list — stale sessions may only show host generics and wrongly push you to `agent: "task"`.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mstar-harness/dsh",
3
- "version": "3.6.0-alpha.4",
3
+ "version": "3.6.0",
4
4
  "description": "Morning Star harness dsh (DeepSeek Harness) cordis function plugin — in-process engine gates (status/dispatch/lease) with hard refusal channels.",
5
5
  "keywords": [
6
6
  "dsh",
@@ -65,24 +65,32 @@
65
65
  },
66
66
  "peerDependencies": {
67
67
  "@deepseek-ai/cordis": "^4.0.2",
68
- "@deepseek-ai/dsh-agent": "^0.1.2-alpha.5",
69
- "@deepseek-ai/dsh-api-session-controller": "^0.1.2-alpha.5",
70
- "@deepseek-ai/dsh-client-locale": "^0.1.2-alpha.5",
71
- "@deepseek-ai/dsh-client-store": "^0.1.2-alpha.5",
72
- "@deepseek-ai/dsh-client-ui-chat": "^0.1.2-alpha.5",
73
- "@deepseek-ai/dsh-client-ui-conversation": "^0.1.2-alpha.5",
74
- "@deepseek-ai/dsh-client-ui-renderer": "^0.1.2-alpha.5",
75
- "@deepseek-ai/dsh-client-ui-slots": "^0.1.2-alpha.5",
76
- "@deepseek-ai/dsh-commands": "^0.1.2-alpha.5",
77
- "@deepseek-ai/dsh-fs": "^0.1.2-alpha.5",
78
- "@deepseek-ai/dsh-invariants": "^0.1.2-alpha.5",
79
- "@deepseek-ai/dsh-jobs": "^0.1.2-alpha.5",
80
- "@deepseek-ai/dsh-llm": "^0.1.2-alpha.5",
81
- "@deepseek-ai/dsh-skill": "^0.1.2-alpha.5",
82
- "@deepseek-ai/dsh-skill-filesystem": "^0.1.2-alpha.5",
83
- "@deepseek-ai/dsh-tools": "^0.1.2-alpha.5",
84
- "@deepseek-ai/dsh-util-time": "^0.1.2-alpha.5",
85
- "@deepseek-ai/dsh-util-workspace-path": "^0.1.2-alpha.5"
68
+ "@deepseek-ai/dsh-agent": "^0.1.2-rc.1",
69
+ "@deepseek-ai/dsh-api-session-controller": "^0.1.2-rc.1",
70
+ "@deepseek-ai/dsh-client-locale": "^0.1.2-rc.1",
71
+ "@deepseek-ai/dsh-client-store": "^0.1.2-rc.1",
72
+ "@deepseek-ai/dsh-client-ui-chat": "^0.1.2-rc.1",
73
+ "@deepseek-ai/dsh-client-ui-conversation": "^0.1.2-rc.1",
74
+ "@deepseek-ai/dsh-client-ui-primitives": "^0.1.2-rc.1",
75
+ "@deepseek-ai/dsh-client-ui-renderer": "^0.1.2-rc.1",
76
+ "@deepseek-ai/dsh-client-ui-slots": "^0.1.2-rc.1",
77
+ "@deepseek-ai/dsh-commands": "^0.1.2-rc.1",
78
+ "@deepseek-ai/dsh-fs": "^0.1.2-rc.1",
79
+ "@deepseek-ai/dsh-invariants": "^0.1.2-rc.1",
80
+ "@deepseek-ai/dsh-jobs": "^0.1.2-rc.1",
81
+ "@deepseek-ai/dsh-llm": "^0.1.2-rc.1",
82
+ "@deepseek-ai/dsh-scope": "^0.1.2-rc.1",
83
+ "@deepseek-ai/dsh-session": "^0.1.2-rc.1",
84
+ "@deepseek-ai/dsh-settings": "^0.1.2-rc.1",
85
+ "@deepseek-ai/dsh-skill": "^0.1.2-rc.1",
86
+ "@deepseek-ai/dsh-skill-filesystem": "^0.1.2-rc.1",
87
+ "@deepseek-ai/dsh-subagent": "^0.1.2-rc.1",
88
+ "@deepseek-ai/dsh-system-prompt": "^0.1.2-rc.1",
89
+ "@deepseek-ai/dsh-tools": "^0.1.2-rc.1",
90
+ "@deepseek-ai/dsh-typert-protocol": "^0.1.2-rc.1",
91
+ "@deepseek-ai/dsh-util-time": "^0.1.2-rc.1",
92
+ "@deepseek-ai/dsh-util-workspace-path": "^0.1.2-rc.1",
93
+ "@deepseek-ai/schemastery": "^3.18.1"
86
94
  },
87
95
  "publishConfig": {
88
96
  "access": "public"
@@ -93,7 +101,7 @@
93
101
  "@types/react": "~18.3.1",
94
102
  "js-yaml": "^4.1.0",
95
103
  "bun-types": "^1.2.17",
96
- "dsh-llm-fallbacks": "^0.4.0-alpha.1",
104
+ "dsh-llm-fallbacks": "0.4.1",
97
105
  "schemastery": "^3.18.0",
98
106
  "typescript": "^5.9.3",
99
107
  "vitest": "^4.1.8",