pi-squire 0.9.0 → 0.9.2
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/CHANGELOG.md +16 -1
- package/README.md +3 -3
- package/package.json +1 -1
- package/src/child.ts +6 -2
- package/src/index.ts +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,19 @@ follows [Semantic Versioning](https://semver.org/).
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.9.2] - 2026-10-22
|
|
10
|
+
|
|
11
|
+
### Changed
|
|
12
|
+
|
|
13
|
+
- A delegate's footer shows its agent name in the theme's accent color.
|
|
14
|
+
|
|
15
|
+
## [0.9.1] - 2026-10-22
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
|
|
19
|
+
- A delegate's footer names its agent, as in `👦 worker delegate · auto-exit on`.
|
|
20
|
+
The launch passes the agent name to the delegate as `PI_DELEGATE_AGENT`.
|
|
21
|
+
|
|
9
22
|
## [0.9.0] - 2026-10-21
|
|
10
23
|
|
|
11
24
|
### Breaking
|
|
@@ -318,7 +331,9 @@ author's dotfiles; the changes below are against that copy.
|
|
|
318
331
|
|
|
319
332
|
- The published file list includes `child.ts`, which `index.ts` imports.
|
|
320
333
|
|
|
321
|
-
[Unreleased]: https://github.com/gvanderclay/pi-squire/compare/v0.9.
|
|
334
|
+
[Unreleased]: https://github.com/gvanderclay/pi-squire/compare/v0.9.2...HEAD
|
|
335
|
+
[0.9.2]: https://github.com/gvanderclay/pi-squire/compare/v0.9.1...v0.9.2
|
|
336
|
+
[0.9.1]: https://github.com/gvanderclay/pi-squire/compare/v0.9.0...v0.9.1
|
|
322
337
|
[0.9.0]: https://github.com/gvanderclay/pi-squire/compare/v0.8.1...v0.9.0
|
|
323
338
|
[0.8.1]: https://github.com/gvanderclay/pi-squire/compare/v0.8.0...v0.8.1
|
|
324
339
|
[0.8.0]: https://github.com/gvanderclay/pi-squire/compare/v0.7.0...v0.8.0
|
package/README.md
CHANGED
|
@@ -416,9 +416,9 @@ The parent resolves each delegation's auto-exit from the call
|
|
|
416
416
|
notice: typed or RPC input, or a run the user stopped (Esc).
|
|
417
417
|
- `/auto-exit` inside the delegate turns it on again for the next normal
|
|
418
418
|
completion, whatever the launch said.
|
|
419
|
-
- The footer shows that this is a delegate and whether auto-exit
|
|
420
|
-
`👦 delegate · auto-exit on`, or
|
|
421
|
-
`👦 delegate · auto-exit off`, with 👦 or 👧
|
|
419
|
+
- The footer shows that this is a delegate, its agent, and whether auto-exit
|
|
420
|
+
is on: `👦 worker delegate · auto-exit on`, or
|
|
421
|
+
`👦 worker delegate · auto-exit off`, with 👦 or 👧
|
|
422
422
|
picked at random per session.
|
|
423
423
|
|
|
424
424
|
There is no `subagent_done` tool: auto-exit off only means the window stays.
|
package/package.json
CHANGED
package/src/child.ts
CHANGED
|
@@ -27,6 +27,8 @@ import { STATUS_KEY } from "./results.ts";
|
|
|
27
27
|
export const AUTO_EXIT_ENV = "PI_DELEGATE_AUTO_EXIT";
|
|
28
28
|
/** The launch variable listing, comma-separated, the agent's models after the one launched. */
|
|
29
29
|
export const FALLBACK_ENV = "PI_DELEGATE_FALLBACK";
|
|
30
|
+
/** The launch variable naming the roster agent this delegate runs as, for its footer. */
|
|
31
|
+
export const AGENT_ENV = "PI_DELEGATE_AGENT";
|
|
30
32
|
|
|
31
33
|
const OFF_NOTICE =
|
|
32
34
|
"delegate: auto-exit is off for this session because you took over here; the window stays open. /auto-exit turns it back on.";
|
|
@@ -122,11 +124,13 @@ const ICON = Math.random() < 0.5 ? "👦" : "👧";
|
|
|
122
124
|
|
|
123
125
|
function showStatus(ctx: ExtensionContext, armed: boolean): void {
|
|
124
126
|
const { theme } = ctx.ui;
|
|
127
|
+
const agent = process.env[AGENT_ENV];
|
|
128
|
+
const label = agent === undefined || agent === "" ? "delegate" : `${theme.fg("accent", agent)} delegate`;
|
|
125
129
|
ctx.ui.setStatus(
|
|
126
130
|
STATUS_KEY,
|
|
127
131
|
armed
|
|
128
|
-
? `${ICON}
|
|
129
|
-
: `${ICON}
|
|
132
|
+
? `${ICON} ${label} · auto-exit ${theme.fg("success", "on")}`
|
|
133
|
+
: `${ICON} ${label} · auto-exit ${theme.fg("dim", "off")}`,
|
|
130
134
|
);
|
|
131
135
|
}
|
|
132
136
|
|
package/src/index.ts
CHANGED
|
@@ -47,7 +47,7 @@ import {
|
|
|
47
47
|
import { Type } from "typebox";
|
|
48
48
|
|
|
49
49
|
import { type Agent, isThinking, type Roster, readRoster, THINKING_LEVELS } from "./agents.ts";
|
|
50
|
-
import { AUTO_EXIT_ENV, FALLBACK_ENV, registerChild } from "./child.ts";
|
|
50
|
+
import { AGENT_ENV, AUTO_EXIT_ENV, FALLBACK_ENV, registerChild } from "./child.ts";
|
|
51
51
|
import { activeMark, clearMarks, isFree, readMarks } from "./limits.ts";
|
|
52
52
|
import { createResults, delegateName } from "./results.ts";
|
|
53
53
|
import { createTmuxClient, type TmuxClient } from "./tmux.ts";
|
|
@@ -510,6 +510,7 @@ export default function delegate(
|
|
|
510
510
|
PI_CODING_AGENT_DIR: getAgentDir(),
|
|
511
511
|
[PARENT_ENV]: parent,
|
|
512
512
|
[AUTO_EXIT_ENV]: start.autoExit ? "1" : "0",
|
|
513
|
+
[AGENT_ENV]: start.agent.name,
|
|
513
514
|
// A general signal for any extension: no human watches this session, so don't wait on a dialog.
|
|
514
515
|
PI_UNATTENDED: "1",
|
|
515
516
|
};
|