How I use AI to help me write
AI is a helpful writing tool for me. Without it, I probably wouldn't have gone through the trouble of setting up a blog.
However, there's a very thin line between delegating tasks that support writing to AI and letting AI think and write for me. Over time, the scope of tasks I give it has narrowed, and the boundaries have gotten stricter.
What I do
Firewall AI and human content
I strictly separate content I write1 from what AI writes. Most agents default to writing content for me, so I have strict instructions in AGENTS.md to not do that:
AGENTS.md## Content Editing Policy
**The writing must come from the author.** AI agents can help with suggestions but should not edit blog post files with content unless explicitly instructed.
When creating new blog posts:
- Create the file with frontmatter (title, date, draft: true)
- Leave the body empty or with minimal placeholders (section headers only)
- Do NOT write any actual content, paragraphs, or prose into the file
When asked for feedback or content suggestions:
- CAN write suggested content, paragraphs, or prose in the chat response
- CAN propose specific edits and revisions
- Do NOT edit the actual blog post file with content unless explicitly told to do so
- The author will review suggestions and incorporate them manuallyI don't have principled moral objections to having AI write content for me. But writing content myself is the best way I have to reason through the topic (which makes the exercise valuable to me, regardless of whether anyone reads it).
I also don't think AI writing is very good. Its editorial stance is generic2, watered down and overly cautious. For example:
Rejected Codex suggestionCreate agent-generated research briefs
When my arguments rely on factual claims, I have the agent prepare a dedicated research brief to answer specific questions.
AGENTS.md- Research briefs should be ONE PAGE.
- Research briefs should be information-dense and scan-friendly: prefer claim/evidence/source bullets over narrative prose.
- Put nuance and extended caveats in source-note files, not in the brief.
- Research briefs should be dry research memos, not post outlines: organize by research topic or by claim being supported/refuted.
- Put links directly under the relevant topic/claim heading instead of collecting advice about how to use the material in the post.
- When sources contain especially useful wording or quotes from individuals, capture short pull quotes in the brief where possible for later reuse.Agents sometimes insist on pulling in copy from my writing and proposing edits. To counter, I also specify a narrow template:
research/TEMPLATE.md# Research Brief: {Post Title or Research Question}
**Scope:** {One sentence on what this brief is trying to verify, explain, or compare.}
**Bottom line:** {1-3 bullets with the highest-confidence takeaway.}
- {Takeaway}
- {Takeaway}
---
## {Claim or Topic}
**Claim / question:** {The specific claim being checked or topic being researched.}
**Finding:** {Short answer. Prefer one sentence.}
**Evidence:**
- {Evidence point with relevant number/date/context.}
**Sources:**
- {URL or local source note link}
**Pull quotes:**
- "{Short useful quote}" ({Source name})
**Caveats / counterpoints:**
- {Nuance, uncertainty, conflicting evidence, or scope limitation.}AI fact check
When I'm done with a post, I ask an AI to run a fact check. Here, AI's editorial cautiousness is useful: I can draft a post with my best impression of the facts, knowing I can clean up misstatements later.
For example, in my post on open source models, I originally had some inaccuracies about encryption litigation. The agent proposed a useful edit:
arguments-against-open-source-ai-are-very-bad.mdChasing down subtle factual mistakes like these is cumbersome and time-consuming. Having AI as a backstop lets me expand the scope of what I can confidently write about.
What I used to do, but don't anymore
Use AI to come up with titles
As an experiment, I built a small tool that generated embeddings for Hacker News posts and compared proposed titles with titles that did well there.
I've stopped doing this, because I've come to view post titles as a core element of writing3, not a quick label slapped on a post. The posts I've struggled to title are also the ones without a clear thesis. If I can't think of a good title, it's a signal that I don't have a well-scoped topic to write about.
Ask for general feedback
I don't get much mileage out of general "is this good?"-style prompts. When I prompt agents this way, they tend to give me critiques sandwiched between compliments. This can be helpful, but it doesn't help me decide whether a post is worth publishing to my taste.
I do still ask AI for counterpoints against my posts, but I keep the questions very specific.
Clean up phrasing or structure
“Rewriting is the essence of writing well: it’s where the game is won or lost.”
— William Zinsser, On Writing Well
It's very tempting to write a draft, ask an agent to clean up awkward phrasing, and hit publish. But AI sentence cleanup is a poor substitute for rereading a draft and doing the editing myself4. A poorly phrased sentence isn't just a mechanical mistake; it's a smell that some portion of an argument needs more thought. Agent phrasing suggestions are also a backdoor for injecting bland AI-isms into my writing.
I used to ask AI to evaluate post structure. But, as with titles, coming up with a writing structure is an integral part of the process, not a mechanical task I can delegate. If I'm struggling to structure a post, the argument I'm making may not be ready to be written yet.
Doing the thinking myself
AI presents tempting shortcuts that require diligence to avoid. The boundary I strive for is to keep for myself the tasks that create opportunities to think through the writing. What's left to AI is mechanical presentation work and fact-based research.
All that said, it's still a helpful tool, and I'm glad I get to use it.