Skip to content

feat: add MkDocs developer documentation site#45

Open
Tehsmash wants to merge 1 commit into
Agent-Card:mainfrom
Tehsmash:feat/mkdocs-documentation-site
Open

feat: add MkDocs developer documentation site#45
Tehsmash wants to merge 1 commit into
Agent-Card:mainfrom
Tehsmash:feat/mkdocs-documentation-site

Conversation

@Tehsmash

Copy link
Copy Markdown

Summary

Adds a developer-friendly documentation site to make ai-catalog accessible to developers beyond the normative W3C specification.

  • 11 documentation pages under docs/: overview, quickstart, 5 guides (creating a catalog, serving, consuming, organizing, adding trust), 3 annotated examples, and a spec signpost
  • MkDocs + Material theme (mkdocs.yml) with a single left-hand navigation, light/dark mode, and code copy
  • Inverted gh-pages URL structure: developer docs at root (/), spec moved to /spec/
  • New publish-docs.yml CI workflow that builds and deploys the docs site to gh-pages root
  • Extended update_gh_pages.py with a subdir mode for deploying to named subdirectories; root mode now preserves spec/ alongside pr/
  • Updated publish-spec.yml to deploy the spec to spec/ using the new subdir mode
  • mkdocs-material added to pyproject.toml as a [dependency-groups] docs dependency

Local preview

uv sync --group docs
uv run --group docs mkdocs serve

@Tehsmash Tehsmash requested a review from a team as a code owner June 19, 2026 15:30
Comment thread docs/examples/minimal-catalog.md Outdated
Identifies the version of the AI Catalog specification this document conforms to. Always present. Clients check this before processing.

**`entries`**
The list of artifacts. Each entry has four required fields: `identifier`, `displayName`, `mediaType`, and `url`.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Flagging this could race with #39

@mindpower

Copy link
Copy Markdown
Member

@Tehsmash could you merge the conflicts?

Comment thread docs/examples/minimal-catalog.md Outdated
{
"identifier": "urn:example:skill:code-review",
"displayName": "Code Review Assistant",
"mediaType": "application/agentskill+zip",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

mediaType -> type
agent-skills+zip

Comment thread docs/examples/minimal-catalog.md Outdated
{
"identifier": "urn:example:mcp:weather",
"displayName": "Weather Service",
"mediaType": "application/mcp-server-card+json",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

same: mediaType -> type

Comment thread docs/examples/minimal-catalog.md Outdated
{
"identifier": "urn:example:a2a:research",
"displayName": "Research Assistant",
"mediaType": "application/a2a-agent-card+json",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

mediaType->type

Comment thread docs/examples/minimal-catalog.md Outdated
Identifies the version of the AI Catalog specification this document conforms to. Always present. Clients check this before processing.

**`entries`**
The list of artifacts. Each entry has four required fields: `identifier`, `displayName`, `mediaType`, and `url`.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

mediaType -> type

A human-readable label shown in discovery UIs and client tooling.

**`mediaType`**
What kind of artifact this is. Clients use this to decide whether they can use the artifact — without fetching it.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

mediaType -> type

"specVersion": "1.0",
"host": {
"displayName": "Acme Financial Corp",
"identifier": "did:web:acme-corp.com"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

did:air?. Please update the identifier based on: #36

Comment thread docs/examples/multi-protocol-agent.md Outdated
{
"identifier": "urn:acme:agent:finance",
"displayName": "Acme Finance Agent",
"mediaType": "application/ai-catalog+json",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

type

Comment thread docs/examples/multi-protocol-agent.md Outdated
"specVersion": "1.0",
"entries": [
{
"identifier": "urn:acme:agent:finance:mcp",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

urn:air?

{
"type": "SOC2-Type2",
"uri": "https://trust.acme-corp.com/reports/soc2.pdf",
"mediaType": "application/pdf",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

remove mediaType?

Comment thread docs/examples/multi-protocol-agent.md Outdated
{
"identifier": "urn:acme:agent:finance:a2a",
"displayName": "Acme Finance A2A Agent",
"mediaType": "application/a2a-agent-card+json",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

type?

@mindpower

Copy link
Copy Markdown
Member

@Tehsmash could you resolve the merge conflicts?

Also please update examples based on #36 for identifier and #37 for type.

Adds a developer-friendly documentation site powered by MkDocs and the
Material theme, making ai-catalog accessible to developers beyond the
normative W3C specification.

Key changes:
- docs/ — 11 pages covering overview, quickstart, 5 guides (creating,
  serving, consuming, organizing, trust), 3 annotated examples, and a
  spec signpost
- mkdocs.yml — Material theme config with single left-hand nav, no tabs
- pyproject.toml — adds [dependency-groups] docs with mkdocs-material
- .github/workflows/publish-docs.yml — new CI workflow deploying docs
  to gh-pages root
- tools/update_gh_pages.py — adds subdir mode and preserves spec/ in
  root mode
- .github/workflows/publish-spec.yml — spec now deploys to spec/
  subdirectory, freeing root for the docs site

URL structure after deployment:
  https://agent-card.github.io/ai-catalog/       ← developer docs
  https://agent-card.github.io/ai-catalog/spec/  ← normative spec

Signed-off-by: Sam Betts <1769706+Tehsmash@users.noreply.github.com>
@Tehsmash Tehsmash force-pushed the feat/mkdocs-documentation-site branch from b13978f to dc6b06e Compare June 29, 2026 20:55
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.

4 participants