@camerontaylor/paseo-client 0.11.0-beta.3.fork.1 → 0.11.1-fork.1
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 +7 -3
- package/dist/daemon-client.js +52 -8
- package/package.json +3 -3
package/dist/daemon-client.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import type { SessionEventSubscription } from "@camerontaylor/paseo-protocol/mes
|
|
|
6
6
|
import type { ClientCapability } from "@camerontaylor/paseo-protocol/client-capabilities";
|
|
7
7
|
import type { AgentAttentionNotificationPayload } from "@camerontaylor/paseo-protocol/agent-attention-notification";
|
|
8
8
|
import { AgentRefreshedStatusPayloadSchema, CheckoutRenameBranchResponseSchema, CheckoutBaseRefSetResponseSchema, RenameTerminalResponseSchema, RestartRequestedStatusPayloadSchema, ShutdownRequestedStatusPayloadSchema, DaemonUpdateResponseSchema, type ActiveTurnBehavior, type ServerInfoStatusPayload } from "@camerontaylor/paseo-protocol/messages";
|
|
9
|
-
import type { AgentStreamEventPayload, AgentSnapshotPayload, ProjectPlacementPayload, AgentPermissionResolvedMessage, CreateAgentRequestMessage, CreatePaseoWorktreeRequest, FileDownloadTokenResponse, FileUploadResponse, FileExplorerResponse, FileVersion, FileWriteResult, FetchAgentTimelineResponseMessage, AgentForkContextResponseMessage, GitSetupOptions, CheckoutStatusResponse, CheckoutCommit, ParsedDiffFile, CheckoutCommitResponse, CheckoutMergeResponse, CheckoutMergeFromBaseResponse, CheckoutPullResponse, CheckoutPushResponse, CheckoutRefreshResponse, CheckoutPrCreateResponse, CheckoutPrMergeResponse, CheckoutPrMergeMethod, CheckoutForgeSetAutoMergeResponse, CheckoutGithubSetAutoMergeResponse, CheckoutForgeGetCheckDetailsResponse, CheckoutGithubGetCheckDetailsResponse, CheckoutPrStatusResponse, PullRequestTimelineResponse, CheckoutSwitchBranchResponse, StashSaveResponse, StashPopResponse, StashListResponse, ValidateBranchResponse, BranchSuggestionsResponse, ForgeSearchResponse, ForgeSearchRequest, GitHubSearchResponse, GitHubSearchRequest, DirectorySuggestionsResponse, PaseoWorktreeListResponse, PaseoWorktreeArchiveResponse, ProjectIconSource, ProjectIconResponse, ProjectIconGetResponse, ProjectAddResponse, ProjectCreateDirectoryResponse, OpenProjectResponseMessage, WorkspaceGithubSearchRepositoriesResponse, ProjectGithubCloneProtocol, ProjectGithubCloneResponse, ArchiveWorkspaceResponseMessage, WorkspaceSetupStatusResponseMessage, ListCommandsResponse, ListProviderFeaturesResponseMessage, ListProviderModelsResponseMessage, ListProviderModesResponseMessage, ListAvailableProvidersResponse, GetProvidersSnapshotResponseMessage, RefreshProvidersSnapshotResponseMessage, ProviderDiagnosticResponseMessage, ProviderUsageListResponseMessage,
|
|
9
|
+
import type { AgentStreamEventPayload, AgentSnapshotPayload, ProjectPlacementPayload, AgentPermissionResolvedMessage, CreateAgentRequestMessage, CreatePaseoWorktreeRequest, FileDownloadTokenResponse, FileUploadResponse, FileExplorerResponse, FileVersion, FileWriteResult, FetchAgentTimelineResponseMessage, AgentForkContextResponseMessage, GitSetupOptions, CheckoutStatusResponse, CheckoutCommit, ParsedDiffFile, CheckoutCommitResponse, CheckoutMergeResponse, CheckoutMergeFromBaseResponse, CheckoutPullResponse, CheckoutPushResponse, CheckoutRefreshResponse, CheckoutPrCreateResponse, CheckoutPrMergeResponse, CheckoutPrMergeMethod, CheckoutForgeSetAutoMergeResponse, CheckoutGithubSetAutoMergeResponse, CheckoutForgeGetCheckDetailsResponse, CheckoutGithubGetCheckDetailsResponse, CheckoutPrStatusResponse, PullRequestTimelineResponse, CheckoutSwitchBranchResponse, StashSaveResponse, StashPopResponse, StashListResponse, ValidateBranchResponse, BranchSuggestionsResponse, ForgeSearchResponse, ForgeSearchRequest, GitHubSearchResponse, GitHubSearchRequest, DirectorySuggestionsResponse, PaseoWorktreeListResponse, PaseoWorktreeArchiveResponse, ProjectIconSource, ProjectIconResponse, ProjectIconGetResponse, ProjectAddResponse, ProjectCreateDirectoryResponse, OpenProjectResponseMessage, WorkspaceGithubSearchRepositoriesResponse, ProjectGithubCloneProtocol, ProjectGithubCloneResponse, ArchiveWorkspaceResponseMessage, WorkspaceSetupStatusResponseMessage, ListCommandsResponse, ListProviderFeaturesResponseMessage, ListProviderModelsResponseMessage, ListProviderModesResponseMessage, ListAvailableProvidersResponse, GetProvidersSnapshotResponseMessage, RefreshProvidersSnapshotResponseMessage, ProviderDiagnosticResponseMessage, ProviderUsageListResponseMessage, UsageReportEntry, DaemonGetStatusResponse, DaemonGetPairingOfferResponse, DaemonConfigReloadResponse, DiagnosticsResponse, AgentRewindResponseMessage, ListTerminalsResponse, CreateTerminalResponse, SubscribeTerminalResponse, SubscribeTerminalRequest, CloseItemsResponse, KillTerminalResponse, CaptureTerminalResponse, TerminalInput, SessionInboundMessage, SessionOutboundMessage, SendAgentMessageRequest, PaseoConfigRaw, PaseoConfigRevision, WorkspaceCreateRequest, WorkspaceRecoveryState, PluginListItem, PluginLogEntry, PluginSourceStatusItem, PluginSourceUpdateItem, PluginUpdateSelection, PluginUpdateProposal, PluginUpdatePreview, PluginUpdateResult, AgentSkillSelection, AgentSkillsStatus, AgentSkillsSaveResult } from "@camerontaylor/paseo-protocol/messages";
|
|
10
10
|
import type { AgentPermissionRequest, AgentPermissionResponse, AgentPersistenceHandle, AgentProviderNotice, AgentProvider, AgentSessionConfig } from "@camerontaylor/paseo-protocol/agent-types";
|
|
11
11
|
import type { AgentConfigApply, MutableDaemonConfig, MutableDaemonConfigPatch } from "@camerontaylor/paseo-protocol/messages";
|
|
12
12
|
import { type DaemonTransportFactory, type WebSocketFactory } from "./daemon-client-transport.js";
|
|
@@ -266,7 +266,10 @@ type GetProvidersSnapshotPayload = GetProvidersSnapshotResponseMessage["payload"
|
|
|
266
266
|
type RefreshProvidersSnapshotPayload = RefreshProvidersSnapshotResponseMessage["payload"];
|
|
267
267
|
type ProviderDiagnosticPayload = ProviderDiagnosticResponseMessage["payload"];
|
|
268
268
|
type ProviderUsageListPayload = ProviderUsageListResponseMessage["payload"];
|
|
269
|
-
|
|
269
|
+
interface UsageListReportsPayload {
|
|
270
|
+
requestId: string;
|
|
271
|
+
reports: UsageReportEntry[];
|
|
272
|
+
}
|
|
270
273
|
type DaemonStatusPayload = DaemonGetStatusResponse["payload"];
|
|
271
274
|
type DaemonPairingOfferPayload = DaemonGetPairingOfferResponse["payload"];
|
|
272
275
|
type DiagnosticsPayload = DiagnosticsResponse["payload"];
|
|
@@ -1192,10 +1195,11 @@ export declare class DaemonClient {
|
|
|
1192
1195
|
requestId?: string;
|
|
1193
1196
|
}): Promise<ProviderUsageListPayload>;
|
|
1194
1197
|
listUsageReports(options?: {
|
|
1198
|
+
agentId?: string;
|
|
1195
1199
|
requestId?: string;
|
|
1196
1200
|
forceRefresh?: boolean;
|
|
1197
1201
|
reportIds?: string[];
|
|
1198
|
-
}): Promise<UsageListReportsPayload>;
|
|
1202
|
+
}, onReport?: (report: UsageReportEntry) => void): Promise<UsageListReportsPayload>;
|
|
1199
1203
|
listCommands(options: ListCommandsOptions): Promise<ListCommandsPayload>;
|
|
1200
1204
|
listCommands(agentId: string, requestId?: string): Promise<ListCommandsPayload>;
|
|
1201
1205
|
listCommands(agentId: string, options?: LegacyListCommandsOptions): Promise<ListCommandsPayload>;
|
package/dist/daemon-client.js
CHANGED
|
@@ -3580,13 +3580,17 @@ export class DaemonClient {
|
|
|
3580
3580
|
},
|
|
3581
3581
|
});
|
|
3582
3582
|
}
|
|
3583
|
-
async listUsageReports(options) {
|
|
3583
|
+
async listUsageReports(options, onReport) {
|
|
3584
3584
|
const features = this.getLastServerInfoMessage()?.features;
|
|
3585
3585
|
if (!supportsUsageReports(features)) {
|
|
3586
3586
|
throw new Error("Update the host to see usage.");
|
|
3587
3587
|
}
|
|
3588
|
+
if (options?.agentId !== undefined && options.reportIds !== undefined)
|
|
3589
|
+
throw new Error("agentId and reportIds cannot be combined");
|
|
3588
3590
|
// COMPAT(providerUsageList): added in v0.1.98, remove after 2027-03-26.
|
|
3589
3591
|
if (features?.usageSources !== true) {
|
|
3592
|
+
if (options?.agentId !== undefined)
|
|
3593
|
+
return { requestId: this.createRequestId(options.requestId), reports: [] };
|
|
3590
3594
|
// Released hosts serve a five-minute cache and have no forceRefresh option.
|
|
3591
3595
|
const payload = await this.listProviderUsage({ requestId: options?.requestId });
|
|
3592
3596
|
return {
|
|
@@ -3627,14 +3631,54 @@ export class DaemonClient {
|
|
|
3627
3631
|
}),
|
|
3628
3632
|
};
|
|
3629
3633
|
}
|
|
3630
|
-
|
|
3631
|
-
|
|
3632
|
-
|
|
3633
|
-
|
|
3634
|
-
|
|
3635
|
-
|
|
3636
|
-
|
|
3634
|
+
const requestId = this.createRequestId(options?.requestId);
|
|
3635
|
+
const reports = [];
|
|
3636
|
+
let active = true;
|
|
3637
|
+
const unsubscribe = this.subscribeRawMessages((message) => {
|
|
3638
|
+
if (!active ||
|
|
3639
|
+
!("payload" in message) ||
|
|
3640
|
+
!("requestId" in message.payload) ||
|
|
3641
|
+
message.payload.requestId !== requestId)
|
|
3642
|
+
return;
|
|
3643
|
+
if (message.type === "usage.list_reports.response" || message.type === "rpc_error") {
|
|
3644
|
+
active = false;
|
|
3645
|
+
return;
|
|
3646
|
+
}
|
|
3647
|
+
if (message.type !== "usage.list_reports.update")
|
|
3648
|
+
return;
|
|
3649
|
+
reports.push(message.payload.report);
|
|
3650
|
+
onReport?.(message.payload.report);
|
|
3637
3651
|
});
|
|
3652
|
+
try {
|
|
3653
|
+
const response = await this.sendRequest({
|
|
3654
|
+
requestId,
|
|
3655
|
+
message: {
|
|
3656
|
+
type: "usage.list_reports.request",
|
|
3657
|
+
streaming: features?.usageReportsStreaming === true ? true : undefined,
|
|
3658
|
+
requestId,
|
|
3659
|
+
forceRefresh: options?.forceRefresh,
|
|
3660
|
+
reportIds: options?.reportIds,
|
|
3661
|
+
agentId: options?.agentId,
|
|
3662
|
+
},
|
|
3663
|
+
select: (message) => message.type === "usage.list_reports.response" && message.payload.requestId === requestId
|
|
3664
|
+
? message.payload
|
|
3665
|
+
: null,
|
|
3666
|
+
});
|
|
3667
|
+
if (response.error != null)
|
|
3668
|
+
throw new Error(response.error);
|
|
3669
|
+
// COMPAT(usageReportsStreaming): added in v0.11.1, remove after 2027-04-08 once all hosts advertise usageReportsStreaming.
|
|
3670
|
+
// beta.3 sends reports only; beta.4 through 0.11.1 send updates only.
|
|
3671
|
+
if (response.reports !== undefined) {
|
|
3672
|
+
if (reports.length === 0)
|
|
3673
|
+
response.reports.forEach((report) => onReport?.(report));
|
|
3674
|
+
return { requestId, reports: response.reports };
|
|
3675
|
+
}
|
|
3676
|
+
return { requestId, reports };
|
|
3677
|
+
}
|
|
3678
|
+
finally {
|
|
3679
|
+
active = false;
|
|
3680
|
+
unsubscribe();
|
|
3681
|
+
}
|
|
3638
3682
|
}
|
|
3639
3683
|
async listCommands(input, legacyOptions) {
|
|
3640
3684
|
const options = normalizeListCommandsOptions(input, legacyOptions);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camerontaylor/paseo-client",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.1-fork.1",
|
|
4
4
|
"description": "Paseo client SDK package",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -39,8 +39,8 @@
|
|
|
39
39
|
"test": "vitest run"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@camerontaylor/paseo-protocol": "0.11.
|
|
43
|
-
"@camerontaylor/paseo-relay": "0.11.
|
|
42
|
+
"@camerontaylor/paseo-protocol": "0.11.1-fork.1",
|
|
43
|
+
"@camerontaylor/paseo-relay": "0.11.1-fork.1",
|
|
44
44
|
"zod": "^4.4.3"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|