Labsco
bitwarden logo

perform-preflight

โ˜… 121

by bitwarden ยท part of bitwarden/ai-plugins

A checklist to run before you hand a change in: the tests pass, the formatting is clean, no secret has ended up in a log, and the code follows the patterns the rest of the project uses.

๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅโœ“ VerifiedFreeQuick setup
๐Ÿงฉ One of 43 skills in the bitwarden/ai-plugins package โ€” works on its own, and pairs well with its siblings.

WHEN YOUR AGENT SHOULD USE IT

A QUICK BOUNDARY

USE FOR

  • Run the test, lint, and architecture checks a Bitwarden repo expects before opening a pull request.
  • Catch a zero-knowledge violation, like unencrypted vault data logged or persisted, before committing.
  • Get a specific failure surfaced with its output when a check can't be fixed automatically.

This is the playbook your agent receives when the skill activates โ€” you don't need to read it to use the skill, but it's here to audit before installing.

Preflight Checklist

Run this checklist before committing or creating a PR. Consult the repo's CLAUDE.md for platform-specific commands (test runner, linter, formatter).

Tests

  • Run tests for affected modules (consult CLAUDE.md for commands)
  • New code has test coverage
  • No existing tests broken

Code Quality

  • Lint and format pass (consult CLAUDE.md for commands)
  • No TODO comments without Jira ticket references
  • Public APIs documented per repo convention (KDoc, DocC, XML docs, etc.)

Bitwarden Security

  • Zero-knowledge architecture preserved โ€” no unencrypted vault data logged, persisted, or transmitted
  • Sensitive data uses platform-appropriate secure storage (consult CLAUDE.md Security Rules)
  • No sensitive data in log statements

Architecture

  • Changes follow patterns in CLAUDE.md and architecture docs
  • Dependency injection and error handling follow repo convention
  • String resources added to the correct location (if applicable)

On Failure

If any check fails, fix the issue before proceeding. For test failures, diagnose the root cause rather than skipping. For lint/format failures, run the repo's auto-fix command if available. If a check cannot be resolved, flag it to the user with the specific failure output.