100 Tips for Building a Personal AI Agent: From Cloud Prototype to Production

A developer spent six weeks building a personal AI agent from scratch — not a chatbot wrapper, but a persistent assistant that manages tasks, tracks deals, reads emails, analyzes business data, and proactively surfaces missed items. The project started in the cloud (Claude Projects with shared memory files, rich context windows, custom skills) then migrated to Claude Code inside VS Code, which unlocked local file access, git tracking, shell hooks, and scheduled headless tasks. The migration forced solving problems they didn't know existed. These 100 tips are the distilled result, with Claude 20x max usage shifting from 100% development / 0% real-world initially to 20% / 80% after six weeks.
Foundation & Identity (1–8)
- Write a Constitution, not a system prompt. A system prompt lists commands; a Constitution explains rules. When the agent hits an edge case no rule covers, it reasons from the Constitution instead of guessing. This separates agents that degrade gracefully from those that hallucinate confidently.
- Give your agent a name, voice, and role. Example: "Always first person. Direct. Data before emotion. No filler phrases. No trailing summaries." This eliminates hundreds of micro-decisions per session and creates consistency for audit.
- Separate hard rules from behavioral guidelines. Hard rules in a dedicated section — never overridden. Behavioral guidelines adapt. Mixing them makes both meaningless.
- Define your principal deeply. Who does the agent serve? What frustrates them? How do they decide? Example: "Decides with data, not gut feel. Wants alternatives with scoring, not a single recommendation. Hates vague answers."
- Build a Capability Map and a Component Map separately. Capability Map: what the agent can do (skills, integrations, automations). Component Map: how it's built (files, connections). Conflating them creates a useless document after month three.
- Define what the agent is NOT. "Not a summarizer. Not a yes-machine. Not a search engine. Does not wait to be asked." Negative definitions prevent drift toward generic helpfulness.
- Build a THINK vs. DO mental model. When uncertain → THINK (analyze, draft, prepare). When clear → DO (execute, write, dispatch). Never freeze. Default to action at the lowest stakes level, surface the result.
- Version your identity file in git.
git blameon configuration helps debug behavioral regressions that trace to specific edits.
Memory System (9–18)
- Use flat markdown files for memory — not a database. Readable, greppable, git-trackable, directly loadable by the agent. No infrastructure layer.
- Separate memory by domain, not by date. Files like
entities_people.md,entities_companies.md,entities_deals.md,hypotheses.md,task_queue.md. One file = one domain. Chronological dumps become unsearchable after week two. - Build a
MEMORY.mdindex file. Single index listing every memory file with a one-line description. Agent loads index first, pulls specific files on demand. Keeps context window usage predictable. - Distinguish "cache" from "source of truth" — explicitly. Mark every cache file with
last_sync:timestamp. For example, localdeals.mdis a cache of the CRM; the CRM is the SSOT.
📖 Read the full source: r/ClaudeAI
👀 See Also

How to Troubleshoot OpenClaw Setup Issues: Multi-Agent and Model Response Problems
Struggling with setting up OpenClaw? Discover common problems with multi-agent configurations and unresponsive models, and learn how to solve them.

Building API endpoints with Claude: Practical prompt engineering lessons from a 70+ endpoint project
A developer built 70+ LinkedIn automation API endpoints with Claude writing 80% of the code, discovering that treating prompts like contracts with explicit constraints works better than natural language instructions for action-taking agents.

OpenClaw Community Thread: Share Your AI Coding Setup and Monthly Costs
A Reddit thread in r/openclaw collects practical setups for AI coding agents, focusing on model routing strategies, cost-saving rules, and community-sourced hardware-to-model mappings with monthly cost ranges.

Common OpenClaw installation errors and how to fix them
A Reddit post consolidates solutions for several common OpenClaw installation issues, including PATH configuration, permission errors, Node.js version requirements, TTY problems, and plugin state issues.