Assimilate repo
Skill eugenelim/agent-ready-repo/.agents/skills/assimilate-repo
The complete AI operating model for software teams — from first idea to production. Three peer-supervised loops (discovery → build → release) over a catalogue of curated packs: skills, subagents, and hooks, each installed in one line. It's npm for your coding agent. Any agent, any stack — Claude Code, Codex, Cursor, Copilot, Gemini, Kiro.
npx -y skills add eugenelim/agent-ready-repo --skill assimilate-repoAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 14 stars14 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Use to survey a whole external repo or catalogue (local path or URL) for ingestion candidates and produce a reviewable RFC of per-candidate verdicts (assimilate, reject, or needs-new-pack), resumable across sessions and git worktrees via a ledger. Triggers on "survey this repo for skills we can adopt", "inventory this catalogue", "what can we assimilate from <repo>", "re-sync from <upstream>". Do NOT use for a single known unit (use assimilate-primitive) or to scaffold a proposed pack (use propose-catalogue-pack).
SKILL.md
5.2 KB, as published. Nobody here has run it
Skill: assimilate-repo
Survey a whole external repo or catalogue and turn it into a reviewable
RFC of per-candidate verdicts — resumable, idempotent, and safe under parallel
git worktrees. It reuses assimilate-primitive's per-unit safety + craft for
each assimilate verdict; its own job is the survey, the ledger, and the RFC.
Output rendering
Table — When presenting several items that share the same fields, render a Markdown table. Cap at ~5 columns; beyond that, switch to a per-item detail list. Right-align numeric columns. Status list — Lead each row with a status glyph — ● running, ✓ done, ○ idle, ⚠ blocked — status first, one item per line, labels aligned. Rationale / narrative — Use short ## headings and 2–3 sentence paragraphs. Don't force narrative into a table.
Procedure
- Establish the charter anchor. Read
docs/CHARTER.mdfrom the running catalogue if present; extract the mission and scope (the## Domainsection if present, else## Mission+## Scope). Show the operator a one-line summary: "Anchoring verdicts against: [catalogue-name] — [domain summary]. Override?" Accept: a path to a different CHARTER.md (the target catalogue's charter), or an inline mission statement (one phrase or sentence — the skill expands it into a working scope anchor). Ifdocs/CHARTER.mdis absent, elicit before proceeding: "What is this catalogue for? One phrase, sentence, or path to a CHARTER.md." The charter anchor governs all verdicts: a candidate is in scope if its function fits the mission; otherwisereject. Run from inside the target catalogue for correct anchoring — see workflow note below. - Fetch the source, SSRF-guarded — same allowlist as
assimilate-primitive(https/git/sshonly; rejectfile:/ftp:and private/metadata ranges). Seereferences/survey-and-ledger.md. - Open (or resume) the ledger. State lives at
~/.agentbundle/catalogue-curation/<run-id>/ledger.toml, where<run-id>is a deterministic hash of the source + a per-installation salt (no per-run stamp) — so a resumed run and a sibling worktree derive the same run-id and share one append-only ledger. A re-run skips candidates already markeddone. - Inventory candidates and assign a verdict each, iteratively (one
reviewable verdict at a time, appended to the ledger):
assimilate(names the destination pack),reject(terse reason — no verbatim source content), orneeds-new-pack. Keep the ledger's reason field bounded; it is scratch, never committed, purged on completion. - Emit an RFC capturing the inventory + verdicts — a reviewable proposal,
not a silent commit. When any
needs-new-packverdict appears, offer the hand-off topropose-catalogue-pack— describe what needs a pack and let the operator choose. Never auto-invoke it. - Incremental re-sync. Re-pointing at a source assimilated before is a
diff, not a fresh run: the durable per-source marker
(
sources/<source-hash>/last-synced.toml, dated append, exempt from the completion purge) classifies each candidateunchanged(skip) /changed/new. The git commit log is the time-of-sync record — no parallel log. Record the re-sync on the prior source-RFC via RFC-0055's forms: an Amendment if it's Open; an Erratum if Frozen + a genuine correction; a new RFC (recorded as an Erratum entry naming it on the prior) if Frozen + new candidates or reversed verdicts. Detail:references/re-sync.md.
Never do
- Write under this repo's
packages/agentbundle/**orpacks/credential-brokers/**(RFC-0059 D6) — those change only through a separate human-authored RFC. - Auto-invoke
propose-catalogue-pack— always offer with prepared context. - Commit the ledger, let it travel in an export, or record verbatim source content / rejection prose in it.
- Bypass
assimilate-primitive's per-unit safety (raw-body review, code confirm, repo lints/scanners, AST01-AST10 agentic-skills security review,safety.write_jailed) for anassimilateverdict.
Canonical workflow
Run assimilate-repo from inside the target catalogue, not from the source.
If you are starting a new or derived catalogue, use agentbundle catalogue init
(or --preset self-hosted for an enterprise-derived catalogue) first — it
establishes the catalogue scaffold and installs curation tools before you start
surveying. Running from the source catalogue anchors verdicts against the wrong
charter.
Repo-scope; not in any default profile.