1password-cli — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited 1password-cli (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Choose one of the following authentication methods:
If you have a 1Password Desktop app installed:
If the Desktop bridge doesn't work, use the session manager to avoid repeated password prompts:
npx 1password-cli-setup and enable "Session Token Caching". source ~/.config/op-ssh/op-session-manager.sh~/.zshrc or ~/.bashrc): export OP_SERVICE_ACCOUNT_TOKEN="your-service-account-token-here"Reload your shell and verify setup:
source ~/.zshrc
op account listop-referenceManage 1Password secret references:
op-reference check # Verify 1Password CLI authentication
op-reference list # List available vaults and items
op-reference get "op://..." # Get secret value by reference
op-reference copy "op://..." # Copy reference to clipboard
op-reference add NAME REF # Save named reference
op-reference env FILE # Load .env.1pass with references resolvedUse .env.1pass files with secret references:
# User-level: ~/.config/op-ssh/.env.1pass
# Project-level: ./.env.1pass (in project root)
# Format:
OPENAI_API_KEY="op://Private/API-Keys/openai"
DATABASE_URL="op://Work/Database/prod"Format: op://vault/item/field
op://Private/API-Keys/openaiop://Work/Database/productionThe Pi extension automatically loads:
~/.config/op-ssh/.env.1pass./.env.1pass (overrides user)/op-status - Check authentication and loaded variables/op-env - Load project environment/op-env-user - Load user environment/op-get op://... - Get a specific secret/op-list - Show loaded variablesop_get_secretRetrieve secrets by reference without exposing them in context:
{
"reference": "op://Private/API-Keys/openai"
}Configuration follows cascading precedence:
~/.config/op-ssh/.env.1pass) - Global secrets./.env.1pass) - Project-specific, overrides userWhen building AI tools or interacting with LLMs regarding 1Password, always refer to the official LLM-optimized documentation:
https://developer.1password.com/llms.txthttps://developer.1password.com/llms-cli.txthttps://developer.1password.com/llms-sdks.txthttps://developer.1password.com/llms-secrets-automation.txtTo fetch specific pages as Markdown for retrieval-augmented generation (RAG), append .md to any documentation URL (e.g., https://developer.1password.com/docs/cli/get-started.md).
1Password provides agent hooks that run inside supported IDEs and AI agents (Cursor, Claude Code, GitHub Copilot, Windsurf) to validate and verify 1Password setup before shell execution or tool use.
The available hook is 1password-validate-mounted-env-files which validates mounted .env files from 1Password Environments.
You can install the agent hooks from the 1Password/agent-hooks repository:
git clone https://github.com/1Password/agent-hooks
cd agent-hooks
# Install for Cursor
./install.sh --agent cursor --target-dir /path/to/your/project
# Install for Windsurf
./install.sh --agent windsurf --target-dir /path/to/your/project
# Install for Claude Code
./install.sh --agent claude-code --target-dir /path/to/your/projectThe script will bundle the hooks and optionally create the required config file (e.g. .cursor/hooks.json or .windsurf/hooks.json).
~/.config/op-ssh/
├── .env.1pass # User-level environment
├── references.conf # Named references
└── op-ai-helper.sh # Helper functions
~/projects/project/
└── .env.1pass # Project-level environment (overrides user)Error: Not signed in to 1Password
Solution: Set OP_SERVICE_ACCOUNT_TOKEN in ~/.zshrcError: Secret not found: op://...
Solution: Verify the reference in 1Password: op://vault/item/fieldError: 1Password CLI (op) not found
Solution: Install from https://1password.com/downloads/command-line/For applications, use oprun (the shell helper) to inject secrets:
# With environment file
oprun --env-file app.env -- node app.js
# With command-line arguments
OPENAI_API_KEY="op://Private/API-Keys/openai"
oprun -- node app.jsBased on: "Combining Keychain and 1Password CLI for ssh-agent management" by Bas Nijholt.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.