@supanadit/morse-web 0.13.0 → 0.14.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 +53 -10
- package/dist/server.mjs +692 -85
- package/dist/server.mjs.map +4 -4
- package/dist/ui/3rdpartylicenses.txt +4 -4
- package/dist/ui/{chunk-D1etuzzZ.js → chunk-CwVAC7xx.js} +1 -1
- package/dist/ui/{chunk-CVTlMVVu.js → chunk-Dk_j780x.js} +1 -1
- package/dist/ui/{chunk-ourdPesa.js → chunk-veepV9dF.js} +1 -1
- package/dist/ui/index.html +1 -1
- package/dist/ui/main-L3KG4R7V.js +120 -0
- package/dist/ui/webview.manifest.json +3 -3
- package/package.json +12 -1
- package/dist/ui/main-TLDRX4Y6.js +0 -120
package/README.md
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
# @supanadit/morse-web
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
[
|
|
3
|
+
[](https://www.npmjs.com/package/@supanadit/morse-web)
|
|
4
|
+
[](https://github.com/supanadit/morse/blob/master/LICENSE)
|
|
5
|
+
[](https://nodejs.org)
|
|
6
|
+
|
|
7
|
+
**Morse in your browser, as one npm package.** It serves the same Angular chat UI and drives the same
|
|
8
|
+
[Pi](https://github.com/earendil-works/pi) coding agent as the VS Code extension — no editor required. Start it,
|
|
9
|
+
open the URL, and you get your existing pi models, credentials, tools and sessions in a real interface instead
|
|
10
|
+
of a terminal TUI.
|
|
5
11
|
|
|
6
12
|
```bash
|
|
7
13
|
npm install -g @supanadit/morse-web
|
|
@@ -21,10 +27,40 @@ morse start
|
|
|
21
27
|
|
|
22
28
|
Then open <http://127.0.0.1:4399/>. The server keeps running in the background; stop it with `morse stop`.
|
|
23
29
|
|
|
30
|
+

|
|
31
|
+
|
|
32
|
+
## Why
|
|
33
|
+
|
|
34
|
+
- **Your Pi, not a hosted service.** Morse spawns `pi --mode rpc` on your machine and reads the same `~/.pi`
|
|
35
|
+
sessions. Nothing is re-implemented and no API key is stored by Morse.
|
|
36
|
+
- **No editor needed.** A small NestJS host serves the UI on `127.0.0.1`, so you can drive the agent from any
|
|
37
|
+
browser — on a headless box, over SSH port-forwarding, or beside a remote dev machine.
|
|
38
|
+
- **One package.** The frontend is prebuilt and the `@morse/*` libraries are inlined into a single bundle, so
|
|
39
|
+
there is nothing else to install beyond Node and `pi`.
|
|
40
|
+
|
|
41
|
+
## Features
|
|
42
|
+
|
|
43
|
+
- **A chat that streams** — answers, thinking and tool calls as they arrive, a compact expandable tool tree
|
|
44
|
+
(with a one-click legacy timeline), paged history and context compaction.
|
|
45
|
+
- **Sessions kept warm across projects** — one `pi` process per session (LRU-capped, `MORSE_HOT_SESSIONS`
|
|
46
|
+
default 4); reloading the page reattaches and replays the transcript instead of respawning.
|
|
47
|
+
- **The browser host's own tools** — a **git panel** (commit list, branch graph, staged/unstaged changes, pull /
|
|
48
|
+
push / commit / branch switch), a file **Explorer** with read-only previews and diff views, and a **bottom
|
|
49
|
+
panel** with real terminals that survive a reload.
|
|
50
|
+
- **Manage MCP servers** — list every server pi sees for the project (state, tools, errors) and add, remove,
|
|
51
|
+
enable or disable one, with per-project overrides.
|
|
52
|
+
- **Model & thinking control that follows Pi** — the thinking picker mirrors exactly the levels the current model
|
|
53
|
+
supports in Pi's TUI, and a model added to `models.json` appears when you open the picker (no restart).
|
|
54
|
+
- **Attach context anywhere** — drag, drop and paste files or images; uploaded files land next to the session as
|
|
55
|
+
`@mentions`, and a picked line range travels as `path:start-end`.
|
|
56
|
+
- **A proper shell** — session and file tabs, a resizable Explorer, and a command palette (`Ctrl+Alt+K`) over
|
|
57
|
+
commands, tabs, sessions, projects, files and the model.
|
|
58
|
+
- **Optional notifications** — be told when a run finishes while the tab is elsewhere (off until you opt in).
|
|
59
|
+
|
|
24
60
|
## Requirements
|
|
25
61
|
|
|
26
|
-
- Node.js 20
|
|
27
|
-
- The
|
|
62
|
+
- **Node.js 20+** (developed on 24).
|
|
63
|
+
- The **`pi` CLI** on your `PATH` and already authenticated (`pi --version`), or a path via `MORSE_PI_PATH`.
|
|
28
64
|
Morse reuses your existing pi configuration: models, credentials, tools and sessions under `~/.pi`.
|
|
29
65
|
|
|
30
66
|
## Commands
|
|
@@ -68,8 +104,8 @@ MORSE_UI_DIR Override the served frontend directory
|
|
|
68
104
|
|
|
69
105
|
## Security
|
|
70
106
|
|
|
71
|
-
`morse start` binds `127.0.0.1` by default. `--lan` exposes an **unauthenticated** chat UI to your network:
|
|
72
|
-
|
|
107
|
+
`morse start` binds `127.0.0.1` by default. `--lan` exposes an **unauthenticated** chat UI to your network: only
|
|
108
|
+
do it on a trusted network, or put a TLS reverse proxy with auth in front of it.
|
|
73
109
|
|
|
74
110
|
## How the single package is built
|
|
75
111
|
|
|
@@ -81,10 +117,9 @@ dist/cli.mjs the `morse` lifecycle CLI
|
|
|
81
117
|
dist/ui/ the built Angular frontend, served as static assets
|
|
82
118
|
```
|
|
83
119
|
|
|
84
|
-
The `@morse/*` packages are private workspace libraries, so they cannot be installed from npm — bundling
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
`dependencies`.
|
|
120
|
+
The `@morse/*` packages are private workspace libraries, so they cannot be installed from npm — bundling them
|
|
121
|
+
into `server.mjs` is what makes a single publishable artifact possible. The NestJS runtime (`@nestjs/*`, `rxjs`,
|
|
122
|
+
`ws`, `reflect-metadata`) stays external and is installed normally from `dependencies`.
|
|
88
123
|
|
|
89
124
|
## Uninstall
|
|
90
125
|
|
|
@@ -93,3 +128,11 @@ morse stop
|
|
|
93
128
|
npm uninstall -g @supanadit/morse-web
|
|
94
129
|
rm -rf ~/.morse # state and logs
|
|
95
130
|
```
|
|
131
|
+
|
|
132
|
+
## Links
|
|
133
|
+
|
|
134
|
+
- [Repository and full README](https://github.com/supanadit/morse)
|
|
135
|
+
- [VS Code extension](https://marketplace.visualstudio.com/items?itemName=supanadit.morse)
|
|
136
|
+
- [Configuration](https://github.com/supanadit/morse/blob/master/docs/CONFIGURATION.md)
|
|
137
|
+
|
|
138
|
+
[MIT](https://github.com/supanadit/morse/blob/master/LICENSE) © 2026 Supan Adit Pratama
|