Catalog npm
PACKAGE EXPLORERView in registry

@021.is/agent-docs

npm

Single-source-of-truth docs catalog + .md route handlers + llms.txt + agent-prompt scaffolding. One library, every product gets first-class agent integration.

agentdocsllms.txtmcpopenapi
Versions collected2
Direct dependencies1From release 0.1.2
Last observed20 Oct, 22:00 UTC

README

Current package documentation

@021.is/agent-docs

Single-source-of-truth docs catalog. One library, every product gets first-class agent integration without copy-paste.

One DocsCatalog object feeds:

  • the JSX page (your existing app/docs/<slug>/page.tsx)
  • the .md route handler (drop in markdownRoute(catalog))
  • the /llms.txt discovery index (buildLlmsTxt)
  • the /llms-full.txt flat dump (buildLlmsFullTxt)

Drift between surfaces becomes physically impossible.

Install

bun add @021.is/agent-docs

Quickstart

Define one catalog per page in lib/docs/<slug>.ts:

import { type DocsCatalog, code, h2, p } from "@021.is/agent-docs";

export const installCatalog: DocsCatalog = {
  slug: "install",
  title: "Install the SDK",
  description: "One package, two minutes to working sign-in.",
  body: [
    h2("Install"),
    p("Use your package manager."),
    code("bash", "bun add @021.is/my-sdk"),
  ],
};

Drop the matching .md route handler:

// app/docs/install.md/route.ts
import { markdownRoute } from "@021.is/agent-docs/next";
import { installCatalog } from "@/lib/docs/install";

export const dynamic = "force-static";
export const GET = markdownRoute(installCatalog);

Wire llms.txt:

// app/llms.txt/route.ts
import { llmsTxtRoute } from "@021.is/agent-docs/next";
import { installCatalog } from "@/lib/docs/install";

export const dynamic = "force-static";
export const GET = llmsTxtRoute({
  name: "my-app",
  tagline: "Your product tagline.",
  siteUrl: "https://example.com",
  catalogs: [installCatalog],
  openapi: { yamlUrl: "https://example.com/openapi.yaml" },
});

That is the whole integration. Every catalog you ship is automatically rendered on /docs/<slug>.md, listed on /llms.txt, and concatenated into /llms-full.txt.

Why

Stripe, Auth0, and Clerk all ship agent-consumable docs. So do we. Reuse the library and your product is on day one.

License

MIT.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 2

Collected releases
VersionPublishedDirect dependenciesOpen version
0.1.2Registry latest28 May 20261
0.1.128 May 20261

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
021is/spine-ts

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 22:00 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:16b4e305968dc88d854d8098f9877de3bd982ce2ae1e3b764adae06d34c928d5