onboard-project
Skill4 starsChanged 48 days agoMITView on GitHub
Register a new runtime project in the portfolio — pick its tier, scaffold its runtime directory, add a registry row, create its agent definition and task board from templates, and gate on completeness before it's considered live
5 other projects use a version of this.
Adopted by
Most recently taken up by
- andrewgolovanov/agent-ostheir own version, first seen Nov 8, 2026
- Recluse/HyperMnesiatheir own version, first seen Nov 5, 2026
- BenaliHQ/paxus-skillstheir own version, first seen Oct 30, 2026
- qu1r0ra/skillstheir own version, first seen Oct 20, 2026
- crissmoldovan/agent-skillstheir own version, first seen Oct 15, 2026
Other versions5 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 5
- Recluse/HyperMnesia★ 17same name
- andrewgolovanov/agent-os★ 7same name
- BenaliHQ/paxus-skills★ 4same name
- crissmoldovan/agent-skills★ 2same name
- qu1r0ra/skills★ 1same name
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 repository12 other files it gives its agents.
- code-reviewSkill
- context-healthSkill
- curateSkill
- demand-pipelineSkill
- find-skillsSkill
- learnSkill
- open-prSkill
- planSkill
- portfolio-triageSkill
- releaseSkill
- routeSkill
- verifySkill
The file
We split this skill into the rules it gives an agent
5 rules. 0 are common, 2 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 5 edited versions we read keep these.
2
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 30
If <name> or <tier> is missing, or <tier> is anything other than personal/work, stop and ask — do not guess a tier.
- Very specific: line 36
Check it isn't already registered: Read docs/portfolio-registry.md (or wherever the project registry lives per …
- Distinctive: line 49
Create the directory. Do not git init inside it as part of this skill — a runtime project either already has its own independent repo to be …
- Very specific: line 78
Optional: seed a knowledge pack: If the project already has code to describe (an existing codebase being brought into the portfolio, not a …
- Distinctive: line 85
Completion gate: Before reporting onboarding done, verify all of:
“Common” is measured: kept by at least 6 in 10 of the 5 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
The mechanical half of this skill is a CLI command: npx create-superharness add-project <name>
<tier> [<type>] creates the runtime directory, registry row, agent definition, task board, and
memory row in one gated pass, and npx create-superharness check verifies they agree. Run it
first. What remains for this skill is the judgment half — steps 2, 7 and the placeholder
fill-in in step 8 — which no scaffold can do for you.
Turns "we're starting a new project" into a fully-registered portfolio member in one pass — the single entry point so a new project never ends up with a runtime directory but no agent definition, or a registry row that points at a task board that doesn't exist. Generalizes the "register a service" pattern any growing team eventually needs, scoped to what a small management layer actually requires: no deploy pipeline wiring, no infra provisioning — just the four files that let the manager route work here correctly starting on day one.
Arguments: onboard-project <name> <tier> [<type>]
<name>— kebab-case project name, e.g.acme-notes. Becomes the directory name and the key used everywhere else (registry row,agents/<name>.md,docs/tasks/<name>.md).<tier>—personalorwork. Seedocs/portfolio.md§2 — this is not a formality, it decides the git/review/deploy handling every future brief for this project will carry.<type>— optional, free-text (e.g.web,api,cli,worker). Used only to seed the agent definition's Stack section with a sensible starting point; not validated against a fixed list — a portfolio's project types are open-ended, unlike its tiers.
If <name> or <tier> is missing, or <tier> is anything other than personal/work, stop and
ask — do not guess a tier. An onboarded project with the wrong tier silently misapplies the wrong
git/review workflow to every brief dispatched to it (docs/portfolio.md §2).
Steps
- Check it isn't already registered. Read
docs/portfolio-registry.md(or wherever the project registry lives pertemplates/project-registry.md) for an existing row named<name>, and check for an existingagents/<name>.md. If either exists, stop and report — this skill creates, it doesn't re-onboard. Point atrouteor the existing agent definition instead. - Pick the tier — confirm, don't infer.
<tier>was passed as an argument; restate it back ("onboarding<name>aswork-tier — feature branch + PR + review gate") so a wrong tier is caught before four files get created around it, not after. - Scaffold the runtime directory. Per
docs/repo-layout.md§2:
Create the directory. Do notruntime/<tier>/code/<name>/git initinside it as part of this skill — a runtime project either already has its own independent repo to be cloned/moved in here, or the human sets up its initial git history themselves; onboarding the portfolio and initializing the project's own repo are separate concerns, and this skill only owns the former. Add a registry row — INSIDE the markers. Insert one row into the live registry
docs/portfolio-registry.md, immediately before its<!-- projects:end -->marker. A row appended after the marker is invisible toroute/portfolio-triage— placing it inside the marked block is the whole point. Use this exact pipe format (backtick-wrap the name), one line:| `<name>` | <tier> | (placeholder — fill in) | <name>, <type> (placeholders) |Flag the responsibilities/keywords as placeholders to fill in —
routedepends on these being specific, and a freshly-onboarded project's real vocabulary isn't known yet on day one.- Create the agent definition. Copy
templates/agent-definition.md's template block toagents/<name>.md, filling in: Tier (<tier>), Repo path (runtime/<tier>/code/<name>/), Stack (from<type>if given, else a placeholder). Leave Role / Scope / Conventions / Definition of done as explicit placeholders for a human to fill — do not invent scope for a project that doesn't exist yet. - Create the task board. Copy
templates/task-board.md's template block todocs/tasks/<name>.md, with today's date inUpdated:and every section present but empty (Now,Next,Parked,Recently shipped). An empty board with the right structure is correct; a missing board is not —routestep 5 and every discipline indisciplines/durable-task-state.mdassume this file exists the moment a project is registered. - Optional: seed a knowledge pack. If the project already has code to describe (an existing
codebase being brought into the portfolio, not a from-scratch new project), copy
templates/knowledge-pack.md's block todocs/knowledge/<name>.mdand fill in what's already knowable (stack, directories, build/test commands) from reading the actual repo — never guess conventions from the project's name or type alone. For a genuinely new project with no code yet, skip this step; there's nothing to document until something exists. Completion gate. Before reporting onboarding done, verify all of:
runtime/<tier>/code/<name>/exists- a registry row for
<name>exists with the correct tier agents/<name>.mdexists with Tier + Repo path filled indocs/tasks/<name>.mdexists with all four sections present- (if step 7 ran)
docs/knowledge/<name>.mdexists
A project missing any of these is not onboarded — it's a partial state that will misroute the first requirement that names it. Report which checklist items are done and which are deliberately deferred (e.g. "Role/Scope left as placeholders — fill in before first dispatch").
Why this exists
Four files (runtime directory, registry row, agent definition, task board) have to exist together
for a project to be safely routable — a registry row with no task board means route step 5 has
nowhere to record the delegation; an agent definition with no registry row means nothing ever routes
here in the first place. Doing this by hand, project after project, is exactly the kind of
repeatable operation docs/skills.md says belongs in a skill instead of re-derived reasoning every
time. This is docs/portfolio.md §4's "registry + agent definition + task board" triad, made
mechanical, plus the runtime-directory step docs/repo-layout.md defines and a completion gate that
catches the partial-onboarding failure mode before it costs a misrouted requirement.
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.

