OpenClaw
보안 & 시크릿추천

OpenClaw 1Password CLI 스킬 가이드

1Password CLI(op)로 안전하게 시크릿 가져오기.

마지막 업데이트: 2026-03-04

빠른 설치

$ npx clawhub@latest install 1password

주요 기능

자연어로 1Password 볼트에서 시크릿 읽기
op inject로 설정 파일에 자격 증명 주입
op run으로 시크릿을 환경 변수로 프로세스에 전달
단일 또는 다중 1Password 계정 로그인
CLI로 볼트, 항목, 문서 관리
tmux 기반 워크플로로 안정적인 인증 보장

OpenClaw 1Password CLI 스킬 개요

1Password CLI 스킬은 공식 1Password CLI (op)를 통해 OpenClaw를 1Password 볼트에 연결합니다. 설치 후 OpenClaw 에이전트는 시크릿을 읽고, 설정 파일에 자격 증명을 주입하고, 시크릿을 환경 변수로 프로세스를 실행할 수 있습니다. 모두 자연어 명령으로 완료됩니다. 1Password 앱에서 토큰을 복사 붙여넣기할 필요가 없습니다.

시크릿 관리는 모든 개발 워크플로의 핵심 요소입니다. OpenClaw 1Password 스킬은 평문 설정 파일에 API 키, 데이터베이스 비밀번호, 서비스 토큰을 저장할 필요를 없애줍니다. OpenClaw에 필요한 것을 요청하면 에이전트가 런타임에 볼트에서 안전하게 가져옵니다.

일반적인 워크플로:

  1. OpenClaw에 데이터베이스 자격 증명을 .env 파일에 주입하도록 요청합니다.
  2. 에이전트가 op inject를 실행하여 시크릿 참조를 실제 값으로 교체합니다.
  3. 자격 증명이 애플리케이션에서 사용 가능합니다 — 평문으로 디스크에 기록되지 않습니다.

이 스킬은 모든 op 명령에 tmux 기반 워크플로를 강제하여 영속적인 인증 세션을 보장하고 자동화 작업 중 TTY 오류를 방지합니다. 데스크톱 앱 통합(생체 인증 잠금 해제)과 CI/CD 파이프라인용 서비스 계정 토큰을 모두 지원합니다.

1Password CLI 스킬 사전 요구 사항

1Password CLI 스킬을 설치하기 전에 다음을 확인하세요:

  • OpenClaw이 설치되어 실행 중 (v1.0+)
  • **1Password CLI (op)**가 설치됨 — 공식 설치 가이드
  • 1Password 계정 (개인, 가족, 팀 또는 비즈니스)
  • 안정적인 CLI 세션을 위한 tmux 설치
  • 스킬 관리를 위한 clawhub CLI 설치 — clawhub으로 설치

설정 확인:

bash
# OpenClaw 버전 확인
openclaw --version

# 1Password CLI 버전 확인
op --version

# tmux 사용 가능 확인
tmux -V

# 1Password 인증 상태 확인
op whoami

1Password CLI 스킬 설치 방법

한 줄 명령으로 1Password CLI 스킬을 설치합니다:

bash
npx clawhub@latest install 1password

설치 확인:

bash
clawhub list

설치된 스킬 목록에 1password가 표시되어야 합니다. 이 스킬은 공식 OpenClaw skills 저장소에서 관리되며 ClawHub에 게시되어 있습니다.

1Password CLI 스킬 구성

이 스킬은 1Password 계정 인증이 필요합니다. 환경에 따라 세 가지 방법이 있습니다.

방법 1: 데스크톱 앱 통합 (개발 환경에 권장)

생체 인증 잠금 해제를 활성화하여 CLI가 1Password 데스크톱 앱을 통해 인증하도록 합니다:

bash
# 데스크톱 앱 통합 활성화
op signin

프롬프트가 나타나면 1Password 데스크톱 앱에서 로그인 요청을 승인합니다. 이 방법은 생체 인증(Touch ID, Windows Hello)을 사용하며 장기 토큰이 필요 없습니다.

방법 2: 서비스 계정 토큰 (CI/CD에 권장)

bash
# 서비스 계정 토큰 설정
export OP_SERVICE_ACCOUNT_TOKEN=ops_your-service-account-token

서비스 계정은 특정 볼트에 대한 범위가 지정된 비대화형 접근을 제공합니다. my.1password.comDeveloper → Service Accounts에서 생성하세요.

방법 3: Connect 서버 (자체 호스팅 인프라용)

bash
# Connect 서버 자격 증명 설정
export OP_CONNECT_HOST=https://your-connect-server:8080
export OP_CONNECT_TOKEN=your-connect-token

주요 환경 변수

| 변수 | 용도 | |------|------| | OP_SERVICE_ACCOUNT_TOKEN | 서비스 계정으로 인증 | | OP_CONNECT_HOST | Connect 서버 URL | | OP_CONNECT_TOKEN | Connect 서버 접근 토큰 | | OP_ACCOUNT | 다중 계정 설정의 기본 계정 | | OP_BIOMETRIC_UNLOCK_ENABLED | 데스크톱 앱 통합 전환 |

중요: 토큰을 설정 파일에 하드코딩하지 마세요. 환경 변수를 사용하거나 CI/CD 플랫폼의 시크릿 저장소에서 주입하세요. 안전 체크리스트에서 추가 보안 가이드를 확인하세요.

1Password CLI 스킬 사용 예시

1. 런타임에 시크릿 읽기

사용자: "Production 볼트에서 Stripe API 키를 가져와줘."

에이전트가 op read "op://Production/Stripe API/credential"를 실행하고 시크릿 값을 반환합니다. 키는 즉시 사용 가능하며 파일에 저장되지 않습니다.

2. 설정 파일에 시크릿 주입

사용자: ".env.template 파일의 모든 시크릿을 주입하고 .env로 저장해줘."

에이전트가 op inject -i .env.template -o .env를 사용하여 op://Vault/Item/field 같은 시크릿 참조를 실제 값으로 교체합니다. 템플릿은 버전 관리에 안전하게 커밋할 수 있고, 출력 파일에 실제 자격 증명이 포함됩니다.

3. 주입된 시크릿으로 프로세스 실행

사용자: "1Password의 프로덕션 데이터베이스 URL로 데이터베이스 마이그레이션 스크립트를 실행해줘."

에이전트가 op run --env-file .env -- npm run migrate를 실행하여 프로세스 동안 시크릿을 환경 변수로 주입합니다. 프로세스가 종료되면 시크릿은 메모리에 남지 않습니다.

4. 볼트 항목 목록 및 검색

사용자: "Development 볼트의 모든 API 키를 보여줘."

에이전트가 op item list --vault Development --tags api-key를 실행하고 이름, 카테고리, 마지막 수정일을 포함한 형식화된 항목 목록을 반환합니다.

보안 및 모범 사례

1Password 스킬은 가장 민감한 자격 증명에 접근합니다. 안전을 위해 다음 가이드라인을 따르세요:

  • 최소 권한 원칙. 전체 계정 접근 대신 볼트 수준 접근을 부여하세요. 서비스 계정은 필요한 볼트만 볼 수 있어야 합니다.
  • op read보다 op runop inject를 우선 사용. 이 명령들은 시크릿을 일시적으로 유지합니다 — 디스크에 기록되거나 셸 히스토리에 저장되지 않습니다.
  • 시크릿을 로그, 채팅, 코드에 붙여넣지 마세요. 이 스킬은 시크릿을 프로세스에 직접 주입하여 클립보드와 터미널 출력을 우회하도록 설계되었습니다.
  • 자동화에는 서비스 계정 사용. CI/CD 파이프라인에서 개인 계정을 사용하지 마세요. 서비스 계정은 범위가 지정된 감사 가능한 접근을 제공합니다.
  • 서비스 계정 토큰을 정기적으로 교체. 토큰 생성 시 만료일을 설정하고 최소 90일마다 교체하세요.
  • tmux에서 op 명령 실행. 이 스킬은 tmux 기반 워크플로를 강제하여 장시간 작업 중 TTY 오류와 세션 중단을 방지합니다.

1Password CLI 스킬 일반적인 오류 해결

"account is not signed in"

1Password 세션이 만료되었거나 설정되지 않았습니다.

bash
# 데스크톱 앱으로 재인증
op signin

# 세션 확인
op whoami

서비스 계정을 사용 중이라면 OP_SERVICE_ACCOUNT_TOKEN이 올바르게 설정되어 있고 만료되지 않았는지 확인하세요.

"could not find item"

요청한 항목이 지정된 볼트에 존재하지 않거나 계정에 접근 권한이 없습니다.

  1. op item list --vault "볼트 이름"으로 항목 이름과 볼트를 확인하세요.
  2. 계정에 볼트 읽기 권한이 있는지 확인하세요.
  3. 서비스 계정의 경우 볼트가 계정 접근 정책에 포함되어 있는지 확인하세요.

"tmux not found" 또는 TTY 오류

1Password CLI 대화형 로그인에는 TTY가 필요합니다. 이 스킬은 tmux를 사용하여 영속 세션을 유지합니다.

bash
# tmux 설치
# macOS
brew install tmux

# Ubuntu / Debian
sudo apt install tmux

tmux 설치 후 op signin을 실행하기 전에 tmux new -s op-session으로 새 세션을 시작하세요.

자주 묻는 질문

네, 적절한 범위 설정으로 안전합니다. 권장되는 접근 방식은 전체 계정 접근 대신 특정 볼트에 대한 읽기 전용 접근을 가진 **서비스 계정**을 사용하는 것입니다. OpenClaw는 확인 모델을 따르며 볼트 작업은 실행 전 승인이 필요합니다. 1Password의 감사 로그와 결합하면 모든 시크릿 접근이 추적 가능하고 취소 가능합니다.

네. 1Password CLI는 다중 계정 워크플로를 지원합니다. `OP_ACCOUNT` 환경 변수로 기본 계정을 지정하거나 명령별로 `--account` 플래그를 사용하세요. 다른 계정의 다른 볼트 항목을 참조할 때 스킬이 자동으로 계정 전환을 처리합니다.

둘 다 시크릿 관리를 제공하지만 다른 플랫폼에 연결됩니다. [1Password 스킬](/skills/1password)은 `op` CLI를 사용하며 데스크톱 앱 통합, 생체 인증 잠금 해제, 서비스 계정을 지원합니다. [Bitwarden](/skills/bitwarden) 스킬은 Vaultwarden을 사용하는 자체 호스팅 팀에 적합합니다. 팀의 기존 비밀번호 관리자에 맞는 스킬을 선택하세요. 둘 다 런타임 시크릿 주입을 지원하며 동일한 제로 평문 원칙을 따릅니다.

관련 스킬

Bitwarden / Vaultwarden
추천

Bitwarden/Vaultwarden CLI 및 API로 시크릿 접근.

GitGuardian ggshield
추천

저장소의 하드코딩된 시크릿 스캔 (500+ 시크릿 유형).

Guardrails
추천

도구 사용과 위험한 작업에 안전 가드레일 적용.

ClawHub에서 설치스킬 목록으로 돌아가기