What is AgentSecrets?
The Zero-Knowledge Difference
How AgentSecrets Works
Installation
Quick Start
Migrating from .env Files
Migrating from Vault / AWS
Migrating from dotenv-vault
Production Checklist
Credential Exposure
What Zero-Knowledge Means
The Proxy Model
The Three-Layer Model
Environments
Agent Identity
Storage Modes
The No get() Principle
Secret-Level Policies
Cloud Overview & Architecture
The Dual-Engine Model
Cloud Resolver Data Plane
Workload & Agent Tokens
Egress Allowlists & Audit Streams
Cloud REST API Reference
Account (init / login)
Server & Self-Hosting (server)
Docs
Shell Autocompletion
Keychain Auth
Secrets
Environments
Credential Proxy
env Injection
Workspaces & Teams
Projects
Agent Identity
Audit & Governance
Integrations Overview
Claude Desktop
Cursor
OpenClaw
HTTP Proxy (Any)
LangChain (Soon)
CrewAI (Soon)
CI/CD Pipeline
SDK Overview
Python SDK
Python API Reference
Python SDK Manual Testing
JavaScript SDK (Soon)
Ecosystem Overview
Zero-Knowledge MCP Server
Server Overview
5-Layer Architecture
Self-Hosting Guide
Authentication & Keys
Workspaces & Teams
Projects & Scope
Environments
Secrets & Sync Protocol
Agent Identity Resolution
Telemetry & Metrics Engine
Audit Log Sync
API Endpoint Reference
Security Overview
Anti-Impersonation & Process Verification
Encryption Model
Zero-Knowledge Sync
Proxy Security Layers
Threat Model
OWASP Top 10 Mitigation
Security FAQ
Third-Party Audit
Reporting Vulnerabilities
Guides Overview
Building on the SDK
Stripe Integration
OpenAI Integration
Multi-Agent Setup
Onboarding Team
CI/CD Pipeline
Publishing ZK MCP
Rotating Credentials
Auditing Team Activity
Dev to Production
Kubernetes Deployment
Monorepo Setup
Production Proxy Hardening
vs .env Files
vs HashiCorp Vault
vs AWS Secrets Manager
vs dotenv-vault
vs Infisical
When Not to Use
Proxy Not Starting
Proxy Not Resolving
Domain Blocked
Sync Conflicts
MCP Not Connecting
Session Token Errors
Proxy Session Authorization
Keychain Storage & Backends
SSRF & Destination Rules
Installation Issues
Error Codes Reference
Frequently Asked Questions
v3.1.x
v3.0.0
v2.1.0
v2.0.0
v1.4.0
v1.3.x
v1.2.0
v1.1.x
v1.0.x
CLI ReferenceRoles and Permissions

Roles and Permissions

AgentSecrets enforces role-based access control (RBAC) to ensure that only authorized team members can perform administrative tasks or modify sensitive configuration settings like domain allowlists. By partitioning access into distinct roles, you can implement the principle of least privilege across your development team.


Available roles

Workspaces support three primary logical roles that define a user's capabilities within the shared boundary:

  • Admin / Owner: The highest privilege level. The workspace creator is automatically designated as the Owner. Admins have complete control over membership, role promotion/demotion, the domain allowlist, and all secret management operations.
  • Editor / Member: The standard developer role. Editors have read and write access to the workspace secrets. They can pull secrets to their local OS keychain, push updates to the cloud, run the proxy, and deploy agents, but they cannot perform administrative tasks.
  • Viewer: A restricted, read-only role. Viewers can pull secrets to their local OS keychain and run the proxy to execute agents, but they cannot create projects, modify secrets (secrets set), or push updates to the cloud.

What each role can do

Each role is designed to fulfill a specific function in your development lifecycle:

Action / PermissionAdminEditor / MemberViewer
Pull Secrets (Read names/metadata)
Run Proxy / Agent Tools
Push Secrets (Write/Update)
Create & Delete Projects
Manage Domain Allowlist
Invite & Remove Teammates
Promote/Demote Member Roles

What each role cannot do

Understanding the constraints of each role is crucial for securing your workspace:

  • Viewers cannot modify anything: Viewers are strictly read-only. Any attempt to run agentsecrets secrets set or agentsecrets secrets push will fail with an authorization error.
  • Editors/Members cannot change security boundaries: Editors can work with secrets but cannot change the safety controls. They cannot add domains to the allowlist (which prevents them from authorizing malicious exfiltration endpoints), invite external users, or change other members' roles.
  • Admins cannot bypass verification: Even Admins must confirm their identity. Actions that change security boundaries (such as adding domains to the allowlist or promoting/demoting members) require active password re-confirmation to prevent session hijacking.

Promoting a member

To grant administrative privileges to an existing workspace member, use the agentsecrets workspace promote command.

  1. Run the promote command: Execute the command with the email address of the member you want to promote:

    agentsecrets workspace promote developer@acme.com
  2. Verify identity: The CLI will prompt you to enter your account password to confirm the promotion. This ensures that the action is performed by the authenticated administrator.

    Password:
  3. Confirm promotion: Once verified, the user will be promoted to the Admin role.

    ✓ Successfully promoted developer@acme.com to Admin.

Demoting a member

If a user no longer requires administrative privileges, you can demote them to a standard Member/Editor role using the agentsecrets workspace demote command.

  1. Run the demote command: Execute the command with the email address of the user you want to demote:

    agentsecrets workspace demote developer@acme.com
  2. Confirm with password: Enter your administrator password to authorize the change.

    Password:
  3. Verify change: The user's role is updated in the workspace.

    ✓ Successfully demoted developer@acme.com to Member.

The workspace Owner cannot be demoted by other Admins. Only the Owner can transfer ownership or delete the workspace.

Was this helpful?
Thanks for your feedback!
Your feedback helps us improve the platform.