1. Claim the mailbox
Create a mailbox in the console, or ask your agent to follow mailbox setup. If it creates an unclaimed mailbox, open the private claim link in your existing trusted conversation and sign in as the human Owner. Claiming preserves the address, messages, and API key. Claim links default to seven days but cannot outlive the unclaimed account’s original expiry. The returnedclaim_expires_at is authoritative. Claiming an
email account does not activate Agent Login.
2. Set up your human passkey
Open SentFrom identity and sign in with the same account that owns the mailbox. The beta operator admits that account’s immutable user ID; an email-address match alone is not enough.- Select Register your first passkey and complete your device’s prompt.
- Open Details for your enrollment operator. Through the independently verified human channel, compare the Owner ID, enrollment generation, and the entire 64-character passkey fingerprint with the operator.
- Confirm that your agent cannot exercise the device approval or access its PIN, biometric approval, synchronization account, or recovery account. Never send the operator a PIN, recovery secret, or private key.
- After activation, select Check activation, then Verify with passkey.
3. Install and configure the companion
These are planned beta versions. Run the registry command only after the release
operator confirms publication. Before then, use the reviewed tarballs supplied
for the private pilot. Stable mail marketplace installations remain mail-only.
node_modules/sentfromai-mcp/skills/agent-login/config.example.json to a private
file. Replace its handle with your exact mailbox address and stateDirectory with
an absolute private directory. The example explicitly allows Agent Workspace;
keep that target only if you authorize it. Do not add websites automatically from
a catalog.
The configuration must be owned by the launching user with mode 0600, and its
state directory with mode 0700. Use the host’s protected credential settings for
SENTFROMAI_API_KEY; the JSON names that environment variable, not its secret value.
--config /absolute/private/agentlogin.json. Supply the mailbox API key in its
protected environment. The optional identity-server.js wrapper and
mcp-with-identity.json are included for compatible hosts. A Git-cloned plugin
needs the companion installed in that checkout; an unrelated project installation
does not satisfy its imports.
Never copy an existing identity’s keys or cookies to onboard a new person.
4. Approve the agent key
Ask your agent to runagentlogin_inventory, then agentlogin_enroll for the
configured identity. It generates a new private key locally and gives you a public
approval link and fingerprint.
Open that link yourself. Compare the address, key name, and full fingerprint with
the request your agent started. This fingerprint identifies the agent key; it
is different from your human passkey fingerprint. Verify your passkey if asked,
then choose Approve this key. Decline unexpected requests.
Tell your agent when you have approved. If its short polling task has stopped,
it calls agentlogin_enroll again to resume the same saved request. It must keep
the original request and key. Enrollment is complete only when the helper proves
possession and reports active.

