Skip to content
Back to skills

Provider Adapter

ASecurity

Add or modify a target provider (vercel, aws, gcp, supabase, github, ssh, or a new one) - connect modes (CLI login, token, OAuth, keys), test and health, token issue/revoke and scoping, scope classification, shims, fixtures and tests.

  • 6 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 8, 2026
ai-agentsgobashsqlawsgcpgitsecurity

Works with

  • cli

Security analysis

A100/100

Scanned October 8, 2026

npx -y skills add NicholasFlemmer/styx-app --skill provider-adapter --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Provider Adapter?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Provider Adapter
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/nicholasflemmer-provider-adapter/badge)](https://www.skillsdirectory.com/skills/nicholasflemmer-provider-adapter)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: provider-adapter
description: Add or modify a target provider (vercel, aws, gcp, supabase, github, ssh, or a new one) - connect modes (CLI login, token, OAuth, keys), test and health, token issue/revoke and scoping, scope classification, shims, fixtures and tests.
argument-hint: '<provider>'
allowed-tools: Read, Grep, Edit, Write, Bash(pnpm:*), WebFetch
---

# Provider adapter: $ARGUMENTS

The full, current walkthrough is `docs/contributing/adding-a-target.md` (worked example: Supabase). Read it first and
follow its "Adding yours" checklist; this is the short version.

1. Add the id to `providerSchema` (`packages/core/src/model/common.ts`) and the second `Provider` union in
   `apps/desktop/src/main/providers/types.ts`; `targets.provider` has a SQL `CHECK`, so add a table-rebuild migration
   (`/db-migration`).
2. Implement `ProviderAdapter` in `apps/desktop/src/main/providers/$0.ts`: connect (CLI login first, then token /
   OAuth / keys under Advanced), `test`, `health`, `issue`, `revoke`, `scopeOfCommand(argv)` (fails closed: unknown
   commands are the widest scope). Register it in `providers/index.ts`.
3. Secrets go through `CredentialVault` only, behind `credentialRef`; `config` holds non-secret ids. Report `scoped`
   honestly: an unscoped prod credential needs MFA even for reads.
4. Shims are generic (`packages/cli/src/wrap.ts` + `exec_authorize`); add the CLI name to the shim tool list, the
   stripped env vars and the secret shapes the guide lists.
5. Copy and UI: provider names, connect bodies and the renderer's provider lists (see the guide's checklist).
6. Tests: `MemoryVault`, stubbed `fetch`, `FakeCliRunner`, a scope table including "fails closed", the registry
   test. Fake credentials are marked `FIXTURE`; never call real providers.
7. Run the `security-reviewer` subagent.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.