Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions .github/workflows/publish-catalog.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
# SPDX-License-Identifier: Apache-2.0
# Copyright (c) 2026 NVIDIA Corporation. All rights reserved.

name: Publish AI Catalog
on:
push:
branches: [main]
paths:
- "docs/**"
- "docs/.well-known/ai-catalog.json"
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: pages
cancel-in-progress: false
jobs:
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/configure-pages@v5
- uses: actions/upload-pages-artifact@v3
with:
path: "docs"
- id: deployment
uses: actions/deploy-pages@v4
46 changes: 46 additions & 0 deletions .github/workflows/validate-ai-catalog.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
# SPDX-License-Identifier: Apache-2.0
# Copyright (c) 2026 NVIDIA Corporation. All rights reserved.

name: Validate AI Catalog

on:
pull_request:
paths:
- "docs/.well-known/ai-catalog.json"
- "skills/**/SKILL.md"
- "tests/integration/test_catalog.py"
- ".github/workflows/validate-ai-catalog.yml"
push:
branches: [main]
paths:
- "docs/.well-known/ai-catalog.json"
- "skills/**/SKILL.md"
- "tests/integration/test_catalog.py"
- ".github/workflows/validate-ai-catalog.yml"
workflow_dispatch:

permissions:
contents: read

concurrency:
group: validate-ai-catalog-${{ github.ref }}
cancel-in-progress: true

jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.x"

- name: Install pytest
run: pip install pytest

- name: Validate catalog
run: pytest tests/integration/test_catalog.py
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).

## [Unreleased]

### Added

- Agentic Resource Discovery catalog at [`docs/.well-known/ai-catalog.json`](docs/.well-known/ai-catalog.json)
- GitHub Pages publishing workflow for the AI catalog fallback endpoint
- Integration tests and CI workflow to keep the AI catalog aligned with `skills/`

## [0.3.0] - 2025-05-21

### Added
Expand Down
6 changes: 6 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,12 @@ Avoid agent-specific paths in the repo (`.claude/skills/`, `.codex/skills/`, `.c

At install time, your tooling or packaging can copy or symlink from `skills/` into the appropriate agent discovery locations (for example `.agents/skills/`, `.claude/skills/`, `.codex/skills/`) as required by each tool.

## Catalog Entry Checklist

When adding a new skill, add a corresponding entry to `docs/.well-known/ai-catalog.json`. Use an existing entry as a template. The `displayName` must match the skill's directory name exactly; the integration tests enforce this.

Write the `description` and `representativeQueries` for a search index. Be specific about what the skill does and what a user would type to need it.

## IP Review and License (External Skills)

For skills published to `github.com/nvidia/skills`, NVIDIA contributors confirm three things per onboarding PR:
Expand Down
Loading
Loading