home-hosted 0.7.11 → 0.7.13
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/AGENTS.md +15 -0
- package/README.md +26 -3
- package/dist/cli.js +411 -103
- package/dist/cli.js.map +1 -1
- package/package.json +4 -2
- package/uis/stock/dist/ui.json +3 -3
package/AGENTS.md
CHANGED
|
@@ -23,7 +23,9 @@ seed entry, or a path that names one.
|
|
|
23
23
|
|
|
24
24
|
```sh
|
|
25
25
|
pnpm run up|down|restart|status # detached; `down` asks /_hh/shutdown, signals are the fallback
|
|
26
|
+
# `restart <id>` restarts one server via /_hh, panel stays up
|
|
26
27
|
pnpm run start # up --foreground (systemd, docker, a foreground shell)
|
|
28
|
+
pnpm exec tsx src/cli.ts logs # the panel's own console output (--lines, --follow, --json)
|
|
27
29
|
pnpm dev # tsx-watch panel :6000 + the stock UI's Vite :6001 (proxies /api), state in .dev-state/
|
|
28
30
|
pnpm dev --ui noc-console # the same, for another UI; --port/--ui-port override
|
|
29
31
|
pnpm run build # dist/cli.js + the stock UI (uis/stock/dist)
|
|
@@ -53,6 +55,19 @@ UI and every UI zip, lets changelogen write the changelog, bump `package.json`,
|
|
|
53
55
|
trusted publishing (OIDC, no token). npm only offers a trusted publisher for a package that already
|
|
54
56
|
exists, so the first release has to be published by hand.
|
|
55
57
|
|
|
58
|
+
Four workflows, and the split is deliberate:
|
|
59
|
+
|
|
60
|
+
| workflow | runs on | what it proves |
|
|
61
|
+
| --- | --- | --- |
|
|
62
|
+
| `quickcheck.yml` / `test.yml` | every push and PR | lint, types, the whole suite with coverage — Linux only |
|
|
63
|
+
| `cross-platform.yml` | the release gate, or by hand | the same suite on macOS and Windows |
|
|
64
|
+
| `release.yml` | dispatched with a version | the platform gate, then tag, publish, release assets |
|
|
65
|
+
|
|
66
|
+
The platform gate is not a per-push job on purpose: it is the expensive half, and it is what makes a
|
|
67
|
+
platform-specific break fail before shipping rather than on someone's machine. It also runs on a
|
|
68
|
+
`dry-run`, because that is exactly what a rehearsal needs to exercise. Every job carries a
|
|
69
|
+
`timeout-minutes`, so a wedged runner is reported instead of sitting out GitHub's 6-hour default.
|
|
70
|
+
|
|
56
71
|
### Which version to dispatch
|
|
57
72
|
|
|
58
73
|
Below 1.0 the **minor is the breaking channel**: a fix or a non-breaking feature is a **patch**
|
package/README.md
CHANGED
|
@@ -340,10 +340,12 @@ restarts itself), and how hand-edits are validated: [SERVERS.md](./docs/SERVERS.
|
|
|
340
340
|
| --- | --- |
|
|
341
341
|
| `home-hosted up` | start the panel detached, and keep it alive in the background |
|
|
342
342
|
| `home-hosted down` | stop it cleanly — supervised processes included, persistent entries left running |
|
|
343
|
-
| `home-hosted restart` | `down`, then `up` |
|
|
343
|
+
| `home-hosted restart` | `down`, then `up` — or `restart <id>` to restart one server, leaving the panel up |
|
|
344
344
|
| `home-hosted status` | pid, URL, health, uptime, state and log paths (`--json` for scripts) |
|
|
345
345
|
| `home-hosted start <id>` | start one server in the default workspace — and anything it `dependsOn` (`--workspace <id>`) |
|
|
346
346
|
| `home-hosted stop <id>` | stop one server, nothing else (`--workspace <id>`) |
|
|
347
|
+
| `home-hosted restart <id>` | restart one server, nothing else (`--workspace <id>`) — the same as the panel's per-server Restart |
|
|
348
|
+
| `home-hosted logs` | read the panel's own console output — the file `up` redirects it into (`--lines`, `--follow`, `--json`) |
|
|
347
349
|
| `home-hosted set-password` | set the panel password without opening a browser |
|
|
348
350
|
| `home-hosted set-token` | set the API token scripts and agents use (`--generate`, `--clear`) |
|
|
349
351
|
| `home-hosted migrate` | relocate a pre-workspaces state directory and stamp every config for this release (`--dry-run`, `--yes`) |
|
|
@@ -358,11 +360,13 @@ restarts itself), and how hand-edits are validated: [SERVERS.md](./docs/SERVERS.
|
|
|
358
360
|
`home-hosted <command> --help` prints what that command takes.
|
|
359
361
|
|
|
360
362
|
```text
|
|
361
|
-
up
|
|
363
|
+
up -c/--config -p/--port --host --open --no-autostart --foreground --print-config
|
|
362
364
|
|
|
363
365
|
down (no flags)
|
|
364
366
|
status --json
|
|
367
|
+
logs --lines <n> --follow --json
|
|
365
368
|
start, stop <id> [-w/--workspace <id>] (both need the panel up)
|
|
369
|
+
restart [<id>] [-w/--workspace <id>] (no id: the panel; with one: that server)
|
|
366
370
|
init --dir --name --pm --no-install -y/--yes
|
|
367
371
|
set-password --clear
|
|
368
372
|
set-token --generate --clear
|
|
@@ -375,7 +379,8 @@ every command --home <dir> --project <dir> (or $HHOSTED_HOME, $HHOSTED
|
|
|
375
379
|
env vars HHOSTED_PASSWORD, HHOSTED_MIGRATE=allow, HHOSTED_TOKEN, GITHUB_TOKEN or GH_TOKEN
|
|
376
380
|
```
|
|
377
381
|
|
|
378
|
-
`up` and `restart` share the same flags: `restart` is `down`, then `up` with exactly what it was
|
|
382
|
+
`up` and `restart` share the same flags: bare `restart` is `down`, then `up` with exactly what it was
|
|
383
|
+
given. Given a server id — `restart web` — it restarts only that entry, and the panel keeps running.
|
|
379
384
|
`-c/--config` is the **default workspace's** servers file (`<state>/.hh/default/servers.config.json`),
|
|
380
385
|
for a launcher that pins one; a workspace picked in the UI keeps its own. `start`/`stop` omit
|
|
381
386
|
`--workspace` to act in the panel's default workspace.
|
|
@@ -507,6 +512,24 @@ specific:
|
|
|
507
512
|
|
|
508
513
|
## ❓ FAQ
|
|
509
514
|
|
|
515
|
+
<details>
|
|
516
|
+
<summary><b>The panel is up but something is wrong — where do I look?</b></summary>
|
|
517
|
+
|
|
518
|
+
`home-hosted logs` prints the panel's own console output, which is where it reports what it is
|
|
519
|
+
doing and anything it could not finish:
|
|
520
|
+
|
|
521
|
+
```bash
|
|
522
|
+
home-hosted logs # the last 50 lines
|
|
523
|
+
home-hosted logs --follow # keep printing, like tail -f
|
|
524
|
+
home-hosted logs --lines all # the whole thing, including the rotation
|
|
525
|
+
```
|
|
526
|
+
|
|
527
|
+
It is the same file `status` names, and reading it needs no session or API token — a panel that
|
|
528
|
+
is answering badly is exactly when you cannot get one. `up` prints the tail automatically when
|
|
529
|
+
the panel fails to start.
|
|
530
|
+
|
|
531
|
+
</details>
|
|
532
|
+
|
|
510
533
|
<details>
|
|
511
534
|
<summary><b>Is it a systemd replacement?</b></summary>
|
|
512
535
|
|