Early preview — you found Guuey before launch · official launch soon
API & contract stability
read as.mdWhat is versioned today
Section titled “What is versioned today”Some contracts already carry explicit versioning, preview or not:
guuey.jsonis schema-versioned. The root"schema"field is a decimal integer string (currently"1"), bumped only on a change an older reader cannot interpret correctly. A document declaring a newer schema is refused everywhere — the CLI saysSCHEMA_TOO_NEW(upgrade@guuey/cli), the API answers400 SCHEMA_UNSUPPORTED— never best-effort parsed. The CLI and the platform API compare against the same constant in@guuey/config, so they can only disagree when one of them is out of date. Details: Agents as code.- The theme schema is additive-only. Parsing is lenient, unknown keys pass through, and new tokens ship with defaults — a stored theme keeps parsing against future versions. See Theming.
- Client SDKs: the exported functions are the contract. The SSE frame grammar and other wire details underneath them are internal and can change between releases. See Build your own surface.
The @guuey/* packages are versioned in lockstep and are pre-1.0
(0.x): a minor-version bump can carry breaking changes until the
packages reach 1.0.
The posture at launch
Section titled “The posture at launch”At launch, the platform’s public contracts move to a stability posture:
- Additive evolution. The HTTP API
(
https://api.us-east-1.guuey.com/v1) and the CLI’s machine-readable output grow by adding fields and endpoints; existing ones are not removed or renamed without a deprecation cycle. - Versioned schema.
guuey.jsonkeeps the"schema"mechanism above; when a"2"ships, the1 → 2migration lands in@guuey/configso the CLI and the API pick it up together, and documents you wrote against"1"keep working. - Announced deprecations. Anything scheduled for removal is announced with a migration path before it goes away.
What is never a contract
Section titled “What is never a contract”Internals stay internal at every stage: the SSE frame grammar under the SDKs, undocumented endpoints, the shape of server-rendered HTML, and anything not described in these docs. If you find yourself depending on one of them, tell us what the documented surface is missing.