agentleFS
vikas8520-codervikas8520-coder/nerve/skills/omni-providers/SKILL.md

omni-providers

Skill0 starsChanged 3 months agoMITView on GitHub

Manage provider connections, API keys, OAuth flows, and connection tests via the REST API. List, add, update, remove, and test AI provider integrations (OpenAI, Anthropic, Gemini, and 160+).

  • Reads credentials
  • Sends data out

3 other projects use a version of this, 3 of them edited.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

3 rules. 0 are common, 1 is distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 3 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    All requests require a valid Bearer token or session cookie.

    line 13
  2. Distinctive:

    Test multiple providers at once

    line 88
  3. Very specific:

    Import an Antigravity CLI (agy) token file as an agy connection

    line 119

“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md
<!-- generated by src/lib/agentSkills/generator.ts; manual edits will be overwritten -->

Overview

Manage provider connections, API keys, OAuth flows, and connection tests via the REST API. List, add, update, remove, and test AI provider integrations (OpenAI, Anthropic, Gemini, and 160+).

Authentication

All requests require a valid Bearer token or session cookie. Obtain a token via POST /api/auth/login or configure REQUIRE_API_KEY=false for local development.

Endpoints

GET /api/providers

List provider connections

curl https://localhost:20128/api/providers \
  -H "Authorization: Bearer $NERVE_TOKEN"

POST /api/providers

Create provider connection

curl -X POST https://localhost:20128/api/providers \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

GET /api/providers/{id}

Get provider connection

curl https://localhost:20128/api/providers/{id} \
  -H "Authorization: Bearer $NERVE_TOKEN"

PATCH /api/providers/{id}

Update provider connection

curl -X PATCH https://localhost:20128/api/providers/{id} \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

DELETE /api/providers/{id}

Delete provider connection

curl -X DELETE https://localhost:20128/api/providers/{id} \
  -H "Authorization: Bearer $NERVE_TOKEN"

POST /api/providers/{id}/test

Test provider connection

curl -X POST https://localhost:20128/api/providers/{id}/test \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

GET /api/providers/{id}/models

List models for a provider

curl https://localhost:20128/api/providers/{id}/models \
  -H "Authorization: Bearer $NERVE_TOKEN"

POST /api/providers/test-batch

Test multiple providers at once

curl -X POST https://localhost:20128/api/providers/test-batch \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/providers/validate

Validate provider credentials

curl -X POST https://localhost:20128/api/providers/validate \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

GET /api/providers/client

Get client-side provider info

curl https://localhost:20128/api/providers/client \
  -H "Authorization: Bearer $NERVE_TOKEN"

POST /api/providers/agy-auth/import

Import an Antigravity CLI (agy) token file as an agy connection

curl -X POST https://localhost:20128/api/providers/agy-auth/import \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/providers/agy-auth/import-bulk

Bulk-import multiple Antigravity CLI (agy) token files (up to 50)

curl -X POST https://localhost:20128/api/providers/agy-auth/import-bulk \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/providers/agy-auth/zip-extract

Extract .json token files from an uploaded ZIP for agy bulk import

curl -X POST https://localhost:20128/api/providers/agy-auth/zip-extract \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/providers/agy-auth/apply-local

Auto-detect and import the local Antigravity CLI (agy) login from disk

curl -X POST https://localhost:20128/api/providers/agy-auth/apply-local \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

GET /api/provider-nodes

List provider nodes

curl https://localhost:20128/api/provider-nodes \
  -H "Authorization: Bearer $NERVE_TOKEN"

POST /api/provider-nodes

Create provider node

curl -X POST https://localhost:20128/api/provider-nodes \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

PATCH /api/provider-nodes/{id}

Update provider node

curl -X PATCH https://localhost:20128/api/provider-nodes/{id} \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

DELETE /api/provider-nodes/{id}

Delete provider node

curl -X DELETE https://localhost:20128/api/provider-nodes/{id} \
  -H "Authorization: Bearer $NERVE_TOKEN"

POST /api/provider-nodes/validate

Validate a provider node

curl -X POST https://localhost:20128/api/provider-nodes/validate \
  -H "Authorization: Bearer $NERVE_TOKEN"
  -H "Content-Type: application/json" \
  -d '{}'

GET /api/provider-models

List provider models

curl https://localhost:20128/api/provider-models \
  -H "Authorization: Bearer $NERVE_TOKEN"

Payloads

See the full OpenAPI specification at GET /api/openapi/spec or docs/openapi.yaml for detailed request/response schemas.

<!-- skill:custom-start -->

Additional endpoints

POST /api/providers/{id}/refresh

Rotate / refresh OAuth tokens or re-validate credentials for a provider connection. Useful after token expiration or when credentials need to be renewed without deleting the connection.

curl -X POST https://localhost:20128/api/providers/{id}/refresh \
  -H "Authorization: Bearer $NERVE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'

GET /api/provider-metrics

Retrieve aggregated usage and performance metrics for all provider connections (request counts, error rates, latency percentiles, token usage). Used by dashboards and Auto-Combo scoring.

curl https://localhost:20128/api/provider-metrics \
  -H "Authorization: Bearer $NERVE_TOKEN"

Response example:

{
  "providers": [
    {
      "id": "my-openai",
      "requestCount": 1240,
      "errorRate": 0.02,
      "p50LatencyMs": 340,
      "p99LatencyMs": 1200,
      "tokensIn": 500000,
      "tokensOut": 250000
    }
  ]
}

GET /api/providers/health-matrix

Returns a health-matrix view of all providers with per-connection status, circuit-breaker state, and cooldown expiry. Useful for debugging routing decisions.

curl https://localhost:20128/api/providers/health-matrix \
  -H "Authorization: Bearer $NERVE_TOKEN"
<!-- skill:custom-end -->

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.