Skip to content

[#643] Add /llms.txt, copy button, and tab deep links#658

Merged
realproject7 merged 3 commits intomainfrom
task/640c-llms-txt
Mar 30, 2026
Merged

[#643] Add /llms.txt, copy button, and tab deep links#658
realproject7 merged 3 commits intomainfrom
task/640c-llms-txt

Conversation

@realproject7
Copy link
Copy Markdown
Owner

Summary

  1. New /llms.txt route: Plain-text integration info — CLI commands, API endpoints, contract addresses, chain info, env vars. Cached 1 hour.
  2. "Copy llms.txt link" button: Added to Build tab, copies https://plotlink.xyz/llms.txt to clipboard.
  3. URL tab deep links: /agents?tab=build auto-selects Build tab. Supports register, build, dashboard. Uses useSearchParams with Suspense boundary.

Fixes #643
Tracks realproject7/agent-os#321

Test plan

  • GET /llms.txt returns plain text with integration info
  • /agents?tab=build auto-selects Build tab
  • /agents?tab=dashboard auto-selects Dashboard tab
  • "Copy llms.txt link" button copies URL to clipboard
  • Build passes

🤖 Generated with Claude Code

1. New /llms.txt route: plain-text integration info with CLI commands,
   API endpoints, contract addresses, chain info, env vars
2. AgentBuild: "Copy llms.txt link" button copies plotlink.xyz/llms.txt
3. Agents page: reads ?tab=build|register|dashboard from URL params
   for direct deep linking (wrapped in Suspense for SSR)

Fixes #643

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented Mar 30, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
plotlink Ignored Ignored Mar 30, 2026 9:48pm

Request Review

Copy link
Copy Markdown
Collaborator

@project7-interns project7-interns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verdict: REQUEST CHANGES

Summary

The routing and copy-link pieces look fine, but the new /llms.txt payload is still underspecified for the API section. This ticket explicitly asks for request and response formats, and the route currently documents request bodies only.

Findings

  • [high] The new llms.txt endpoint lists the four indexer request bodies, but it does not document any response formats even though that is part of the ticket requirement for machine-readable integration details. As written, an agent consumer still has to inspect the app source to know whether to expect { success: true }, { indexed: n }, or error payloads.
    • File: src/app/llms.txt/route.ts:32
    • Suggestion: Expand each endpoint entry to include at least the normal success shape and the error JSON shape, for example storyline/plot/donation success responses and the trade indexer's { indexed } response.

Decision

Requesting changes because the core new artifact in this PR, /llms.txt, still does not meet the stated requirement to provide request/response formats for the API endpoints.

Each endpoint now shows request body, success response, and error
response JSON shapes. Added 409 retry-safe note and tx validation info.

Addresses T2a review: missing response formats in llms.txt.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Collaborator

@project7-interns project7-interns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verdict: REQUEST CHANGES

Summary

The API request/response shapes are documented now, but the revised /llms.txt still includes a behavior note that does not match the actual indexer routes. Since this file is supposed to be machine-readable integration guidance, that remaining mismatch is still blocking.

Findings

  • [high] The new note says 409 = already indexed (safe to retry), but none of the four indexer routes documented here actually return 409. The current implementations return { success: true }, { indexed }, or { error } with other statuses, so an agent integrating against /llms.txt would now be coded against a response contract the app does not implement.
    • File: src/app/llms.txt/route.ts:54
    • Suggestion: Remove the 409 note, or update the underlying routes to actually return 409 for the already-indexed case before documenting it here.

Decision

Requesting changes because /llms.txt is now closer, but it still advertises response behavior that the app does not currently provide.

No indexer route returns 409. Replaced with accurate note that
duplicate indexing is safe (upsert on tx_hash + log_index).

Addresses T2a review on PR #658.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Collaborator

@project7-interns project7-interns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verdict: APPROVE

Summary

The latest revision fixes the remaining /llms.txt contract mismatch: the API section now includes request and response shapes, and the behavior note no longer advertises a nonexistent 409 response. The tab deep-linking and copy-link pieces remain scoped and consistent with the ticket.

Findings

  • No blocking findings.

Decision

Approving because the current revision addresses the prior review feedback and now matches the actual indexer behavior closely enough for the machine-readable integration contract required by Queue #643 / agent-os#321.

@realproject7 realproject7 merged commit 96c3e1e into main Mar 30, 2026
5 checks passed
@realproject7 realproject7 deleted the task/640c-llms-txt branch March 30, 2026 21:51
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.

[#640] Sub-3: Add /llms.txt endpoint + direct Build tab link

2 participants