Skip to content
Back to skills

License

ASecurity

Decide what may be carried over from a prey repository under its license. Modes are COPY, COPY_FILE, REIMPLEMENT, IDEAS_ONLY and HUMAN. Use when a nutrient's license mode is unclear, when asked whether code or configs from another repository may be copied, or when a sniff verdict says HUMAN. Do not use to choose the maw's own license, for general legal advice, or for licensing questions unrelated to prey-to-maw transfer.

  • 4 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added September 19, 2026
developmentawsdocumentation

Works with

  • cli

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 1, 2026

npx -y skills add drevendev/HungryCrab --skill license --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of License?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for License
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/drevendev-license/badge)](https://www.skillsdirectory.com/skills/drevendev-license)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: license
description: Decide what may be carried over from a prey repository under its license. Modes are COPY, COPY_FILE, REIMPLEMENT, IDEAS_ONLY and HUMAN. Use when a nutrient's license mode is unclear, when asked whether code or configs from another repository may be copied, or when a sniff verdict says HUMAN. Do not use to choose the maw's own license, for general legal advice, or for licensing questions unrelated to prey-to-maw transfer.
---

# License rules

The verdict is produced by a deterministic engine (`crab sniff`, `license.json` in a digest).
Your job is to apply the mode, explain it, and stop when the engine says `HUMAN`.

## Modes

| Mode | Allowed | Required |
|---|---|---|
| `COPY` | copy code, configs and text | keep the copyright notice; publish through `crab serve --as pr-branch` with a materialization receipt (the `serve` skill), which records the source in `.crab/attributions.json` and renders `THIRD_PARTY_NOTICES.md`; Apache-2.0 also needs the NOTICE file's attribution notices carried over |
| `COPY_FILE` | copy whole files (MPL-2.0, EPL, CC-BY-SA documents) | the file keeps its own license header; do not merge it into files under the maw license; every file in the receipt is verbatim |
| `REIMPLEMENT` | use the prey as a specification | clean room: a spec without code, then the `crab-cleanroom-impl` subagent without prey-cache access; record "implemented from a specification" in the trace |
| `IDEAS_ONLY` | ideas, architecture, approaches, facts | not a line of code, configuration or documentation text |
| `HUMAN` | nothing yet | a person decides; present the evidence (`license.json`: files, manifests, headers, conflicts) |

## Rules that override the matrix

1. Issue, discussion and pull-request comment text is always `IDEAS_ONLY`: the copyright belongs
   to the commenters. Carry over the need and a link, not the text. The CLI enforces this from
   content origin, records the origin and cap reason in the nutrient trace, and `crab serve`
   carries that trace into the served issue; do not recalculate the cap by hand. The cap
   rewrites the card's title and `what`; your `why` and `how` are yours to keep clean, and
   `crab serve` refuses a card of any origin but `licensed` whose notes quote one of the prey's
   issue titles, in any punctuation or case, or whose notes cannot be checked.
2. Configuration files and small snippets are not automatically free: same mode as code.
3. **`strict` mode is not implemented yet, and must not be applied by hand.** `.crab.yml` accepts
   `mode: strict` and the engine ignores it: no verdict changes. Do not perform that downgrade
   yourself. Explicit `REIMPLEMENT` nutrients now have a clean-room destination, but that does not
   authorize an agent to invent a `REIMPLEMENT` verdict for an ignored strict setting. When strict
   lands, the deterministic engine must make the downgrade before the clean-room protocol is used.
4. Per-file exceptions in `license.json` (vendored directories, headers with another SPDX id)
   override the repository license for those files.
5. **No license at all is `IDEAS_ONLY` with human review, not `HUMAN`.** `HUMAN` is only for a
   license that was read and could not be classified. The two ask for different things: under
   `IDEAS_ONLY` the need and the facts may still travel, under `HUMAN` nothing may until a person
   answers.
6. **Review is a flag, not a mode.** A conflict between the LICENSE file and a manifest does not
   change the verdict — the mode still comes from the detected license, and the digest records
   the conflict in `license.json` under `conflicts` with `human_review: true` beside it. Read
   both: `human_review` is also true for a source-available license, whose mode is `IDEAS_ONLY`.

## How to compute a mode

- `crab sniff <prey> --maw .` prints the mode for this maw.
- `license.json` in the prey digest has `modes_by_maw_class` (permissive, gpl, proprietary maws)
  and `verdict` when a maw license was known at digest time.
- The full matrix is in `references/matrix.md`.

This is a compliance aid, not legal advice; say so when the user asks about an edge case.

Files in this skill

  • SKILL.md3.3 KB
  • references/matrix.md3.3 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.