Listing items
The items table shows every item in the active organization. Each row shows:- Label (links to the item detail page)
- Storage mode (
Zero-knowledgeorServer-managed) - Agents — how many agents hold a permission on the item
- Created timestamp
Creating an item
Click Add item to open the create panel.1
Name the item
The label is cleartext and shown in lists.
2
Pick a kind
Choose
api_key, login, token, certificate, ssh_key, json, or opaque. The panel shows the typed fields for that kind — for example, login prompts for username, password, URL, and TOTP secret. json lets you add arbitrary key/value pairs.3
Choose a profile
Each profile has a fixed storage mode, so picking the profile picks the mode. Options are labeled
name · mode:- A zero-knowledge profile encrypts the item in your browser before it leaves; only that profile’s key can decrypt it. Cannot be accessed by remote agents.
- A server-managed profile has the API encrypt on receipt with AES-256-GCM. Accessible by local and remote agents.
4
Save
For a zero-knowledge profile, the browser prompts for that profile’s password (if it isn’t already unlocked), encrypts locally, and uploads only ciphertext. For a server-managed profile, the plaintext is sent over HTTPS and encrypted by the API.
Storing a zero-knowledge item requires a zero-knowledge profile in the org. Newly created orgs start with a single default server-managed profile — add a zero-knowledge profile from the Profiles page first if you need one.
Viewing an item
Click a row to open the item detail page. It shows:- Label and storage-mode badge
- The Secret value section (personal accounts only — see below)
- Metadata cards: Item ID, content version, last modified, active permission count
- Agent permissions — every grant pointing at this item, each revocable
- Recent access events — audit entries scoped to this item
- Edit — update the item’s name, kind, and field values (personal accounts only — see below)
- Delete — soft-deletes the item and revokes its permissions
Editing an item
On a personal account, the item page shows an Edit button. It reveals the current value (decrypting in your browser for zero-knowledge items, or viaitems.ownerReveal for server-managed), pre-fills the form, and lets you change the name, kind, and field values. Storage mode cannot be changed.
Saving uses optimistic concurrency: the dashboard submits the item’s current contentVersion, and a concurrent edit elsewhere fails with STALE_VERSION (reload and retry). Zero-knowledge items are re-encrypted in your browser under the profile root key before upload.
Editing rides the same custody gate as Reveal: it is offered only where the dashboard may show plaintext (personal accounts). In a team organization (custody mode), edit an item with the CLI (abadge item update) or the API (PATCH /v1/items/{itemId}).
Custody mode vs. personal vault
Whether the dashboard reveals a secret value depends on the active workspace:- Personal account — your own vault. The item page shows a Reveal control. Server-managed values are decrypted by
items.ownerReveal(recorded in the audit log); zero-knowledge values are decrypted in your browser after you unlock the profile. Reveal shows the full item payload as JSON. - Team organization — custody mode. The dashboard never displays plaintext. Zero-knowledge items show an informational note instead of a reveal control. To read a value, use the CLI (
abadge item --reveal,abadge export) or an authorized agent.
Storage mode badges
Multi-field items
Items can carry multiple named fields. When you grant an agent access, the agent can request a specific field with--field (CLI) or the field parameter (API/SDK/MCP). The dashboard’s reveal shows the whole payload.
See Field delivery for resolution rules.
Soft delete
Deleting an item setsdeletedAt but preserves the ciphertext. Future access attempts return ITEM_DELETED with result: cascade audit entries. There is no restore action in v1.