/note — Reading Notes Skill
Parallel Routing
This skill is triggered by: take notes, record this, /note.
This skill does not handle page reading -- that is /read. If the user says "read next page and take notes", the /read skill handles the reading, and /note handles the recording as a second step.
Workflow
- Identify the current literature from conversation context -- author, title, year, and the page(s) just discussed.
- Locate or create the notes file at
literature/reading_notes/{Author}_{ShortTitle}_NOTES.md. Use Glob to check if the file already exists. The{Author}is the last name of the first author.{ShortTitle}uses underscores, title case, and omits articles (e.g.,Smith_Methods_NOTES.md). - Append content to the correct section of the notes file. Never overwrite existing content.
- Update the
Last updatedtimestamp at the bottom of the file to today's date. - Confirm with a one-line summary:
Recorded: {brief description} -> {filename}
Default Behavior
If the user says "take notes" without specifying what to record, default to recording the core analysis from the last assistant message -- summary, key terms, and thesis connections.
Notes File Template
This is the data contract shared across all skills (/read, /note, /integrate, /map). When creating a new notes file, use this exact structure:
# Reading Notes: {Author} -- {Title} ({Year})
**Source**: {single-line citation in the project's declared style — see `literature/reading_notes/_template_NOTES.md` for per-style examples; the active style is `Citation style:` in `CLAUDE.md`}
**Date read**: {YYYY-MM-DD}
**Status**: reading
**Evidence status**: {full_text | abstract_only | metadata_only}
**Relevance**: {which chapter/section this maps to}
---
## Key Arguments
- {bullet points summarising the main arguments}
## Detailed Notes
### p.{N}--{M}: {Section Title}
> "{direct quote}" (p.{N})
{analysis and commentary}
## Key Terms
| Term | Translation | Definition in context |
|------|-------------|----------------------|
## Thesis Connections
| Note Point | Chapter | Section | Connection Type |
|------------|---------|---------|-----------------|
## Questions & Follow-ups
- {open questions for future reading}
---
*Last updated: {YYYY-MM-DD}*
Appending Rules
When appending to an existing file:
- New page notes go under
## Detailed Notes, as a new subsection### p.{N}--{M}: {Title}. - New key terms are appended to the
## Key Termstable. - New thesis connections are appended to the
## Thesis Connectionstable. - New key arguments are appended to
## Key Argumentsas bullet points. - New questions are appended to
## Questions & Follow-ups.
If the section does not exist in the file (e.g., an older file missing ## Thesis Connections), create it.
Evidence Status Field
The firewall against citing sources known only from titles or abstracts:
full_text— the source was actually read (via/reador equivalent).abstract_only— only the abstract was read. Its claims may motivate, not prove.metadata_only— known from title/metadata only. Never cite as support.
Set abstract_only/metadata_only honestly; upgrade only after real reading.
Verified Annotations
When a fact in the notes is later checked (dates, names, quoted figures),
annotate inline — {claim} (verified {YYYY-MM-DD}) or
(corrected: {new value}, {YYYY-MM-DD}) — only after the user confirms the
correction. Do not silently rewrite the original note text.
Status Field
- Starts as
readingwhen the file is first created. - Changes to
completedwhen the user explicitly says they are done with this text (e.g., "done reading", "mark as complete"). - Changes to
integratedafter/integratehas processed the notes into thesis chapters.
Constraints
- Append only. Never overwrite or delete existing content in a notes file.
- No emoji in any output or file content.
- Always update the
Last updatedtimestamp when modifying a file. - Status transitions are explicit: only change status when the user requests it or after
/integratecompletes. - No hardcoded paths. Use the project's
literature/reading_notes/directory relative to the project root. - One file per text. Each book, article, or paper gets exactly one notes file.
- Lint conformance. The deterministic contract check is
npm --prefix guards run lint:notes -- {file}(whenguards/is present). A file that fails the lint is invisible to/integrateand/map— fix it rather than working around it.