@dev.sail.money/sailor 1.3.0-210 → 1.3.0-211
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
CHANGED
|
@@ -170,6 +170,7 @@ sailor trigger github # fire the agent's GitHub Actions workflow on demand
|
|
|
170
170
|
|
|
171
171
|
# Dashboard
|
|
172
172
|
sailor ui start # prints the per-project dashboard URL
|
|
173
|
+
sailor ui start --expose tailscale # also expose it on your tailnet over HTTPS (see Dashboard section)
|
|
173
174
|
|
|
174
175
|
# Maintenance
|
|
175
176
|
sailor update # re-sync skills, AGENTS.md, and tooling files after a CLI upgrade
|
|
@@ -263,6 +264,37 @@ sailor ui status
|
|
|
263
264
|
sailor ui stop
|
|
264
265
|
```
|
|
265
266
|
|
|
267
|
+
### Remote access over your tailnet (HTTPS) — optional
|
|
268
|
+
|
|
269
|
+
The dashboard is local-only by default. To reach it from another device (e.g. a
|
|
270
|
+
remote operator box), expose it over your [Tailscale](https://tailscale.com)
|
|
271
|
+
tailnet on HTTPS:
|
|
272
|
+
|
|
273
|
+
```bash
|
|
274
|
+
sailor ui start --expose tailscale
|
|
275
|
+
# → Sailor UI started at http://localhost:<port>
|
|
276
|
+
# → Exposed on your tailnet at https://<node>.<tailnet>.ts.net/
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
It uses `tailscale serve` (tailnet-private), **never `funnel`** — only devices on
|
|
280
|
+
your tailnet can reach it, not the public internet. `sailor ui stop` tears the
|
|
281
|
+
tailnet proxy down along with the local server.
|
|
282
|
+
|
|
283
|
+
Requirements:
|
|
284
|
+
|
|
285
|
+
- `tailscale` installed and logged in (`tailscale up`).
|
|
286
|
+
- Tailscale **Serve** enabled for your tailnet, plus **HTTPS certificates**
|
|
287
|
+
(admin console → DNS → Enable HTTPS). If Serve is disabled, the command prints
|
|
288
|
+
the enable link instead of reporting success.
|
|
289
|
+
|
|
290
|
+
When exposed, the tailnet origin is added to the dashboard's CORS allowlist
|
|
291
|
+
automatically. To allow additional origins (e.g. a custom HTTPS host in front of
|
|
292
|
+
the station), set a comma-separated list — the local origin is always allowed:
|
|
293
|
+
|
|
294
|
+
```bash
|
|
295
|
+
SAILOR_CORS_ORIGINS=https://hermes.example.ts.net,https://another.host
|
|
296
|
+
```
|
|
297
|
+
|
|
266
298
|
---
|
|
267
299
|
|
|
268
300
|
## Agent-driven onboarding & custom mandates
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Do not edit manually — run `pnpm build` to regenerate.
|
|
6
6
|
*
|
|
7
7
|
* Spec version : 1.2.0
|
|
8
|
-
* Generated at : 2026-06-25T14:
|
|
8
|
+
* Generated at : 2026-06-25T14:31:14.298Z
|
|
9
9
|
*/
|
|
10
10
|
export declare const SAIL_INTELLIGENCE_BASE_URL = "https://api.sail.money";
|
|
11
11
|
export declare const SAIL_INTELLIGENCE_DOCS_URL = "https://api.sail.money/docs";
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Do not edit manually — run `pnpm build` to regenerate.
|
|
6
6
|
*
|
|
7
7
|
* Spec version : 1.2.0
|
|
8
|
-
* Generated at : 2026-06-25T14:
|
|
8
|
+
* Generated at : 2026-06-25T14:31:14.298Z
|
|
9
9
|
*/
|
|
10
10
|
export const SAIL_INTELLIGENCE_BASE_URL = "https://api.sail.money";
|
|
11
11
|
export const SAIL_INTELLIGENCE_DOCS_URL = "https://api.sail.money/docs";
|
|
@@ -13,11 +13,13 @@ Two distinct local servers. Both are per-project, both write state under `.sail/
|
|
|
13
13
|
sailor ui start # spawns a detached Express server, prints the URL, returns immediately
|
|
14
14
|
sailor ui status # ● running http://localhost:<port> (pid N)
|
|
15
15
|
sailor ui stop # SIGTERM via the pid file
|
|
16
|
+
sailor ui start --expose tailscale # also serve it on the tailnet over HTTPS (opt-in)
|
|
16
17
|
```
|
|
17
18
|
|
|
18
|
-
- Port: deterministic per project — `3333 + (hash(projectPath) % 667)`, i.e. somewhere in 3333–3999, bumped to the next free port if taken. **Do not assume 3333** — always use the URL the command prints or read `.sail/runtime/ui.json` (`{ pid, port, startedAt }`).
|
|
19
|
+
- Port: deterministic per project — `3333 + (hash(projectPath) % 667)`, i.e. somewhere in 3333–3999, bumped to the next free port if taken. **Do not assume 3333** — always use the URL the command prints or read `.sail/runtime/ui.json` (`{ pid, port, startedAt, exposed }`).
|
|
19
20
|
- The server serves the pre-built React app (`SERVE_DIST=1`) and a local `/api` that reads `.sail/` state (`SAIL_DIR` env).
|
|
20
21
|
- `ui start` does not block — no `&` needed.
|
|
22
|
+
- `--expose tailscale` (optional): proxies the dashboard onto the operator's tailnet over HTTPS via `tailscale serve` (tailnet-private, never `funnel`). Requires `tailscale` installed + logged in, and Serve + HTTPS enabled for the tailnet (else the command prints the enable link). `ui stop` tears the proxy down. To allow extra browser origins, set `SAILOR_CORS_ORIGINS` (comma-separated; the local origin is always allowed).
|
|
21
23
|
|
|
22
24
|
## Signing station — `sailor station`
|
|
23
25
|
|