martty 0.3.3-beta.1 → 0.3.3

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.
Files changed (2) hide show
  1. package/README.md +42 -10
  2. package/package.json +7 -7
package/README.md CHANGED
@@ -24,7 +24,7 @@ x64. Requires Node.js 22.19+.
24
24
 
25
25
  ```sh
26
26
  npm install --global martty
27
- martty
27
+ martty-cli # the first launch creates `martty`; use `martty` afterwards
28
28
  ```
29
29
 
30
30
  Martty directly depends on our `@openma/deepseek-harness-acp` implementation.
@@ -46,6 +46,38 @@ The profile command is the recommended install and upgrade path. It creates a
46
46
  missing profile and installs the TUI plus its ACP dependency; no global
47
47
  `martty` installation is required.
48
48
 
49
+ dsh installs plugins with pnpm. Martty declares no install lifecycle scripts
50
+ (`preinstall`/`install`/`postinstall`), so it installs under pnpm's strict
51
+ build-script policy (`ERR_PNPM_IGNORED_BUILDS`) without `--ignore-scripts`. A
52
+ profile where an install of 0.3.2 or earlier failed (`martty` is a dependency
53
+ but not in `dsh.profile.bundles`) needs `dsh plugin --profile martty remove
54
+ martty` and then `add` again.
55
+
56
+ With such a profile in place, the npm entry point attaches to it too:
57
+
58
+ ```sh
59
+ npx martty --dsh martty # same as dsh --profile martty, after a version check
60
+ ```
61
+
62
+ ## Harness resolution and supported dsh
63
+
64
+ 1. Default (`martty` / `npx martty`): the bundled `@openma/deepseek-harness-acp`
65
+ and its bundled dsh runtime; ambient installs never override it.
66
+ 2. `--dsh <profile>`: the global `dsh` on `PATH` with that profile — a profile
67
+ carrying `martty` gets the terminal, one carrying only dsh-acp becomes the
68
+ ACP agent. Below the dsh floor Martty falls back to (1) and shows a short
69
+ notice (`/dismiss` hides it).
70
+ 3. As a dsh plugin (`dsh --profile martty`): the hosting dsh.
71
+ 4. An explicit dsh path in a harness recipe (`--dsh-path` / `DSH_PATH`).
72
+
73
+ Supported dsh is a floor, `>=0.1.7-rc.2` (`engines.dsh`, which dsh's own plugin
74
+ compatibility check reads), never an exact list. Newer dsh releases are
75
+ attempted — API differences are feature-detected, and a dsh newer than the
76
+ newest tested one (`0.2.1-rc.2`) only warns. Below the floor, or when the Host
77
+ lacks a required capability, `dsh --profile martty` still opens the TUI and the
78
+ conversation explains the installed version, the floor or missing capability,
79
+ and the options (`npx martty`, or install a supported dsh).
80
+
49
81
  ## Migrating from DeepSeek Harness TUI / the scoped package
50
82
 
51
83
  `martty` is the recommended package name. Starting with `0.2.13`, it and the
@@ -63,17 +95,17 @@ published versions of `martty` register `dsh-tui`
63
95
  legacy checkouts own the same names (a checkout of this repository links as
64
96
  `martty`, so it replaces — or is replaced by — an installed `martty` with no
65
97
  collision). The `martty` package declares only `martty-cli` so npm never
66
- refuses the install over a bin another package owns (`EEXIST`); a
67
- postinstall step then retires the stale `martty`/`dsh-tui`/`dsb` links that
68
- verifiably belonged to the legacy package (a third-party `dsh-tui` stays
69
- untouched), creates the `martty` command itself, and detaches the legacy
70
- package's bin declarations so a later `npm rm -g` can't take `martty` down
71
- with it. Removing `martty` afterwards is optional
98
+ refuses the install over a bin another package owns (`EEXIST`). It ships no
99
+ install scripts: the first launch of `martty-cli` (or `npx martty`) retires
100
+ the stale `martty`/`dsh-tui`/`dsb` links that verifiably belonged to the
101
+ legacy package (a third-party `dsh-tui` stays untouched), creates the `martty`
102
+ command itself, and detaches the legacy package's bin declarations so a later
103
+ `npm rm -g` can't take `martty` down with it. Until that first launch a fresh
104
+ install has only `martty-cli`; upgrades from 0.3.2 keep their `martty`.
105
+ Removing `martty` afterwards is optional
72
106
  cleanup; `martty` warns at launch while it remains — on an interactive
73
107
  terminal the notice prints when the session exits, so the TUI cannot hide
74
- it. With `--ignore-scripts`
75
- the postinstall never runs — invoke `martty-cli` once (or `npx martty`) and
76
- the first launch finishes the migration itself. And after `npm rm -g
108
+ it. And after `npm rm -g
77
109
  martty`, the `martty` command left behind is a self-cleaning shim: invoking
78
110
  it once prints the reinstall hint and removes it — nothing dead is left
79
111
  in `<prefix>/bin`.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "martty",
3
- "version": "0.3.3-beta.1",
3
+ "version": "0.3.3",
4
4
  "description": "Terminal-native ACP client UI; Cordis client tree, any ACP agent",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -76,7 +76,7 @@
76
76
  "@deepseek-ai/cordis": "^4.0.1",
77
77
  "@lobehub/icons-static-svg": "1.95.0",
78
78
  "@openma/common": "^0.9.2",
79
- "@openma/deepseek-harness-acp": "0.4.39-beta.2",
79
+ "@openma/deepseek-harness-acp": "0.4.39",
80
80
  "@resvg/resvg-js": "2.6.2",
81
81
  "cross-spawn": "^7.0.6",
82
82
  "node-downloader-helper": "2.1.11",
@@ -98,10 +98,10 @@
98
98
  "agent-client-protocol"
99
99
  ],
100
100
  "optionalDependencies": {
101
- "@openma/martty-darwin-arm64": "0.3.3-beta.1",
102
- "@openma/martty-darwin-x64": "0.3.3-beta.1",
103
- "@openma/martty-linux-x64": "0.3.3-beta.1",
104
- "@openma/martty-linux-arm64": "0.3.3-beta.1",
105
- "@openma/martty-win32-x64": "0.3.3-beta.1"
101
+ "@openma/martty-darwin-arm64": "0.3.3",
102
+ "@openma/martty-darwin-x64": "0.3.3",
103
+ "@openma/martty-linux-x64": "0.3.3",
104
+ "@openma/martty-linux-arm64": "0.3.3",
105
+ "@openma/martty-win32-x64": "0.3.3"
106
106
  }
107
107
  }