<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Mikael Kolam</title>
    <description>The latest articles on DEV Community by Mikael Kolam (@mikaelkolam).</description>
    <link>https://dev.to/mikaelkolam</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4172598%2F8cfd9779-d815-4e49-9375-56ad76e81c53.jpg</url>
      <title>DEV Community: Mikael Kolam</title>
      <link>https://dev.to/mikaelkolam</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mikaelkolam"/>
    <language>en</language>
    <item>
      <title>How I split an AI assistant into 6 seats so nothing sends without a human yes</title>
      <dc:creator>Mikael Kolam</dc:creator>
      <pubDate>Mon, 12 Oct 2026 07:51:57 +0000</pubDate>
      <link>https://dev.to/mikaelkolam/how-i-split-an-ai-assistant-into-6-seats-so-nothing-sends-without-a-human-yes-3b9i</link>
      <guid>https://dev.to/mikaelkolam/how-i-split-an-ai-assistant-into-6-seats-so-nothing-sends-without-a-human-yes-3b9i</guid>
      <description>&lt;p&gt;&lt;em&gt;Disclosure: I sell a template pack, link below. The approach in this article works without it.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;If you've used an AI assistant for any length of time, you've probably felt the same two frustrations. First, one long chat becomes a junk drawer where inbox triage, research and pricing ideas all blur together. Second, you start to wonder what happens if the assistant is ever connected to something that can actually send, pay or publish.&lt;/p&gt;

&lt;p&gt;I dealt with both by changing how I set the assistant up. Instead of one general helper, I use &lt;strong&gt;six standing seats&lt;/strong&gt;, each with one job, a written "never" list, and a human gate on anything that leaves the chat. This article describes the structure so you can build your own.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem with one do-everything assistant
&lt;/h2&gt;

&lt;p&gt;A general assistant has no boundaries unless you give it some:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Scope creep.&lt;/strong&gt; You ask for an email draft and get a strategy memo.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unclear authority.&lt;/strong&gt; It isn't obvious what the assistant may do on its own.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The second matters most. If an assistant can email, post or pay, a vague instruction is a risk. I want the default to be "draft it and show me," and I want that default written down in the assistant's own instructions, not just in my head.&lt;/p&gt;

&lt;h2&gt;
  
  
  The idea: seats, not prompts
&lt;/h2&gt;

&lt;p&gt;Think of each agent as a seat at a small table. Every seat has the same short structure:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Job&lt;/strong&gt;: one sentence.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Owns&lt;/strong&gt;: what it produces.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Never&lt;/strong&gt;: what it must not do.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;First task&lt;/strong&gt;: what it does when you first talk to it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Done when&lt;/strong&gt;: an observable result.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Here is a seat written in that format. It's the one I'd start with:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# Inbox&lt;/span&gt;

&lt;span class="gu"&gt;## Job&lt;/span&gt;
Triage inbound messages the human pastes here. Draft replies. Do not send.

&lt;span class="gu"&gt;## Owns&lt;/span&gt;
Label (action / wait / archive), draft reply in the human's voice,
one-line risk note.

&lt;span class="gu"&gt;## Never&lt;/span&gt;
Click send. Promise deadlines the human did not set.
Soften bad news into fluff.

&lt;span class="gu"&gt;## First task&lt;/span&gt;
When given a pasted email/Slack thread: return Label + Draft + Risk
in under 12 lines.

&lt;span class="gu"&gt;## Done when&lt;/span&gt;
Human can copy-paste or discard without rewriting the structure.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;"Promise deadlines the human did not set" is a real failure mode for email drafts: an assistant that helpfully writes "I'll have this to you by Friday" has just made a commitment on your behalf.&lt;/p&gt;

&lt;h2&gt;
  
  
  The six seats
&lt;/h2&gt;

&lt;p&gt;The six seats I use are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Chief&lt;/strong&gt;: routes work to the other seats and never executes outside the chat.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inbox&lt;/strong&gt;: triages inbound messages and drafts replies.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Research&lt;/strong&gt;: collects public facts and cites sources.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Builder&lt;/strong&gt;: produces files or scripts on request.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Money&lt;/strong&gt;: works on offers, KPIs and pricing maps.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tuner&lt;/strong&gt;: reviews each week what to cut and what to keep.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You don't need exactly these. The point is that each seat has one job.&lt;/p&gt;

&lt;h2&gt;
  
  
  The org chart
&lt;/h2&gt;

&lt;p&gt;Everything runs through you:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;You (human gate)
  └── Chief (routes, never executes outside chat)
        ├── Inbox
        ├── Research
        ├── Builder
        ├── Money
        └── Tuner
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The human gate sits at the top on purpose. Chief decides who should do a task, but it doesn't have authority beyond the chat.&lt;/p&gt;

&lt;h2&gt;
  
  
  A handoff format
&lt;/h2&gt;

&lt;p&gt;When Chief passes work to another seat, it uses a fixed block so nothing is implied:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;HANDOFF
To: &amp;lt;seat&amp;gt;
Goal: &amp;lt;one sentence&amp;gt;
Constraints: &amp;lt;never-list items that apply&amp;gt;
Done when: &amp;lt;observable result&amp;gt;
Do not: send / pay / publish / create accounts
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The last line is the important one. Every handoff repeats the limits, so the receiving seat doesn't have to guess.&lt;/p&gt;

&lt;h2&gt;
  
  
  The hard rules
&lt;/h2&gt;

&lt;p&gt;I give every seat the same short list of rules:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Nothing leaves the chat (email, Slack, social, payment) without a human yes that names the object. "Sure, go ahead" is not enough. The yes has to say &lt;em&gt;which&lt;/em&gt; email, &lt;em&gt;which&lt;/em&gt; post, &lt;em&gt;which&lt;/em&gt; payment.&lt;/li&gt;
&lt;li&gt;Prefer reading and drafting over acting.&lt;/li&gt;
&lt;li&gt;If a source is missing, say so and stop. Don't invent metrics.&lt;/li&gt;
&lt;li&gt;One active product or campaign at a time unless Chief says otherwise.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The rule I like most is the third. It is easy for an assistant to fill a gap with a plausible number. Telling it to stop when the source is missing makes the gap visible, which is what you want.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it in an afternoon
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Create six agents (or reuse empty ones) and name them after the seats.&lt;/li&gt;
&lt;li&gt;Paste each seat's text into that agent's description or profile field.&lt;/li&gt;
&lt;li&gt;Talk to Chief first and ask it to run an onboarding checklist, with an explicit "do not contact anyone."&lt;/li&gt;
&lt;li&gt;Approve &lt;strong&gt;one&lt;/strong&gt; job. Let the owner seat deliver inside the chat.&lt;/li&gt;
&lt;li&gt;Note what was slow or unclear, and fix the seat text. That is Tuner's job later, but you can do it by hand at first.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I'd start with just Inbox and Chief. If those two feel useful, add the others one at a time.&lt;/p&gt;

&lt;p&gt;It's not a hosted team: you create the agents and stay the decision-maker. The never-list matters most, so write it after you've seen the assistant behave badly once.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I sell a template pack, link below:&lt;/em&gt; &lt;a href="https://mikaelkolam.gumroad.com/l/wiuan" rel="noopener noreferrer"&gt;Grok Bot Ops Pack&lt;/a&gt; is a $19 download with all six seats written out and ready to paste, the playbook, the handoff protocol, a worked 90-minute first run, and blank weekly tables. It's independent material and not affiliated with xAI or Grok.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>freelance</category>
      <category>career</category>
    </item>
    <item>
      <title>A 5-minute pre-send checklist for cold emails (and a follow-up cadence that doesn't annoy people)</title>
      <dc:creator>Mikael Kolam</dc:creator>
      <pubDate>Fri, 09 Oct 2026 06:08:22 +0000</pubDate>
      <link>https://dev.to/mikaelkolam/a-5-minute-pre-send-checklist-for-cold-emails-and-a-follow-up-cadence-that-doesnt-annoy-people-53fo</link>
      <guid>https://dev.to/mikaelkolam/a-5-minute-pre-send-checklist-for-cold-emails-and-a-follow-up-cadence-that-doesnt-annoy-people-53fo</guid>
      <description>&lt;p&gt;&lt;em&gt;Disclosure: I sell a template pack, link below. Everything in this article is free to use without it.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Most cold emails fail before the recipient reads a word. They fail at the moment you hit send without checking whether you should be sending at all.&lt;/p&gt;

&lt;p&gt;I keep a short checklist for this. It takes five minutes, and it removes most of the mistakes that make cold email feel spammy. Below is the checklist, the follow-up cadence I use with it, and a couple of templates you can adapt.&lt;/p&gt;

&lt;h2&gt;
  
  
  The principle: one tailored email beats ten generic blasts
&lt;/h2&gt;

&lt;p&gt;If you are a freelancer or a solo operator, you don't have a list of thousands. You have a handful of people who might plausibly need what you do. That is an advantage. You can afford to spend five minutes on each one, and the result reads like it came from a person, because it did.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 5-minute check
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Minute 1: confirm the fit
&lt;/h3&gt;

&lt;p&gt;Ask two questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Do they clearly need what I sell?&lt;/li&gt;
&lt;li&gt;Is there a public signal? A hiring post, a product launch, a broken page, a gap in their content, a funding announcement.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you are unsure, don't email. This is the cheapest rule on the list and the one that saves you the most embarrassment. A cold email with no reason behind it is just noise.&lt;/p&gt;

&lt;h3&gt;
  
  
  Minute 2: find one specific hook
&lt;/h3&gt;

&lt;p&gt;Look at their website, LinkedIn, X, Product Hunt, a recent blog post, or their About page. Then write one sentence that starts with:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I noticed ___.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It has to be true for them and only them. "I love your content" with no detail doesn't count. "You're hiring for a content lead and your blog hasn't been updated since spring" does.&lt;/p&gt;

&lt;p&gt;If you can't find a hook in about three minutes, pick a different lead. That's a signal, not a failure.&lt;/p&gt;

&lt;h3&gt;
  
  
  Minute 3: swap the brackets and read it out loud
&lt;/h3&gt;

&lt;p&gt;If you use a template (and there's nothing wrong with that), replace every &lt;code&gt;[BRACKET]&lt;/code&gt; with something specific to them and to you. Then read the email out loud. If a sentence still sounds like a template, rewrite that sentence. Your ear catches things your eyes skip.&lt;/p&gt;

&lt;h3&gt;
  
  
  Minute 4: make one clear ask
&lt;/h3&gt;

&lt;p&gt;End with a single, easy next step:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Want the outline?"&lt;/li&gt;
&lt;li&gt;"Reply yes and I'll send it."&lt;/li&gt;
&lt;li&gt;"A or B?"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Avoid asking for a call to "explore synergies." A small, concrete ask is easier to say yes to than a vague meeting. If you are offering something, make it something you can deliver in one reply, and deliver it quickly.&lt;/p&gt;

&lt;h3&gt;
  
  
  Minute 5: add one proof line, then check and send
&lt;/h3&gt;

&lt;p&gt;Add one line of proof: a type of client you have worked with, a named project, or a link to your portfolio. Only use real ones. If you don't have a result to cite, link to your work instead and skip the claim.&lt;/p&gt;

&lt;p&gt;Then check the boring things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Is the first name spelled correctly?&lt;/li&gt;
&lt;li&gt;Is the company name right?&lt;/li&gt;
&lt;li&gt;Are there any leftover brackets?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Send from a real mailbox, log the email somewhere, and schedule your follow-up for day 5 to 7.&lt;/p&gt;

&lt;h2&gt;
  
  
  A cadence that doesn't annoy people
&lt;/h2&gt;

&lt;p&gt;The follow-up is where most people either give up too early or turn into a nuisance. I use three emails, with a clear stopping point.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Day&lt;/th&gt;
&lt;th&gt;What you send&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;First email: a specific observation, a small offer, one ask&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5 to 7&lt;/td&gt;
&lt;td&gt;Follow-up with something new&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12 to 14&lt;/td&gt;
&lt;td&gt;A polite note giving them an easy way to say no&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The third email can be as simple as: "Want me to send a tighter version, or close this out so I don't bother you again?" Binary choices are easy to answer. After that, you stop. Three emails in a thread is the maximum unless they reply. Respect a "no" or silence after the close-out. If it still makes sense months later, you can send one re-engagement email, but only if you have something new to say, such as a new piece of work or a faster way of delivering.&lt;/p&gt;

&lt;p&gt;The most important rule for the second email: &lt;strong&gt;add new value.&lt;/strong&gt; "Just checking in" gives the reader nothing and asks them to do work. A one-line idea, a small observation about their page, or a short sketch of what you would change gives them a reason to read it.&lt;/p&gt;

&lt;h2&gt;
  
  
  A template you can adapt
&lt;/h2&gt;

&lt;h3&gt;
  
  
  First email
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Subject:&lt;/strong&gt; Quick idea for [Company / project]&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Hi [First name],

I noticed [specific observation].

I help [type of client] get [specific outcome], usually by
[one-sentence method].

Would it be useful if I sent over a short outline of how that could
look for [Company]? No pitch call required, just a few notes you can
use or ignore.

Best,
[Your name]
[One-line credential or link]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Only add a named example if you really have one. An honest short email beats one with an invented result.&lt;/p&gt;

&lt;h2&gt;
  
  
  Keep the log
&lt;/h2&gt;

&lt;p&gt;The checklist only works if you track what you sent. Write down who, when, which email, and when the next follow-up is due. A simple spreadsheet is enough. Without a log, follow-ups slip, and the cadence falls apart.&lt;/p&gt;

&lt;h2&gt;
  
  
  Wrapping up
&lt;/h2&gt;

&lt;p&gt;The checklist is five steps: fit, hook, brackets, one ask, proof and send. The cadence is three emails and then stop. None of it is clever. It just keeps you from sending email you wouldn't want to receive yourself.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I sell a template pack, link below:&lt;/em&gt; &lt;a href="https://mikaelkolam.gumroad.com/l/sgpnam" rel="noopener noreferrer"&gt;Cold Email Templates&lt;/a&gt; is a $12 pack of 12 copy-paste templates across six situations (first outreach, follow-up, value-first, referral asks, re-engagement and partnerships), with subject line patterns and this same checklist. The checklist and template above are all you need to get started without it.&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>freelance</category>
      <category>career</category>
      <category>writing</category>
    </item>
  </channel>
</rss>
