From 02c755fe2f25be29dea636df7987b74e9549a70f Mon Sep 17 00:00:00 2001 From: Jason Colapietro Date: Fri, 24 Jul 2026 23:27:43 -0400 Subject: [PATCH] feat(seo): publish truthful Agentix llms index --- public/llms.txt | 37 +++++++++++++++++++++++++++++ tests/public-link-integrity.test.ts | 23 ++++++++++++++++++ 2 files changed, 60 insertions(+) create mode 100644 public/llms.txt diff --git a/public/llms.txt b/public/llms.txt new file mode 100644 index 0000000..00b4425 --- /dev/null +++ b/public/llms.txt @@ -0,0 +1,37 @@ +# Agentix + +> Agentix is a browser-local portfolio tracker for monitoring agents, manually recording daily calls and earnings, and reviewing performance grades. + +Canonical site: https://agentix.suedeai.ai +Suede Agent Studio: https://agents.suedeai.ai + +## Important data note + +The 18 public agent profiles and their earnings figures are deterministic illustrative examples shown until an operator adds their own data. They are not live x402 listings, published Agent Studio records, or evidence of settled transactions. + +## Illustrative example profiles + +- Web Scraper Pro: https://agentix.suedeai.ai/agent/agt_web_scraper_pro +- PDF Extractor: https://agentix.suedeai.ai/agent/agt_pdf_extractor +- Code Reviewer: https://agentix.suedeai.ai/agent/agt_code_reviewer +- Sentiment Engine: https://agentix.suedeai.ai/agent/agt_sentiment_engine +- Geocode API: https://agentix.suedeai.ai/agent/agt_geocode_api +- Translation Bot: https://agentix.suedeai.ai/agent/agt_translation_bot +- Market Data Feed: https://agentix.suedeai.ai/agent/agt_market_data_feed +- OCR Vision: https://agentix.suedeai.ai/agent/agt_ocr_vision +- Email Parser: https://agentix.suedeai.ai/agent/agt_email_parser +- KYC Verifier: https://agentix.suedeai.ai/agent/agt_kyc_verifier +- Weather Oracle: https://agentix.suedeai.ai/agent/agt_weather_oracle +- Stock Quote: https://agentix.suedeai.ai/agent/agt_stock_quote +- Image Moderation: https://agentix.suedeai.ai/agent/agt_image_moderation +- SEO Auditor: https://agentix.suedeai.ai/agent/agt_seo_auditor +- Summarizer: https://agentix.suedeai.ai/agent/agt_summarizer +- Sports Odds: https://agentix.suedeai.ai/agent/agt_sports_odds +- Forecast Engine: https://agentix.suedeai.ai/agent/agt_forecast_engine +- Address Validator: https://agentix.suedeai.ai/agent/agt_address_validator + +## Related discovery + +- Sitemap: https://agentix.suedeai.ai/sitemap.xml +- Robots: https://agentix.suedeai.ai/robots.txt +- Agent Studio x402 discovery: https://agents.suedeai.ai/.well-known/x402 diff --git a/tests/public-link-integrity.test.ts b/tests/public-link-integrity.test.ts index 6a3707f..7af32b3 100644 --- a/tests/public-link-integrity.test.ts +++ b/tests/public-link-integrity.test.ts @@ -5,6 +5,29 @@ import { publicAgentData } from "@/lib/data/seed-provider"; import { SITE_URL } from "@/lib/site"; describe("public example link integrity", () => { + it("publishes a truthful LLM index for the illustrative example set", async () => { + const content = await readFile( + new URL("../public/llms.txt", import.meta.url), + "utf8", + ); + const examples = publicAgentData(); + const profileLines = content + .split("\n") + .filter((line) => line.startsWith("- ") && line.includes("/agent/")); + + expect(examples).toHaveLength(18); + expect(profileLines).toHaveLength(examples.length); + expect(content).toContain("deterministic illustrative examples"); + expect(content).toContain("They are not live x402 listings"); + expect(content).toContain("or evidence of settled transactions."); + + for (const { agent } of examples) { + expect(content).toContain( + `${SITE_URL}/agent/${encodeURIComponent(agent.id)}`, + ); + } + }); + it("suppresses unavailable Studio listings for every public example page", () => { const examples = publicAgentData(); expect(examples).toHaveLength(18);