Skip to content

Restructure docs in deployment order, migrate to OKF v0.2, and publish for AI agents - #6

Merged
tyson-swetnam merged 1 commit into
mainfrom
okf-agent-surface
Sep 20, 2026
Merged

tyson-swetnam merged 1 commit into
mainfrom
okf-agent-surface

Conversation

@tyson-swetnam

Copy link
Copy Markdown
Member

Two commits. The first is the existing, previously unmerged claude/cyverse-docs-okf-migration-yz97f0 migration; the second adds the agent surface on top, following the conventions of the UNM CARC documentation.

1. OKF v0.2 migration and restructure (a717da4)

Every concept page gains YAML frontmatter (type, description, tags, status, provenance); every directory gains an index.md listing; docs/log.md records bundle history. The tree is reordered to follow a real deployment: architecture/, platform/, deployment/ (planning, then phases 01–07 by dependency), operations/, api/, development/, references/. Adds the end-to-end deployment/from-scratch.md runbook and previously undocumented steps (HAProxy, iRODS provider, iCAT, migrations, cert-manager, Harbor, Argo, OpenLDAP, OpenSearch, NATS, bootstrap, verification, troubleshooting). See that commit message for the deduplication and correction details.

2. Publish the bundle for AI agents (b852516)

  • docs/llms.txt: linked outline of all 101 content pages, built from the nav; each entry names the HTML page, its Markdown twin, and its raw GitHub source.
  • docs/llms-full.txt: the whole corpus in one file (~482 KB, ~123k tokens), frontmatter included, links absolute.
  • scripts/postbuild_agent_surface.py (idempotent): serves every page's Markdown at its URL + index.md; adds a "View this page as Markdown" button, a "Machine-readable versions" line, and okf:* meta tags to every page; writes robots.txt.
  • New About section: For AI agents (entry points, the raw-source fallback for sandboxes that cannot reach docs.cyverse.org, trust signals, placeholder and deprecation warnings) and Contributing. about.md moves to about/overview.md.
  • AGENTS.md for coding agents; CLAUDE.md points at it and is no longer gitignored.
  • CI validates OKF conformance, fails if the committed llms.txt indexes have drifted, and trial-builds PRs. Only main deploys.

Two fixes found while wiring this up

  • Theme features were declared as a [project.theme.features] table, which Zensical ignores, so navigation tabs and the edit/view-source buttons were not rendering. Now a list.
  • site_url pointed at cyverse.github.io/docs rather than the docs.cyverse.org domain in CNAME; every absolute URL in the generated files depends on it.

Verified locally

okf_validate.py: 0 errors, 0 warnings across 122 files. zensical build --clean: no issues. Agent surface applied twice with no diff on the second run. site/CNAME survives the build (the deploy uses force_orphan).

Note for reviewers

Pushes to main publish straight to docs.cyverse.org, and this changes every page's URL. Worth a look at the built site before merging.

🤖 Generated with Claude Code

Expose the OKF v0.2 bundle the way the UNM CARC documentation does, so
agents and harnesses consume the source rather than scraping HTML.

Machine-readable surface
- scripts/gen_llms_txt.py builds docs/llms.txt (a linked outline of all
  101 content pages, built from the nav, each entry naming the page, its
  Markdown twin, and its raw GitHub source) and docs/llms-full.txt (the
  whole corpus with frontmatter, links made absolute).
- scripts/postbuild_agent_surface.py runs after the build: it mirrors
  every page's Markdown at its URL + index.md, adds a "View this page as
  Markdown" button, a "Machine-readable versions" line, and okf:* meta
  tags (type, status, trust tier, provenance) to every page, and writes
  robots.txt. It is idempotent.
- scripts/okf_validate.py checks OKF conformance; scripts/okf_common.py
  holds the shared helpers. All read site settings from zensical.toml.
- The footer links llms.txt, llms-full.txt, and the agent guide.

About section
- docs/about/ai-agents.md: entry points, the raw-source fallback for
  sandboxes that cannot reach docs.cyverse.org, how to read the OKF
  trust signals, and the placeholder and deprecation warnings.
- docs/about/contributing.md: the frontmatter contract, verification,
  and the local build and validation commands.
- about.md moves to about/overview.md under a new about/ listing.

Repository and CI
- AGENTS.md documents the bundle, layout, commands, and editing rules
  for coding agents; CLAUDE.md points at it (and is no longer ignored).
- CI validates OKF conformance, fails if the committed llms.txt indexes
  have drifted, and trial-builds pull requests; only main deploys, now
  through the agent-surface step.

Fixes found while wiring this up
- Theme features were a [project.theme.features] table, which Zensical
  ignores, so navigation tabs and the edit and view-source buttons never
  rendered; they are now a list, which the Markdown button also needs.
- site_url pointed at cyverse.github.io/docs rather than the
  docs.cyverse.org domain in CNAME, which every absolute URL in the
  generated files depends on.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@tyson-swetnam
tyson-swetnam merged commit 5b6a689 into main Sep 20, 2026
2 of 3 checks passed
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.

1 participant