Blog |

What Happens When a PM Runs a Coding Agent (almost) Full-Time

8 min read |

A common piece of onboarding advice is to spend your first 90 days listening. Meet people. Absorb context. Build a map of how the organization works before you try to change anything.

I did all of that. But I also ran Claude Code in a terminal for most of my waking hours.

I’m a product manager. I’m also a former CEO and data engineer who spent years building developer tools and data infrastructure. When I joined Astronomer to lead our Applied AI products, I set a principle for myself: I would onboard as an “agent-native” PM. Every workflow I built would be designed from the start so that Claude Code could accelerate it. And anywhere the agent couldn’t reach would tell me something important about how our organization works.

Four weeks in, here’s what happened.

The System

It’s a git repo full of markdown files. A people/ directory with a file for every person I’ve talked to, organized by team. A customers/ directory with profiles for each customer conversation. A daily/ directory with logs tracking what I did each day. A work/ directory with living documents for every project and strategic thread I’m tracking.

I run Granola in every meeting, which records and transcribes conversations locally. The default MCP integration (which actually wasn’t available when I started at Astronomer) only returned AI summaries, and I wanted the raw transcript, so I had Claude Code build a custom skill that fetches the full text from Granola’s local cache. After each meeting, Claude fetches the transcript along with the relevant person file and whatever context exists. It extracts key insights, updates the person’s file, flags follow-ups for my to-do list, and adds a summary to my daily log.

Every conversation becomes structured, searchable knowledge. And every piece of it lives in a format Claude Code can read and act on tomorrow.

Retrieval as a Feature

In the early weeks, I could fit most of my repo in Claude Code’s context window. Grep worked fine. But the files kept growing, and by week three I had enough accumulated context that brute-force search wasn’t cutting it.

To solve this, I added QMD, a local semantic search engine built by Tobi Lutke. It indexes the repo and lets me run efficient searches across all my notes. Now when I’m preparing for a customer call, I search “what have we discussed about AI agent adoption challenges?” and get relevant hits from engineering 1:1s, previous customer conversations, and strategy docs. When I’m writing a product brief, I can pull patterns across weeks of context that I’d otherwise have to hold in my head.

The Personal CRM

One of the first things I had Claude build was an interactive org chart. I hated the one in Workday. It was slow and you could only see parts of the chart at one time. And it wasn’t available via the command line.

The first version was basic: parse an Excel export from Workday, render a tree, let me search by name. But as I started using it, I kept wanting more. I had Claude add relationship tracking so I could see who I’d met and who was still on the list. Then we added filters for location and meeting context. Eventually I had Claude wire in DuckDB via WebAssembly so I could run SQL directly in the browser: SELECT name, title FROM people WHERE title LIKE '%Engineer%'. Each iteration took a conversation or two with Claude Code. The whole thing is a single HTML file.

I also track relationship status for everyone I’m working to connect with: met, scheduled, to-schedule. Color-coded in the tree. This turned onboarding from “I should meet people” into a visible, trackable campaign. At 300+ employees, knowing you’ve met roughly 10% of the org and seeing exactly who you still need to reach changes how you prioritize your calendar.

What I Shipped

Across 19 working days (including a stretch where schools were closed due to a snowstorm and we had some sick kids at home), I had an average of one customer conversation per day. Most were discovery calls I ran directly. Each time, I added structured notes to the customer file so the next conversation could build on the last.

I helped ship astronomer/agents, an open-source repository of AI agent skills and MCPs for data engineering work. It includes an Airflow MCP server and skills for your favorite coding tools that help data practitioners work faster with their existing stack. Along with the repo I shipped our internal messaging and strategy docs to better help the organization understand how we think about this OSS contribution. (Huge shoutout to my colleagues in Product and Product Marketing for their support.)

I also submitted and merged a PR to our Astro CLI, adding a new flag for better Airflow 3 Dag bundle compatibility. This came directly from a customer request. Our great support team flagged it as something that hadn’t received any attention. I threw Claude Code at it and, after a review from an engineer, got the fix merged.

I think this is a decent amount of output for four weeks. But I want more. I want to move faster. In a world without a coding agent, this would be an amazing first month. But the world with AI agents is rushing at us, and I don’t think “strong first month” is the bar anymore. My title is PM, but I’m doing whatever it takes to move the needle forward. I’m always a little paranoid that it’s not enough.

Where I Am on the Continuum

AI adoption isn’t binary. It’s a continuum from “I use ChatGPT sometimes” to “I spend too much on tokens running OpenClaw and Gas Town.” Steve Yegge says there are 8 levels to AI adoption. I’m trying to push myself as far toward level 8 as I can.

Being agent-native means designing your entire workflow so that every artifact you produce is stored in a format an agent can read, search, and act on. Markdown in a git repo, not rich text in a locked-down SaaS tool. Local files, not cloud-only platforms.

It also means paying attention to the walls. Where can’t the agent go? It can’t attend a meeting for me (yet). It can’t read the room when a customer is frustrated but not saying it directly. It can’t build relationships over coffee. Those boundaries tell you where human judgment still has the highest leverage, and that’s exactly where you should focus your time.

The work agents handle for me isn’t unimportant. Organizing notes, structuring information, preparing context, tracking follow-ups: this is critical work that used to eat hours of my day. It’s because it matters that I want it done consistently and thoroughly, and Claude Code does both better than I would manually. That frees me to spend my time on the things only a human can do.

What I’d Change

I have 73 markdown files after four weeks, and some of them are more comprehensive than they need to be. Not every meeting note needs to be a detailed document. I’m still calibrating how much structure is useful versus how much is overhead.

The bigger problem is that this system is built for an audience of one. There are artifacts in here that my colleagues would benefit from: the org chart, the customer profiles, the project context docs. Right now it’s siloed in my local repo. The next iteration needs to be collaborative. I need to figure out how to open parts of this up so the team can contribute to and benefit from the same knowledge base, while keeping the speed and simplicity that makes it work.

But the repo is four weeks old, and I already feel like I have six months of institutional knowledge at my fingertips. When someone mentions a project in a meeting, I can search for it and have context in seconds. When I’m preparing for a customer call, the agent can synthesize everything we’ve ever discussed.

Every meeting generates structured data that makes the next meeting better. The system compounds. This idea, borrowed from the agent-native and compounding engineering thinking at Every, is the core insight. Small investments in agent-accessible structure pay off exponentially.

Go Play

The tools here are not special. You can set all of this up in an afternoon. The real blocker is whether or not you’re willing to experiment.

So start small. Install Claude Code. Create a markdown file after your next meeting and ask Claude to structure it. See what happens. Then iterate. Add a directory. Add a search tool. Add a skill. Each layer compounds on the last.

The best version of this system is one I haven’t built yet. That’s the fun part.

Get started free.

OR

API Access
Alerting
SAML-Based SSO
Airflow AI Assistant
Deployment Rollbacks
Audit Logging

By proceeding you agree to our Privacy Policy, our Website Terms and to receive emails from Astronomer.