Claude Cowork Automation: From Manual Process to Working System
The way I build any automation is the same three steps: run the process manually until it produces the result I want, have Claude turn that session into a system prompt, and only then push toward full automation. Skipping the manual stage is how you end up automating a process that never worked. Here is the whole arc on a real example: a lead-generation system for captioning and dubbing services.
Step 1: run it manually and validate the logic
The raw material is a small custom MCP with two tools: search YouTube videos by keyword, and fetch a video's details, including its caption tracks. The caption tracks are the lead signal. A channel with manual subtitles in several languages already pays attention to localization; a channel with only auto-generated captions is a prospect for exactly that service. Channel size matters too: a big channel with no subtitles might be worth flagging even without the signal, and you could enrich further with company research.
So the manual session is: search "AI," pull details for the top videos, read the caption tracks, and compile a scoring report. At the end I have a working process and, crucially, I know why each scoring rule exists, because I just applied them by hand.
Step 2: have Claude write the system prompt from the session
Then the sentence that converts work into automation: "give me a system prompt that does what we just did." All the context is in the conversation, so the generated prompt encodes the process you actually ran.
One design question matters here: what is dynamic and what is static? The scoring logic is static; it belongs in the prompt. The search keyword is dynamic; the prompt should ask for it at the start of each run. Cowork has a built-in question UI for exactly this, which is nicer UX than free-text, so the prompt says to use it.
Step 3: semi-automated in Cowork
Paste the prompt into Cowork, hand it a keyword, and walk away. That is the point of semi-automation: a long-running, multi-step process that keeps itself accountable against its own to-do list, sends a notification when done, and leaves the report waiting while you do other work. Ten keywords, ten parallel runs.
The first run also demonstrated why the iteration loop matters: I gave it "AI" and it searched "AI documentary," because my manual session had used a documentary example and it over-generalized. The fix is the same loop as always: take the failure back to the prompt-writing chat as feedback, and the prompt gets rewritten. Same for scoring refinements, like deprioritizing huge companies that will never answer a cold email, or asking for your ideal customer profile up front and scoring against it.
Step 4: full automation, when it earns it
Once the semi-automated version runs reliably, the same prompt and the same MCP servers can move to the backend: the Claude Agent SDK with an entry point that supplies the keyword, a cron job, a small web UI, even a cron job that invents its own keywords. Two honest caveats: the SDK route is expensive to run, and every step toward full automation trades away flexibility. How far you go depends on how much control you want to keep versus how much you want gone from your plate.
The pattern generalizes past lead gen: the same manual-first loop is how one-off tasks become skills, and once a prompt is stable, a scheduled task runs it on a timer without you.
Related
Want this kind of thinking applied to your business?
Book a Free Value Layer Audit