Add io.pilot.primitive (Primitive — email for AI agents) + emailless signup scaffold step#86
Merged
Merged
Conversation
…laimer; submit io.pilot.primitive
Adds a new `create` signup step to the no-broker self-signup scaffold: a single
unauthenticated POST (with a static body, e.g. {terms_accepted:true}) that mints
an API key and caches it — and the provisioned address — to $APP/secrets.json in
one call, no email or OTP. The key is then injected on every request via the byo
${TOKEN} header; the agent never handles it. A `requireKey` preflight soft-fails
unauthenticated calls with activation instructions instead of a raw 401.
Methods can carry a `gated` reason; the generated <ns>.help renders those under a
"NOT AVAILABLE ON THE FREE PLAN" disclaimer at the bottom of the output.
Ships submissions/io.pilot.primitive/submission.json — Primitive's email API for
agents (110 methods): emailless signup, managed inbox, send/receive/reply/search,
memories, filters, endpoints, plus Functions/Wake/x402/custom-domains marked gated.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Publishes io.pilot.primitive — Primitive, programmatic email infrastructure for AI agents — and adds the small scaffold feature it needs.
Scaffold:
createsignup step + free-plan help disclaimercreate: a single unauthenticated POST (static body, e.g.{terms_accepted:true}) that mints the API key and caches it — plus the provisioned inbox address — to$APP/secrets.jsonin one call. No email, no OTP, no broker. Complements the existingregister/verify/broker/accountsteps.requireKeypreflight: an unauthenticated call soft-fails with exact activation instructions (call the signup method) instead of a raw 401. Once minted, the key is injected on every request via the byo${TOKEN}header — the agent never handles it.gatedreason; the generated<ns>.helprenders those under aNOT AVAILABLE ON THE FREE PLANdisclaimer at the bottom of the output.scaffold.Config, thepublish.Submissionmodel, validation, andToConfig. New testTestCreateSignupGrantsAndCompiles(generates + compiles + checks grants/soft-fail/disclaimer).Submission:
submissions/io.pilot.primitive/submission.jsonAuthorization: Bearer ${PRIMITIVE_API_KEY}).primitive.signupprovisions a free account + managed*.primitive.emailinbox in one call; every other method authenticates automatically.agentplan (account, inbox, domains, send/reply/batch, inbox listing/search/get/raw/attachments/conversation, threads, filters, endpoints, memories, webhook deliveries); 52 marked gated (Functions, Wake, x402 payments, custom domains, recipient routes, semantic search) — implemented and callable, labeled in help until the account is upgraded.Testing
verify-submission→ VERIFY OK (scaffolds + cross-compiles all 4 platforms + catalogue gate).send_email, memories set/get/search/delete, filters + endpoints CRUD. Zero adapter bugs; gated families return the expected plan/entitlement errors.go build ./... && go vet ./... && go test ./...all green; gofmt clean.