# Install ammonite-repl with Homebrew

Ammonite is a cleanroom re-implementation of the Scala REPL. Version 3.0.9 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:ammonite-repl
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install ammonite-repl
```

  Evidence: local Homebrew formula metadata

## Package facts

- **Package key:** brew:ammonite-repl
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/ammonite-repl>
- **Version:** 3.0.9
- **Source summary:** Ammonite is a cleanroom re-implementation of the Scala REPL
- **Homepage:** <https://ammonite.io/>
- **Repository:** <https://github.com/com-lihaoyi/Ammonite>
- **Upstream docs:** <https://ammonite.io/>
- **License:** MIT
- **Source archive:** <https://github.com/com-lihaoyi/Ammonite/releases/download/3.0.9/3.3-3.0.9>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- amm (cli)
- amm (alias)

## Dependencies

- openjdk

## Install behavior

- Post-install hook: not defined
- Bottle: available on all

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 3.0.9
- Local data: ok
- Upstream repository: https://github.com/com-lihaoyi/Ammonite
- info: No package-manager update timestamp was available.
- info: No cached GitHub release or tag data was available.
## Project history and usage

Ammonite is Li Haoyi's Scala scripting environment and modernized Scala REPL, distributed to command-line users as the `amm` executable. Its official documentation describes it as a way to use Scala interactively or as lightweight scripts without creating a full build project.

The current upstream README and site mark Ammonite as deprecated, pointing Scala scripting users toward Mill single-file scripts and noting that many REPL conveniences have moved into the upstream Scala REPL. That deprecation makes Ammonite historically interesting: it was both a productive standalone tool and a proving ground for features that later influenced the default Scala tooling experience.

### Project history

The public GitHub repository was created in January 2015 and describes the project as 'Scala Scripting'. The codebase contains the `amm` launcher, REPL and script-runner implementation, a terminal/JLine reimplementation used for interactive editing, integration tests, and Scalatex-generated documentation.

Ammonite's design centered on replacing the rough edges of the stock Scala REPL with syntax highlighting, multiline editing, direct Maven artifact imports, pretty output, and `.sc` script execution. Its documentation frames the goal as freeing small Scala programs from heavyweight projects and avoiding the startup cost of tools such as sbt for quick scripting work.

Release and publishing notes in the upstream README describe stable releases from tagged commits and unstable artifacts from every commit on the main branch. The latest GitHub release observed for this batch is 3.0.9, published in March 2026.

### Adoption history

Ammonite became a familiar tool in the Scala command-line ecosystem because it gave Scala developers a batteries-included REPL and script runner before similar comforts were widely available upstream. The official README points users to the Gitter channel, Patreon, and the author's Hands-on Scala material, whose examples make extensive use of Ammonite.

Package-manager adoption reflects that CLI role: the Homebrew formula provides `ammonite-repl` and installs the `amm` executable. Its historical packaging matters because developers commonly reached for Ammonite from a shell, not only as a library dependency.

### How it is used

Users run `amm` to open the REPL or execute `.sc` scripts. Common documented customization points are predef files under `~/.ammonite`, including `predef.sc` for the interactive REPL and `predefScript.sc` for scripts.

Ammonite's package-nerd usage pattern was often 'install one executable, import Maven coordinates inline, and script in Scala'. That made it attractive for one-off automation, exploratory data work, library experiments, and examples where a full sbt project would be slower to create than the code itself.

### Why package nerds care

Ammonite is a useful case study in how an alternate REPL can pressure a language ecosystem: its conveniences eventually became expected behavior, and upstream Scala later absorbed many of them.

For package maintainers, it is also the kind of language tool whose value is in the launcher, cache, and per-user startup files as much as in the compiler integration. Correct packaging gives users a real `amm` command with predictable home-directory behavior.

### Timeline

- 2015: GitHub repository created for Ammonite.
- 2015-2020s: Ammonite grows as a Scala REPL, script runner, and shell-friendly alternative to creating sbt projects for small programs.
- 2026: Upstream release 3.0.9 is published.
- Current upstream docs: Ammonite is marked deprecated, with Scala scripting users directed to Mill and REPL features noted as moving upstream.

### Related projects

- Scala REPL: upstream REPL that later received several Ammonite-style quality-of-life features.
- Mill: Li Haoyi's build tool, now recommended by Ammonite docs for Scala single-file scripting.
- sbt: the traditional Scala build tool whose startup and project overhead Ammonite often avoided for small tasks.

### Sources

- <https://ammonite.io/>
- <https://api.github.com/repos/com-lihaoyi/Ammonite>
- <https://api.github.com/repos/com-lihaoyi/Ammonite/releases/latest>
- <https://github.com/com-lihaoyi/Ammonite>
- <https://github.com/com-lihaoyi/Ammonite#readme>
- source_facts.executables
- source_facts.package-manager


## Security Notes

generalized runtime or code generation signal.

- **Geiger risk:** yellow / medium
- generalized runtime or code generation signal


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ~/.ammonite/predef.sc, ~/.ammonite/predefScript.sc
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** ammonite-repl
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable


## Related links

- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [openjdk](https://www.automicvault.com/pkg/brew/openjdk/) - Runtime dependency declared by Homebrew.
- [planck](https://www.automicvault.com/pkg/brew/planck/) - Shares av.db curated category or tags: cli, language-runtime, repl, scripting.
- [frege-repl](https://www.automicvault.com/pkg/brew/frege-repl/) - Shares av.db curated category or tags: cli, language-runtime, repl.
- [ki](https://www.automicvault.com/pkg/brew/ki/) - Shares av.db curated category or tags: cli, language-runtime, repl.
- [psysh](https://www.automicvault.com/pkg/brew/psysh/) - Shares av.db curated category or tags: cli, language-runtime, repl.
- [cpi](https://www.automicvault.com/pkg/brew/cpi/) - Shares av.db curated category or tags: cli, language-runtime, repl, scripting.
- [ryelang](https://www.automicvault.com/pkg/brew/ryelang/) - Shares av.db curated category or tags: cli, language-runtime, repl, scripting.
- [wren-cli](https://www.automicvault.com/pkg/brew/wren-cli/) - Shares av.db curated category or tags: cli, language-runtime, repl, scripting.
- [yaegi](https://www.automicvault.com/pkg/brew/yaegi/) - Shares av.db curated category or tags: cli, language-runtime, repl, scripting.

## Combined YAML source

View the package source record on GitHub. [combined/ammonite-repl.yml](https://github.com/automic-vault/db/blob/main/combined/ammonite-repl.yml)


## Sources

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