* fix(generation): refuse supplied media fields a provider cannot carry
* fix(media): probe selected tools in their execution environment
* fix(credentials): use native file replacement across processes
* fix(runtime): distinguish tool preparation from process startup
* fix(cli): bootstrap from the physical distribution directory
`hypit auth status` requires one Endpoint instance (the CLI parser calls
requiredPositional for status, login and logout alike), but four docs
examples omitted it, so copy-pasting them fails with "auth status requires
one Endpoint instance".
Use each page's already-established instance name: `hypihub.default` in
the quickstart (matching its `auth login hypihub.default` example) and
`media.local` in the runtime guide (matching the `doctor --endpoint
media.local` that follows).
Every page carried a frontmatter `title` and repeated it as a body `# `, which
the site renders as two headings with two permalinks. The heading text matched
the frontmatter on 41 of the 43 pages; on the two quickstarts it did not, so
"Make a video with your Agent" and "和 Agent 一起制作视频" give way to the
titles already in their frontmatter.
Each step's video now sits directly under that step's heading rather than after
its prose, and the avatars link keeps a blank line beneath it.
Vertex: requestTimeoutMs now bounds every request (it was accepted and
ignored), the capability-to-model map fails closed, doctor asks Vertex for
each declared model with the configured project so a disabled API or an
unreachable model is reported with Vertex's own message before the first
paid call, and the README finally shows the Profile fragment with both
required CredentialRefs. Two Endpoints that share a pool but size it
differently are reported by doctor instead of failing inside a Build. The
starter Profile names pools by role like the examples do, and the KIE
README's rejected instance key is corrected.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Providers declare everything they can do and never hide a capability:
HypiHub's audio:false flag is gone. When several selected Endpoints offer
the same capability, the Profile's bindings name the one that serves it,
keyed by name@version#capability. plan, creation-time invoke and the Build
resolve through the same EndpointRegistry with the same bindings; doctor
reports a contested capability without a binding (error when a Run demands
it, warning otherwise) and a binding to an Endpoint that does not offer the
capability. Unknown Profile keys are listed together, and the retired
nested-runtime Profile shape gets a migration message.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Replace the obsolete v1 quickstart and monolithic develop page with a
concise quickstart and eight focused guides, in English and Chinese.
Give the home page and the documentation different themes. The home page
keeps the branded always-dark editorial design with no appearance toggle;
documentation pages use the stock VitePress theme with light/dark support.
Everything branded is scoped to `html.home-page`, set before first paint by
the inline script in config.ts and kept in sync by theme/Layout.vue, because
`html` and `body` sit outside the theme's `.Layout` root.
Exclude docs/README.md and docs/implementation-status.md from the site: they
index repository files and link to ../spec, ../packages and ../services, which
resolve when browsing the repository but have no route on the published site.
This restores `vitepress build` with dead-link checking enabled.