@qialike/cli 0.8.1 → 0.9.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.md +33 -2
- package/bin/qialike.js +12 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -15,11 +15,26 @@ Terminal client for **DeepSeek Harness** — a full-screen TUI over an agent ses
|
|
|
15
15
|
|
|
16
16
|
## Install (Windows)
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
Node.js **≥ 18** is required — it ships the `npm` used below. Install it first (the terminal must be
|
|
19
|
+
reopened afterwards so PATH picks it up), then install this package:
|
|
20
|
+
|
|
21
|
+
```powershell
|
|
22
|
+
winget install OpenJS.NodeJS.LTS # or download the LTS installer from https://nodejs.org/
|
|
23
|
+
node --version # reopen the terminal, then check both
|
|
24
|
+
npm --version
|
|
19
25
|
npm i -g @qialike/cli
|
|
20
26
|
qialike --version
|
|
21
27
|
```
|
|
22
28
|
|
|
29
|
+
On Windows npm's global prefix is `%APPDATA%\npm` — inside your user profile, and on the user PATH
|
|
30
|
+
already — so this needs **no administrator rights**.
|
|
31
|
+
|
|
32
|
+
**Run it inside the Windows Terminal app**, not the legacy console window that `cmd.exe` /
|
|
33
|
+
`powershell.exe` open on their own: qialike draws 24-bit colour, `▀▄█` half-block art, emoji and a
|
|
34
|
+
flat cursor, and it takes mouse input — Windows Terminal handles all of that, the old console host
|
|
35
|
+
handles it poorly. Install it with `winget install Microsoft.WindowsTerminal` (Windows 11 ships it),
|
|
36
|
+
then open a PowerShell or cmd tab there — the shell is still your choice.
|
|
37
|
+
|
|
23
38
|
**You do not choose an architecture.** The package declares one optional dependency per Windows
|
|
24
39
|
target — `@qialike/cli-win32-x64` and `@qialike/cli-win32-arm64` — each restricted with `os`/`cpu`,
|
|
25
40
|
so npm downloads only the payload that matches your machine (x64 or arm64), never both.
|
|
@@ -31,9 +46,25 @@ an interrupted install all leave the launcher without a binary. It then prints t
|
|
|
31
46
|
install the package for your architecture, for example:
|
|
32
47
|
|
|
33
48
|
```sh
|
|
34
|
-
npm i -g @qialike/cli-win32-arm64@0.
|
|
49
|
+
npm i -g @qialike/cli-win32-arm64@0.9.0
|
|
35
50
|
```
|
|
36
51
|
|
|
52
|
+
The version is pinned to the one you already have: a bare `npm i -g
|
|
53
|
+
@qialike/cli-win32-arm64` can resolve a platform package that does not match the parent that sent
|
|
54
|
+
you here. Use the version the launcher printed.
|
|
55
|
+
|
|
56
|
+
## Uninstalling
|
|
57
|
+
|
|
58
|
+
Two steps, because this package puts the program outside the harness home:
|
|
59
|
+
|
|
60
|
+
```sh
|
|
61
|
+
qialike uninstall # clears the harness home (state, settings, sessions)
|
|
62
|
+
npm uninstall -g @qialike/cli # removes the program itself
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
`qialike uninstall` prints that second command for you — it cannot run it, because the payload sits
|
|
66
|
+
under your package manager's prefix rather than in `%USERPROFILE%\.dsh\bin`.
|
|
67
|
+
|
|
37
68
|
## Alternative installers
|
|
38
69
|
|
|
39
70
|
- Shell installer (Linux, macOS): `curl -fsSL https://qialike.com/install | bash`
|
package/bin/qialike.js
CHANGED
|
@@ -150,7 +150,18 @@ if (!existsSync(exe)) {
|
|
|
150
150
|
|
|
151
151
|
// Hand the terminal over: stdio is inherited, because the TUI owns raw mode,
|
|
152
152
|
// colour and resize. The child's exit code is what the caller sees.
|
|
153
|
-
|
|
153
|
+
//
|
|
154
|
+
// `QIALIKE_INSTALLED_VIA` tells the program it was reached through a package
|
|
155
|
+
// manager. It matters for exactly one thing: `qialike uninstall` clears the
|
|
156
|
+
// harness home, but THIS copy lives under the manager's prefix (npm's
|
|
157
|
+
// %APPDATA%\npm\node_modules\…), so only `npm uninstall -g @qialike/cli` can
|
|
158
|
+
// remove it — and nothing in the home hints that the copy came from npm rather
|
|
159
|
+
// than from the shell installer. The launcher is the one component that knows,
|
|
160
|
+
// so it says so.
|
|
161
|
+
const result = spawnSync(exe, process.argv.slice(2), {
|
|
162
|
+
stdio: 'inherit',
|
|
163
|
+
env: { ...process.env, QIALIKE_INSTALLED_VIA: 'npm' },
|
|
164
|
+
})
|
|
154
165
|
|
|
155
166
|
if (result.error) {
|
|
156
167
|
const reason = result.error instanceof Error ? result.error.message : String(result.error)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@qialike/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "Terminal client for DeepSeek Harness. Installs the Windows binary for your architecture (x64 or arm64) automatically.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
"node": ">=18"
|
|
19
19
|
},
|
|
20
20
|
"optionalDependencies": {
|
|
21
|
-
"@qialike/cli-win32-x64": "0.
|
|
22
|
-
"@qialike/cli-win32-arm64": "0.
|
|
21
|
+
"@qialike/cli-win32-x64": "0.9.0",
|
|
22
|
+
"@qialike/cli-win32-arm64": "0.9.0"
|
|
23
23
|
},
|
|
24
24
|
"publishConfig": {
|
|
25
25
|
"access": "public"
|