Skip to content

Add RFC 8288 Link headers for agent discovery#40

Draft
baanish wants to merge 1 commit intomainfrom
cursor/link-headers-rfc8288-2cb9
Draft

Add RFC 8288 Link headers for agent discovery#40
baanish wants to merge 1 commit intomainfrom
cursor/link-headers-rfc8288-2cb9

Conversation

@baanish
Copy link
Copy Markdown
Owner

@baanish baanish commented Apr 18, 2026

Summary

Implements RFC 8288 Link response headers on the homepage for agent discovery, using registered relation types from the link-headers skill.

What ships

  • Homepage Link header (comma-separated): api-catalog/.well-known/api-catalog.json, service-desc/docs/openapi.json (OpenAPI 3.1 copy of the catalog), service-doc/README.md, describedby/docs/payload-format.md.
  • Static export: public/.well-known/api-catalog.json is emitted to out/. Post-export copies README.md and docs/payload-format.md into out/ and writes out/_headers for Cloudflare Pages.
  • npm run preview: sets the same header when serving out/index.html.
  • Self-hosted server: same header on static index.html and injected UUID viewer HTML; Docker copies scripts/ so the shared header builder loads at runtime.

Validation

  • npm run check
  • Manual: curl -I against preview server confirms Link: on /.

Notes

  • Subpaths: when NEXT_PUBLIC_BASE_PATH is set at build time, post-export _headers uses the prefixed paths; preview and self-hosted respect the same env.
Open in Web Open in Cursor 

Expose api-catalog, service-desc, service-doc, and describedby on homepage
responses: api-catalog served at /.well-known/api-catalog.json, OpenAPI alias at
/docs/openapi.json, plus copied README and payload-format docs in the static
export. Post-export step writes Cloudflare Pages _headers and copies docs;
preview and self-hosted servers set the same Link header on index HTML.

Co-authored-by: Aanish Bhirud <baanish@users.noreply.github.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 18, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e56446e0-e7ca-4044-a1cf-21aecb348541

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cursor/link-headers-rfc8288-2cb9

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@cloudflare-workers-and-pages
Copy link
Copy Markdown

Deploying agent-render with  Cloudflare Pages  Cloudflare Pages

Latest commit: 22bf15a
Status: ✅  Deploy successful!
Preview URL: https://58167252.agent-render.pages.dev
Branch Preview URL: https://cursor-link-headers-rfc8288.agent-render.pages.dev

View logs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants