mcpField
1
1password

1password

github.com/letta-ai安全152111 次安装4 周前更新
代码仓库

关于 1password

指导安全使用 1Password CLI,包括安装检查、登录和账户验证。要求在新的 tmux 会话中运行命令,并避免将机密写入日志或文件。

主要功能

  1. 01检查 CLI 安装与版本
  2. 02通过应用集成完成登录
  3. 03在全新的 tmux 会话中运行命令
  4. 04读取机密前验证账户访问
  5. 05避免机密出现在日志或文件中

适用场景

  1. 01配置 1Password CLI 访问
  2. 02在 tmux 中重新授权账户
  3. 03读取机密前确认账户身份

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/letta-ai/skills --skill 1password

安装后在 Claude Code 中输入/1password确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

LICENSE
assets/
1password-small.svg
references/
cli-examples.md
get-started.md

详细介绍

1Password CLI

请遵循官方 CLI 入门步骤。不要猜测安装命令。

前置条件

  • tmux 是确保 op 命令可靠运行的必需工具(shell 工具每次执行命令都会使用新的 TTY,不使用 tmux 会导致重新认证问题)
    • macOS:brew install tmux
    • Linux(Debian/Ubuntu):sudo apt install tmux
    • Linux(RHEL/Fedora):sudo dnf install tmux

参考资料

  • references/get-started.md(安装、应用集成和登录流程)
  • references/cli-examples.md(实际的 op 示例)

工作流

  1. 检查操作系统和 shell。
  2. 验证 CLI 是否已安装:op --version。
  3. 确认已启用桌面应用集成(按照入门指南),且应用已解锁。
  4. **必需:**为所有 op 命令创建一个新的 tmux 会话(不要在 tmux 外直接调用 op)。
  5. 在 tmux 中登录/授权:op signin(应出现应用提示)。
  6. 在 tmux 中验证访问权限:op whoami(读取任何机密信息前必须成功)。
  7. 如果有多个账户:使用 --account 或 OP_ACCOUNT。

必需的 tmux 会话

shell 工具每次执行命令都会使用新的 TTY。为避免重复提示和失败,请始终在专用的 tmux 会话中运行 op,并使用新的 socket 和会话名称。

Socket 约定:

  • 将 socket 放在 ${LETTA_TMUX_SOCKET_DIR:-${TMPDIR:-/tmp}/letta-tmux-sockets} 下,以便隔离且易于清理。
  • 使用带时间戳的会话名称(例如 op-auth-$(date +%Y%m%d-%H%M%S)),确保绝不复用旧会话——之前的认证状态可能已过期或损坏。
  • 完成后终止会话(tmux -S "$SOCKET" kill-session -t "$SESSION"),避免留下长期运行的 tmux 进程。

完整示例:

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

tmux -S "$SOCKET" new -d -s "$SESSION" -n shell
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- "op signin --account my.1password.com" Enter
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 -p -J -t "$SESSION":0.0 -S -200
tmux -S "$SOCKET" kill-session -t "$SESSION"

安全措施

  • 切勿将机密信息粘贴到日志、聊天或代码中。
  • 优先使用 op run / op inject,而不是将机密信息写入磁盘。
  • 如果需要在未启用应用集成的情况下登录,请使用 op account add。
  • 如果命令返回“account is not signed in”,请在 tmux 中重新运行 op signin,并在应用中授权。
  • 不要在 tmux 外运行 op;如果 tmux 不可用,请停止并询问。

评论

支持 Markdown