
Security News
Insecure Agents Podcast: How to Keep AI Agents From Bypassing Security Controls
Socket CTO Ahmad Nassri discusses how to keep AI agents from bypassing package blocks, limit credential access, and monitor their actions.
@pulsemcp/air-provider-github
Advanced tools
AIR catalog provider for GitHub — resolves github:// URIs to artifact indexes
AIR catalog provider for GitHub. Resolves github:// URIs in air.json by fetching file content from the GitHub REST API.
npm install @pulsemcp/air-provider-github
Reference remote artifact indexes using github:// URIs:
{
"name": "my-team",
"skills": [
"github://acme/air-org/skills/skills.json",
"./skills/skills.json"
],
"mcp": [
"github://acme/air-org/mcp/mcp.json",
"./mcp/mcp.json"
]
}
import { resolveArtifacts } from "@pulsemcp/air-core";
import { GitHubCatalogProvider } from "@pulsemcp/air-provider-github";
const provider = new GitHubCatalogProvider();
// Or with a token for private repos:
// const provider = new GitHubCatalogProvider({ token: "ghp_..." });
const artifacts = await resolveArtifacts("./air.json", {
providers: [provider],
});
github://owner/repo/path/to/file.json
github://owner/repo@ref/path/to/file.json
| Component | Description |
|---|---|
owner | GitHub organization or user |
repo | Repository name |
@ref | Optional git ref (branch, tag, commit SHA) — appended to the repo name |
path | Path to the JSON file within the repo |
Examples:
github://acme/air-org/skills/skills.json — latest from default branchgithub://acme/air-org@v1.0.0/mcp/mcp.json — pinned to a taggithub://acme/air-org@main/mcp/mcp.json — explicit branchgithub://acme/air-org@abc123/mcp/mcp.json — pinned to a commit SHAgithub://acme/air-org/mcp/mcp.json@feature/branch — ref with slashes (use legacy syntax)The legacy syntax github://owner/repo/path@ref (ref at end of path) is also supported for backward compatibility.
Note: Refs containing slashes (e.g.,
feature/branch) cannot be expressed with the repo-level@refsyntax because the URI is split on/. Use the legacy path-level syntax for such refs.
| Scenario | Auth Required? | How |
|---|---|---|
| Public repository | No | Works out of the box |
| Private repository | Yes | Set AIR_GITHUB_TOKEN env var or pass token option |
| Higher rate limits | Optional | Authenticated requests get 5,000 req/hr vs 60 |
export AIR_GITHUB_TOKEN=ghp_your_token_here
Fetched files are cached locally at ~/.air/cache/github/{owner}/{repo}/{ref}/{path}. Delete the cache directory to force a re-fetch.
FAQs
AIR catalog provider for GitHub — resolves github:// URIs to artifact indexes
The npm package @pulsemcp/air-provider-github receives a total of 5 weekly downloads. As such, @pulsemcp/air-provider-github popularity was classified as not popular.
We found that @pulsemcp/air-provider-github demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.

Security News
Socket CTO Ahmad Nassri discusses how to keep AI agents from bypassing package blocks, limit credential access, and monitor their actions.

Security News
GPT-6 Astra tried to plant malicious code in simulated open source projects using fake GitHub accounts and deceptive PRs during an assigned CTF challenge.

Security News
upm uses Node.js to deliver fast npm installs in about 250 KB, with a JavaScript API and security defaults.