AI agent instructions
AI agent instructions
notte.Session. Fill actions use the notte.USERNAME, notte.PASSWORD and notte.MFA placeholders; the vault looks up the login for the page’s domain and puts the real value in the browser. Your fill action contains only placeholders. A stored TOTP seed fills notte.MFA with the current code.
Both vaults work with local sessions only. Cloud sessions (
client.Session(vault_id=...)) use a Notte vault.
Password Manager with Agent Access
Agent Access connects your script toaac listen, running next to a person’s Bitwarden vault, and that person approves each request. Your script asks for one domain at a time, when a fill needs it. Closing the vault removes its private paired connection.
On the machine with your Bitwarden vault:
- Install the Bitwarden CLI (
bw) and log in. - Install
aacv0.11.0 from the Agent Access release. - Run
aac listen. Type/unlockto unlock your vault, then/pairto print a pairing token such asABC-DEF-GHI.
notte and the same aac CLI, then set AAC_TOKEN to the pairing token. Install Chromium for local sessions with patchright install chromium.
bitwarden_agent_access.py
aac listen asks you to confirm the pairing, then to approve each login request. Later requests reuse the connection until the vault closes. A pairing token from /pair works once, so run /pair again for each new AacVault.
AacVault only reads. It cannot add or delete logins, and list_credentials() returns an empty list. Set timeout= (default 120 seconds) to change how long a request waits for approval.
Secrets Manager
Install the extra:pip install "notte[bitwarden]".
Create a machine account with access to a project, and an access token for it. Set BWS_ACCESS_TOKEN to the token and BWS_ORGANIZATION_ID to your organization ID.
Store each login as a secret whose value is JSON: {"url": "https://github.com", "username": "...", "password": "..."}. url and password are required; username, email and mfa_secret (a TOTP seed or otpauth URI) are optional. Include username for the example below. Exact URL matches take precedence over root-domain matches; if several secrets match, reads use the first and deletion raises an ambiguity error. Secrets with other values are skipped.
bitwarden_secrets_manager.py
add_credentials() writes a new secret and needs project_id=. For a self-hosted or EU server, pass api_url= and identity_url=.