Module 0: What We're Building

Your garden doesn’t care about your schedule. Frost hits at 3 AM. Your seedlings need hardening exactly 2 weeks before transplanting. The soil temperature crossed 10°C while you were in a meeting. And every gardening website gives you advice for “Zone 5,” which means nothing when you’re growing tomatoes in containers on a balcony in Finland at 63°N. This is the kind of problem AI is actually good at. Real-time monitoring, domain-specific knowledge, proactive action based on data you can’t manually check every day. ...

March 29, 2026 · 5 min · Aleksandr Likhachev

Module 1: Claude Code Essentials

Before we build anything, you need to understand the tool. Claude Code isn’t a chatbot. It’s an AI that lives in your terminal, reads your project files, writes code, and runs commands (with your permission). Think of it less like asking someone for advice, more like having someone sit next to you and do the work while you review. If you’ve been using Claude Code for a while, skim this. If you’re new, read carefully. These patterns make everything in the later modules work. ...

March 29, 2026 · 6 min · Aleksandr Likhachev

Module 2: Building a Skill — Teaching Claude Your Domain

Ask Claude Code “when should I start tomato seedlings?” and you’ll get a perfectly reasonable, perfectly useless answer. “Generally 6-8 weeks before your last frost date.” Thanks, Google could have told me that. The problem isn’t that Claude is wrong. It’s that Claude doesn’t know you. It doesn’t know you’re in Kokkola, Finland at 63°N, that your last frost date is June 15, that you grow in containers on a south-facing balcony, and that you have grow lights for the long dark spring. With that context, the answer changes completely, and it changes differently for every variety in your collection. ...

March 29, 2026 · 8 min · Aleksandr Likhachev

Module 3: Building an MCP Server — Giving Claude Real-Time Data

In Module 2 we gave Claude domain knowledge: gardening rules, frost date arithmetic, plant lifecycle management. Claude now knows how gardening works. But it doesn’t know what’s happening right now. Ask Claude “should I start hardening my seedlings this week?” and it can calculate the ideal date from your profile. But it can’t check if this week is actually warm enough. It knows your last frost date is June 15, but doesn’t know that an unusual cold front is dropping temperatures to -5°C tonight. ...

March 29, 2026 · 7 min · Aleksandr Likhachev

Module 4: Building an AI Agent — Autonomous Intelligence

In Module 2, we gave Claude domain knowledge. In Module 3, we gave it real-time data. But everything still requires you to ask. You open Claude Code, type a question, get an answer. Nobody is opening their laptop at 3 AM to ask “is there frost tonight?” An agent changes this. It polls for messages, processes them, and takes initiative on its own. Accessible from your phone through Telegram. What Makes an Agent? A tool waits for you to call it. An MCP server waits for Claude to call it. An agent responds when asked and acts when it decides to. ...

March 29, 2026 · 7 min · Aleksandr Likhachev

Module 5: Putting It All Together

We started with a problem: managing a garden with unpredictable weather, location-specific timing, and dozens of plants each with their own schedule. We ended with an AI agent in Telegram that knows your garden, checks the weather, and wakes you up when frost is coming. More importantly, we built it by directing Claude Code. No hand-written code. The entire system (skill, MCP server, Telegram bot integration, autonomous agent) was created through conversation. ...

March 29, 2026 · 4 min · Aleksandr Likhachev

Vigil: A Menubar App for Claude Code Sessions

Vigil: A Menubar App for Claude Code Sessions The Problem With Many Sessions Once you start running Claude Code seriously, you end up with multiple sessions. One fixing a bug in the API, one refactoring the frontend, one writing tests. Each in a different terminal window or editor tab. The question is always the same: which one needs my attention right now? You alt-tab between windows trying to remember where Claude was waiting. You switch to a terminal only to find it’s been idle for ten minutes. You miss the session that needed a permission confirmation. ...

March 18, 2026 · 3 min · Aleksandr Likhachev