Bootcamp / Session 3 / 3.2

Session 3.2 · Hands-on · John Damask, Amroja LLC

Build a personal, AI-powered knowledge base on your own computer.

You will build a knowledge base on atopic dermatitis with a terminal AI agent, Claude Code or Codex CLI, working on files on your own computer. It follows Andrej Karpathy’s LLM Wiki design: raw sources you never change, plus a linked wiki that the AI writes and keeps up to date from them. Along the way you ingest papers, search the literature with Paperclip, track research tasks, send agents off to do research in parallel, draw the result as a graph, and turn the whole workflow into a reusable skill. Part of the lesson is that there is nothing to fear in the terminal. John does every step live on the projector, so you can follow along even if your own setup does not work.

Do the setup first Fri Oct 2, 1:00 to 4:00 pm · Needs installs on your own computer, before class

Before you start

Get set up first

Do 3.0 Get set up before class. It installs Claude Code or Codex CLI and, optionally, Paperclip, on macOS or Windows, and checks that the agent answers. If an install fails, contact us at biocore@umassmed.edu before Friday.

This page says “the agent” throughout. The prompts work the same in Claude Code and Codex CLI. When the agent asks permission to create or edit files in your knowledge base folder, allow it.

John works through every step live on the projector. If you have no subscription, could not install an agent, or get stuck on a step, watch him and pick up again at the next step. If you fell back to a desktop app in 3.0, expect some steps to misbehave there; follow John for those.

What “wiki” means here

Not Wikipedia. Nothing here is public, nothing comes from Wikipedia, and nobody else can edit it. In this exercise a wiki is simply a folder of plain text pages on your own computer, one page per idea, gene, drug, or person, that link to each other by name. The agent writes and updates those pages for you, and it builds them only from the sources you put in raw/, so every fact on a page points back to the file it came from.

Think of it as a lab notebook that organizes itself: raw/ holds the papers and notes you collected, untouched, and wiki/ holds the agent’s cross-linked summary of what they say. You can open any page in a text editor, check its sources, and delete or fix it. The word comes from the idea of small pages linked together, which Wikipedia also uses; that is all the two have in common.

In class: the exercise

Each step gives you the prompt to type, then a few questions under What did you observe? Stop at those for a moment. Noticing what the agent did, and where it put things, is the skill.

Make a folder for your knowledge base

Open a terminal as in 3.0, then make the folder and move into it. The same two lines work on macOS and Windows:

mkdir my-kb-atopic-dermatitis
cd my-kb-atopic-dermatitis

Start the agent

Type claude or codex and press Enter. The agent now works inside this folder.

FALLBACK Using a desktop app instead
Make the folder in Finder (macOS) or File Explorer (Windows) instead. In the Claude app, open the Code tab, choose Local, click Select folder, and pick my-kb-atopic-dermatitis; in the ChatGPT app, open that folder as your project. Some later steps may not work in the apps; follow John on the projector when that happens.
What did you observe?
  • How is working with the agent here different from using Claude or ChatGPT in a browser?

Create the knowledge base

Paste the whole prompt. It sets the rules the agent will follow for the rest of the knowledge base’s life.

Turn this folder into my personal knowledge base about atopic dermatitis. Here's how it works: - I collect sources (articles, papers, notes) in raw/. You never change them. - You read them and write a wiki in wiki/: one page per idea, person, or thing, linked with [[page-name]], and every fact cites the raw/ file it came from. Keep wiki/index.md as a list of every page and wiki/log.md as a history of changes. - When I say "ingest", find all files in raw/ that no wiki page cites yet, read closely and choose 3-5 key takeaways from each, turn them into wiki pages, and list the pages you created or changed. If existing wiki pages exist, check the wiki/index.md page to a) ensure you're not ingesting duplicate data; b) see if existing page exists for which you can add the new data; c) note any inconsistencies or contradictions within the wiki. Note that every wiki page must include a created-on date and last-updated date. - When I ask a question, read the wiki/index.md to see which pages are likely to contain relevant information, then answer from the wiki with citations. If the wiki lacks information you think would be needed, alert the user and ask if they'd like you to do a web search. At any point during a user session, if interesting insights arise, offer to save them back to the wiki. Write these rules into AGENTS.md so every future session follows them, set everything up, and tell me in five bullets what you built.
What did you observe?
  • What files and folders did the agent create?
  • What is the difference between the raw/ documents and the wiki/?

Add an article by hand

In your browser, download this review and save it into your my-kb-atopic-dermatitis/raw folder. Then, in the agent:

ingest
What did you observe?
  • Did the agent tell you what it was doing along the way?
  • Open wiki/index.md. What does it show?
  • Open AGENTS.md. Does it capture all the rules from your prompt?
  • How did the agent turn the raw paper into wiki content?

Search the literature with Paperclip

Paperclip gives your agent direct command-line access to more than 8 million papers: standard search and retrieval, plus tools that, used together, let agents explore, dig deep, and synthesize.

Using paperclip, find three recent open-access articles on atopic dermatitis.

When the search has finished, bring the papers into your knowledge base:

Save them to raw and ingest
NO PAPERCLIP? Search NCBI instead

If Paperclip did not install, have the agent search NCBI directly. PubMed and PubMed Central have a free public search interface (E-utilities) that needs no install and no account:

Search PubMed Central using NCBI's E-utilities (https://eutils.ncbi.nlm.nih.gov/entrez/eutils/) for three recent open-access articles on atopic dermatitis. Show me the title, journal, year, and PMCID of each and why you picked it. Skip errata, and make sure each one has a Creative Commons license and the full text, not just the abstract. Then download each full text into raw/ and ingest.
Compare the results with a neighbor who used Paperclip. Europe PMC is another free option with open-access full text. Whichever you use, check that the PMCIDs the agent reports are real: look one up on PubMed Central.
What did you observe?
  • Did the new papers create new wiki pages, update existing pages, or both?

Review

Summarize the contents of the knowledge base so far.
What did you observe?
  • Is the summary combining information from several raw sources?

Add a research tracker

Paste both paragraphs together, as one message.

Add a research task tracker to this knowledge base. The tracker: keep tasks in research_tasks/tasks.jsonl at this knowledge base's root (a sibling of raw/ and wiki/, not inside either), one task per line, with id, question, priority (high, medium, low), status (to do, in progress, done), created and updated dates, notes, and the path to the findings once done. I may edit this file by hand, so never drop fields you don't recognize.
What did you observe?
  • Where did the agent store the research tracker?
  • Open the file in a plain text editor. What information does each research task contain?

Ask for research ideas

Give me 3 ideas for what to research next

Go back and forth until you are happy with the ideas, then have the agent add them to the tracker:

Add these to my research tracker
What did you observe?
  • How good were the first questions the agent suggested? Insightful, or basic?

Run the research in parallel

This step and the next one run at the same time. Start this one, and move on to the viewer while it runs.

Spin up agents to execute the research. Use paperclip where you think it could help. Results should be written to this knowledge base's raw/ folder.

No Paperclip? Replace “Use paperclip” with “Search PubMed and PubMed Central through NCBI’s E-utilities”.

The agents should finish in about 10 minutes.

What did you observe?
  • Did you see several agents working at the same time?
  • Did they put the results in the right place?

Build a viewer while the research runs

Write a small script that reads every page in wiki/ and generates wiki-map.html: a 3-D interactive force-directed graph with one node per page and one edge per [[link]]. Support standard graph exploration and controls, e.g. moving, zooming, rotating, back and forward buttons similar to browser history controls re-navigating between selected nodes (each click centers the previous/next selected node on the screen and shows the page in the sidebar), etc. Include a search bar. Node labels should fade in and out based on zoom. Size nodes by number of links, color them by page type, and show each page's summary on hover. When a node is clicked, open a side panel showing the complete wiki page. Load the graph library from a CDN so the file works on its own. Run the script, open wiki-map.html in my browser, and add a rule to AGENTS.md: rerun the script after every ingest.
What did you observe?
  • Which ideas are the most connected to other ideas?
  • Does the graph show relationships that were less obvious when you read single pages?

Ingest the new research

The agent should ingest the results on its own. If it does not, type:

ingest the new research
What did you observe?
  • Did the new research create new topics, or deepen existing ones?
  • Did the agent find any inconsistencies or contradictions?

Interrogate the knowledge base

Are there any contradictions in the wiki? If so, do they reflect conflicting information in the source papers or artifacts introduced during wiki creation?
What did you observe?
  • Is the agent answering from the knowledge base, rather than starting from scratch?
  • Which parts of the knowledge base did it use?

Write back to the knowledge base

Please write this observation about true contradictions (i.e. not artifacts) back to the kb and add research topics to resolve them
What did you observe?
  • Where did the agent save the observation?
  • Did the new research topics show up in your research tracker?
  • How might saving insights back to the knowledge base improve future answers?

Turn it into a skill for any topic

Turn this into a personal skill called create-kb so I can easily create new knowledge bases on any topic. Each knowledgebase should live in a dedicated folder with the name, my-kb-<TOPIC>. The skill should add the kb to a central registry at ~/.my-kbs/registry.json that records and lists my knowledge bases (name, topic, folder path), and add this one. Create the registry if it doesn't exist.
What did you observe?
  • Which parts of the knowledge base workflow did the agent make reusable?
  • What would you need to do to create another knowledge base on a completely different topic?

Extra: a video transcript

A paper is not the only kind of source. These two steps add the transcript of a conference session, with timestamps, and use it to jump to one moment in the video.

The video: Psoriasis or Dermatitis? When boundaries blur and treatments flip the script, a joint symposium of the International Eczema Council and the International Psoriasis Council at the AAD 2026 Global Education Day in Denver (March 26, 2026). Across almost three hours of talks and a closing panel, clinicians and researchers look at where atopic dermatitis and psoriasis overlap: patients whose disease does not fit cleanly into either diagnosis, and “paradoxical” reactions, where a treatment for one disease brings on the other. It is exactly the kind of source that is hard to search by hand and easy for an agent once it is text.

Get the transcript

We did this for you. Download AAD-2026-Denver-global-education-day-transcript.txt and save it into your knowledge base’s raw/ folder.

To do the same for any other YouTube video:

  1. Open the video on youtube.com and click …more under the title to expand the description.
  2. Scroll to the end of the description and click Show transcript. The transcript opens beside the video, one line per few seconds, each with its timestamp.
  3. Click and drag from the first line to the last to select it all, then copy with Cmd+C (macOS) or Ctrl+C (Windows).
  4. Paste it into a plain text file (TextEdit, after Format, Make Plain Text, on macOS; Notepad on Windows) and save it as a .txt file in raw/.

Keep the timestamps. They are what lets the agent send you to the right moment in the next step. A little page clutter copied along with it (buttons, view counts) does no harm; the agent reads past it.

Ingest a transcript with timestamps

With the file in raw/, type:

Ingest the new file in the raw folder. This is the transcript (with timestamps) from the 2026 AAD Global Education Day session from Denver. Video here: https://www.youtube.com/watch?v=9SrnO-UkaQA
What did you observe?
  • How did the agent fit a video transcript alongside the scientific papers?
  • What information from the transcript showed up in the wiki?

Find a moment in the video

Using the raw transcript with timestamps, make a url to take me to the part of the video with the ISDS poster Gordon described.
What did you observe?
  • How did the agent use the timestamps stored in the raw transcript to find one moment in the video?

What you practiced

  1. A terminal agent works on real files on your computer, not only in a chat window.Steps 1 and 2
  2. Write the rules down once, in AGENTS.md, and every future session follows them.Step 3
  3. Keep raw sources untouched and let the AI maintain the distilled, cited layer on top.Steps 3 and 4
  4. Give the agent a trusted literature tool instead of letting it recall papers from memory.Step 5
  5. Hand off whole research tasks to agents working in parallel, then check where the results landed.Steps 7 to 9
  6. Ask for answers from your own knowledge base, with citations, and save new insights back into it.Steps 12 and 13
  7. Once a workflow works, make it a reusable skill.Step 14

Tell us how it went

Two minutes: whether you made it, how far you got in the hands-on, and what to change. It also records your attendance. We ask this after every session.

Session 3 feedback

About the speaker

John Damask is the owner of Amroja LLC. A learner and builder, he uses AI to shrink the time it takes to bring new ideas into the world: he builds open source and commercial software, and helps life sciences and finance organizations speed up their AI adoption programs. Previously he was VP of Digital Science at Flagship Pioneering and Global Head of Cloud at Novartis.

Materials