@brokkai/anvil-linux-arm64 0.24.4 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -36,15 +36,33 @@ custom TUI ---------------------------------------> tools + sessions
36
36
  ## Why Anvil
37
37
 
38
38
  - **One engine, many frontends.** Reuse the same execution semantics from a supported editor or any ACP-over-stdio client.
39
- - **Model routing built in.** Connect Codex/ChatGPT, Bedrock, Ollama, ds4, DeepSeek, Kimi, OpenAI-compatible providers, or OpenRouter.
39
+ - **Model routing built in.** Connect Codex/ChatGPT, Bedrock, Ollama, ds4, DeepSeek, Kimi, Grok, OpenAI-compatible providers, or OpenRouter.
40
40
  - **Real agent tooling.** Filesystem and shell tools, managed Bifrost code intelligence, MCP servers, skills, plugins, and subagents.
41
41
  - **Explicit safety boundaries.** Clients choose permission behavior while Anvil applies permission gates, workspace path checks, and the configured sandbox strategy.
42
42
  - **Persistent work.** Load and resume sessions with durable history, usage reporting, and context compaction.
43
43
 
44
44
  ## Install and Evaluate
45
45
 
46
- Install with Homebrew on macOS (Apple Silicon and Intel) or Linux (x86-64 and
47
- ARM64 glibc):
46
+ Install the released native binary through [uv](https://docs.astral.sh/uv/),
47
+ with no Rust toolchain required:
48
+
49
+ ```bash
50
+ uv tool install brokk-anvil
51
+ anvil --version
52
+
53
+ # later
54
+ uv tool upgrade brokk-anvil
55
+ uv tool uninstall brokk-anvil
56
+ ```
57
+
58
+ The Python package version pins the matching GitHub release. On first run it
59
+ downloads the native archive for macOS, Linux glibc, Windows, or
60
+ Android/Termux, verifies the published SHA-256 sidecar, and caches the binary.
61
+ See the [installation guide](https://anvil.brokk.ai/install/#uv) for exact
62
+ version pins, cache paths, and unsupported-platform behavior.
63
+
64
+ Or install with Homebrew on macOS (Apple Silicon and Intel) or Linux (x86-64
65
+ and ARM64 glibc):
48
66
 
49
67
  ```bash
50
68
  brew install brokkai/tap/anvil
@@ -78,7 +96,21 @@ anvil --version
78
96
 
79
97
  Running `anvil` directly starts a stdio JSON-RPC server; use it through an ACP client. Continue with the [installation guide](https://anvil.brokk.ai/install/) or the reproducible [ten-minute evaluation](https://anvil.brokk.ai/evaluate-anvil/).
80
98
 
81
- `anvil serve` (included in all official binaries; source builds can opt out with `cargo build --no-default-features --features wasm-sandbox`) starts the same runtime as an HTTP daemon on a loopback listener (default `127.0.0.1:26845`), exposing versioned REST endpoints for session lifecycle, model discovery, the tool catalog, and asynchronous prompt runs with Server-Sent-Event streaming and cancellation (`/health`, `/v1/models`, `/v1/tools`, `/v1/sessions`, `/v1/runs`). The daemon supports bearer-token authentication (required for non-loopback binding), server-enforced workspace roots, and interactive permission approval endpoints. The wire contract is versioned and checked in under [`openapi/`](openapi/) (OpenAPI document, SSE event schema, and compatibility policy), with a black-box conformance suite holding the implementation to it; generated SDKs are under active development ([#315](https://github.com/BrokkAi/anvil/issues/315)).
99
+ For scripts, CI jobs, and Makefiles, `anvil --print` runs one prompt headlessly with a built-in ACP client and exits no external client required:
100
+
101
+ ```bash
102
+ anvil -p "summarize the failing test" # prompt as an argument
103
+ echo "fix this test" | anvil -p # or on stdin (also: anvil -p -)
104
+ anvil -p "…" --output-format json # one JSON object at exit
105
+ anvil -p "…" --output-format stream-json # newline-delimited records, result last
106
+ anvil -p "…" --permission-mode yolo # manual (default) | auto | yolo
107
+ anvil -p "…" --cwd /path/to/repo --model "codex::gpt-5-codex+high"
108
+ anvil -p "…" --resume SESSION_ID # continue an existing session
109
+ ```
110
+
111
+ Headless runs never block on a human: `manual` rejects every permission request but still honors agent-side approvals that never reach the client (`read`, `search`, and `fetch`; sandboxed shell commands on the conservative read-only safelist; and remembered repo-scoped **Always allow** grants); `auto` accepts edit/delete/move but rejects shell execution; and `yolo` accepts everything. The final assistant message goes to stdout (`text`), or a machine-readable payload with `session_id`, `resumed`, `result`, `stop_reason`, `usage`, and `error` (`json` / `stream-json`); progress and diagnostics stay on stderr, and the exit code is non-zero on agent or transport failure ([#356](https://github.com/BrokkAi/anvil/issues/356)).
112
+
113
+ `anvil serve` (included in all official binaries; source builds can opt out with `cargo build --no-default-features --features wasm-sandbox`) starts the same runtime as an HTTP daemon on a loopback listener (default `127.0.0.1:26845`), exposing versioned REST endpoints for session lifecycle, model discovery, the tool catalog, and asynchronous prompt runs with Server-Sent-Event streaming and cancellation (`/health`, `/v1/models`, `/v1/tools`, `/v1/sessions`, `/v1/runs`). The daemon supports bearer-token authentication (required for non-loopback binding), server-enforced workspace roots, and interactive permission approval endpoints. The wire contract is versioned and checked in under [`openapi/`](openapi/) (OpenAPI document, SSE event schema, and compatibility policy), with a black-box conformance suite holding the implementation to it. Official TypeScript, Rust, and Python SDK packages are regenerated from that contract during CI and release; their shipped runtime code is generated rather than handwritten.
82
114
 
83
115
  Configure a supported ACP client directly from the installed binary:
84
116
 
@@ -38,7 +38,7 @@
38
38
  </div>
39
39
  <h2>Overview of licenses:</h2>
40
40
  <ul class="licenses-overview">
41
- <li><a href="#Apache-2.0">Apache License 2.0</a> (381)</li>
41
+ <li><a href="#Apache-2.0">Apache License 2.0</a> (383)</li>
42
42
  <li><a href="#MIT">MIT License</a> (87)</li>
43
43
  <li><a href="#Unicode-3.0">Unicode License v3</a> (19)</li>
44
44
  <li><a href="#ISC">ISC License</a> (5)</li>
@@ -6068,6 +6068,7 @@ limitations under the License.
6068
6068
  <li><a href="https://crates.io/crates/form_urlencoded/1.2.2">form_urlencoded 1.2.2</a></li>
6069
6069
  <li><a href="https://crates.io/crates/fraction/0.15.4">fraction 0.15.4</a></li>
6070
6070
  <li><a href="https://crates.io/crates/fs-set-times/0.20.3">fs-set-times 0.20.3</a></li>
6071
+ <li><a href="https://crates.io/crates/fs2/0.4.3">fs2 0.4.3</a></li>
6071
6072
  <li><a href="https://crates.io/crates/futures-lite/2.6.1">futures-lite 2.6.1</a></li>
6072
6073
  <li><a href="https://crates.io/crates/gimli/0.33.0">gimli 0.33.0</a></li>
6073
6074
  <li><a href="https://crates.io/crates/hashbrown/0.15.5">hashbrown 0.15.5</a></li>
@@ -7831,9 +7832,9 @@ limitations under the License.
7831
7832
  <h3 id="Apache-2.0">Apache License 2.0</h3>
7832
7833
  <h4>Used by:</h4>
7833
7834
  <ul class="license-used-by">
7834
- <li><a href="https://crates.io/crates/agent-client-protocol-derive/1.0.1">agent-client-protocol-derive 1.0.1</a></li>
7835
- <li><a href="https://crates.io/crates/agent-client-protocol-schema/1.1.0">agent-client-protocol-schema 1.1.0</a></li>
7836
- <li><a href="https://crates.io/crates/agent-client-protocol/1.0.1">agent-client-protocol 1.0.1</a></li>
7835
+ <li><a href="https://crates.io/crates/agent-client-protocol-derive/2.0.0">agent-client-protocol-derive 2.0.0</a></li>
7836
+ <li><a href="https://crates.io/crates/agent-client-protocol-schema/1.5.0">agent-client-protocol-schema 1.5.0</a></li>
7837
+ <li><a href="https://crates.io/crates/agent-client-protocol/2.0.0">agent-client-protocol 2.0.0</a></li>
7837
7838
  <li><a href="https://crates.io/crates/allocator-api2/0.2.21">allocator-api2 0.2.21</a></li>
7838
7839
  <li><a href="https://crates.io/crates/android_system_properties/0.1.5">android_system_properties 0.1.5</a></li>
7839
7840
  <li><a href="https://crates.io/crates/anyhow/1.0.102">anyhow 1.0.102</a></li>
@@ -7913,6 +7914,7 @@ limitations under the License.
7913
7914
  <li><a href="https://crates.io/crates/shlex/2.0.1">shlex 2.0.1</a></li>
7914
7915
  <li><a href="https://crates.io/crates/simdutf8/0.1.5">simdutf8 0.1.5</a></li>
7915
7916
  <li><a href="https://crates.io/crates/syn/2.0.117">syn 2.0.117</a></li>
7917
+ <li><a href="https://crates.io/crates/syn/3.0.3">syn 3.0.3</a></li>
7916
7918
  <li><a href="https://crates.io/crates/sync_wrapper/1.0.2">sync_wrapper 1.0.2</a></li>
7917
7919
  <li><a href="https://crates.io/crates/thiserror-impl/1.0.69">thiserror-impl 1.0.69</a></li>
7918
7920
  <li><a href="https://crates.io/crates/thiserror-impl/2.0.18">thiserror-impl 2.0.18</a></li>
@@ -8577,7 +8579,7 @@ THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND ISC DISCLAIMS ALL WARRANTIES WITH
8577
8579
  <h3 id="LGPL-3.0-only">GNU Lesser General Public License v3.0 only</h3>
8578
8580
  <h4>Used by:</h4>
8579
8581
  <ul class="license-used-by">
8580
- <li><a href="https://crates.io/crates/brokk-anvil/0.24.4">brokk-anvil 0.24.4</a></li>
8582
+ <li><a href="https://crates.io/crates/brokk-anvil/0.26.0">brokk-anvil 0.26.0</a></li>
8581
8583
  <li><a href="https://crates.io/crates/brokk-acp-sandbox/0.1.0">brokk-acp-sandbox 0.1.0</a></li>
8582
8584
  </ul>
8583
8585
  <pre class="license-text">GNU LESSER GENERAL PUBLIC LICENSE
@@ -9916,7 +9918,7 @@ SOFTWARE.
9916
9918
  <h3 id="MIT">MIT License</h3>
9917
9919
  <h4>Used by:</h4>
9918
9920
  <ul class="license-used-by">
9919
- <li><a href="https://crates.io/crates/brokk-anvil-minimizer/0.24.4">brokk-anvil-minimizer 0.24.4</a></li>
9921
+ <li><a href="https://crates.io/crates/brokk-anvil-minimizer/0.26.0">brokk-anvil-minimizer 0.26.0</a></li>
9920
9922
  </ul>
9921
9923
  <pre class="license-text">MIT License
9922
9924
 
package/anvil CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brokkai/anvil-linux-arm64",
3
- "version": "0.24.4",
3
+ "version": "0.26.0",
4
4
  "license": "LGPL-3.0-only",
5
5
  "repository": {
6
6
  "type": "git",