@openagt/dashboard 0.16.0 → 0.18.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 +1 -1
- package/dist/built-in.d.ts.map +1 -1
- package/dist/built-in.js +1 -1
- package/dist/built-in.js.map +1 -1
- package/dist/daemon-runtime.d.ts.map +1 -1
- package/dist/daemon-runtime.js +6 -1
- package/dist/daemon-runtime.js.map +1 -1
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +8 -3
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/agent-handoff.d.ts +48 -1
- package/dist/dashboard/agent-handoff.d.ts.map +1 -1
- package/dist/dashboard/agent-handoff.js +82 -6
- package/dist/dashboard/agent-handoff.js.map +1 -1
- package/dist/dashboard/cache.d.ts +5 -0
- package/dist/dashboard/cache.d.ts.map +1 -1
- package/dist/dashboard/cache.js +2 -2
- package/dist/dashboard/cache.js.map +1 -1
- package/dist/dashboard/machine-call.d.ts +13 -1
- package/dist/dashboard/machine-call.d.ts.map +1 -1
- package/dist/dashboard/machine-call.js +22 -2
- package/dist/dashboard/machine-call.js.map +1 -1
- package/dist/dashboard/relay-endpoints.d.ts +1 -1
- package/dist/dashboard/relay-endpoints.d.ts.map +1 -1
- package/dist/dashboard/relay-endpoints.js +1 -1
- package/dist/dashboard/relay-endpoints.js.map +1 -1
- package/dist/dashboard/remote-run.d.ts +6 -0
- package/dist/dashboard/remote-run.d.ts.map +1 -1
- package/dist/dashboard/remote-run.js +9 -0
- package/dist/dashboard/remote-run.js.map +1 -1
- package/dist/dashboard/types.d.ts +2 -0
- package/dist/dashboard/types.d.ts.map +1 -1
- package/dist/dashboard-bundle/assets/main-BpK2OYXg.js +141 -0
- package/dist/dashboard-bundle/assets/main-DYV5aTCD.css +2 -0
- package/dist/dashboard-bundle/assets/module-C6swDbeD.js +24 -0
- package/dist/dashboard-bundle/host/module.js +1 -1
- package/dist/dashboard-bundle/index.html +3 -3
- package/dist/dashboard-rpc/machines.d.ts +4 -1
- package/dist/dashboard-rpc/machines.d.ts.map +1 -1
- package/dist/dashboard-rpc/machines.js +5 -2
- package/dist/dashboard-rpc/machines.js.map +1 -1
- package/dist/dashboard-rpc/modules.d.ts.map +1 -1
- package/dist/dashboard-rpc/modules.js +5 -1
- package/dist/dashboard-rpc/modules.js.map +1 -1
- package/dist/dashboard-rpc/reads.d.ts +1 -1
- package/dist/dashboard-rpc/reads.js +1 -1
- package/dist/events.d.ts +15 -15
- package/dist/events.d.ts.map +1 -1
- package/dist/module-types/dashboard/components/AddMachineDialog.d.ts +4 -0
- package/dist/module-types/dashboard/components/DiffStat.d.ts +8 -2
- package/dist/module-types/dashboard/components/FileIcon.d.ts +5 -0
- package/dist/module-types/dashboard/components/Markdown.d.ts +5 -0
- package/dist/module-types/dashboard/components/PaneHeader.d.ts +14 -0
- package/dist/module-types/dashboard/components/SettingsRows.d.ts +3 -2
- package/dist/module-types/dashboard/components/ui/context-menu.d.ts +3 -0
- package/dist/module-types/dashboard/components/ui/copy-button.d.ts +5 -0
- package/dist/module-types/dashboard/components/ui/dialog.d.ts +7 -0
- package/dist/module-types/dashboard/components/ui/scroll-area.d.ts +1 -4
- package/dist/module-types/dashboard/lib/machines.d.ts +15 -0
- package/dist/module-types/dashboard/lib/models.d.ts +12 -0
- package/dist/module-types/dashboard/lib/remote-target.d.ts +6 -0
- package/dist/module-types/dashboard/lib/use-modules.d.ts +3 -3
- package/dist/module-types/dashboard/module/index.d.ts +41 -20
- package/dist/module-types/dashboard/rpc/machines.d.ts +9 -0
- package/dist/module-types/src/dashboard/agent-handoff.d.ts +48 -1
- package/dist/module-types/src/dashboard/cache.d.ts +5 -0
- package/dist/module-types/src/dashboard/machine-call.d.ts +13 -1
- package/dist/module-types/src/dashboard/remote-run.d.ts +6 -0
- package/dist/module-types/src/dashboard/types.d.ts +2 -0
- package/dist/module-types/src/dashboard-rpc/machines.d.ts +4 -1
- package/dist/module-types/src/dashboard-rpc/reads.d.ts +1 -1
- package/dist/module-types/src/events.d.ts +15 -15
- package/dist/module-types/src/package-services.d.ts +29 -0
- package/dist/module-types/src/project-hooks.d.ts +9 -1
- package/dist/module-types/src/project-modules.d.ts +3 -1
- package/dist/module-types/src/publish-levels.d.ts +4 -3
- package/dist/module-types/src/registry.d.ts +31 -0
- package/dist/module-types/src/screens.d.ts +7 -5
- package/dist/module-types/src/store/agent-store.d.ts +6 -0
- package/dist/module-types/src/store/runs.d.ts +6 -0
- package/dist/package-services.d.ts +4 -1
- package/dist/package-services.d.ts.map +1 -1
- package/dist/package-services.js +10 -0
- package/dist/package-services.js.map +1 -1
- package/dist/project-hooks.d.ts +9 -1
- package/dist/project-hooks.d.ts.map +1 -1
- package/dist/project-hooks.js +6 -1
- package/dist/project-hooks.js.map +1 -1
- package/dist/project-modules.d.ts +3 -1
- package/dist/project-modules.d.ts.map +1 -1
- package/dist/project-modules.js +4 -2
- package/dist/project-modules.js.map +1 -1
- package/dist/publish-levels.d.ts +4 -3
- package/dist/publish-levels.d.ts.map +1 -1
- package/dist/publish-levels.js +5 -4
- package/dist/publish-levels.js.map +1 -1
- package/dist/registry.d.ts +31 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +26 -1
- package/dist/registry.js.map +1 -1
- package/dist/screens.d.ts +7 -5
- package/dist/screens.d.ts.map +1 -1
- package/dist/screens.js +19 -8
- package/dist/screens.js.map +1 -1
- package/dist/store/agent-store.d.ts +6 -0
- package/dist/store/agent-store.d.ts.map +1 -1
- package/dist/store/agent-store.js.map +1 -1
- package/dist/store/run-record.js +1 -1
- package/dist/store/run-record.js.map +1 -1
- package/dist/store/runs.d.ts +6 -0
- package/dist/store/runs.d.ts.map +1 -1
- package/dist/store/runs.js +3 -1
- package/dist/store/runs.js.map +1 -1
- package/dist/terminal.js +4 -2
- package/dist/terminal.js.map +1 -1
- package/package.json +17 -15
- package/dist/dashboard-bundle/assets/main-DHxsfluB.js +0 -140
- package/dist/dashboard-bundle/assets/main-DbqABoVD.css +0 -2
- package/dist/dashboard-bundle/assets/module-CFB4pxwP.js +0 -24
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type GitRunner } from '@openagt/agent-data';
|
|
1
2
|
import { type LinkedPr, type BranchPrLookup } from './pull-requests.js';
|
|
2
3
|
import type { Cached } from './cache.js';
|
|
3
4
|
import type { AgentMeta } from '../store/index.js';
|
|
@@ -60,6 +61,30 @@ export interface AgentHandoff {
|
|
|
60
61
|
pr?: LinkedPr;
|
|
61
62
|
/** The PR is not known yet, rather than absent (#1028): the lookup is still running. */
|
|
62
63
|
prPending?: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* The session kept committing after its PR merged or closed (#1512): the branch holds commits
|
|
66
|
+
* on top of the PR's head, so the PR is not the answer to that work, which needs a pull request
|
|
67
|
+
* of its own.
|
|
68
|
+
*/
|
|
69
|
+
movedPastPr?: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* What a pull request for this branch would carry beyond the run's own work: the branch measured
|
|
72
|
+
* against the project's default branch, for a run started from another branch.
|
|
73
|
+
*
|
|
74
|
+
* A run started from a branch of this machine sits on that branch's unlanded commits, and its own
|
|
75
|
+
* work is measured from where it began ({@link base}) — which is the right count of what the run
|
|
76
|
+
* did. The pull request, though, goes to the default branch, so that branch's work rides along in
|
|
77
|
+
* it. Absent when a pull request would carry exactly what the run did, which is every run started
|
|
78
|
+
* from the branch the project starts agents from.
|
|
79
|
+
*/
|
|
80
|
+
carries?: {
|
|
81
|
+
/** The branch a pull request would go to, as the branches provider names it. */
|
|
82
|
+
base: string;
|
|
83
|
+
commits: number;
|
|
84
|
+
files: number;
|
|
85
|
+
insertions: number;
|
|
86
|
+
deletions: number;
|
|
87
|
+
};
|
|
63
88
|
/**
|
|
64
89
|
* The files the session changed and never committed, read from its own checkout (#1173).
|
|
65
90
|
*
|
|
@@ -93,6 +118,14 @@ export interface AgentHandoffDeps {
|
|
|
93
118
|
order?: 'first' | 'latest';
|
|
94
119
|
/** The commit the run's own work begins at ({@link AgentMeta.baseCommit}): what the branch is measured from. */
|
|
95
120
|
from?: string;
|
|
121
|
+
/** How git is asked whether the branch holds commits on top of its PR's head (default the real one). */
|
|
122
|
+
git?: GitRunner;
|
|
123
|
+
/**
|
|
124
|
+
* When the run ended ({@link AgentMeta.endedAt}), so a pull request it opened on its way out is
|
|
125
|
+
* not missed: a cached answer read while the run still worked cannot know about one, and the bar
|
|
126
|
+
* would go on offering to open a request the branch already has. See {@link lookupAgentPr}.
|
|
127
|
+
*/
|
|
128
|
+
endedAt?: string;
|
|
96
129
|
}
|
|
97
130
|
/**
|
|
98
131
|
* The branch an agent's work is on: what was recorded while the checkout existed (#799/#1277).
|
|
@@ -118,6 +151,20 @@ export declare function leftNothing(agent: {
|
|
|
118
151
|
pr?: unknown;
|
|
119
152
|
landed?: string;
|
|
120
153
|
}, host?: string): boolean;
|
|
154
|
+
/**
|
|
155
|
+
* Whether a cached pull request answer is from before the run ended, and so cannot have seen what
|
|
156
|
+
* the run did on its way out.
|
|
157
|
+
*
|
|
158
|
+
* A run told to publish its own work opens its pull request as it finishes. The lookup cached while
|
|
159
|
+
* it was still working says the branch has none, and that answer lives for a minute — long enough
|
|
160
|
+
* for the bar to offer "Open PR" for a branch that already has one, which is the single mistake
|
|
161
|
+
* that bar exists to prevent. An answer taken before the run's own end is thrown away rather than
|
|
162
|
+
* trusted; one taken after it has seen everything the run did.
|
|
163
|
+
*
|
|
164
|
+
* Nothing is thrown away for a run still going (no end to be older than), for an answer that was
|
|
165
|
+
* never read, or for a record whose end is not a date.
|
|
166
|
+
*/
|
|
167
|
+
export declare function answeredBefore(at: number | undefined, endedAt: string | undefined): boolean;
|
|
121
168
|
/** The cached single-PR read {@link resolveAgentPr} asks for the recorded PR's current state. */
|
|
122
169
|
export type CachedBranchPrLookup = (cwd: string, branch?: string) => Promise<Cached<LinkedPr | undefined>>;
|
|
123
170
|
/** What {@link resolveAgentPr} needs to know about an agent: structurally satisfied by {@link AgentMeta}. */
|
|
@@ -178,7 +225,7 @@ export declare function readAgentHandoff(cwd: string, branch: string, deps?: Age
|
|
|
178
225
|
* record kept, and the answer says landed. A branch gone because the run changed nothing is said
|
|
179
226
|
* as that, not as lost work. Undefined for a run with neither a branch nor a landed commit.
|
|
180
227
|
*/
|
|
181
|
-
export declare function readRunHandoff(cwd: string, agent: Pick<AgentMeta, 'id' | 'startedAt' | 'branch' | 'baseCommit' | 'landed' | 'status' | 'host' | 'pr'>, deps?: AgentHandoffDeps): Promise<AgentHandoff | undefined>;
|
|
228
|
+
export declare function readRunHandoff(cwd: string, agent: Pick<AgentMeta, 'id' | 'startedAt' | 'endedAt' | 'branch' | 'baseCommit' | 'landed' | 'status' | 'host' | 'pr'>, deps?: AgentHandoffDeps): Promise<AgentHandoff | undefined>;
|
|
182
229
|
/**
|
|
183
230
|
* What a handoff action did. The PR's `number` rides along with its `url` (E6), because the number
|
|
184
231
|
* is the fact worth *recording* — every surface that wants an agent's PR then reads it off the agent
|
|
@@ -23,6 +23,11 @@ export interface Cached<T> {
|
|
|
23
23
|
value: T | undefined;
|
|
24
24
|
/** True when no value is known yet and a read is still running. */
|
|
25
25
|
pending: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* When this value was read, for a caller that knows of something that happened since and cannot
|
|
28
|
+
* be in it — a pull request the run opened as it ended, say. Absent while nothing is known yet.
|
|
29
|
+
*/
|
|
30
|
+
at?: number;
|
|
26
31
|
}
|
|
27
32
|
/** Clock seam, so the tests do not sleep. */
|
|
28
33
|
export type Now = () => number;
|
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
/** What a call says when the machine at the address shows another key than the one it was added with. */
|
|
2
2
|
export declare const NOT_THE_MACHINE = "what answers at this address is not the machine that was added: add the machine again, with a new link";
|
|
3
|
+
/** How this computer says which one it is to a machine's door, with every call: the door lists it once by it. */
|
|
4
|
+
export declare const COMPUTER_HEADER = "x-openagent-computer";
|
|
5
|
+
/** Say which computer this is from here on, with every call to a machine. Set once, when OpenAgent starts. */
|
|
6
|
+
export declare function sayComputer(id: string | undefined): void;
|
|
7
|
+
/** The word OpenAgent was told to say, as the home file keeps it: what its own packages are handed, to say the same. */
|
|
8
|
+
export declare function computerSaid(): string | undefined;
|
|
9
|
+
/**
|
|
10
|
+
* The word this computer says to one machine's door, made from the word it keeps and that door's
|
|
11
|
+
* address: each door hears another word, so one that a machine learned says nothing at any other.
|
|
12
|
+
* A door's own package makes the same word for the line it keeps to that door.
|
|
13
|
+
*/
|
|
14
|
+
export declare function computerWordFor(word: string, door: string): string;
|
|
3
15
|
export interface MachineCall {
|
|
4
16
|
method?: string;
|
|
5
17
|
headers?: Record<string, string>;
|
|
6
18
|
body?: string;
|
|
7
19
|
signal?: AbortSignal;
|
|
8
20
|
}
|
|
9
|
-
export declare function machineFetch(url: string, pin: string | undefined,
|
|
21
|
+
export declare function machineFetch(url: string, pin: string | undefined, call?: MachineCall): Promise<Response>;
|
|
@@ -74,6 +74,12 @@ export type EnterResult = {
|
|
|
74
74
|
* is good once: a link used before, or older than a few minutes, is refused.
|
|
75
75
|
*/
|
|
76
76
|
export declare function enterRemote(door: string, code: string, name: string, pin?: string): Promise<EnterResult>;
|
|
77
|
+
/**
|
|
78
|
+
* The id a machine lists this computer under, among the devices that are in there: a door hands
|
|
79
|
+
* out a key as that id, a dot, and the secret. Never the secret; `undefined` for a key of
|
|
80
|
+
* another shape, so nothing of one is ever taken for an id.
|
|
81
|
+
*/
|
|
82
|
+
export declare function deviceIdOf(key: string): string | undefined;
|
|
77
83
|
/**
|
|
78
84
|
* Take this computer out of a machine: its key there stops working. Whether the machine did;
|
|
79
85
|
* one that cannot be reached keeps the key until this computer is removed there by hand.
|
|
@@ -71,6 +71,8 @@ export interface OnboardingSuggestion {
|
|
|
71
71
|
export interface StartAgentOptions {
|
|
72
72
|
/** The model to run on. */
|
|
73
73
|
model?: string;
|
|
74
|
+
/** How hard that model may think, by the coding agent's own names (`medium`, `high`, …): what the model lists as its efforts. */
|
|
75
|
+
effort?: string;
|
|
74
76
|
/** Which coding agent the run is on: `claude-code` or `codex`. */
|
|
75
77
|
driver?: string;
|
|
76
78
|
/** The person's saved pick of how far the run takes its work when the agent finishes. Absent, none is saved: the daemon starts the run at `commit`. A saved pick the project is not offered is held to the furthest the project goes with no pull request. */
|
|
@@ -39,14 +39,17 @@ export declare function onMachinesReachable(): Promise<Record<string, boolean>>;
|
|
|
39
39
|
export interface MachineVersions {
|
|
40
40
|
/** This computer's own. */
|
|
41
41
|
version: string;
|
|
42
|
-
/** Each saved machine, with its version when it answers and says. */
|
|
42
|
+
/** Each saved machine, with its version when it answers and says, and the id it lists this computer under among its devices. */
|
|
43
43
|
machines: (Machine & {
|
|
44
44
|
version?: string;
|
|
45
|
+
device?: string;
|
|
45
46
|
})[];
|
|
46
47
|
}
|
|
47
48
|
/**
|
|
48
49
|
* The saved machines with the OpenAgent each runs, beside this computer's own: how a page tells
|
|
49
50
|
* that a machine fell behind this computer. One short call to each, with this computer's key.
|
|
51
|
+
* The key itself is never told: only the id the machine lists this computer under, which a page
|
|
52
|
+
* that lists the machine's devices names this computer by.
|
|
50
53
|
*/
|
|
51
54
|
export declare function onMachineVersions(): Promise<MachineVersions>;
|
|
52
55
|
/** Whether a saved machine has a project of this computer's: `there` is false while the machine clones it. */
|
|
@@ -143,7 +143,7 @@ export declare function onDashboard(): Promise<DashboardData>;
|
|
|
143
143
|
* file git sees (tracked + untracked, honoring .gitignore), repo-relative and sorted, via
|
|
144
144
|
* `git ls-files`. Localhost-only by nature — the relay has no checkout, so it resolves `[]`.
|
|
145
145
|
* Pass a live `agentId` to list that agent's worktree instead of the project root (#738). The
|
|
146
|
-
* Files
|
|
146
|
+
* Files pane reads its own list, through its module.
|
|
147
147
|
*/
|
|
148
148
|
export declare function onProjectFiles(projectId: string, agentId?: string): Promise<string[]>;
|
|
149
149
|
/** The project's page on its git host and the git host's name (#489, #1820), or null: no git host package, no remote there, or the relay. */
|
|
@@ -96,6 +96,15 @@ export type OpenAgentEvent = {
|
|
|
96
96
|
kind: 'intent';
|
|
97
97
|
text: string;
|
|
98
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* The short name the session was given, emitted once, soon after it opens: a small model's two
|
|
101
|
+
* to five words for what the person asked, which is what every list of sessions shows instead of
|
|
102
|
+
* the prompt's first line.
|
|
103
|
+
*/
|
|
104
|
+
| {
|
|
105
|
+
kind: 'title';
|
|
106
|
+
text: string;
|
|
107
|
+
}
|
|
99
108
|
/** The wrapped agent's own progress, forwarded verbatim (never gated on). */
|
|
100
109
|
| {
|
|
101
110
|
kind: 'driver';
|
|
@@ -103,9 +112,11 @@ export type OpenAgentEvent = {
|
|
|
103
112
|
}
|
|
104
113
|
/**
|
|
105
114
|
* A live screen something the agent ran is showing: where it answers, on the loopback of the
|
|
106
|
-
* computer the run is on, live while it is the newest open screen at that address
|
|
107
|
-
*
|
|
108
|
-
*
|
|
115
|
+
* computer the run is on, live while it is the newest open screen at that address. `label`
|
|
116
|
+
* names what it showed then. The same address with `ended` says the screen has gone, and with
|
|
117
|
+
* `until` that it outlives the run, up to that time: a screen is a browser the person looks at
|
|
118
|
+
* and clicks in, which the run ending does not take from them. Both of those are rows a reader
|
|
119
|
+
* shows nothing for. A diary line a command appends itself (agent-driver's `DIARY_ENV`);
|
|
109
120
|
* OpenAgent passes a watcher's calls on to the address (dashboard/screen.ts) and knows nothing
|
|
110
121
|
* of what the screen is.
|
|
111
122
|
*/
|
|
@@ -114,6 +125,7 @@ export type OpenAgentEvent = {
|
|
|
114
125
|
url: string;
|
|
115
126
|
label: string;
|
|
116
127
|
ended?: true;
|
|
128
|
+
until?: string;
|
|
117
129
|
}
|
|
118
130
|
/** An OpenAgent-level log line. */
|
|
119
131
|
| {
|
|
@@ -135,18 +147,6 @@ export type OpenAgentEvent = {
|
|
|
135
147
|
headline: string;
|
|
136
148
|
detail?: string;
|
|
137
149
|
}
|
|
138
|
-
/**
|
|
139
|
-
* An ad-hoc markdown view the agent pushed to show the user (#441), e.g. a plan,
|
|
140
|
-
* a summary, or a diff writeup. Non-blocking (unlike a `choice`): the dashboard
|
|
141
|
-
* renders it as a view in the right rail. `id` is stable per title, so re-showing
|
|
142
|
-
* the same view updates it in place rather than stacking a duplicate.
|
|
143
|
-
*/
|
|
144
|
-
| {
|
|
145
|
-
kind: 'view';
|
|
146
|
-
id: string;
|
|
147
|
-
title: string;
|
|
148
|
-
markdown: string;
|
|
149
|
-
}
|
|
150
150
|
/**
|
|
151
151
|
* The pull request this session's work is on (E6), the moment one is opened for it.
|
|
152
152
|
*
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { type ChildProcess } from 'node:child_process';
|
|
2
|
+
import type { ProvidedCommand } from '@openagt/agent-data';
|
|
3
|
+
/**
|
|
4
|
+
* The services of OpenAgent's own packages: each declared command's `serve`, run as a process of
|
|
5
|
+
* its own for as long as OpenAgent runs, and told where OpenAgent is (`OPENAGENT_URL`) and which
|
|
6
|
+
* computer this is (`OPENAGENT_COMPUTER`), which the daemon puts in what it hands over. OpenAgent
|
|
7
|
+
* knows nothing of what a service does. One that ends by itself is started again after a
|
|
8
|
+
* while; all of them end with OpenAgent. Each is started in a process group of its own, so a
|
|
9
|
+
* Ctrl-C in OpenAgent's terminal reaches OpenAgent alone, which then ends them in its own order.
|
|
10
|
+
*/
|
|
11
|
+
/** How a package of this computer is told which computer this is: the name of the word in what it is started with. */
|
|
12
|
+
export declare const COMPUTER_ENV = "OPENAGENT_COMPUTER";
|
|
13
|
+
export interface PackageServicesOptions {
|
|
14
|
+
/** The commands to run, each a package's declared service. */
|
|
15
|
+
commands: readonly ProvidedCommand[];
|
|
16
|
+
/** OpenAgent's own address on this computer. */
|
|
17
|
+
url: string;
|
|
18
|
+
env: NodeJS.ProcessEnv;
|
|
19
|
+
log: (line: string) => void;
|
|
20
|
+
/** How a service's process is started; the real one when unsaid. */
|
|
21
|
+
spawn?: (bin: string, env: NodeJS.ProcessEnv) => ChildProcess;
|
|
22
|
+
/** After how long a service that ended by itself is started again. */
|
|
23
|
+
restartMs?: number;
|
|
24
|
+
}
|
|
25
|
+
export interface PackageServices {
|
|
26
|
+
/** End every service, and wait until each is gone. */
|
|
27
|
+
stop(): Promise<void>;
|
|
28
|
+
}
|
|
29
|
+
export declare function startPackageServices(opts: PackageServicesOptions): PackageServices;
|
|
@@ -64,12 +64,20 @@ export interface StartHookInput {
|
|
|
64
64
|
prompt: string;
|
|
65
65
|
driver?: string;
|
|
66
66
|
model?: string;
|
|
67
|
+
/** How hard the model may think, by the coding agent's own names. */
|
|
68
|
+
effort?: string;
|
|
67
69
|
/** A fresh agent's prompt once the run ends done with a pull request; the merge waits for it. */
|
|
68
70
|
then?: string;
|
|
69
71
|
/** How far the run takes its work when its agent finishes: `commit`, `branch`, `pr` or `merge`. */
|
|
70
72
|
publish?: string;
|
|
71
73
|
/** The branch the run's own branch starts from; origin's default branch when absent. */
|
|
72
74
|
base?: string;
|
|
75
|
+
/**
|
|
76
|
+
* Whether the run is given a short name by a small model (the person's setting). `false` reaches
|
|
77
|
+
* the run's own tool through the environment rather than the line, so no project's `hooks.yml`
|
|
78
|
+
* has to carry it; absent means named, which is what every run was before the setting existed.
|
|
79
|
+
*/
|
|
80
|
+
nameRun?: boolean;
|
|
73
81
|
}
|
|
74
82
|
/**
|
|
75
83
|
* Whether a `start` line passes the branch to start from on: it mentions `$BASE` or `${BASE`. A
|
|
@@ -95,7 +103,7 @@ export type RunHookResult = {
|
|
|
95
103
|
error: string;
|
|
96
104
|
};
|
|
97
105
|
/**
|
|
98
|
-
* Run the project's `start` line: the prompt in `PROMPT`, the picks in `DRIVER`, `MODEL`,
|
|
106
|
+
* Run the project's `start` line: the prompt in `PROMPT`, the picks in `DRIVER`, `MODEL`, `EFFORT`,
|
|
99
107
|
* `PUBLISH` and `BASE` when made, the follow-up in `THEN` when there is one. The line answers one JSON
|
|
100
108
|
* document on stdout whose `id` names the run it started, and whose `driver` may name the coding
|
|
101
109
|
* agent that runs it.
|
|
@@ -57,4 +57,6 @@ export type ModuleCommandResult = PackageCommandResult;
|
|
|
57
57
|
* many or too long arguments. A command that exits non-zero answers its last stderr line; one that
|
|
58
58
|
* prints no JSON says so.
|
|
59
59
|
*/
|
|
60
|
-
export declare function runModuleCommand(root: string, module: ProjectModule, args: readonly string[], command?: string
|
|
60
|
+
export declare function runModuleCommand(root: string, module: ProjectModule, args: readonly string[], command?: string,
|
|
61
|
+
/** What the command is started with, beside what this process itself has. */
|
|
62
|
+
more?: NodeJS.ProcessEnv): Promise<ModuleCommandResult>;
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
* How far a run takes its work when its agent finishes, node-free so every surface shares
|
|
3
3
|
* one copy: the registry's preference sanitizer, the daemon's Start and the dashboard bundle.
|
|
4
4
|
* The levels are the words a project's start hook is handed as `PUBLISH`, the ones
|
|
5
|
-
* `agent-runner run --publish` takes. The launcher's menu offers them after "
|
|
6
|
-
* that hands the hook no level:
|
|
5
|
+
* `agent-runner run --publish` takes. The launcher's menu offers them after "Off", the pick
|
|
6
|
+
* that hands the hook no level: nothing is added to the person's message then, and whether the
|
|
7
|
+
* agent commits is its own, by the branches skill in its checkout.
|
|
7
8
|
* Until a person picks, a run commits its work and pushes nothing: what leaves the machine is the
|
|
8
9
|
* person's to ask for.
|
|
9
10
|
*/
|
|
@@ -28,5 +29,5 @@ export declare function offeredPublishPicks(gitHost: boolean, remote?: boolean):
|
|
|
28
29
|
* A saved pick the project is not offered falls back to the furthest it goes with no pull request.
|
|
29
30
|
*/
|
|
30
31
|
export declare function publishPickIn(saved: PublishPick | undefined, gitHost: boolean, remote?: boolean): PublishPick;
|
|
31
|
-
/** The level a pick hands the start hook; none for
|
|
32
|
+
/** The level a pick hands the start hook; none for Off. */
|
|
32
33
|
export declare function publishLevelOf(pick: PublishPick): PublishLevel | undefined;
|
|
@@ -79,6 +79,12 @@ export interface Preferences {
|
|
|
79
79
|
notifyHumanIntervention?: boolean;
|
|
80
80
|
/** The model to run on (#628), e.g. `opus` / `sonnet`, handed to the project's start hook. Absent = the hook's own default. */
|
|
81
81
|
model?: string;
|
|
82
|
+
/**
|
|
83
|
+
* How hard that model may think, by the coding agent's own names (`low`, `medium`, `high`, …),
|
|
84
|
+
* handed to the project's start hook. Absent = the agent's own default. Kept whatever the model:
|
|
85
|
+
* a model that does not take one simply never shows it, and the pick stays for the one that does.
|
|
86
|
+
*/
|
|
87
|
+
effort?: string;
|
|
82
88
|
/** Which coding agent a run starts on (#650): `claude-code` or `codex`, handed to the project's start hook. Absent = the hook's own default. */
|
|
83
89
|
driver?: string;
|
|
84
90
|
/** How far a run started from the dashboard publishes its work: `nothing`, or the level handed to the project's start hook, `commit`, `branch`, `pr` or `merge`. The launcher's menu shows it and writes it. Absent = none saved: the daemon decides where a Start goes. */
|
|
@@ -97,6 +103,20 @@ export interface Preferences {
|
|
|
97
103
|
* too. **Absent = off.**
|
|
98
104
|
*/
|
|
99
105
|
postMergeCleanup?: boolean;
|
|
106
|
+
/**
|
|
107
|
+
* Name each run: a small model is asked for the two to five words a list of runs shows in place
|
|
108
|
+
* of the first line of the prompt (`agent-runner`'s `title.ts`). It is one short turn of the
|
|
109
|
+
* cheapest model with no tools, measured at a thirtieth of a cent a run, and it is the only
|
|
110
|
+
* money OpenAgent spends on something a person only looks at — so it can be turned off, and the
|
|
111
|
+
* run keeps the person's own words. **Absent = on.**
|
|
112
|
+
*/
|
|
113
|
+
nameRuns?: boolean;
|
|
114
|
+
/**
|
|
115
|
+
* Show what the agent thought between its steps: a row of its own inside the panel a run of calls
|
|
116
|
+
* opens, saying the thought's first words. Thinking is not a step the agent took, and Claude Code
|
|
117
|
+
* on the web shows none of it, so it is off unless a person asks to read it. **Absent = off.**
|
|
118
|
+
*/
|
|
119
|
+
showThinking?: boolean;
|
|
100
120
|
/** Preferred editor for "Open in editor" (#727): an editor CLI (e.g. `code`, `cursor`, `zed`).
|
|
101
121
|
* Absent falls back to `$OPENAGENT_EDITOR`, then `code`. */
|
|
102
122
|
editor?: string;
|
|
@@ -140,6 +160,12 @@ export interface Registry {
|
|
|
140
160
|
* carries a key, so the list is never part of what the browser is handed.
|
|
141
161
|
*/
|
|
142
162
|
machines?: MachineRecord[];
|
|
163
|
+
/**
|
|
164
|
+
* Which computer this is, as it says to the machines it gets into: a word made once and kept,
|
|
165
|
+
* so a machine lists this computer once, and takes what it had there for replaced when it gets
|
|
166
|
+
* in again. Top-level, and never part of what the browser is handed. Absent until first needed.
|
|
167
|
+
*/
|
|
168
|
+
computer?: string;
|
|
143
169
|
}
|
|
144
170
|
/** A read/write handle for the user preferences, wired into the dashboard's context by the daemon. */
|
|
145
171
|
export interface PreferencesStore {
|
|
@@ -243,6 +269,11 @@ export declare function patchPreferences(patch: Preferences, fs?: RegistryFs, en
|
|
|
243
269
|
* with the other mutators so two concurrent starts can't each write a different key.
|
|
244
270
|
*/
|
|
245
271
|
export declare function ensureBridgeToken(fs?: RegistryFs, env?: NodeJS.ProcessEnv): Promise<string>;
|
|
272
|
+
/**
|
|
273
|
+
* Which computer this is: read the word the home file keeps, or make one and keep it now.
|
|
274
|
+
* Serialized with the other mutators, so two starts at once do not each make another.
|
|
275
|
+
*/
|
|
276
|
+
export declare function ensureComputerId(fs?: RegistryFs, env?: NodeJS.ProcessEnv): Promise<string>;
|
|
246
277
|
/** The persisted bridge key, or `undefined` when none exists. A pure read: it never generates one. */
|
|
247
278
|
export declare function readBridgeToken(fs?: RegistryFs, env?: NodeJS.ProcessEnv): Promise<string | undefined>;
|
|
248
279
|
/** The saved machines, newest first. Forgiving like every read of this file: none on a bad file. */
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import type { OpenAgentEvent } from './events.js';
|
|
2
2
|
/**
|
|
3
3
|
* Which of a run's `screen` lines are live and which are hidden. Live: the newest line at its
|
|
4
|
-
* address with no `ended` line for it after, and
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* address with no `ended` line for it after, and, once the run has ended, a `until` line for it
|
|
5
|
+
* after that end whose time has not passed — a browser outlives its run for a while, so the
|
|
6
|
+
* person can still look at the page and click in it, and the screen that shows it says for how
|
|
7
|
+
* long. Every `ended` and `until` line is hidden: the screen going, and it staying, are said by
|
|
8
|
+
* its line being live or not.
|
|
7
9
|
*/
|
|
8
|
-
export declare function foldScreenRows(events: readonly OpenAgentEvent[]): {
|
|
10
|
+
export declare function foldScreenRows(events: readonly OpenAgentEvent[], now?: number): {
|
|
9
11
|
live: Set<OpenAgentEvent>;
|
|
10
12
|
hidden: Set<OpenAgentEvent>;
|
|
11
13
|
};
|
|
12
14
|
/** Where a run's live screen answers: the address of its newest live `screen` line, or nothing. */
|
|
13
|
-
export declare function liveScreen(events: readonly OpenAgentEvent[]): string | undefined;
|
|
15
|
+
export declare function liveScreen(events: readonly OpenAgentEvent[], now?: number): string | undefined;
|
|
@@ -35,6 +35,8 @@ export interface AgentMeta {
|
|
|
35
35
|
host?: string;
|
|
36
36
|
/** What this session was asked for (from the `intent` event). */
|
|
37
37
|
intent?: string;
|
|
38
|
+
/** The session's short name, as a list shows it: two to five words a small model gave it. */
|
|
39
|
+
title?: string;
|
|
38
40
|
/**
|
|
39
41
|
* The run this one was started for, by its id: this run is that run's subagent. Written on the
|
|
40
42
|
* card by the tool that started it; absent on a run a person or a schedule started.
|
|
@@ -182,6 +184,10 @@ export interface AgentMeta {
|
|
|
182
184
|
* on its own default (and on records from before this field).
|
|
183
185
|
*/
|
|
184
186
|
model?: string;
|
|
187
|
+
/** How hard that model was told to think, by the coding agent's own names (`medium`, `high`, …); absent, it thinks as it does by default. */
|
|
188
|
+
effort?: string;
|
|
189
|
+
/** How much of the model's context the conversation filled at the last turn; absent when the agent reports no reading. */
|
|
190
|
+
contextTokens?: number;
|
|
185
191
|
}
|
|
186
192
|
/**
|
|
187
193
|
* The slice of a filesystem the store's reads need: the logic is testable with an in-memory fs,
|
|
@@ -28,8 +28,12 @@ export interface RunCard {
|
|
|
28
28
|
endedAt?: string;
|
|
29
29
|
status: RunStatus;
|
|
30
30
|
intent?: string;
|
|
31
|
+
/** The run's short name, two to five words, as a list of runs shows it; absent when nothing named it. */
|
|
32
|
+
title?: string;
|
|
31
33
|
driver?: string;
|
|
32
34
|
model?: string;
|
|
35
|
+
/** How hard that model was told to think, by the agent's own names (`medium`, `high`, …). */
|
|
36
|
+
effort?: string;
|
|
33
37
|
branch?: string;
|
|
34
38
|
pr?: {
|
|
35
39
|
number: number;
|
|
@@ -37,6 +41,8 @@ export interface RunCard {
|
|
|
37
41
|
};
|
|
38
42
|
ticket?: string;
|
|
39
43
|
cost?: number;
|
|
44
|
+
/** How much of the model's context the conversation filled at the run's last turn. */
|
|
45
|
+
contextTokens?: number;
|
|
40
46
|
caller?: Record<string, unknown>;
|
|
41
47
|
}
|
|
42
48
|
/** The two late facts a finished run's card may still learn: the branch its work landed on, its pull request. */
|
|
@@ -2,11 +2,14 @@ import { type ChildProcess } from 'node:child_process';
|
|
|
2
2
|
import type { ProvidedCommand } from '@openagt/agent-data';
|
|
3
3
|
/**
|
|
4
4
|
* The services of OpenAgent's own packages: each declared command's `serve`, run as a process of
|
|
5
|
-
* its own for as long as OpenAgent runs, and told where OpenAgent is (`OPENAGENT_URL`)
|
|
5
|
+
* its own for as long as OpenAgent runs, and told where OpenAgent is (`OPENAGENT_URL`) and which
|
|
6
|
+
* computer this is (`OPENAGENT_COMPUTER`), which the daemon puts in what it hands over. OpenAgent
|
|
6
7
|
* knows nothing of what a service does. One that ends by itself is started again after a
|
|
7
8
|
* while; all of them end with OpenAgent. Each is started in a process group of its own, so a
|
|
8
9
|
* Ctrl-C in OpenAgent's terminal reaches OpenAgent alone, which then ends them in its own order.
|
|
9
10
|
*/
|
|
11
|
+
/** How a package of this computer is told which computer this is: the name of the word in what it is started with. */
|
|
12
|
+
export declare const COMPUTER_ENV = "OPENAGENT_COMPUTER";
|
|
10
13
|
export interface PackageServicesOptions {
|
|
11
14
|
/** The commands to run, each a package's declared service. */
|
|
12
15
|
commands: readonly ProvidedCommand[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-services.d.ts","sourceRoot":"","sources":["../src/package-services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAE1D
|
|
1
|
+
{"version":3,"file":"package-services.d.ts","sourceRoot":"","sources":["../src/package-services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAE1D;;;;;;;GAOG;AAEH,sHAAsH;AACtH,eAAO,MAAM,YAAY,uBAAuB,CAAA;AAEhD,MAAM,WAAW,sBAAsB;IACrC,8DAA8D;IAC9D,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAA;IACpC,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;IACtB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3B,oEAAoE;IACpE,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,UAAU,KAAK,YAAY,CAAA;IAC7D,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACtB;AAKD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,sBAAsB,GAAG,eAAe,CAwDlF"}
|
package/dist/package-services.js
CHANGED
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
import { spawn as nodeSpawn } from 'node:child_process';
|
|
2
|
+
/**
|
|
3
|
+
* The services of OpenAgent's own packages: each declared command's `serve`, run as a process of
|
|
4
|
+
* its own for as long as OpenAgent runs, and told where OpenAgent is (`OPENAGENT_URL`) and which
|
|
5
|
+
* computer this is (`OPENAGENT_COMPUTER`), which the daemon puts in what it hands over. OpenAgent
|
|
6
|
+
* knows nothing of what a service does. One that ends by itself is started again after a
|
|
7
|
+
* while; all of them end with OpenAgent. Each is started in a process group of its own, so a
|
|
8
|
+
* Ctrl-C in OpenAgent's terminal reaches OpenAgent alone, which then ends them in its own order.
|
|
9
|
+
*/
|
|
10
|
+
/** How a package of this computer is told which computer this is: the name of the word in what it is started with. */
|
|
11
|
+
export const COMPUTER_ENV = 'OPENAGENT_COMPUTER';
|
|
2
12
|
/** How long a service gets to end by itself once asked, before it is killed. */
|
|
3
13
|
const STOP_GRACE_MS = 3_000;
|
|
4
14
|
export function startPackageServices(opts) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-services.js","sourceRoot":"","sources":["../src/package-services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,SAAS,EAAqB,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"package-services.js","sourceRoot":"","sources":["../src/package-services.ts"],"names":[],"mappings":"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"}
|
package/dist/project-hooks.d.ts
CHANGED
|
@@ -64,12 +64,20 @@ export interface StartHookInput {
|
|
|
64
64
|
prompt: string;
|
|
65
65
|
driver?: string;
|
|
66
66
|
model?: string;
|
|
67
|
+
/** How hard the model may think, by the coding agent's own names. */
|
|
68
|
+
effort?: string;
|
|
67
69
|
/** A fresh agent's prompt once the run ends done with a pull request; the merge waits for it. */
|
|
68
70
|
then?: string;
|
|
69
71
|
/** How far the run takes its work when its agent finishes: `commit`, `branch`, `pr` or `merge`. */
|
|
70
72
|
publish?: string;
|
|
71
73
|
/** The branch the run's own branch starts from; origin's default branch when absent. */
|
|
72
74
|
base?: string;
|
|
75
|
+
/**
|
|
76
|
+
* Whether the run is given a short name by a small model (the person's setting). `false` reaches
|
|
77
|
+
* the run's own tool through the environment rather than the line, so no project's `hooks.yml`
|
|
78
|
+
* has to carry it; absent means named, which is what every run was before the setting existed.
|
|
79
|
+
*/
|
|
80
|
+
nameRun?: boolean;
|
|
73
81
|
}
|
|
74
82
|
/**
|
|
75
83
|
* Whether a `start` line passes the branch to start from on: it mentions `$BASE` or `${BASE`. A
|
|
@@ -95,7 +103,7 @@ export type RunHookResult = {
|
|
|
95
103
|
error: string;
|
|
96
104
|
};
|
|
97
105
|
/**
|
|
98
|
-
* Run the project's `start` line: the prompt in `PROMPT`, the picks in `DRIVER`, `MODEL`,
|
|
106
|
+
* Run the project's `start` line: the prompt in `PROMPT`, the picks in `DRIVER`, `MODEL`, `EFFORT`,
|
|
99
107
|
* `PUBLISH` and `BASE` when made, the follow-up in `THEN` when there is one. The line answers one JSON
|
|
100
108
|
* document on stdout whose `id` names the run it started, and whose `driver` may name the coding
|
|
101
109
|
* agent that runs it.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-hooks.d.ts","sourceRoot":"","sources":["../src/project-hooks.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;GAYG;AAEH,iEAAiE;AACjE,eAAO,MAAM,kBAAkB,yBAA+B,CAAA;AAE9D,6EAA6E;AAC7E,eAAO,MAAM,eAAe,QAAS,CAAA;AAErC,yIAAyI;AACzI,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;AAEvC;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAA;AAK5C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAKD;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAa7G;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,SAAqB,GAAG,YAAY,CA0BxF;AAED,MAAM,WAAW,eAAe;IAC9B,2EAA2E;IAC3E,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5B,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,oEAAoE;IACpE,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CACzB;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAE,eAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAS5G;AAED,kLAAkL;AAClL,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,iGAAiG;IACjG,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,mGAAmG;IACnG,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,wFAAwF;IACxF,IAAI,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"project-hooks.d.ts","sourceRoot":"","sources":["../src/project-hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/project-hooks.js
CHANGED
|
@@ -110,7 +110,7 @@ export function startLineTakesBase(line) {
|
|
|
110
110
|
return /\$\{?BASE\b/.test(line);
|
|
111
111
|
}
|
|
112
112
|
/**
|
|
113
|
-
* Run the project's `start` line: the prompt in `PROMPT`, the picks in `DRIVER`, `MODEL`,
|
|
113
|
+
* Run the project's `start` line: the prompt in `PROMPT`, the picks in `DRIVER`, `MODEL`, `EFFORT`,
|
|
114
114
|
* `PUBLISH` and `BASE` when made, the follow-up in `THEN` when there is one. The line answers one JSON
|
|
115
115
|
* document on stdout whose `id` names the run it started, and whose `driver` may name the coding
|
|
116
116
|
* agent that runs it.
|
|
@@ -118,8 +118,13 @@ export function startLineTakesBase(line) {
|
|
|
118
118
|
export function runStartHook(cwd, input, opts = {}) {
|
|
119
119
|
return runRunHook(cwd, 'start', {
|
|
120
120
|
PROMPT: input.prompt,
|
|
121
|
+
// Not for the line to pass on: the run's own tool reads it from the environment it is started
|
|
122
|
+
// in, since it is the hook's own child. So turning naming off needs no `hooks.yml` of any
|
|
123
|
+
// project changed, which a setting nobody can act on would not be a setting at all.
|
|
124
|
+
...(input.nameRun === false ? { OPENAGENT_NAME_RUN: '0' } : {}),
|
|
121
125
|
...(input.driver !== undefined ? { DRIVER: input.driver } : {}),
|
|
122
126
|
...(input.model !== undefined ? { MODEL: input.model } : {}),
|
|
127
|
+
...(input.effort !== undefined ? { EFFORT: input.effort } : {}),
|
|
123
128
|
...(input.then !== undefined ? { THEN: input.then } : {}),
|
|
124
129
|
...(input.publish !== undefined ? { PUBLISH: input.publish } : {}),
|
|
125
130
|
...(input.base !== undefined ? { BASE: input.base } : {}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-hooks.js","sourceRoot":"","sources":["../src/project-hooks.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"project-hooks.js","sourceRoot":"","sources":["../src/project-hooks.ts"],"names":[],"mappings":"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"}
|