{{ message }}
Repository navigation
chore: bump package versions - #261
Merged
Merged
Conversation
cloudflare-nimbus-bot
Bot
force-pushed
the
changeset-release/main
branch
15 times, most recently
from
October 19, 2026 08:32
97ee15d to
c2a16ad
Compare
cloudflare-nimbus-bot
Bot
force-pushed
the
changeset-release/main
branch
7 times, most recently
from
October 22, 2026 22:06
c0e7bc6 to
c78d25b
Compare
cloudflare-nimbus-bot
Bot
force-pushed
the
changeset-release/main
branch
from
October 22, 2026 22:39
c78d25b to
2b2850f
Compare
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@cloudflare/create-nimbus-docs@0.8.0
Minor Changes
#273
352a245Thanks @MohamedH1998! - A redesigned API reference:x-tagGroups, with a filter; large specs load in parts as you scroll. The API route serves the later parts at/api/index/2/and on,noindexand left out of the sitemap and search; it takes the part size ashomeChunkSizein bothgetApiStaticPathsandgetApiRoute(without it, the home is one page), andgetApiRoutereturns the parts ashome.method,path,descriptionanddeprecated, and the root page gains anindexof every endpoint.getApiRootreads an API version's root page from any route;chunkApiIndexandapiIndexRowssplit and flatten its index.nimbus-docs migratelists the optional steps to adopt it.#274
961e85dThanks @MohamedH1998! - - New sites' share cards show the site's logo, the page's section and its title, on white. A long title shrinks before it's cut and stays within three lines.src/pages/og/_card.ts; the logo is drawn once, insrc/components/logo.ts, for the header and the cards.@cloudflare/nimbus-docs/ogfits text by measuring it and renders cards to PNG. It needssatoriand@resvg/resvg-js, optional peers.getPageSection(page)returns the label of a page's nearest parent, from the sidebar for docs pages and from the spec for API pages.#274
91eb2e9Thanks @MohamedH1998! - -Cardtakeshref: the whole card becomes the link.#272
9a65f9fThanks @MohamedH1998! - New sites start on the redesigned starter:[and]move between them.data-slotto style it by, except sidebar rows, which stay bare so large sidebars stay light.PageActionsrenders extra actions passed as children; the layout passes the Copy MCP URL action that way.Existing sites keep their look.
nimbus-docs migratelists optional steps to adopt it, the lighter sidebar rows, and the new favicons and asset caching. The registry adds avariantslib that Badge and Button install with them.#278
b6d4837Thanks @MohamedH1998! - - Route files say how they render.nimbus-docs checkreports each route Nimbus manages whose file disagrees withrendering, andcheck --fixrewrites it: theprerenderline, getStaticPaths on built routes only, and the collection name in a collection route's page helper. Withoutrendering, Nimbus builds every one of these routes ahead of time, a collection route such assrc/pages/sdk/[...slug].astroincluded.renderingstill wins at build, which now warns once and lists the files.getCollectionPage(Astro, "sdk")orgetApiRoute(Astro, "api", { homeChunkSize }), so a request-rendered route needs no getStaticPaths to say which collection it serves. A route whose getStaticPaths and helper name different collections fails withnimbus/collection-route-mismatch.add adapter-*updates route files after settingrendering, and its recipes runcheck --fix.outdatedanddiffcompare starter route files in the site's own mode, so a routecheck --fixedited doesn't read as a local change.llms.txtand docs page routes dropexport const prerender = true; the site'soutputandrenderingdecide how they render. A scaffold with a server adapter writes its route files in the mode itsrenderinggives them.#284
f256109Thanks @MohamedH1998! - - A new site can include an API reference:--apiadds one at/api, from your OpenAPI 3.x file (--api ./openapi.yaml) or a sample, and--template apimakes it the whole site, at/. Without flags, the scaffolder asks what the site includes, and it refuses a spec that isn't OpenAPI 3.x before writing anything.AGENT.mdin a site with an API reference says where its spec and route are; a site that is only the reference has no docs-writing sections.Patch Changes
#282
e983040Thanks @MohamedH1998! - - The package READMEs describe Nimbus as the authoring tool for docs, with the CLI by task and the scaffolder's options.#244
17bf1ceThanks @MohamedH1998! - -NIMBUS_BUILD_ONLY=docs-esbuilds one collection, or a comma-separated set, and leaves the others empty;dev,syncandcheckignore it with one notice.docscollection writes its sitemap, search bundle, stylesheet, assets andllms-full.txtunder its prefix, and drops the root files the root slice serves.llms.txtlists every collection'sllms.txt, and search merges the other slices' indexes at runtime.nimbus-docs lintchecks links into other slices against the previous build's routes, as warnings.base: every URL a slice serves and advertises is under it.nimbus-docs lintchecks against reads_redirectswhere the Cloudflare adapter moves it when the site has abase, so redirects stay known to link checking.searchIndexinvirtual:nimbus/confignames the search bundles as served URLs, base included. The starter's search provider loads its slice's bundle and merges the others.#285
d45764dThanks @MohamedH1998! - -migrate's redesigned-starter step listssrc/components/logo.ts, which the newLogo.astroimports.#287
8758eebThanks @MohamedH1998! - -lintandcheckaccept relative links between a content source's pages, which the build turns into page URLs.@cloudflare/nimbus-docs/clientexportsmergeSearchIndexes, which the starter's search provider uses.#243
5604125Thanks @MohamedH1998! - -agents: { mcp: true }serves a remote MCP server at/mcpwithlist_pagesandget_pageover the published Markdown, plus a Server Card at/mcp/server-card, a line inllms.txtand an entry in the AI catalog. It needs a server adapter and@modelcontextprotocol/server;nimbus-docs checkreports a missing SDK.nimbus-docs diff src/components/ConnectMcp.astro --applyandnimbus-docs diff src/components/connect-mcp.client.ts --apply, then pass{capabilities.mcpUrl && <ConnectMcp />}to<PageActions>insrc/layouts/DocsLayout.astro, as the Remote MCP server guide shows.#287
8758eebThanks @MohamedH1998! - -add adapter-cloudflareon a pnpm site declines workerd's build script first, so the install no longer fails.astro dev.searchIndexto it as the starter'sWebMCP.astrodoes.add --overwritenames the files that carry your edits.#260
0c31e84Thanks @MohamedH1998! - -add --overwritewithout a terminal keeps components you've edited and exits 1;--overwrite --yesreplaces them and says how many carried edits.add a binstalls both; an unknown slug stops before anything is installed.checksays an optional upgrade stays listed untilmigraterecords the version as reviewed.sharpis a starter dependency.astro build --root <site>from another folder finds the social-card font.@cloudflare/nimbus-docs@0.19.0
Minor Changes
#265
2440889Thanks @MohamedH1998! - -agents: { discovery: false }leaves origin-root agent discovery to the site that owns the domain: no/.well-known/ard.json,ai-catalog.jsonorapi-catalog, norel="ard"orrel="api-catalog"homepage links, and your own.well-knownfiles are kept.#283
ed581a0Thanks @MohamedH1998! - - An API reference can be the whole site: a route atsrc/pages/[...slug].astroserves the API collection at the root. Every URL Nimbus builds for it is root-relative: pages, the version picker, the sidebar, breadcrumbs, Markdown versions,llms.txt, the sitemap,openapi.jsonand the API catalog.content.config.tsdeclares nodocscollection no longer queries one for the sidebar, so Astro's "collection does not exist" warning is gone. A sidebar that namesdocsstill queries it.#273
352a245Thanks @MohamedH1998! - A redesigned API reference:x-tagGroups, with a filter; large specs load in parts as you scroll. The API route serves the later parts at/api/index/2/and on,noindexand left out of the sitemap and search; it takes the part size ashomeChunkSizein bothgetApiStaticPathsandgetApiRoute(without it, the home is one page), andgetApiRoutereturns the parts ashome.method,path,descriptionanddeprecated, and the root page gains anindexof every endpoint.getApiRootreads an API version's root page from any route;chunkApiIndexandapiIndexRowssplit and flatten its index.nimbus-docs migratelists the optional steps to adopt it.#274
961e85dThanks @MohamedH1998! - - New sites' share cards show the site's logo, the page's section and its title, on white. A long title shrinks before it's cut and stays within three lines.src/pages/og/_card.ts; the logo is drawn once, insrc/components/logo.ts, for the header and the cards.@cloudflare/nimbus-docs/ogfits text by measuring it and renders cards to PNG. It needssatoriand@resvg/resvg-js, optional peers.getPageSection(page)returns the label of a page's nearest parent, from the sidebar for docs pages and from the spec for API pages.#274
91eb2e9Thanks @MohamedH1998! - -Cardtakeshref: the whole card becomes the link.#288
aafc259Thanks @MohamedH1998! - -docsCollection({ markdownFields })writes the named frontmatter fields into each page's.mdand.mdx.NestedContentshows another page's content inside this one, its headings below yours and its section links pointing back to its page.nimbus-docs add changelogbuilds release notes: 10 releases a page, a page per release, and an@astrojs/rssfeed. Existing changelogs keep working (review entrychangelog-release-notes).#267
eb1a3a6Thanks @MohamedH1998! - - A collection is served where its route file is:src/pages/products/sdk/[...slug].astroservessdkat/products/sdk, and every URL Nimbus builds follows: pages, sidebar, Markdown versions,llms.txt, sitemap, search, social cards, and for an API its versions,openapi.jsonand catalog entry. Sites whose route folders match their collection names build the same output.getCollectionUrl(collection)returns where a collection is served, for links in components. A name that isn't a page collection throws.nimbus-docs checklists where each collection is served when a route moves one;check --jsonalways includes it.slug([...path].astro), or a route helper running in a route its collection isn't served from.prefixfor a collection served by a route helper is deprecated: the route sets the URL.getIndexedTopLevel()groups a moved collection under its URL: a group'sslugandlabelcan contain/(products/sdk). Components that build/${slug}/llms.txtor showlabelshould expect it.check: a second static route for a collection that's already served elsewhere (its pages duplicate the collection's), and a helper route in a nested folder whosegetStaticPathsNimbus can't read.nimbus-docs lintfollows the pages Astro writes for a dynamic redirect ("/sdk/[...slug]": "/products/sdk/[...slug]") instead of taking them for pages, so a redirect to a missing page is reported andnimbus/redirected-linkfinds links through it.nimbus-docs lintsuggests the new URL for a link into a moved collection (/sdk/setup→/products/kit/setup), and never suggests the site root or an error page as a near-match. Builds record each collection's URL in.nimbus/routes.jsonfor this.nimbus-docs checkchecks collections added since the last build, alongside the ones that build recorded.#268
4b77047Thanks @MohamedH1998! - - Request-rendered collections are served where their route file is too, nested folders, kept copies andbaseincluded. A request-rendered route under a static folder no collection is served from returns not found and logs why; one under a dynamic folder ([locale]/sdk/) isn't checked, since its folder depends on the URL. A request-rendered collection'sindexpage is listed in the sitemap, search and route checks at the collection's URL (/products/kit/), not/products/kit/index/.astro dev, moving, adding or removing a collection's route file restarts the server onto the new URLs and logs the redirect to add. Editing a route's template doesn't restart.[...section]/llms.txtroute, a collection at a nested URL is linked from thellms.txtof the section above it, not only from the rootllms.txt.#253
3fa357fThanks @MohamedH1998! - - A page collection's files can live anywhere: a glob over a folder outsidesrc/gets callouts, components, citations, links, collision checks and lint like a page undersrc/content.llms.txtand URL collision checks throughwithNimbusMarkdown()..mdfiles included; in collections made with the factories, so does a byte-identical copy.sourcesin the Nimbus config checks out another git repository at build time;docsCollection({ source, base })andapi[].spec: { source, path }read it.NIMBUS_BUILD_ONLYfetches only the sources its collections andapientries read;astro dev,astro syncandastro previewstart without a source they can't fetch, leaving its collections empty, whileastro buildfails naming what reads it.repowith a token or password in it is refused; credentials come from git.editPatternand no git date.titletakes its first heading, else its file name; the sidebar never shows a blank label.2-options.md#signal) become page URLs; a link to a file the collection doesn't publish stays as written, with a warning.refthat starts withrefs/(such asrefs/pull/12/head) is used as written.nimbus-docs checkreportsnimbus/source-floating-refandnimbus/source-unreferenced.nimbus-docs lintreads source snapshots and reports problems by source and repository path;--fixnever writes them.nimbus-docs lintsays how many Markdown (.md) pages it leaves out.nimbus-docs add source <name|url>adds a content source:git(github,gitlab,bitbucket),notion, or a guide for any provider from its docs URL.add source notionhas your agent write a Notion loader into the site, with drafts, slugs and ordering from the database's properties. It warns when no row publishes, naming the status values the database uses.list --type sourcelists the sources.#270
0b30e24Thanks @MohamedH1998! - - A collection served inside an autogenerated sidebar folder appears in that folder, as a group linking its landing page, so breadcrumbs and previous and next links cross between them. Itsindexpage sets the group's label and order, shows only its landing (hideChildren) or leaves it out (sidebar.hidden); naming it insidebar.items, or linking to its URL there, places it by hand; a labeled{ autogenerate: { collection } }group for one links its landing page and holds the collections inside it. A page the sidebar leaves out keeps the breadcrumbs of the folders above it, and a crumb, titled like the page, for each page between there and itself. A docs folder whose only page is itsindexbecomes a group to hold such a collection, keeping the page's label. Sites without such a collection build the same sidebar.#284
f256109Thanks @MohamedH1998! - -outdatedanddiffcompare a site scaffolded with an API reference against the starter it came from: the API route and config read as the starter's, and the spec as your own.#244
17bf1ceThanks @MohamedH1998! - -NIMBUS_BUILD_ONLY=docs-esbuilds one collection, or a comma-separated set, and leaves the others empty;dev,syncandcheckignore it with one notice.docscollection writes its sitemap, search bundle, stylesheet, assets andllms-full.txtunder its prefix, and drops the root files the root slice serves.llms.txtlists every collection'sllms.txt, and search merges the other slices' indexes at runtime.nimbus-docs lintchecks links into other slices against the previous build's routes, as warnings.base: every URL a slice serves and advertises is under it.nimbus-docs lintchecks against reads_redirectswhere the Cloudflare adapter moves it when the site has abase, so redirects stay known to link checking.searchIndexinvirtual:nimbus/confignames the search bundles as served URLs, base included. The starter's search provider loads its slice's bundle and merges the others.#272
9a65f9fThanks @MohamedH1998! - New sites start on the redesigned starter:[and]move between them.data-slotto style it by, except sidebar rows, which stay bare so large sidebars stay light.PageActionsrenders extra actions passed as children; the layout passes the Copy MCP URL action that way.Existing sites keep their look.
nimbus-docs migratelists optional steps to adopt it, the lighter sidebar rows, and the new favicons and asset caching. The registry adds avariantslib that Badge and Button install with them.#243
5604125Thanks @MohamedH1998! - -agents: { mcp: true }serves a remote MCP server at/mcpwithlist_pagesandget_pageover the published Markdown, plus a Server Card at/mcp/server-card, a line inllms.txtand an entry in the AI catalog. It needs a server adapter and@modelcontextprotocol/server;nimbus-docs checkreports a missing SDK.nimbus-docs diff src/components/ConnectMcp.astro --applyandnimbus-docs diff src/components/connect-mcp.client.ts --apply, then pass{capabilities.mcpUrl && <ConnectMcp />}to<PageActions>insrc/layouts/DocsLayout.astro, as the Remote MCP server guide shows.#278
b6d4837Thanks @MohamedH1998! - - Route files say how they render.nimbus-docs checkreports each route Nimbus manages whose file disagrees withrendering, andcheck --fixrewrites it: theprerenderline, getStaticPaths on built routes only, and the collection name in a collection route's page helper. Withoutrendering, Nimbus builds every one of these routes ahead of time, a collection route such assrc/pages/sdk/[...slug].astroincluded.renderingstill wins at build, which now warns once and lists the files.getCollectionPage(Astro, "sdk")orgetApiRoute(Astro, "api", { homeChunkSize }), so a request-rendered route needs no getStaticPaths to say which collection it serves. A route whose getStaticPaths and helper name different collections fails withnimbus/collection-route-mismatch.add adapter-*updates route files after settingrendering, and its recipes runcheck --fix.outdatedanddiffcompare starter route files in the site's own mode, so a routecheck --fixedited doesn't read as a local change.llms.txtand docs page routes dropexport const prerender = true; the site'soutputandrenderingdecide how they render. A scaffold with a server adapter writes its route files in the mode itsrenderinggives them.#277
6c4a633Thanks @MohamedH1998! - - Previous and next links never point a page at itself, when the sidebar reaches a page twice: a group landing that is also a child link, a page linked from two groups, or an anchor link after its page.isolate.boundaries) starts with the group's landing page instead of dropping it, labeled "Overview" underindexDisplay: "overview-leaf"unless the page sets its ownsidebar.label. The landing page gains previous and next links.{ autogenerate: { collection } }group starts with the collection's landing page at any depth. A collection served one segment deep, such as/sdk, now gets the landing row ("Overview"), previous and next links, and a linked breadcrumb; setsidebar.group.hideIndex: trueon itsindexpage to leave it out./index,/<collection>/indexand/<version>/indexreturn 404 instead of a copy of the landing page, as built pages do.nimbus-docs checkstops listing and checking a collection deleted since the last build, and notes once that the last build's collection list is out of date.metadata.<key>, as text instead of dropping it.<script>is still removed, and other unknown tags render as inert text.apiKeyin a cookie send it as a cookie, such as curl's--cookie 'session=<session>', instead of as a header.#260
0c31e84Thanks @MohamedH1998! - -add --overwritewithout a terminal keeps components you've edited and exits 1;--overwrite --yesreplaces them and says how many carried edits.add a binstalls both; an unknown slug stops before anything is installed.checksays an optional upgrade stays listed untilmigraterecords the version as reviewed.sharpis a starter dependency.astro build --root <site>from another folder finds the social-card font.Patch Changes
#266
662c1c8Thanks @MohamedH1998! - -add adapter-cloudflarein a coding agent session wires the adapter as it does from a shell; the agent gets the recipe only where the CLI can't edit the config safely.checkreports a missing@scalar/openapi-parserfor sites with API collections, andcheck --fix --yesinstalls it.checksuggests--fix --yesor editing by hand, whichever--fixcan do;migrate --printon a preview build says reviews start on a release.#273
87f4536Thanks @MohamedH1998! - - The API sidebar lists webhooks in a Webhooks group at the end.#288
aafc259Thanks @MohamedH1998! - - In dev on a Cloudflare site that prerenders with Node, a page's Markdown version follows edits to the page and tocontent.config.tsinstead of failing until a restart.#284
f256109Thanks @MohamedH1998! - -astro devno longer warns that thedocscollection doesn't exist on a site without one.#287
8a43a6cThanks @MohamedH1998! - Error messages link to the docs pages' new addresses on nimbus-docs.com.#263
46ecb84Thanks @MohamedH1998! - -nimbus/image-refchecks image paths under Astro'sbase: an inline image needs the base written and a reference definition must not repeat it.lint --fixrepairs both when the file is inpublic/. Itsignorepatterns are written without the base, as for links.nimbus-docs lintnow reports inline images written without it, such as/arch.png, which can fail CI where it passed before. Those images return 404 on the deployed site.#271
f491c71Thanks @mvvmm! - -astro devrenders a page's headings when the page is first requested, not every page at content sync. Startup and each file save no longer scale with the number of docs.#264
68b9f7cThanks @MohamedH1998! - - The API catalog andard.jsonlist every visible API version: a query-addressed version at its query URL, and the non-default versions of abundle: falsecollection, whose specs are now published too.Linkheaders advertise only API family defaults and link to the complete catalog, keeping response headers independent of version count.AgentApiPublication.markdownUrlis now optional, because versions without a Markdown reference have none. Code that reads it from@cloudflare/nimbus-docs/typesorvirtual:nimbus/agent-capabilitiesmust handleundefined.#252
a7ea698Thanks @sansynx! -nimbus-docs checknow reports a missing server adapter foragents.mcp, request rendering andapiwithbundle: false, and a missing MCP SDK, before a build. Adapter errors name every supported host instead of suggesting Cloudflare first. The placeholdersitewarning names Cloudflare Workers only when no other adapter is configured, so a Node site with a leftoverwrangler.jsoncno longer gets it. The MCP server keeps serving requests on a connection after it rejects an oversized body. Preview builds report starter freshness and diffs correctly,add adapter-*keeps the adapter's version range, andagents: { MCP: true }suggestsmcp.#282
e983040Thanks @MohamedH1998! - - The package READMEs describe Nimbus as the authoring tool for docs, with the CLI by task and the scaffolder's options.#285
d45764dThanks @MohamedH1998! - -migrate's redesigned-starter step listssrc/components/logo.ts, which the newLogo.astroimports.#287
8758eebThanks @MohamedH1998! - -lintandcheckaccept relative links between a content source's pages, which the build turns into page URLs.@cloudflare/nimbus-docs/clientexportsmergeSearchIndexes, which the starter's search provider uses.#287
8758eebThanks @MohamedH1998! - -add adapter-cloudflareon a pnpm site declines workerd's build script first, so the install no longer fails.astro dev.searchIndexto it as the starter'sWebMCP.astrodoes.add --overwritenames the files that carry your edits.#272
ba39e21Thanks @MohamedH1998! - - Relative images now load in a page's Markdown version and inllms-full.txt.checkandlintno longer count a Markdown partial as an unlinted page.