SkillAgentSearch skills...

Addlicense

A program which ensures source code files have copyright license headers by scanning directory patterns recursively

Install / Use

/learn @google/Addlicense
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

addlicense

The program ensures source code files have copyright license headers by scanning directory patterns recursively.

It modifies all source files in place and avoids adding a license header to any file that already has one.

addlicense requires go 1.16 or later.

install

go install github.com/google/addlicense@latest

usage

addlicense [flags] pattern [pattern ...]

-c      copyright holder (default "Google LLC")
-check  check only mode: verify presence of license headers and exit with non-zero code if missing
-f      license file
-ignore file patterns to ignore, for example: -ignore **/*.go -ignore vendor/**
-l      license type: apache, bsd, mit, mpl (default "apache")
-s      Include SPDX identifier in license header. Set -s=only to only include SPDX identifier.
-v      verbose mode: print the name of the files that are modified
-y      copyright year(s) (default is the current year)

The pattern argument can be provided multiple times, and may also refer to single files. Directories are processed recursively.

For example, to run addlicense across everything in the current directory and all subdirectories:

addlicense .

The -ignore flag can use any pattern supported by doublestar.

Running in a Docker Container

The simplest way to get the addlicense docker image is to pull from GitHub Container Registry:

docker pull ghcr.io/google/addlicense:latest

Alternately, you can build it from source yourself:

docker build -t ghcr.io/google/addlicense .

Once you have the image, you can test that it works by running:

docker run -it ghcr.io/google/addlicense -h

Finally, to run it, mount the directory you want to scan to /src and pass the appropriate addlicense flags:

docker run -it -v ${PWD}:/src ghcr.io/google/addlicense -c "Google LLC" *.go

Running with pre-commit

This is the official pre-commit hook for addlicense.

Activate by adding it to your .pre-commit-config.yaml:

repos:
- repo: https://github.com/google/addlicense
  rev: <latest tag>
  hooks:
  - id: addlicense
    args: [ "-c", "Company, Inc", "*.go" ]

license

Apache 2.0

This is not an official Google product.

View on GitHub
GitHub Stars872
CategoryDevelopment
Updated3h ago
Forks191

Languages

Go

Security Score

100/100

Audited on Mar 27, 2026

No findings