switchroom 0.19.1 → 0.19.2
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/agent-scheduler/index.js +29 -1
- package/dist/auth-broker/index.js +552 -48
- package/dist/cli/autoaccept-poll.js +29 -1
- package/dist/cli/drive-write-pretool.mjs +30 -2
- package/dist/cli/ms-365-write-pretool.mjs +30 -2
- package/dist/cli/switchroom.js +751 -36
- package/dist/host-control/main.js +3 -3
- package/dist/vault/approvals/kernel-server.js +2 -2
- package/dist/vault/broker/server.js +2 -2
- package/package.json +3 -2
- package/profiles/_base/start.sh.hbs +1 -0
- package/skills/switchroom-cli/SKILL.md +25 -0
- package/telegram-plugin/auth-snapshot-format.ts +39 -0
- package/telegram-plugin/dist/gateway/gateway.js +363 -25
- package/telegram-plugin/external-spend.ts +135 -0
- package/telegram-plugin/gateway/gateway.ts +83 -67
- package/telegram-plugin/gateway/model-command.ts +106 -0
- package/telegram-plugin/gateway/narrative-lane.ts +23 -9
- package/telegram-plugin/gateway/status-pin-store.ts +64 -4
- package/telegram-plugin/gateway/usage-mask.ts +29 -0
- package/telegram-plugin/hooks/subagent-tracker-pretool.mjs +19 -2
- package/telegram-plugin/quota-bar-format.ts +18 -0
- package/telegram-plugin/quota-check.ts +17 -2
- package/telegram-plugin/tests/activity-card-wiring.test.ts +47 -0
- package/telegram-plugin/tests/external-spend.test.ts +168 -0
- package/telegram-plugin/tests/gateway-session-model-relaunch.test.ts +57 -23
- package/telegram-plugin/tests/quota-bar-format.test.ts +43 -0
- package/telegram-plugin/tests/quota-check.test.ts +57 -0
- package/telegram-plugin/tests/status-pin-store.test.ts +198 -0
- package/telegram-plugin/tests/subagent-tracker-hooks.test.ts +50 -0
- package/telegram-plugin/tests/usage-footer-freshness.test.ts +141 -0
- package/telegram-plugin/tests/usage-mask.test.ts +35 -0
- package/telegram-plugin/tests/worker-feed-dispatch.test.ts +27 -0
- package/telegram-plugin/tests/worker-feed-pin-persistence.test.ts +131 -1
|
@@ -4843,6 +4843,12 @@ var ClaimNotificationRequestSchema = exports_external.object({
|
|
|
4843
4843
|
key: exports_external.string().min(1).max(512),
|
|
4844
4844
|
windowMs: exports_external.number().int().positive().max(86400000)
|
|
4845
4845
|
});
|
|
4846
|
+
var GetExternalSpendRequestSchema = exports_external.object({
|
|
4847
|
+
v: exports_external.literal(PROTOCOL_VERSION),
|
|
4848
|
+
op: exports_external.literal("get-external-spend"),
|
|
4849
|
+
id: exports_external.string().min(1),
|
|
4850
|
+
forceLive: exports_external.boolean().optional()
|
|
4851
|
+
});
|
|
4846
4852
|
var RequestSchema = exports_external.discriminatedUnion("op", [
|
|
4847
4853
|
GetCredentialsRequestSchema,
|
|
4848
4854
|
ListStateRequestSchema,
|
|
@@ -4856,7 +4862,8 @@ var RequestSchema = exports_external.discriminatedUnion("op", [
|
|
|
4856
4862
|
ListGoogleAccountsRequestSchema,
|
|
4857
4863
|
ListMicrosoftAccountsRequestSchema,
|
|
4858
4864
|
ProbeQuotaRequestSchema,
|
|
4859
|
-
ClaimNotificationRequestSchema
|
|
4865
|
+
ClaimNotificationRequestSchema,
|
|
4866
|
+
GetExternalSpendRequestSchema
|
|
4860
4867
|
]);
|
|
4861
4868
|
var GetCredentialsDataSchema = exports_external.object({
|
|
4862
4869
|
account: exports_external.string(),
|
|
@@ -4923,6 +4930,18 @@ var SetOverrideDataSchema = exports_external.object({
|
|
|
4923
4930
|
var ClaimNotificationDataSchema = exports_external.object({
|
|
4924
4931
|
granted: exports_external.boolean()
|
|
4925
4932
|
});
|
|
4933
|
+
var GetExternalSpendDataSchema = exports_external.object({
|
|
4934
|
+
available: exports_external.boolean(),
|
|
4935
|
+
day24hUsd: exports_external.number().optional(),
|
|
4936
|
+
day7dUsd: exports_external.number().optional(),
|
|
4937
|
+
top: exports_external.array(exports_external.object({
|
|
4938
|
+
label: exports_external.string(),
|
|
4939
|
+
usd: exports_external.number()
|
|
4940
|
+
})).optional(),
|
|
4941
|
+
capturedAtMs: exports_external.number().int().nonnegative().optional(),
|
|
4942
|
+
served: exports_external.enum(["live", "cache"]).optional(),
|
|
4943
|
+
reason: exports_external.string().optional()
|
|
4944
|
+
});
|
|
4926
4945
|
var GoogleAccountStateSchema = exports_external.object({
|
|
4927
4946
|
account: exports_external.string(),
|
|
4928
4947
|
expiresAt: exports_external.number(),
|
|
@@ -5120,6 +5139,15 @@ class AuthBrokerClient {
|
|
|
5120
5139
|
}
|
|
5121
5140
|
return parsed;
|
|
5122
5141
|
}
|
|
5142
|
+
async getExternalSpend(forceLive) {
|
|
5143
|
+
const data = await this.send({
|
|
5144
|
+
v: PROTOCOL_VERSION,
|
|
5145
|
+
id: randomUUID2(),
|
|
5146
|
+
op: "get-external-spend",
|
|
5147
|
+
...forceLive ? { forceLive: true } : {}
|
|
5148
|
+
});
|
|
5149
|
+
return data;
|
|
5150
|
+
}
|
|
5123
5151
|
async setActive(account) {
|
|
5124
5152
|
const data = await this.send({
|
|
5125
5153
|
v: PROTOCOL_VERSION,
|
|
@@ -4000,7 +4000,7 @@ function decodeResponse(line) {
|
|
|
4000
4000
|
}
|
|
4001
4001
|
return ResponseSchema.parse(parsed);
|
|
4002
4002
|
}
|
|
4003
|
-
var MAX_FRAME_BYTES, PROTOCOL_VERSION = 1, ProviderNameSchema, GetCredentialsRequestSchema, ListStateRequestSchema, SetActiveRequestSchema, MarkExhaustedRequestSchema, MarkThrottledRequestSchema, RefreshAccountRequestSchema, AnthropicCredentialsSchema, GoogleCredentialsSchema, MicrosoftCredentialsSchema, ProviderCredentialsSchema, AddAccountRequestSchema, RmAccountRequestSchema, SetOverrideRequestSchema, ListGoogleAccountsRequestSchema, ListMicrosoftAccountsRequestSchema, ProbeQuotaRequestSchema, ClaimNotificationRequestSchema, RequestSchema, GetCredentialsDataSchema, AccountStateSchema, AgentStateSchema, ConsumerStateSchema, ListStateDataSchema, SetActiveDataSchema, MarkExhaustedDataSchema, MarkThrottledDataSchema, RefreshAccountDataSchema, AddAccountDataSchema, RmAccountDataSchema, SetOverrideDataSchema, ClaimNotificationDataSchema, GoogleAccountStateSchema, ListGoogleAccountsDataSchema, MicrosoftAccountStateSchema, ListMicrosoftAccountsDataSchema, ErrorBodySchema, SuccessResponseSchema, ErrorResponseSchema, ResponseSchema;
|
|
4003
|
+
var MAX_FRAME_BYTES, PROTOCOL_VERSION = 1, ProviderNameSchema, GetCredentialsRequestSchema, ListStateRequestSchema, SetActiveRequestSchema, MarkExhaustedRequestSchema, MarkThrottledRequestSchema, RefreshAccountRequestSchema, AnthropicCredentialsSchema, GoogleCredentialsSchema, MicrosoftCredentialsSchema, ProviderCredentialsSchema, AddAccountRequestSchema, RmAccountRequestSchema, SetOverrideRequestSchema, ListGoogleAccountsRequestSchema, ListMicrosoftAccountsRequestSchema, ProbeQuotaRequestSchema, ClaimNotificationRequestSchema, GetExternalSpendRequestSchema, RequestSchema, GetCredentialsDataSchema, AccountStateSchema, AgentStateSchema, ConsumerStateSchema, ListStateDataSchema, SetActiveDataSchema, MarkExhaustedDataSchema, MarkThrottledDataSchema, RefreshAccountDataSchema, AddAccountDataSchema, RmAccountDataSchema, SetOverrideDataSchema, ClaimNotificationDataSchema, GetExternalSpendDataSchema, GoogleAccountStateSchema, ListGoogleAccountsDataSchema, MicrosoftAccountStateSchema, ListMicrosoftAccountsDataSchema, ErrorBodySchema, SuccessResponseSchema, ErrorResponseSchema, ResponseSchema;
|
|
4004
4004
|
var init_protocol = __esm(() => {
|
|
4005
4005
|
init_zod();
|
|
4006
4006
|
MAX_FRAME_BYTES = 64 * 1024;
|
|
@@ -4131,6 +4131,12 @@ var init_protocol = __esm(() => {
|
|
|
4131
4131
|
key: exports_external.string().min(1).max(512),
|
|
4132
4132
|
windowMs: exports_external.number().int().positive().max(86400000)
|
|
4133
4133
|
});
|
|
4134
|
+
GetExternalSpendRequestSchema = exports_external.object({
|
|
4135
|
+
v: exports_external.literal(PROTOCOL_VERSION),
|
|
4136
|
+
op: exports_external.literal("get-external-spend"),
|
|
4137
|
+
id: exports_external.string().min(1),
|
|
4138
|
+
forceLive: exports_external.boolean().optional()
|
|
4139
|
+
});
|
|
4134
4140
|
RequestSchema = exports_external.discriminatedUnion("op", [
|
|
4135
4141
|
GetCredentialsRequestSchema,
|
|
4136
4142
|
ListStateRequestSchema,
|
|
@@ -4144,7 +4150,8 @@ var init_protocol = __esm(() => {
|
|
|
4144
4150
|
ListGoogleAccountsRequestSchema,
|
|
4145
4151
|
ListMicrosoftAccountsRequestSchema,
|
|
4146
4152
|
ProbeQuotaRequestSchema,
|
|
4147
|
-
ClaimNotificationRequestSchema
|
|
4153
|
+
ClaimNotificationRequestSchema,
|
|
4154
|
+
GetExternalSpendRequestSchema
|
|
4148
4155
|
]);
|
|
4149
4156
|
GetCredentialsDataSchema = exports_external.object({
|
|
4150
4157
|
account: exports_external.string(),
|
|
@@ -4211,6 +4218,18 @@ var init_protocol = __esm(() => {
|
|
|
4211
4218
|
ClaimNotificationDataSchema = exports_external.object({
|
|
4212
4219
|
granted: exports_external.boolean()
|
|
4213
4220
|
});
|
|
4221
|
+
GetExternalSpendDataSchema = exports_external.object({
|
|
4222
|
+
available: exports_external.boolean(),
|
|
4223
|
+
day24hUsd: exports_external.number().optional(),
|
|
4224
|
+
day7dUsd: exports_external.number().optional(),
|
|
4225
|
+
top: exports_external.array(exports_external.object({
|
|
4226
|
+
label: exports_external.string(),
|
|
4227
|
+
usd: exports_external.number()
|
|
4228
|
+
})).optional(),
|
|
4229
|
+
capturedAtMs: exports_external.number().int().nonnegative().optional(),
|
|
4230
|
+
served: exports_external.enum(["live", "cache"]).optional(),
|
|
4231
|
+
reason: exports_external.string().optional()
|
|
4232
|
+
});
|
|
4214
4233
|
GoogleAccountStateSchema = exports_external.object({
|
|
4215
4234
|
account: exports_external.string(),
|
|
4216
4235
|
expiresAt: exports_external.number(),
|
|
@@ -4381,6 +4400,15 @@ class AuthBrokerClient {
|
|
|
4381
4400
|
}
|
|
4382
4401
|
return parsed;
|
|
4383
4402
|
}
|
|
4403
|
+
async getExternalSpend(forceLive) {
|
|
4404
|
+
const data = await this.send({
|
|
4405
|
+
v: PROTOCOL_VERSION,
|
|
4406
|
+
id: randomUUID(),
|
|
4407
|
+
op: "get-external-spend",
|
|
4408
|
+
...forceLive ? { forceLive: true } : {}
|
|
4409
|
+
});
|
|
4410
|
+
return data;
|
|
4411
|
+
}
|
|
4384
4412
|
async setActive(account) {
|
|
4385
4413
|
const data = await this.send({
|
|
4386
4414
|
v: PROTOCOL_VERSION,
|
|
@@ -4002,7 +4002,7 @@ function decodeResponse(line) {
|
|
|
4002
4002
|
}
|
|
4003
4003
|
return ResponseSchema.parse(parsed);
|
|
4004
4004
|
}
|
|
4005
|
-
var MAX_FRAME_BYTES, PROTOCOL_VERSION = 1, ProviderNameSchema, GetCredentialsRequestSchema, ListStateRequestSchema, SetActiveRequestSchema, MarkExhaustedRequestSchema, MarkThrottledRequestSchema, RefreshAccountRequestSchema, AnthropicCredentialsSchema, GoogleCredentialsSchema, MicrosoftCredentialsSchema, ProviderCredentialsSchema, AddAccountRequestSchema, RmAccountRequestSchema, SetOverrideRequestSchema, ListGoogleAccountsRequestSchema, ListMicrosoftAccountsRequestSchema, ProbeQuotaRequestSchema, ClaimNotificationRequestSchema, RequestSchema, GetCredentialsDataSchema, AccountStateSchema, AgentStateSchema, ConsumerStateSchema, ListStateDataSchema, SetActiveDataSchema, MarkExhaustedDataSchema, MarkThrottledDataSchema, RefreshAccountDataSchema, AddAccountDataSchema, RmAccountDataSchema, SetOverrideDataSchema, ClaimNotificationDataSchema, GoogleAccountStateSchema, ListGoogleAccountsDataSchema, MicrosoftAccountStateSchema, ListMicrosoftAccountsDataSchema, ErrorBodySchema, SuccessResponseSchema, ErrorResponseSchema, ResponseSchema;
|
|
4005
|
+
var MAX_FRAME_BYTES, PROTOCOL_VERSION = 1, ProviderNameSchema, GetCredentialsRequestSchema, ListStateRequestSchema, SetActiveRequestSchema, MarkExhaustedRequestSchema, MarkThrottledRequestSchema, RefreshAccountRequestSchema, AnthropicCredentialsSchema, GoogleCredentialsSchema, MicrosoftCredentialsSchema, ProviderCredentialsSchema, AddAccountRequestSchema, RmAccountRequestSchema, SetOverrideRequestSchema, ListGoogleAccountsRequestSchema, ListMicrosoftAccountsRequestSchema, ProbeQuotaRequestSchema, ClaimNotificationRequestSchema, GetExternalSpendRequestSchema, RequestSchema, GetCredentialsDataSchema, AccountStateSchema, AgentStateSchema, ConsumerStateSchema, ListStateDataSchema, SetActiveDataSchema, MarkExhaustedDataSchema, MarkThrottledDataSchema, RefreshAccountDataSchema, AddAccountDataSchema, RmAccountDataSchema, SetOverrideDataSchema, ClaimNotificationDataSchema, GetExternalSpendDataSchema, GoogleAccountStateSchema, ListGoogleAccountsDataSchema, MicrosoftAccountStateSchema, ListMicrosoftAccountsDataSchema, ErrorBodySchema, SuccessResponseSchema, ErrorResponseSchema, ResponseSchema;
|
|
4006
4006
|
var init_protocol = __esm(() => {
|
|
4007
4007
|
init_zod();
|
|
4008
4008
|
MAX_FRAME_BYTES = 64 * 1024;
|
|
@@ -4133,6 +4133,12 @@ var init_protocol = __esm(() => {
|
|
|
4133
4133
|
key: exports_external.string().min(1).max(512),
|
|
4134
4134
|
windowMs: exports_external.number().int().positive().max(86400000)
|
|
4135
4135
|
});
|
|
4136
|
+
GetExternalSpendRequestSchema = exports_external.object({
|
|
4137
|
+
v: exports_external.literal(PROTOCOL_VERSION),
|
|
4138
|
+
op: exports_external.literal("get-external-spend"),
|
|
4139
|
+
id: exports_external.string().min(1),
|
|
4140
|
+
forceLive: exports_external.boolean().optional()
|
|
4141
|
+
});
|
|
4136
4142
|
RequestSchema = exports_external.discriminatedUnion("op", [
|
|
4137
4143
|
GetCredentialsRequestSchema,
|
|
4138
4144
|
ListStateRequestSchema,
|
|
@@ -4146,7 +4152,8 @@ var init_protocol = __esm(() => {
|
|
|
4146
4152
|
ListGoogleAccountsRequestSchema,
|
|
4147
4153
|
ListMicrosoftAccountsRequestSchema,
|
|
4148
4154
|
ProbeQuotaRequestSchema,
|
|
4149
|
-
ClaimNotificationRequestSchema
|
|
4155
|
+
ClaimNotificationRequestSchema,
|
|
4156
|
+
GetExternalSpendRequestSchema
|
|
4150
4157
|
]);
|
|
4151
4158
|
GetCredentialsDataSchema = exports_external.object({
|
|
4152
4159
|
account: exports_external.string(),
|
|
@@ -4213,6 +4220,18 @@ var init_protocol = __esm(() => {
|
|
|
4213
4220
|
ClaimNotificationDataSchema = exports_external.object({
|
|
4214
4221
|
granted: exports_external.boolean()
|
|
4215
4222
|
});
|
|
4223
|
+
GetExternalSpendDataSchema = exports_external.object({
|
|
4224
|
+
available: exports_external.boolean(),
|
|
4225
|
+
day24hUsd: exports_external.number().optional(),
|
|
4226
|
+
day7dUsd: exports_external.number().optional(),
|
|
4227
|
+
top: exports_external.array(exports_external.object({
|
|
4228
|
+
label: exports_external.string(),
|
|
4229
|
+
usd: exports_external.number()
|
|
4230
|
+
})).optional(),
|
|
4231
|
+
capturedAtMs: exports_external.number().int().nonnegative().optional(),
|
|
4232
|
+
served: exports_external.enum(["live", "cache"]).optional(),
|
|
4233
|
+
reason: exports_external.string().optional()
|
|
4234
|
+
});
|
|
4216
4235
|
GoogleAccountStateSchema = exports_external.object({
|
|
4217
4236
|
account: exports_external.string(),
|
|
4218
4237
|
expiresAt: exports_external.number(),
|
|
@@ -4383,6 +4402,15 @@ class AuthBrokerClient {
|
|
|
4383
4402
|
}
|
|
4384
4403
|
return parsed;
|
|
4385
4404
|
}
|
|
4405
|
+
async getExternalSpend(forceLive) {
|
|
4406
|
+
const data = await this.send({
|
|
4407
|
+
v: PROTOCOL_VERSION,
|
|
4408
|
+
id: randomUUID(),
|
|
4409
|
+
op: "get-external-spend",
|
|
4410
|
+
...forceLive ? { forceLive: true } : {}
|
|
4411
|
+
});
|
|
4412
|
+
return data;
|
|
4413
|
+
}
|
|
4386
4414
|
async setActive(account) {
|
|
4387
4415
|
const data = await this.send({
|
|
4388
4416
|
v: PROTOCOL_VERSION,
|