Project memory for Claude. Read this at the start of every session and follow it.
- Name: My Data Project
- Type: Data / AI / automation
- What it is: TODO: one or two sentences: what it is and who it's for.
Goals
- TODO: your top 1-3 goals, one per line (e.g. ship a working v1 this month)
- Python 3.12, pandas, Jupyter notebooks (list key libraries and versions)
- Stick to this stack and these versions. If something here looks outdated, say so instead of silently switching.
- Create env:
python -m venv .venv - Install:
pip install -r requirements.txt - Run:
python main.py - Test:
pytest
- Write clean, readable code with short comments where intent is not obvious. Summarize changes briefly.
- Before a big change, outline the plan in a few bullets and wait for my OK.
- If you are unsure about an API, version, or file, say so and check instead of guessing.
- Keep raw data read-only; write outputs to a separate folder
- Pin dependency versions in requirements.txt
- Print shapes and sample rows when transforming data so results can be checked
- Write small functions that can be tested
- Do not commit datasets, credentials, or personal data
- Do not silently drop rows or fill missing values without saying so
- Do not invent column names; inspect the data first
- Never write secrets (API keys, tokens, passwords) into code, docs, logs, or commits. Use environment variables and keep
.envin.gitignore. - Ask before running destructive commands (deleting files,
git reset --hard, force-push, dropping data). - Ask before adding new dependencies, services, or paid APIs.
- Do not log or commit personal data.
- Project knowledge lives in
docs/brain/(architecture, glossary, gotchas). Read it before big changes and keep it current. - Record important decisions in
docs/brain/decisions.mdas: date, decision, why, alternatives considered. - At the end of each session, update
docs/brain/NOW.mdwith: what was done, what is next, open questions. Read it at the start of every session. - When I correct the same mistake twice, propose a new rule for this file.
- Commit after each working step with a clear message so any change can be rolled back.
- Never push to a remote or deploy without my explicit OK.
- It builds/runs without errors or new warnings.
- The change does what was asked and nothing more.
- Docs and this file are updated if behavior or rules changed.