agent-auth-cli
작성자: better-auth
Agent Auth CLI(auth-agent)를 사용하여 제공자를 검색하고, 에이전트를 연결하며, 기능을 관리하고, 작업을 실행하세요. 사용자가 상호작용을 원할 때 사용합니다…
npx skills add https://github.com/better-auth/agent-auth --skill agent-auth-cliAgent Auth CLI
You have access to the auth-agent CLI for interacting with Agent Auth providers. Always prefer using the CLI for any agent authentication operations rather than making raw HTTP requests or writing custom code.
Binary
The CLI binary is auth-agent (package: @auth/agent-cli). If not installed globally, run via npx @auth/agent-cli.
Workflow
Follow this order when working with a provider:
1. Discover or find a provider
# If you have the provider URL
auth-agent discover https://api.example.com
# If you need to search by intent
auth-agent search "deploy web apps"
# List already-known providers
auth-agent providers
discoverfetches the/.well-known/agent-configurationdocument and caches the provider.searchqueries the directory and returns matching providers.- Always discover or search first before connecting.
2. Explore capabilities
# List all capabilities for a provider
auth-agent capabilities --provider https://api.example.com
# Filter by query
auth-agent capabilities --provider https://api.example.com --query "transfer"
# Get full definition with input schema
auth-agent describe transfer_money --provider https://api.example.com
- Always run
describebefore executing a capability to understand the required input schema and constraints. - If connected, pass
--agent-id <id>to see which capabilities are granted.
3. Connect an agent
# Basic connection with specific capabilities
auth-agent connect --provider https://api.example.com \
--capabilities read_data transfer_money \
--name my-agent
# With constraints on capability arguments
auth-agent connect --provider https://api.example.com \
--capabilities read_data transfer_money \
--constraints '{"transfer_money":{"amount":{"max":1000}}}' \
--name constrained-agent
# Autonomous mode (no user association)
auth-agent connect --provider https://api.example.com \
--capabilities read_data \
--mode autonomous
# With CIBA approval (backchannel, sends notification to user)
auth-agent connect --provider https://api.example.com \
--capabilities read_data \
--preferred-method ciba \
--login-hint [email protected]
- Save the returned
agent_id— you need it for all subsequent operations. - If approval is required, the CLI opens the browser or prints the approval URL. Pass
--no-browserto suppress browser opening. - Use
--force-newto create a new connection even if one exists.
4. Check status
auth-agent status <agent-id>
- Shows agent status (
pending_approval,active,expired,revoked), granted capabilities, and constraints. - Run this after connecting to confirm the agent was approved.
5. Execute capabilities
auth-agent execute <agent-id> transfer_money \
--args '{"amount": 50, "to": "alice"}'
- The
--argsflag takes a JSON string matching the capability's input schema. - Always
describethe capability first to know the required arguments.
6. Request additional capabilities
auth-agent request <agent-id> \
--capabilities admin_panel \
--constraints '{"admin_panel":{"scope":{"in":["read","write"]}}}' \
--reason "Need admin access for deployment"
7. Lifecycle management
# Disconnect (revoke) an agent
auth-agent disconnect <agent-id>
# Reactivate an expired agent
auth-agent reactivate <agent-id>
# View stored connection details
auth-agent connection <agent-id>
# List all connections for a provider
auth-agent connections <issuer-url>
8. Key rotation
# Rotate an agent's keypair
auth-agent rotate-agent-key <agent-id>
# Rotate the host keypair for a provider
auth-agent rotate-host-key <issuer-url>
9. Host enrollment
auth-agent enroll-host --provider https://api.example.com --token <enrollment-token> --name "My Device"
10. Sign JWTs manually
# Sign an agent JWT (for use with external HTTP calls)
auth-agent sign <agent-id>
# Scope to specific capabilities
auth-agent sign <agent-id> --capabilities transfer_money read_data
Global Flags
| Flag | Env var | Description |
|---|---|---|
--storage-dir <path> | AGENT_AUTH_STORAGE_DIR | Storage directory (default: ~/.agent-auth) |
--directory-url <url> | AGENT_AUTH_DIRECTORY_URL | Directory URL for provider search |
--host-name <name> | AGENT_AUTH_HOST_NAME | Host name for identification |
--no-browser | AGENT_AUTH_NO_BROWSER=1 | Suppress browser opening for approval URLs |
--url <urls...> | AGENT_AUTH_URLS | Provider URLs to auto-discover at startup |
Important Rules
- Never make raw HTTP requests to Agent Auth endpoints. Always use the CLI.
- Always discover before connecting. The CLI needs the provider's configuration cached locally.
- Always describe before executing. Check the input schema so you pass correct arguments.
- Check status after connecting. The agent may require user approval before it becomes active.
- Store agent IDs. You need them for execute, status, request, disconnect, and all other operations.
- Use constraints when connecting to limit what the agent can do — this is a security best practice.
- Set
AGENT_AUTH_ENCRYPTION_KEYin production to encrypt private keys stored in~/.agent-auth/.
Storage
Connections, keys, and provider configs are stored in ~/.agent-auth/ by default:
host.json— host identity and keypairagents/<agent-id>.json— agent connectionsproviders/<encoded-issuer>.json— cached provider configurations
better-auth의 다른 스킬
agent-auth-mcp
better-auth
Agent Auth MCP 도구를 사용하여 공급자를 검색하고, 에이전트를 연결하며, 기능을 관리하고, MCP 프로토콜을 통해 작업을 실행하세요. 작업 시 사용합니다…
official
better-icons
better-auth
CLI 및 MCP 서버 통합을 통해 200개 이상의 아이콘 라이브러리에서 SVG를 검색하고 가져옵니다. 주요 컬렉션(Lucide, Material Design Icons, Heroicons, Tabler 등 200개 이상)을 검색할 수 있으며, 접두사 및 결과 제한으로 필터링할 수 있습니다. 아이콘 검색, SVG 파일로 일괄 다운로드, 색상 및 크기 사용자 지정이 가능한 개별 아이콘 검색을 위한 CLI 명령어를 제공합니다. 스마트 추천, 유사성 매칭, 프로젝트 스캔, 일괄 아이콘...을 포함한 AI 에이전트용 MCP 서버 도구를 지원합니다.
official
better-auth-best-practices
better-auth
완전한 Better Auth 서버 및 클라이언트 설정으로, 데이터베이스 어댑터, 세션 관리, 플러그인, 보안 구성을 포함합니다. 설치부터 데이터베이스 마이그레이션, 환경 변수 설정, 여러 프레임워크에서의 라우트 핸들러 생성까지 전체 워크플로우를 다룹니다. 여러 데이터베이스 어댑터(Prisma, Drizzle, MongoDB, 직접 연결)를 지원하며, 모델과 테이블 명명 규칙에 대한 중요한 지침을 제공합니다. 세션 저장소 전략(Redis/KV를 사용한 보조 저장소), 쿠키...
official
create-auth-skill
better-auth
TypeScript/JavaScript 앱에서 Better Auth 프레임워크 감지, 데이터베이스 어댑터 설정, OAuth 통합을 통해 인증을 스캐폴딩하고 구현합니다. 프로젝트 스캐닝을 통해 프레임워크(Next.js, SvelteKit, Nuxt, Astro, Express, Hono), 데이터베이스(Prisma, Drizzle, MongoDB, raw 드라이버), 기존 인증 라이브러리를 감지합니다. 이메일/비밀번호, OAuth(Google, GitHub, Apple, Microsoft, Discord, Twitter), 매직 링크, 패스키, 전화 인증을 지원하며 설정 가능한 이메일 확인 기능을 제공합니다...
official
Email & Password Best Practices
better-auth
이메일 및 비밀번호 모범 사례 — AI 에이전트용 설치 가능한 스킬, better-auth/skills에서 게시함.
official
email-and-password-best-practices
better-auth
이메일 인증, 비밀번호 재설정 흐름, 그리고 Better Auth를 위한 사용자 정의 가능한 비밀번호 정책을 제공합니다. 선택적 강제 적용을 통해 인증될 때까지 로그인을 차단하는 이메일 인증을 지원하며, 구성 가능한 토큰 만료 및 일회용 재설정 토큰을 포함합니다. 내장된 보안 기능을 갖춘 비밀번호 재설정 흐름: 백그라운드 이메일 전송, 타이밍 공격 방지, 유효하지 않은 요청에 대한 더미 작업, 재설정 시 선택적 세션 취소를 제공합니다. 구성 가능한 비밀번호 길이 제한(기본 8~256자) 및 사용자 정의...
official
organization-best-practices
better-auth
멀티 테넌트 조직 설정: 멤버 관리, 역할 기반 접근 제어, Better Auth를 통한 팀 지원. 사용자 정의 가능한 생성 규칙, 멤버십 제한, 소유권 제약 조건으로 조직을 구성하며, 생성자는 자동으로 소유자 역할을 부여받습니다. 이메일 전송, 만료 기간, 공유 가능한 초대 URL을 통해 멤버와 초대를 관리하고, 멤버당 여러 역할을 지원합니다. 동적 접근 제어로 사용자 정의 역할과 권한을 정의하고, 권한을 확인합니다...
official
two-factor-authentication-best-practices
better-auth
Better Auth를 위한 TOTP, OTP, 백업 코드 및 신뢰 기기 관리를 포함한 다중 인증. 세 가지 인증 방식을 지원합니다: 인증 앱(QR 코드를 통한 TOTP), 이메일/SMS 코드(OTP), 일회용 백업 코드. 자동 세션 관리, 임시 2FA 쿠키, 만료 설정이 가능한 신뢰 기기 추적을 포함한 완전한 2FA 로그인 흐름을 처리합니다. 속도 제한(10초당 3회 요청), 저장 시 암호화 등 내장 보안 기능을 제공합니다...
official