@superdurable/dex-agents 0.5.0 → 0.6.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.
Files changed (41) hide show
  1. package/README.md +110 -3
  2. package/dist/src/agent-approval-display.d.ts +135 -0
  3. package/dist/src/agent-approval-display.js +536 -0
  4. package/dist/src/agent-approval-display.js.map +1 -0
  5. package/dist/src/agent-framework-runner.d.ts +39 -2
  6. package/dist/src/agent-framework-runner.js.map +1 -1
  7. package/dist/src/agent-session-codecs.d.ts +3 -1
  8. package/dist/src/agent-session-codecs.js +31 -0
  9. package/dist/src/agent-session-codecs.js.map +1 -1
  10. package/dist/src/agent-session-flow.d.ts +23 -0
  11. package/dist/src/agent-session-flow.js +11 -0
  12. package/dist/src/agent-session-flow.js.map +1 -1
  13. package/dist/src/agent-session-persistence.d.ts +33 -0
  14. package/dist/src/agent-session-persistence.js +22 -1
  15. package/dist/src/agent-session-persistence.js.map +1 -1
  16. package/dist/src/agent-session-steps.js +22 -2
  17. package/dist/src/agent-session-steps.js.map +1 -1
  18. package/dist/src/agent-session-summary.d.ts +138 -0
  19. package/dist/src/agent-session-summary.js +151 -0
  20. package/dist/src/agent-session-summary.js.map +1 -0
  21. package/dist/src/agent-session-transitions.d.ts +9 -3
  22. package/dist/src/agent-session-transitions.js +37 -5
  23. package/dist/src/agent-session-transitions.js.map +1 -1
  24. package/dist/src/agent-session-values.d.ts +103 -1
  25. package/dist/src/agent-session-values.js.map +1 -1
  26. package/dist/src/builtin-loop/builtin-agent-session-flow.d.ts +9 -1
  27. package/dist/src/builtin-loop/builtin-agent-session-flow.js +5 -1
  28. package/dist/src/builtin-loop/builtin-agent-session-flow.js.map +1 -1
  29. package/dist/src/connectors/connector-tool-source.d.ts +2 -1
  30. package/dist/src/connectors/connector-tool-source.js +13 -1
  31. package/dist/src/connectors/connector-tool-source.js.map +1 -1
  32. package/dist/src/index.d.ts +3 -1
  33. package/dist/src/index.js +2 -0
  34. package/dist/src/index.js.map +1 -1
  35. package/dist/src/mcp/mcp-tool-source.d.ts +27 -1
  36. package/dist/src/mcp/mcp-tool-source.js +52 -13
  37. package/dist/src/mcp/mcp-tool-source.js.map +1 -1
  38. package/dist/src/testing/private-dex-engine.d.ts +8 -0
  39. package/dist/src/testing/private-dex-engine.js +17 -1
  40. package/dist/src/testing/private-dex-engine.js.map +1 -1
  41. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"agent-session-steps.js","sourceRoot":"","sources":["../../src/agent-session-steps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-session-steps.js","sourceRoot":"","sources":["../../src/agent-session-steps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,138 @@
1
+ import { type Client, type FlowStatus } from "@superdurable/dex";
2
+ /**
3
+ * Most Unicode code points {@link buildSessionTitle} keeps.
4
+ *
5
+ * @since 0.6.0
6
+ */
7
+ export declare const sessionTitleMaxCodePoints = 80;
8
+ /**
9
+ * Page size that {@link listAgentSessions} uses when the caller gives none.
10
+ *
11
+ * @since 0.6.0
12
+ */
13
+ export declare const defaultSessionListPageSize = 50;
14
+ /**
15
+ * The namespace has not registered `text1`, so {@link listAgentSessions} cannot search titles.
16
+ *
17
+ * A Worker registers the index key when its session Flow sets `summaryAttributesIndexed`. List without
18
+ * `titleSearch`, and filter the loaded sessions by ID instead.
19
+ *
20
+ * @since 0.6.0
21
+ */
22
+ export declare class SessionTitleSearchUnavailableError extends Error {
23
+ constructor(options?: ErrorOptions);
24
+ }
25
+ /**
26
+ * One session of a {@link listAgentSessions} page, read from its search entry.
27
+ *
28
+ * `title`, `lastActivityAt`, and `turnCount` are `null` when the session does not have them: its Flow did not set
29
+ * `summaryAttributesIndexed` when it wrote them, or a release before 0.6.0 started it. Such an earlier session gains
30
+ * the last activity time and the turn count when a Worker with the option starts or ends one of its turns. It gains a
31
+ * title only if that turn is its first one. Turning the option off stops new writes, and the values written before
32
+ * stay. Show a missing value as a dash.
33
+ *
34
+ * @since 0.6.0
35
+ */
36
+ export interface AgentSessionSummary {
37
+ /** The session ID, which is the Flow ID. */
38
+ readonly sessionId: string;
39
+ /** The run ID of this Flow run. */
40
+ readonly runId: string;
41
+ /** The Flow status, such as `"running"`. */
42
+ readonly status: FlowStatus;
43
+ /** When the session started. */
44
+ readonly startedAt: Date;
45
+ /** When the session closed, or `undefined` while it runs. */
46
+ readonly closedAt: Date | undefined;
47
+ /** The `AgentSessionTitle` Attribute, or `null`. */
48
+ readonly title: string | null;
49
+ /** The `AgentSessionLastActivityAt` Attribute as a `Date`, or `null`. */
50
+ readonly lastActivityAt: Date | null;
51
+ /** The `AgentSessionTurnCount` Attribute, or `null`. */
52
+ readonly turnCount: number | null;
53
+ }
54
+ /**
55
+ * One page of {@link listAgentSessions}.
56
+ *
57
+ * @since 0.6.0
58
+ */
59
+ export interface AgentSessionSummaryPage {
60
+ /**
61
+ * The sessions of the page, in Dex search order: running sessions first, then the most recently closed, then the
62
+ * most recently started.
63
+ */
64
+ readonly sessions: readonly AgentSessionSummary[];
65
+ /** Pass it to {@link listAgentSessions} for the next page; `""` on the last page. */
66
+ readonly nextPageToken: string;
67
+ }
68
+ /**
69
+ * Which page of which sessions {@link listAgentSessions} returns.
70
+ *
71
+ * @since 0.6.0
72
+ */
73
+ export interface ListAgentSessionsOptions {
74
+ /** Most sessions in the page. Defaults to {@link defaultSessionListPageSize}, 50. */
75
+ readonly pageSize?: number;
76
+ /** {@link AgentSessionSummaryPage.nextPageToken} of the previous page, or `""`, the default, for the first page. */
77
+ readonly nextPageToken?: string;
78
+ /**
79
+ * Words the title must contain, compared without case. Omitted or blank lists every session. A word is a run of
80
+ * letters and digits, and only whole words match: `flaky` finds "Fix the flaky test", `flak` does not. Sessions
81
+ * without a title never match. Pass the same value with each page token.
82
+ */
83
+ readonly titleSearch?: string;
84
+ }
85
+ /**
86
+ * Returns the title a session takes from its first user message.
87
+ *
88
+ * Each run of ASCII spaces, tabs, and line breaks becomes one space, leading and trailing spaces are removed, and the
89
+ * text is cut to its first {@link sessionTitleMaxCodePoints} Unicode code points, without a trailing space. The Python core gives the
90
+ * same title for the same text.
91
+ *
92
+ * @example
93
+ * ```ts
94
+ * buildSessionTitle(" Fix the\n flaky test "); // "Fix the flaky test"
95
+ * ```
96
+ *
97
+ * @param firstMessageText - Text of the session's first user message.
98
+ * @returns The title, or `null` when the text has no other character.
99
+ * @since 0.6.0
100
+ */
101
+ export declare function buildSessionTitle(firstMessageText: string): string | null;
102
+ /**
103
+ * Returns one page of the sessions of a session Flow type.
104
+ *
105
+ * It makes one `Client.searchFlows` call. It needs no Worker and reads no snapshot. Dex orders the page; it cannot
106
+ * sort by last activity, so sort the sessions you loaded with {@link sortAgentSessionsByLastActivity}. The title,
107
+ * last activity time, and turn count come from a Flow with `summaryAttributesIndexed`; other sessions list without
108
+ * them.
109
+ *
110
+ * @example
111
+ * ```ts
112
+ * let page = await listAgentSessions(client, flow.getFlowType(), { titleSearch: "refund" });
113
+ * while (page.nextPageToken !== "") {
114
+ * page = await listAgentSessions(client, flow.getFlowType(), { titleSearch: "refund", nextPageToken: page.nextPageToken });
115
+ * }
116
+ * ```
117
+ *
118
+ * @param client - An open Client. Its Registry does not need the session Flow.
119
+ * @param flowType - The session Flow type, such as `flow.getFlowType()`.
120
+ * @param options - The page size, page token, and title search.
121
+ * @returns The page of sessions.
122
+ * @throws {RangeError} When `pageSize` is negative.
123
+ * @throws {SessionTitleSearchUnavailableError} When `titleSearch` is given and the namespace has not registered the
124
+ * index key `text1`.
125
+ * @throws {DexServiceError} When Dex rejects the search for another reason.
126
+ * @since 0.6.0
127
+ */
128
+ export declare function listAgentSessions(client: Client, flowType: string, options?: ListAgentSessionsOptions): Promise<AgentSessionSummaryPage>;
129
+ /**
130
+ * Returns sessions with the most recent activity first.
131
+ *
132
+ * A session without a last activity time sorts by its start time. Sessions with the same time sort by session ID.
133
+ *
134
+ * @param sessions - Sessions from one or more {@link listAgentSessions} pages.
135
+ * @returns A new array, most recent first.
136
+ * @since 0.6.0
137
+ */
138
+ export declare function sortAgentSessionsByLastActivity(sessions: readonly AgentSessionSummary[]): AgentSessionSummary[];
@@ -0,0 +1,151 @@
1
+ // Copyright (c) 2026 Super Durable, Inc.
2
+ //
3
+ // Licensed under the Sustainable Use License 1.0.
4
+ // You may not use this file except in compliance with the License.
5
+ // See the LICENSE file in the repository root.
6
+ //
7
+ // SPDX-License-Identifier: LicenseRef-Sustainable-Use-1.0
8
+ import { DexServiceError } from "@superdurable/dex";
9
+ import { sessionSummaryIndexKeys } from "./agent-session-persistence.js";
10
+ /**
11
+ * Most Unicode code points {@link buildSessionTitle} keeps.
12
+ *
13
+ * @since 0.6.0
14
+ */
15
+ export const sessionTitleMaxCodePoints = 80;
16
+ /**
17
+ * Page size that {@link listAgentSessions} uses when the caller gives none.
18
+ *
19
+ * @since 0.6.0
20
+ */
21
+ export const defaultSessionListPageSize = 50;
22
+ // gRPC INVALID_ARGUMENT, and the start of the server's text when a query names an unregistered index key.
23
+ const invalidArgumentCode = 3;
24
+ const unknownFieldText = "unknown visibility field";
25
+ // Only ASCII whitespace, so every core collapses exactly the same characters.
26
+ const titleWhitespace = /[ \t\n\r\f\v]+/g;
27
+ /**
28
+ * The namespace has not registered `text1`, so {@link listAgentSessions} cannot search titles.
29
+ *
30
+ * A Worker registers the index key when its session Flow sets `summaryAttributesIndexed`. List without
31
+ * `titleSearch`, and filter the loaded sessions by ID instead.
32
+ *
33
+ * @since 0.6.0
34
+ */
35
+ export class SessionTitleSearchUnavailableError extends Error {
36
+ constructor(options) {
37
+ super("the namespace has not registered the session title index text1; a Worker whose session Flow sets summaryAttributesIndexed registers it", options);
38
+ this.name = "SessionTitleSearchUnavailableError";
39
+ }
40
+ }
41
+ /**
42
+ * Returns the title a session takes from its first user message.
43
+ *
44
+ * Each run of ASCII spaces, tabs, and line breaks becomes one space, leading and trailing spaces are removed, and the
45
+ * text is cut to its first {@link sessionTitleMaxCodePoints} Unicode code points, without a trailing space. The Python core gives the
46
+ * same title for the same text.
47
+ *
48
+ * @example
49
+ * ```ts
50
+ * buildSessionTitle(" Fix the\n flaky test "); // "Fix the flaky test"
51
+ * ```
52
+ *
53
+ * @param firstMessageText - Text of the session's first user message.
54
+ * @returns The title, or `null` when the text has no other character.
55
+ * @since 0.6.0
56
+ */
57
+ export function buildSessionTitle(firstMessageText) {
58
+ const collapsed = removeEdgeSpaces(firstMessageText.replace(titleWhitespace, " "));
59
+ const title = removeEdgeSpaces(Array.from(collapsed).slice(0, sessionTitleMaxCodePoints).join(""));
60
+ return title === "" ? null : title;
61
+ }
62
+ /**
63
+ * Returns one page of the sessions of a session Flow type.
64
+ *
65
+ * It makes one `Client.searchFlows` call. It needs no Worker and reads no snapshot. Dex orders the page; it cannot
66
+ * sort by last activity, so sort the sessions you loaded with {@link sortAgentSessionsByLastActivity}. The title,
67
+ * last activity time, and turn count come from a Flow with `summaryAttributesIndexed`; other sessions list without
68
+ * them.
69
+ *
70
+ * @example
71
+ * ```ts
72
+ * let page = await listAgentSessions(client, flow.getFlowType(), { titleSearch: "refund" });
73
+ * while (page.nextPageToken !== "") {
74
+ * page = await listAgentSessions(client, flow.getFlowType(), { titleSearch: "refund", nextPageToken: page.nextPageToken });
75
+ * }
76
+ * ```
77
+ *
78
+ * @param client - An open Client. Its Registry does not need the session Flow.
79
+ * @param flowType - The session Flow type, such as `flow.getFlowType()`.
80
+ * @param options - The page size, page token, and title search.
81
+ * @returns The page of sessions.
82
+ * @throws {RangeError} When `pageSize` is negative.
83
+ * @throws {SessionTitleSearchUnavailableError} When `titleSearch` is given and the namespace has not registered the
84
+ * index key `text1`.
85
+ * @throws {DexServiceError} When Dex rejects the search for another reason.
86
+ * @since 0.6.0
87
+ */
88
+ export async function listAgentSessions(client, flowType, options = {}) {
89
+ let query = `FlowType = ${quoteQueryString(flowType)}`;
90
+ const titleSearch = options.titleSearch;
91
+ const isTitleSearch = titleSearch !== undefined && titleSearch.trim() !== "";
92
+ if (isTitleSearch) {
93
+ query += ` AND ${sessionSummaryIndexKeys.title} = ${quoteQueryString(titleSearch)}`;
94
+ }
95
+ let page;
96
+ try {
97
+ page = await client.searchFlows(query, options.pageSize ?? defaultSessionListPageSize, options.nextPageToken ?? "");
98
+ }
99
+ catch (error) {
100
+ if (isTitleSearch &&
101
+ error instanceof DexServiceError &&
102
+ error.code === invalidArgumentCode &&
103
+ error.detail.includes(`${unknownFieldText} "${sessionSummaryIndexKeys.title}"`)) {
104
+ throw new SessionTitleSearchUnavailableError({ cause: error });
105
+ }
106
+ throw error;
107
+ }
108
+ return { sessions: page.flows.map(readSessionSummary), nextPageToken: page.nextPageToken };
109
+ }
110
+ /**
111
+ * Returns sessions with the most recent activity first.
112
+ *
113
+ * A session without a last activity time sorts by its start time. Sessions with the same time sort by session ID.
114
+ *
115
+ * @param sessions - Sessions from one or more {@link listAgentSessions} pages.
116
+ * @returns A new array, most recent first.
117
+ * @since 0.6.0
118
+ */
119
+ export function sortAgentSessionsByLastActivity(sessions) {
120
+ return [...sessions].sort((left, right) => activityTime(right) - activityTime(left) ||
121
+ (left.sessionId < right.sessionId ? -1 : left.sessionId > right.sessionId ? 1 : 0));
122
+ }
123
+ function readSessionSummary(entry) {
124
+ const title = entry.indexedAttributes.get(sessionSummaryIndexKeys.title);
125
+ const lastActivityAt = entry.indexedAttributes.get(sessionSummaryIndexKeys.lastActivityAt);
126
+ const turnCount = entry.indexedAttributes.get(sessionSummaryIndexKeys.turnCount);
127
+ return {
128
+ sessionId: entry.flowId,
129
+ runId: entry.runId,
130
+ status: entry.status,
131
+ startedAt: entry.startedAt,
132
+ closedAt: entry.closedAt,
133
+ title: typeof title === "string" ? title : null,
134
+ lastActivityAt: typeof lastActivityAt === "string" ? parseTime(lastActivityAt) : null,
135
+ turnCount: typeof turnCount === "bigint" ? Number(turnCount) : null,
136
+ };
137
+ }
138
+ function parseTime(text) {
139
+ const time = Date.parse(text);
140
+ return Number.isNaN(time) ? null : new Date(time);
141
+ }
142
+ function activityTime(session) {
143
+ return (session.lastActivityAt ?? session.startedAt).getTime();
144
+ }
145
+ function removeEdgeSpaces(text) {
146
+ return text.replace(/^ +| +$/g, "");
147
+ }
148
+ function quoteQueryString(text) {
149
+ return `"${text.replaceAll("\\", "\\\\").replaceAll('"', '\\"')}"`;
150
+ }
151
+ //# sourceMappingURL=agent-session-summary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-session-summary.js","sourceRoot":"","sources":["../../src/agent-session-summary.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { type AgentSessionPersistence } from "./agent-session-persistence.js";
7
7
  import { type ModelSpendLimit } from "./agent-session-spend-limit.js";
8
8
  import { type MessageChunkLoads, type ResolvedRunModelLimit } from "./agent-session-step-options.js";
9
9
  import type { AgentSessionTracer } from "./agent-session-tracer.js";
10
- import { type AgentInterrupt, type AgentInterruptKind, type AgentMessage, type AgentMessageChunk, type AgentMessageChunkRange, type AgentMessageIndex, type AgentPlan, type AgentState, type AgentToolCall, type AgentToolCallRecord, type AgentUsage, type AgentUserMessage, type ContextSummary, type SessionSettings, type TurnSessionSettings, type FrameworkMessage, type InteractionMode, type ToolCallCancellationReason, type ToolEffect } from "./agent-session-values.js";
10
+ import { type AgentInterrupt, type AgentInterruptKind, type AgentMessage, type AgentMessageChunk, type AgentMessageChunkRange, type AgentMessageIndex, type AgentMessageOrigin, type AgentPlan, type AgentState, type AgentToolCall, type AgentToolCallRecord, type AgentUsage, type AgentUserMessage, type ContextSummary, type SessionSettings, type TurnSessionSettings, type FrameworkMessage, type InteractionMode, type ToolCallCancellationReason, type ToolEffect } from "./agent-session-values.js";
11
11
  import type { ResolvedAgentTracingOptions } from "./agent-tracing-options.js";
12
12
  export { agentSessionStepTypes } from "./agent-session-step-types.js";
13
13
  /** Most archive chunks one commit writes, so a large 0.1.0 history migrates over several commits. */
@@ -47,6 +47,7 @@ export interface AgentSessionConfig {
47
47
  readonly retainedMessageLimit: number | null;
48
48
  readonly runModelLimit: ResolvedRunModelLimit;
49
49
  readonly spendLimit: ModelSpendLimit | undefined;
50
+ readonly summaryAttributesIndexed: boolean;
50
51
  }
51
52
  /** Shared state reads, writes, and routing used by every session Step. */
52
53
  export declare class AgentSessionTransitions {
@@ -58,6 +59,10 @@ export declare class AgentSessionTransitions {
58
59
  readOptionalAgentState(context: Context): AgentState | null;
59
60
  readAgentState(context: Context): AgentState;
60
61
  writeAgentState(context: Context, state: AgentState): void;
62
+ /** Writes the session's last activity time and turn count. */
63
+ recordSessionActivity(context: Context, turnCount: number): void;
64
+ /** Writes the session's title from its first user message, unless it already has one. */
65
+ recordSessionTitle(context: Context, firstMessageText: string): void;
61
66
  readPendingInterrupts(context: Context): readonly AgentInterrupt[];
62
67
  readOptionalAgentPlan(context: Context): AgentPlan | null;
63
68
  readAgentUsage(context: Context): AgentUsage;
@@ -147,9 +152,10 @@ export declare class AgentSessionTransitions {
147
152
  * straight into a chunk of its own, so the first store writes the largest value it ever needs. In the same
148
153
  * commit it moves the oldest window messages into archive chunks while the window is over its size and
149
154
  * applies retention; it writes `AgentMessageIndex` only when one of them changed it. It requires the whole
150
- * window to be loaded. With `startsTurn`, `TurnReplySequence` records where the turn's replies begin.
155
+ * window to be loaded. With `startsTurn`, `TurnReplySequence` records where the turn's replies begin. A non-null
156
+ * `origin` marks every appended message as written by the session itself.
151
157
  */
152
- appendMessages(context: Context, state: AgentState, turnId: string, frameworkMessages: readonly FrameworkMessage[], startsTurn?: boolean): AgentState;
158
+ appendMessages(context: Context, state: AgentState, turnId: string, frameworkMessages: readonly FrameworkMessage[], startsTurn?: boolean, origin?: AgentMessageOrigin | null): AgentState;
153
159
  /**
154
160
  * Moves the oldest window messages into immutable chunks while the window holds more than its size. A chunk
155
161
  * closes at `messageChunkSize` messages, at `messageChunkMaxBytes` bytes, or before a message stored in its