gloves
gloves is a secure secrets control plane for multi-agent runtimes and human operators.
It provides:
- agent-owned encrypted secrets
- human approval workflows
- access/audit controls
- vault and daemon operations
- an interactive TUI navigator
- OpenClaw-safe plugin tooling plus a private Docker bridge for sandbox file delivery
Documentation
Start here: Documentation Index
API and crate docs: docs.rs/gloves
- Quickstart
- Architecture
- Security
- Concepts and Parts
- Secrets and Requests
- Humans, Agents, and GPG
- TUI Guide
- Configuration Guide
- Troubleshooting
- VM Multi-Agent Operations
- Security Hardening
- Release Binaries
Command Model
Primary command groups:
gloves run ...: run a process with explicit secret-ref bindingsgloves exec ...: run a process with an explicit delivery mechanicgloves secrets ...: set/get/grant/revoke/statusgloves request ...: create one pending human requestgloves requests ...: list/approve/deny pending requestsgloves vault ...: encrypted vault operationsgloves gpg ...: per-agent GPG key workflowsgloves tui: interactive command center
Recursive help is supported:
Quick Example
# initialize runtime layout
# create one namespaced secret
# run one command with an explicit secret ref
# read secret
# list entries
If you omit --ttl, gloves uses defaults.secret_ttl_days from config; the built-in default is 30 days. Use --ttl never for a non-expiring secret. gloves secrets set prints the expiry timestamp for expiring secrets and says never expires otherwise.
Process Execution
gloves run is the top-level process execution UX. It is the closest gloves equivalent to op run, doppler run, and aws-vault exec.
Examples:
gloves run accepts only explicit NAME=gloves://namespace/secret-path bindings in v1. It does not accept bare secret paths, comma-separated lists, or implicit "load this whole scope" behavior.
Use gloves run when you want the generic "run this command with secrets" flow.
Use gloves exec env when you want the lower-level env-delivery primitive directly.
Use gloves vault exec when you specifically need the lower-level vault workflow that mounts a vault, executes a command, and unmounts it afterward.
Current delivery model:
runis the high-level UXexec envis the shipped explicit delivery mechanic- explicit secret refs are the stable contract between CLI intent and runtime delivery
Planned follow-on strategies:
exec filefor tmpfs-style file deliveryrun --profile ...for reviewed bundles of refs and delivery policy- brokered or session-based delivery for backends that can avoid raw env injection entirely
For complete setup and human/agent workflows, use Quickstart.
OpenClaw Integration
The repository now includes:
@gloves/openclawas the real OpenClaw-native plugin package for safe metadata and approval toolsgloves-mcpas the preferred future stdio transport for first-class runtime integrationsgloves-docker-bridgeas a private operator-controlled Docker wrapper for/run/secrets/...deliveryintegrations/openclaw/gloves.json5as the official safe plugin config snippetintegrations/openclaw/docker-bridge.tomlandintegrations/openclaw/launch-openclaw-with-gloves.shas the private bridge examples
If you are setting up OpenClaw today, install @gloves/openclaw for safe list/status/request tools. Treat the Docker bridge as a private last-mile hack that you operate at process start.
Guaranteed-safe official support:
- install
@gloves/openclawon the Gateway host - point the plugin at a host-local
glovesbinary and runtime root - allow the plugin tool group per agent with
group:plugins:gloves - use only:
gloves_listgloves_statusgloves_requests_listgloves_request_approvegloves_request_deny
Preferred future transport:
gloves-mcpover stdio for OpenClaw-facing integrations that can safely consume a runtime secret side-channel
Private operator bridge:
gloves-docker-bridgeresolvesgloves://...refs on the host- it injects tmpfs files under
/run/secrets/... - it does not require bind mounts of host secret dirs,
~/.cargo/bin, token files, or daemon sockets - it is not an official OpenClaw API integration
Compatibility transports:
- Unix sockets remain available for non-OpenClaw or legacy runtime integrations
gloves daemonremains available for direct host-side automation- neither transport is the preferred OpenClaw deployment path
Install
From release binaries (recommended)
|
From crates.io
From source
Security and Policy
- Use least-privilege agent access in
.gloves.toml - Prefer
gloves secrets get --pipe-to <command>over raw stdout in automation - Keep secrets root and config permissions private
- Use
gloves audit --json --limit 100for machine-readable audit export
Details:
Development
When Docker is available, the OpenClaw sandbox harness can be exercised with:
The bridge regression coverage in cargo test covers the private Docker wrapper flow with /run/secrets/... injection and cleanup. The example Docker harness remains an operator-oriented validation path rather than an official OpenClaw support contract.