From 5138750b4b5136b8073d4d22f7b27fbe4d9b4859 Mon Sep 17 00:00:00 2001 From: Imran Siddique Date: Tue, 30 Jun 2026 18:31:33 -0700 Subject: [PATCH 1/2] feat(docs): SEO and AEO optimization Add discovery and structured-data assets so the TRACE docs are indexed by search engines and cited by AI answer engines: - llms.txt and llms-full.txt via the mkdocs-llmstxt plugin - robots.txt at the site root that welcomes AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, CCBot, and others) and points to the sitemap - Organization, WebSite, and SoftwareApplication JSON-LD plus OpenGraph and Twitter card meta on every page via a theme override (overrides/main.html) - FAQPage JSON-LD and an answer-first FAQ, a TL;DR block, and per-page meta descriptions on non-normative pages (home, quickstart, trust levels) The docs CI assemble step now also copies robots.txt to the build root. No normative spec text was changed. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/docs.yml | 4 +- docs/index.md | 90 ++++++++++++++++++++++++++++++++++++++ docs/quickstart.md | 4 ++ docs/trust-levels.md | 4 ++ mkdocs.yml | 29 ++++++++++++ overrides/main.html | 63 ++++++++++++++++++++++++++ requirements-docs.txt | 1 + robots.txt | 35 +++++++++++++++ 8 files changed, 229 insertions(+), 1 deletion(-) create mode 100644 overrides/main.html create mode 100644 robots.txt diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index f6b1685..82151a7 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -6,6 +6,8 @@ on: paths: - "docs/**" - "spec/**" + - "overrides/**" + - "robots.txt" - "mkdocs.yml" - "requirements-docs.txt" - "README.md" @@ -58,7 +60,7 @@ jobs: if [ -d spec ]; then cp -r spec $BUILD/spec; fi if [ -d examples ]; then cp -r examples $BUILD/examples; fi - for fname in README.md CHANGELOG.md CONTRIBUTING.md GOVERNANCE.md ROADMAP.md LIMITATIONS.md CNAME; do + for fname in README.md CHANGELOG.md CONTRIBUTING.md GOVERNANCE.md ROADMAP.md LIMITATIONS.md CNAME robots.txt; do if [ -f "$fname" ]; then cp "$fname" "$BUILD/$fname"; fi done diff --git a/docs/index.md b/docs/index.md index d2ea72f..4d4a1bc 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,9 +1,16 @@ +--- +description: TRACE (Trust Runtime Attestation and Compliance Evidence) is an open specification for signed, hardware-attested AI agent governance records that any third party can verify without trusting the operator. +--- + # TRACE **Trust Runtime Attestation and Compliance Evidence** — an open specification for hardware-attested AI agent governance records. TRACE defines the format, anchoring protocol, and verification rules for cryptographically provable evidence that an AI agent ran under a specific policy, in a verified hardware environment, on classified data, invoking identified tools — bound into a single signed artifact rooted in silicon attestation. +!!! tip "TL;DR" + TRACE is an open standard for signed, hardware-attested records that prove how an AI agent actually ran: which model, in which verified hardware environment, under which policy, on what data class, and which tools it called. Anyone can verify a Trust Record without trusting the operator. Install the Python library with `pip install agentrust-trace`. + ---
@@ -71,3 +78,86 @@ record.verify(verifying_key) # raises on invalid ``` [Full API reference →](schema.md) · [Changelog →](../CHANGELOG.md) · [GitHub →](https://github.com/agentrust-io/trace-spec){ target=_blank } + +## Frequently asked questions + +### What is TRACE? + +TRACE (Trust Runtime Attestation and Compliance Evidence) is an open specification for hardware-attested AI agent governance records. It defines the record format, the anchoring protocol, and the verification rules for cryptographic evidence that an AI agent ran under a specific policy, in a verified hardware environment, on a given data class, invoking identified tools. + +### What does a TRACE Trust Record prove? + +A single signed Trust Record answers, in a form any third party can verify without trusting the operator: what model ran, where it ran, under which policy, what data class it touched, which tools were called, and whether the record is independently anchored to a SCITT transparency ledger. + +### What standards is TRACE built on? + +TRACE builds on open IETF and IRTF standards: RFC 9711 (CBOR Web Token / EAT) for the claim envelope, RFC 9334 (RATS) for the attester, verifier, and relying-party roles, and the SCITT draft for transparency-ledger anchoring. It is designed for CoSAI WS4 interoperability. + +### How do I create and verify a Trust Record? + +Install the Python library with `pip install agentrust-trace`, sign a record with `TrustRecord.sign(claims, signing_key)`, anchor it to a SCITT ledger with `record.anchor()`, and check it with `record.verify(verifying_key)`. + +### How does TRACE relate to AGT and cMCP? + +TRACE is the evidence format. AGT and cMCP produce and consume Trust Records, so you can connect them into an end-to-end agent governance pipeline. See the integration guides for details. + +### What is the current status of TRACE? + +The current specification is TRACE v0.1, published with a conformance test suite. See the Limitations page for scope boundaries before relying on it in production. + + diff --git a/docs/quickstart.md b/docs/quickstart.md index 4d732e4..759a6b0 100644 --- a/docs/quickstart.md +++ b/docs/quickstart.md @@ -1,3 +1,7 @@ +--- +description: Install agentrust-trace and sign, anchor, and verify your first TRACE Trust Record in about five minutes. +--- + # Quickstart Get your first TRACE Trust Record in five minutes. diff --git a/docs/trust-levels.md b/docs/trust-levels.md index 43e8f98..7279a95 100644 --- a/docs/trust-levels.md +++ b/docs/trust-levels.md @@ -1,3 +1,7 @@ +--- +description: TRACE defines three trust levels, each adding a stronger guarantee about the origin and integrity of a trust record, from software signing to hardware attestation. +--- + # Trust Levels TRACE defines three trust levels. Each level adds a stronger guarantee about the origin and integrity of the trust record. Higher levels require additional infrastructure but enable stronger relying-party policies. diff --git a/mkdocs.yml b/mkdocs.yml index 412d75f..3356527 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -9,6 +9,7 @@ copyright: "© 2026 OPAQUE Systems — CC BY 4.0" exclude_docs: | .github/ + overrides/ node_modules/ src/ tests/ @@ -25,6 +26,7 @@ exclude_docs: | theme: name: material + custom_dir: overrides font: false logo: docs/assets/icon.svg favicon: docs/assets/icon.svg @@ -67,6 +69,33 @@ theme: plugins: - search: lang: en + - llmstxt: + full_output: llms-full.txt + markdown_description: >- + TRACE (Trust Runtime Attestation and Compliance Evidence) is an open + specification for hardware-attested AI agent governance records. A TRACE + Trust Record binds what model ran, in which verified hardware + environment, under which policy, on what data class, and which tools were + invoked into a single signed artifact rooted in silicon attestation, then + anchors it to a SCITT transparency ledger so a third party can verify it + without trusting the operator. It builds on RFC 9711 (CWT/EAT), RFC 9334 + (RATS), and SCITT, and ships a Python library, agentrust-trace, with a + conformance suite. + sections: + Getting started: + - docs/index.md + - docs/quickstart.md + - docs/trust-levels.md + - docs/verification.md + - docs/glossary.md + Specification: + - spec/trace-v0.1.md + - docs/schema.md + Integration: + - docs/integration/agt.md + - docs/integration/cmcp.md + Platforms: + - docs/platforms/index.md - minify: minify_html: true - mkdocstrings: diff --git a/overrides/main.html b/overrides/main.html new file mode 100644 index 0000000..9be5f67 --- /dev/null +++ b/overrides/main.html @@ -0,0 +1,63 @@ +{% extends "base.html" %} + +{# + SEO and AEO head additions for the TRACE docs. + Adds OpenGraph and Twitter card meta plus JSON-LD structured data + (Organization, WebSite, SoftwareApplication) so search engines and + AI answer engines can describe and cite the specification accurately. + Material already emits the canonical link when site_url is set, so it + is not repeated here. +#} +{% block extrahead %} + {{ super() }} + + {% set page_title = page.title ~ " - " ~ config.site_name if page and page.title and not page.is_homepage else config.site_name %} + {% set page_desc = page.meta.description if page and page.meta and page.meta.description else config.site_description %} + {% set page_url = page.canonical_url if page and page.canonical_url else config.site_url %} + + + + + + + + + + + +{% endblock %} diff --git a/requirements-docs.txt b/requirements-docs.txt index aaf040c..634b63b 100644 --- a/requirements-docs.txt +++ b/requirements-docs.txt @@ -1,6 +1,7 @@ mkdocs>=1.6 mkdocs-material>=9.5 mkdocs-minify-plugin>=0.8 +mkdocs-llmstxt>=0.5 pymdown-extensions>=10.7 mkdocstrings[python]>=0.25 griffe>=0.47 diff --git a/robots.txt b/robots.txt new file mode 100644 index 0000000..5aefab6 --- /dev/null +++ b/robots.txt @@ -0,0 +1,35 @@ +# TRACE specification docs (https://trace.agentrust-io.com) +# Search engines and AI answer engines are welcome to crawl and cite these docs. + +User-agent: * +Allow: / + +# Explicitly welcome major AI and answer-engine crawlers. +User-agent: GPTBot +Allow: / + +User-agent: OAI-SearchBot +Allow: / + +User-agent: ChatGPT-User +Allow: / + +User-agent: ClaudeBot +Allow: / + +User-agent: Claude-Web +Allow: / + +User-agent: anthropic-ai +Allow: / + +User-agent: PerplexityBot +Allow: / + +User-agent: Google-Extended +Allow: / + +User-agent: CCBot +Allow: / + +Sitemap: https://trace.agentrust-io.com/sitemap.xml From eeb23836bd62800c0d3a66da98074a41f7b6ed94 Mon Sep 17 00:00:00 2001 From: Imran Siddique Date: Tue, 30 Jun 2026 18:53:46 -0700 Subject: [PATCH 2/2] feat(docs): add branded OG image and correct brand to AgenTrust Adds a 1200x630 Open Graph card served at /docs/assets/og.png and wires og:image plus twitter:image (summary_large_image). Corrects the publisher name in JSON-LD from AgentTrust to AgenTrust. No normative spec text changed. Co-Authored-By: Claude Opus 4.8 (1M context) --- docs/assets/og.png | Bin 0 -> 33761 bytes overrides/main.html | 9 +++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 docs/assets/og.png diff --git a/docs/assets/og.png b/docs/assets/og.png new file mode 100644 index 0000000000000000000000000000000000000000..6ecc6cbb19c9890b99fff80bd92352ce614e34cf GIT binary patch literal 33761 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

>yjyU_|?ElEJ+7t!x9)0dw~R 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

    q=B+i|5 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 literal 0 HcmV?d00001 diff --git a/overrides/main.html b/overrides/main.html index 9be5f67..43350d2 100644 --- a/overrides/main.html +++ b/overrides/main.html @@ -20,9 +20,14 @@ - + + + + + +