Files
spark-control/docs/guides/startos-package.md
T
Keysat 6a6112a15f restructure: AGENTS.md canonical + docs/guides with .claude/rules symlinks
Rename CLAUDE.md -> AGENTS.md (cross-vendor standard) with a relative
CLAUDE.md symlink so Claude Code still loads it. Move each .claude/rules
file into docs/guides/ (paths: frontmatter preserved) and replace the
rules file with a relative symlink into the guide. Repoint the AGENTS.md
index paragraph at docs/guides/ so non-Claude agents find the guides.
2026-06-12 14:27:17 -05:00

1.5 KiB

paths
paths
package/**

StartOS package (package/)

TypeScript wrapper that ships the Docker image as an s9pk. @start9labs/start-sdk pinned 1.3.3, Node ≥22, bundled by @vercel/ncc.

Commands

cd package
npm i          # one-time
make x86       # typecheck + ncc bundle + docker build + pack → spark-control_x86_64.s9pk
make install   # sideload to the Start9 server; needs "host: http(s)://<server>.local" in ~/.startos/config.yaml
npm run check      # tsc --noEmit — run after any startos/ edit; make x86 also runs it
npm run prettier   # prettier --write startos (no semicolons, single quotes, trailing commas)

make aarch64 for ARM Start9 servers. make install picks the newest *.s9pk in package/ and restarts the live spark-control service — get a go/no-go first.

Versioning & release notes

  • Version format is X.Y.Z:N (:N = revision). Bump in package/startos/versions/v0_1_0.ts; replace the release notes — never leave old notes behind under an extra key (any unknown key fails tsc).
  • New external-facing endpoints get noted in release notes for downstream app developers (Recap Relay, Ten31 Transcripts, CRM, Signal Engine consume these APIs).

Layout

  • package/startos/ — manifest, interfaces, actions (configureSparks, showPublicKey), versions/v0_1_0.ts (current version string + release notes).
  • The "Reapply speech-model patches" action is not a StartOS action — it's a dashboard action implemented in image/app/speech_models.py.