Ctrl K
ComunidadGuías…

THIRD-PARTY-NOTICES.md

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# Third-Party Notices

Crewship itself is licensed under Apache-2.0 — see [LICENSE](./LICENSE).

Crewship would not exist without the work of hundreds of upstream maintainers.
This file is the formal acknowledgement and license attribution for every
third-party package the binary and the embedded UI ship with.

## Embedded data

`internal/modelcatalog/data/models.dev.json` is a trimmed snapshot of the
[models.dev](https://github.com/anomalyco/models.dev) provider/model catalogue.
It is distributed under the MIT License:

> Copyright (c) 2025 models.dev
>
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
> SOFTWARE.

## Mooring canonical JSON

Mooring imports [`github.com/gowebpki/jcs` v1.0.2](https://github.com/gowebpki/jcs/tree/v1.0.2),
licensed under Apache-2.0. Copyright 2021–2026 Bret Jordan & Benedikt Thoma;
copyright 2006–2019 WebPKI.org. The [exact upstream license](internal/mooring/licenses/jcs-v1.0.2-LICENSE.txt)
is retained with the [version and parser audit](internal/mooring/licenses/README.md).

## Offline Slides PDF foundation

The standalone Slides PDF renderer uses
[`github.com/signintech/gopdf` v0.38.3](https://github.com/signintech/gopdf/tree/v0.38.3)
(tag `072bc5c7fe48b44210dc81e1f029fd7bd2d710e0`, MIT, copyright 2015 signintech),
with transitive [`github.com/phpdave11/gofpdi`](https://github.com/phpdave11/gofpdi/tree/1f10f9844311)
(MIT, copyright 2019–2020 David Barnes and 2017 Setasign – Jan Slabon).
Exact upstream notices are retained in
[`internal/artifacts/slidespdf/licenses/`](internal/artifacts/slidespdf/licenses/).
The fixed embedded Go Regular font comes from `golang.org/x/image` v0.47.0,
copyright 2016 Bigelow & Holmes Inc., under its BSD-style Go font license;
that exact font notice is retained in the same directory.
The authored Slides read/export entrypoints link this renderer into the binary.
Runtime access remains disabled by default behind `artifact_slides`; the Go
dependency inventory below includes its linked dependencies.

## Slides rich profile: fonts and icons

The schema-3 Slides profile embeds IBM Plex Sans 1.1.0 (Regular, SemiBold,
Bold; copyright 2017 IBM Corp., Reserved Font Name "Plex") and JetBrains Mono
2.304 (Regular, SemiBold; copyright 2020 The JetBrains Mono Project Authors),
both under the SIL Open Font License 1.1. The PDF renderer embeds the unmodified
TTF files in
[`internal/artifacts/slidespdf/fonts/`](internal/artifacts/slidespdf/fonts/README.md)
with the notices in
[`internal/artifacts/slidespdf/licenses/`](internal/artifacts/slidespdf/licenses/);
the web app serves the unmodified WOFF2 files from
[`public/fonts/ibm-plex-sans/`](public/fonts/ibm-plex-sans/README.md) and
`public/fonts/jetbrains-mono/`, each with its `OFL.txt`.

The Slides icon allow-list
[`internal/slides/lucide_icons.json`](internal/slides/lucide_icons.json) is
geometry copied from `lucide-react` 1.66.0 by `scripts/gen-slides-icons.mjs`
(ISC, copyright 2026 Lucide Icons and Contributors; parts derived from
Feather, MIT). Its notice is retained in
[`internal/artifacts/slidespdf/licenses/lucide-LICENSE.txt`](internal/artifacts/slidespdf/licenses/lucide-LICENSE.txt).

## Artifact Slides font

The packaged Go Regular font in `public/fonts/go-regular/Go-Regular.ttf` is
identical to `golang.org/x/image/font/gofont/goregular` v0.47.0, copyright
2016 Bigelow & Holmes Inc. Its BSD-style Go font notice is retained in
[`public/fonts/go-regular/LICENSE.txt`](public/fonts/go-regular/LICENSE.txt).

## Go dependencies

Sections below list every direct + transitive Go dependency of the `crewship`
binary and their licenses. Auto-generated by `make notices` via
[go-licenses](https://github.com/google/go-licenses); do not edit by hand —
re-run `make notices` after any dependency change.

**Known exception:** `modernc.org/mathutil` is BSD-3-Clause (verified in its
`LICENSE` file) but `go-licenses` cannot auto-detect it due to a file-matching
edge case. It is excluded from the automated check and listed manually below.

## Frontend (npm) dependencies

The Next.js bundle embedded in the binary pulls in roughly 750 npm packages
(production only), the vast majority MIT or ISC. The full per-package list
is *not* committed here because it duplicates `pnpm-lock.yaml` and changes
on every dep bump.

To produce the full list locally:

```bash
pnpm licenses list --prod --long
```

To get a per-license-type breakdown:

```bash
pnpm licenses list --prod --json | jq 'to_entries | map({license: .key, count: (.value | length)})'
```

Aggregate license breakdown as of the latest release (informational):
Apache-2.0, MIT, ISC, BSD-2-Clause, BSD-3-Clause, MPL-2.0, LGPL-3.0-or-later,
CC-BY-4.0, Unlicense. All compatible with Apache-2.0 redistribution.

### Agent avatar artwork — DiceBear

Agent avatars are drawn in the browser by [DiceBear](https://www.dicebear.com).
The library code is MIT (`@dicebear/core` 9.4.3, and 10.7.0 under the npm alias
`@dicebear/core-v10`). Each avatar **style** carries its own artwork licence,
and every generated SVG repeats it in its `<metadata>` block (creator, source
and licence), so a saved avatar keeps its attribution.

- **Voxel Bot** and **Voxel Art** (`voxel-bot`, `voxel-art`), the default since
  #3789, come from `@dicebear/styles` 10.6.0 (npm alias `@dicebear/styles-v10`).
  Both are by DiceBear and dedicated to the public domain under
  [CC0 1.0](https://creativecommons.org/publicdomain/zero/1.0/). No attribution
  is required; it is given here anyway. That package's `LICENSE.md` lists the
  licence of every style it contains; only these two are used.
- The other 25 styles come from the per-style `@dicebear/*` 9.4.2 packages,
  each under the licence its own package declares: MIT (8 styles),
  MIT AND CC-BY-4.0 (13), or the terms in the package's own LICENSE file (4).

### LGPL-3.0 exception note — `@img/sharp-libvips-*`

Crewship transitively depends on `@img/sharp-libvips-<platform>-<arch>`
(via `sharp`, which Next.js uses for image optimization). These platform
packages bundle the libvips native library under LGPL-3.0-or-later.

The LGPL-3.0 license is **compatible with Apache-2.0 redistribution**
under the following terms, which Crewship's distribution satisfies:

1. **Dynamic linking only.** Crewship distributes libvips as a dynamic
   library inside the npm package; the Go binary and Next.js bundle do
   not statically link it. LGPL §4(d)(0) permits dynamic-linked LGPL
   binaries inside otherwise-Apache works.
2. **User-replaceable.** Operators who want to substitute their own
   build of libvips can do so by replacing the `node_modules/@img/`
   directory before `pnpm build`. No build flag forbids this.
3. **Source availability.** The libvips source for the bundled version
   is published at https://github.com/libvips/libvips/. The exact
   commit corresponding to each release is captured in the binary
   package's `versions.json` (see `node_modules/@img/sharp-libvips-*/`).
4. **Notice retention.** This document preserves the LGPL-3.0
   attribution required by §5 of the licence.

If you redistribute Crewship downstream and modify libvips itself, you
must publish the modified libvips source under LGPL-3.0; the Apache-2.0
core remains under Apache-2.0. If you want a Crewship build with **no**
LGPL component, replace `sharp` with a pure-Go or Apache/MIT-licensed
image processor before `pnpm build` — no source-code surgery in
`crewship` itself is required.

## Go dependency list

| Package | License | Source URL |
|---------|---------|------------|
| `cloud.google.com/go/compute/metadata` | Apache-2.0 | https://github.com/googleapis/google-cloud-go/blob/compute/metadata/v0.3.0/compute/metadata/LICENSE |
| `github.com/alecthomas/chroma/v2` | MIT | https://github.com/alecthomas/chroma/blob/v2.20.0/COPYING |
| `github.com/atotto/clipboard` | BSD-3-Clause | https://github.com/atotto/clipboard/blob/v0.1.4/LICENSE |
| `github.com/aymanbagabas/go-osc52/v2` | MIT | https://github.com/aymanbagabas/go-osc52/blob/v2.0.1/LICENSE |
| `github.com/aymerick/douceur` | MIT | https://github.com/aymerick/douceur/blob/v0.2.0/LICENSE |
| `github.com/catppuccin/go` | MIT | https://github.com/catppuccin/go/blob/v0.3.0/LICENSE |
| `github.com/cespare/xxhash/v2` | MIT | https://github.com/cespare/xxhash/blob/v2.3.0/LICENSE.txt |
| `github.com/charmbracelet/bubbles` | MIT | https://github.com/charmbracelet/bubbles/blob/23b8fd6302d7/LICENSE |
| `github.com/charmbracelet/bubbletea` | MIT | https://github.com/charmbracelet/bubbletea/blob/v1.3.6/LICENSE |
| `github.com/charmbracelet/colorprofile` | MIT | https://github.com/charmbracelet/colorprofile/blob/f60798e515dc/LICENSE |
| `github.com/charmbracelet/glamour` | MIT | https://github.com/charmbracelet/glamour/blob/v1.0.0/LICENSE |
| `github.com/charmbracelet/huh` | MIT | https://github.com/charmbracelet/huh/blob/v1.0.0/LICENSE |
| `github.com/charmbracelet/lipgloss` | MIT | https://github.com/charmbracelet/lipgloss/blob/76690c660834/LICENSE |
| `github.com/charmbracelet/x/ansi` | MIT | https://github.com/charmbracelet/x/blob/ansi/v0.10.2/ansi/LICENSE |
| `github.com/charmbracelet/x/cellbuf` | MIT | https://github.com/charmbracelet/x/blob/cellbuf/v0.0.13/cellbuf/LICENSE |
| `github.com/charmbracelet/x/exp/slice` | MIT | https://github.com/charmbracelet/x/blob/2fdc97757edf/exp/slice/LICENSE |
| `github.com/charmbracelet/x/exp/strings` | MIT | https://github.com/charmbracelet/x/blob/212f7b056ed0/exp/strings/LICENSE |
| `github.com/charmbracelet/x/term` | MIT | https://github.com/charmbracelet/x/blob/term/v0.2.1/term/LICENSE |
| `github.com/containerd/errdefs/pkg` | Apache-2.0 | https://github.com/containerd/errdefs/blob/pkg/v0.3.0/pkg/LICENSE |
| `github.com/containerd/errdefs` | Apache-2.0 | https://github.com/containerd/errdefs/blob/v1.0.0/LICENSE |
| `github.com/crewship-ai/crewship` | Apache-2.0 | https://github.com/crewship-ai/crewship/blob/HEAD/LICENSE |
| `github.com/distribution/reference` | Apache-2.0 | https://github.com/distribution/reference/blob/v0.6.0/LICENSE |
| `github.com/dlclark/regexp2` | MIT | https://github.com/dlclark/regexp2/blob/v1.11.5/LICENSE |
| `github.com/docker/go-connections` | Apache-2.0 | https://github.com/docker/go-connections/blob/v0.6.0/LICENSE |
| `github.com/docker/go-units` | Apache-2.0 | https://github.com/docker/go-units/blob/v0.5.0/LICENSE |
| `github.com/dustin/go-humanize` | MIT | https://github.com/dustin/go-humanize/blob/v1.0.1/LICENSE |
| `github.com/felixge/httpsnoop` | MIT | https://github.com/felixge/httpsnoop/blob/v1.0.4/LICENSE.txt |
| `github.com/fsnotify/fsnotify` | BSD-3-Clause | https://github.com/fsnotify/fsnotify/blob/v1.9.0/LICENSE |
| `github.com/go-jose/go-jose/v4/json` | BSD-3-Clause | https://github.com/go-jose/go-jose/blob/v4.1.4/json/LICENSE |
| `github.com/go-jose/go-jose/v4` | Apache-2.0 | https://github.com/go-jose/go-jose/blob/v4.1.4/LICENSE |
| `github.com/go-logr/logr` | Apache-2.0 | https://github.com/go-logr/logr/blob/v1.4.3/LICENSE |
| `github.com/go-logr/stdr` | Apache-2.0 | https://github.com/go-logr/stdr/blob/v1.2.2/LICENSE |
| `github.com/google/jsonschema-go/jsonschema` | MIT | https://github.com/google/jsonschema-go/blob/v0.4.3/LICENSE |
| `github.com/google/uuid` | BSD-3-Clause | https://github.com/google/uuid/blob/v1.6.0/LICENSE |
| `github.com/gorilla/css/scanner` | BSD-3-Clause | https://github.com/gorilla/css/blob/v1.0.1/LICENSE |
| `github.com/gorilla/websocket` | BSD-2-Clause | https://github.com/gorilla/websocket/blob/v1.5.3/LICENSE |
| `github.com/lucasb-eyer/go-colorful` | MIT | https://github.com/lucasb-eyer/go-colorful/blob/v1.3.0/LICENSE |
| `github.com/mattn/go-isatty` | MIT | https://github.com/mattn/go-isatty/blob/v0.0.20/LICENSE |
| `github.com/mattn/go-runewidth` | MIT | https://github.com/mattn/go-runewidth/blob/v0.0.17/LICENSE |
| `github.com/microcosm-cc/bluemonday` | BSD-3-Clause | https://github.com/microcosm-cc/bluemonday/blob/v1.0.27/LICENSE.md |
| `github.com/mitchellh/hashstructure/v2` | MIT | https://github.com/mitchellh/hashstructure/blob/v2.0.2/LICENSE |
| `github.com/moby/docker-image-spec/specs-go/v1` | Apache-2.0 | https://github.com/moby/docker-image-spec/blob/v1.3.1/LICENSE |
| `github.com/moby/moby/api` | Apache-2.0 | https://github.com/moby/moby/blob/api/v1.55.0/LICENSE |
| `github.com/moby/moby/client` | Apache-2.0 | https://github.com/moby/moby/blob/client/v0.5.0/LICENSE |
| `github.com/modelcontextprotocol/go-sdk` | Apache-2.0 | https://github.com/modelcontextprotocol/go-sdk/blob/v1.8.0/LICENSE |
| `github.com/muesli/ansi` | MIT | https://github.com/muesli/ansi/blob/276c6243b2f6/LICENSE |
| `github.com/muesli/cancelreader` | MIT | https://github.com/muesli/cancelreader/blob/v0.2.2/LICENSE |
| `github.com/muesli/reflow` | MIT | https://github.com/muesli/reflow/blob/v0.3.0/LICENSE |
| `github.com/muesli/termenv` | MIT | https://github.com/muesli/termenv/blob/v0.16.0/LICENSE |
| `github.com/ncruces/go-strftime` | MIT | https://github.com/ncruces/go-strftime/blob/v1.0.0/LICENSE |
| `github.com/opencontainers/go-digest` | Apache-2.0 | https://github.com/opencontainers/go-digest/blob/v1.0.0/LICENSE |
| `github.com/opencontainers/image-spec/specs-go` | Apache-2.0 | https://github.com/opencontainers/image-spec/blob/v1.1.1/LICENSE |
| `github.com/pkg/errors` | BSD-2-Clause | https://github.com/pkg/errors/blob/v0.9.1/LICENSE |
| `github.com/remyoudompheng/bigfft` | BSD-3-Clause | https://github.com/remyoudompheng/bigfft/blob/24d4a6f8daec/LICENSE |
| `github.com/rivo/uniseg` | MIT | https://github.com/rivo/uniseg/blob/v0.4.7/LICENSE.txt |
| `github.com/robfig/cron/v3` | MIT | https://github.com/robfig/cron/blob/v3.0.1/LICENSE |
| `github.com/segmentio/asm` | MIT | https://github.com/segmentio/asm/blob/v1.1.3/LICENSE |
| `github.com/segmentio/encoding` | MIT | https://github.com/segmentio/encoding/blob/v0.5.4/LICENSE |
| `github.com/spf13/cobra` | Apache-2.0 | https://github.com/spf13/cobra/blob/v1.10.2/LICENSE.txt |
| `github.com/spf13/pflag` | BSD-3-Clause | https://github.com/spf13/pflag/blob/v1.0.9/LICENSE |
| `github.com/xo/terminfo` | MIT | https://github.com/xo/terminfo/blob/abceb7e1c41e/LICENSE |
| `github.com/yosida95/uritemplate/v3` | BSD-3-Clause | https://github.com/yosida95/uritemplate/blob/v3.0.2/LICENSE |
| `github.com/yuin/goldmark-emoji` | MIT | https://github.com/yuin/goldmark-emoji/blob/v1.0.6/LICENSE |
| `github.com/yuin/goldmark` | MIT | https://github.com/yuin/goldmark/blob/v1.7.13/LICENSE |
| `go.etcd.io/bbolt` | MIT | https://github.com/etcd-io/bbolt/blob/v1.4.3/LICENSE |
| `go.opentelemetry.io/auto/sdk` | Apache-2.0 | https://github.com/open-telemetry/opentelemetry-go-instrumentation/blob/sdk/v1.2.1/sdk/LICENSE |
| `go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp` | Apache-2.0 | https://github.com/open-telemetry/opentelemetry-go-contrib/blob/instrumentation/net/http/otelhttp/v0.65.0/instrumentation/net/http/otelhttp/LICENSE |
| `go.opentelemetry.io/otel/metric` | Apache-2.0 | https://github.com/open-telemetry/opentelemetry-go/blob/metric/v1.40.0/metric/LICENSE |
| `go.opentelemetry.io/otel/trace` | Apache-2.0 | https://github.com/open-telemetry/opentelemetry-go/blob/trace/v1.40.0/trace/LICENSE |
| `go.opentelemetry.io/otel` | Apache-2.0 | https://github.com/open-telemetry/opentelemetry-go/blob/v1.40.0/LICENSE |
| `golang.org/x/crypto` | BSD-3-Clause | https://cs.opensource.google/go/x/crypto/+/v0.49.0:LICENSE |
| `golang.org/x/net` | BSD-3-Clause | https://cs.opensource.google/go/x/net/+/v0.52.0:LICENSE |
| `golang.org/x/oauth2` | BSD-3-Clause | https://cs.opensource.google/go/x/oauth2/+/v0.36.0:LICENSE |
| `golang.org/x/sync/errgroup` | BSD-3-Clause | https://cs.opensource.google/go/x/sync/+/v0.20.0:LICENSE |
| `golang.org/x/sys/unix` | BSD-3-Clause | https://cs.opensource.google/go/x/sys/+/v0.42.0:LICENSE |
| `golang.org/x/term` | BSD-3-Clause | https://cs.opensource.google/go/x/term/+/v0.41.0:LICENSE |
| `golang.org/x/text` | BSD-3-Clause | https://cs.opensource.google/go/x/text/+/v0.35.0:LICENSE |
| `gopkg.in/yaml.v3` | MIT | https://github.com/go-yaml/yaml/blob/v3.0.1/LICENSE |
| `modernc.org/libc` | MIT | https://gitlab.com/cznic/libc/blob/v1.70.0/LICENSE-3RD-PARTY.md |
| `modernc.org/mathutil` | Unknown | Unknown |
| `modernc.org/memory` | BSD-3-Clause | https://gitlab.com/cznic/memory/blob/v1.11.0/LICENSE-GO |
| `modernc.org/sqlite` | BSD-3-Clause | https://gitlab.com/cznic/sqlite/blob/v1.48.1/LICENSE |

## Manually verified

The existing `go-licenses` scanner cannot load standard-library module metadata
with the current Go toolchain. The newly linked PDF dependencies below were
verified against their exact upstream license texts, retained in the Slides PDF
license directory; the preceding generated inventory is preserved.

| Package | License | Source URL |
|---------|---------|------------|
| `modernc.org/mathutil` | BSD-3-Clause | https://gitlab.com/cznic/mathutil |
| `github.com/signintech/gopdf` v0.38.3 | MIT | https://github.com/signintech/gopdf/blob/v0.38.3/LICENSE |
| `github.com/phpdave11/gofpdi` v1.0.14-0.20211212211723-1f10f9844311 | MIT | https://github.com/phpdave11/gofpdi/blob/1f10f9844311/LICENSE |

## Known accepted vulnerabilities

These vulnerabilities are tracked but cannot be fixed via dependency upgrade
because no upstream fix is available. They are accepted as known risk and
monitored for upstream resolution.

| CVE | Module | Status | Notes |
|-----|--------|--------|-------|
| GO-2026-5932 | golang.org/x/crypto/openpgp | No upstream fix (Fixed in: N/A) | The openpgp package is unmaintained and unsafe by design; upstream will never ship a fix (advisory is "use a maintained alternative"). **Not reachable in Crewship**: we never import `golang.org/x/crypto/openpgp` (it is a transitive-graph presence only — `go mod why golang.org/x/crypto` reports "main module does not need package"), and govulncheck lists it under "modules you require, but your code doesn't appear to call". Bumping x/crypto does not help — every published version, including the latest, still ships openpgp with the same advisory. Accepted as known, non-reachable risk. Monitor https://pkg.go.dev/vuln/GO-2026-5932 |

### Restricted native worker — bubblewrap

The restricted native image distributes Debian bubblewrap 0.8.0 with Debian's
`0.8.0-2+deb12u1` security patches and Crewship's atime-preserving remount patch.
The rebuilt Debian package is versioned `0.8.0-2+deb12u1+crewship1`.
Bubblewrap and the local derivative patch/header are LGPL-2.0-or-later; original
copyright and license texts remain in the package's `/usr/share/doc/bubblewrap/`.
The image also includes the complete modified corresponding source, Debian
build files and image build recipe as
`/usr/share/doc/bubblewrap/crewship-source.tar.xz`. The local patch and regression
source are in `cmd/crewship-restricted-native-runner/bubblewrap/`.
Upstream: https://github.com/containers/bubblewrap.