BC Gov Agent Skills
A shared catalogue of agent skill profiles

Frequently Asked Questions

If the answer you're looking for isn't here, the four pages it likely lives on are: Consume a Skill, Contribute a Skill, the spec, and Pipeline & governance.

What is npx?

npx is a command-line tool that runs npm packages without installing them globally. It ships with Node.js and the npm package manager.

When you run npx skills add bcgov/agent-skills, npx downloads and runs the vercel-labs/skills CLI in one step, then cleans up after itself. No global install needed.

Do I already have npx Open a terminal and run npx --version. If it prints a number, you're good. If you see command not found, you need Node.js — see the prerequisites on the Consume a Skill page.

Troubleshooting: See the full Troubleshooting section on Consume a Skill for solutions to common npx errors.

What if I can't get npx to work?

The most common issue is that Node.js isn't installed, or the terminal hasn't picked up the new PATH after install.

Quick fix:

  • Close your terminal completely and open a fresh one.
  • Run node --version. If it prints a version, Node.js is installed and you should have npx too.
  • Run npx --version. If that works, try your skill install again.

If Node.js isn't installed: Head to Consume a Skill → Install Node.js for platform-specific steps (Windows, macOS, Linux).

Still stuck? See the full Troubleshooting section on Consume a Skill for solutions to network errors, proxy issues, cache problems, and more. If you absolutely cannot use npx, you can manually install skills by cloning the repo and copying the skill folder by hand.

Don't want to install Node.js? Use the manual install method instead: just clone the repo and copy the skill folder to the right location for your agent.

A skill is a small, focused Markdown document — SKILL.md — that teaches an AI coding agent when to act, what to do, and what to avoid. Each skill targets one specific situation (e.g., "adding subnets inside an existing VNet") rather than trying to cover a whole topic.

The format is interoperable with GitHub Copilot, Claude, and other agents that load SKILL.md manifests. See agentskills.io for the broader ecosystem and our spec for the exact rules this repo enforces.

How do I point my agent at an installed skill?

You don't need to. npx skills add bcgov/agent-skills asks which agent you're using (or you can pass --agent github-copilot, claude-code, cursor, cline, continue, etc.) and copies the skill folder into the location that agent already reads. The next time the agent loads, the skill is there.

If your agent isn't on the supported list, see the Manual install section on Consume a Skill for the git clone + cp -r fallback.

Why does this repo only host BC Gov–specific skills?

Generic skills — Azure SDKs, Microsoft Foundry, M365, document formats, language workflows — are already maintained in larger upstream catalogues (listed on Contribute). Duplicating them here would fragment the ecosystem and double the maintenance cost without giving consumers anything they couldn't already get.

What's missing upstream is the BC Gov–specific layer: Public Cloud Landing Zone constraints, internal services, policy-driven workflows, organisational conventions. That's the gap this repo fills, and the bar we apply when reviewing new skills.

Why doesn't this use a registry like npm or GitHub Packages?

The merge-to-main state of the repo is the release. npx skills add reads SKILL.md files straight out of the repo (via the vercel-labs/skills CLI) and copies the containing folder into the location each agent reads. That removes:

  • A publish workflow and the packages: write token it would need.
  • An auth flow on the consumer side — no tokens, no .npmrc, no gh auth login just to read public skills.
  • Version metadata to keep in sync between the manifest and a package file.

If you need a reproducible install, pin to a specific commit: npx skills add https://github.com/bcgov/agent-skills/tree/<sha>. See Consume → Pinning.

Why can't I open a PR from a fork?

The PR workflow has a fork-gate job that fails any PR whose head repo isn't this one. That failure cascades into the results aggregator, which is the required status check on main. The reason: fork PRs would let untrusted code influence what we validate (and, potentially, what we publish). Maintainers re-land fork-style contributions by pushing the change to an in-repo branch after review.

If you don't have push access to bcgov/agent-skills, file an issue describing what you'd like to add. See Pipeline → PR workflow for the full rationale.

Why are signed commits required?

The main branch ruleset requires it. Signed commits give us a verifiable chain of who actually authored each change in the history. That's useful for audit, for catching compromised credentials, and for keeping the catalogue traceable back to a real contributor.

SSH commit signing is the simplest path on a developer laptop. See GitHub's signing docs.

What are "meta-skills"?

Skills that operate on this repository itself: scaffolding a new skill and validating the spec. They live under .github/skills/ and are validated against the same SKILL.md spec as the public catalogue, but they aren't part of it. They ship with the repo so agents working in a checkout can use them.

Listed on the catalogue.

My situation isn't BC Gov–specific. Where should I look?

Start with the upstream catalogues; they cover most general agent workflows:

If something close exists but isn't quite right, an issue or PR upstream benefits the widest audience. See Contribute → Upstream catalogues.