-
Notifications
You must be signed in to change notification settings - Fork 2.9k
feat(web): add llms.txt, llms-full.txt, and /what-is-roo-code page for AEO #11354
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Found 1 issue (2 instances) -- both
Mention @roomote in a comment to request specific changes to this pull request or fix all unresolved issues. |
| <Button | ||
| size="lg" | ||
| className="w-full sm:w-auto bg-violet-600 hover:bg-violet-700 text-white"> | ||
| <a | ||
| href={EXTERNAL_LINKS.CLOUD_APP_SIGNUP_HOME} | ||
| className="flex items-center justify-center gap-2"> | ||
| Try Cloud for Free | ||
| <ArrowRight className="size-4" /> | ||
| </a> | ||
| </Button> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This Button wraps an <a> without the asChild prop, so it renders as <button><a>...</a></button> -- invalid HTML (interactive content nested inside <button>). Clicking the button padding outside the link text won't navigate. The rest of the codebase uses asChild for this pattern (e.g. slack/page.tsx, pricing/page.tsx, cloud/page.tsx).
| <Button | |
| size="lg" | |
| className="w-full sm:w-auto bg-violet-600 hover:bg-violet-700 text-white"> | |
| <a | |
| href={EXTERNAL_LINKS.CLOUD_APP_SIGNUP_HOME} | |
| className="flex items-center justify-center gap-2"> | |
| Try Cloud for Free | |
| <ArrowRight className="size-4" /> | |
| </a> | |
| </Button> | |
| <Button | |
| size="lg" | |
| className="w-full sm:w-auto bg-violet-600 hover:bg-violet-700 text-white" | |
| asChild> | |
| <a | |
| href={EXTERNAL_LINKS.CLOUD_APP_SIGNUP_HOME} | |
| className="flex items-center justify-center gap-2"> | |
| Try Cloud for Free | |
| <ArrowRight className="size-4" /> | |
| </a> | |
| </Button> |
Fix it with Roo Code or mention @roomote and request a fix.
| <Button size="lg" className="w-full sm:w-auto"> | ||
| <a | ||
| href={EXTERNAL_LINKS.MARKETPLACE} | ||
| target="_blank" | ||
| rel="noopener noreferrer" | ||
| className="flex items-center justify-center gap-2"> | ||
| <Download className="size-4" /> | ||
| Install Free Extension | ||
| </a> | ||
| </Button> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same issue here: missing asChild means this renders <button><a>...</a></button>, which is invalid HTML nesting. Clicks on the button area outside the link text won't navigate to the marketplace URL.
| <Button size="lg" className="w-full sm:w-auto"> | |
| <a | |
| href={EXTERNAL_LINKS.MARKETPLACE} | |
| target="_blank" | |
| rel="noopener noreferrer" | |
| className="flex items-center justify-center gap-2"> | |
| <Download className="size-4" /> | |
| Install Free Extension | |
| </a> | |
| </Button> | |
| <Button size="lg" className="w-full sm:w-auto" asChild> | |
| <a | |
| href={EXTERNAL_LINKS.MARKETPLACE} | |
| target="_blank" | |
| rel="noopener noreferrer" | |
| className="flex items-center justify-center gap-2"> | |
| <Download className="size-4" /> | |
| Install Free Extension | |
| </a> | |
| </Button> |
Fix it with Roo Code or mention @roomote and request a fix.
|
🚀 Preview deployed! Your changes have been deployed to Vercel: Preview URL: https://roo-code-website-qrziftise-roo-code.vercel.app This preview will be updated automatically when you push new commits to this PR. |
Related GitHub Issue
N/A - Internal initiative for Answer Engine Optimization (AEO)
Description
Adds Answer Engine Optimization (AEO) support to the marketing site at
apps/web-roo-code:1.
llms.txtandllms-full.txt(served frompublic/)llms.txt-- Concise, LLM-readable summary (~40 lines) following the llms.txt spec. Includes product descriptions, key links, and quick facts.llms-full.txt-- Comprehensive markdown (~250 lines) covering the full product surface: Extension capabilities, Cloud agents, integrations (Slack, Linear, GitHub), pricing tiers, security/compliance, getting started, community links, and FAQ.roocode.com/llms.txtandroocode.com/llms-full.txt.2.
/what-is-roo-codepageA content-rich informational page targeting answer-engine queries like "what is roo code", "AI coding agent", etc.:
AboutPage+ArticleJSON-LD structured data withspeakablespecificationFAQSectionandCTASectioncomponents3. Navigation updates
nav-bar.tsxfooter.tsxnext-sitemap.config.cjswith priority 0.9 for the new pageTest Procedure
llms.txtandllms-full.txtare accessible at their respective URLs after deploy/what-is-roo-coderenders correctly with all sectionsnpx tsc --noEmitinapps/web-roo-code-- passes cleanPre-Submission Checklist
Documentation Updates
Additional Notes
All new content is static -- no API calls or dynamic data fetching. The
llms.txtfiles are plain text served frompublic/, and the new page is a standard Next.js page component using existing patterns and shared components.Important
Adds AEO support with
llms.txt,llms-full.txt, and/what-is-roo-codepage, updating navigation and sitemap.llms.txtandllms-full.txtinpublic/for concise and comprehensive product information./what-is-roo-codepage with detailed product overview, SEO metadata, and JSON-LD structured data.nav-bar.tsxandfooter.tsx.next-sitemap.config.cjsto set priority 0.9 for/what-is-roo-codepage.This description was created by
for 0c4567f. You can customize this summary. It will automatically update as commits are pushed.