Your lab has years of files scattered across Google Drive, Slack, shared
folders, and email attachments. Protocols in one place, meeting notes in
another, raw data in a third. Files are named things like
'analysis_final_v3_final.csv.' New members spend their first week asking
'where is the protocol for X?' and the answer is always 'ask someone who
has been here longer.'
Everyone knows it is a problem. Nobody has time to fix it because the fix
itself takes days and there is always something more urgent.
Give the model file listings, folder exports, Slack dumps, whatever you
have. You do not need to organize it first. It reads through everything
and proposes a category structure and naming convention based on what your
lab actually has. You can even connect the model directly to your Slack
channel so that lab members just drop files and notes there, and it
organizes and indexes them automatically as they come in.
Then it writes a summary for every document, making the whole thing
searchable by topic, project, or date. No more opening files to figure
out what they contain. No more asking around.
You review the proposed structure, adjust what does not fit, and apply it.
The result is a folder system that new lab members can navigate on day
one, with consistent naming, clear categories, and a tagging system that
makes everything findable. It takes an afternoon to set up. Onboarding
that used to take weeks now takes a day.
This workflow really needs the power-user setup.
Let's walk through an example. Say you're running a mid-sized lab
and the files are scattered everywhere. Years of protocols sit in
Dropbox. Manuscripts and figures live on Google Drive. Purchasing
decisions happen in Slack threads that nobody goes back to read.
Raw data lives on individual postdoc laptops. Some of it is in
daily use. Most of it hasn't been touched in years. None of it is
labelled in any consistent way.
Every new lab member spends their first week asking where things
live and getting told to ask someone who has been there longer.
You've been meaning to fix it for a year. Every time you look at
the job it seems like it will take a week. Let's do it in an
afternoon.
Give Claude access to your lab's data sources
Before Claude can read your lab, it needs access to the places
your lab's files live. For most labs that's three stores: a synced
Dropbox folder, Google Drive, and a Slack workspace. Describe the
access you want and Claude works out what it needs and asks you
for the rest.
Prompt: install the lab MCP servers
I want you to be able to read my lab's files so you can help me organise them. I have a Dropbox synced locally, a shared Google Drive I'm logged into, and a Slack workspace where the lab does most of its messaging. Set yourself up with whatever access you need to read all three. Ask me for paths, account details, or permissions scopes when you need them. When everything is working, verify by listing one item from each source (one filename from Dropbox, one file from Drive, one channel from Slack).
Step 1: Take a read-only inventory
The first discipline is to refuse any plan until Claude has a complete
inventory. If you ask straight for a reorganisation, you get a plan
based on whatever the agent happened to sample. Ask for the inventory
first and you get a plan grounded in every file you own. This pass is
read-only and safe to run on auto-accept.
Prompt: dump the inventory, no decisions
Switch to plan mode. Using the Filesystem MCP pointed at my synced Dropbox or Drive folder, enumerate every file recursively. For each file capture full path, size in bytes, modified time, accessed time, and extension. Write the complete tree to inventory/files.json at the root of this project.
Do the same for Google Drive via the Google Workspace MCP and write it to inventory/drive.json. For Slack, pull the last three months of messages from the channels I name (ask me which) and write inventory/slack.json with timestamp, channel, author, and message text.
Do not classify anything. Do not propose moves. Do not suggest a structure. Inventory only.
Step 2: Classify active versus archival
Most labs are the same shape: a year or two of active protocols and
analyses sitting on top of a much larger sediment of old projects, past
members' folders, and one-off experiments nobody has opened in years.
Access time is the cheapest signal you have for the active-archival
split. Group inside each bucket by role so you can see what kind of mess
you actually have.
Prompt: classify every file by recency and role
Read inventory/files.json and inventory/drive.json. Bucket every file into one of:
- active: accessed in the last 12 months
- archive-warm: 12 to 36 months
- archive-cold: 36+ months
Inside each bucket, group by likely role: protocol, raw data, analysis, manuscript, figure, slide deck, admin, unknown. Use filename, extension, and parent folder, and flag anything ambiguous instead of guessing.
Write the result to inventory/classification.md grouped by bucket and role, with subtotals in GB. Add a short "needs human" section listing files where the role is genuinely unclear. Still no moves.
Step 3: Scope the destructive permissions
Up to this point everything has been read-only. The moment you start
moving or deleting files, that changes. Lock down the dangerous commands
in .claude/settings.json and force an approval prompt on
anything that writes or deletes. Then break the cleanup into phases
from lowest risk to highest, with an approval gate between each.
Prompt: lock down permissions and plan phased cleanup
Open .claude/settings.json (create it if it does not exist, in the same folder as .mcp.json). Add a permissions block that:
- denies Bash(rm -rf *) and Bash(git push --force *) outright
- asks on Bash(rm *) and Bash(gdrive trash *)
- asks on any MCP tool that writes or deletes (filesystem write, drive trash, slack post)
Show me the diff before you save. Then propose a phased cleanup plan based on inventory/classification.md, ordered from lowest risk to highest: deduplicate first, then archive cold files, then prune obvious junk, then rename actives into a consistent convention. For each phase, write a one-page plan to runs/phase-N.md with the exact commands you intend to run. Wait for me to approve each phase before executing it.
Step 4: Ship the lasting artefacts
The cleanup is not the deliverable. The deliverable is a small set of
markdown files a new lab member can land on Monday and use to orient
themselves by Tuesday. Ask for them by name so Claude does not invent
its own structure.
Prompt: write onboarding, inventory, and per-project indexes
Now write the lasting artefacts a new lab member would actually use. Generate three files and put them in the project root:
1. onboarding.md: plain-language tour of where things live, which protocols are canonical, how purchasing works, what never to touch without asking. Written for someone on day one.
2. file-inventory.md: master index, one section per top-level area (protocols, data, manuscripts, reagents, admin), two-line description per area, current location, owner.
3. A per-project index.md dropped at the root of each active project directory: what the project is, where the data lives, which figures are in the current draft, open questions.
Ground every claim in inventory/classification.md and the actual file tree. If you cannot find evidence for a claim, mark it TBD and list it for me to confirm.
Step 5: Schedule a weekly re-inventory
The organisation is only worth the effort if it stays current. A
SessionStart hook plus /loop 7d reruns the
inventory and classification on a schedule, diffs the result against
last week's, and tells you on Monday morning if files have drifted back
into the top level or if onboarding now points at a superseded protocol.
Prompt: schedule a weekly reclassification
Add a hooks block to .claude/settings.json alongside the permissions block. On SessionStart, run /loop 7d /reclassify-lab.
Then write the /reclassify-lab skill in .claude/commands/reclassify-lab.md. It should re-run the inventory and classification passes, diff the result against last week's inventory/classification.md, and append the diff to runs/YYYY-MM-DD.md. If files have drifted back into the top level or onboarding.md now points at a superseded protocol, flag it at the top of the diff so I see it the next Monday.