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.
npx skills add event4u-app/agent-config --skill license-compliance-borrow-checkgit clone --depth 1 https://github.com/event4u-app/agent-configWrote 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/event4u-app/agent-config/license-compliance-borrow-check)<a href="https://agentmods.dev/skills/event4u-app/agent-config/license-compliance-borrow-check"><img src="https://agentmods.dev/badge/skills/event4u-app/agent-config/license-compliance-borrow-check/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/event4u-app/agent-config/license-compliance-borrow-check"><img src="https://agentmods.dev/badge/skills/event4u-app/agent-config/license-compliance-borrow-check.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 2 findings, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium MCP Rug Pull · line 56 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 90 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
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.00043 | $0.01854 |
| Opus 5 | $0.00022 | $0.00927 |
| Sonnet 5 | $0.00009 | $0.00371 |
| Haiku 4.5 | $0.00004 | $0.00185 |
Grade A, and why
license-compliance-borrow-check 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 8d 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.
How it starts
The opening of the file, as written. The whole thing — 146 lines — stays where its author put it; the contents beside it link to each section on GitHub.
license-compliance-borrow-check
When to use
- Before adapting, porting, or otherwise consciously reusing an algorithm, a non-trivial structure, or more than roughly ten lines of logic shape from a source you can name (a repo, a gist, a Stack Overflow answer).
- The
code-provenancerule fired and its step 3 ("check license compatibility") needs a concrete answer. - A reviewer or the
origin: uncertainself-flag surfaces a borrow that was never checked.
Do NOT use when:
- No conscious borrow happened — a well-known, unpatentable algorithm shape (a for-loop, a hash map) implemented with no specific source in mind.
- The borrow is already ledgered with a valid entry — use
license-compliance-creditsto regenerate notices instead. - You want a broad similarity scan across the repo, not one source — use
license-compliance-audit.
A passing verdict is not a copying clearance
This skill answers ONE question: is the source's license compatible with
this repo's license, under the derived compatibility policy? An allow
verdict means the license permits the reuse — it says nothing about whether
the code-provenance discipline (read,
close the source, re-derive against house standards) was actually followed.
License-clean code that is still a verbatim copy is still a violation of
that rule. Run both checks; treat neither as a substitute for the other.
Procedure
- Identify the source — the URL or repo path being borrowed from, and
the exact commit or blob SHA the snippet was taken from (
git log -1 --format=%H -- <path>on the source repo, or the URL's own commit ref). - Detect the source's license. Check, in order: a
LICENSE/LICENSE.md/COPYINGfile at the source repo root; the source'spackage.json"license"field; itscomposer.json"license"field; an SPDX header comment in the file itself. If none resolve to a known SPDX id, the license isunknown— never guess permissive. - Detect this repo's target policy. Run:
Ifnpx tsx node_modules/@event4u/agent-config/src/scripts/detect_target_license.ts . --jsonlicense-policy.yamlexists at the repo root, read itspolicy.{allow,conditional,deny}buckets directly. If it does not (dry run only), derive the same buckets by hand from this repo's ownLICENSEfile and the compatibility matrix innode_modules/@event4u/agent-config/src/scripts/_lib/detect_target_license.ts(COMPATIBILITY_MATRIX/classifyBorrow). - Classify the borrow. Map the source's SPDX id to its source class
(permissive / weak-copyleft / gpl-2.0 / gpl-3.0 / agpl / sspl /
unknown), then read the verdict off the target's policy buckets:allow,conditional(escalate), ordeny. A source license ofunknownis alwaysdeny— no exception. - Act on the verdict:
allow→ continue to step 6 (draft the ledger entry).conditional→ STOP. Do not write the borrowed code yet. Escalate to the user with the exact matrix cell that triggered it (perask-when-uncertain) — never auto-clear a conditional verdict.deny→ refuse the borrow. Name the alternative: write it from scratch, find a permissively-licensed equivalent, or ask the maintainer for an explicit, recorded exception.
- Draft the ledger entry — one JSON object matching
node_modules/@event4u/agent-config/src/scripts/schemas/provenance-borrow.schema.json(source_url,license,source_sha,borrowed_at,files,transformation_note,cleared_by). Write atransformation_notethat names a real structural change — rename-only phrasing (e.g. "renamed variables", "cosmetic rename") is rejected bylint_provenance.tseven if the code has not landed yet, so draft it honestly against what will actually change. - Present the draft to the user before appending it. Once the
re-derived code lands, append the confirmed entry to
provenance/borrows.jsonland verify:
Exit 0 confirms the entry is schema-valid, license-compliant, and its transformation note passed the rename-only phrase check.npx tsx node_modules/@event4u/agent-config/src/scripts/lint_provenance.ts
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 8d ago First seen · 146 lines · 43 tokens per session scan A 19ef2b4dde0a
license-compliance-borrow-check is a skill published in the GitHub repository event4u-app/agent-config (10 stars, last pushed today), licensed MIT. It adds 43 tokens to every session and 1,854 once invoked, about $0.0002 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-09-04.
Other skills, from other repositories
telnyx-email-suppressions-curl
Manage email suppressions (blocks), import and export suppression lists, and manage unsubscribe groups. Use for deliverability compliance and bounce handling.
healthcare-providers-verify
Validates practitioner credentials and license status against the NPI registry. Cross-references specialties, credentials, and practice addresses against official records. Returns Verified / Partially Verified / Unverified / Flagged per practitioner with mismatch details and source URLs. Triggers: "verify these…
python-packaging-license-finder
Use this skill to deterministically find license information for Python packages by checking PyPI metadata first, then falling back to Git repository LICENSE files using shallow cloning.
patent-review
Multi-round cyclic rigorous review of Chinese patent technical disclosure documents. Supports multi-dimension review (data flow closure, terminology consistency, state transition, formula completeness, error code routing, text-diagram consistency), round-by-round convergence, and optional auto-fix (default off, severe…
template-redacted-report
Redacted release-report exemplar for classification ceilings, source protection, source-safe ledgers, reviewer gates, and mosaic-risk checks.
disclosure-page-generator
When the user wants to create, optimize, or audit an affiliate, sponsor, or paid partnership disclosure page. Also use when the user mentions "disclosure," "affiliate disclosure," "sponsored content," "FTC disclosure," or "paid partnership." For sitewide page planning, use website-structure.