@hyperdrive.bot/paseo-client 0.3.53 → 0.3.55
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/dist/daemon-client.d.ts +44 -1
- package/dist/daemon-client.js +75 -0
- package/package.json +3 -3
package/dist/daemon-client.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { z } from "zod";
|
|
2
2
|
import { type ClientCapability } from "@hyperdrive.bot/paseo-protocol/client-capabilities";
|
|
3
3
|
import { AgentRefreshedStatusPayloadSchema, CheckoutRenameBranchResponseSchema, RenameTerminalResponseSchema, RestartRequestedStatusPayloadSchema, ShutdownRequestedStatusPayloadSchema, DaemonUpdateResponseSchema, type ServerInfoStatusPayload } from "@hyperdrive.bot/paseo-protocol/messages";
|
|
4
|
-
import type { AgentStreamEventPayload, InstalledExtension, AgentSnapshotPayload, ProjectPlacementPayload, AgentPermissionResolvedMessage, CreateAgentRequestMessage, CreatePaseoWorktreeRequest, FileDownloadTokenResponse, FileExplorerResponse, FetchAgentTimelineResponseMessage, AgentForkContextResponseMessage, GitSetupOptions, CheckoutStatusResponse, CheckoutCommitResponse, CheckoutMergeResponse, CheckoutMergeFromBaseResponse, CheckoutPullResponse, CheckoutPushResponse, CheckoutRefreshResponse, CheckoutPrCreateResponse, CheckoutPrMergeResponse, CheckoutPrMergeMethod, CheckoutGithubSetAutoMergeResponse, CheckoutGithubGetCheckDetailsResponse, CheckoutPrStatusResponse, PullRequestTimelineResponse, CheckoutSwitchBranchResponse, StashSaveResponse, StashPopResponse, StashListResponse, ValidateBranchResponse, BranchSuggestionsResponse, GitHubSearchResponse, GitHubSearchRequest, DirectorySuggestionsResponse, PaseoWorktreeListResponse, PaseoWorktreeArchiveResponse, ProjectIconResponse, ProjectAddResponse, OpenProjectResponseMessage, ArchiveWorkspaceResponseMessage, WorkspaceSetupStatusResponseMessage, ListCommandsResponse, ListProviderFeaturesResponseMessage, ListProviderModelsResponseMessage, ListProviderModesResponseMessage, ListAvailableProvidersResponse, GetProvidersSnapshotResponseMessage, RefreshProvidersSnapshotResponseMessage, ProviderDiagnosticResponseMessage, ProviderUsageListResponseMessage, DaemonGetStatusResponse, DaemonGetPairingOfferResponse, DiagnosticsResponse, AgentRewindResponseMessage, ListTerminalsResponse, CreateTerminalResponse, SubscribeTerminalResponse, SubscribeTerminalRequest, CloseItemsResponse, KillTerminalResponse, CaptureTerminalResponse, TerminalInput, SessionInboundMessage, SessionOutboundMessage, SendAgentMessageRequest, PaseoConfigRaw, PaseoConfigRevision, ProjectRenameResponse, BackgroundTaskPayload, WatchNotificationActionMessage, WatchSessionSearchMessage, WatchComposerDictateMessage, WorkflowAgentPreset, WorkflowSnapshot, WorkflowStatus, WorkflowTaskGraph, WorkspaceCreateRequest } from "@hyperdrive.bot/paseo-protocol/messages";
|
|
4
|
+
import type { AgentStreamEventPayload, InstalledExtension, AgentSnapshotPayload, ProjectPlacementPayload, AgentPermissionResolvedMessage, CreateAgentRequestMessage, CreatePaseoWorktreeRequest, FileDownloadTokenResponse, FileExplorerResponse, FetchAgentTimelineResponseMessage, AgentForkContextResponseMessage, GitSetupOptions, CheckoutStatusResponse, CheckoutCommitResponse, CheckoutMergeResponse, CheckoutMergeFromBaseResponse, CheckoutPullResponse, CheckoutPushResponse, CheckoutRefreshResponse, CheckoutPrCreateResponse, CheckoutPrMergeResponse, CheckoutPrMergeMethod, CheckoutGithubSetAutoMergeResponse, CheckoutGithubGetCheckDetailsResponse, CheckoutPrStatusResponse, PullRequestTimelineResponse, CheckoutSwitchBranchResponse, StashSaveResponse, StashPopResponse, StashListResponse, ValidateBranchResponse, BranchSuggestionsResponse, GitHubSearchResponse, GitHubSearchRequest, DirectorySuggestionsResponse, PaseoWorktreeListResponse, PaseoWorktreeArchiveResponse, ProjectIconResponse, ProjectAddResponse, OpenProjectResponseMessage, ArchiveWorkspaceResponseMessage, WorkspaceSetupStatusResponseMessage, ListCommandsResponse, ListProviderFeaturesResponseMessage, ListProviderModelsResponseMessage, ListProviderModesResponseMessage, ListAvailableProvidersResponse, GetProvidersSnapshotResponseMessage, RefreshProvidersSnapshotResponseMessage, ProviderDiagnosticResponseMessage, ProviderUsageListResponseMessage, DaemonGetStatusResponse, DaemonGetPairingOfferResponse, DiagnosticsResponse, AgentRewindResponseMessage, ListTerminalsResponse, CreateTerminalResponse, SubscribeTerminalResponse, SubscribeTerminalRequest, CloseItemsResponse, KillTerminalResponse, CaptureTerminalResponse, TerminalInput, SessionInboundMessage, SessionOutboundMessage, SendAgentMessageRequest, PaseoConfigRaw, PaseoConfigRevision, ProjectRenameResponse, BackgroundTaskPayload, ReferenceEnrichment, SessionDigest, SessionDigestLink, WatchNotificationActionMessage, WatchSessionSearchMessage, WatchComposerDictateMessage, WorkflowAgentPreset, WorkflowSnapshot, WorkflowStatus, WorkflowTaskGraph, WorkspaceCreateRequest, PendingDecision } from "@hyperdrive.bot/paseo-protocol/messages";
|
|
5
5
|
import type { AgentPermissionRequest, AgentPermissionResponse, AgentPersistenceHandle, AgentProviderNotice, AgentProvider, AgentSessionConfig } from "@hyperdrive.bot/paseo-protocol/agent-types";
|
|
6
6
|
import type { MutableDaemonConfig, MutableDaemonConfigPatch, ProvidersReloadConfigPayload } from "@hyperdrive.bot/paseo-protocol/messages";
|
|
7
7
|
import type { FileUploadErrorCode } from "@hyperdrive.bot/paseo-protocol/messages";
|
|
@@ -837,6 +837,42 @@ export declare class DaemonClient {
|
|
|
837
837
|
* so the client can show what is running and for how long.
|
|
838
838
|
*/
|
|
839
839
|
listBackgroundTasks(agentId?: string): Promise<BackgroundTaskPayload[]>;
|
|
840
|
+
/**
|
|
841
|
+
* Record session context (links + non-live credentials) onto an agent's
|
|
842
|
+
* digest. Used by the context hook, which runs beside an agent rather than
|
|
843
|
+
* inside it and so cannot reach the agent-scoped `set_session_digest` MCP
|
|
844
|
+
* tool.
|
|
845
|
+
*
|
|
846
|
+
* Returns how many secrets the daemon had to mask, so a caller can report
|
|
847
|
+
* that it handed over something it should not have.
|
|
848
|
+
*/
|
|
849
|
+
setAgentContext(input: {
|
|
850
|
+
agentId: string;
|
|
851
|
+
links?: {
|
|
852
|
+
kind: SessionDigestLink["kind"];
|
|
853
|
+
url: string;
|
|
854
|
+
label?: string;
|
|
855
|
+
}[];
|
|
856
|
+
secrets?: {
|
|
857
|
+
label: string;
|
|
858
|
+
value: string;
|
|
859
|
+
source?: string;
|
|
860
|
+
}[];
|
|
861
|
+
}): Promise<{
|
|
862
|
+
digest: SessionDigest | null;
|
|
863
|
+
maskedCount: number;
|
|
864
|
+
error?: string;
|
|
865
|
+
}>;
|
|
866
|
+
/**
|
|
867
|
+
* Ask the daemon what it can see about external reference URLs -- a GitLab
|
|
868
|
+
* pipeline's status, a merge request's state, a Jira issue's column.
|
|
869
|
+
*
|
|
870
|
+
* The provider credentials live on the daemon, so the app never holds one.
|
|
871
|
+
* An entry the daemon could not look up still comes back, carrying
|
|
872
|
+
* `unavailableReason`, so a card can say what it could not see instead of
|
|
873
|
+
* spinning. See docs/session-context-rail.md.
|
|
874
|
+
*/
|
|
875
|
+
enrichReferences(urls: string[]): Promise<ReferenceEnrichment[]>;
|
|
840
876
|
/**
|
|
841
877
|
* Read a background shell's captured output. Resolves with `text: null` when
|
|
842
878
|
* the daemon does not know the shell or it captured nothing. The daemon tails
|
|
@@ -945,6 +981,13 @@ export declare class DaemonClient {
|
|
|
945
981
|
setWorkspaceTitle(workspaceId: string, title: string | null, requestId?: string): Promise<{
|
|
946
982
|
title: string | null;
|
|
947
983
|
}>;
|
|
984
|
+
/**
|
|
985
|
+
* Answer a decision the agent parked on its digest. `optionId: null` with a
|
|
986
|
+
* note is a free-text answer — an option the agent did not list.
|
|
987
|
+
*/
|
|
988
|
+
answerAgentDecision(agentId: string, decisionId: string, optionId: string | null, note: string | null, requestId?: string): Promise<{
|
|
989
|
+
decision: PendingDecision | null;
|
|
990
|
+
}>;
|
|
948
991
|
resumeAgent(handle: AgentPersistenceHandle, overrides?: Partial<AgentSessionConfig>): Promise<AgentSnapshotPayload>;
|
|
949
992
|
importAgent(input: ImportAgentInput): Promise<AgentSnapshotPayload>;
|
|
950
993
|
refreshAgent(agentId: string, requestId?: string): Promise<AgentRefreshedStatusPayload>;
|
package/dist/daemon-client.js
CHANGED
|
@@ -1340,6 +1340,60 @@ export class DaemonClient {
|
|
|
1340
1340
|
});
|
|
1341
1341
|
return result.tasks;
|
|
1342
1342
|
}
|
|
1343
|
+
/**
|
|
1344
|
+
* Record session context (links + non-live credentials) onto an agent's
|
|
1345
|
+
* digest. Used by the context hook, which runs beside an agent rather than
|
|
1346
|
+
* inside it and so cannot reach the agent-scoped `set_session_digest` MCP
|
|
1347
|
+
* tool.
|
|
1348
|
+
*
|
|
1349
|
+
* Returns how many secrets the daemon had to mask, so a caller can report
|
|
1350
|
+
* that it handed over something it should not have.
|
|
1351
|
+
*/
|
|
1352
|
+
async setAgentContext(input) {
|
|
1353
|
+
const requestId = this.createRequestId();
|
|
1354
|
+
const message = SessionInboundMessageSchema.parse({
|
|
1355
|
+
type: "set_agent_context_request",
|
|
1356
|
+
agentId: input.agentId,
|
|
1357
|
+
...(input.links === undefined ? {} : { links: input.links }),
|
|
1358
|
+
...(input.secrets === undefined ? {} : { secrets: input.secrets }),
|
|
1359
|
+
requestId,
|
|
1360
|
+
});
|
|
1361
|
+
const result = await this.sendCorrelatedRequest({
|
|
1362
|
+
requestId,
|
|
1363
|
+
message,
|
|
1364
|
+
responseType: "set_agent_context_response",
|
|
1365
|
+
options: { skipQueue: true },
|
|
1366
|
+
});
|
|
1367
|
+
return {
|
|
1368
|
+
digest: result.digest,
|
|
1369
|
+
maskedCount: result.maskedCount,
|
|
1370
|
+
...(result.error === undefined ? {} : { error: result.error }),
|
|
1371
|
+
};
|
|
1372
|
+
}
|
|
1373
|
+
/**
|
|
1374
|
+
* Ask the daemon what it can see about external reference URLs -- a GitLab
|
|
1375
|
+
* pipeline's status, a merge request's state, a Jira issue's column.
|
|
1376
|
+
*
|
|
1377
|
+
* The provider credentials live on the daemon, so the app never holds one.
|
|
1378
|
+
* An entry the daemon could not look up still comes back, carrying
|
|
1379
|
+
* `unavailableReason`, so a card can say what it could not see instead of
|
|
1380
|
+
* spinning. See docs/session-context-rail.md.
|
|
1381
|
+
*/
|
|
1382
|
+
async enrichReferences(urls) {
|
|
1383
|
+
const requestId = this.createRequestId();
|
|
1384
|
+
const message = SessionInboundMessageSchema.parse({
|
|
1385
|
+
type: "enrich_references_request",
|
|
1386
|
+
urls,
|
|
1387
|
+
requestId,
|
|
1388
|
+
});
|
|
1389
|
+
const result = await this.sendCorrelatedRequest({
|
|
1390
|
+
requestId,
|
|
1391
|
+
message,
|
|
1392
|
+
responseType: "enrich_references_response",
|
|
1393
|
+
options: { skipQueue: true },
|
|
1394
|
+
});
|
|
1395
|
+
return result.enrichments;
|
|
1396
|
+
}
|
|
1343
1397
|
/**
|
|
1344
1398
|
* Read a background shell's captured output. Resolves with `text: null` when
|
|
1345
1399
|
* the daemon does not know the shell or it captured nothing. The daemon tails
|
|
@@ -1984,6 +2038,27 @@ export class DaemonClient {
|
|
|
1984
2038
|
}
|
|
1985
2039
|
return { title: payload.title };
|
|
1986
2040
|
}
|
|
2041
|
+
/**
|
|
2042
|
+
* Answer a decision the agent parked on its digest. `optionId: null` with a
|
|
2043
|
+
* note is a free-text answer — an option the agent did not list.
|
|
2044
|
+
*/
|
|
2045
|
+
async answerAgentDecision(agentId, decisionId, optionId, note, requestId) {
|
|
2046
|
+
const payload = await this.sendCorrelatedSessionRequest({
|
|
2047
|
+
requestId,
|
|
2048
|
+
message: {
|
|
2049
|
+
type: "agent.decision.answer.request",
|
|
2050
|
+
agentId,
|
|
2051
|
+
decisionId,
|
|
2052
|
+
optionId,
|
|
2053
|
+
note,
|
|
2054
|
+
},
|
|
2055
|
+
responseType: "agent.decision.answer.response",
|
|
2056
|
+
});
|
|
2057
|
+
if (!payload.accepted) {
|
|
2058
|
+
throw new Error(payload.error ?? "answerAgentDecision rejected");
|
|
2059
|
+
}
|
|
2060
|
+
return { decision: payload.decision };
|
|
2061
|
+
}
|
|
1987
2062
|
async resumeAgent(handle, overrides) {
|
|
1988
2063
|
const requestId = this.createRequestId();
|
|
1989
2064
|
const message = SessionInboundMessageSchema.parse({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hyperdrive.bot/paseo-client",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.55",
|
|
4
4
|
"description": "Paseo client SDK package",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -35,8 +35,8 @@
|
|
|
35
35
|
"test": "vitest run"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@hyperdrive.bot/paseo-protocol": "0.3.
|
|
39
|
-
"@hyperdrive.bot/paseo-relay": "0.3.
|
|
38
|
+
"@hyperdrive.bot/paseo-protocol": "0.3.55",
|
|
39
|
+
"@hyperdrive.bot/paseo-relay": "0.3.55",
|
|
40
40
|
"zod": "^4.4.3"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|