Project-native, MD-first research operating system for AI-assisted research. Use when Codex needs to run literature review, hypothesis generation, experiment planning, data analysis, evidence synthesis, or research writing inside a project folder that should stay readable by both humans and agents. Prefer this skill when the user wants AGENTS.md, STATE.md, TASKS.md, and CHANGELOG.md as the shared control layer, with lighter process overhead than heavy JSON-first phase management while still keeping evidence traceability and submission guardrails.
Use this skill to build and run a research project as a small operating system inside the project folder.
The control layer is Markdown-first:
AGENTS.md: stable rules, boundaries, writing norms, and handoff conventionsSTATE.md: current reality of the projectTASKS.md: executable queue with priorities and done criteriaCHANGELOG.md: concise record of meaningful changes and decisionsThese files are the shared memory for both humans and agents. Do not split the same project state across multiple JSON trackers unless a script strictly requires a derived export.
Git is the historical memory layer:
AGENTS.md, STATE.md, TASKS.md, and CHANGELOG.mdUse this shape by default:
project_name/
AGENTS.md
STATE.md
TASKS.md
CHANGELOG.md
01_question/
02_literature/
03_design/
04_data/
05_analysis/
06_draft/
07_output/
meetings/
process/
Optional supporting docs:
process/spec.md: requirements for publication or handoffprocess/claims.md: claim ledger for numeric or high-stakes assertionsprocess/submission_checklist.md: final submission or delivery checks02_literature/cards/*.md: structured literature cardsmeetings/*.md: structured meeting notesAlways begin in this order:
AGENTS.md.STATE.md.TASKS.md.Do not load the whole project just because it exists.
AGENTS.mdUse for stable rules:
AGENTS.md should change rarely.
STATE.mdUse for the current truth:
Update STATE.md after any meaningful work session or meeting.
TASKS.mdUse for executable work, not vague wishes.
Every active task should include:
If a task does not have a deliverable or done condition, it is not ready for execution.
CHANGELOG.mdUse for high-signal history:
Do not turn CHANGELOG.md into a diary. Keep it terse and useful for resuming work.
Use Git as the durable history of the project:
Do not rely on commit messages to answer:
Those belong in the Markdown control layer.
Practical rule:
STATE.md answers "what is true now"TASKS.md answers "what should happen next"CHANGELOG.md answers "what changed and why at a high level"Use for early-stage work:
Required files:
AGENTS.mdSTATE.mdTASKS.mdCHANGELOG.mdAvoid heavy gate machinery here.
Use for active project execution:
Add:
Use when the work is nearing publication, review, or formal delivery.
Add only three extra control artifacts:
process/spec.mdprocess/claims.mdprocess/submission_checklist.mdMarkdown remains canonical. If a script requires JSON or YAML, generate it from these files instead of hand-maintaining two competing sources of truth.
process/claims.md before hardening the prose.Use this default loop:
AGENTS.md, STATE.md, and TASKS.md.P0 or P1 task first.STATE.md, TASKS.md, and CHANGELOG.md.review for source-grounded literature retrieval and citation work.data-skill for data cleaning, statistics, and plots.playwright or webapp-testing when a browser flow is part of the research workflow.openai-docs only for official OpenAI product or API questions.Both Codex and Claude Code should read the same project files. Do not maintain parallel memory systems for different agents.