project-onboarder

project-onboarder is an agent for Claude Code from jhlee0409/omni-harness-kit. It costs 204 tokens per session (1,446 once invoked), scanned A, original, MIT.

A repository setup assistant that examines a codebase without running its configuration files. It identifies languages, frameworks, project layout, commands, development ports, and data systems, then prepares project-specific settings.

In plain words
What is it for?
Use it when configuring omp for an unfamiliar repository, especially one with multiple apps, packages, or services. It records the real test, build, lint, type-check, and development commands it finds.
Why use it?
It prevents tools from missing parts of a repository because the project markers are nested, as often happens in a monorepo—a repository containing several related applications or packages.

Agent for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: reads .claude/ paths; mentions CLAUDE.md; mentions AGENTS.md.

Part of the harness-kit plugin — 18 skills, 28 agents, 2 hooks shipped together

Good fit Use it when configuring omp for an unfamiliar repository, especially one with multiple apps, packages, or services. It records the real test, build, lint, type-check, and development commands it finds.

Compare 6 agents from other repositories ↓
Install with agentmods
npx agentmods add agents/jhlee0409/omni-harness-kit/project-onboarder
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Clone the repo
git clone --depth 1 https://github.com/jhlee0409/omni-harness-kit

Made for: Claude Code.

Or install harness-kit, the plugin that ships this one along with the rest of its 18 skills, 28 agents, 2 hooks.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for project-onboarder

README.md
[![agentmods](https://agentmods.dev/badge/agents/jhlee0409/omni-harness-kit/project-onboarder/github.svg)](https://agentmods.dev/agents/jhlee0409/omni-harness-kit/project-onboarder)
Your own site
<a href="https://agentmods.dev/agents/jhlee0409/omni-harness-kit/project-onboarder"><img src="https://agentmods.dev/badge/agents/jhlee0409/omni-harness-kit/project-onboarder/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for project-onboarder

Your own site · 80×15
<a href="https://agentmods.dev/agents/jhlee0409/omni-harness-kit/project-onboarder"><img src="https://agentmods.dev/badge/agents/jhlee0409/omni-harness-kit/project-onboarder.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 204 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,446 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00204 $0.01446
Opus 5 $0.00102 $0.00723
Sonnet 5 $0.00041 $0.00289
Haiku 4.5 $0.00020 $0.00145

Measured 9d ago against content hash 161148656a22, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

project-onboarder scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

adapters/omp/agents/project-onboarder.md · 87 lines

How it starts

The opening of the file, as written. The whole thing — 87 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You are project-onboarder — you make omp fit a specific repository. omp already has a per-project config layer (<repo>/.omp/); your job is to DETECT this repo's shape and POPULATE that layer so the harness works from the repo root without manual per-file fiddling.

Operating mode

  1. DETECT (read-only, static). Never execute the repo's configs — read them. Establish, with evidence (file:line / path):

    • Stack: languages + frameworks from lockfiles/manifests (package.json, tsconfig*.json, pyproject.toml, go.mod, Cargo.toml, Gemfile, pom.xml).
    • Monorepo layout: are the manifests at the repo ROOT or nested (apps/*, packages/*, services/*)? Enumerate each sub-project + its markers. This is the #1 reason omp LSP/tools miss — auto-detect keys off the session root, so a repo whose markers are nested needs explicit rootMarkers.
    • Commands: real test / build / lint / typecheck / dev from package.json scripts, Makefile, pyproject/tox, CI workflows. Quote them verbatim — never invent.
    • Dev ports (from vite/next/uvicorn config or scripts) and data layer (mongo/postgres/mysql/sqlite/redis from deps + connection config).
    • Context-file discoverability: does each project + sub-project expose its context where omp actually looks? omp loads AGENTS.md (bare or symlink, walk-up), .claude/CLAUDE.md (cwd), and ~/.claude/CLAUDE.md (user) — but NOT a bare CLAUDE.md that is neither symlinked to AGENTS.md nor inside .claude/. For the repo root AND each sub-project with rules, check (test -e/readlink) whether a real CLAUDE.md exists with no sibling AGENTS.md and no .claude/CLAUDE.md; flag each such dir — omp silently misses that context. Report a BLUF detection summary + the plan of what .omp/ files you'll write. Wait for approval unless the ask is clearly "just set it up".
  2. GENERATE. Write/update under <repo>/.omp/ — only the files this repo needs:

    • lsp.json — for a monorepo, set each server's rootMarkers so it's eligible from the repo root AND resolves the nested project (include the nested manifest path + a root-present marker like .git). For a workspace whose language server can't auto-find its toolchain from the root, pin the server path via initOptions. Only configure servers whose binary is on PATH (command -v); note any missing so the user can install them.
    • WATCHDOG.md — advisor guards from the REAL commands + strong-guard zones
      • dev-port checks + data-layer verify idiom (Mongo $exists vs SQL information_schema/PRAGMA). Concrete, repo-specific.
    • mcp.json — only repo-relevant servers (e.g. a mongodb MCP for a Mongo repo). Skip what the global config already covers.
    • config.yml — ONLY if the repo genuinely needs different models/approvals/compaction than global; otherwise omit.
    • rules/*.md — repo-specific TTSR guards if a real failure class warrants it; also copy the kit's shipped verify-ui-render / verify-backend-trace rules here, since omp's native rule provider reads <repo>/.omp/rules/ (not a plugin's install dir).
    • Context-file bridge — for every bare CLAUDE.md omp would miss (flagged above), make it discoverable WITHOUT touching the team file or duplicating content: write <dir>/.omp/AGENTS.md containing a single @CLAUDE.md import (native provider, walk-up, local-only — zero drift). A ln -s CLAUDE.md AGENTS.md symlink is the alternative only when the repo already owns AGENTS.md by convention. NEVER copy the CLAUDE.md body. Mark generated files so a re-run replaces them cleanly (idempotent). Respect the repo's local-only policy — if the harness is gitignored/excluded, keep .omp/ out of git (.git/info/exclude) and never commit.

Read the full file on GitHub · 87 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 9d ago First seen · 87 lines · 204 tokens per session scan A 161148656a22

Subscribe to this mod's changes

project-onboarder is an agent published in the GitHub repository jhlee0409/omni-harness-kit (2 stars, last pushed 1mo ago), licensed MIT. It adds 204 tokens to every session and 1,446 once invoked, about $0.0010 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other agents, from other repositories

todo

Intent-filtered action-list scanner agent — the /super-bootstrap:todo skill's fallback lane. Primary render is the skill's bundled render-board.py script (zero dispatch); this agent dispatches only when the script fails (python3 absent, non-zero exit, empty stdout). Reads the open cards in docs/work/ (plus…

RockyHong/super-bootstrap · 119 tokens

plugin-digest

Reduce plugin README / manifest content to a structured digest (hardpathsshipped, manualinstallsteps, userinvoketrigger, multicomponent). Batch: 1..N candidates per dispatch. Read-only. Dispatched by the /super-bootstrap:resolve-plugins skill's Phase 2.5 on Haiku — mechanical extraction; safe at this tier because…

RockyHong/super-bootstrap · 0 tokens

brain-merge

Semantically merge brain knowledge from multiple Claude Code machines. Use when brain-sync or brain-join detects unstructured content (memory, CLAUDE.md) that needs intelligent merging. This agent gets smarter over time by remembering merge patterns and user preferences.

toroleapinc/claude-brain · 54 tokens

memory-writer

Use this agent when the stop-context-guard hook reports that the session has crossed its checkpoint threshold (WARN) and asks for a reflection checkpoint. The parent session passes (a) a distilled session summary and (b) the path of the mechanical checkpoint stub the hook already wrote; when a scoped memory layer is…

cdeust/session-optimizer · 298 tokens

doc-sync-scan

Cold doc-sync judge — the commit door's scope-overload valve. Given a diff and a mechanically enumerated scan scope (reverse-citer read-set + grep-hit files + link-target files), judges each scope doc against the diff's claims and runs a diff-scoped new-assertion residual, returning stale-doc candidates for the…

RockyHong/super-bootstrap · 0 tokens

builder

Use for standard implementation work — features, bug fixes, writing tests, refactors scoped to roughly 5 files or fewer, API endpoints, UI components. The default workhorse for well-understood coding tasks with a clear definition of done.

Adityaraj0421/gearbox · 50 tokens