Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
steipete avatar

1password

  • 3.9k installs
  • 385k repo stars
  • Updated August 3, 2026
  • steipete/clawdis

1password is an agent skill that configures 1Password CLI auth and uses op read, op run, and op inject so commands access vault secrets without exposing credentials in logs or files.

About

1password is a security integration skill for the 1Password op CLI bundled in steipete/clawdis. It walks agents through verifying op --version, detecting auth mode among service account tokens, desktop app integration, or standalone signin, and confirming access with op whoami before any secret read. Service accounts use OP_SERVICE_ACCOUNT_TOKEN for headless direct exec, while desktop integration runs op directly without tmux so IPC to the 1Password app remains reachable on macOS, Linux, and Windows. Standalone signin uses a persistent tmux session with eval-wrapped op signin only when neither service account nor desktop integration is available. Common operations include op read for vault secrets, op run to execute commands with injected environment variables from op:// references, and op inject to render templates into config files. Guardrails forbid pasting secrets into logs or chat and prefer op run and op inject over writing credentials to disk. Developers reach for 1password when scripts or agents need database passwords, API tokens, or SSH keys without exposing them in shell history or plaintext env files.

  • Detects service account, desktop app integration, or standalone signin auth modes before secret access.
  • op read retrieves vault secrets; op run injects env vars; op inject renders template files.
  • Desktop integration requires direct exec without tmux to preserve 1Password IPC channels.
  • Standalone signin uses eval-wrapped op signin inside a persistent tmux session on POSIX hosts.
  • Guardrails block logging secrets and prefer op run or op inject over writing credentials to disk.

1password by the numbers

  • 3,896 all-time installs (skills.sh)
  • +166 installs in the week ending Aug 2, 2026 (Skillselion tracking)
  • Ranked #102 of 2,719 Automation & Workflows skills by installs in the Skillselion catalog
  • Security screen: HIGH risk (skills.sh audit)
  • Data as of Aug 3, 2026 (Skillselion catalog sync)
At a glance

1password capabilities & compatibility

Capabilities
auth mode detection for op cli · secret read via op read references · command execution with op run injection · template rendering with op inject
Use cases
api development · orchestration
From the docs

What 1password says it does

Never paste secrets into logs, chat, or code.
SKILL.md
npx skills add https://github.com/steipete/clawdis --skill 1password

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs3.9k
repo stars385k
Security audit3 / 3 scanners passed
Last updatedAugust 3, 2026
Repositorysteipete/clawdis

How do I wire database passwords or API tokens into scripts and agent commands without writing secrets to .env files or shell history?

Securely read secrets, inject credentials, and run commands without exposing passwords in logs or environment files.

Who is it for?

Developers integrating 1Password CLI for vault-backed secrets in local scripts, agents, or headless service account setups.

Skip if: Skip when secrets are managed entirely outside 1Password or when op CLI cannot be installed on the target host.

When should I use this skill?

User needs op signin, op read, op run, or op inject for 1Password vault secrets in development workflows.

What you get

Authenticated op commands that read, inject, or run with vault-backed secrets while keeping credentials out of chat and disk.

  • injected config files
  • vault-backed env vars
  • masked command output

Files

SKILL.mdMarkdownGitHub ↗

1Password CLI

Follow the official CLI get-started steps. Don't guess install commands.

References

  • references/get-started.md (install + app integration + sign-in flow)
  • references/cli-examples.md (real op examples)

Workflow

1. Check OS + shell. 2. Verify CLI present: op --version. 3. Detect the auth mode the user has set up:

  • Service account: OP_SERVICE_ACCOUNT_TOKEN is set (typical for headless setups, CI, gateways).
  • Desktop app integration: the 1Password desktop app is running with CLI integration enabled (typical on macOS / Windows / Linux desktops).
  • Standalone signin: neither of the above — op signin will prompt for an account password every session.

4. Run op according to the auth mode (see below). 5. Verify access: op whoami should succeed before any secret read. 6. If multiple accounts: use --account or OP_ACCOUNT.

Running op per auth mode

Service account (preferred for headless / gateway use)

Direct exec. No tmux, no signin step.

export OP_SERVICE_ACCOUNT_TOKEN="ops_..."
op vault list
op read op://app-prod/db/password

Desktop app integration

Direct exec. Do not wrap in tmux — the desktop app integration uses a per-user IPC channel that is established for the gateway's exec environment but is not always reliably reachable from tmux subshells, which run with a different environment context. The transport differs per platform (XPC via the 1Password Browser Helper on macOS, a Unix domain socket on Linux, a named pipe on Windows); the practical rule for an agent is the same on all three: run op directly. On macOS, a useful symptom indicator is the 1Password integration group container at ~/Library/Group Containers/2BUA8C4S2C.com.1password/t/.

op vault list      # may trigger Touch ID / Windows Hello / system auth on first call
op whoami

If a call returns 1Password CLI couldn't connect to the 1Password desktop app, do not switch to tmux. Confirm the desktop app is running and unlocked, then retry direct exec.

Standalone signin (no app, interactive password)

This is the only mode where tmux helps. op signin prints an eval-style export setting an OP_SESSION_* token for POSIX shells; later commands in the same shell are authenticated by that env var. The gateway's per-command shells lose that state between calls, so a persistent tmux pane keeps the session token alive — but only if the export is actually applied with eval in a POSIX shell. Sending op signin as a plain command leaves stdout printed to the pane and op whoami will fail.

The tmux flow is only actionable on macOS/Linux hosts where the tmux skill is available. The example intentionally opens /bin/sh so the POSIX eval "$(op signin ...)" output is valid even when the user's normal shell is fish. On Windows, prefer desktop app integration or service account auth. If the user only has standalone interactive signin on Windows, stop and ask them to provide a persistent PowerShell session mechanism or switch to desktop integration/service account auth; do not translate the tmux commands directly.

SOCKET_DIR="${OPENCLAW_TMUX_SOCKET_DIR:-${TMPDIR:-/tmp}/openclaw-tmux-sockets}"
mkdir -p "$SOCKET_DIR"
chmod 700 "$SOCKET_DIR"
SOCKET="$SOCKET_DIR/openclaw-op.sock"
SESSION="op-auth-$(date +%Y%m%d-%H%M%S)"

tmux -S "$SOCKET" new -d -s "$SESSION" -n shell /bin/sh
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- 'eval "$(op signin --account my.1password.com)"' Enter
tmux -S "$SOCKET" capture-pane -t "$SESSION":0.0 -p -S - | tail -40

Do not queue follow-up commands while signin is prompting. Poll the pane with capture-pane until signin has either completed and the shell prompt has returned, or it is clearly waiting for human input. If the prompt requires a password, MFA, or account choice, pause and ask the user to complete signin in their own terminal; give them the socket and session values so they can attach locally. The agent should not run tmux attach from exec because attach consumes the current TTY and prevents scripted send-keys / capture-pane control.

After the shell prompt returns, verify by sending the checks into the same pane:

tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- 'op whoami' Enter
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- 'op vault list' Enter
tmux -S "$SOCKET" capture-pane -t "$SESSION":0.0 -p -S - | tail -80

Keep the tmux session running so later op read / op run commands reuse the same authenticated shell.

Use the same SOCKET and SESSION values for every follow-up command in this standalone signin flow. The -S "$SOCKET" flag selects the tmux server socket; keep it in a user-owned 0700 directory, do not share it between users, and choose a new session name for each new signin attempt.

Guardrails

  • Never paste secrets into logs, chat, or code.
  • Prefer op run / op inject over writing secrets to disk.
  • If sign-in without app integration is needed, use op account add first.
  • If a command returns "account is not signed in":
  • service account: re-export OP_SERVICE_ACCOUNT_TOKEN
  • desktop app: confirm the app is running and integration is enabled
  • standalone: re-run op signin inside the same tmux session and authorize

Related skills

How it compares

Pick 1password when secrets already live in 1Password vaults and you need op CLI patterns for agents; use generic .env skills when no vault is involved.

FAQ

When should op run in tmux?

Only for standalone interactive signin without desktop app integration or a service account token; desktop mode must run op directly.

How do headless setups authenticate?

Export OP_SERVICE_ACCOUNT_TOKEN and run op commands directly without a signin step.

What verifies access before reading secrets?

Run op whoami successfully after choosing the correct auth mode for the environment.

Is 1password safe to install?

skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.