acp-router
Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode, Gemini CLI, Qwen, Kiro, Kimi, iFlow, Factory Droid, Kilocode, or…
Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.
$ npx -y skills add steipete/clawdis --skill 1password --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/1passwordContext preview
The summary Claude sees to decide when to auto-load this skill.
Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.
name: 1password
description: "Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets."
homepage: https://developer.1password.com/docs/cli/get-started/
metadata:
{
"openclaw":
{
"emoji": "🔐",
"requires": { "bins": ["op"] },
"install":
[
{
"id": "brew",
"kind": "brew",
"formula": "1password-cli",
"bins": ["op"],
"label": "Install 1Password CLI (brew)",
},
],
},
}Follow the official CLI get-started steps. Don't guess install commands.
1. Check OS + shell. 2. Verify CLI present: `op --version`. 3. Detect the auth mode the user has set up:
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`.
Direct exec. No tmux, no signin step.
export OP_SERVICE_ACCOUNT_TOKEN="ops_..." op vault list op read op://app-prod/db/password
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.
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 -40Do 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.
If the session exposes Claude in Chrome credential tools (`request_credentials`, `autofill_credential`, `enter_verification_code`), prefer them over `op` for signing in to websites: 1Password fills the page directly and the secret never enters context. Rules:
OpenClaw is an open-source AI assistant that runs on your own computer and meets you in the channels you already use: Discord, iMessage, Slack, Teams, Telegram, WhatsApp, and 20+ more, plus native apps for macOS, iOS, Android, Windows, and Linux.
Repo: steipete/clawdis
Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode, Gemini CLI, Qwen, Kiro, Kimi, iFlow, Factory Droid, Kilocode, or…
Use when controlling web pages with the OpenClaw browser tool, especially multi-step flows, login checks, tab management, or recovery from stale refs/timeouts.
Present hosted widget documents on a connected macOS panel and control panel visibility or navigation.
Use the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.
Discord messaging workflows through OpenClaw's message tool.
Feishu document read/write workflows. Activate when the user mentions Feishu docs, cloud docs, or docx links.