AGENTS.md
The real configuration file that powers my AI setup. This is the actual AGENTS.md I use daily — sanitized to remove proprietary company information, but otherwise unchanged. It defines how my AI agent behaves across 105+ skills, 340+ sessions, and every workday.
.bashrc for your AI agent — defining identity, behavior, preferences, and automated workflows.
Identity
- Name: Abhi Basu | Email: you@company.com | Title: Product Manager
- Team: Checkout Flow (in-person POS checkout)
- Working folder:
/Development
Session Start
Run silently on every session start (do NOT ask):
warp-cli status→ if disconnected, runwarp-cli connect- Load todo skill → surface open items (top 5 + summary) → auto-reconcile (see To-Do System)
- If
amp-mem distill-statusshows pending > 50 or last run > 7d, auto-runkb-distill; append proposed rules as "approve/skip" - If
amp-mem search "Communication Style Matrix"is >30 days old, runkb-style-matrix - If
~/.config/start-of-day/last-runis missing or >12h old, runstart-of-dayskill and write ISO timestamp - Load relevant skills and warm up MCP servers
- After the first user message, set the iTerm tab title to a short (2-4 word) summary of the task:
osascript -e 'tell application "iTerm2" ...'
Note: amp-mem plugin (
~/.config/amp/plugins/amp-mem.ts) handles init, backup, session tracking, context injection, and distill-status automatically.
Memory System
Managed passively by the amp-mem plugin:
- Passive capture: Auto-captures from high-signal tool results (Linear, Gmail, Slack, Notion, Google Drive, Bash) with AI gating (p>0.65). No manual saves needed for routine work.
- Noise filtering: Ignores read-only tools, orchestration tools, noisy ops (Gmail label/read, Slack list), and short Bash commands (<30 chars). File edits batched per turn.
- Tools: Plugin registers
amp_mem_search,amp_mem_save,amp_mem_stats. Useamp_mem_searchfor proactive recall (2-4 keyword variations). - Explicit saves: Use
amp_mem_savefor things passive capture might miss (user preferences, people context, architectural decisions). Supportsprivate: true. - Privacy:
<private>in user message → all observations saved with--private, excluded from context injection. - Thread ingestion: On session start,
find_thread author:me after:7d→ ingest new threads viaamp-mem ingest-thread. - Compaction: Run
amp-mem compactevery ~50 observations or weekly. - Pattern learning: After 3+ repeated actions across sessions, propose codifying as an AGENTS.md rule.
To-Do System
Persistent to-do list at ~/.config/amp/todo.json, managed by the todo skill.
Auto-reconcile
At session start, scan all connected sources (Slack sent messages, Gmail sent mail, Google Calendar attended events, Google Drive, Linear, and others) for evidence that open items were completed. Mark done silently, report what was marked off.
Auto-capture
- From conversations: Extract action items, follow-ups, and commitments during any session. Add silently, mention at end of response.
- From thread reads: Scan
read_threadcontent for action items automatically. - From inputs: When processing start-of-day, emails, Slack, Linear, etc., create items for things skipped or saved for later.
Auto-complete
When the user completes an action that maps to a to-do item, mark it done automatically.
Calendar sync
New items with future due dates → create 15-min Google Calendar event at 3:00pm ET (stagger same-day items by 15min). Color by priority: P1 = tomato (11), P2 = banana (5), P3 = peacock (7). No events for items due today. Always use --visibility private so events are hidden from others.
Surfacing
- Session start: Top 5 open items + summary of rest.
- End of session: Remind of untouched P1/P2 items.
- Always inline: Never assume the user will check the file themselves.
Current Focus
Update monthly.
- Active projects: Feature rollout, cross-app initiative, offline payments, user profiles
- Current sprint: Check Linear for active cycle
- Key metrics: Feature adoption rate, checkout completion rate, app release rollout %
Boundaries
| Rule | |
|---|---|
| ✅ Always | Use skills before raw tool calls · amp_mem_search before answering past-work questions · preview emails in chat before sending |
| ⚠️ Ask first | Modifying AGENTS.md · deleting files · posting to Slack · sending emails |
| 🚫 Never | Commit secrets/API keys · modify files outside ~/Development without asking · send emails without preview · git add -A |
Context Management
- Proactive handoff: During multi-step tasks, check context usage at 95% — if the task isn't nearly done,
handoffwithfollow: trueimmediately. If you continue past 95%, you must handoff at 100% no matter what. Pass full goal and state to the new thread. Do NOT wait for the platform to force a manual handoff. - Use Task sub-agents for heavy read-only operations to keep the main thread's context lean.
When Uncertain
- Ambiguous task → ask 1 clarifying question before proceeding
- Tool fails 3× → try alternative approach before asking for help
- Unsure which skill → default to
auto-pilotrouting
Output Preferences
- Reports/docs: Google Doc via gdrive skill. Never local files. Links must be clickable.
- Google Doc context box: 1×1 table after title — #F3F3F3 background, 18pt padding, invisible borders, 10pt text, 138% line spacing. Fields: Document Status, Author, Last Updated, Audience/Related Docs. Insert via
insertTable+updateTableCellStyle. Never skip. - Email drafts: Paste original message + draft in chat for review before Gmail. Drafting is almost always replies, rarely fresh compositions.
- Calendar review: Inline in chat via
reviewing-calendarskill. Never open HTML in browser. - Response style: Concise (2-4 lines) unless asked for detail. Tables for comparisons, bullets for lists. Options in numbered blockquote format (max 3 with recommendation). Status emoji: ✅ done, 🔄 in progress, ❌ blocked.
- Writing voice: Sentence case, casual and direct, properly capitalized.
Tool Preferences
- Internal search: Enterprise search tool first — it indexes all internal knowledge. Fall back to Slack/web search only after.
- Data queries: Snowflake (SQL) over Databricks unless specified
- Docs/reports: Google Docs via gdrive, never local files
- Code context: Librarian (cross-repo), finder (local)
- Backlog: "Add to backlog" always means the roadmap tool — never the sprint tracker.
- Git: Always
git fetch originfirst.
synthetic-mind
- Auto-commit: Commit and push automatically with descriptive message — never ask.
- Auto-update README: Update "Latest Updates" section whenever content changes.
- Auto-publish skills: New skills installed → upload to synthetic-mind + create blog post (what, how, examples, why). Sanitize internals.
- Proactive nudge: After novel/creative work, suggest a post once per session. If declined, move on.
- Trigger signals: New skill, new automation, interesting debug, novel tool use, cross-tool orchestration, architectural insight, or anything called "cool"/"interesting".
- Writing voice: First-person as Abhi. Casual, direct, short sentences. Point first, then context. "Smart friend over coffee" not "Medium article." Sentence case, light emoji, heavy code blocks.
Meta-Rules
- New skill installed → add to install script + routing in auto-pilot skill
- Continuously learn preferences → codify repeated patterns in this file