new-project
Skill7 starsChanged 3 months agoMITView on GitHub
The project home above campaigns; new-campaign invokes it.
51 other projects use a version of this.
Adopted by
Most recently taken up by
- cperler/soustheir own version, first seen Nov 8, 2026
- Mark-Life/agent-skillstheir own version, first seen Nov 6, 2026
- pche-broken-artist/forge-of-thoughttheir own version, first seen Nov 6, 2026
- danielrosehill/Claude-Image-Production-Plugintheir own version, first seen Nov 5, 2026
- buildomator/buildomatortheir own version, first seen Nov 4, 2026
- ice-lfernandes/claude-spring-architecttheir own version, first seen Nov 1, 2026
Used with
Projects with it also use checkpoint, prd and 8 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
genomewalkerSkillcheckpoint
Save a checkpoint of task status, decisions, active files, and next steps
Also in 3 projects that use this
GitHubSkillprd
Generate high-quality Product Requirements Documents (PRDs) for software systems and AI-powered features. Includes executive summaries, user stories, technical specifications, and risk analysis.
Also in 3 projects that use this
sunnyclinches44Skillexplain
Explains code using real-world analogies and ASCII diagrams
Also in 3 projects that use this
SentrySkillspec
Produce a verified spec — problem, desired outcome, and acceptance criteria — before building. Use when given a GitHub/Linear issue link, when starting from a fuzzy in-conversation idea, or asked to "figure out what to do" / "scope this" / "what should I build" — whenever the *what* isn't yet pinned down. Grills the ambiguities, checks the premise against the code, and produces acceptance criteria you sign off on — then hands to design-first.
Also in 3 projects that use this
GoogleSkilldomain-modeling
Build and sharpen a project's domain model. Use when the user wants to pin down domain terminology or a ubiquitous language, record an architectural decision, or when another skill needs to maintain the domain model.
Also in 4 projects that use this
SentrySkillreview
Fixture review skill.
Also in 5 projects that use this
- +1 more from getsentry
Other versions51 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 51
- hsantanna88/clo-author★ 262same name
- hugosantanna/clo-author★ 262same name
- buildomator/buildomator★ 102same name
- sneg55/agent-starter★ 76same name
- dtiger1889-ops/claude-harness-toolbox★ 31same name
- 5throck/ai-workspace-standards★ 25same name
- jcottam/agent-resources★ 25same name
- danielrosehill/Claude-Image-Production-Plugin★ 21same name
- pche-broken-artist/forge-of-thought★ 12same name
- ice-lfernandes/claude-spring-architect★ 11same name
41 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository25 other files it gives its agents.
- assess-ideaSkill
- assumption-auditSkill
- attribute-mechanismSkill
- campaign-reviewSkill
- campaign-statusSkill
- cite-checkSkill
- claim-auditSkill
- correctness-suiteSkill
- debugSkill
- deriveSkill
- dimensional-analysisSkill
- discovery-loopSkill
- experiment-designSkill
- fork-campaignSkill
- frame-problemSkill
- handoffSkill
- improve-kitSkill
- literature-reviewSkill
- model-selectionSkill
- new-campaignSkill
- record-decisionSkill
- reportSkill
- run-campaignSkill
- simulation-designSkill
- verifySkill
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 1 is distinctive, and 3 are very specific to this project.
0
Common
Most of the 48 edited versions we read keep these.
1
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 67
Resolve every
[[KEEP — … ]]tag: keep what it marks (the headings the runner and validator read, the instruction-file marker on line 1) … - Very specific: line 90
If new-campaign called you, return to it.
- Distinctive: line 96
Run the bundled validator on the project root (it auto-detects project vs campaign trees, and old- vs new-layout projects) and fix anything …
- Very specific: line 113
No stray reference to a doc the tree does not hold (a SYSTEM.md, a project-root ENGINEERING_NOTES.md): all of it lives in PROJECT.md, one …
“Common” is measured: kept by at least 6 in 10 of the 48 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
new-project — the home for a whole investigation
A Project is one physical system investigated over many Campaigns (versioned attempts) and Sessions
(ad-hoc work). It exists so shared data and docs live once, referenced by relative path and never copied, and
so "what each version changed and found" lives in one index. The interview stance is CORE's
Stage 0, as applied in new-campaign's "Stance for the interview".
Every campaign lives in a project — there is no bare-campaign mode
Two entry paths: directly, when the user starts a new line of research, or from new-campaign, whose
Step 0.1 found no project home. When called from new-campaign, the interview below is largely answered
already: carry those answers in, fill the tree, and return. Do not call back into new-campaign; it is
mid-run and resumes on its own.
A one-off project costs three near-empty documents; the physics, conventions, and instrument knowledge
lives once in PROJECT.md rather than multiplying. A sibling campaign, a fork, or an ad-hoc session can
be added later with no reorganization and no path rewrites.
Interview (gather, don't assume)
- Physical system & end goal — what system, what decision the investigation serves, what "done" looks like.
- Canonical data — where the experimental/reference data lives. If it is large or already on disk, keep it
out of the tree and record a
data_pathpointer; else place a read-only copy atdata/. Data is never copied per-campaign; one copy referenced by relative path prevents duplication and broken paths. - Shared physics / conventions / system params — the facts every campaign inherits
(→
PROJECT.md's knowledge sections), and which of them are standing constraints: the hard rules a run must obey (inventory tags, a-priori bound, sign/unit/frame conventions, run-constraining rig parameters), which the campaign driver delivers into every spawned prompt. - First campaign — the initial attempt (its goal + frozen metric); scaffolded via
new-campaign(below).
Generate the project tree
PhysKit resource links in this skill are relative to the directory containing this SKILL.md, not to
the process working directory. Resolve them to absolute paths before reads, copies, or commands. If the
linked doctrine or template directory is absent, stop and ask the user to install the full PhysKit
plugin; never substitute an unrelated source checkout. Copy
from ../../templates/project/, strip .tmpl, and fill placeholders:
<project>/
├── README.md # the front door: a very short "where to find things" map — nothing deeper
├── PROJECT.md # THE overview: §Mission · §Standing constraints (driver-delivered) · system
│ # knowledge · §Updates from discoveries · §Durable decisions · §Lineage (the
│ # index of every campaign & session; schema inside)
├── CLAUDE.md # one rendered source for the harness-native instruction twins
├── AGENTS.md # exact byte-copy of CLAUDE.md for Codex
├── data/ # canonical data (read-only) + README; OR a DATA_PATH.txt pointer — NEVER written by the loop
├── campaigns/ # each campaign lives here (new-campaign generates into it)
├── sessions/ # ad-hoc / non-campaign sessions — each a <date>_<slug>/ with a NOTES.md
└── reports/ # one project-level outputs location (+ README)Promoted shared artifacts get flat, purpose-named project-level dirs (scripts/, models/,
datasets/, …) created on demand at the first promotion, never pre-created empty. A promoted
artifact is versioned and carries a PROJECT.md §Lineage promotion line — that line, not a
directory name, is what marks it promoted-frozen (project CLAUDE.md rule 6).
- Author
PROJECT.md— the one overview, ordered for a first read. Fill §Mission (goal, decision served, done-criteria, project-wide invariants, the data location/pointer) and the knowledge sections (target of study, predictive framework, instrument, equations and methods) from the interview. Fill its §Standing constraints with care and keep it lean: the campaign driver delivers that section into every spawned prompt, every cycle; depth belongs in the sections below it. Leave §Updates from discoveries and §Lineage as their seeded empty forms. Preserve the edit-tier comment banners — the OPEN/GUARDED split (mirrored as projectCLAUDE.mdrule 7) is what lets future agents update the overview without eroding the signed-off core. - Resolve every
[[KEEP — … ]]tag: keep what it marks (the headings the runner and validator read, the instruction-file marker on line 1) and delete the tag line; the rest is shaped to the project. - Keep
README.mdshort. It is the map for someone unfamiliar — what campaigns and sessions are, where the data and promoted artifacts live — pointing atPROJECT.mdfor everything deeper. The map lives there ONLY; do not restate it inPROJECT.md. - Materialize both harness instruction files from one render. Render
CLAUDE.md.tmplonce, write exact-case regularCLAUDE.md, then byte-copy it to exact-case regularAGENTS.md. Never author or update the twins independently. - Data home (copy the README; decide copy vs pointer). Copy
data/README.md(the read-only, referenced-never-copied rule). Then, from interview topic 2: if the canonical data is on-tree, place the read-only files indata/. If it lives off-tree (large, or already on a lab store), do not copy it: writedata/DATA_PATH.txtwith one line, the absolute path, and record the samedata_pathinPROJECT.md§Mission. That pointer is the project's only absolute path. - Sessions & reports scaffolding.
sessions/starts empty. Each later ad-hoc session gets its ownsessions/<YYYY-MM-DD>_<slug>/NOTES.mdauthored from../../templates/project/sessions/NOTES.md.tmpl; do not pre-create empty session folders. Copyreports/README.md(the single outputs location). - Relative paths only. Campaigns reference
../../dataand the promoted dirs (../../scripts, …), so the whole tree relocates as one unit. The only absolute path allowed is the resolveddata_pathpointer, documented inPROJECT.md§Mission. - Strip
.tmplon write. Fill every{{PLACEHOLDER}}; run the validator when done.
Then the first campaign
If new-campaign called you, return to it; it scaffolds the campaign under campaigns/ itself. If the user
came here directly, invoke new-campaign to scaffold the first campaign, wired to ../../data, and append
its opening row to PROJECT.md §Lineage. Either way, do not duplicate the interview: carry over what was
gathered here.
Verify
Run the bundled validator on the project root (it auto-detects project vs campaign trees, and old- vs new-layout projects) and fix anything it flags:
python "<resolved path to the new-campaign skill>/scripts/validate_campaign.py" <project_root>Resolve that command from the linked
../new-campaign/scripts/validate_campaign.py, not from
the shell's current directory.
It checks the required project files/dirs, that PROJECT.md carries its ## Standing constraints
section (what the campaign driver delivers into every spawned prompt) and its ## Lineage tables, no
leftover {{…}} in the project docs, that every campaign under campaigns/ (incl. _archive/) is
indexed in §Lineage, that no campaign carries a local copy of the overview (referenced-never-copied),
and that no config hard-codes an absolute path (portability).
Then also confirm:
data/is a read-only canonical copy or aDATA_PATH.txtpointer — not a per-campaign copy — and carries its README.campaigns/,sessions/,reports/exist (reports/README.mdpresent); no empty pre-created purpose dirs.- No stray reference to a doc the tree does not hold (a
SYSTEM.md, a project-rootENGINEERING_NOTES.md): all of it lives inPROJECT.md, one section each — except verified findings, which live in the campaigns that produced them, pointed at from §Lineage and §Updates from discoveries. - Report the project root, the data decision (copy vs pointer), and the first campaign created.
Composition
Composes new-campaign (first and subsequent campaigns) and fork-campaign (invalidation forks).
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

