diff --git a/changelog.mdx b/changelog.mdx index 5a83582..9e85550 100644 --- a/changelog.mdx +++ b/changelog.mdx @@ -22,6 +22,28 @@ export const STAGE_SELF_MANAGED_M66 = "$0.0001"; usezombie is in **stealth-mode testing** and pre-production. APIs and agent behavior may change between releases without long deprecation windows. Email [usezombie@agentmail.to](mailto:usezombie@agentmail.to) if you want a hand calibrating an agent or to join as a design partner. + + ## Set up a bring-your-own-key model provider without leaving the Models page + + The Models page is now a guided, two-step wizard for bring-your-own-key (BYOK) setup. Choosing "use my own provider key" with an empty vault used to dead-end at a disabled button that sent you off to Credentials; now you paste an API key, the provider and a default model fill themselves in from the key's prefix, you save the credential inline, pick the model, and activate — all on one screen. Platform-managed keys stay a one-click choice. A short note explains that switching providers applies to new runs while in-flight agents finish on their current one. + + Behind the wizard, the public model catalogue moved: the unauthenticated `_um//model-caps.json` document is now `cap.json`, and it carries the global run and event rates, the starter credit, and the free-trial window alongside the per-model catalogue — one document for the client config that needs no auth. + + ## Upgrading + + - **`_um//model-caps.json` is now `_um//cap.json`.** The old path returns `404` (no alias). The per-model `models[]` shape is unchanged, so if you read the public catalogue directly, only the path moves — switch to `cap.json`. If you only use the dashboard or `zombiectl`, there is nothing to do; they handle this for you. + + ## What's new + + - **Inline credential create on the Models page** — a structured provider / API key / model form that names the credential after the provider and detects the provider from the key prefix. No trip to Credentials. + - **Catalogue-backed model picker** — the model field is populated from `cap.json`, with free-text entry as a fallback for a model not in the catalogue. + - **Global config in `cap.json`** — the document now includes a `rates` block (run and event rates) and a `billing` block (starter credit, free-trial window), so a client no longer hardcodes those constants. + + ## API reference + + - **`GET /_um//cap.json`** — unauthenticated; replaces `model-caps.json`. Returns `{ version, models, rates, billing }`. Each `models[]` row carries `id`, `provider`, `context_cap_tokens`, and the per-model token rates (unchanged); `rates` carries `run_nanos_per_sec` and `event_nanos`; `billing` carries `starter_credit_nanos`, `free_trial_end_ms`, and `free_trial_stage_nanos`. The optional `?model=` filter narrows `models[]`; the global blocks are always present. A wrong key returns `404`; an empty catalogue returns `503`. + + ## Pin an agent to capable runners with tags diff --git a/cli/zombiectl.mdx b/cli/zombiectl.mdx index 8edb1eb..dd2391a 100644 --- a/cli/zombiectl.mdx +++ b/cli/zombiectl.mdx @@ -382,7 +382,7 @@ zombiectl tenant provider show --json ### `zombiectl tenant provider set` -Activate a self-managed credential for the tenant. The credential must already exist in the workspace vault (`zombiectl credential add `). The command validates the credential structure, resolves the model's context cap from the model-caps endpoint, and pins both into the tenant's provider row. +Activate a self-managed credential for the tenant. The credential must already exist in the workspace vault (`zombiectl credential add `). The command validates the credential structure, resolves the model's context cap from the `cap.json` endpoint, and pins both into the tenant's provider row. ```bash # 1. Store the provider credential