Assembler
Loom — a cross-harness, self-improving agent pack (OMP, Codex, Claude Code)
npx -y skills add dylanmccavitt/loom --skill assemblerAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 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
Sets a repository up for the Factorio workflow kit or refreshes its envelope by reading the repo and generating the repo-local envelope every other kit skill binds to, plus the harness wiring and repo-specific skills and agents. Use when setting up a repo for the kit or refreshing its tracker team/project/label map, domain glossary, build/test/lint commands, PR/issue/doc templates, or repo-specific skills and agents.
SKILL.md
4.9 KB, as published. Nobody here has run it
Assembler
The assembling machine that builds the machines: it lays out the per-repo factory the rest of the kit runs on. assembler reads a repo and stamps the repo-local envelope, wires the harness to it, and scaffolds the repo-specific tooling the kit needs there. It replaces the retired bootstrap trio — repo-workflow-bootstrap, workflow-kit, and setup-matt-pocock-skills — folding their machinery into one Factorio-framed, tracker-aware skill.
This skill writes only envelope, wiring, and scaffold files. It never creates tracker objects, branches, or PRs (prospect and blueprint (issue-decomposition lens) create planning objects; roboports writes code), and it asks the user only for facts no tool can supply.
The envelope
Canonical source: .agents/envelope/ in the target repo. It contains four human-authored Markdown bindings:
linear-map.md— which tracker team, project(s), labels, and workflow states map to this repo (including the triage roles → state/label map read byblueprint's triage lens), plus the bridge convention: the branch carries the tracked issue id; the PR auto-links and auto-closes the issue on merge.domain.md— the repo's domain glossary: nouns, bounded contexts, and the words specs and issues must use.commands.md— the real build / test / lint / run commands and the default branch.templates/— repo-local PR / issue / doc templates, stamped fromblueprint's canonicaltemplates/.
This Markdown envelope is the single binding point. .agents/envelope/ is the repo-local contract every kit skill reads instead of hardcoding a tracker; there is no runtime mirror or second source to edit. See ENVELOPE.md for the full shape of each binding.
Repo wiring
Once the envelope exists, wire the harness to it: add or update an ## Agent skills block in the repo's AGENTS.md (or CLAUDE.md if that is the one present — never create the other when one already exists) pointing the kit at .agents/envelope/.
Repo-specific skills and agents
Synthesize the tooling the envelope implies but the generic kit cannot carry — a <repo>-<capability> skill for a recurring domain workflow, or a reviewer agent scoped to the repo's real risk areas. Generate them under the repo's own .agents/skills/ and .agents/agents/, one level deep, each with a concrete Use when trigger and no harness prefix. See SCAFFOLD.md.
Workflow
- Read the repo. Detect stack, default branch, build/test/lint/run commands, existing docs/ADRs,
AGENTS.md/CLAUDE.md, and any prior.agents/envelope/. Uselist_teams,list_projects,list_issue_labels, andlist_issue_statusesto discover the tracker mapping. - Ask only for the gaps. Confirm the team/project and the label-to-state mapping the tools cannot infer. Never ask for anything the repo or the tracker already answers.
- Generate, create-missing-only. Write each envelope file that is absent; never clobber one that exists. Stamp
templates/fromblueprint's canonicaltemplates/, substituting the repo's real names; never copy placeholders verbatim. Wire the## Agent skillsblock. Scaffold the repo-specific skills/agents the envelope implies. - Verify. Cross-check the Markdown bindings agree and the envelope is complete before declaring the repo ready; see VERIFY.md. A refresh proposes a diff and asks before overwriting.
Invariants
- Never writes secrets. No tokens, keys, or credentialed URLs ever land in the envelope — record where a secret lives (the env var name), never its value.
- Create-missing-only. Generation never overwrites an existing envelope file; a refresh is an explicit, confirmed diff.
- Single binding point.
.agents/envelope/is the author-owned Markdown-only source for repo facts; there is no generated runtime mirror or second source. - Minimal diff. Stamp the least that makes the kit work and cite
biters' minimal-diff lens — never scaffold a file, skill, or agent no workflow reads.
Routing
- Setting up / refreshing repo facts, harness wiring, or repo-specific tooling lands here.
- "Create an issue" / "make tickets" →
blueprint(issue-decomposition lens). Assembler maps the tracker; it never opens issues. - Spec or template content →
blueprint(it owns the canonical templates assembler stamps). - A brand-new idea →
prospect.