Detailed content
🤖 Desktop × Mobile: Two Complementary Ways to Use AI
Many people mix up two things that are distinct. The desktop is you sitting at the terminal with your coffee—Claude Code is scoped to a project (one repository, one folder) and works the same for everyone. The mobile is the personal agent that goes with you on your phone and is scoped to you: your life, your tools, your memory.
The distinction between desktop work (Claude Code in a project) and a mobile agent (scoped to you, on your phone).
Without this map, people try to do everything in one place. Knowing how things are divided tells you where each thing lives.
Desktop = repo/project, the same for everyone · mobile = personal, goes with you · the two connect.
💻 Desktop — Claude Code
- •Lives in the IDE/terminal, scoped to one project.
- •Deep work: coding, automating, building.
- •Works the same for everyone.
📱 Mobile — personal agent
- •Goes with you on your phone, scoped to you.
- •Continuous monitoring throughout the day.
- •The more you use it, the better it gets.
🔗 How the two connect
Deep work happens on desktop; ongoing follow-up happens on mobile. Just because you got up from your chair doesn’t mean you need to stay disconnected—the agent picks up the conversation where the desktop left off.
🧭 The AI chief of staff: always on, scoped to you
The idea of a personal assistant isn't new — Siri promised this and never got it right. What changed is that models became good enough to act, not just answer. Think of your agent as a chief of staff: always on, reachable from your phone, remembers what you agreed on yesterday, and does what needs to be done.
The personal agent that moves through your life, reachable from your phone, and remembers and takes action.
It’s the central concept of the learning path. Understanding that it acts (doesn’t just respond) changes how you use it.
Always-on · cross-session memory · real actions (draft emails, schedule events, save notes) · the more you use it, the better it gets.
📊 Responding × taking action, in practice
- •Respond: “here’s an email template you could send.”
- •Take action: draft the email, schedule the event, save the note—for real.
- •You send a voice message on your way to work, and it gets things done right away.
🌱 Building with an open-source agent
One practical approach is to use an open-source agent — for example, Hermes, by NousResearch: you install it, connect your channels and tools, and it becomes your always-on agent. Since it's open source, improvements arrive just by updating. Treat the concept generically: "personal agent" applies to any equivalent tool.
⭐ The golden rule
A good personal agent doesn't depend on you remembering everything or tied to a specific chat. It preserves context between sessions and is accessible wherever you are.
💬 Channel on your phone: talk to your agent via Telegram/WhatsApp
The channel is what makes the agent mobile for real — talk to it from anywhere, by text or audio, in a messaging app. Without a channel, it stays stuck on the PC. And one non-negotiable guarantee: the whitelist, which makes it so that only you be able to control the bot.
A way to talk to the agent from anywhere—by text or voice—through a messaging app.
It’s what makes the agent mobile. Without a channel, it’s stuck on the desktop.
Telegram, WhatsApp, or SMS · audio works · whitelist (only you talk to the bot).
Open BotFather
Install the Telegram and open the official account BotFather.
Create the bot and get the token
Type /newbot, choose a name that ends in bot and copy the token.
Paste the token into the config
When the agent setup asks, paste the copied token.
Add your ID to the whitelist
Get your user ID (use a “get my ID” bot) and add it to the whitelist — only you can message your agent.
🔌 Connect your tools: everything you already use, within your agent’s reach
An agent without tools only talks. With tools, it does. Basically, anything you connect to Claude, you can connect to the agent: email, messages, payments, code, web research. The key is to connect one at a time.
Connect the agent to the services you use every day: Gmail, Slack, Stripe, GitHub, Firecrawl, and others.
An agent without tools only talks. With tools, it takes real actions.
Any Claude integration works here · email, messages, payments, code, research.
✓ Healthy connection
- ✓List the 3–5 tools you use most.
- ✓Connect one and test a simple action ("read my latest unread email").
- ✓Move on to the next one only after the previous one works.
✗ The shortcut that goes wrong
- ✗Plug in ten tools at once.
- ✗Not testing each connection in isolation.
- ✗When it breaks, you don’t know what caused it.
🧪 Test a real action
After connecting, ask for a concrete action and confirm the result — "read the subject of my latest email" — before continuing. If the agent completed the action (it didn't just describe what it would do), the connection is live.
⏰ Tasks that run on their own: it works even when you don’t ask
This is where the agent becomes a time multiplier: routines scheduled that it runs without you triggering it — the classic "daily summary at 7 a.m." You define once, and it delivers every day. “Set and forget”: configure it and forget about it.
Scheduled routines that the agent runs without you triggering them.
It’s where the agent becomes a time multiplier. You set it up once, and it delivers every day.
Scheduling · “set and forget” · if connected to the desktop, it can summarize your projects too.
Choose a high-value routine
E.g.: a summary of yesterday’s 5 most important things. Start with one only.
Ask to schedule it for a fixed time
"Every day at 7 a.m., send me a summary on Telegram…" (see the prompt in the Prompts section).
Adjust after the first delivery
See what came in and refine the summary content based on the real world.
💡 Connects to the desktop
If the agent can see your desktop projects, the 7 a.m. digest can include "what changed in your repositories yesterday"—not just emails and messages.
📦 Isolation with Docker: an image is the recipe, a container is the pizza
To run the agent isolated from the rest of your computer, use the Docker. Imagine your PC as a house; Docker is a separate, enclosed room inside it — it runs on your machine, but can't see your other folders. The the image is the recipe (frozen ingredients, a file sitting untouched on disk); the a container is the pizza (what you actually bake and use).
Run the agent inside a Docker container, isolated from the rest of the computer.
If you don't want the agent to see your folders and photos, the container provides that barrier.
Docker = a closed room in the house · image = recipe · container = pizza · stopping the container “erases” the run.
🧊 Image = Recipe
- •Frozen ingredients—a file sitting on disk.
- •You download it once; it appears in "Images".
- •Download the image no is “running.”
🍕 Container = pizza
- •What you actually bake and use from the recipe.
- •Each time you turn on the agent, a container starts up.
- •Clicked on Stop: the execution disappears; nothing on your PC was exposed.
Going deeper (optional): grant access to specific folders only
By default, the container can't see your folders. If you need to grant access, ask explicitly and list only the necessary paths — the agent mounts only those folders inside the closed room, and nothing else. Always start closed and open as little as possible.
Self-check (optional): in the Docker analogy, what is the container?
🧩 Guided Hands-On Example
Let's build a minimal personal agent, isolated in Docker, that talks to you through Telegram and delivers a daily summary.
- Install Docker. Go to docker.com → "Get started" and install it for your system. Open the app.
- Ask Claude Code to install the agent in Docker. Use Prompt 1. Claude has the commands; you just confirm.
- Understand image × container. The downloaded recipe is in "Images"; after you upload it, the running pizza appears in "Containers".
- Configure Telegram. In BotFather, create the bot with
/newbot, copy the token and paste it. Get your user ID and add it to the whitelist. - Run the liveness test. On Telegram, send “What’s today’s date?” If it replies, the channel is live.
- Connect a tool. Start with Gmail: “read the subject of my latest unread email” and confirm.
- Schedule the daily summary. "Every day at 7 a.m., send me a summary of yesterday’s 5 most important things on Telegram." (Prompt 4.)
- Stop the container. In Docker, click Stop. Confirm that it stopped and that none of your folders were left exposed.
Result: an isolated, secure agent (only you can talk to it), connected to a tool and delivering value automatically every day.
✏️ Exercises
1. Desktop × mobile map (easy)
In one sentence each, describe one task of yours "on desktop" and one "on mobile." Criterion: The desktop one is scoped to a project; the mobile one stays with you throughout the day.
2. Secure channel (medium)
Create a Telegram bot and configure the whitelist with your user ID. Criterion: you send a message and it replies; another account cannot.
3. One Connected Tool (medium)
Connect one tool (Gmail, Slack, GitHub…) and perform a simple action with it. Criterion: the agent performed the real action, rather than just describing how it would do it.
4. Daily summary (medium)
Schedule a daily digest at a fixed time. Criterion: the first deliverable arrives on time and includes real items from your world.
5. Isolate and stop (medium)
Start the agent in Docker, then stop the container. Criterion: you point out which is the image and which is the container, and confirm that stopping it did not leave access to your folders.
⌨️ Ready-to-use prompts
Paste these into Claude Code to build and operate your agent. Confirm each command before running it. The complete database is at Library → Prompts.
Install the isolated agent in Docker (canonical)
I've installed Docker and it's running. Install my personal agent inside a Docker container, completely isolated from the rest of my computer, with no access to my folders. Guide me step by step and confirm each command before running it.
Original (EN):
I've installed Docker and it's running. Install my personal agent inside a Docker container, fully isolated from the rest of my computer, with no access to my folders. Walk me through it step by step and confirm each command before running it.
Grant access to specific folders
Quero dar ao container do meu agente acesso de leitura APENAS a estas pastas: <liste os caminhos>. Não dê acesso a nenhuma outra pasta. Confirme antes de aplicar.
Schedule a daily summary (canonical)
Todo dia às 7h, me envie no <Telegram/WhatsApp> um resumo das 5 coisas mais importantes que aconteceram ontem no meu mundo (e-mails, mensagens e tarefas). Curto e direto, em tópicos. Se faltar acesso a alguma ferramenta, me avise.
Original (EN):
Every day at 7am, send me a digest on <Telegram/WhatsApp> of the 5 most important things that happened yesterday in my world (emails, messages, tasks). Short and to the point, as bullets. If you're missing access to any tool, tell me.
Connect one tool and test it
Conecte meu agente ao <Gmail/Slack/GitHub/Stripe/Firecrawl>. Depois faça um teste simples (ex.: ler meu último item) e me mostre o resultado, para eu confirmar que a conexão funciona antes de seguirmos.
⚠️ Common errors
- ✗Thinking the agent “only responds.” Treat it like ordinary chat and never ask for actions. Fix: ask it to do (draft, schedule, summarize).
- ✗Skip the whitelist. Leave the channel open without restricting who can speak. Fix: configure your user ID; only you control the agent.
- ✗Confuse image and container. Thinking that downloading the image means it’s already “running.” Fix: the image is the recipe; it’s the container that runs. Start the container.
- ✗Go straight to an external server (VPS). Overcomplicate things with paid infrastructure before you need it. Fix: start on your PC — faster, safer, and zero cost.
- ✗Connect everything at once. Plug in ten tools and have no idea what broke. Fix: connect and test one at a time.
✅ Module summary
Completion checklist
- ☐ I can explain the difference between desktop (scoped to a project) and mobile (scoped to me).
- ☐ I have a chat channel on my phone (e.g., Telegram) with a whitelist limited to me.
- ☐ I connected at least one tool and tested a real action with it.
- ☐ I scheduled at least one automated task (e.g., a daily summary at 7 a.m.).
- ☐ I started the agent in Docker and can identify the image and container.
- ☐ I know how to stop the container and confirmed that it cannot access my folders.
- ☐ I saved my profile/style so the agent can remember it between sessions.
Next module:
3.2 — Compliance & Maintenance: Keeping Your Agent Secure and Up to Date