Sample runbook. This person and their routines are invented.

Maverick7.8/10
Useful
7.5
Creative
8
Replicable
9

Thirteen thesis-specific routines with counted figures and careful human-in-the-loop build steps; scheduling and lands-on fields are the main gaps.

Wen Zhao

Wen's Runbook

4th-year PhD, yeast autophagy, the Hartman Lab. The experiments are mine; the paperwork belongs to the scripts.

Updated 2026-10-10 · figures cover 30 days

Then tell your agent which numbers to build.

Daily2

1Watch preprints for my genes and my nightmare

a Python script plus a Claude call · 7am

New preprints matching my gene list and methods get a two-line summary and a scoop score: does this touch chapter 2, chapter 3, or just my feelings. Anything scoring high gets a drafted note to my PI with the figure that worries me attached; I send it after I've read the actual paper, not the abstract.

214 preprints screened, 9 summarised, 1 scoop scare (false alarm -- different stress condition)

Example · inventedInvented alert: '[A fictional lab] reports Atg-adjacent flux changes under nitrogen starvation. Overlap with ch.2: methods yes, conditions no. Scoop score 2/5. Breathe.'
How to build it
Needs
- A preprint source with a search feed or API, plus a way to run a script daily at 7am and call a Claude model.
- Ask your person for: their gene list, key methods, a one-line summary of chapters 2 and 3, and the PI's contact route for drafts.

Build
1. Schedule a script for 7am daily. Pull the last 24 hours of preprints and keep those matching any listed gene or method.
2. For each match, ask the model: "Write a two-line summary, then score 1 to 5 how much this overlaps chapter 2, chapter 3, or neither. Say whether methods and conditions match separately. Do not guess beyond the abstract."
3. Write summaries to a daily list. For scores of 4 or above, draft a short note to the PI naming the worrying figure.
4. Never send the note. Hold it as a draft until your person confirms they have read the full paper.

Check
- First run should list screened count, summaries, and scores. Test with a known paper on a nearby topic and confirm it scores low when conditions differ.

2Grab microscope slots the moment they open

a Python script watching the booking system · every 10 min

Cancellations on the confocal get flagged to my phone within minutes, with my protocol's time requirement already checked against the slot. I've stopped haunting the booking page like a Victorian ghost.

11 cancellations caught, 6 slots claimed, 4 usable with my prep schedule

Example · inventedInvented ping: 'Confocal 2 freed Thu 14:00-17:00. Your timelapse needs 2.5h + 20min setup. Fits. Claim link below; [labmate initials] is also watching this one.'
How to build it
Needs
- A booking system for the microscope that can be polled or exported, and a phone notification route.
- Ask your person for: the protocol's imaging time and setup time, their usable days and hours, and the booking system login method.

Build
1. Schedule a script every 10 minutes to read the instrument's bookings and compare with the previous snapshot to spot cancellations.
2. For each new free slot, compute whether it covers imaging time plus setup (default 20 minutes) and fits the person's calendar and prep schedule.
3. Send a phone alert for slots that fit, showing the slot, the time needed, and a claim link. Label slots that do not fit as skipped and keep them in a log.
4. Do not claim a slot automatically. The person taps to claim.

Check
- Cancel a test booking and confirm an alert arrives within 10 minutes. Test a slot that is too short and confirm it is not alerted.

Weekly4

3Compile the week's experiment logs into stats and plots

a Python pipeline I wrote in year 2, patched ever since · Friday 4pm

The week's bench logs and plate-reader exports get compiled into per-experiment summaries with the stats run the same way every time, and draft figure panels in the lab's style. Friday-me generates it so Monday-me starts from plots instead of from CSVs and despair.

14 experiments compiled, 38 panels drafted, 2 flagged as underpowered before I wasted a week extending them

Example · inventedInvented flag: 'Replicate 3 of the starvation series differs from 1-2 beyond threshold. Incubator B logged a door-open event Tuesday 02:14. Suspect that before suspecting biology.'
How to build it
Needs
- Bench logs and plate-reader exports in a consistent folder, a Python environment with stats and plotting libraries, and a scheduler.
- Ask your person for: their statistical tests per experiment type, the lab's figure style (fonts, colours, sizes), a minimum replicate count, and any equipment logs such as incubator events.

Build
1. Schedule the pipeline for Friday 4pm. Parse the week's logs and exports into one table per experiment.
2. Run the same tests every time. Flag any experiment below the minimum replicate count or power threshold (default: n under 3, or effect size too small for the observed variance) as underpowered.
3. Flag any replicate differing from the others beyond a set threshold (default: 2 standard deviations) and check equipment logs for events near that run.
4. Draft figure panels in the lab style into a weekly folder.

Check
- First output: one summary per experiment plus panels. Test with a deliberately odd replicate and confirm it is flagged with any matching equipment event.

4Keep reagents ordered before they run out

the lab's inventory sheet plus a script and the lab Slack bot · Wednesdays

Inventory levels against my next three weeks of planned experiments; anything short gets an order drafted in the lab's purchasing format for the PI to approve in Slack with one emoji. The era of discovering we're out of antibody on a Saturday is, officially, over.

7 shortages flagged, 6 orders approved, 1 borrowed from the floor below (logged, I'm not a monster)

Example · inventedInvented draft: 'GFP antibody: 2 aliquots left, ch.3 imaging block needs 5. Order drafted at the usual supplier, grant code pre-filled. PI: thumbs-up to send.'
How to build it
Needs
- A lab inventory sheet with item, quantity and usage rates, a team chat workspace with a bot, and a script runner.
- Ask your person for: their planned experiments for the next three weeks with reagents each needs, the lab's purchasing format, the preferred supplier, and the grant code.

Build
1. Schedule a script for Wednesdays. Read current stock from the sheet.
2. Sum reagent needs across planned experiments over three weeks and compare to stock. List anything short.
3. For each shortage, draft an order in the lab's purchasing format with quantity, supplier and grant code pre-filled.
4. Post each draft to the lab channel through the bot for the PI to approve with an emoji. Place no order until the PI approves.
5. Log any item borrowed from another lab in the sheet.

Check
- First run should list shortages with quantities needed and held. Test by lowering one item's stock and confirm a draft appears and nothing is sent.

5Skeleton my lab-meeting slides

a Python script plus a Claude call · Sunday evenings, presenting weeks only

The week's compiled figures get arranged into the lab's slide template with my running narrative doc as the spine, leaving holes where interpretation goes. The machine does the chronology; I do the claims, because the claims are the degree.

2 skeletons built for 2 presentations, ~40 min of formatting each that I no longer do

Example · inventedInvented slide note: 'Slide 6 hole: replicate-3 anomaly. Options you noted Thursday: exclude with the incubator evidence, or present and let [PI] enjoy himself.'
How to build it
Needs
- A slide template file, a running narrative document, the week's compiled figures, a scheduler, and a Claude model.
- Ask your person for: which weeks they present and the order of sections in their talks.

Build
1. Schedule a script for Sunday evening, only on presenting weeks (read a list of dates, or ask your person to set a flag).
2. Place the week's compiled figures into the template in chronological order, using the narrative document as the spine for titles and notes.
3. Where interpretation belongs, leave an empty slide area labelled as a hole. Ask the model: "List the options my person noted in the narrative doc for this hole. Do not write the claim."
4. Save the deck to the person's folder. Do not share it.

Check
- The skeleton should hold figures, titles, and labelled holes with noted options. Test that no interpretive text has been written into any hole.

6Weekly literature digest beyond the scoop radar

a Zotero workflow plus a Claude call · Saturday mornings

The broader autophagy and stress-signalling literature, five papers max, chosen for what cites or contradicts my chapters, filed into Zotero with my tagging scheme. The contradictions folder is the one my thesis defense lives or dies on, so it gets read first.

20 papers digested, 5 filed to contradictions, 2 cited in ch.2 draft

Example · inventedInvented digest line: 'Contradicts ch.2 fig 4 interpretation: [fictional authors] show the flux marker saturates under your exact timepoints. Read before the committee does.'
How to build it
Needs
- A reference manager with an API or import route, a Claude model, and a Saturday morning schedule.
- Ask your person for: their chapter outlines, their tagging scheme, and the key claims in each chapter.

Build
1. Schedule the workflow for Saturday morning. Search recent autophagy and stress-signalling literature.
2. Ask the model: "From these candidates, pick at most five that cite or contradict the claims in these chapters. For each, say which claim and whether it supports or contradicts, in one sentence."
3. File chosen papers in the reference manager with the person's tags. Put contradicting papers in a contradictions folder.
4. Produce a digest listing contradictions first.

Check
- First digest should hold five papers or fewer, each tied to a named claim. Test by including a known contradicting paper and confirm it lands in the contradictions folder.

Monthly3

7Draft the monthly progress note to my committee

a Claude project · last Friday

The month's compiled experiments, the literature deltas, and my narrative doc get drafted into the one-page format my committee chair demands. It leans optimistic by default, so my job is deleting adjectives until it's true.

1 note drafted, 1 sent, adjectives deleted: not counted but substantial

Example · inventedInvented excerpt: 'Ch.3 imaging block 60% complete (12 of 20 conditions). Replicate-3 anomaly traced to equipment, excluded with logged justification. On track for March committee meeting, pending confocal access.'
How to build it
Needs
- A Claude project with the month's compiled experiments, literature digests, and the narrative document, plus the committee's one-page format.
- Ask your person for: the format template, the committee chair's preferences, and any milestones or dates.

Build
1. Schedule a reminder for the last Friday of each month to run the project.
2. Feed in the month's summaries, literature changes, and narrative document.
3. Instruct the model: "Draft the one-page note in the committee's format. State progress as counts (for example conditions completed of total). Use no adjectives of success. Mark any anomaly with its documented cause and decision. Flag claims you cannot support from the inputs."
4. Save as a draft. The person edits and sends it. Nothing goes to the committee without them.

Check
- The draft should fit one page and give progress as numbers. Test by scanning for adjectives and unsupported claims.

8Audit my protocols for drift

a Python script over my bench logs · first Sunday

Every deviation noted in my logs -- timing, concentrations, 'had to substitute' -- gets collected per protocol, so drift becomes a documented decision instead of an accumulation. Two of my cleanest results turned out to sit on an undocumented timing change; never again.

31 deviations collected across 6 protocols, 1 protocol formally revised

Example · inventedInvented audit line: 'Starvation protocol: wash step logged at 4-7 min across 14 runs (spec says 5). Variance correlates with nothing so far. Standardise anyway and note it.'
How to build it
Needs
- Bench logs where deviations are noted consistently, a Python environment, and a scheduler.
- Ask your person for: the protocol names with their specified values, and the words or markers they use to note deviations.

Build
1. Schedule a script for the first Sunday of each month.
2. Scan logs for deviation notes covering timing, concentration, and substitutions. Group them per protocol.
3. For each protocol, compare logged values with the specification. Report range, count, and any correlation with outcome measures if available.
4. Where a deviation recurs (default: three or more runs), propose a decision: standardise, revise the protocol, or keep as is. Record the decision in a protocol change log.

Check
- First report should list deviations per protocol with counts. Test by planting a log entry with a changed timing and confirm it appears under the right protocol.

9Filter fellowship and grant deadlines to the ones I can actually win

a Claude project · mid-month

The funding newsletters get filtered against my year, citizenship, and field; eligible ones arrive with the deadline, the effort estimate, and last year's award rate. Three real options a month beats forty tabs of maybe.

43 calls screened, 3 eligible, 1 application started

Example · inventedInvented line: '[A fictional travel fellowship]: eligible, due Nov 14, ~6 hours of work, funds the spring conference. Prior-year award rate ~30%. Do this one.'
How to build it
Needs
- A Claude project with access to funding newsletters or alerts, and a monthly schedule.
- Ask your person for: their year of study, citizenship, field, and any eligibility limits, plus past award rate sources if they have them.

Build
1. Schedule a mid-month run. Collect funding calls from the newsletters.
2. Instruct the model: "Keep only calls whose eligibility rules match this person's year, citizenship and field. For each, give the deadline, an effort estimate in hours, and last year's award rate if published. Say unknown if it is not published."
3. Output a short list of eligible calls, normally under five, with reasons for exclusions in a separate log.
4. Do not start any application without the person's say.

Check
- First output should show eligible calls with deadline, effort and award rate. Test with a call the person is clearly ineligible for and confirm it is excluded.

On demand4

10Draft figure legends that pass the lab's style

a Claude project · on demand

A figure plus my scrawled intent goes in; a legend in the lab's house style comes out, with the stats sentence formatted the way the journal wants. My PI has stopped returning legends covered in red, which I choose to interpret as affection.

run 16 times for the ch.2 manuscript

Example · inventedInvented legend fragment: '(D) Quantification of puncta per cell, n=3 biological replicates, >=50 cells each; bars, mean +/- SD; two-tailed t-test.'
How to build it
Needs
- A Claude project with a few approved example legends from the lab, the lab's style rules, and the target journal's stats formatting rules.
- Ask your person for: the figure, a short note of what it shows, and sample size details.

Build
1. Load the example legends and style rules into the project as reference.
2. When a figure and note are supplied, instruct the model: "Write a legend in this lab's house style. State panels, sample sizes, error bars and the statistical test in the journal's format. Use only facts in the note and ask if something is missing."
3. Return the legend with a list of any gaps to fill.
4. The person checks every number before it goes to the PI.

Check
- The legend should match the examples in structure and include a stats sentence. Test by omitting the sample size and confirm the model asks for it rather than inventing one.

11De-escalate my reviewer responses

a Claude project · on demand

My first-draft responses to Reviewer 2 are legally actionable; the pass rewrites them into 'we thank the reviewer' while keeping every substantive point and flagging where I've conceded something I shouldn't. The science stays mine, the diplomacy is outsourced.

run 9 times across one revision cycle, 2 over-concessions caught

Example · inventedInvented catch: 'Your draft agrees to add a whole mouse cohort. The reviewer asked why yeast is sufficient. Defend the model -- point 3 already contains the argument.'
How to build it
Needs
- A Claude project and the reviewer's comments paired with the person's first-draft responses.
- Ask your person for: the manuscript's key claims and any points they have decided not to concede.

Build
1. Paste each comment with the draft response into the project.
2. Instruct the model: "Rewrite the response in a courteous, professional tone. Keep every substantive point. Then list any place the draft agrees to new work, experiments or changes that the reviewer did not clearly require, and say what the reviewer actually asked."
3. Return the rewrite and the list of possible over-concessions separately.
4. The person decides on every concession and sends nothing without reading the final text.

Check
- The output should have a rewritten response plus a concessions list. Test with a draft that promises extra experiments and confirm it is flagged.

12Handle the TA admin for my teaching section

a spreadsheet script plus a Claude call · on demand

Lab-report rubric scores get compiled, borderline cases flagged for my actual judgment, and the no-personal-data feedback summaries drafted per common mistake rather than per student. Grading is mine; collating was never worth my stipend.

run 2 times: 58 reports compiled, 7 borderlines flagged to me

Example · inventedInvented summary: 'Common mistake 1 (23 of 58): calibration curve forced through zero. One paragraph of feedback drafted, posted to the whole section.'
How to build it
Needs
- A spreadsheet of rubric scores per report, a script runner, and a Claude model.
- Ask your person for: the rubric, the borderline score band, and the course's feedback format.

Build
1. Run on demand after grading. Compile scores per student into one sheet and compute totals.
2. Flag reports within the borderline band (default: within 2 points of a grade boundary) for the person's own judgement.
3. Count how many reports share each common mistake from the rubric comments, using anonymous IDs only.
4. Ask the model: "Write one paragraph of feedback per common mistake, with no student names or identifying details."
5. The person reviews the feedback before posting it to the section.

Check
- Output should include compiled scores, a borderline list, and feedback per mistake with counts. Test that no student name appears in the drafts.

13Match climbing sessions to my gel schedule

a shared calendar plus a tiny script · on demand

My climbing partner's availability against my incubation windows, because a 90-minute incubation is a bouldering session wearing a lab coat. The script knows which protocols can't be left; my partner knows not to ask.

9 sessions matched this window, 0 abandoned timepoints

Example · inventedInvented match: 'Tuesday: your 2h incubation starts 15:30, [partner] can climb 15:45-17:15, wall is 8 min away. Timer set, buffer included.'
How to build it
Needs
- A shared calendar with the person's and their partner's availability, and a small script or calendar automation.
- Ask your person for: which protocols cannot be left unattended, the travel time to the wall, and a buffer (default 10 minutes).

Build
1. On request, read the person's incubation windows and the partner's free times.
2. Mark protocol steps that need attention. Only offer windows where no such step falls inside the session, with travel time and buffer added both ways.
3. Propose matching sessions with start, end, and a timer for the return.
4. Do not create or send any invitation to the partner without the person's approval.

Check
- Output should list sessions that fit with the buffer. Test with an incubation that has a timed step in the middle and confirm that window is rejected.

Tools

Reads from

  • Preprint serversscoop radar, literature
  • Bench logs + plate reader exportscompiling, drift audit
  • Lab inventory sheetreagent levels
  • Zoterothe library and the tagging scheme

Writes to

  • Lab Slackorder drafts for PI approval, scope alerts
  • My narrative docthe thesis's spine
  • Zoterodigests, the contradictions folder

Assessment

Thirteen thesis-specific routines with counted figures and careful human-in-the-loop build steps; scheduling and lands-on fields are the main gaps.

Useful7.5

Seven routines run on a schedule, most with counts, but destinations are often unstated

Routines 1, 2, 3, 4 and 8 run unprompted and report counted outcomes (Routine 2: 11 cancellations caught, 4 usable). Routine 4 closes a loop through a PI emoji approval. Routines 10 to 13 wait for a prompt, and the lands field is empty throughout.

Creative8

Scoop scoring, protocol drift and over-concession checks are built around one PhD

Routine 1 scores overlap against specific chapters, Routine 8 audits undocumented timing changes, and Routine 11 flags over-concessions to reviewers. Routine 13 matches climbing to incubations. Breadth across bench, teaching, funding and life is good; Routines 6 and 12 are more common ideas.

Replicable9

Build steps give thresholds, prompts, drafts-only rules and a test for each routine

Each routine lists what to ask the person, concrete defaults (Routine 3: n under 3 or 2 SD; Routine 8: three or more runs; Routine 2: 20 minute setup) and a check that matches its row. Routine 6 gives no search source or API detail, and Routine 9 leaves the newsletter intake vague.

Standouts

  • 1Scores each new preprint against named chapters and holds the PI note until the full paper is read.
  • 8Turns scattered deviation notes into a documented protocol decision, with a stated recurrence threshold.
  • 11Separates the polite rewrite from a list of concessions the reviewer never asked for, and counted catches back it up.

What to do next

  1. UsefulFill in the lands field for every routine so it is clear which of Slack, phone, Zotero or a folder each output arrives in.
  2. UsefulAdd outcomes to the figures: what happened after the Routine 1 summaries, or how many Routine 3 panels reached a manuscript or talk.
  3. UsefulState how Routines 10 to 13 are triggered, for example a Slack message or a folder drop, so they run less by hand.
  4. ReplicableName the preprint search source and Zotero API route in Routines 1 and 6, so an agent does not have to choose them.
  5. ReplicableFor Routine 9, say how newsletters reach the project (forwarding address or inbox label) and where the award-rate figures come from.
  6. CreativeAdd one or two more routines drawn from your own lab data, similar to Routine 8 or 13, and trim the common digest and admin ones.

Share on LinkedInShare on X

Judged 2026-10-10 · weights Useful 50, Creative 30, Replicable 20