license

SKILL.md

License Checks

Check and fix license compliance using skywalking-eyes. Two CI jobs use this tool:

  1. license-header — verifies all source files have Apache 2.0 headers
  2. dependency-license — verifies the LICENSE file matches current dependencies

Steps

Header check (default, or check argument)

license-eye header check
  • All valid: Output shows valid: N, invalid: 0 — nothing to do.
  • Invalid files found: Fix with license-eye header fix, then re-check.

Header fix (fix argument)

license-eye header fix
license-eye header check

Dependency license check (deps argument)

This regenerates the LICENSE file from dependency metadata and checks for drift:

license-eye dependency resolve --summary ./dist-material/release-docs/LICENSE.tpl || exit 1
if [ ! -z "$(git diff -U0 ./dist-material/release-docs/LICENSE)" ]; then
  echo "LICENSE file is not updated correctly"
  git diff -U0 ./dist-material/release-docs/LICENSE
fi

If the LICENSE file changed, review the diff and commit it. Important: CI runs on Linux — some dependencies have platform-specific variants. If you're on macOS/Windows, the LICENSE diff may be a platform artifact. Verify before committing.

Rules

Configuration is in .licenserc.yaml:

  • Java, XML, YAML/YML files require Apache 2.0 headers
  • JSON and Markdown files are excluded (JSON doesn't support comments)
  • Generated files and certain vendor paths are excluded
  • SPI service files (META-INF/services/) require headers (use # comment style)

Installation

# Same version as CI (pinned commit)
go install github.com/apache/skywalking-eyes/cmd/license-eye@5b7ee1731d036b5aac68f8bd3fc9e6f98ada082e

# Or via Homebrew (macOS)
brew install license-eye
Weekly Installs
1
GitHub Stars
24.7K
First Seen
3 days ago
Installed on
amp1
cline1
opencode1
cursor1
kimi-cli1
codex1