0xerwin1/dbflux/dbflux-builtin-auth-provider

Claude Code and agent skill by 0xerwin1/dbflux

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Add native DBFlux auth providers and credential resolvers using the core auth-provider contracts. Trigger: When adding a built-in auth provider, credential provider, SSO provider, OAuth provider, or secret/parameter value provider.

Install

npx vskill@latest install 0xerwin1/dbflux/dbflux-builtin-auth-provider

SKILL.md

When to Use

  • The auth provider should be compiled into DBFlux.
  • The provider should appear in Settings → Auth Profiles without configuring an RPC service.
  • The provider resolves credentials or registers secret/parameter value providers.

Source of Truth

  • crates/dbflux_core/src/auth/mod.rs
  • crates/dbflux_core/src/auth/types.rs
  • crates/dbflux_app/src/auth_provider_registry.rs
  • crates/dbflux_app/src/app_state.rs
  • crates/dbflux_aws/src/auth.rs for built-in examples
  • crates/dbflux_ui/src/ui/windows/settings/auth_profiles_section.rs for generic form behavior

Critical Patterns

  • Prefer implementing DynAuthProvider when the provider needs a form definition, login URL callback, dynamic options, value-provider registration, or import/write-back hooks.
  • AuthFormDef reuses DriverFormDef; do not create provider-specific UI rendering.
  • Return secrets through ResolvedCredentials.secret_fields, never regular fields or logs.
  • AuthSession.data and ResolvedCredentials.provider_data are opaque runtime data, not persisted config.
  • Capability flags must describe real behavior, especially login support and verification URL progress.

Checklist

  1. Define a stable provider_id() and display name.
  2. Return an auth form definition for Settings → Auth Profiles.
  3. Implement validate_session().
  4. Implement login() and call the URL callback when interactive login exposes a verification URL.
  5. Implement resolve_credentials() with clear separation between plain fields and secret fields.
  6. Override register_value_providers() only for real secret/parameter backends.
  7. Override import/write-back hooks only when the provider owns external profiles.
  8. Register the provider in AuthProviderRegistry in AppState behind the correct feature gate.
  9. Add tests for form parsing, session states, credential resolution, and secret redaction expectations.

Boundaries

  • Do not log tokens, passwords, session tokens, access keys, or secret fields.
  • Do not add auth-provider-specific UI branches unless the existing generic form seam is insufficient and the user approves a new generic seam.
  • Do not persist opaque session/provider data.

Commands

bash
python3 scripts/lint.py fmt --check
cargo test -p <provider-crate-or-dbflux_aws>
cargo check --workspace

Security

  • Security scanPassed, 98 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
142
Repository forks
12
7-day trend score
25

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/0xerwin1/dbflux/dbflux-builtin-auth-provider/badge)](https://verified-skill.com/skills/0xerwin1/dbflux/dbflux-builtin-auth-provider)

Something wrong with this skill or its page? Tell us.