Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/terrene-foundation/kailash-coc-claude-pynpx agentmods add skills/terrene-foundation/kailash-coc-claude-py/43-ecosystem-initWrote 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.
[](https://agentmods.dev/skills/terrene-foundation/kailash-coc-claude-py/43-ecosystem-init)<a href="https://agentmods.dev/skills/terrene-foundation/kailash-coc-claude-py/43-ecosystem-init"><img src="https://agentmods.dev/badge/skills/terrene-foundation/kailash-coc-claude-py/43-ecosystem-init/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.
<a href="https://agentmods.dev/skills/terrene-foundation/kailash-coc-claude-py/43-ecosystem-init"><img src="https://agentmods.dev/badge/skills/terrene-foundation/kailash-coc-claude-py/43-ecosystem-init.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00042 | $0.03328 |
| Opus 5 | $0.00021 | $0.01664 |
| Sonnet 5 | $0.00008 | $0.00666 |
| Haiku 4.5 | $0.00004 | $0.00333 |
Grade A, and why
43-ecosystem-init scanned grade A with 1 finding 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.
Runs shell commandslowCapability
Expected in a hook, worth knowing in a rule or an instructions file.
The enroll driver is a single `node` invocation; its internal signing is `child_process`, not the Bash How it starts
The opening of the file, as written. The whole thing — 222 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/ecosystem-init — Ecosystem Onboarding Procedure
The procedure backing .claude/commands/ecosystem-init.md (the once-per-fork ecosystem ceremony). The
command body holds the five load-bearing invariants + the ceremony order; this skill holds the
step-by-step procedure, the input prompts, the D6 schema field set, and the exact tool-call shapes.
Three onboarding surfaces (the core distinction — rules/enrollment-operations.md):
| Surface | Moment | Writes | Frequency |
|---|---|---|---|
/onboard |
every session entry | NO (read-only) | every session |
/enroll |
a human joins an ecosystem | roster + local-links | once / operator |
/ecosystem-init |
a fork's first setup | ecosystem-config + genesis trust-root | once / fork |
Ceremony order: C1 → C3 → C2 → C4 → C5
Ordered per Q4: the registry defines the org, genesis anchors TO that org, the remaining params fill in.
C1 — write the ecosystem-shared remote-links registry
- Collect the NAME→remote bindings for this ecosystem's logical keys. The keys are EXACTLY the
resolver keys (
artifact-flow.md§ "Repo Classes Map 1:1 To Resolver Logical Keys"):build.py/build.rs/build.prism,use-template.{py,rs,claude-py,claude-rs},loom,atelier,downstream.<slug>. Each binds to{ "org": "<org>", "repo": "<repo>" }. - Disclosure-scan BEFORE write (invariant 1). The registry names real org slugs:
Exit 0 → proceed. ANY finding (exit non-zero) → HALT; genericize/relocate the offending content and re-scan. NEVER write the config before a clean scan. (node .claude/bin/scan-synced-disclosure.mjs --check --root "$(git rev-parse --show-toplevel)"ecosystem.jsonis scanner-self-excluded when scanning its OWN source repo —REPO_ROOT_ACTIVE === REPO_ROOTperscan-synced-disclosure.mjs:215, which is the C1 case — so the scan covers the surrounding synced surface, not the config's own org slugs; those are fenced by path, not by scrub. A DESTINATION--rootscan of a DIFFERENT repo DOES scan a strayecosystem.json, failing loud on bare slugs — the belt-and-suspenders backstop (the destination-mode consequence of D6 §4 fence-iv'sisExcluded()source-gate, not a separate fence).) - Human-gate the org slugs (invariant 2). Present each slug; for a CLIENT fork confirm each points at the CLIENT's org, never canon's. Automated placement is BLOCKED — a fork AUTHORS its own config.
- Write the
remote_linksblock of.claude/bin/ecosystem.json(schema below). The reader isecosystem-config.mjs::getRemoteLink(key); the join isloom-links.mjs::resolveRemote(key).
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.
- 9d ago First seen · 222 lines · 42 tokens per session scan A e909b1641611
43-ecosystem-init is a skill published in the GitHub repository terrene-foundation/kailash-coc-claude-py (12 stars, last pushed 24d ago), licensed Apache-2.0. It adds 42 tokens to every session and 3,328 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (runs shell commands). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
recipe-create-meet-space
Create a Google Meet meeting space and share the join link.
atmos-config
Atmos root configuration: atmos.yaml discovery, precedence, deep merging, basepath, imports, minimal bootstrap, and routing to narrower Atmos skills.
workthreads
SpecStory Workthreads - a weekly work-thread rollup across a team's repos from SpecStory coding histories (any agent - Claude Code, Codex, Cursor, Gemini, and more). It groups the window's sessions into threads of work per project and labels each new / open / recently closed, so a lead sees what shipped, what is still…
story-readiness
Validate that a story file is implementation-ready. Checks for embedded GDD requirements, ADR references, engine notes, clear acceptance criteria, and no open design questions. Produces READY / NEEDS WORK / BLOCKED verdict with specific gaps. Use when user says 'is this story ready', 'can I start on this story', 'is…
projects
List all managed projects with status, branch, open PRs, and open issue counts — portfolio-level view.
magpie-security-issue-import-from-md
Open one or more tracking issues from a markdown file containing a batch of security findings. Each finding becomes one tracker landing in the Needs triage board column. The file itself is the full report — there is no inbound reporter to reply to and no PR to inspect.