Skip to content

Commit 02ecfc3

Browse files
committed
Add username preferences with professional/casual context and priority
Stores 6 preferred usernames in keychain (3 professional, 3 casual). Agent detects service context and tries usernames in order: primary > secondary > tertiary > short number suffix. Never generates random usernames like rishi-2160504210 again. Professional context for work tools (GitHub, Vercel, AWS, etc.), casual for everything else. Asked once, stored forever.
1 parent a5d2acb commit 02ecfc3

1 file changed

Lines changed: 30 additions & 0 deletions

File tree

agent/autopilot.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,36 @@ echo "{password}" | ~/MCPs/autopilot/bin/keychain.sh set primary password
135135

136136
**First-time setup**: If no primary credentials exist when the agent first needs them, ask the user ONCE: "I need a primary email and password to use for signing up to services. I'll store these in your macOS Keychain." Store them, then never ask again.
137137

138+
### Username Preferences
139+
140+
Preferred usernames stored in Keychain, organized by priority and context. The agent tries them in order when signing up for new services.
141+
142+
```bash
143+
# Professional usernames (for work tools: GitHub, Vercel, AWS, Supabase, Stripe, etc.)
144+
~/MCPs/autopilot/bin/keychain.sh get usernames professional-primary
145+
~/MCPs/autopilot/bin/keychain.sh get usernames professional-secondary
146+
~/MCPs/autopilot/bin/keychain.sh get usernames professional-tertiary
147+
148+
# Casual usernames (for everything else: social tools, community platforms, etc.)
149+
~/MCPs/autopilot/bin/keychain.sh get usernames casual-primary
150+
~/MCPs/autopilot/bin/keychain.sh get usernames casual-secondary
151+
~/MCPs/autopilot/bin/keychain.sh get usernames casual-tertiary
152+
```
153+
154+
**Context detection**: Choose professional or casual based on the service:
155+
- **Professional**: GitHub, GitLab, Vercel, Netlify, AWS, Supabase, Stripe, Cloudflare, Sentry, Datadog, Railway, Fly.io, Firebase, Azure, GCP, npm, Docker Hub, any enterprise/work tool
156+
- **Casual**: Everything else (community platforms, social tools, forums, creative services)
157+
158+
**Username selection when signing up**:
159+
1. Try the primary username for the detected context (professional or casual)
160+
2. If taken → try secondary
161+
3. If taken → try tertiary
162+
4. If all three are taken → append a short number to the primary (e.g., `rishi-k42`), never a long random string
163+
164+
**First-time setup**: If no usernames are stored when first needed, ask the user ONCE: "I need your preferred usernames for signing up to services. Give me 3 professional and 3 casual options in order of preference." Store all six, then never ask again.
165+
166+
**Never generate random usernames** like `rishi-2160504210`. Always use the stored preferences first.
167+
138168
### Acquisition Priority (how to GET credentials)
139169

140170
When you need a credential that isn't stored:

0 commit comments

Comments
 (0)