Designing an AI agent process with human approval built in.
Role: Workflow designer and operator · Tools: Claude Code, custom Skills, persistent memory, Playwright browser automation · Period: September 2026
The problem
A job search meant checking 10+ job boards, matching each posting against my experience, meeting overlapping deadlines, and tailoring a CV and cover letter for every application. Done by hand, it was slow and inconsistent. Good roles slipped past their deadlines, and fit judgements depended on how tired I was that day.
What I built
I turned my job search into a repeatable agentic workflow. An AI agent does the searching, screening and drafting, and I stay in control of every decision that matters.
How it works
The loop has eight steps. The agent runs five of them, and three are my decisions (marked my decision).
- Search: the agent scans the 10+ job boards I selected and uses browser automation for sites that need a login.
- Filter: my rules are applied every time: English-language postings, verified location, only roles not already reviewed.
- Score and rank: each role is scored against its core requirements and sorted by fit and deadline into a dated report.
- Pick roles (my decision): I choose which roles to pursue. Nothing moves forward without me.
- Match analysis: a custom skill analyses the job description like a recruiter would, then drafts options for the CV and cover letter through a short interview.
- Approve (my decision): I choose between the options. If none is right, the agent revises and comes back with new ones.
- CV and letter: the agent writes the final CV and cover letter from the approved text, and every draft gets a critique from a senior recruiter’s point of view.
- Submit and track (my decision): I submit the application myself and track it. Lessons from each application go back into memory as new rules.
Key design decisions
- Human approval at every step. The agent never edits my documents directly. It shows the proposed text and writes only after I confirm. I trust the output more, and the responsibility stays with me.
- Memory that keeps what I learn. When the agent misread a LinkedIn job’s location (it picked up the search-box city instead of the job’s), I added a permanent rule to check the raw posting. Every lesson becomes a rule, so the same mistake doesn’t happen twice.
- Checking the AI’s judgement. The first fit scores overrated my depth in certain specialist skills. I re-scored the roles against my actual experience level, which narrowed the shortlist to roles where I am a genuine strong match. The AI’s scoring needed a human check.
- Guardrails for remote roles: EU time zone only, a minimum hourly rate, and a legitimacy check on every posting.
Results
- Sharper targeting through feedback loops. Each round of feedback refined the search rules. I now apply only for roles where my true competencies are a strong match, not roles that only matched on keywords.
- Higher-quality CVs and cover letters. Tailored drafts, a recruiter-style review and my approval at every step produce applications of clearly better quality than my earlier ones.
- 10+ job boards covered in one workflow.
- Deadline-first pipeline, so urgent roles come to the top automatically.
What I learned
- Agents fail in predictable ways: misread data, overconfident scoring, blocked websites. Good workflow design expects this and puts checkpoints in the right places.
- The most valuable part isn’t the automation. It’s writing judgement down as rules the agent can follow every time.
- This is the same skill I used at Nokia when I standardised partner onboarding: turn a messy process into governed, repeatable steps with clear decision points.