Skip to content

Commit 52a855f

Browse files
committed
docs: advertise the agent's terminal, browser and ACP front ends
- README: a "Local agent" entry in Features and in the table of contents, and the agent section opens with a table of the three front ends (terminal / --plain, --web, --acp) and how to reach each. - Agent README: the intro lists the front ends, and no longer claims the agent runs without a servlet container (--web embeds Jetty). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FtfgoazykGcQSCR3TYBmTQ
1 parent aeddb51 commit 52a855f

2 files changed

Lines changed: 29 additions & 8 deletions

File tree

‎README.md‎

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,8 @@ Inference of Meta's LLaMA model (and others) in pure C/C++.
9898
3.3 [Chat Completion](#chat-completion)
9999
3.4 [Infilling](#infilling)
100100
3.5 [Embeddings & Reranking](#embeddings--reranking)
101-
3.6 [Raw JSON Endpoints](#raw-json-endpoints)
101+
3.6 [Raw JSON Endpoints](#raw-json-endpoints)
102+
3.7 [Local agent: terminal, browser, IDE via ACP](#local-agent-terminal-browser-ide-via-acp)
102103
4. [Android](#importing-in-android)
103104
5. [Feature Ideas](#feature-ideas)
104105

@@ -118,6 +119,7 @@ Inference of Meta's LLaMA model (and others) in pure C/C++.
118119
- **Conversation checkpoints** — `Session.checkpoint(...)` / `rewind(...)` / `fork(...)` branch and roll back a chat (KV-cache slot save/restore + transcript snapshot) without re-prefilling.
119120
- **GGUF metadata inspection** without loading the model (`GgufInspector` — pure Java, reads header + key/value table only, big-endian aware).
120121
- **Distributed inference over RPC** — offload a model's layers to llama.cpp RPC servers on other machines (`ModelParameters.setRpcServers(...)` / `--rpc host:port`), and serve this machine's devices to them with `RpcServer` (the in-JVM `rpc-server`). See [Distributed inference over RPC](#distributed-inference-over-rpc).
122+
- **Local agent** ([`llama-atmosphere-agent`](llama-atmosphere-agent/), release asset, JDK 21+) — a fully offline agent on top of this library that reads and edits files and, if allowed, runs commands. One agent session, three ways to use it: a **terminal** (full console or line-oriented `--plain`, fine over SSH/PuTTY), a **browser** (`--web`, token-protected, loopback by default — reach it from elsewhere through an SSH tunnel), and **IDEs** over the [Agent Client Protocol](https://agentclientprotocol.com) (`--acp`: JetBrains IDEs and Zed natively, VS Code through an ACP extension). See [Local agent](#local-agent-terminal-browser-ide-via-acp).
121123
- **Multi-model router mode** (`--models-dir` + per-request model selection, managed via the typed `RouterClient`) and **attach mode** (`NativeServer(LlamaModel, ...)` serves an already-loaded model over the full upstream HTTP frontend — one copy of the weights).
122124
- Pre-built native binaries in the default JAR for Linux (x86-64, aarch64, s390x), macOS (x86-64, arm64 — Metal included), Windows (x86-64, x86, arm64) and Android (arm64, x86-64); GPU backends (CUDA, Vulkan, OpenCL, ROCm/HIP, SYCL, OpenVINO) ship as Maven classifiers — see [Choosing the right classifier](#choosing-the-right-classifier). Android additionally ships as the [`llama-android` AAR](#importing-in-android) with the optional `llama-kotlin` coroutines façade.
123125

@@ -1087,10 +1089,19 @@ See [`llama-langchain4j/README.md`](llama-langchain4j/) for streaming/embedding/
10871089
examples and the current mapping limitations (tool calling, JSON mode, and multimodal input are
10881090
not yet forwarded).
10891091

1090-
### Local coding agent with Atmosphere (`llama-atmosphere-agent/`)
1092+
### Local agent: terminal, browser, IDE via ACP
10911093

1092-
A copy-and-run **general-purpose terminal agent on the JVM** — Claude Code / OpenCode reduced to the
1093-
essentials, fully offline; it edits files and, with `--allow-shell`, runs any command on your machine
1094+
> [!TIP]
1095+
> **Supported front ends** — all on the same agent session (history, slash commands, approval mode):
1096+
>
1097+
> | Front end | Start with | Where it runs |
1098+
> |---|---|---|
1099+
> | Terminal | *(default)* / `--plain` | this console; `--plain` for piped, logged or line-only sessions |
1100+
> | Browser | `--web` | `http://127.0.0.1:8787/?token=…` — over SSH: `ssh -L 8787:127.0.0.1:8787 user@server` |
1101+
> | IDE via **ACP** | `--acp` | JetBrains IDEs and Zed natively, VS Code through an ACP extension |
1102+
1103+
`llama-atmosphere-agent/` is a copy-and-run **general-purpose agent on the JVM** — Claude Code /
1104+
OpenCode reduced to the essentials, fully offline; it edits files and, with `--allow-shell`, runs any command on your machine
10941105
(`docker`, `git`, build tools) — built from [Atmosphere](https://github.com/Atmosphere/atmosphere)'s
10951106
built-in OpenAI-compatible agent runtime (streaming, tool loop, workspace file tools) driven
10961107
**headless** against this project's OpenAI-compatible server. It is a standalone Maven project (not a

‎llama-atmosphere-agent/README.md‎

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,31 @@ SPDX-License-Identifier: MIT
66

77
# llama-atmosphere-agent — a local, general-purpose JVM agent on java-llama.cpp
88

9-
A minimal, copy-and-run **general-purpose terminal agent** (think Claude Code / OpenCode, reduced to
10-
the essentials): it reads and edits files, and with `--allow-shell` it runs any command on your
9+
A minimal, copy-and-run **general-purpose agent** for the terminal, the browser and your IDE (think
10+
Claude Code / OpenCode, reduced to the essentials): it reads and edits files, and with `--allow-shell` it runs any command on your
1111
machine — `docker`, `git`, build tools, system information. It runs entirely on the JVM and entirely
1212
offline:
1313

1414
- **Model:** any GGUF served by java-llama.cpp's OpenAI-compatible HTTP surface — either a server
1515
you start yourself, or the GGUF loaded **in this process**.
1616
- **Agent:** [Atmosphere](https://github.com/Atmosphere/atmosphere)'s built-in OpenAI-compatible
1717
runtime (`org.atmosphere:atmosphere-ai`): streaming, the model→tool→model loop, and its
18-
workspace-confined file tools (`ls`, `write_file`, `glob`, `delete`, `rename`). Driven **headless**
19-
— no Spring Boot, no servlet container, no `@Agent` scanning — through `BuiltInAgentRuntime`.
18+
workspace-confined file tools (`ls`, `write_file`, `glob`, `delete`, `rename`). Driven directly
19+
through `BuiltInAgentRuntime` — no Spring Boot, no `@Agent` scanning; only `--web` adds a servlet
20+
container (an embedded Jetty).
2021
`read_file`, `edit_file` and `grep` are this project's own (see [Tools](#tools)), on the same
2122
workspace-confined filesystem.
2223
- **Shell:** an opt-in `run_command` tool (`--allow-shell`) that runs any command line through the
2324
system shell (`cmd.exe` on Windows, `sh` elsewhere).
25+
- **Front ends:** one agent session, three ways to use it — see
26+
[Three front ends](#three-front-ends-on-one-session-console-browser-editor):
27+
- **terminal** (default): a full console with a pinned status block, or `--plain` for a
28+
line-oriented one that works when piped or logged; both work over SSH/PuTTY;
29+
- **browser** (`--web`): Atmosphere's AI console on an embedded Jetty, loopback-only with an access
30+
token by default; from another machine, open an SSH tunnel;
31+
- **IDE** (`--acp`): the [Agent Client Protocol](https://agentclientprotocol.com) on stdin/stdout, so
32+
JetBrains IDEs and Zed (and VS Code through an ACP extension) use it as their chat agent, with
33+
their own permission dialog for writes and commands.
2434

2535
This folder is a **standalone Maven project**, deliberately *not* a reactor module and *never* on
2636
Maven Central: CI builds and tests it against the core of the same checkout; you copy the folder and

0 commit comments

Comments
 (0)