Skip to content

Quickstart — 5분만에 에이전트 승인 게이트 붙이기

1. 에이전트 등록

start.1pass.dev개발자 콘솔 → AI 에이전트 에서 새 에이전트를 만듭니다.

필드
이름예: Codex (production)
종류codex / claude / cursor / custom
인증 방식signed (권장) — 토큰 단독 탈취가 무력화됩니다.
허용 action_type(선택) 화이트리스트. 비우면 무제한
허용 IP / CIDR(선택) 서버에서만 호출한다면 IP 잠금 권장

등록 직후 페이지에 한 번만 표시되는 두 값을 즉시 저장하세요:

  • LOGI_AGENT_TOKEN — Bearer 토큰
  • LOGI_AGENT_PRIVATE_KEY — Ed25519 비공개 키 (PEM, signed mode 만)
  • LOGI_AGENT_PUBLIC_IDagt_xxxx

2. MCP 서버 설치 (Claude Code 기준)

jsonc
// ~/.claude.json
{
  "mcpServers": {
    "logi-approval": {
      "command": "npx",
      "args": ["-y", "@logi-auth/mcp-approval"],
      "env": {
        "LOGI_AGENT_TOKEN":       "logi_agt_...",
        "LOGI_AGENT_PRIVATE_KEY": "-----BEGIN PRIVATE KEY-----\n...",
        "LOGI_AGENT_PUBLIC_ID":   "agt_xxxxxx",
        "LOGI_API_URL":           "https://api.1pass.dev"
      }
    }
  }
}

Codex CLI / Cursor 도 동일한 MCP server stdin/stdout 프로토콜을 지원하면 같은 방식. 직접 통합하려면 API 레퍼런스 의 curl 또는 SDK 사용.

3. 에이전트에게 룰 알려주기

CLAUDE.md / AGENTS.md / 시스템 프롬프트:

markdown
You have access to logi__request_approval. ALWAYS call it BEFORE:
- Changing any ads budget by >20% or absolute >1,000,000 KRW
- Running migrations on production databases
- Sending more than 100 emails/SMS in one batch
- Spending >100,000 KRW on any external API
- Deploying to production

If the tool returns status != "approved", ABORT and tell the user.
NEVER proceed without explicit approval for these categories.

자세한 룰 예시는 Setup 가이드 참조.

4. 테스트

데모 페이지 (demo.1pass.dev/agent-approval) 에서 라이브로 푸시 받아 확인.

또는 curl 한 줄 (bearer_only 모드일 때):

bash
curl -X POST https://api.1pass.dev/api/agents/approvals \
  -H "Authorization: Bearer $LOGI_AGENT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"action_type":"test.echo","title":"테스트","body":"X → Y"}'

응답:

json
{
  "auth_req_id": "aar_abc123",
  "status": "pending",
  "number_match": "428193",
  "expires_in": 300,
  "interval": 2
}

폰에 푸시가 도착하고, number_match 6자리가 양쪽에 동일하게 표시됩니다. Face ID 후 폰에서 결정 → 같은 auth_req_id 로 폴링하면 status: "approved".

최종 수정:

MIT License · Identity가 제품의 신뢰를 만듭니다.