pi-agent-rb 1.1.0 → 1.2.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3c4f0ddb3c0e7d8dd8c01189b0b27469f1c62f5293ffe6aee263b41af4c248d3
4
- data.tar.gz: 0fc2f911b59a4e0ae3e0a78897ce5a1457e29d7badcf1e6623b12d8754d9e803
3
+ metadata.gz: f7c01a8fec7bf4290d4482d3789e16b8606b96282d1c1b9a2b4483fb74f31cd6
4
+ data.tar.gz: 9bbe1686b1f30a66ac752e59fb6fe5cfd1aba2bd55412626379fa79a0687d56f
5
5
  SHA512:
6
- metadata.gz: 1ae00b74a6ce44eec1e0e25cd5250ff0f6c2f68e2495d005bd69367611c71ce253a3d096cf51e83c4e64d4710d4c226ab29bc20ab7027562faf5597ca9c485d8
7
- data.tar.gz: 6d0ab90a5e5a95014b2604973e13790fa9d44a43fd6baf813dabaebf2fe7de41bc75fe7970aa6b00d885de6bd64edcef17fe6bcba7614017d5c33f032d91ae09
6
+ metadata.gz: fd191daa5f49d399d2918b11992e7f34604aec94573c21cdc0abac2bde8af6d61f52ca3d757859c1bb532125728cb9a3822b17214376ff1a696be69a7d51fa79
7
+ data.tar.gz: d20001bfc37bda6c2ef11b4140b3c08db81abc707fbb7ccd5ec8c7622a1ff2ae0c8f9aab9210217480fd78ce5a2ac409436d7d60f639aa4abd4cd52fa99328ae
data/CHANGELOG.md CHANGED
@@ -7,6 +7,69 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.2.1] - 2026-10-16
11
+
12
+ Tracks pi 1.3.0 (rolls up `1.2.0` and `1.3.0`). No gem API change: the RPC
13
+ mode sources (`src/modes/rpc/*`, `rpc-entry.ts`) and `docs/rpc.md` are
14
+ unchanged between pi 1.1.0 and 1.3.0, so the JSONL RPC command/response
15
+ shapes this gem drives are the same.
16
+
17
+ ### Changed
18
+ - Bumped pinned upstream `pi-coding-agent` version to `1.3.0` (from `1.1.0`).
19
+ - `1.2.0` — CLI/TUI, extension API (`before_agent_start` becomes a
20
+ `messageType` union; session counts as busy while a run starts), MCP
21
+ (`pi mcp list --json` reports `resources: true`; non-object structured
22
+ content), codemode, per-key OpenRouter model lists, and published
23
+ `$schema` config schemas.
24
+ Release notes: https://github.com/earendil-works/pi/releases/tag/v1.2.0
25
+ - `1.3.0` — `sessionShareDestination` setting for `/share`; `kimi-coding`
26
+ moves to Chat Completions (`models.json` base URL overrides must include
27
+ `/v1`); model switching drops prior-model thinking; resumed sessions keep
28
+ their active tools (`--tools +name`/`-name` applies on top); `--model`
29
+ prefers the provider with credentials; retry/provider fixes.
30
+ Release notes: https://github.com/earendil-works/pi/releases/tag/v1.3.0
31
+
32
+ ## [1.2.0] - 2026-10-10
33
+
34
+ Tracks pi 1.1.0 (rolls up `1.0.1`, `1.0.2`, `1.0.3`, `1.0.4`, and `1.1.0`).
35
+ Verified against a real `pi --mode rpc` 1.1.0 (live specs green).
36
+
37
+ ### Added
38
+ - `Event#aborted?` — true for an `agent_settled` event whose run was aborted
39
+ (pi >= 1.1.0), so callers can tell a cancelled run from a finished one.
40
+
41
+ ### Changed
42
+ - Bumped pinned upstream `pi-coding-agent` version to `1.1.0` (from `1.0.0`).
43
+ None of the intermediate releases alter the JSONL RPC command/response
44
+ shapes this gem drives, so no gem API change is required.
45
+ - `1.0.1` — CLI/TUI/MCP/provider/packaging batch: Nix flake install path;
46
+ project-level overrides for user MCP servers; MCP Client ID Metadata
47
+ Documents (`oauth.clientRegistration: "cimd"`); `pi.registerToolRenderer()`;
48
+ Cloudflare Clef classifier models. Packaging: `brace-expansion` pinned to
49
+ 5.0.12 (security advisory) and `npm-shrinkwrap.json` removed from the
50
+ published package. All CLI/TUI, MCP, codemode, or provider concerns.
51
+ - `1.0.2` — adds `samplingParamsByThinkingLevel` to `models.json` for
52
+ per-thinking-level sampling overrides on OpenAI-compatible APIs.
53
+ Provider/config concern only.
54
+ - `1.0.3` — renames the Azure provider `azure-openai-responses` → `azure`
55
+ (breaking for `auth.json`/`models.json`/`settings.json` provider keys) and
56
+ adds Azure Foundry Chat Completions deployments; codemode `image()`
57
+ temp-file behavior; editor `Home`/`End` key changes. Provider/config,
58
+ CLI/TUI, and codemode-local concerns, outside the RPC surface.
59
+ - `1.0.4` — `--tools`/`--exclude-tools` accept `*` patterns and keep MCP
60
+ tools unless an entry starts with `mcp__`; `--no-mcp` flag; codemode
61
+ `tools.read()` returns an image block for image files. All CLI/TUI,
62
+ codemode, MCP, or provider concerns.
63
+ - `1.1.0` — adds program status reporting over OSC 7501, Claude Haiku 5.5
64
+ (`anthropic/claude-haiku-5-5`), `+name`/`-name` entries for `--tools`,
65
+ GPT-6 Luna image classification, and native llama.cpp decision models.
66
+ The one RPC-adjacent change is additive: `aborted` is added to
67
+ `agent_settled` session, extension, and JSON events so integrations can
68
+ tell a cancelled run from a finished one; surfaced as `Event#aborted?`.
69
+ `tool_execution_end` also gains `durationMs` (reachable via
70
+ `event[:durationMs]`). All other changes are CLI/TUI, codemode, or
71
+ provider concerns.
72
+
10
73
  ## [1.1.0] - 2026-10-01
11
74
 
12
75
  Tracks pi 1.0.0. No gem API change; verified against a real `pi --mode rpc`
data/README.md CHANGED
@@ -14,7 +14,7 @@ building interactive agent UIs (web, TUI) on top of pi.
14
14
 
15
15
  - Ruby 3.3+
16
16
  - `pi` 0.80.4+ on `PATH` (install via `npm i -g @earendil-works/pi-coding-agent`)
17
- - This gem is pinned against pi `1.0.0`; other versions may work but are not verified.
17
+ - This gem is pinned against pi `1.3.0`; other versions may work but are not verified.
18
18
 
19
19
  ## Installation
20
20
 
@@ -105,7 +105,7 @@ Pi emits `agent_end` after each low-level agent run, but may then retry,
105
105
  compact and retry, or process queued continuations. It emits
106
106
  `agent_settled` only when no automatic work remains, so high-level streams
107
107
  use that as their completion boundary. Upstream added the RPC event in pi
108
- 0.80.4; it is available in this gem's pinned pi 1.0.0.
108
+ 0.80.4; it is available in this gem's pinned pi 1.3.0.
109
109
 
110
110
  `events` is a lower-level, prompt-less drain of the same stream. Because it
111
111
  subscribes lazily when iteration begins, it only works when you subscribe
@@ -279,6 +279,8 @@ timeouts then remain the only backstop when pi dies.
279
279
  (`"aborted"` vs `"error"`). This covers `extension_error` events and
280
280
  errored assistant turns. The gem does not abort your iteration on
281
281
  agent errors; you decide how to react.
282
+ - To tell a cancelled run from a finished one, check `Event#aborted?` on
283
+ the terminal `agent_settled` event (pi >= 1.1.0).
282
284
 
283
285
  ## Protocol reference
284
286
 
@@ -57,6 +57,12 @@ module PiAgent
57
57
  assistant_event["reason"]
58
58
  end
59
59
 
60
+ # True for an `agent_settled` event whose run ended because it was
61
+ # aborted (pi >= 1.1.0). Distinguishes a cancelled run from a finished one.
62
+ def aborted?
63
+ @type == :agent_settled && @raw["aborted"] == true
64
+ end
65
+
60
66
  def to_h
61
67
  @raw
62
68
  end
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PiAgent
4
- VERSION = "1.1.0"
4
+ VERSION = "1.2.1"
5
5
 
6
6
  # Pinned upstream pi-coding-agent version this gem is verified against.
7
7
  # See: https://www.npmjs.com/package/@earendil-works/pi-coding-agent
8
- SUPPORTED_PI_VERSION = "1.0.0"
8
+ SUPPORTED_PI_VERSION = "1.3.0"
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pi-agent-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - chagel