@telepath-computer/television 0.1.115 → 0.1.117

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.
@@ -129,9 +129,11 @@ When the CLI rejects a command, follow the directive it prints rather than guess
129
129
 
130
130
  ### Server operation notes
131
131
 
132
- `tv serve` starts the local server. ACP chat is optional: with no `TELEVISION_ACP_AGENT`, the server starts without ACP wiring, `/acp` is unavailable, and the web UI hides chat. Set `TELEVISION_ACP_AGENT=openclaw` or `TELEVISION_ACP_AGENT=hermes` to enable chat; in that case `tv serve` preflights the selected ACP command on `PATH` and fails before listening if the binary is missing.
132
+ `tv serve` starts the local server. Bare `tv serve` binds `127.0.0.1` and is tokenless. Use `--listen <ipv4>` (repeatable or comma-separated) to add IPv4 listeners; any `--listen` requires an explicit global auth choice with `--auth` or `--no-auth`. Workflow commands connect to `localhost:<port>` only; use `--port`, `TELEVISION_PORT`, or the default `32848` rather than `--server`. When targeting non-default storage, pass `--storage-path` or set `TELEVISION_STORAGE_PATH` so the CLI reads the matching token.
133
133
 
134
- `tv serve --persist` installs or refreshes the user system service. It always captures the exact `PATH`. When an ACP agent is configured, it also captures canonical `TELEVISION_ACP_AGENT` and matching `OPENCLAW_*` or `HERMES_*` variables, and validates the ACP command against that captured PATH before changing the installed service. When no agent is configured, ACP env capture and preflight are skipped and the service runs with chat disabled. Rerun it after changing PATH, ACP agent env vars, the ACP agent install, or the Node/TV install. The refresh is non-atomic: if uninstall succeeds but install fails, fix the env and rerun `tv serve --persist`.
134
+ ACP chat is optional: with no `TELEVISION_ACP_AGENT`, the server starts without ACP wiring, `/acp` is unavailable, and the web UI hides chat. Set `TELEVISION_ACP_AGENT=openclaw` or `TELEVISION_ACP_AGENT=hermes` to enable chat; in that case `tv serve` preflights the selected ACP command on `PATH` and fails before listening if the binary is missing.
135
+
136
+ `tv serve --persist` installs or refreshes the user system service. It captures the serve flags and relevant environment at install time (`--listen`, `--auth`/`--no-auth`, `--port`, `--storage-path`, `PATH`, `TELEVISION_PORT`, `TELEVISION_STORAGE_PATH`). When an ACP agent is configured, it also captures canonical `TELEVISION_ACP_AGENT` and matching `OPENCLAW_*` or `HERMES_*` variables, and validates the ACP command against that captured PATH before changing the installed service. When no agent is configured, ACP env capture and preflight are skipped and the service runs with chat disabled. Rerun it after changing listen/auth/port settings, PATH, ACP agent env vars, the ACP agent install, or the Node/TV install. The refresh is non-atomic: if uninstall succeeds but install fails, fix the env and rerun `tv serve --persist`.
135
137
 
136
138
  `tv serve --persist-uninstall` removes the service and is equivalent to `tv stop`. Both are idempotent and print `{ "status": "stopped" }` whether or not a service was installed.
137
139
 
@@ -471,70 +473,23 @@ tv abandon-artifact --id "<artifact-id>"
471
473
 
472
474
  For a pending create, the artifact never becomes live. For a pending edit, the previously committed version remains live.
473
475
 
474
- # Authoring artifacts
475
-
476
- You're writing a single self-contained HTML artifact that will be rendered
477
- inside a Television viewer (or downloaded for offline viewing later). This
478
- skill documents the conventions you must follow.
476
+ # HTML artifact style
479
477
 
480
- ## House style
478
+ Write a complete, self-contained HTML document for the Television viewer. The
479
+ canonical stylesheet gives you only a reset, fonts, and tokens. You are expected
480
+ to make the artifact readable with local CSS.
481
481
 
482
- Artifacts inherit a versioned, canonical stylesheet served by the
483
- Television runtime. Include it in `<head>`:
482
+ Always include the canonical stylesheet:
484
483
 
485
484
  ```html
486
485
  <link rel="stylesheet" href="/canonical/v1/styles.css">
487
486
  ```
488
487
 
489
- That stylesheet provides:
490
-
491
- - A CSS reset and font-face declarations (Hind variable font, loaded
492
- automatically — no extra link tags needed).
493
- - The full design-system token catalog as CSS custom properties:
494
- typography (`--text-*`, `--font-*`, `--leading-*`), spacing
495
- (`--space-*`), color (`--color-*`, `--neutral-*`), radii
496
- (`--radius-*`), and surfaces. The runtime source of truth is
497
- `packages/ui/styles/tokens.css`; the bundle inlines it.
498
- - Bare-tag styling. `body`, `a`, `h1`–`h6`, `code`, `pre`, and similar
499
- semantic elements have built-in styling — you do not need to add
500
- classes to make them look right.
501
-
502
- **Lean on semantic HTML and the bare-tag styling.** Reach for `<h1>`,
503
- `<p>`, `<ul>`, `<code>`, etc. before inventing custom classes. Use tokens
504
- (`var(--space-8)`, `var(--color-text-muted)`, etc.) for any custom CSS
505
- you do write — never hardcoded pixel values or hex colors.
488
+ ## Viewport
506
489
 
507
- ## Document shape
508
-
509
- Emit a complete HTML document, not a fragment:
510
-
511
- ```html
512
- <!doctype html>
513
- <html lang="en">
514
- <head>
515
- <meta charset="utf-8">
516
- <title>{{title}}</title>
517
- <link rel="stylesheet" href="/canonical/v1/styles.css">
518
- </head>
519
- <body>
520
- <!-- artifact content -->
521
- </body>
522
- </html>
523
- ```
490
+ Artifacts render inside a resizable Television card, not a full browser page. The default card is roughly 528px wide by 800px tall. Users may make cards
491
+ narrower, wider, shorter, or taller. Treat 528px × 800px as the first layout
492
+ target, then make sure the artifact still works when narrower.
524
493
 
525
- ## Conventions
526
-
527
- - **Self-contained.** By default, emit one HTML file. If the active
528
- kind skill ships local CSS or JS assets, copy or inline them from the
529
- skill folder so the final artifact remains self-contained without any
530
- `/skills/...` runtime dependency.
531
- - **No arbitrary `<script>` tags.** Static HTML is the default. Only
532
- include local, bundled scripts when the active kind skill explicitly
533
- requires them.
534
- - **No external network fetches.** No CDN links, no remote images, no
535
- font URLs other than what `/canonical/v1/styles.css` already includes.
536
- - **No inline `<style>` overrides for chrome-level concerns.** Small
537
- layout-specific styles for the artifact's content are fine; redefining
538
- brand colors or typography is not.
539
- - **Use tokens, not hardcoded values.** `padding: var(--space-12)`, not
540
- `padding: 12px`. `color: var(--color-text-muted)`, not `color: #999`.
494
+ If content overflows, artifacts can scroll vertically. Avoid horizontal scrolling unless the content genuinely requires it, such as a
495
+ wide data table or timeline.