This skill should be used when the user asks to read, inject, or manage secrets using the 1Password CLI (op). Covers authenticating with op, reading secrets from 1Password vaults, injecting credentials into config files, storing new secrets, troubleshooting op CLI issues, secret rotation, or credential management — even if the user does not explicitly say "1password".
From 1passwordnpx claudepluginhub brightops-ai/brightopsai-plugins-official --plugin 1passwordThis skill uses the workspace's default tool permissions.
references/cli-examples.mdreferences/get-started.mdProvides demand forecasting, safety stock optimization, replenishment planning, and promotional lift estimation for multi-location retailers managing 300-800 SKUs.
Creates consistent pitch decks, one-pagers, investor memos, financial models, accelerator apps, and fundraising materials from a single source of truth.
Provides expertise on electricity/gas procurement, tariff optimization, demand charge management, renewable PPA evaluation, hedging, load profiling, and multi-facility energy strategies.
Follow the official CLI get-started steps. Don't guess install commands.
references/get-started.md — install + app integration + sign-in flowreferences/cli-examples.md — real op command examplesThe user's shell profile already handles several things before Claude starts. Do not duplicate this work — build on it instead.
Pre-injected at launch (via cc / cc-dsp shell wrappers in ~/.zshrc):
GITHUB_PERSONAL_ACCESS_TOKEN is exported via op read before Claude starts.
It's already available in the environment — don't re-read it.STITCH_API_KEY is exported via op read before Claude starts.
Used by the Stitch AI MCP server — don't re-read it.SSH agent:
SSH_AUTH_SOCK points to the 1Password SSH agent socket.
SSH operations (git clone/push over SSH, etc.) work automatically.Default vault: agentic_ai
op://agentic_ai/<Item Name>/<field> unless
the user specifies a different vault.~/.claude/CLAUDE.md.Same pattern as GITHUB_PERSONAL_ACCESS_TOKEN:
op item create --vault="agentic_ai" ...export VAR="$(op read 'op://agentic_ai/...')" to cc/cc-dsp in ~/.zshrc${VAR} in the .mcp.json env blockThat's it — no wrapper scripts needed. The env var is injected before Claude
starts, and .mcp.json expands ${VAR} references in env values.
Use this skill for mid-session secret operations:
op inject)op run)op auth or connectivity issuesprintenv VAR_NAME).
If it's there, use it — no need for op.op --version.op whoami to check auth status. If desktop app integration is enabled
and the app is unlocked, this may just work without tmux.op whoami fails or returns "not signed in", set up a tmux session
(see below) and authenticate there.--account or OP_ACCOUNT.Claude Code's shell tool spawns a fresh TTY per command, which can lose op
authentication state between calls. A persistent tmux session solves this by
keeping a single authenticated shell alive.
Use tmux when:
op whoami fails outside tmuxop commands in sequenceExample setup:
SOCKET_DIR="${TMPDIR:-/tmp}/claude-op-sockets"
mkdir -p "$SOCKET_DIR"
SOCKET="$SOCKET_DIR/op-session.sock"
SESSION="op-auth-$(date +%Y%m%d-%H%M%S)"
tmux -S "$SOCKET" new -d -s "$SESSION" -n shell
# Authenticate
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- "op signin" Enter
# Verify (wait a moment for the app prompt to complete)
sleep 2
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- "op whoami" Enter
sleep 1
tmux -S "$SOCKET" capture-pane -p -J -t "$SESSION":0.0 -S -50
# Run your op commands inside the session
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- "op read 'op://agentic_ai/MyItem/password'" Enter
sleep 1
tmux -S "$SOCKET" capture-pane -p -J -t "$SESSION":0.0 -S -10
# Clean up when done
tmux -S "$SOCKET" kill-session -t "$SESSION"
op read 'op://agentic_ai/<Item Name>/<field>'
export VAR_NAME="$(op read 'op://agentic_ai/<Item Name>/<field>')"
Prompt the user — never write the value to disk:
op item create --category=api-credential --title="<Service Name>" --vault="agentic_ai" '<field>=<value>'
op inject -i config.yml.tpl -o config.yml
op run --env-file="./.env" -- <command>
Note: op run doesn't allocate a TTY. For interactive tools, prefer
op read + export instead.
op run / op inject / op read + export.agentic_ai vault.op
commands that will silently fail.