@stringsync/splates 0.0.45 → 0.0.47
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 +121 -9
- package/artifact.d.ts +3 -30
- package/budget.d.ts +3 -0
- package/coordinator.d.ts +3 -0
- package/creds.d.ts +3 -123
- package/flags.d.ts +37 -0
- package/index.js +826 -26419
- package/lane.d.ts +3 -55
- package/main.d.ts +6 -0
- package/package.json +3 -42
- package/projects.d.ts +3 -136
- package/queue.d.ts +3 -0
- package/setup.d.ts +16 -98
- package/slots.d.ts +3 -135
- package/splates.d.ts +1 -19
- package/todo.d.ts +3 -146
- package/{splates-tunnel.d.ts → tunnel.d.ts} +1 -1
- package/{splates-worker.d.ts → worker.d.ts} +1 -1
- package/acp-extensions.d.ts +0 -82
- package/add.d.ts +0 -53
- package/adherence.d.ts +0 -49
- package/age.d.ts +0 -2
- package/agent-connection.d.ts +0 -171
- package/agent-errors.d.ts +0 -2
- package/agent-process.d.ts +0 -65
- package/agent-stream.d.ts +0 -91
- package/agents.d.ts +0 -15
- package/artifact-room.d.ts +0 -47
- package/artifact-viewers.d.ts +0 -6
- package/artifacts.d.ts +0 -161
- package/asked.d.ts +0 -146
- package/asked.js +0 -7
- package/assumed.d.ts +0 -34
- package/attach.d.ts +0 -30
- package/attachments.d.ts +0 -43
- package/baselines.d.ts +0 -55
- package/claim.d.ts +0 -17
- package/cloudflare-api.d.ts +0 -25
- package/cloudflare-error.d.ts +0 -5
- package/cloudflared-tunnel-provider.d.ts +0 -27
- package/codex-limits.d.ts +0 -19
- package/compaction.d.ts +0 -17
- package/config-source.d.ts +0 -13
- package/config.d.ts +0 -98
- package/config.js +0 -7
- package/conversation-archive.d.ts +0 -6
- package/conversation-background.d.ts +0 -21
- package/conversation-choice.d.ts +0 -4
- package/conversation-files.d.ts +0 -51
- package/conversation-given.d.ts +0 -8
- package/conversation-host.d.ts +0 -102
- package/conversation-listing.d.ts +0 -15
- package/conversation-log.d.ts +0 -301
- package/conversation-messages.d.ts +0 -18
- package/conversation-name.d.ts +0 -28
- package/conversation-options.d.ts +0 -73
- package/conversation-reference.d.ts +0 -2
- package/conversation-state.d.ts +0 -472
- package/conversation-turns.d.ts +0 -115
- package/conversation.d.ts +0 -209
- package/conversations.d.ts +0 -140
- package/coordinator-state.d.ts +0 -28
- package/darwin-temperature.d.ts +0 -7
- package/decided.d.ts +0 -18
- package/demo.d.ts +0 -29
- package/dev/api.d.ts +0 -209
- package/dev/assets.d.ts +0 -24
- package/dev/conversation-address.d.ts +0 -47
- package/dev/conversation-feed.d.ts +0 -166
- package/dev/live-stream.d.ts +0 -29
- package/dev/worker.d.ts +0 -33
- package/dev-access.d.ts +0 -61
- package/dev-artifacts.d.ts +0 -22
- package/dev-budgets.d.ts +0 -18
- package/dev-conversation-events.d.ts +0 -39
- package/dev-conversation-routes.d.ts +0 -90
- package/dev-creds.d.ts +0 -17
- package/dev-dictation-connection.d.ts +0 -18
- package/dev-dictation.d.ts +0 -17
- package/dev-http.d.ts +0 -76
- package/dev-open.d.ts +0 -15
- package/dev-options.d.ts +0 -133
- package/dev-outcomes.d.ts +0 -21
- package/dev-pages.d.ts +0 -16
- package/dev-picker.d.ts +0 -57
- package/dev-port-socket.d.ts +0 -26
- package/dev-ports.d.ts +0 -11
- package/dev-project-watch.d.ts +0 -44
- package/dev-project.d.ts +0 -168
- package/dev-push.d.ts +0 -59
- package/dev-restart.d.ts +0 -141
- package/dev-servers.d.ts +0 -30
- package/dev-setup-native.d.ts +0 -23
- package/dev-setup-opencode.d.ts +0 -29
- package/dev-setup.d.ts +0 -16
- package/dev-shell.d.ts +0 -70
- package/dev-slot.d.ts +0 -28
- package/dev-sockets.d.ts +0 -13
- package/dev-task-ports.d.ts +0 -73
- package/dev-tasks.d.ts +0 -20
- package/dev-terminal-connection.d.ts +0 -19
- package/dev-terminal.d.ts +0 -42
- package/dev-todos.d.ts +0 -35
- package/dev-transcriber.d.ts +0 -15
- package/dev-tunnel.d.ts +0 -38
- package/dev-versions.d.ts +0 -53
- package/dev-workers.d.ts +0 -55
- package/dev.d.ts +0 -24
- package/diff.d.ts +0 -29
- package/dispatched.d.ts +0 -16
- package/editors.d.ts +0 -22
- package/escalate.d.ts +0 -27
- package/events.d.ts +0 -311
- package/everywhere.d.ts +0 -41
- package/exhibit.d.ts +0 -21
- package/exit.d.ts +0 -54
- package/fact-todos.d.ts +0 -18
- package/fake-agent.d.ts +0 -107
- package/fake-agent.js +0 -284
- package/finding-facts.d.ts +0 -38
- package/findings.d.ts +0 -84
- package/fold.d.ts +0 -43
- package/follow.d.ts +0 -41
- package/format.d.ts +0 -68
- package/git.d.ts +0 -112
- package/handed-out.d.ts +0 -79
- package/handoff.d.ts +0 -23
- package/heavy-run.d.ts +0 -12
- package/heavy.d.ts +0 -28
- package/heavy.js +0 -16
- package/held.d.ts +0 -22
- package/index-0tfvy823.js +0 -272
- package/index-43pq33n4.js +0 -157
- package/index-4776671w.js +0 -698
- package/index-d4hjrzaq.js +0 -464
- package/index-gcfq7awr.js +0 -740
- package/index-k73tsw5g.js +0 -101
- package/index-kaa44k7q.js +0 -59
- package/index-vcv9m93e.js +0 -1265
- package/index-xmfmy729.js +0 -249
- package/init.d.ts +0 -28
- package/journal.d.ts +0 -57
- package/landed.d.ts +0 -14
- package/lane-todos.d.ts +0 -44
- package/lanes-from-tags.d.ts +0 -17
- package/lanes.d.ts +0 -96
- package/legacy-names.d.ts +0 -70
- package/legacy-ps.d.ts +0 -31
- package/limits.d.ts +0 -32
- package/list.d.ts +0 -18
- package/load-config.d.ts +0 -44
- package/log.d.ts +0 -14
- package/machine.d.ts +0 -42
- package/merge.d.ts +0 -35
- package/migrate-config.d.ts +0 -31
- package/models.d.ts +0 -24
- package/needs.d.ts +0 -115
- package/notices.d.ts +0 -39
- package/offered.d.ts +0 -39
- package/opencode-usage.d.ts +0 -37
- package/outcomes.d.ts +0 -114
- package/path.d.ts +0 -13
- package/plan.d.ts +0 -236
- package/port-forward.d.ts +0 -22
- package/port-pipe.d.ts +0 -36
- package/ports-list.d.ts +0 -19
- package/probe-runtime.d.ts +0 -5
- package/probe-runtime.js +0 -13
- package/project-reaches.d.ts +0 -23
- package/prompts.d.ts +0 -128
- package/pty.d.ts +0 -39
- package/pulse.d.ts +0 -8
- package/recommend.d.ts +0 -31
- package/release.d.ts +0 -41
- package/remote-process.d.ts +0 -26
- package/remote-pty.d.ts +0 -29
- package/remote-worker.d.ts +0 -77
- package/remove.d.ts +0 -31
- package/repository.d.ts +0 -91
- package/retry.d.ts +0 -34
- package/roster.d.ts +0 -63
- package/saved-ports-host.d.ts +0 -25
- package/saved-tunnel.d.ts +0 -44
- package/server-worker-socket.d.ts +0 -21
- package/setup-areas.d.ts +0 -7
- package/setup-opencode-model-error.d.ts +0 -3
- package/setup-opencode-models.d.ts +0 -54
- package/setup-opencode-recipe.d.ts +0 -26
- package/setup-opencode.d.ts +0 -46
- package/shared-browser.d.ts +0 -50
- package/shell.d.ts +0 -17
- package/show.d.ts +0 -106
- package/skill-checks.d.ts +0 -73
- package/skill-checks.js +0 -10
- package/skills.d.ts +0 -16
- package/slot-tunnel.d.ts +0 -27
- package/snapshot.d.ts +0 -75
- package/splates-artifact.d.ts +0 -3
- package/splates-creds.d.ts +0 -3
- package/splates-dev.d.ts +0 -22
- package/splates-flags.d.ts +0 -34
- package/splates-lane.d.ts +0 -3
- package/splates-projects.d.ts +0 -3
- package/splates-setup.d.ts +0 -17
- package/splates-slots.d.ts +0 -3
- package/splates-todo.d.ts +0 -3
- package/stats.d.ts +0 -186
- package/supervise.d.ts +0 -50
- package/system-changes.d.ts +0 -67
- package/system.d.ts +0 -28
- package/systems.d.ts +0 -119
- package/systems.js +0 -21
- package/table.d.ts +0 -5
- package/task-log.d.ts +0 -35
- package/task-ports.d.ts +0 -25
- package/tell.d.ts +0 -47
- package/todo-edit.d.ts +0 -60
- package/todo-file.d.ts +0 -6
- package/todo-lanes.d.ts +0 -82
- package/todo-list.d.ts +0 -26
- package/todo-take.d.ts +0 -27
- package/todos.d.ts +0 -157
- package/tool-calls.d.ts +0 -18
- package/tunnel-provider.d.ts +0 -37
- package/tunnel-provider.js +0 -0
- package/tunnel-remove.d.ts +0 -28
- package/tunnel-setup.d.ts +0 -104
- package/unix-worker-listener.d.ts +0 -23
- package/unix-worker-socket.d.ts +0 -30
- package/update.d.ts +0 -29
- package/update.js +0 -10
- package/vocabulary.d.ts +0 -9
- package/wait.d.ts +0 -36
- package/watch.d.ts +0 -46
- package/watched.d.ts +0 -43
- package/websocket-worker-socket.d.ts +0 -18
- package/worker-call-host.d.ts +0 -51
- package/worker-channel.d.ts +0 -83
- package/worker-connection.d.ts +0 -24
- package/worker-daemon.d.ts +0 -64
- package/worker-git.d.ts +0 -18
- package/worker-list.d.ts +0 -49
- package/worker-machine.d.ts +0 -34
- package/worker-port-host.d.ts +0 -21
- package/worker-process-host.d.ts +0 -29
- package/worker-protocol.d.ts +0 -104
- package/worker-pty-host.d.ts +0 -34
- package/worker-registry.d.ts +0 -68
- package/worker-replay.d.ts +0 -25
- package/worker-run.d.ts +0 -20
- package/worker-session.d.ts +0 -189
- package/worker-socket.d.ts +0 -15
- package/worktree-service.d.ts +0 -113
- package/worktree.d.ts +0 -232
package/plan.d.ts
DELETED
|
@@ -1,236 +0,0 @@
|
|
|
1
|
-
import type { Fs } from "webappwiz/system";
|
|
2
|
-
/** The plan each task keeps at its worktree root, excluded from git. */
|
|
3
|
-
export declare const PLAN_FILE = "SPLATES.md";
|
|
4
|
-
/** Where tasks keep their plans: each worktree's `SPLATES.md`, read through `fs`. */
|
|
5
|
-
export declare class Plans {
|
|
6
|
-
private readonly fs;
|
|
7
|
-
constructor(fs: Fs);
|
|
8
|
-
/**
|
|
9
|
-
* The plan in worktree `tree`, or null for none: an agent still on arbor's
|
|
10
|
-
* skill keeps it as `ARBOR.md`, read when there is no `SPLATES.md`.
|
|
11
|
-
*/
|
|
12
|
-
read(tree: string): Promise<string | null>;
|
|
13
|
-
/**
|
|
14
|
-
* Keeps plans out of git in every worktree of the repository whose shared
|
|
15
|
-
* `.git` is `gitDir`, leaving the repo's own .gitignore alone.
|
|
16
|
-
*/
|
|
17
|
-
exclude(gitDir: string): Promise<void>;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* The one step under `## Next` a fresh task's `SPLATES.md` starts with, asking
|
|
21
|
-
* its agent to plan, which no one should read as the work under way.
|
|
22
|
-
*/
|
|
23
|
-
export declare const STUB_STEP = "fill in Goal and list the steps here as `- [ ]` items";
|
|
24
|
-
/**
|
|
25
|
-
* What an `SPLATES.md` says its task is for: the first line under `## Goal`, or
|
|
26
|
-
* null when it says nothing yet. One line, since it sits beside other tasks'
|
|
27
|
-
* in `splates list --files`.
|
|
28
|
-
*/
|
|
29
|
-
export declare function goalLine(text: string): string | null;
|
|
30
|
-
/**
|
|
31
|
-
* What an `SPLATES.md` says done means: all of `## Goal`, as markdown, or ""
|
|
32
|
-
* when it says nothing yet.
|
|
33
|
-
*/
|
|
34
|
-
export declare function goalOf(text: string): string;
|
|
35
|
-
/**
|
|
36
|
-
* One `- [ ] 9.` item under `## Blocked`: something only a person can do.
|
|
37
|
-
* The item's line is its subject; lines indented under it are its body, and
|
|
38
|
-
* `- (a) ...`, `- [a] ...` or `- a. ...` lines among them are the answers it
|
|
39
|
-
* offers.
|
|
40
|
-
*/
|
|
41
|
-
export interface Question {
|
|
42
|
-
/** As the plan numbers it, `9`: the name a reply goes by. */
|
|
43
|
-
number: string;
|
|
44
|
-
/** Checked off, which the agent does once it has acted on the reply. */
|
|
45
|
-
done: boolean;
|
|
46
|
-
/** The item's own line, without its checkbox, number, size or reply. */
|
|
47
|
-
text: string;
|
|
48
|
-
/**
|
|
49
|
-
* How far the call reaches, from the `(large)` that leads its line, one of
|
|
50
|
-
* `SIZES` as the skill writes it; null when it has none.
|
|
51
|
-
*/
|
|
52
|
-
size: string | null;
|
|
53
|
-
/**
|
|
54
|
-
* The markdown indented under it, dedented, choices left out: detail,
|
|
55
|
-
* code blocks, `` images. Empty when there is none.
|
|
56
|
-
*/
|
|
57
|
-
body: string;
|
|
58
|
-
/** Whatever follows ` → `, or null when nobody has answered yet. */
|
|
59
|
-
reply: string | null;
|
|
60
|
-
/**
|
|
61
|
-
* What a person added once the reply was read, oldest first: each an
|
|
62
|
-
* indented `→ ` line under the question.
|
|
63
|
-
*/
|
|
64
|
-
followUps: string[];
|
|
65
|
-
/**
|
|
66
|
-
* The answers it offers, in order. Empty for a question answered in words
|
|
67
|
-
* alone. A reply can always add words to its picks, or answer in words
|
|
68
|
-
* instead.
|
|
69
|
-
*/
|
|
70
|
-
choices: Choice[];
|
|
71
|
-
/**
|
|
72
|
-
* `one` for `- (a)` choices, at most one of which a reply picks; `any` for
|
|
73
|
-
* `- [a]` choices, where it picks all that apply; `order` for `- a.`
|
|
74
|
-
* choices, which a reply puts in order, every one of them, as `b, a, c`.
|
|
75
|
-
* Null without choices.
|
|
76
|
-
*/
|
|
77
|
-
pick: "one" | "any" | "order" | null;
|
|
78
|
-
}
|
|
79
|
-
/** One answer a question offers: `- (b) Migrate on next login`. */
|
|
80
|
-
export interface Choice {
|
|
81
|
-
/** The letter it goes by: `b`. */
|
|
82
|
-
key: string;
|
|
83
|
-
/** What it says, without the `(chosen)` that may end it. */
|
|
84
|
-
text: string;
|
|
85
|
-
/**
|
|
86
|
-
* The markdown indented under it, dedented: most often the screenshot of
|
|
87
|
-
* what it would look like. Empty when there is none.
|
|
88
|
-
*/
|
|
89
|
-
body: string;
|
|
90
|
-
/**
|
|
91
|
-
* Why the agent would go with it, or not: a `Why:` line under it, without
|
|
92
|
-
* the label, kept out of `body`. The page folds
|
|
93
|
-
* it away until asked. Empty when there is none.
|
|
94
|
-
*/
|
|
95
|
-
why: string;
|
|
96
|
-
/**
|
|
97
|
-
* Marked `(chosen)`: what the agent went with while it waits for the reply,
|
|
98
|
-
* which picks nothing for the person.
|
|
99
|
-
*/
|
|
100
|
-
chosen: boolean;
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* How far a call reaches, smallest first, as the skill defines each: small
|
|
104
|
-
* stays local and is cheap to redo, medium shapes a feature or spans
|
|
105
|
-
* systems, large is hard to undo or outward-facing. The one place the scheme
|
|
106
|
-
* lives: outcomes keep each call's size as the word it was written with, so
|
|
107
|
-
* a word dropped from here still reads back from older outcomes.
|
|
108
|
-
*/
|
|
109
|
-
export declare const SIZES: readonly ["small", "medium", "large"];
|
|
110
|
-
/** `text` without the size that leads it, and that size, or null. */
|
|
111
|
-
export declare function sized(text: string): {
|
|
112
|
-
text: string;
|
|
113
|
-
size: string | null;
|
|
114
|
-
};
|
|
115
|
-
/**
|
|
116
|
-
* Every numbered item under `## Blocked`, open or checked off, each with the
|
|
117
|
-
* indented lines under it. The reply is read off the item's own line: an
|
|
118
|
-
* answer is one line after the arrow, which the agent writes in from the
|
|
119
|
-
* user's reply in chat.
|
|
120
|
-
*/
|
|
121
|
-
export declare function questions(text: string): Question[];
|
|
122
|
-
/**
|
|
123
|
-
* Every numbered item under `## Assumptions`: a call the agent made without
|
|
124
|
-
* asking, written as a question is, its `(chosen)` choice the one it took.
|
|
125
|
-
* Numbered in the same sequence as `## Blocked`, since a challenged one moves
|
|
126
|
-
* there under its number. None of them hold up a merge.
|
|
127
|
-
*/
|
|
128
|
-
export declare function assumptions(text: string): Question[];
|
|
129
|
-
/**
|
|
130
|
-
* Adds what `line` offers to `asked`, saying whether it did: an indented
|
|
131
|
-
* `- (a) text` picks one, `- [a] text` picks any, and `- a. text` is put in
|
|
132
|
-
* order, and a line indented past a choice's dash, such as its screenshot,
|
|
133
|
-
* belongs to that choice. The first choice says which for the question. The
|
|
134
|
-
* same in a plan and in a conversation, which `asked.ts` reads with this.
|
|
135
|
-
*/
|
|
136
|
-
export declare function offers(asked: Pick<Question, "choices" | "pick">, line: string): boolean;
|
|
137
|
-
/** `asked` with `body` as its own, and each choice's dedented. */
|
|
138
|
-
export declare function settled(asked: Question, body: string[]): Question;
|
|
139
|
-
/** Lines with the indent they all share taken off, blank ends trimmed. */
|
|
140
|
-
export declare function dedent(lines: string[]): string;
|
|
141
|
-
/**
|
|
142
|
-
* How the person met the agent's picks under `## Blocked`: the questions
|
|
143
|
-
* asked, those that offered a `(chosen)` choice and were answered with a
|
|
144
|
-
* choice, and of those, the ones answered with another, and the ones answered
|
|
145
|
-
* with the agent's choice but with words added, in the reply or a follow-up.
|
|
146
|
-
* A moot question, or one answered in words alone, is asked but picks nothing.
|
|
147
|
-
*/
|
|
148
|
-
export declare function picks(text: string): {
|
|
149
|
-
asked: number;
|
|
150
|
-
picked: number;
|
|
151
|
-
overturned: number;
|
|
152
|
-
amended: number;
|
|
153
|
-
};
|
|
154
|
-
/**
|
|
155
|
-
* One call a plan made, as an outcome keeps it: enough to count how the
|
|
156
|
-
* agent's recommendations fare by size, and to size it again by its line if
|
|
157
|
-
* the scheme changes.
|
|
158
|
-
*/
|
|
159
|
-
export interface Decision {
|
|
160
|
-
/** As the plan numbers it. */
|
|
161
|
-
number: string;
|
|
162
|
-
/** The item's line, without its size. */
|
|
163
|
-
text: string;
|
|
164
|
-
/** The word its line was sized with, or null for none. */
|
|
165
|
-
size: string | null;
|
|
166
|
-
/** Put to the person under `## Blocked`, or made without asking. */
|
|
167
|
-
how: "asked" | "assumed";
|
|
168
|
-
/**
|
|
169
|
-
* What became of the agent's recommendation: an assumption left alone is
|
|
170
|
-
* kept; a pick taken as it was, kept; taken with words added, amended;
|
|
171
|
-
* answered with another choice, overturned; an assumption the person
|
|
172
|
-
* challenged, challenged. Null for a question with no pick to meet, or
|
|
173
|
-
* one never answered with a choice.
|
|
174
|
-
*/
|
|
175
|
-
ended: "kept" | "amended" | "overturned" | "challenged" | null;
|
|
176
|
-
}
|
|
177
|
-
/** Every call in the plan `text`, asked and assumed, in the order numbered. */
|
|
178
|
-
export declare function decisions(text: string): Decision[];
|
|
179
|
-
/**
|
|
180
|
-
* How many calls the agent made without asking, and how many of them the
|
|
181
|
-
* person challenged. A challenged one moves to `## Blocked` under its number
|
|
182
|
-
* with a reply starting `challenged:`, so it counts in both.
|
|
183
|
-
*/
|
|
184
|
-
export declare function assumptionCounts(text: string): {
|
|
185
|
-
made: number;
|
|
186
|
-
challenged: number;
|
|
187
|
-
};
|
|
188
|
-
/** What still stands between a task and trunk, as its plan tells it. */
|
|
189
|
-
export interface Unfinished {
|
|
190
|
-
/** Each unchecked question under `## Blocked`, by number: `["2", "4"]`. */
|
|
191
|
-
questions: string[];
|
|
192
|
-
/** Each unchecked step under `## Next`, as written. */
|
|
193
|
-
steps: string[];
|
|
194
|
-
}
|
|
195
|
-
/**
|
|
196
|
-
* The questions and steps a plan leaves unchecked. Nothing in either means the
|
|
197
|
-
* task is ready to merge: `splates merge` lands it, and `splates escalate --review`
|
|
198
|
-
* asks a person to look first. A task with no plan has nothing left.
|
|
199
|
-
*/
|
|
200
|
-
export declare function unfinished(text: string): Unfinished;
|
|
201
|
-
/** Whether {@link unfinished} found nothing left. */
|
|
202
|
-
export declare function ready({ questions, steps }: Unfinished): boolean;
|
|
203
|
-
/** What {@link unfinished} found, as a clause: `questions 1, 2 unchecked under ## Blocked`. */
|
|
204
|
-
export declare function whatIsLeft({ questions, steps }: Unfinished): string;
|
|
205
|
-
/**
|
|
206
|
-
* The plan with a new open question at the end of `## Blocked`, the section
|
|
207
|
-
* made if missing, numbered after the highest there or under
|
|
208
|
-
* `## Assumptions`. Returns the plan and the number it went by.
|
|
209
|
-
*/
|
|
210
|
-
export declare function withQuestion(text: string, subject: string, body?: string): {
|
|
211
|
-
plan: string;
|
|
212
|
-
number: string;
|
|
213
|
-
};
|
|
214
|
-
/**
|
|
215
|
-
* A question's number however a person typed it: `9`, `9.`, `Q9` and `q9:`
|
|
216
|
-
* all mean `9`. Null for anything that is not a number at all.
|
|
217
|
-
*/
|
|
218
|
-
export declare function questionNumber(raw: string): string | null;
|
|
219
|
-
export interface PlanOptions {
|
|
220
|
-
/** The task name the title is expected to match. */
|
|
221
|
-
task: string;
|
|
222
|
-
/**
|
|
223
|
-
* Whether the task has escalated, which makes `## Blocked` required unless
|
|
224
|
-
* it escalated for a review.
|
|
225
|
-
*/
|
|
226
|
-
escalated?: boolean;
|
|
227
|
-
/** Whether the escalation asks only to approve merging. */
|
|
228
|
-
review?: boolean;
|
|
229
|
-
}
|
|
230
|
-
/**
|
|
231
|
-
* Every way a task's `SPLATES.md` departs from the shape the agent skill
|
|
232
|
-
* prescribes, phrased for the agent that wrote it. Advisory only: a resumable
|
|
233
|
-
* plan is the point, and a malformed one still beats none, so nothing here
|
|
234
|
-
* blocks a merge.
|
|
235
|
-
*/
|
|
236
|
-
export declare function checkPlan(text: string, { task, escalated, review }: PlanOptions): string[];
|
package/port-forward.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import type { Resource } from "webappwiz/disposable";
|
|
2
|
-
import type { RemoteWorker } from "./remote-worker.js";
|
|
3
|
-
/**
|
|
4
|
-
* A loopback port on the coordinator standing in for `port` on a worker:
|
|
5
|
-
* each connection made to it goes down the worker's socket as a `port`
|
|
6
|
-
* channel, so a task's dev server opens here wherever its worker runs.
|
|
7
|
-
*/
|
|
8
|
-
export declare class PortForward implements Resource {
|
|
9
|
-
readonly worker: RemoteWorker;
|
|
10
|
-
/** The worker's port, which this forwards to. */
|
|
11
|
-
readonly port: number;
|
|
12
|
-
private readonly listener;
|
|
13
|
-
private constructor();
|
|
14
|
-
/**
|
|
15
|
-
* Listens on `prefer` when it is free, so the task's port keeps its
|
|
16
|
-
* number here, and on any free port when not.
|
|
17
|
-
*/
|
|
18
|
-
static listen(worker: RemoteWorker, port: number, prefer?: number | null): PortForward;
|
|
19
|
-
/** The coordinator's port it listens on. */
|
|
20
|
-
get local(): number;
|
|
21
|
-
dispose(): void;
|
|
22
|
-
}
|
package/port-pipe.d.ts
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import type { Resource } from "webappwiz/disposable";
|
|
2
|
-
import type { WorkerChannel } from "./worker-channel.js";
|
|
3
|
-
import type { WorkerSession } from "./worker-session.js";
|
|
4
|
-
/**
|
|
5
|
-
* Bun's TCP socket, whose handlers hand each event to the `PortPipe` it
|
|
6
|
-
* carries: none yet on one a listener just took in, until its `open` makes one.
|
|
7
|
-
*/
|
|
8
|
-
export type PipedSocket = Bun.Socket<PortPipe | undefined>;
|
|
9
|
-
/** The handlers `Bun.connect` and `Bun.listen` take for a piped socket. */
|
|
10
|
-
export declare const PIPE_HANDLERS: Bun.SocketHandler<PortPipe | undefined>;
|
|
11
|
-
/**
|
|
12
|
-
* One TCP connection carried over a `port` channel, the same at both ends: at
|
|
13
|
-
* the worker, to the task's port; at the coordinator, from whoever opened its
|
|
14
|
-
* forward. Bytes go both ways as the channel's data, the socket stops reading
|
|
15
|
-
* while the session is full, and either end closing closes the other.
|
|
16
|
-
*/
|
|
17
|
-
export declare class PortPipe implements Resource {
|
|
18
|
-
private readonly channel;
|
|
19
|
-
private readonly session;
|
|
20
|
-
private socket;
|
|
21
|
-
/** What the kernel would not take yet, sent on the next drain. */
|
|
22
|
-
private unsent;
|
|
23
|
-
/** The channel closed, so the socket ends once `unsent` is out. */
|
|
24
|
-
private ending;
|
|
25
|
-
private done;
|
|
26
|
-
constructor(channel: WorkerChannel, session: WorkerSession);
|
|
27
|
-
/** Takes the socket it pipes, once it is open. */
|
|
28
|
-
attach(socket: PipedSocket): void;
|
|
29
|
-
/** Bun's `data` handler calls this with each chunk it read. */
|
|
30
|
-
received(chunk: Uint8Array): void;
|
|
31
|
-
/** Sends what the kernel has room for now, and ends once all is out. */
|
|
32
|
-
flush(): void;
|
|
33
|
-
/** The socket closed, from either end: so does the channel. */
|
|
34
|
-
closed(): void;
|
|
35
|
-
dispose(): void;
|
|
36
|
-
}
|
package/ports-list.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { Logger } from "webappwiz/log";
|
|
2
|
-
import type { Ps } from "webappwiz/system";
|
|
3
|
-
/** What `splates ports` is run with. */
|
|
4
|
-
export interface PortsOptions {
|
|
5
|
-
/** Only this task's; empty for every task's. */
|
|
6
|
-
task: string;
|
|
7
|
-
/** The `splates server` to ask; empty for the one this agent runs under, or this machine's. */
|
|
8
|
-
dev: string;
|
|
9
|
-
json: boolean;
|
|
10
|
-
log: Logger;
|
|
11
|
-
ps: Ps;
|
|
12
|
-
send?: typeof fetch;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* `splates ports`: asks the running `splates server` which ports tasks serve, each
|
|
16
|
-
* with its link through the saved ports host and its link on this machine,
|
|
17
|
-
* so an agent can hand the user both.
|
|
18
|
-
*/
|
|
19
|
-
export declare function portsLs(opts: PortsOptions): Promise<void>;
|
package/probe-runtime.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/** Execution primitives shared with the focused skill eval runner. */
|
|
2
|
-
export type { Agent, AgentProcess, Launch } from "./agent-process.js";
|
|
3
|
-
export { framed } from "./agent-process.js";
|
|
4
|
-
export { AgentStream } from "./agent-stream.js";
|
|
5
|
-
export { Roster } from "./roster.js";
|
package/probe-runtime.js
DELETED
package/project-reaches.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import type { Logger } from "webappwiz/log";
|
|
2
|
-
import type { Git } from "./git.js";
|
|
3
|
-
import type { Projects, Reach } from "./projects.js";
|
|
4
|
-
/**
|
|
5
|
-
* `splates projects list`: each other project, with what it may do in the one
|
|
6
|
-
* `git` is in, and what that one may do there.
|
|
7
|
-
*/
|
|
8
|
-
export declare function listReaches({ projects, git, log }: {
|
|
9
|
-
projects: Projects;
|
|
10
|
-
git: Git;
|
|
11
|
-
log: Logger;
|
|
12
|
-
}, { json }?: {
|
|
13
|
-
json?: boolean;
|
|
14
|
-
}): Promise<void>;
|
|
15
|
-
/**
|
|
16
|
-
* `splates projects grant`: lets agents of the project `slug` names do as much
|
|
17
|
-
* as `reach` in the one `git` is in.
|
|
18
|
-
*/
|
|
19
|
-
export declare function grantReach({ projects, git, log }: {
|
|
20
|
-
projects: Projects;
|
|
21
|
-
git: Git;
|
|
22
|
-
log: Logger;
|
|
23
|
-
}, slug: string, reach: Reach): Promise<void>;
|
package/prompts.d.ts
DELETED
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
import type { AgentPick } from "./roster.js";
|
|
2
|
-
/** What a chat with an agent takes to mean todo `id`. */
|
|
3
|
-
export declare function todoReference(id: number): string;
|
|
4
|
-
/**
|
|
5
|
-
* What the untriaged lane, the todos in no lane, goes by where a lane's
|
|
6
|
-
* number would: `[SPLATES LANE untriaged]`, `splates lane show untriaged`.
|
|
7
|
-
*/
|
|
8
|
-
export declare const UNTRIAGED = "untriaged";
|
|
9
|
-
/**
|
|
10
|
-
* What a chat with an agent takes to mean "work down lane `id`", or, for
|
|
11
|
-
* null, "place the untriaged todos in lanes, then work those down".
|
|
12
|
-
*/
|
|
13
|
-
export declare function laneReference(id: number | null): string;
|
|
14
|
-
/** What a chat with an agent takes to mean "claim `task` and carry on with it". */
|
|
15
|
-
export declare function taskReference(task: string): string;
|
|
16
|
-
/** What a chat with an agent takes to mean "walk the user through setup step `step`". */
|
|
17
|
-
export declare function setupReference(step: string): string;
|
|
18
|
-
/**
|
|
19
|
-
* What a chat with an agent takes to mean "the agent at work on `task` handed
|
|
20
|
-
* it to you: claim it and carry on from where its `SPLATES.md` says it stands".
|
|
21
|
-
*/
|
|
22
|
-
export declare function handoffReference(task: string): string;
|
|
23
|
-
/**
|
|
24
|
-
* What asks the agent in a conversation to hand its task off to `pick`'s
|
|
25
|
-
* agent, on its model when it names one, as the page's Hand off action sends.
|
|
26
|
-
*/
|
|
27
|
-
export declare function handoffToReference(pick: AgentPick): string;
|
|
28
|
-
/**
|
|
29
|
-
* What tells the conversation that handed `task` out that it stopped:
|
|
30
|
-
* escalated, merged or removed, which `splates show` says.
|
|
31
|
-
*/
|
|
32
|
-
export declare function reportReference(task: string): string;
|
|
33
|
-
/**
|
|
34
|
-
* What tells the conversation that handed `task` out that the person
|
|
35
|
-
* terminated its agent, leaving the task as it stood.
|
|
36
|
-
*/
|
|
37
|
-
export declare function stoppedReference(task: string): string;
|
|
38
|
-
/**
|
|
39
|
-
* What tells the conversation that handed `task` out that its agent's turn
|
|
40
|
-
* ended, or failed, with the task still under way and not escalated, so it
|
|
41
|
-
* waits on nothing that will come.
|
|
42
|
-
*/
|
|
43
|
-
export declare function idleReference(task: string): string;
|
|
44
|
-
/**
|
|
45
|
-
* What asks the conversation that handed tasks out, idle `HEARTBEAT_IDLE` while
|
|
46
|
-
* an agent it handed one to is at work, to check on each and say where its
|
|
47
|
-
* lanes stand.
|
|
48
|
-
*/
|
|
49
|
-
export declare const HEARTBEAT = "[SPLATES HEARTBEAT]";
|
|
50
|
-
/**
|
|
51
|
-
* What tells a lane's orchestrator that todo `id`, in a lane it works, left
|
|
52
|
-
* the list: merged, or removed.
|
|
53
|
-
*/
|
|
54
|
-
export declare function todoDoneReference(id: number): string;
|
|
55
|
-
/**
|
|
56
|
-
* What tells a lane's orchestrator that todo `id`, in a lane it works, is
|
|
57
|
-
* open again: the task that took it released it or was removed.
|
|
58
|
-
*/
|
|
59
|
-
export declare function todoOpenReference(id: number): string;
|
|
60
|
-
/**
|
|
61
|
-
* What tells a lane's orchestrator that every lane it works is done, however
|
|
62
|
-
* the last todo landed, so it ends on its Finished report.
|
|
63
|
-
*/
|
|
64
|
-
export declare const LANES_DONE = "[SPLATES LANES DONE]";
|
|
65
|
-
/**
|
|
66
|
-
* Whether `text` is an update splates itself tells the conversation that handed
|
|
67
|
-
* tasks out: a report, idle, stopped, a todo done or open, heartbeat or
|
|
68
|
-
* lanes done, never the person's word.
|
|
69
|
-
*/
|
|
70
|
-
export declare function isUpdate(text: string): boolean;
|
|
71
|
-
/**
|
|
72
|
-
* What asks an agent to bring its `SPLATES.md` up to date and stop, as before a
|
|
73
|
-
* restart: the splates skill says what it means.
|
|
74
|
-
*/
|
|
75
|
-
export declare const CHECKPOINT = "[SPLATES CHECKPOINT]";
|
|
76
|
-
/**
|
|
77
|
-
* What asks an agent to carry on from where its `SPLATES.md` says it stopped,
|
|
78
|
-
* after a checkpoint: the splates skill says what it means.
|
|
79
|
-
*/
|
|
80
|
-
export declare const RESUME = "[SPLATES RESUME]";
|
|
81
|
-
/**
|
|
82
|
-
* What asks an agent to carry on with a turn a lost connection cut short, as
|
|
83
|
-
* the page's Reconnect button sends: the splates skill says what it means.
|
|
84
|
-
*/
|
|
85
|
-
export declare const RECONNECT = "[SPLATES RECONNECT]";
|
|
86
|
-
/**
|
|
87
|
-
* What approves a task's review and asks the agent to merge it, as the Ready
|
|
88
|
-
* to merge card's Merge button sends: the splates skill says what it means.
|
|
89
|
-
*/
|
|
90
|
-
export declare const MERGE = "[SPLATES MERGE]";
|
|
91
|
-
/**
|
|
92
|
-
* What approves an agent's proposal as it stands and asks it to go ahead,
|
|
93
|
-
* the answers to any calls it chose nothing for after it, as the Proposed
|
|
94
|
-
* card's Approve button sends: the splates skill says what it means.
|
|
95
|
-
*/
|
|
96
|
-
export declare const APPROVE = "[SPLATES APPROVE]";
|
|
97
|
-
/**
|
|
98
|
-
* What asks an agent long at work to say where its work stands and carry on,
|
|
99
|
-
* as the page's Check in button sends: the splates skill says what it means.
|
|
100
|
-
*/
|
|
101
|
-
export declare const CHECK_IN = "[SPLATES UPDATE]";
|
|
102
|
-
/**
|
|
103
|
-
* What asks an agent to make the request after it a todo rather than do it,
|
|
104
|
-
* or, alone, to make the person's message before it one, with what it did on
|
|
105
|
-
* it since, and stop, as the composer's Defer offers: the splates skill says
|
|
106
|
-
* what it means.
|
|
107
|
-
*/
|
|
108
|
-
export declare const DEFER = "[SPLATES DEFER]";
|
|
109
|
-
/**
|
|
110
|
-
* What the agent alone is told of a message the person dictated: the page
|
|
111
|
-
* marks it with a mic, and never shows these words.
|
|
112
|
-
*/
|
|
113
|
-
export declare const DICTATED = "(Dictated by voice: words that sound alike may be swapped, and names in this project misspelled. Read a near miss as the closest name in the project, and ask before acting on a reading that changes what you do.)";
|
|
114
|
-
/** Each `[SPLATES ...]` directive in a text, wherever it stands. */
|
|
115
|
-
export declare const DIRECTIVES: RegExp;
|
|
116
|
-
/**
|
|
117
|
-
* The directives `text` starts with, in order, and what follows them; none
|
|
118
|
-
* when it starts with anything else.
|
|
119
|
-
*/
|
|
120
|
-
export declare function leadingDirectives(text: string): {
|
|
121
|
-
directives: string[];
|
|
122
|
-
rest: string;
|
|
123
|
-
};
|
|
124
|
-
/**
|
|
125
|
-
* `text` trimmed, read as splates's directive when it is one of arbor's, as a
|
|
126
|
-
* conversation from before the rename holds.
|
|
127
|
-
*/
|
|
128
|
-
export declare function directive(text: string): string;
|
package/pty.d.ts
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import type { AsyncResource } from "webappwiz/disposable";
|
|
2
|
-
import { type Eventful } from "webappwiz/events";
|
|
3
|
-
import type { Ps } from "webappwiz/system";
|
|
4
|
-
/** What a shell on a `Pty` says: bytes it wrote, and that it is gone. */
|
|
5
|
-
export interface PtyEvents extends Record<string, unknown> {
|
|
6
|
-
data: Uint8Array;
|
|
7
|
-
exit: number;
|
|
8
|
-
}
|
|
9
|
-
/** Where and how big a `Pty` starts. */
|
|
10
|
-
export interface PtyOptions {
|
|
11
|
-
argv: string[];
|
|
12
|
-
cwd: string;
|
|
13
|
-
cols: number;
|
|
14
|
-
rows: number;
|
|
15
|
-
env?: Record<string, string>;
|
|
16
|
-
ps?: Ps;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* A program on a pseudo-terminal of its own, the way a terminal window runs a
|
|
20
|
-
* shell: whatever it writes arrives as `data`, and `write` is typing at it.
|
|
21
|
-
* POSIX only, since `Bun.Terminal` is.
|
|
22
|
-
*/
|
|
23
|
-
export declare class Pty implements AsyncResource, Eventful<PtyEvents> {
|
|
24
|
-
private readonly dispatcher;
|
|
25
|
-
readonly events: import("webappwiz/events").Events<PtyEvents>;
|
|
26
|
-
private readonly child;
|
|
27
|
-
constructor({ argv, cwd, cols, rows, env, ps, }: PtyOptions);
|
|
28
|
-
/** The shell's pid, for the job it runs. */
|
|
29
|
-
get pid(): number;
|
|
30
|
-
/** Types `data` at the program, keys and pastes alike. */
|
|
31
|
-
write(data: string | Uint8Array): void;
|
|
32
|
-
/** What a window resize does: the program hears of it as SIGWINCH. */
|
|
33
|
-
resize(cols: number, rows: number): void;
|
|
34
|
-
/**
|
|
35
|
-
* Hangs up, as closing a terminal window does: the shell passes it on to
|
|
36
|
-
* its jobs, background ones included.
|
|
37
|
-
*/
|
|
38
|
-
disposeAsync(): Promise<void>;
|
|
39
|
-
}
|
package/pulse.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { Duration } from "webappwiz/time";
|
|
2
|
-
/**
|
|
3
|
-
* How often `splates server` says a stream it serves is still there, so the page
|
|
4
|
-
* can tell one that went quiet, as across a sleep, from one with no news.
|
|
5
|
-
*/
|
|
6
|
-
export declare const PULSE: Duration;
|
|
7
|
-
/** The event it says so with, one the page's handlers for news never hear. */
|
|
8
|
-
export declare const PULSE_EVENT: Uint8Array<ArrayBuffer>;
|
package/recommend.d.ts
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { type LaneRecord, type LaneState } from "./lanes.js";
|
|
2
|
-
import type { Todo } from "./todo.js";
|
|
3
|
-
import type { Todos } from "./todos.js";
|
|
4
|
-
/** What a finished task should be followed by, and what should just go. */
|
|
5
|
-
export interface Recommendation {
|
|
6
|
-
/** The todo to pick up next, or null when there is nothing fresh left. */
|
|
7
|
-
next: Todo | null;
|
|
8
|
-
/** Todos left waiting so long they probably no longer apply. */
|
|
9
|
-
stale: Todo[];
|
|
10
|
-
/**
|
|
11
|
-
* The lane the finished task's todos ran in, when it has more to do:
|
|
12
|
-
* `next` is its next step then, even one another lane still blocks.
|
|
13
|
-
*/
|
|
14
|
-
lane?: LaneState;
|
|
15
|
-
/** Every lane there is now, to name those `lane` is blocked by. */
|
|
16
|
-
records?: LaneRecord[];
|
|
17
|
-
/** A lane the finished task's todos emptied: its agent is done. */
|
|
18
|
-
finished?: LaneRecord;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Which todo to take up after `task`. A task whose todos ran in a lane goes
|
|
22
|
-
* on down that lane, since that is what its agent was handed. Otherwise one
|
|
23
|
-
* that came up in it first, since whoever just finished it knows that context
|
|
24
|
-
* best, then the open one highest on the list, which is how
|
|
25
|
-
* whoever keeps the list says what matters most; never one still blocked by
|
|
26
|
-
* another yet to merge. Todos past `staleness` are never recommended, only
|
|
27
|
-
* offered for removal.
|
|
28
|
-
*/
|
|
29
|
-
export declare function recommend(todos: Todos, task: string | null, staleness: number, ran?: LaneRecord[]): Promise<Recommendation>;
|
|
30
|
-
/** The lines `merge` ends with, or none when there is nothing to say. */
|
|
31
|
-
export declare function recommendation({ next, stale, lane, records, finished, }: Recommendation): string[];
|
package/release.d.ts
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import type { Ps } from "webappwiz/system";
|
|
2
|
-
/** The version of splates running now, as `ship` stamped it. */
|
|
3
|
-
export declare const RUNNING: string;
|
|
4
|
-
/** Where npm says which version of splates is the latest. */
|
|
5
|
-
export declare const REGISTRY = "https://registry.npmjs.org/@stringsync%2fsplates/latest";
|
|
6
|
-
/** A newer splates than the one serving, published since it started. */
|
|
7
|
-
export interface Release {
|
|
8
|
-
running: string;
|
|
9
|
-
newest: string;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Commits to splates's own source since `splates server` started from a checkout of
|
|
13
|
-
* it, which a restart picks up.
|
|
14
|
-
*/
|
|
15
|
-
export interface Behind {
|
|
16
|
-
/** The last commit to the source as the server started. */
|
|
17
|
-
running: string;
|
|
18
|
-
/** The last commit to it now. */
|
|
19
|
-
newest: string;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* The directories splates runs from in a checkout: its own, and the webappwiz
|
|
23
|
-
* library it imports, whose commits change what the server runs just as much.
|
|
24
|
-
*/
|
|
25
|
-
export declare const SOURCE: string[];
|
|
26
|
-
/**
|
|
27
|
-
* The last commit to `source`, or null when splates does not run from a
|
|
28
|
-
* checkout, as from npm, or git cannot say. Never throws, like `newest`.
|
|
29
|
-
*/
|
|
30
|
-
export declare function sourceCommit(ps: Ps, source?: string[]): Promise<string | null>;
|
|
31
|
-
/**
|
|
32
|
-
* The latest version of splates on npm, or null when the registry cannot say:
|
|
33
|
-
* offline, slow, or answering with something else. A check that fails has
|
|
34
|
-
* nothing to tell the person at the page, so it never throws.
|
|
35
|
-
*/
|
|
36
|
-
export declare function newest(registry?: string): Promise<string | null>;
|
|
37
|
-
/**
|
|
38
|
-
* Whether `version` is past `than`, by major, minor and patch. A prerelease is
|
|
39
|
-
* never newer: only what `@latest` installs is worth a restart.
|
|
40
|
-
*/
|
|
41
|
-
export declare function isNewer(version: string, than: string): boolean;
|
package/remote-process.d.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import type { AgentFrame, AgentProcess, ProcessHandle } from "./agent-process.js";
|
|
2
|
-
import type { WorkerChannel } from "./worker-channel.js";
|
|
3
|
-
import type { WorkerSession } from "./worker-session.js";
|
|
4
|
-
/**
|
|
5
|
-
* A process running on a worker, seen from the coordinator as any
|
|
6
|
-
* `AgentProcess` is: writing `input` is its stdin, `output` its stdout, each
|
|
7
|
-
* frame in the seq its channel gave it, acked back to the worker once written
|
|
8
|
-
* down. Its pid is null until the worker says it started; one taken back
|
|
9
|
-
* after a restart asks again, since the word came before.
|
|
10
|
-
*/
|
|
11
|
-
export declare class RemoteProcess implements AgentProcess {
|
|
12
|
-
private readonly channel;
|
|
13
|
-
readonly input: WritableStream<Uint8Array>;
|
|
14
|
-
readonly output: ReadableStream<AgentFrame>;
|
|
15
|
-
readonly exited: Promise<number>;
|
|
16
|
-
readonly handle: ProcessHandle;
|
|
17
|
-
private _pid;
|
|
18
|
-
private tail;
|
|
19
|
-
constructor(channel: WorkerChannel, session: WorkerSession, worker: string, { resumed }?: {
|
|
20
|
-
resumed?: boolean;
|
|
21
|
-
});
|
|
22
|
-
get pid(): number | null;
|
|
23
|
-
stderr(): string;
|
|
24
|
-
ack(seq: number): void;
|
|
25
|
-
kill(): void;
|
|
26
|
-
}
|
package/remote-pty.d.ts
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import type { AsyncResource } from "webappwiz/disposable";
|
|
2
|
-
import { type Eventful } from "webappwiz/events";
|
|
3
|
-
import type { ProcessHandle } from "./agent-process.js";
|
|
4
|
-
import type { PtyEvents } from "./pty.js";
|
|
5
|
-
import type { WorkerChannel } from "./worker-channel.js";
|
|
6
|
-
/**
|
|
7
|
-
* A shell on a worker's pseudo-terminal, seen from the coordinator as a
|
|
8
|
-
* `Pty` is: what it writes arrives as `data`, and `write` is typing at it.
|
|
9
|
-
* Its pid is null until the worker says it started, or says it again when
|
|
10
|
-
* asked to `describe` itself, as one taken back after a restart is.
|
|
11
|
-
*/
|
|
12
|
-
export declare class RemotePty implements AsyncResource, Eventful<PtyEvents> {
|
|
13
|
-
private readonly channel;
|
|
14
|
-
private readonly dispatcher;
|
|
15
|
-
readonly events: import("webappwiz/events").Events<PtyEvents>;
|
|
16
|
-
/** What takes it back after a coordinator restart. */
|
|
17
|
-
readonly handle: ProcessHandle;
|
|
18
|
-
private _pid;
|
|
19
|
-
private exited;
|
|
20
|
-
constructor(channel: WorkerChannel, worker: string);
|
|
21
|
-
get pid(): number | null;
|
|
22
|
-
write(data: string | Uint8Array): void;
|
|
23
|
-
resize(cols: number, rows: number): void;
|
|
24
|
-
/** Asks the worker to say the pid again and write the screen it kept, as `data`. */
|
|
25
|
-
describe(): void;
|
|
26
|
-
/** Hangs up, as closing a terminal window does. */
|
|
27
|
-
disposeAsync(): Promise<void>;
|
|
28
|
-
private exit;
|
|
29
|
-
}
|