Automic VaultAutomic Vault

brew

tern mit Homebrew installieren

Prüfe Installationswege, Executables, Metadaten und Sicherheitshinweise für tern in AI-Agent-Workflows.

Installation

Weitere Installationsbefehle

macOS

Homebrewverifiziert · 100%
brew install tern

local Homebrew formula metadata

Überblick

Paketzusammenfassung

Software Bill of Materials (SBOM) tool

Befehle und Aliase

  • tern

Verlauf

Projektgeschichte und Nutzung

Tern is a Python-based software composition analysis tool for container images and Dockerfiles. It began as an open-source compliance and package-inspection tool for containers and evolved into an SBOM generator with support for multiple report formats, including SPDX and CycloneDX.

Projektgeschichte

The repository was created in November 2017 and Tern's first GitHub release was published in July 2018. The FAQ states that Tern was created to help developers meet open-source compliance requirements for containers, where reused filesystem layers make knowing the bill of materials harder.

The README describes Tern's core model: inspect a container image layer by layer, identify distro/package-manager metadata, execute package-manager command-library scripts in a chroot-like environment, and generate reports of package metadata. It can also use a Dockerfile to connect file-system layers back to the lines that produced them.

By the 2.x series, Tern had become explicitly SBOM-focused. Release notes document support for distroless containers and per-layer SBOM output in v2.5.0, build-time inventory of mounted container filesystems in v2.6.1, and SPDX report updates for NTIA minimum SBOM elements and Package URL external references in v2.12.0.

Adoptionsgeschichte

Tern is distributed as a Python package and a CLI, with README instructions for Linux virtual environments, Docker-based execution, Kubernetes Jobs, Vagrant development environments, and a GitHub Action for scanning Docker container images. Its GitHub metadata and docs place it in the container compliance, supply-chain-security, SPDX, CycloneDX, and SBOM toolchain niche.

Wie es verwendet wird

Typical usage is `tern report -i <image>` to generate a report for a container image, with output formats including human-readable, JSON, HTML, YAML, SPDX tag-value, SPDX JSON, and CycloneDX JSON. The README also documents Dockerfile analysis, locked Dockerfile generation, extensions such as Scancode and cve-bin-tool, and workflows for Docker and Kubernetes environments.

Warum Paket-Nerds sich dafür interessieren

Tern matters to package and dependency specialists because it tries to reconstruct package inventories from container layers rather than only scanning files. That makes it a bridge between OS package-manager metadata, container build history, license/compliance reporting, and modern SBOM interchange formats.

Zeitleiste

  • 2017: GitHub repository created.
  • 2018: v0.1.0, named Tern's first release, published.
  • 2019: v1.0.0 released.
  • 2020: v2.0.0 released.
  • 2021: v2.5.0 added distroless-container support and per-layer SBOM output.
  • 2021: v2.6.1 added build-time SBOM inventory for mounted container filesystems.
  • 2023: v2.12.0 updated SPDX output for NTIA minimum SBOM elements and Package URL external references.

Related projects

  • The README documents integrations or extensions with Scancode and cve-bin-tool.
  • The README also points to a Tern GitHub Action maintained separately for scanning Docker container images.

Quellen

Sicherheitslage

Risikostufe: grün

narrow executable package without higher-risk signals.

Risikoklassifikator

grün Risiko · niedrig Konfidenz · appliance

Warum

  • narrow executable package without higher-risk signals

Signale

  • metadata:no-higher-risk-signals

Installationsverhalten

  • In den Formelmetadaten ist kein Homebrew-Post-install-Hook erfasst.
  • Homebrew-Bottle-Metadaten sind für 6 Plattformziele verfügbar.
  • Installiert mit 3 Laufzeitabhängigkeiten.

Empfohlene Prüfung

Prüfe vor unbeaufsichtigter Agent-Nutzung, ob das Tool Klartext-Credentials liest, Remote-Zustand schreibt, Artefakte veröffentlicht oder Plugins ausführt.

Executables

Installierte Executables

BefehlArtSichtbarkeitHinweis
terncliglobales Executable

Aktualität

Version und Aktualität

Diese Signale trennen das Alter der Seitengenerierung, Aktivität des Paketmanagers und Upstream-Release-Vergleich. Versionsrückstand wird nur gemeldet, wenn eine Evidenz-URL und vergleichbare Versionen vorhanden sind.

Seite generiert2026-07-26
Manager-Version2.12.1
Manager aktualisiert
lokale DatenOK
Upstreamnot checked
neueste erkannte Versionnicht erkannt

https://github.com/tern-tools/tern

  • InfoNo package-manager update timestamp was available.niedrig Konfidenz
  • InfoNo cached GitHub release or tag data was available.https://github.com/tern-tools/ternnone Konfidenz

Installationsmetadaten

Paketmetadaten

Paketschlüsselbrew:tern
Version2.12.1
PaketmanagerHomebrew
Paketmanager-Seitehttps://formulae.brew.sh/formula/tern
Homepagehttps://github.com/tern-tools/tern
Repositoryhttps://github.com/tern-tools/tern
Upstream-Dokumentationhttps://github.com/tern-tools/tern#readme
LizenzBSD-2-Clause
Quellarchivhttps://files.pythonhosted.org/packages/f8/4b/123b2ca469126b45e61853acf028fe1d466f4fe1d5e7afd1d4972c151b4d/tern-2.12.1.tar.gz
Abhängigkeitencertifi, libyaml, python@3.14
Bottleverfügbar (auf arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnicht definiert
Dienstkeiner deklariert
Einschränkungentern requires root privileges so you will need to run `sudo tern`. You should be certain that you trust any software you grant root privileges.

Registry-Fakten

Details aus der Quelldatenbank

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nametern
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

Quellspur

Aus Repository-Daten generiert

Diese Seite wird von av-web aus dem privaten Paket-SQLite-Artefakt bereitgestellt, das scripts/generate-pkg-sqlite.py erstellt.

Verwendete Quellen

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • package relationship graph
  • package version freshness
  • package-page enrichment