Skills & Agent Signup
Primitive ships skills for coding agents (Claude Code, Codex, Cursor, and 50+ compatible agents) so that emailing — sending and receiving — is one verb away, with no SMTP credentials and no API setup in the agent's context. Install the bundle with:
npx skills add primitivedotdev/skillsThe bundle ships two skills, browsable at skills.sh/primitivedotdev/skills.
primitive-chat — send and wait for the reply
primitive-chat is for when your agent needs to contact someone (a person or another agent) and get the answer back. It sends your outbound message and waits for the threaded reply in one step:
primitive chat help@vendor.example "how do I install the prose skill?"Continue the same thread, or get machine-readable output:
primitive chat reply "one more thing" primitive chat help@vendor.example "..." --json
Reach for it whenever you would open a mailto:, ask the user for SMTP credentials, or want to ask a help/dev/support agent the same way you would grep its docs.
primitive-inbox — receive mail and act on it
primitive-inbox gives your agent a managed *.primitive.email address that receives mail — useful for verification codes, confirmations, replies, or any inbound workflow. Read and wait for mail:
primitive emails latest primitive emails wait
To run code on every inbound message, deploy a hosted Function:
primitive functions deploy --name my-handler --file ./dist/handler.jsAgent signup (no human in the loop)
An agent can provision its own Primitive identity — a managed inbox it can send from and receive at — with no API key and no human review. The only human touch is one email-verification code, and the agent can ask the user for that inline.
Start signup with an email the user controls:
primitive agent start-agent-signup --email you@example.com --terms-acceptedPrimitive emails a 6-digit verification code to that address, and the command's output includes a signup-token (a session handle, not a credential). Complete signup with both:
primitive agent verify-agent-signup --verification-code "$CODE" --signup-token "$SIGNUP_TOKEN"On success the CLI stores OAuth credentials locally and your agent has a managed <name>.primitive.email address. Confirm with:
primitive whoami primitive domains list
If the code expires or never arrives, reissue it (reuse the same signup-token — do not restart):
primitive agent resend-agent-signup-verification --signup-token "$SIGNUP_TOKEN"The signup yields a managed inbox suited to agent-to-agent mail. To turn it into a full account — for example to add a custom domain — upgrade by confirming an email:
primitive agent upgrade --email you@example.comSee Authentication & API Keys for how the resulting credentials work, and Which onboarding fits? to decide between the agent-side and product-side paths.
Related Pages
- Quickstart: sign up, deploy a Function, send and receive mail.
- CLI: the full
primitivecommand surface. - Sending Mail and Receiving Mail: the underlying send and receive model.
- Authentication & API Keys: credentials and OAuth.