# Licences & attribution

Every component in JustClaw-It is open-source code written by someone else. You can reuse it under its **original licence**, and that licence usually asks for one thing above all: keep the copyright and licence notice. JustClaw-It's job is to make that easy by putting the licence and attribution on every result.

## What the public library serves

- **Permissive** licences (for example MIT, BSD, Apache-2.0, ISC) and **weak copyleft** (for example MPL-2.0).
- **Excluded:** strong copyleft (GPL, AGPL), code with no clear licence, and repositories whose licence has not been checked. A repository with no licence record is left out, not let in.
- Licence data is refreshed from the source repositories every month.

## What every result tells you

| field | meaning |
| --- | --- |
| `license` | SPDX identifier, for example `MIT` |
| `license_kind` | `permissive` or `weak-copyleft` |
| `attribution.repo_url` | the source repository |
| `attribution.copyright_holder` | who holds the copyright, when it could be read |
| `attribution.copyleft_flag` | true for copyleft licences |
| `attribution.text` | a ready-made attribution line |
| `source_url` | GitHub permalink to the file |

## The attribution header

Source returned by `get_component` starts with a comment block. Its first line is the component's attribution text (source repository and licence, plus the copyright holder where known), and the comment style follows the file type. Roughly:

```text
// Source: https://github.com/<owner>/<repo> | License: MIT
// Provided via justclaw.it.com; keep this notice with the code.
```

For weak-copyleft files there is one more line: modifications to that file must stay under its licence.

## What you need to do

1. **Keep the header** in every file that contains pulled code, even after you adapt it.
2. **Ship the licence text where the licence requires it.** MIT and BSD require the copyright and permission notice in copies of the software; Apache-2.0 also asks you to keep any NOTICE file and mark changed files. A `THIRD_PARTY_LICENSES` (or NOTICE) file that lists each component, its repository, licence and copyright holder covers this. `list_licenses` and [/licenses](/licenses) give you that list for the whole library.
3. **For weak-copyleft files** (MPL-2.0 and similar), keep modifications to that file under the same licence and keep it as a separate file.
4. **Filter up front** when the code goes into a closed product: `license: "permissive"` on `search_components` returns permissive code only.

The [`justclaw-it-pull` skill](/docs/skills) does steps 1 and 2 for your agent.

## Limits of the data

Licence data is collected automatically from each repository's licence files and metadata. We work to keep it right but can't guarantee it, and a repository's licence can change. You are responsible for licence compliance in what you ship (see the [terms](/terms)); check the licence of anything important.

## Takedowns

If you own code in the library and want it removed, or think it is listed under the wrong licence, email mike+mcpsupport@two7.design with the repository URL. We review and act promptly.
