# Open Edge Platform — Agent Skills Index
This repository is the central hub for **External facing agent skills** to be used by the customers
to build solutions with Open Edge Platform products.
---
<!-- BEGIN SKILLS INDEX -->
<!-- Last updated: 2026-10-15 06:59 UTC -->
| Product | Skills |
|---------|--------|
| [Anomalib](https://github.com/open-edge-platform/anomalib) | [anomalib-adding-a-datamodule](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/anomalib-adding-a-datamodule), [anomalib-adding-a-model](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/anomalib-adding-a-model), [anomalib-benchmarking](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/anomalib-benchmarking), [anomalib-tiled-ensemble](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/anomalib-tiled-ensemble), [anomalib-training](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/anomalib-training) |
| [Chat Question and Answer](https://github.com/open-edge-platform/edge-ai-libraries) | [chatqna-docker-deploy](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/chatqna-docker-deploy), [chatqna-helm-deploy](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/chatqna-helm-deploy) |
| [DL Streamer](https://github.com/open-edge-platform/dlstreamer) | [dlstreamer-coding-agent](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/dlstreamer-coding-agent) |
| [DL Streamer Pipeline Server](https://github.com/open-edge-platform/edge-ai-libraries) | [dlsps-user](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/dlsps-user) |
| [Geti](https://github.com/open-edge-platform/geti) | [geti-using-the-pipeline](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/geti-using-the-pipeline), [getitune-discovering-models](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/getitune-discovering-models), [getitune-exporting-a-model](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/getitune-exporting-a-model), [getitune-optimizing-a-model](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/getitune-optimizing-a-model), [getitune-preparing-datasets](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/getitune-preparing-datasets), [getitune-running-inference](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/getitune-running-inference), [getitune-training-a-model](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/getitune-training-a-model) |
| [Metro AI Suite - AI App Builder](https://github.com/open-edge-platform/metro-ai-suite) | [metro-ai-app-builder](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/metro-ai-app-builder) |
| [Metro AI Suite - Vision AI App Recipe](https://github.com/open-edge-platform/metro-ai-suite) | [metro-ai-app-recipe](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/metro-ai-app-recipe) |
| [Model Download](https://github.com/open-edge-platform/edge-ai-libraries) | [model-download-user](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/model-download-user) |
| [Multimodal DataPrep microservice](https://github.com/open-edge-platform/edge-ai-libraries) | [multimodal-dataprep-user](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/multimodal-dataprep-user) |
| [Multimodal Embedding Serving Microservice](https://github.com/open-edge-platform/edge-ai-libraries) | [multimodal-embedding-serving-user](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/multimodal-embedding-serving-user) |
| [OEP CLI Installer](https://github.com/open-edge-platform/edge-ai-libraries) | [openedge-cli](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/openedge-cli) |
| [Physical AI Runtime](https://github.com/openvinotoolkit/physicalai) | [physicalai-runtime-adding-a-camera-backend](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/physicalai-runtime-adding-a-camera-backend), [physicalai-runtime-adding-a-robot-integration](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/physicalai-runtime-adding-a-robot-integration), [physicalai-runtime-configuring-inference-pipeline](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/physicalai-runtime-configuring-inference-pipeline), [physicalai-runtime-loading-exported-policies](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/physicalai-runtime-loading-exported-policies), [physicalai-runtime-running-policy-on-robot](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/physicalai-runtime-running-policy-on-robot) |
| [Physical AI Train](https://github.com/open-edge-platform/physical-ai-studio) | [physicalai-train-adding-a-policy](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/physicalai-train-adding-a-policy), [physicalai-train-benchmarking-a-policy](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/physicalai-train-benchmarking-a-policy), [physicalai-train-exporting-and-validating](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/physicalai-train-exporting-and-validating), [physicalai-train-training-a-policy](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/physicalai-train-training-a-policy), [physicalai-train-working-with-datasets](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/physicalai-train-working-with-datasets) |
| [Scenescape](https://github.com/open-edge-platform/scenescape) | [scenescape-setup](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/scenescape-setup) |
| [Time Series Analytics Microservice](https://github.com/open-edge-platform/edge-ai-libraries) | [time-series-analytics-user](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/time-series-analytics-user) |
| [UAV Mission Compute SDK](https://github.com/open-edge-platform/federal-and-aerospace-ai-suite) | [uav-mission-compute-sdk](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/uav-mission-compute-sdk) |
| [Video Search and Summarization](https://github.com/open-edge-platform/edge-ai-libraries) | [vss-deploy](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/vss-deploy), [vss-deploy-helm](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/vss-deploy-helm), [vss-search-index](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/vss-search-index), [vss-summarize-video](https://github.com/open-edge-platform/skills/tree/main/.agents/skills/vss-summarize-video) |
| **Total** | **17 products, 39 skills** |
<!-- END SKILLS INDEX -->
---
## Documentation
| Guide | Description |
|-------|-------------|
| [Overview](docs/user-guide/index.md) | What skills are and key features of this repository |
| [Get Started](docs/user-guide/get-started.md) | Install, list, update, and remove skills via `npx skills` |
| [How It Works](docs/user-guide/how-it-works.md) | Skill loading, index maintenance CI workflow, and lock file |
| [Release Notes](docs/user-guide/release-notes.md) | Changelog and release history |
## Maintaining the Index
The [`update-skills-index`](.github/workflows/update-skills-index.yml) workflow keeps this repository's README and `.agents/skills/` directory in sync automatically. It:
- Runs on a **daily schedule** to pick up upstream skill changes.
- Can be triggered **manually** via `workflow_dispatch` for on-demand syncs or dry-run previews.
- Reads [`skills-config.json`](../../skills-config.json) as the **single source of truth** for which skills to install.
- Installs or updates each skill via `npx skills add/update`, then rebuilds the skills table in the README between the `<!-- BEGIN SKILLS INDEX -->` / `<!-- END SKILLS INDEX -->` sentinels.
### Reconciliation Logic
On each run the workflow:
1. **Removes** skills that are no longer in `skills-config.json` or whose configured source (repo / ref / path) has changed.
2. **Batches** remaining installs/updates by `(repo, ref)` so each source repository is cloned only once per run, regardless of how many skills it contains.
3. **Verifies** each installed skill appears in `skills-lock.json` at the expected path; falls back to a path-scoped retry if a skill is nested too deeply for the CLI's default scan depth.
---
## Contributing a Skill
See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines.
To add a skill to the org index:
1. Create a `SKILL.md` in your repo with all the required artifacts. Supported locations (in order of convention):
| Scenario | Path |
|----------|------|
| Standard (GitHub Copilot / VS Code) | `**/.github/skills/<skill-name>/SKILL.md` |
| Agent-agnostic | `**/.agents/skills/<skill-name>/SKILL.md` |
| Skills folder | `**/skills/<skill-name>/SKILL.md` |
| Repo root, single skill | `SKILL.md` |
Go through some of the guidelines documented at [SKILLS_GUIDE.md](./SKILLS_GUIDE.md) for defining, creating, validating and managing skills.
2. Run [skill validator](https://github.com/open-edge-platform/skills/blob/main/SKILLS_GUIDE.md#6-validation)
and [skillspector](https://github.com/open-edge-platform/skills/blob/main/SKILLS_GUIDE.md#7-security-scanning) against your skills to have a clean report.
```bash
# Run skill-validator tool
skill-validator check --allow-dirs=evals,benchmark,example-prompts /path/to/your-skill
# Run skillspector tool
skillspector scan /path/to/your-skill --no-llm
```
3. Evaluate and benchmark your skill using `tools/run_multi_cli_eval.py`. This
runs your skill's `evals/evals.json` across GitHub Copilot CLI, Claude Code
CLI, and OpenAI Codex CLI per configuration, grades each run with an LLM judge,
and produces per-CLI and cross-CLI benchmark reports:
```bash
python3 tools/run_multi_cli_eval.py \
--skill-path /path/to/your-skill \
```
See [`tools/README.md`](tools/README.md) for the full option reference,
including how to run multiple coding agents CLIs, pin specific models, skip grading,
or point at non-default CLI binary paths.
4. Add an entry to `skills-config.json` in this repo and open a PR against `main`.
**On every PR that touches `skills-config.json`**, the
[`Check Skills Config`](.github/workflows/check-skills-config.yml) workflow
runs automatically. It validates the config against its JSON schema and
verifies that every newly added skill actually exists at the declared path in
its source repository. **This check is a required status check — the PR
cannot be merged until it passes.**
Once the PR is merged, the
[`Update Skills Index`](.github/workflows/update-skills-index.yml) workflow
triggers automatically on the push to `main`. It installs or updates each
skill via `npx skills add/update` and rebuilds the skills table in this
README. The workflow also runs on a daily schedule to pick up upstream skill
changes, and can be triggered manually via `workflow_dispatch` for on-demand
syncs or dry-run previews.
Read the source README