pkg.soopen package index

brew / 排名 9465

使用 Homebrew, apk, MacPorts, Nix, pacman, apt 安装 yaegi

查看 yaegi 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

安装

其他安装命令

macOS

Homebrew已验证 · 100%
brew install yaegi

local Homebrew formula metadata

MacPorts已验证 · 94%
sudo port install yaegi

MacPorts ports tree · devel/yaegi/Portfile · 来源: api.github.com

Linux

Alpine Linux apk已验证 · 92%
sudo apk add yaegi

Alpine Linux edge package indexes · yaegi · 来源: dl-cdn.alpinelinux.org

Nix已验证 · 92%
nix profile install nixpkgs#yaegi

nixpkgs package indexes · pkgs/by-name/ya/yaegi/package.nix · 来源: api.github.com

Arch Linux pacman已验证 · 92%
sudo pacman -S yaegi

Arch Linux sync databases · yaegi · 来源: geo.mirror.pkgbuild.com

Ubuntu apt已验证 · 92%
sudo apt install yaegi

Ubuntu 24.04 LTS package indexes · yaegi · 来源: archive.ubuntu.com

概览

软件包摘要

Yet another elegant Go interpreter

命令和别名

  • yaegi

历史

项目历史与用法

Yaegi is Traefik Labs' pure-Go interpreter for Go programs. It provides a command-line REPL and script runner, but its deeper package significance is embeddability: Go applications can evaluate Go code at runtime for plugins, scripting, and prototyping without switching to Lua, Python, JavaScript, or a separate DSL.

项目历史

Yaegi was announced in July 2019 by Marc Vertes and the Containous/Traefik team as "Yet Another Go Interpreter", with the E jokingly standing for Elegant, Embedded, Easy, or whatever the reader preferred. The announcement framed it as a way to bring executable Go scripts, embedded plugins, interactive shells, and instant prototyping on top of the Go runtime.

The project's motivation was specific to Go's unusual position: a static, strongly typed compiled language whose parser, type machinery, and reflection facilities are available to Go programs. Yaegi turned that into an interpreter API built around New, Eval, and Use.

The README emphasizes pure Go implementation, standard-library-only design, complete Go specification support, and a safety posture where unsafe and syscall are not exported by default. That made it attractive for embedding in Go applications that need extension points without handing scripts unrestricted process access.

采用历史

Yaegi adoption followed two tracks. The visible developer-tool track is the yaegi command, which gives Go users a REPL, executable scripts, and a go-run-like workflow. The infrastructure track is embedding, especially for plugin systems and dynamic extension in Go applications.

Traefik's own ecosystem gave Yaegi a practical showcase: a Go interpreter made by the team behind a cloud-native edge router is naturally suited to runtime extension and plugin workflows. Talks and docs around Yaegi repeatedly mention Traefik Enterprise/plugin motivation alongside the broader goal of filling a missing piece in the Go ecosystem.

Package-manager adoption is modest but broad enough to matter: Yaegi appears in Homebrew, MacPorts, Alpine, Arch, Nix, Ubuntu, and Go package documentation, which makes a Go REPL/installable interpreter available without every user building from source.

使用方式

CLI users run yaegi with no arguments for a REPL, run Go files as interpreted scripts, or use shebang-style executable Go scripts. The README even suggests rlwrap for line editing/history when using the command interactively.

Go developers embed Yaegi by importing the interp package, creating an interpreter, loading stdlib symbols with Use, and evaluating code with Eval. Common scenarios include user-provided automation, policy or routing extensions, prototyping, tests, dynamic plugins, and applications that want Go as their extension language.

为什么软件包爱好者会关心

Yaegi is package-nerd interesting because it makes Go behave like a scripting language while staying inside the Go toolchain and module ecosystem. Installing yaegi gives a REPL and script runner; depending on the module gives applications a runtime extension engine.

It also occupies a rare niche: most language interpreters package a language runtime, but Yaegi packages an interpreter for a language famous for avoiding runtime dynamism. That tension is exactly why it shows up in package indexes despite being smaller than mainstream language runtimes.

时间线

  • 2019-07-27: Traefik/Containous announces Yaegi as an open-source Go interpreter for scripts, embedded plugins, REPL use, and prototyping.
  • 2019: Conference talks present Yaegi as a production-oriented Go interpreter and plugin engine for Traefik-related use cases.
  • 2020-09-16: Yaegi v0.9.0 release assets appear on GitHub, showing the project moving into packaged binary distribution.
  • 2020s: The README documents the stable public API shape around interp.New, Eval, and Use, and the yaegi command becomes packaged across multiple Unix package managers.

Related projects

  • Go is the compiled language and standard library that Yaegi interprets and reuses.
  • Traefik and Traefik Enterprise are related through the team and plugin/extension motivation behind Yaegi.
  • Lua, Python, JavaScript, Starlark, Tengo, and Go plugins are neighboring choices for embedding scriptability or runtime extension in Go applications.
  • rlwrap is commonly paired with the yaegi command for interactive history and line editing.

安全态势

风险级别:yellow

generalized runtime or code generation signal.

风险分类器

yellow 风险 · 中 置信度 · runtime

原因

  • generalized runtime or code generation signal

信号

  • text:interpreter

安装行为

  • 未记录 Homebrew bottle 元数据。

建议审查

在无人值守的代理使用前,请检查该工具是否读取明文凭据、写入远程状态、发布制品或调用插件。

可执行文件

已安装的可执行文件

命令类型暴露范围备注
yaegi可执行文件已索引可执行文件从本地可执行文件索引发现。

新鲜度

版本和新鲜度

这些信号区分页生成时间、软件包管理器活动和上游发布比较。只有存在证据 URL 和可比较版本时,才会提示版本落后。

页面生成时间2026-08-03
管理器版本0.16.1
管理器更新时间2026-07-25
本地数据未知
上游不可用
检测到的最新版本未检测到
  • OK没有生成新鲜度警告。

安装元数据

软件包元数据

软件包键brew:yaegi
版本0.16.1
软件包管理器Homebrew
主页https://github.com/traefik/yaegi
仓库https://github.com/traefik/yaegi
最后更新2026-07-25T21:32:48+02:00
Pulseupdated
Bottle未记录
服务未声明

源数据库匹配

其他软件包管理器记录

匹配项来自外部软件包管理器索引,并与本地 Automic Vault 软件包链接分开显示。

Nix95%

yaegi

nix profile install nixpkgs#yaegi
  • normalized package name match
  • 匹配方式:Yaegi
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/ya/yaegi/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
Ubuntu apt95%

yaegi 0.15.1-2

Another Elegant Go Interpreter

https://github.com/traefik/yaegi

sudo apt install yaegi
  • Section: universe/golang
  • Architecture: amd64
  • Source Package: golang-github-traefik-yaegi
  • 1 依赖
  • normalized package name match
  • 匹配方式:Yaegi
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: yaegi from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
apk95%

yaegi 0.16.1-r19

Elegant Go interpreter

https://github.com/traefik/yaegi

sudo apk add yaegi
  • License: Apache-2.0
  • Architecture: x86_64
  • Source Package: yaegi
  • 1 依赖
  • 1 提供
  • normalized package name match
  • 匹配方式:Yaegi
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: yaegi from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
pacman95%

yaegi 0.16.1-2

Yet another Elegant Go Interpreter

https://github.com/containous/yaegi

sudo pacman -S yaegi
  • License: Apache
  • Architecture: x86_64
  • 1 依赖
  • normalized package name match
  • 匹配方式:Yaegi
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: yaegi from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
MacPorts95%

yaegi

sudo port install yaegi
  • normalized package name match
  • 匹配方式:Yaegi
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/yaegi/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

来源线索

由仓库数据生成

此页面由 av-webscripts/generate-pkg-sqlite.py 生成的私有软件包 SQLite 工件提供。

使用的来源

  • Geiger risk classifier
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • pkg.so package database
  • pkgdb category and tag curation