Przejdź do treści
Biblioteka skilli
Prawo i compliance · Przegląd i audyt

license-audit

/license-audit

Audytuje licencje open source każdej bezpośredniej zależności projektu przed wydaniem, oznaczając GPL i AGPL jako zablokowane, a nieznane jako ostrzeżenie.

Repozytorium
nanostack ↗
Licencja
Apache-2.0
Ostatnia zmiana repozytorium
10.09.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
4
Skrypty
2
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 10.09.2026, bez odwołań do wycofanych modeli i API.

Licencja

Apache-2.0, otwarta: można używać i zmieniać, z zachowaniem licencji i informacji o zmianach.

Co sprawdzić przed instalacją
  • 2 skrypty w paczce. Przejrzyj je przed instalacją, bo Claude może je uruchomić.

Skrypty: bin/audit.sh, bin/smoke.sh

Co robi i kiedy

Audytuje licencje open source każdej bezpośredniej zależności projektu przed wydaniem, oznaczając GPL i AGPL jako zablokowane, a nieznane jako ostrzeżenie.

Oryginalny opis (EN)

Use to audit the open-source licenses of every direct dependency in this project before shipping. Flags GPL/AGPL as BLOCKED, unknown as WARN. Triggers on /license-audit.

Jak działa

  1. Process
  2. Gotchas
Sekcje z nagłówków SKILL.md, w oryginale · 54 linii, 325 słów
Podgląd SKILL.md
---
name: license-audit
description: Use to audit the open-source licenses of every direct dependency in this project before shipping. Flags GPL/AGPL as BLOCKED, unknown as WARN. Triggers on /license-audit.
concurrency: read
depends_on: [build]
summary: "License compliance check across npm/pip/go dependencies, part of the compliance-release stack."
estimated_tokens: 200
---

# /license-audit — Dependency License Audit

You audit the open-source licenses of this project's dependencies. The point is compliance: some licenses (GPL, AGPL) force the project that uses them to be open-source under the same terms. This skill runs before `/release-readiness` so the gate has license evidence to compose.

This is the `license-audit` skill from the compliance-release stack. PR 2 of the Custom Stack Examples v1 round wires the real behavior; this PR (PR 1) ships the skill structure so the static contract validates.

## Process

### 0. Resolve paths (host-agnostic)

```bash
NANOSTACK_ROOT="${NANOSTACK_ROOT:-$HOME/.claude/skills/nanostack}"
SKILL_DIR="${SKILL_DIR:-$HOME/.claude/skills/license-audit}"
```

Some agents (including Claude Code) execute each tool call in a fresh bash process, so each snippet redefines the env vars it uses.

### 1. Run the audit

```bash
SKILL_DIR="${SKILL_DIR:-$HOME/.claude/skills/license-audit}"
"$SKILL_DIR/bin/audit.sh"
```

The helper detects the project stack (npm, pip, go) from manifest files, classifies each direct dependency's license into a family (permissive, weak copyleft, strong copyleft, unknown), and prints a JSON object with counts and a `flagged` list.

### 2. Save the artifact

```bash
NANOSTACK_ROOT="${NANOSTACK_ROOT:-$HOME/.claude/skills/nanostack}"
"$NANOSTACK_ROOT/bin/save-artifact.sh" license-audit \
  '{"phase":"license-audit","summary":{"status":"OK","headline":"...","counts":{...},"flagged":[]},"context_checkpoint":{"summary":"License audit completed.","key_files":["package.json"]}}'
```

Status rules:
- `OK` — every direct dependency has a known permissive or weak-copyleft license.
- `WARN` — at least one license is `unknown`. The composer in `/release-readiness` rolls this up.
- `BLOCKED` — at least one direct dependency is GPL or AGPL.

### 3. Headline

```
[license-audit] OK: 12 deps scanned, 0 GPL/AGPL flagged.
```

Use `WARN` or `BLOCKED` instead of `OK` when the status field above is not OK.

## Gotchas

- This skill walks **direct dependencies only**. Transitive dependencies are out of scope; pair with a deep auditor if your compliance bar requires that.
- "Unknown license" means the manifest declares the package but no license metadata is parseable from the manifest itself. Unknown is treated as `WARN`, not `OK`. The user decides whether to upgrade or replace.
- This skill never rewrites your code, edits package.json, or runs `npm install`. It is read-only.
Pliki w paczce (4)
  • SKILL.md 3 KB
  • agents/openai.yaml 1 KB
  • bin/audit.sh 6 KB
  • bin/smoke.sh 5 KB

Wersje

W bazie nie ma innych skilli o nazwie license-audit.

Migawka bazy z 28.10.2026 · wersja paczki 00914994363f (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100audit-licenses
    Wylicza licencje open source wszystkich zależności projektu, grupuje je w rodziny licencji i oznacza GPL oraz AGPL, które mogą wymusić otwarcie kodu projektu.
  • 90scope-oss
    Audytuje zgodność licencji open source i wskazuje ryzyka copyleft związane z GPL, LGPL i AGPL.
  • 100open-source-license
    Doradza w wyborze licencji open source, sprawdza ich zgodność i zgodność projektów z OSS, generuje pliki LICENSE i NOTICE oraz wyjaśnia licencje MIT, Apache, GPL, BSD, LGPL i AGPL.
  • 100license-check
    Analizuje licencje pakietów: wykrywa konflikty copyleft względem polityki permisywnej, wskazuje zanieczyszczenia AGPL, SSPL i GPL oraz tworzy SBOM w SPDX z ustaleniami o licencjach.
  • 90software-licensing-stinger
    Wyjaśnia licencje oprogramowania i przygotowuje dowody artefaktów do przeglądu dystrybucji copyleft lub komercyjnej: noty licencyjne, granice GPL i AGPL.
  • 100open-source-license
    Pomaga wybrać licencję open source, sprawdzić kompatybilność licencji, ocenić zgodność projektu z OSS i przygotować pliki LICENSE i NOTICE, w tym dla licencji copyleft i permisywnych.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.