Academic Writer: the full guide

A writing assistant for humanities researchers. It helps you write a scholarly article in your own voice, using only the sources you choose, and hands you a Word file.

Version 0.20.7

1. What it does

Academic Writer is a plugin (an add-on) for Claude Code, Anthropic's AI assistant that runs in a text window on your computer. You talk with Claude in plain language, and the plugin guides the conversation from a vague topic to a finished, footnoted article.

Your voice

It can study your past articles and learn how you write: sentence length, the phrases you favour, how you open and close an argument.

Real citations only

Every footnote is checked against the sources you picked. A separate checker rejects any paragraph whose citation it cannot confirm.

You stay in charge

You choose the topic, the sources, the thesis and the outline. Nothing is drafted until you approve the plan.

Word in, Word out

You get a .docx file. Comment on it in Word, and the plugin folds your comments back into the text.

It works in Hebrew and in English, including right-to-left layout and Hebrew footnotes. For example, a Hebrew paragraph in the finished file looks like this:

הטענה המרכזית של המאמר היא שהפולמוס לא נסב על שאלת הסמכות בלבד, אלא על הגדרת הקהילה עצמה.1

2. Before you start

You need three things. Setup (step 4) checks each of them for you and explains anything that is missing.

WhatWhyCost
Claude CodeThe program the plugin runs inside. It comes with a Claude subscription that includes Claude Code. Download it from claude.com/claude-code.Your Claude plan
A Gemini API keyAn API key is a long password that lets the plugin use Google's Gemini AI, which does the drafting, proofreading and text recognition (these commands need the key). You get one from your own Google account in about two minutes; setup shows you how.Free tier available
Microsoft WordTo read the finished article and to mark it up with comments and tracked changes. LibreOffice also opens the file, but Word handles comments and tracked changes best.Your existing copy

Helpful, but optional:

3. Install

Installing happens once; allow about 15 minutes if you have never used Claude Code. Each step says what you should see.

A. Get Claude Code and sign in (skip if you already use it)

  1. You need a Claude plan that includes Claude Code (Pro, Max, Team or Enterprise; the free plan does not). Subscribe or sign in at claude.ai.
  2. Open the Terminal app (see "How to open a terminal" below).
  3. Paste this line and press Enter. It shows no progress for a minute; that is normal. On Windows PowerShell use irm https://claude.ai/install.ps1 | iex instead.
    curl -fsSL https://claude.ai/install.sh | bash
  4. Make a folder for your research (for example Academic inside Documents). In Terminal type cd (with a space), drag the folder into the window, press Enter, type claude and press Enter.
  5. The first time, your web browser opens so you can sign in. Sign in and return to the Terminal window. You now see Claude Code's prompt box, where you type to Claude.

If Terminal says command not found: claude, close it, open a new Terminal window and repeat step 4.

B. Add the plugin

In the prompt box, type these two lines one at a time, pressing Enter after each. Each prints a short confirmation. If the first one says it cannot find the marketplace, check the line is typed exactly and try again; if it still fails, copy the message to Claude:

/plugin marketplace add yodem/academic-writer
/plugin install academic-writer@yodem

The first line tells Claude Code where to find the plugin (a marketplace is simply a list of plugins). The second installs it.

C. Restart, then check

Type /exit and press Enter, then type claude again in the same folder, so the new commands appear. To check, type /plugin, open the Installed tab with the arrow keys and look for academic-writer.

If you prefer the regular terminal window instead of Claude Code's prompt box, the same two steps are:

claude plugin marketplace add yodem/academic-writer
claude plugin install academic-writer@yodem
How to open a terminal and start Claude Code

A terminal is a window where you type commands instead of clicking.

  • Mac: press Cmd+Space, type Terminal, press Enter.
  • Windows: open the Start menu, type Terminal (or PowerShell), press Enter.
  • Linux: press Ctrl+Alt+T on most systems.

Then go to the folder where you keep your research. Type cd (with a space), drag the folder from Finder or File Explorer into the window, and press Enter. Now type claude and press Enter. Everything the plugin creates for this project stays inside that folder.

4. First run

In Claude Code, inside your research folder, type:

/academic-writer:setup

Setup is a short conversation, one question at a time, about 10 minutes. It:

  1. asks your field of study and the citation style you use;
  2. walks you through getting a free Gemini key, click by click, and tests that it works;
  3. checks the small helper tools the plugin needs and asks your permission before installing anything;
  4. writes one short sample paragraph so you can see it working.

After you store the Gemini key, setup asks you to restart once: quit Claude Code completely (type /exit), open it again in the same folder, type /academic-writer:setup and choose Check my Gemini key. Your answers are saved, so nothing is asked twice.

Getting a Gemini key yourself (if you want to do it before setup)
  1. Open aistudio.google.com/apikey in your web browser.
  2. Sign in with any Google account.
  3. Click Create API key. Copy the key; it starts with AIza.
  4. Keep it private, like a password. Setup tells you exactly where to paste it.

After setup, if you want the plugin to learn your personal style, copy 5 to 10 of your published articles (PDF or Word) into the past-articles folder inside your research folder (setup created it), then run:

/academic-writer:init

init reads your articles, shows you what it learned about your style so you can correct it, and helps you connect your source library. It is safe to run setup or init again later; they update your profile and never erase it.

Setup and init also ask whether to add PageIndex, an optional second library for your books. The safe answer is "Not now": your books are then read from Trove, exactly as before. Section 11 explains the choice.

What you can do now

At the end, setup shows a short list of the commands that are ready for you, based on whether you are a student, a researcher or a teacher. Only commands whose tools are in place are listed. To see the list again, run /academic-writer:setup; for the full tour, run /academic-writer:intro.

Setup also asks you to choose one visible home folder. It keeps your details, your courses and the list of your project folders in one place you can open yourself.

5. Your first article

Type /academic-writer:write. The first part is a conversation; the second part the plugin does on its own while you wait.

  1. Topic and language. Say what you want to write about, as roughly as you like, and in which language. Claude asks follow-up questions.
  2. Choose your sources. You see the sources you have made available and pick the ones for this article.
  3. Deep reading. The plugin reads the chosen sources and maps the evidence they contain: arguments, quotations, page numbers, and gaps.
  4. Thesis. You get two or three possible theses based on that evidence. Pick one, adjust one, or write your own.
  5. Outline. Together you shape the sections and what each one argues. Nothing is written until you say the outline is ready.
  6. Drafting. The plugin writes the article paragraph by paragraph from the approved outline, in your style.
  7. Citation check. A separate checker compares every footnote with your sources. Paragraphs that fail are rewritten; if one still fails, it is named for you to look at.
  8. Word file. You receive a .docx with real Word footnotes and a bibliography. Claude tells you where it saved it.
  9. Your comments. Open it in Word. Add comments or tracked changes anywhere you want something changed. Save and close it.
  10. Revise. Run /academic-writer:revise. It reads your comments, groups them, asks you to confirm each group, updates the text and makes a new Word file. Repeat 9 and 10 as often as you like.

Before you submit: run /academic-writer:proofread for a final typo and language pass (you get a marked-up copy and a short report), and /academic-writer:review for a scorecard of the article's structure, argument and citations.

6. All commands

Type any of these in Claude Code. This list is generated from the plugin itself, so it always matches the version you have installed.

CommandWhat it does
/academic-writer:introOpen the full guide in your web browser: what the plugin does, setup, your first article, privacy and troubleshooting.
/academic-writer:setupFriendly first-run setup for researchers with no technical background: checks each tool Academic Writer needs, explains it in one sentence, asks before installing anything, walks you through getting and safely storing a free Gemini key, and ends with a sample paragraph.
/academic-writer:initFull onboarding for Academic Writer: builds your researcher profile, learns your writing style from past articles, connects your research library, and offers Gemini.
/academic-writer:writeWrite a new academic article with the author, step by step: topic, sources, verified evidence, the author's thesis, an approved outline, drafting, a citation audit and a Word file.
/academic-writer:reviseRead the Word comments and tracked changes the author left on a generated draft, group them, confirm each group, then update the article and the voice and feedback stores.
/academic-writer:editRevise an article you already drafted: several passages at once, tone, structure, argument order or evidence.
/academic-writer:edit-sectionQuick revision of one section of an existing article: rewrite, expand, shorten, fix its citations or adjust its style.
/academic-writer:proofreadProofread a finished article (Markdown or Word) for typos, wrong words, grammar and editorial issues, producing a corrected copy, a report and an editorial memo without touching the original.
/academic-writer:reviewScore a completed article on six dimensions (structure, argument logic, citation completeness, source coverage, writing quality, academic conventions) and show a scorecard with concrete findings.
/academic-writer:researchInvestigate a topic or check a claim against the author's indexed sources, returning only passages whose quotations were verified word for word.
/academic-writer:ideateGuided brainstorming that turns a vague topic into a sharp research question, using who/what/when/where/why/how, a gap check against the author's sources and a choice of approach; saves a research brief that /academic-writer:write reads.
/academic-writer:ocrTurn a scan or photo into plain text: free readers when they agree, then Claude, then Gemini for the pages Claude cannot read.
/academic-writer:ingestUpload one article or chapter to the source library with printed page numbers, hinted contents and a citation guide.
/academic-writer:ingest-bookUpload a whole book (multi-volume, scanned or EPUB) to the source library with a navigable hinted table of contents and a citation guide.
/academic-writer:library-evalCompare Trove and PageIndex on your own article: anonymised pairs you judge yourself, then the unblinded results.
/academic-writer:voiceBuild or update the author's voice profile: import older voice files, choose exemplar paragraphs from past papers, derive writing rules and sync them to Trove.
/academic-writer:healthCheck that Academic Writer is ready to use — your profile, the tools it needs (Python and its add-ons, Hebrew spelling, Trove, NotebookLM), the Gemini key and past articles — with a plain-language fix for anything missing.
/academic-writer:helpA short list of every command and the three steps to get started.
/academic-writer:coursesUse when setting up an academic term from a schedule, validating course resources, syncing your LMS (Moodle) materials, or running the daily course scan.
/academic-writer:dashboardOpen the local course dashboard: one page that shows, for every course in the term, what is due next, whether its readings are ready, and what is new, with a week agenda and a page per course.
/academic-writer:kotar-fetchDownload the cited pages of a book on Kotar (CET, through the Bar-Ilan OpenAthens proxy) as one PDF in printed-page order, for the author's own study.
/academic-writer:lesson-notesUse when processing a course recording into a structured Hebrew lesson note, or when resuming queued NotebookLM lesson transcripts with --pending.
/academic-writer:watchShow what Academic Writer is doing right now: the current step of the article run, how far it has got, and anything the checker rejected.

You can also just describe what you want in your own words ("proofread my article", "how does this plugin work?"); Claude picks the right command for most requests. Setup, init and voice only run when you type them, because they change your settings.

7. Where your files live

There are two places. Neither is uploaded anywhere by the plugin except as described under Privacy.

In your research folder (one per project)

Folder or fileWhat it holds
past-articles/Your published articles, for learning your style.
.academic-helper/The project's working files: your profile (profile.md), the list of sources and their citation details, the outline, the drafts of each paragraph, and a log of each run.
ocr-output/Text extracted from scanned pages by /academic-writer:ocr.
Your .docx filesThe finished articles. Claude tells you the file name each time.
.academic-helper/library-eval/Only if you run a library comparison (section 11): its plan, the anonymous answers, your judgments, a sealed key that says which side was which, and the final report.

Folders whose names start with a dot, like .academic-helper, are hidden by default. To see them: on a Mac, press Cmd+Shift+. in Finder; on Windows, open File Explorer, choose View, then Show, then Hidden items.

In the plugin's own data folder (shared by all your projects)

Your voice data (the passages you chose as examples of your style, the writing habits the plugin learned, your preferred terms, and the before-and-after pairs from your own corrections) lives in one place so every project benefits. It is inside your home folder under .claude/plugins/data/, in a folder whose name starts with academic-writer. The same folder keeps a small log of plugin mistakes you flagged during /academic-writer:revise, so they can be fixed. If you chose to install the plugin's own PageIndex helper (section 11), it lives here too, in a folder called pageindex, together with the books you prepared for it.

This folder survives plugin updates. It is removed if you uninstall the plugin, unless you ask to keep it (see section 10).

8. Privacy

9. Troubleshooting

First, always: type /academic-writer:health. It checks your profile, key, tools and sources and tells you, in plain words, what to fix.

The /academic-writer: commands do not appear

Close Claude Code completely and open it again; new plugins load at start-up. If they still do not appear, type /plugin and check that academic-writer is listed and enabled. If it is missing, repeat the two install lines in section 3.

"No Gemini key" or "API key not valid"

Run /academic-writer:setup again and choose to set up Gemini. After saving a key, start a new Claude Code session: the key is picked up when a session starts. If Google says the key is invalid, create a fresh one at aistudio.google.com/apikey and copy it again, with no spaces before or after.

"No profile found"

The plugin keeps one profile per research folder. Check that you started Claude Code inside your research folder (section 3, "How to open a terminal"). If this is a new folder, run /academic-writer:setup there.

"Missing Python package" or the Word file is not created

Run /academic-writer:setup; it checks the helper packages and offers to install them for you. If you prefer to do it yourself, paste this into a terminal:

python3 -m pip install python-docx lxml pdfplumber pymupdf jsonschema

If the computer says python3 was not found, install Python 3 from python.org/downloads (on Windows, tick "Add Python to PATH" during installation), then try again.

The PageIndex helper will not install, or PageIndex is "not reachable"

Run /academic-writer:health. It says in plain words what is wrong: usually your Python is older than 3.10 (needed only for the larger helper), the pango add-on is missing on a Mac, there is no network connection, or the pageindex_command setting points at something that no longer exists. The basic helper works with Python 3.9. Your books stay safe in Trove whatever happens here, and Trove keeps working.

Hebrew text looks reversed or punctuation is in the wrong place

In Claude Code's window, mixed Hebrew and English can look jumbled; that is only the display. The Word file is laid out right to left. If the Word file itself looks wrong, make sure your article language in the profile is Hebrew (run /academic-writer:setup to check) and tell Claude what you see.

Something behaves strangely after an update

Update both the plugin list and the plugin, then restart Claude Code (section 10). If that does not help, run /academic-writer:health and share its report when asking for help.

Still stuck? Report the problem at github.com/yodem/academic-writer/issues and include the output of /academic-writer:health (it contains no keys).

10. Updating and uninstalling

Updating

Type these in a terminal (or with /plugin in Claude Code), then restart Claude Code:

claude plugin marketplace update yodem
claude plugin update academic-writer@yodem

Updating keeps your profile, drafts and voice data.

Uninstalling

Important: uninstalling normally deletes the plugin's data folder, which holds your voice data (section 7). To keep it, add --keep-data:

claude plugin uninstall academic-writer@yodem --keep-data

Your research folders, drafts and Word files are never touched by uninstalling.

11. Choosing a library (optional)

You can skip this section. Unless you choose otherwise, your books are read from Trove, as before, and nothing here changes how the plugin works for you.

The choices

PageIndex is a second library that keeps a short outline of every book, with a few lines on each section, so Claude can go straight to the likely page. For each article you choose where its books are read from, and you can change your mind later with /academic-writer:update-tools.

Trove

The default. Your books are read from Trove. Nothing else runs.

PageIndex

Your books are read from PageIndex instead. You need to prepare the books for it first.

Both

One library answers. The other is tested quietly in the background on the same questions and can never change, slow down or break your result.

Adding PageIndex

Setup, init and update-tools offer two ways, explain each in plain words, and ask before doing anything:

  1. The plugin's own helper. A small program that the plugin installs in its own data folder, not in your system. The basic helper is about 100 MB and needs Python 3.9 or newer; it prepares books that have a table of contents. A larger helper (about 500 MB, Python 3.10 or newer and, on a Mac, the pango add-on) can also prepare a book that has no table of contents. The plugin shows you the plan and the size, installs only after you say yes, never installs Python for you, and can remove the helper again.
  2. Your own PageIndex. If you already run PageIndex yourself, for example on a server, you type its command into the plugin's pageindex_command setting (type /plugin, open Installed, choose academic-writer, then Configure). A command you set yourself always wins over the built-in helper. Never put a password in that setting.
/academic-writer:update-tools

Say you want PageIndex and choose Set it up on this computer. Then run /academic-writer:health to see which helper is in use and that it is ready.

Preparing your books

A book must be prepared once before PageIndex can read it. When you add a book with /academic-writer:ingest or /academic-writer:ingest-book, the plugin writes it to Trove first, checks it, and then offers to prepare it for PageIndex too. It uses the same table of contents and the same page numbers, so a citation means the same page in both libraries. For each book it tells you how much text would be sent to Google for the summaries, and you choose: Gemini summaries, the free option that sends nothing, or not now. A problem here never undoes the Trove upload.

You can also add a reading to a book you already have, and prepare the books already in Trove in one go (a "backfill"). Both are safe to repeat: summaries already paid for are reused, and Trove is never changed.

Measuring the libraries

Every lookup and every citation check is noted on your computer, in .academic-helper/retrieval.jsonl: how long it took, an estimate of how much text came back, and the citation checker's verdict. Ask Claude to "show me the library report" for a plain-language comparison on your real articles: speed, failures, how often the two libraries return the same page, how often the citation checker passes, the size of the text returned and the cost of any preparation or comparison runs. The size figures are estimates, not a bill. Nothing in that log is uploaded.

The blind comparison: judge it yourself

/academic-writer:library-eval answers a sharper question on your own sources: for the claims in this article, which library finds the better pages?

  1. Plan. The plugin picks claims from one of your drafts and tells you how many helper runs this needs and what they are likely to cost. Nothing is spent until you say yes.
  2. Find. For each claim, a separate Claude (or Codex) looks up the supporting pages in each library, one library at a time.
  3. Judge. You open one private page that works offline, in Hebrew and English. For each claim it shows two answers, "A" and "B", in random order, with no library names. You choose Better: A, Better: B, Same or Neither, and may add a note. You can stop and come back, and then save your judgments as a file.
  4. Reveal. The plugin imports your judgments and only then reveals which library was which, with how many pairs each won, a confidence range, the time, tokens and cost of each, and how often each found the page the citation checker had confirmed.

Be careful with small numbers. With only a handful of judged pairs the report says it is a first look, not a verdict, and so should you. The blind judging protects you as the judge; the helpers that find the pages can still tell from the shape of what they read which library they are looking at.

Full details, the report explained line by line and the known limits are in docs/library-routes.md in the project repository.