@plurnk/plurnk-agui 3.0.0 → 4.0.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/.env.defaults +17 -8
- package/README.md +37 -13
- package/SPEC.md +627 -268
- package/dist/AguiPlus.d.ts +24 -29
- package/dist/AguiPlus.d.ts.map +1 -1
- package/dist/AguiPlus.js +25 -36
- package/dist/AguiPlus.js.map +1 -1
- package/dist/AguiSurface.d.ts +2 -2
- package/dist/AguiSurface.d.ts.map +1 -1
- package/dist/AguiSurface.js +25 -16
- package/dist/AguiSurface.js.map +1 -1
- package/dist/AuthorizationDocuments.d.ts +33 -0
- package/dist/AuthorizationDocuments.d.ts.map +1 -0
- package/dist/AuthorizationDocuments.js +84 -0
- package/dist/AuthorizationDocuments.js.map +1 -0
- package/dist/BuiltinActions.d.ts +11 -5
- package/dist/BuiltinActions.d.ts.map +1 -1
- package/dist/BuiltinActions.js +84 -119
- package/dist/BuiltinActions.js.map +1 -1
- package/dist/EventRouter.d.ts +11 -3
- package/dist/EventRouter.d.ts.map +1 -1
- package/dist/EventRouter.js +17 -32
- package/dist/EventRouter.js.map +1 -1
- package/dist/MessageAddress.d.ts +7 -5
- package/dist/MessageAddress.d.ts.map +1 -1
- package/dist/MessageAddress.js +14 -12
- package/dist/MessageAddress.js.map +1 -1
- package/dist/Module.d.ts +5 -4
- package/dist/Module.d.ts.map +1 -1
- package/dist/Module.js +222 -83
- package/dist/Module.js.map +1 -1
- package/dist/OAuthServer.d.ts +30 -0
- package/dist/OAuthServer.d.ts.map +1 -0
- package/dist/OAuthServer.js +607 -0
- package/dist/OAuthServer.js.map +1 -0
- package/dist/Portal.d.ts +41 -9
- package/dist/Portal.d.ts.map +1 -1
- package/dist/Portal.js +497 -185
- package/dist/Portal.js.map +1 -1
- package/dist/ProposalHitl.d.ts +18 -4
- package/dist/ProposalHitl.d.ts.map +1 -1
- package/dist/ProposalHitl.js +31 -41
- package/dist/ProposalHitl.js.map +1 -1
- package/dist/RunHandler.d.ts +18 -8
- package/dist/RunHandler.d.ts.map +1 -1
- package/dist/RunHandler.js +256 -137
- package/dist/RunHandler.js.map +1 -1
- package/dist/ThreadAddress.d.ts +8 -0
- package/dist/ThreadAddress.d.ts.map +1 -0
- package/dist/ThreadAddress.js +18 -0
- package/dist/ThreadAddress.js.map +1 -0
- package/dist/Translator.d.ts +52 -2
- package/dist/Translator.d.ts.map +1 -1
- package/dist/Translator.js +391 -121
- package/dist/Translator.js.map +1 -1
- package/dist/client.d.ts +2 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +2 -0
- package/dist/client.js.map +1 -0
- package/dist/config.d.ts +22 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +65 -13
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/run-events.d.ts +2 -0
- package/dist/run-events.d.ts.map +1 -1
- package/dist/run-events.js +5 -2
- package/dist/run-events.js.map +1 -1
- package/dist/types.d.ts +4 -22
- package/dist/types.d.ts.map +1 -1
- package/package.json +12 -8
package/dist/AguiPlus.d.ts
CHANGED
|
@@ -2,12 +2,9 @@ import { type AguiEvent, type ProposalNotification } from "./types.ts";
|
|
|
2
2
|
import type { JsonPatch } from "@ag-ui/core";
|
|
3
3
|
import type { Interrupt, ResumeEntry } from "@ag-ui/core";
|
|
4
4
|
import { type LoopLifecycle, type ProviderAccounting } from "@plurnk/plurnk-contracts";
|
|
5
|
-
import type { ApplicationLoopProjection, ClientInteractionProjection, ClientInteractionResolution, FunctionalityPreparationActivity, ModelRoute, ProblemDetails, ProposalResolution } from "@plurnk/plurnk-contracts";
|
|
6
|
-
export declare const
|
|
7
|
-
export declare const
|
|
8
|
-
export declare const proposalToolName: (_op: string) => string;
|
|
9
|
-
export declare const proposalToolCall: (p: ProposalNotification) => AguiEvent[];
|
|
10
|
-
export declare const proposalInterrupt: (logEntryId: number) => Interrupt;
|
|
5
|
+
import type { ApplicationLoopProjection, ApplicationProviderAlias, ClientInteractionProjection, ClientInteractionResolution, FunctionalityPreparationActivity, ModelRoute, ProblemDetails, ProposalResolution } from "@plurnk/plurnk-contracts";
|
|
6
|
+
export declare const proposalKey: (logEntryId: number) => string;
|
|
7
|
+
export declare const proposalInterrupt: (proposal: ProposalNotification) => Omit<Interrupt, "id">;
|
|
11
8
|
export interface Resolution extends ProposalResolution {
|
|
12
9
|
logEntryId: number;
|
|
13
10
|
}
|
|
@@ -15,25 +12,15 @@ export declare const resolutionFromResume: (entry: ResumeEntry) => Resolution |
|
|
|
15
12
|
export declare const interactionToolCallId: (interactionId: number) => string;
|
|
16
13
|
export declare const interactionIdFromToolCallId: (toolCallId: string) => number | null;
|
|
17
14
|
export declare const interactionToolCall: (interaction: ClientInteractionProjection) => AguiEvent[];
|
|
18
|
-
export declare const interactionInterrupt: (interaction: ClientInteractionProjection) => Interrupt
|
|
15
|
+
export declare const interactionInterrupt: (interaction: ClientInteractionProjection) => Omit<Interrupt, "id">;
|
|
19
16
|
export interface InteractionResolution {
|
|
20
17
|
interactionId: number;
|
|
21
18
|
resolution: ClientInteractionResolution;
|
|
22
19
|
}
|
|
23
20
|
export declare const interactionResolutionFromResume: (entry: ResumeEntry) => InteractionResolution | null;
|
|
24
21
|
export interface AguiPlusState {
|
|
25
|
-
providers?:
|
|
26
|
-
|
|
27
|
-
model: string;
|
|
28
|
-
active: boolean;
|
|
29
|
-
inputCapacity: number | null;
|
|
30
|
-
}>;
|
|
31
|
-
workspace?: {
|
|
32
|
-
id: number;
|
|
33
|
-
name: string;
|
|
34
|
-
projectRoot?: string | null;
|
|
35
|
-
budget?: number | null;
|
|
36
|
-
};
|
|
22
|
+
providers?: ApplicationProviderAlias[];
|
|
23
|
+
workspace?: AguiWorkspaceState;
|
|
37
24
|
workspaces?: Array<{
|
|
38
25
|
id: number;
|
|
39
26
|
name: string;
|
|
@@ -45,8 +32,16 @@ export interface AguiPlusState {
|
|
|
45
32
|
}>;
|
|
46
33
|
status?: AguiStatusState;
|
|
47
34
|
}
|
|
35
|
+
export interface AguiWorkspaceState {
|
|
36
|
+
readonly id: number;
|
|
37
|
+
readonly name: string;
|
|
38
|
+
readonly projectRoot: string | null;
|
|
39
|
+
readonly projectLabel: string | null;
|
|
40
|
+
readonly preparation: readonly FunctionalityPreparationActivity[];
|
|
41
|
+
readonly activity: AguiDerivationActivity | null;
|
|
42
|
+
}
|
|
48
43
|
export type AguiLifecycle = LoopLifecycle;
|
|
49
|
-
export interface
|
|
44
|
+
export interface AguiDerivationActivity {
|
|
50
45
|
readonly kind: "derivation";
|
|
51
46
|
readonly phase: "preparing" | "indexing" | "failed";
|
|
52
47
|
readonly completed: number;
|
|
@@ -55,27 +50,27 @@ export interface AguiStatusActivity {
|
|
|
55
50
|
readonly message: string;
|
|
56
51
|
}
|
|
57
52
|
export interface AguiStatusState {
|
|
58
|
-
readonly preparation: readonly FunctionalityPreparationActivity[];
|
|
59
53
|
readonly lifecycle: AguiLifecycle;
|
|
60
54
|
readonly model: ModelRoute | null;
|
|
61
55
|
readonly loopId: number | null;
|
|
62
56
|
readonly packetCount: number;
|
|
63
57
|
readonly waitUntil: number | null;
|
|
64
|
-
readonly activity: AguiStatusActivity | null;
|
|
65
58
|
readonly children: number;
|
|
66
|
-
readonly
|
|
59
|
+
readonly spend: AguiSpendState;
|
|
60
|
+
readonly claimedAt: number | null;
|
|
61
|
+
readonly terminatedAt: number | null;
|
|
67
62
|
}
|
|
68
|
-
export
|
|
63
|
+
export declare const loopTiming: (loop: ApplicationLoopProjection | null) => Pick<AguiStatusState, "claimedAt" | "terminatedAt">;
|
|
64
|
+
export interface AguiSpendState extends Omit<ProviderAccounting, "requests"> {
|
|
69
65
|
readonly requests: number;
|
|
70
66
|
}
|
|
71
|
-
export declare const
|
|
72
|
-
export declare const EMPTY_DESCENDANTS: AguiDescendantsState;
|
|
67
|
+
export declare const spendState: ({ requests, ...projection }: ProviderAccounting) => AguiSpendState;
|
|
73
68
|
export declare const ALIVE_LIFECYCLES: ReadonlySet<LoopLifecycle>;
|
|
74
69
|
export declare const aliveChildren: (rows: readonly {
|
|
75
70
|
readonly lifecycle: LoopLifecycle;
|
|
76
71
|
}[]) => number;
|
|
77
|
-
export declare const derivationActivity: (value: unknown) =>
|
|
78
|
-
export declare const statusState: (model: ModelRoute | null, loop: ApplicationLoopProjection | null,
|
|
72
|
+
export declare const derivationActivity: (value: unknown) => AguiDerivationActivity | null;
|
|
73
|
+
export declare const statusState: (model: ModelRoute | null, loop: ApplicationLoopProjection | null, spend: AguiSpendState, children?: number) => AguiStatusState;
|
|
79
74
|
export interface AguiBudgetState {
|
|
80
75
|
readonly curationWeight: number | null;
|
|
81
76
|
readonly curationBudget: number | null;
|
|
@@ -96,5 +91,5 @@ export type ActionOutcome = {
|
|
|
96
91
|
ok: false;
|
|
97
92
|
problem: ProblemDetails;
|
|
98
93
|
};
|
|
99
|
-
export declare const
|
|
94
|
+
export declare const actionRunResult: (kind: string, outcome: ActionOutcome) => Record<string, unknown>;
|
|
100
95
|
//# sourceMappingURL=AguiPlus.d.ts.map
|
package/dist/AguiPlus.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AguiPlus.d.ts","sourceRoot":"","sources":["../src/AguiPlus.ts"],"names":[],"mappings":"AAQA,OAAO,EAAa,KAAK,SAAS,EAAE,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAyB,KAAK,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9G,OAAO,KAAK,EACR,yBAAyB,EACzB,2BAA2B,EAC3B,2BAA2B,EAC3B,gCAAgC,EAChC,UAAU,EACV,cAAc,EACd,kBAAkB,EACrB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"AguiPlus.d.ts","sourceRoot":"","sources":["../src/AguiPlus.ts"],"names":[],"mappings":"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"}
|
package/dist/AguiPlus.js
CHANGED
|
@@ -3,38 +3,21 @@
|
|
|
3
3
|
// engine state → AG-UI events, and the inverse resume-mapping. No transport, no I/O
|
|
4
4
|
// — so it ports into the in-process module unchanged when the seam lands.
|
|
5
5
|
//
|
|
6
|
-
// §1 proposals →
|
|
6
|
+
// §1 proposals → interrupts (terminate-resume HITL); §2 reads →
|
|
7
7
|
// shared STATE. This is the flagship choreography de-risked as logic before code.
|
|
8
8
|
import { EventType } from "./types.js";
|
|
9
9
|
import { lifecycleOfLoopStatus } from "@plurnk/plurnk-contracts";
|
|
10
|
-
// ── §1 — stop-the-world →
|
|
11
|
-
//
|
|
12
|
-
//
|
|
13
|
-
|
|
14
|
-
export const
|
|
15
|
-
|
|
10
|
+
// ── §1 — stop-the-world → interrupt ──────────────────────────────────
|
|
11
|
+
// {§agui-proposal-resolve} A gate is the operation awaiting its decision: the Portal presents its call, per Run, and the
|
|
12
|
+
// interrupt names it there. The interrupt carries Core's projection, what the reviewer reviews; the resume names the
|
|
13
|
+
// proposal by this key, which no client sees.
|
|
14
|
+
export const proposalKey = (logEntryId) => `proposal:${logEntryId}`;
|
|
15
|
+
const logEntryIdFromKey = (key) => {
|
|
16
|
+
const m = /^proposal:(\d+)$/.exec(key);
|
|
16
17
|
return m === null ? null : Number(m[1]);
|
|
17
18
|
};
|
|
18
|
-
|
|
19
|
-
// name is AG-UI-conventional, not plurnk-namespaced.
|
|
20
|
-
// A side-effecting proposal is an approval request. The plurnk correlation rides
|
|
21
|
-
// the opaque toolCallId (`prop:<logEntryId>`), so the generic name carries no
|
|
22
|
-
// plurnk vocabulary upward.
|
|
23
|
-
export const proposalToolName = (_op) => "request_approval";
|
|
24
|
-
// The worker's tail when it hits a pause: the tool-call, then the CALLER emits
|
|
25
|
-
// RUN_FINISHED to terminate. The loop stays paused in-engine — untouched.
|
|
26
|
-
export const proposalToolCall = (p) => {
|
|
27
|
-
const toolCallId = proposalToolCallId(p.logEntryId);
|
|
28
|
-
return [
|
|
29
|
-
{ type: EventType.TOOL_CALL_START, toolCallId, toolCallName: proposalToolName(p.op) },
|
|
30
|
-
{ type: EventType.TOOL_CALL_ARGS, toolCallId, delta: JSON.stringify({ op: p.op, target: p.target, body: p.body, attrs: p.attrs, owner: p.owner }) },
|
|
31
|
-
{ type: EventType.TOOL_CALL_END, toolCallId },
|
|
32
|
-
];
|
|
33
|
-
};
|
|
34
|
-
export const proposalInterrupt = (logEntryId) => ({
|
|
35
|
-
id: proposalToolCallId(logEntryId),
|
|
19
|
+
export const proposalInterrupt = (proposal) => ({
|
|
36
20
|
reason: "tool_call",
|
|
37
|
-
toolCallId: proposalToolCallId(logEntryId),
|
|
38
21
|
message: "Review the requested action.",
|
|
39
22
|
responseSchema: {
|
|
40
23
|
type: "object",
|
|
@@ -45,9 +28,11 @@ export const proposalInterrupt = (logEntryId) => ({
|
|
|
45
28
|
},
|
|
46
29
|
required: ["decision"],
|
|
47
30
|
},
|
|
31
|
+
...(proposal.expiresAt === undefined ? {} : { expiresAt: proposal.expiresAt }),
|
|
32
|
+
metadata: { plurnk: { proposal } },
|
|
48
33
|
});
|
|
49
34
|
export const resolutionFromResume = (entry) => {
|
|
50
|
-
const logEntryId =
|
|
35
|
+
const logEntryId = logEntryIdFromKey(entry.interruptId);
|
|
51
36
|
if (logEntryId === null)
|
|
52
37
|
return null;
|
|
53
38
|
const payload = entry.payload;
|
|
@@ -84,7 +69,6 @@ export const interactionToolCall = (interaction) => {
|
|
|
84
69
|
];
|
|
85
70
|
};
|
|
86
71
|
export const interactionInterrupt = (interaction) => ({
|
|
87
|
-
id: interactionToolCallId(interaction.interactionId),
|
|
88
72
|
reason: "tool_call",
|
|
89
73
|
toolCallId: interactionToolCallId(interaction.interactionId),
|
|
90
74
|
message: interaction.request.message ?? "Provide the requested input.",
|
|
@@ -105,11 +89,15 @@ export const interactionResolutionFromResume = (entry) => {
|
|
|
105
89
|
},
|
|
106
90
|
};
|
|
107
91
|
};
|
|
108
|
-
|
|
92
|
+
// {§agui-status-timing} — the Loop's durable stamps as the gauge carries them.
|
|
93
|
+
export const loopTiming = (loop) => ({
|
|
94
|
+
claimedAt: loop?.claimedAt == null ? null : Date.parse(loop.claimedAt),
|
|
95
|
+
terminatedAt: loop?.terminatedAt == null ? null : Date.parse(loop.terminatedAt),
|
|
96
|
+
});
|
|
97
|
+
export const spendState = ({ requests, ...projection }) => ({
|
|
109
98
|
...projection,
|
|
110
99
|
requests: requests.length,
|
|
111
100
|
});
|
|
112
|
-
export const EMPTY_DESCENDANTS = Object.freeze({ requests: 0, usage: null, knownUsage: null, costUsd: null, knownCostUsd: null });
|
|
113
101
|
// {§agui-status-children} — a child that still owes a result is alive; one that concluded is not.
|
|
114
102
|
export const ALIVE_LIFECYCLES = new Set(["queued", "running", "parked"]);
|
|
115
103
|
export const aliveChildren = (rows) => rows.filter(({ lifecycle }) => ALIVE_LIFECYCLES.has(lifecycle)).length;
|
|
@@ -128,17 +116,16 @@ export const derivationActivity = (value) => {
|
|
|
128
116
|
}
|
|
129
117
|
return phase === "complete" ? null : { kind: "derivation", phase, completed, total, percent, message };
|
|
130
118
|
};
|
|
131
|
-
export const statusState = (model, loop,
|
|
119
|
+
export const statusState = (model, loop, spend, children = 0) => ({
|
|
132
120
|
// {§loop-lifecycle-vocabulary} — the one projection the worker directory shares.
|
|
133
121
|
lifecycle: lifecycleOfLoopStatus(loop?.status ?? null),
|
|
134
122
|
model,
|
|
135
123
|
loopId: loop?.id ?? null,
|
|
136
124
|
packetCount: loop?.packetCount ?? 0,
|
|
137
125
|
waitUntil: loop?.status === 202 ? loop.waitUntil : null,
|
|
138
|
-
|
|
126
|
+
...loopTiming(loop),
|
|
139
127
|
children,
|
|
140
|
-
|
|
141
|
-
preparation,
|
|
128
|
+
spend,
|
|
142
129
|
});
|
|
143
130
|
const EMPTY_BUDGET = Object.freeze({
|
|
144
131
|
curationWeight: null,
|
|
@@ -146,9 +133,10 @@ const EMPTY_BUDGET = Object.freeze({
|
|
|
146
133
|
contextTokens: null,
|
|
147
134
|
contextCapacity: null,
|
|
148
135
|
});
|
|
136
|
+
// {§agui-workspace-state} The worker's gauge, `status` and `budget`, rides only a Run that binds a worker.
|
|
149
137
|
export const stateSnapshot = (s) => ({
|
|
150
138
|
type: EventType.STATE_SNAPSHOT,
|
|
151
|
-
snapshot: { plurnk: s, budget: EMPTY_BUDGET },
|
|
139
|
+
snapshot: s.status === undefined ? { plurnk: s } : { plurnk: s, budget: EMPTY_BUDGET },
|
|
152
140
|
});
|
|
153
141
|
// {§agui-daemon-client} — AG-UI 1.0 types STATE_DELTA as a real RFC 6902 patch, so the
|
|
154
142
|
// operation union is the parameter type rather than a loose object shape.
|
|
@@ -163,5 +151,6 @@ export const parseAction = (forwardedProps) => {
|
|
|
163
151
|
const { kind: _kind, ...params } = action;
|
|
164
152
|
return { kind, params };
|
|
165
153
|
};
|
|
166
|
-
|
|
154
|
+
// {§agui-plurnk-metadata} An action Run's result: the action's whole outcome, a failure included.
|
|
155
|
+
export const actionRunResult = (kind, outcome) => ({ kind, ...outcome });
|
|
167
156
|
//# sourceMappingURL=AguiPlus.js.map
|
package/dist/AguiPlus.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AguiPlus.js","sourceRoot":"","sources":["../src/AguiPlus.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,qCAAqC;AACrC,oFAAoF;AACpF,0EAA0E;AAC1E,EAAE;AACF,gEAAgE;AAChE,kFAAkF;AAElF,OAAO,EAAE,SAAS,EAA6C,MAAM,YAAY,CAAC;AAGlF,OAAO,EAAE,qBAAqB,EAA+C,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"AguiPlus.js","sourceRoot":"","sources":["../src/AguiPlus.ts"],"names":[],"mappings":"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"}
|
package/dist/AguiSurface.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { JsonSchema } from "@plurnk/plurnk-contracts";
|
|
2
|
-
type AguiActionScope = "
|
|
2
|
+
type AguiActionScope = "daemon" | "workspace" | "worker";
|
|
3
3
|
export interface AguiActionContract {
|
|
4
4
|
readonly scope: AguiActionScope;
|
|
5
5
|
readonly inputSchema: JsonSchema;
|
|
@@ -23,10 +23,10 @@ export declare const AGUI_BUILTIN_ACTIONS: Readonly<{
|
|
|
23
23
|
"workspace.prompts": AguiActionContract;
|
|
24
24
|
"workspace.share": AguiActionContract;
|
|
25
25
|
"workspace.rename": AguiActionContract;
|
|
26
|
+
"workspace.rollback": AguiActionContract;
|
|
26
27
|
"entry.read": AguiActionContract;
|
|
27
28
|
"op.exec": AguiActionContract;
|
|
28
29
|
"op.parse": AguiActionContract;
|
|
29
|
-
"op.look": AguiActionContract;
|
|
30
30
|
"run.fork": AguiActionContract;
|
|
31
31
|
"worker.model.get": AguiActionContract;
|
|
32
32
|
"worker.model.set": AguiActionContract;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AguiSurface.d.ts","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAM3D,KAAK,eAAe,GAAG,
|
|
1
|
+
{"version":3,"file":"AguiSurface.d.ts","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAM3D,KAAK,eAAe,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;CACrC;AAED,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;CACtC;AAgED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuFwB,CAAC;AA6B1D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;EA6EgC,CAAC"}
|
package/dist/AguiSurface.js
CHANGED
|
@@ -26,17 +26,19 @@ const workspace = object({
|
|
|
26
26
|
id: POSITIVE,
|
|
27
27
|
name: NONEMPTY,
|
|
28
28
|
project_root: nullable(string()),
|
|
29
|
+
// {§workspace-label}
|
|
30
|
+
project_label: nullable(string()),
|
|
29
31
|
created_at: NONEMPTY,
|
|
30
|
-
}, ["id", "name", "project_root", "created_at"]);
|
|
32
|
+
}, ["id", "name", "project_root", "project_label", "created_at"]);
|
|
31
33
|
// {§application-worker-observation} — kind and lifecycle ride the directory row (#523).
|
|
32
34
|
const worker = object({
|
|
33
35
|
id: POSITIVE,
|
|
34
36
|
name: NONEMPTY,
|
|
35
37
|
created_at: NONEMPTY,
|
|
36
38
|
owner: NONEMPTY,
|
|
37
|
-
origin: { enum: ["model", "
|
|
39
|
+
origin: { enum: ["model", "_plurnk"] },
|
|
38
40
|
parentWorkerId: nullable(POSITIVE),
|
|
39
|
-
kind: { enum: ["
|
|
41
|
+
kind: { enum: ["root", "fork", "work"] },
|
|
40
42
|
lifecycle: { enum: ["idle", "queued", "running", "parked", "completed", "failed"] },
|
|
41
43
|
}, ["id", "name", "created_at", "owner", "origin", "parentWorkerId", "kind", "lifecycle"]);
|
|
42
44
|
const capabilityProjection = ref("CapabilityProjection");
|
|
@@ -48,28 +50,32 @@ const effortResult = object({
|
|
|
48
50
|
}, ["effort", "source", "supportedEfforts"]);
|
|
49
51
|
const action = (scope, inputSchema, outputSchema) => Object.freeze({ scope, inputSchema, outputSchema });
|
|
50
52
|
export const AGUI_BUILTIN_ACTIONS = Object.freeze({
|
|
51
|
-
ping: action("
|
|
52
|
-
discover: action("
|
|
53
|
-
|
|
53
|
+
ping: action("daemon", EMPTY, EMPTY),
|
|
54
|
+
discover: action("daemon", EMPTY, ref("AguiDiscovery")),
|
|
55
|
+
// {§agui-provider-routes} — each alias is the route a worker seeded from it gets, its configured effort included.
|
|
56
|
+
"providers.list": action("daemon", EMPTY, object({
|
|
54
57
|
aliases: array(object({
|
|
55
58
|
alias: NONEMPTY,
|
|
56
59
|
provider: NONEMPTY,
|
|
57
60
|
model: NONEMPTY,
|
|
61
|
+
effort: EFFORT,
|
|
62
|
+
effortSource: { const: "default" },
|
|
58
63
|
active: { type: "boolean" },
|
|
59
64
|
inputCapacity: nullable(POSITIVE),
|
|
60
65
|
}, ["alias", "provider", "model", "active", "inputCapacity"])),
|
|
61
66
|
}, ["aliases"])),
|
|
62
|
-
"models.list": action("
|
|
63
|
-
"workspace.list": action("
|
|
64
|
-
"workspace.create": action("
|
|
67
|
+
"models.list": action("daemon", ref("ModelCatalogQuery"), ref("ModelCatalogPage")),
|
|
68
|
+
"workspace.list": action("daemon", EMPTY, object({ workspaces: array(workspace) }, ["workspaces"])),
|
|
69
|
+
"workspace.create": action("daemon", object({
|
|
65
70
|
name: NONEMPTY,
|
|
66
71
|
projectRoot: nullable(string()),
|
|
67
72
|
settings: { oneOf: [string(), { type: "object", additionalProperties: true }] },
|
|
68
|
-
}), object({ id: POSITIVE, name: NONEMPTY
|
|
69
|
-
"workspace.attach": action("
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
+
}), object({ id: POSITIVE, name: NONEMPTY }, ["id", "name"])),
|
|
74
|
+
"workspace.attach": action("daemon", { oneOf: [
|
|
75
|
+
object({ id: POSITIVE }, ["id"]),
|
|
76
|
+
object({ name: NONEMPTY }, ["name"]),
|
|
77
|
+
object({ projectRoot: NONEMPTY }, ["projectRoot"]),
|
|
78
|
+
] }, object({ id: POSITIVE, name: NONEMPTY }, ["id", "name"])),
|
|
73
79
|
"workspace.workers": action("workspace", object({ id: POSITIVE }), object({ workers: array(worker) }, ["workers"])),
|
|
74
80
|
"log.read": action("workspace", object({
|
|
75
81
|
workerId: POSITIVE,
|
|
@@ -95,6 +101,8 @@ export const AGUI_BUILTIN_ACTIONS = Object.freeze({
|
|
|
95
101
|
"workspace.prompts": action("workspace", object({ workerId: POSITIVE, limit: POSITIVE }), object({ prompts: array(string()) }, ["prompts"])),
|
|
96
102
|
"workspace.share": action("workspace", object({ folder: NONEMPTY }, ["folder"]), object({ folder: NONEMPTY }, ["folder"])),
|
|
97
103
|
"workspace.rename": action("workspace", object({ name: NONEMPTY }, ["name"]), object({ id: POSITIVE, name: NONEMPTY }, ["id", "name"])),
|
|
104
|
+
// {§rollback} — undo the bound worker's file mutations after a log coordinate, through ordinary operations.
|
|
105
|
+
"workspace.rollback": action("workspace", object({ to: NONEMPTY, workerId: POSITIVE }, ["to"]), ref("RollbackReport")),
|
|
98
106
|
"entry.read": action("workspace", object({
|
|
99
107
|
target: NONEMPTY,
|
|
100
108
|
workerId: POSITIVE,
|
|
@@ -105,7 +113,6 @@ export const AGUI_BUILTIN_ACTIONS = Object.freeze({
|
|
|
105
113
|
"op.parse": action("workspace", object({ text: NONEMPTY }, ["text"]), object({
|
|
106
114
|
results: array(OPERATION_RESULT),
|
|
107
115
|
}, ["results"])),
|
|
108
|
-
"op.look": action("workspace", object({ text: NONEMPTY, workerId: POSITIVE }, ["text"]), OPERATION_RESULT),
|
|
109
116
|
"run.fork": action("workspace", object({ name: NONEMPTY }), object({
|
|
110
117
|
workerId: POSITIVE,
|
|
111
118
|
workerName: nullable(NONEMPTY),
|
|
@@ -183,7 +190,9 @@ export const AGUI_NOTIFICATIONS = Object.freeze({
|
|
|
183
190
|
contextCapacity: nullable(POSITIVE),
|
|
184
191
|
meta: { type: "object", additionalProperties: true },
|
|
185
192
|
}, ["accounting", "curationWeight", "curationBudget", "contextTokens", "contextCapacity", "meta"]),
|
|
186
|
-
|
|
193
|
+
// {§notifications-loop-terminated} — Unix milliseconds, the loop's own stamp.
|
|
194
|
+
terminatedAt: POSITIVE,
|
|
195
|
+
}, ["workerId", "loopId", "result", "hitMaxTurns", "turnIds", "attributions", "usage", "terminatedAt"])),
|
|
187
196
|
"loop/packet": notification(object({
|
|
188
197
|
workerId: POSITIVE,
|
|
189
198
|
loopId: POSITIVE,
|
package/dist/AguiSurface.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AguiSurface.js","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AguiSurface.js","sourceRoot":"","sources":["../src/AguiSurface.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export interface AuthorizationDocument {
|
|
2
|
+
readonly title: string;
|
|
3
|
+
readonly body: string;
|
|
4
|
+
}
|
|
5
|
+
export declare const escapeHtml: (value: string) => string;
|
|
6
|
+
export interface AuthorizationRequest {
|
|
7
|
+
readonly client: string;
|
|
8
|
+
readonly scopes: readonly string[];
|
|
9
|
+
readonly hidden: Readonly<Record<string, string>>;
|
|
10
|
+
}
|
|
11
|
+
export declare const AuthorizationDocuments: {
|
|
12
|
+
signIn: (request: AuthorizationRequest, failure: string | null) => AuthorizationDocument;
|
|
13
|
+
consent: (request: AuthorizationRequest) => AuthorizationDocument;
|
|
14
|
+
noPassword: () => AuthorizationDocument;
|
|
15
|
+
refused: () => AuthorizationDocument;
|
|
16
|
+
signedIn: (hidden: Readonly<Record<string, string>>) => AuthorizationDocument;
|
|
17
|
+
notSignedIn: () => AuthorizationDocument;
|
|
18
|
+
signedOut: () => AuthorizationDocument;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* {§agui-oauth-documents} The complete document and its content security policy: the registered
|
|
22
|
+
* stylesheet, same-origin, in place of the standalone style when one applies.
|
|
23
|
+
*/
|
|
24
|
+
export declare const renderAuthorizationDocument: (document: AuthorizationDocument, stylesheet: string | null) => {
|
|
25
|
+
readonly html: string;
|
|
26
|
+
readonly policy: string;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* {§agui-oauth-documents} Every document the authorization server serves, rendered with placeholder
|
|
30
|
+
* values, for a consumer whose production CSS pruning must keep the selectors they use.
|
|
31
|
+
*/
|
|
32
|
+
export declare const authorizationDocumentSpecimens: () => readonly string[];
|
|
33
|
+
//# sourceMappingURL=AuthorizationDocuments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AuthorizationDocuments.d.ts","sourceRoot":"","sources":["../src/AuthorizationDocuments.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,UAAU,UAAW,MAAM,KAAG,MACsF,CAAC;AASlI,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACrD;AAOD,eAAO,MAAM,sBAAsB;IAC/B,MAAM,YAAY,oBAAoB,WAAW,MAAM,GAAG,IAAI,KAAG,qBAAqB;IAQtF,OAAO,YAAY,oBAAoB,KAAG,qBAAqB;IAM/D,UAAU,QAAM,qBAAqB;IAMrC,OAAO,QAAM,qBAAqB;IAIlC,QAAQ,WAAW,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAG,qBAAqB;IAK3E,WAAW,QAAM,qBAAqB;IAItC,SAAS,QAAM,qBAAqB;CAIvC,CAAC;AAOF;;;GAGG;AACH,eAAO,MAAM,2BAA2B,aAAc,qBAAqB,cAAc,MAAM,GAAG,IAAI,KAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAMvJ,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,8BAA8B,QAAO,SAAS,MAAM,EAYhE,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
// {§agui-oauth-documents} — the documents the authorization server shows a person: semantic HTML with
|
|
2
|
+
// no script and no class, readable on their own, and styled by a module client's registered stylesheet
|
|
3
|
+
// on that client's requests. Pure: the server decides which document and which stylesheet.
|
|
4
|
+
export const escapeHtml = (value) => value
|
|
5
|
+
.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">").replaceAll("\"", """).replaceAll("'", "'");
|
|
6
|
+
const WARNING = `<span role="img" aria-label="Warning">⚠</span>`;
|
|
7
|
+
const page = (heading, content, warning = false) => `<main><article><header><h1>${warning ? `${WARNING} ` : ""}${heading}</h1></header>${content}</article></main>`;
|
|
8
|
+
const SETTINGS = "<p>Set it in the operator's configuration file, <code>$XDG_CONFIG_HOME/plurnk/.env</code>, which is "
|
|
9
|
+
+ "<code>~/.config/plurnk/.env</code> by default, and restart the daemon.</p>";
|
|
10
|
+
const asks = (request) => `<p><strong>${escapeHtml(request.client)}</strong> asks to use this daemon (scope: ${escapeHtml(request.scopes.join(" "))}).</p>`;
|
|
11
|
+
const carried = (hidden) => Object.entries(hidden)
|
|
12
|
+
.map(([name, value]) => `<input type="hidden" name="${name}" value="${escapeHtml(value)}">`).join("");
|
|
13
|
+
export const AuthorizationDocuments = {
|
|
14
|
+
signIn: (request, failure) => ({
|
|
15
|
+
title: "Plurnk: sign in",
|
|
16
|
+
body: page("Sign in to Plurnk", asks(request)
|
|
17
|
+
+ (failure === null ? "" : `<p role="alert">${WARNING} ${escapeHtml(failure)}</p>`)
|
|
18
|
+
+ `<form method="post" action="/oauth/authorize">${carried(request.hidden)}`
|
|
19
|
+
+ `<label for="password">Password</label><input id="password" name="password" type="password" autocomplete="current-password" required>`
|
|
20
|
+
+ `<button type="submit">Continue</button></form>`),
|
|
21
|
+
}),
|
|
22
|
+
consent: (request) => ({
|
|
23
|
+
title: "Plurnk: allow access?",
|
|
24
|
+
body: page("Allow access?", asks(request)
|
|
25
|
+
+ `<form method="post" action="/oauth/authorize">${carried(request.hidden)}`
|
|
26
|
+
+ `<button type="submit" name="consent" value="allow">Allow</button> <button type="submit" name="consent" value="deny">Deny</button></form>`),
|
|
27
|
+
}),
|
|
28
|
+
noPassword: () => ({
|
|
29
|
+
title: "Plurnk: no password is set",
|
|
30
|
+
body: page("No password is set", "<p>A browser signs in to this daemon with the operator's password, and <code>PLURNK_PASS</code> is empty.</p>"
|
|
31
|
+
+ SETTINGS
|
|
32
|
+
+ "<p>Until then no browser can sign in. The terminal client and your other tools sign in with the operator's secret and are unaffected.</p>", true),
|
|
33
|
+
}),
|
|
34
|
+
refused: () => ({
|
|
35
|
+
title: "Plurnk: request refused",
|
|
36
|
+
body: page("Request refused", "<p>The client or its redirect address is not registered with this daemon.</p>", true),
|
|
37
|
+
}),
|
|
38
|
+
signedIn: (hidden) => ({
|
|
39
|
+
title: "Plurnk: signed in",
|
|
40
|
+
body: page("Signed in", "<p>This browser is signed in to this daemon as the operator.</p>"
|
|
41
|
+
+ `<form method="post" action="/oauth/session">${carried(hidden)}<button type="submit" name="action" value="end">Sign out</button></form>`),
|
|
42
|
+
}),
|
|
43
|
+
notSignedIn: () => ({
|
|
44
|
+
title: "Plurnk: not signed in",
|
|
45
|
+
body: page("Not signed in", "<p>This browser holds no session with this daemon.</p>"),
|
|
46
|
+
}),
|
|
47
|
+
signedOut: () => ({
|
|
48
|
+
title: "Plurnk: signed out",
|
|
49
|
+
body: page("Signed out", "<p>This browser no longer holds a session with this daemon.</p>"),
|
|
50
|
+
}),
|
|
51
|
+
};
|
|
52
|
+
// Readable alone in either color scheme; replaced, never overridden, by a registered stylesheet.
|
|
53
|
+
const STANDALONE = ":root{color-scheme:light dark}body{font:16px/1.5 system-ui,sans-serif;margin:2rem auto;max-width:28rem;padding:0 1rem}"
|
|
54
|
+
+ "label{display:block;margin:.75rem 0 .25rem}input{width:100%;box-sizing:border-box;padding:.5rem}button{margin-top:1rem;padding:.5rem 1rem}"
|
|
55
|
+
+ "[role=alert]{color:#b3261e}@media (prefers-color-scheme:dark){[role=alert]{color:#f2b8b5}}";
|
|
56
|
+
/**
|
|
57
|
+
* {§agui-oauth-documents} The complete document and its content security policy: the registered
|
|
58
|
+
* stylesheet, same-origin, in place of the standalone style when one applies.
|
|
59
|
+
*/
|
|
60
|
+
export const renderAuthorizationDocument = (document, stylesheet) => ({
|
|
61
|
+
html: `<!doctype html>\n<html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1">`
|
|
62
|
+
+ `<title>${escapeHtml(document.title)}</title>`
|
|
63
|
+
+ (stylesheet === null ? `<style>${STANDALONE}</style>` : `<link rel="stylesheet" href="${escapeHtml(stylesheet)}">`)
|
|
64
|
+
+ `</head><body>${document.body}</body></html>\n`,
|
|
65
|
+
policy: `default-src 'none'; style-src ${stylesheet === null ? "'unsafe-inline'" : "'self'"}; form-action 'self'; frame-ancestors 'none'`,
|
|
66
|
+
});
|
|
67
|
+
/**
|
|
68
|
+
* {§agui-oauth-documents} Every document the authorization server serves, rendered with placeholder
|
|
69
|
+
* values, for a consumer whose production CSS pruning must keep the selectors they use.
|
|
70
|
+
*/
|
|
71
|
+
export const authorizationDocumentSpecimens = () => {
|
|
72
|
+
const request = { client: "client", scopes: ["agui"], hidden: { client_id: "client", state: "state" } };
|
|
73
|
+
return [
|
|
74
|
+
AuthorizationDocuments.signIn(request, null),
|
|
75
|
+
AuthorizationDocuments.signIn(request, "The password is wrong."),
|
|
76
|
+
AuthorizationDocuments.consent(request),
|
|
77
|
+
AuthorizationDocuments.noPassword(),
|
|
78
|
+
AuthorizationDocuments.refused(),
|
|
79
|
+
AuthorizationDocuments.signedIn({ client_id: "client" }),
|
|
80
|
+
AuthorizationDocuments.notSignedIn(),
|
|
81
|
+
AuthorizationDocuments.signedOut(),
|
|
82
|
+
].map((document) => document.body);
|
|
83
|
+
};
|
|
84
|
+
//# sourceMappingURL=AuthorizationDocuments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AuthorizationDocuments.js","sourceRoot":"","sources":["../src/AuthorizationDocuments.ts"],"names":[],"mappings":"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"}
|