@pellux/goodvibes-contracts 1.7.1 → 1.8.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.
@@ -5,7 +5,7 @@ emitted from the operator contract by scripts/generate-homeassistant-client.ts.
5
5
  Covers only the REST subset HA consumes; the webhook, conversation stream,
6
6
  and surface health probe are not operator methods and stay hand-written.
7
7
 
8
- Contract product version: 1.7.1
8
+ Contract product version: 1.8.0
9
9
  Consumed operator methods: 33
10
10
  """
11
11
  from __future__ import annotations
@@ -13,7 +13,7 @@ from __future__ import annotations
13
13
  from typing import Any, Literal, Mapping, NamedTuple, NotRequired, TypedDict
14
14
 
15
15
  #: Daemon contract version these types were generated against (the version pin).
16
- CONTRACT_VERSION: str = "1.7.1"
16
+ CONTRACT_VERSION: str = "1.8.0"
17
17
 
18
18
 
19
19
  class OperatorRoute(NamedTuple):
@@ -133,11 +133,13 @@ class ChannelsToolsSurfaceListOutput(TypedDict, total=True):
133
133
  tools: list[Mapping[str, Any]]
134
134
 
135
135
  # control.status
136
- ControlStatusInput = Mapping[str, Any]
136
+ class ControlStatusInput(TypedDict, total=True):
137
+ receipts: NotRequired[Literal["consume"]]
137
138
 
138
139
  class ControlStatusOutput(TypedDict, total=True):
139
140
  status: str
140
141
  version: str
142
+ receipts: NotRequired[list[Mapping[str, Any]]]
141
143
 
142
144
  # homeassistant.homeGraph.askHomeGraph
143
145
  class HomeassistantHomeGraphAskHomeGraphInput(TypedDict, total=True):
@@ -48,6 +48,10 @@ export interface OperatorMethodInputMap {
48
48
  approvalId: string;
49
49
  note?: string;
50
50
  remember?: boolean;
51
+ selectedHunks?: readonly number[];
52
+ rememberTier?: "command-class" | "exact" | "path" | "session" | "tool";
53
+ reason?: string;
54
+ modifiedArgs?: {};
51
55
  };
52
56
  "approvals.cancel": {
53
57
  approvalId: string;
@@ -61,6 +65,8 @@ export interface OperatorMethodInputMap {
61
65
  approvalId: string;
62
66
  note?: string;
63
67
  remember?: boolean;
68
+ rememberTier?: "command-class" | "exact" | "path" | "session" | "tool";
69
+ reason?: string;
64
70
  };
65
71
  "approvals.list": {};
66
72
  "artifacts.content.get": {
@@ -690,7 +696,9 @@ export interface OperatorMethodInputMap {
690
696
  source?: string;
691
697
  };
692
698
  "control.snapshot": {};
693
- "control.status": {};
699
+ "control.status": {
700
+ receipts?: "consume";
701
+ };
694
702
  "control.web": {};
695
703
  "deliveries.get": {
696
704
  deliveryId: string;
@@ -1246,6 +1254,10 @@ export interface OperatorMethodInputMap {
1246
1254
  } & {
1247
1255
  readonly [key: string]: unknown;
1248
1256
  });
1257
+ "permissions.rules.list": {};
1258
+ "permissions.rules.delete": {
1259
+ ruleId: string;
1260
+ };
1249
1261
  "principals.create": {
1250
1262
  name: string;
1251
1263
  kind: "bot" | "service" | "token" | "user";
@@ -2048,6 +2060,8 @@ export interface OperatorMethodInputMap {
2048
2060
  "workspaces.registrations.add": {
2049
2061
  root: string;
2050
2062
  label?: string;
2063
+ origin?: string;
2064
+ checkpointEligible?: boolean;
2051
2065
  };
2052
2066
  "workspaces.registrations.remove": {
2053
2067
  root: string;
@@ -2110,11 +2124,7 @@ export interface OperatorMethodOutputMap {
2110
2124
  request: {
2111
2125
  callId: string;
2112
2126
  tool: string;
2113
- args: ({} & {
2114
- readonly [key: string]: ({} & {
2115
- readonly [key: string]: JsonValue;
2116
- }) | boolean | null | number | readonly JsonValue[] | string;
2117
- });
2127
+ args: {};
2118
2128
  category: "delegate" | "execute" | "read" | "write";
2119
2129
  analysis: {
2120
2130
  classification: string;
@@ -2129,6 +2139,23 @@ export interface OperatorMethodOutputMap {
2129
2139
  host?: string;
2130
2140
  };
2131
2141
  workingDirectory?: string;
2142
+ attribution?: {
2143
+ kind: "background-agent";
2144
+ agentId: string;
2145
+ template?: string;
2146
+ } | {
2147
+ kind: "mcp-server";
2148
+ serverName: string;
2149
+ } | {
2150
+ kind: "sandbox-escalation";
2151
+ sandbox: string;
2152
+ escalations: readonly string[];
2153
+ };
2154
+ rememberOptions?: readonly ({
2155
+ tier: "command-class" | "exact" | "path" | "session" | "tool";
2156
+ label: string;
2157
+ detail: string;
2158
+ })[];
2132
2159
  };
2133
2160
  createdAt: number;
2134
2161
  updatedAt: number;
@@ -2139,7 +2166,12 @@ export interface OperatorMethodOutputMap {
2139
2166
  decision?: {
2140
2167
  approved: boolean;
2141
2168
  remember?: boolean;
2169
+ rememberTier?: "command-class" | "exact" | "path" | "session" | "tool";
2170
+ reason?: string;
2171
+ modifiedArgs?: {};
2142
2172
  };
2173
+ fixSessionId?: string;
2174
+ fixSessionError?: string;
2143
2175
  metadata: ({} & {
2144
2176
  readonly [key: string]: ({} & {
2145
2177
  readonly [key: string]: JsonValue;
@@ -2154,6 +2186,12 @@ export interface OperatorMethodOutputMap {
2154
2186
  note?: string;
2155
2187
  })[];
2156
2188
  };
2189
+ recorded?: {
2190
+ approved: boolean;
2191
+ rememberTier: null | "command-class" | "exact" | "path" | "session" | "tool";
2192
+ reasonStored: boolean;
2193
+ modifiedArgsDelivered: boolean;
2194
+ };
2157
2195
  };
2158
2196
  "approvals.cancel": {
2159
2197
  approval: {
@@ -2165,11 +2203,7 @@ export interface OperatorMethodOutputMap {
2165
2203
  request: {
2166
2204
  callId: string;
2167
2205
  tool: string;
2168
- args: ({} & {
2169
- readonly [key: string]: ({} & {
2170
- readonly [key: string]: JsonValue;
2171
- }) | boolean | null | number | readonly JsonValue[] | string;
2172
- });
2206
+ args: {};
2173
2207
  category: "delegate" | "execute" | "read" | "write";
2174
2208
  analysis: {
2175
2209
  classification: string;
@@ -2184,6 +2218,23 @@ export interface OperatorMethodOutputMap {
2184
2218
  host?: string;
2185
2219
  };
2186
2220
  workingDirectory?: string;
2221
+ attribution?: {
2222
+ kind: "background-agent";
2223
+ agentId: string;
2224
+ template?: string;
2225
+ } | {
2226
+ kind: "mcp-server";
2227
+ serverName: string;
2228
+ } | {
2229
+ kind: "sandbox-escalation";
2230
+ sandbox: string;
2231
+ escalations: readonly string[];
2232
+ };
2233
+ rememberOptions?: readonly ({
2234
+ tier: "command-class" | "exact" | "path" | "session" | "tool";
2235
+ label: string;
2236
+ detail: string;
2237
+ })[];
2187
2238
  };
2188
2239
  createdAt: number;
2189
2240
  updatedAt: number;
@@ -2194,7 +2245,12 @@ export interface OperatorMethodOutputMap {
2194
2245
  decision?: {
2195
2246
  approved: boolean;
2196
2247
  remember?: boolean;
2248
+ rememberTier?: "command-class" | "exact" | "path" | "session" | "tool";
2249
+ reason?: string;
2250
+ modifiedArgs?: {};
2197
2251
  };
2252
+ fixSessionId?: string;
2253
+ fixSessionError?: string;
2198
2254
  metadata: ({} & {
2199
2255
  readonly [key: string]: ({} & {
2200
2256
  readonly [key: string]: JsonValue;
@@ -2209,6 +2265,12 @@ export interface OperatorMethodOutputMap {
2209
2265
  note?: string;
2210
2266
  })[];
2211
2267
  };
2268
+ recorded?: {
2269
+ approved: boolean;
2270
+ rememberTier: null | "command-class" | "exact" | "path" | "session" | "tool";
2271
+ reasonStored: boolean;
2272
+ modifiedArgsDelivered: boolean;
2273
+ };
2212
2274
  };
2213
2275
  "approvals.claim": {
2214
2276
  approval: {
@@ -2220,11 +2282,7 @@ export interface OperatorMethodOutputMap {
2220
2282
  request: {
2221
2283
  callId: string;
2222
2284
  tool: string;
2223
- args: ({} & {
2224
- readonly [key: string]: ({} & {
2225
- readonly [key: string]: JsonValue;
2226
- }) | boolean | null | number | readonly JsonValue[] | string;
2227
- });
2285
+ args: {};
2228
2286
  category: "delegate" | "execute" | "read" | "write";
2229
2287
  analysis: {
2230
2288
  classification: string;
@@ -2239,6 +2297,23 @@ export interface OperatorMethodOutputMap {
2239
2297
  host?: string;
2240
2298
  };
2241
2299
  workingDirectory?: string;
2300
+ attribution?: {
2301
+ kind: "background-agent";
2302
+ agentId: string;
2303
+ template?: string;
2304
+ } | {
2305
+ kind: "mcp-server";
2306
+ serverName: string;
2307
+ } | {
2308
+ kind: "sandbox-escalation";
2309
+ sandbox: string;
2310
+ escalations: readonly string[];
2311
+ };
2312
+ rememberOptions?: readonly ({
2313
+ tier: "command-class" | "exact" | "path" | "session" | "tool";
2314
+ label: string;
2315
+ detail: string;
2316
+ })[];
2242
2317
  };
2243
2318
  createdAt: number;
2244
2319
  updatedAt: number;
@@ -2249,7 +2324,12 @@ export interface OperatorMethodOutputMap {
2249
2324
  decision?: {
2250
2325
  approved: boolean;
2251
2326
  remember?: boolean;
2327
+ rememberTier?: "command-class" | "exact" | "path" | "session" | "tool";
2328
+ reason?: string;
2329
+ modifiedArgs?: {};
2252
2330
  };
2331
+ fixSessionId?: string;
2332
+ fixSessionError?: string;
2253
2333
  metadata: ({} & {
2254
2334
  readonly [key: string]: ({} & {
2255
2335
  readonly [key: string]: JsonValue;
@@ -2264,6 +2344,12 @@ export interface OperatorMethodOutputMap {
2264
2344
  note?: string;
2265
2345
  })[];
2266
2346
  };
2347
+ recorded?: {
2348
+ approved: boolean;
2349
+ rememberTier: null | "command-class" | "exact" | "path" | "session" | "tool";
2350
+ reasonStored: boolean;
2351
+ modifiedArgsDelivered: boolean;
2352
+ };
2267
2353
  };
2268
2354
  "approvals.deny": {
2269
2355
  approval: {
@@ -2275,11 +2361,7 @@ export interface OperatorMethodOutputMap {
2275
2361
  request: {
2276
2362
  callId: string;
2277
2363
  tool: string;
2278
- args: ({} & {
2279
- readonly [key: string]: ({} & {
2280
- readonly [key: string]: JsonValue;
2281
- }) | boolean | null | number | readonly JsonValue[] | string;
2282
- });
2364
+ args: {};
2283
2365
  category: "delegate" | "execute" | "read" | "write";
2284
2366
  analysis: {
2285
2367
  classification: string;
@@ -2294,6 +2376,23 @@ export interface OperatorMethodOutputMap {
2294
2376
  host?: string;
2295
2377
  };
2296
2378
  workingDirectory?: string;
2379
+ attribution?: {
2380
+ kind: "background-agent";
2381
+ agentId: string;
2382
+ template?: string;
2383
+ } | {
2384
+ kind: "mcp-server";
2385
+ serverName: string;
2386
+ } | {
2387
+ kind: "sandbox-escalation";
2388
+ sandbox: string;
2389
+ escalations: readonly string[];
2390
+ };
2391
+ rememberOptions?: readonly ({
2392
+ tier: "command-class" | "exact" | "path" | "session" | "tool";
2393
+ label: string;
2394
+ detail: string;
2395
+ })[];
2297
2396
  };
2298
2397
  createdAt: number;
2299
2398
  updatedAt: number;
@@ -2304,7 +2403,12 @@ export interface OperatorMethodOutputMap {
2304
2403
  decision?: {
2305
2404
  approved: boolean;
2306
2405
  remember?: boolean;
2406
+ rememberTier?: "command-class" | "exact" | "path" | "session" | "tool";
2407
+ reason?: string;
2408
+ modifiedArgs?: {};
2307
2409
  };
2410
+ fixSessionId?: string;
2411
+ fixSessionError?: string;
2308
2412
  metadata: ({} & {
2309
2413
  readonly [key: string]: ({} & {
2310
2414
  readonly [key: string]: JsonValue;
@@ -2319,6 +2423,12 @@ export interface OperatorMethodOutputMap {
2319
2423
  note?: string;
2320
2424
  })[];
2321
2425
  };
2426
+ recorded?: {
2427
+ approved: boolean;
2428
+ rememberTier: null | "command-class" | "exact" | "path" | "session" | "tool";
2429
+ reasonStored: boolean;
2430
+ modifiedArgsDelivered: boolean;
2431
+ };
2322
2432
  };
2323
2433
  "approvals.list": ({
2324
2434
  awaitingDecision: boolean;
@@ -4989,6 +5099,9 @@ export interface OperatorMethodOutputMap {
4989
5099
  notificationId?: string;
4990
5100
  fixSessionTriggered: boolean;
4991
5101
  fixSessionId?: string;
5102
+ fixSessionError?: string;
5103
+ fixSessionOffered?: boolean;
5104
+ retired?: boolean;
4992
5105
  };
4993
5106
  "companion.chat.events.stream": {};
4994
5107
  "companion.chat.messages.create": {
@@ -5138,6 +5251,8 @@ export interface OperatorMethodOutputMap {
5138
5251
  dimension: "agent" | "hook" | "mcp" | "model" | "provider" | "session" | "tool";
5139
5252
  totalCostUsd: null | number;
5140
5253
  costState: "estimated" | "priced" | "unpriced";
5254
+ costSource: null | "catalog" | "mixed" | "provider" | "user";
5255
+ pricingAsOf: null | string;
5141
5256
  pricedRecordCount: number;
5142
5257
  unpricedRecordCount: number;
5143
5258
  tokens: {
@@ -5150,6 +5265,8 @@ export interface OperatorMethodOutputMap {
5150
5265
  key: string;
5151
5266
  costUsd: null | number;
5152
5267
  costState: "estimated" | "priced" | "unpriced";
5268
+ costSource: null | "catalog" | "mixed" | "provider" | "user";
5269
+ pricingAsOf: null | string;
5153
5270
  pricedRecordCount: number;
5154
5271
  unpricedRecordCount: number;
5155
5272
  tokens: {
@@ -5531,6 +5648,11 @@ export interface OperatorMethodOutputMap {
5531
5648
  "control.status": {
5532
5649
  status: string;
5533
5650
  version: string;
5651
+ receipts?: readonly ({
5652
+ id: string;
5653
+ text: string;
5654
+ at: number;
5655
+ })[];
5534
5656
  };
5535
5657
  "control.web": {
5536
5658
  html: string;
@@ -5652,6 +5774,8 @@ export interface OperatorMethodOutputMap {
5652
5774
  provider?: string;
5653
5775
  costUsd?: null | number;
5654
5776
  costState: "estimated" | "priced" | "unpriced";
5777
+ costSource?: "catalog" | "mixed" | "provider" | "user";
5778
+ pricingAsOf?: string;
5655
5779
  currentActivity?: {
5656
5780
  kind: "output-line" | "phase" | "tool";
5657
5781
  text: string;
@@ -5707,6 +5831,8 @@ export interface OperatorMethodOutputMap {
5707
5831
  toolCallCount: number;
5708
5832
  costUsd: null | number;
5709
5833
  costState: "estimated" | "priced" | "unpriced";
5834
+ costSource?: "catalog" | "mixed" | "provider" | "user";
5835
+ pricingAsOf?: string;
5710
5836
  };
5711
5837
  failureReason: null | string;
5712
5838
  diff: null | {
@@ -5755,6 +5881,8 @@ export interface OperatorMethodOutputMap {
5755
5881
  provider?: string;
5756
5882
  costUsd?: null | number;
5757
5883
  costState: "estimated" | "priced" | "unpriced";
5884
+ costSource?: "catalog" | "mixed" | "provider" | "user";
5885
+ pricingAsOf?: string;
5758
5886
  currentActivity?: {
5759
5887
  kind: "output-line" | "phase" | "tool";
5760
5888
  text: string;
@@ -5809,6 +5937,8 @@ export interface OperatorMethodOutputMap {
5809
5937
  provider?: string;
5810
5938
  costUsd?: null | number;
5811
5939
  costState: "estimated" | "priced" | "unpriced";
5940
+ costSource?: "catalog" | "mixed" | "provider" | "user";
5941
+ pricingAsOf?: string;
5812
5942
  currentActivity?: {
5813
5943
  kind: "output-line" | "phase" | "tool";
5814
5944
  text: string;
@@ -7661,6 +7791,19 @@ export interface OperatorMethodOutputMap {
7661
7791
  id: string;
7662
7792
  pane: "bottom" | "top";
7663
7793
  };
7794
+ "permissions.rules.list": {
7795
+ rules: readonly ({
7796
+ id: string;
7797
+ effect: "allow" | "deny";
7798
+ tier: "command-class" | "exact" | "path" | "tool";
7799
+ tool: string;
7800
+ description?: string;
7801
+ createdAt: number;
7802
+ })[];
7803
+ };
7804
+ "permissions.rules.delete": {
7805
+ deleted: boolean;
7806
+ };
7664
7807
  "principals.create": {
7665
7808
  principal: {
7666
7809
  id: string;
@@ -7838,6 +7981,8 @@ export interface OperatorMethodOutputMap {
7838
7981
  inputPerMillionTokens: number;
7839
7982
  outputPerMillionTokens: number;
7840
7983
  currency: "USD";
7984
+ source: "catalog" | "provider" | "user";
7985
+ asOf?: string;
7841
7986
  };
7842
7987
  } & {
7843
7988
  readonly [key: string]: unknown;
@@ -7926,6 +8071,8 @@ export interface OperatorMethodOutputMap {
7926
8071
  inputPerMillionTokens: number;
7927
8072
  outputPerMillionTokens: number;
7928
8073
  currency: "USD";
8074
+ source: "catalog" | "provider" | "user";
8075
+ asOf?: string;
7929
8076
  };
7930
8077
  } & {
7931
8078
  readonly [key: string]: unknown;
@@ -7936,7 +8083,8 @@ export interface OperatorMethodOutputMap {
7936
8083
  providerId: string;
7937
8084
  active: boolean;
7938
8085
  currentModelRegistryKey?: string;
7939
- pricingSource: "catalog" | "none" | "provider";
8086
+ pricingSource: "catalog" | "mixed" | "none" | "provider" | "user";
8087
+ pricingAsOf?: string;
7940
8088
  models: readonly (({
7941
8089
  id: string;
7942
8090
  registryKey: string;
@@ -7948,6 +8096,8 @@ export interface OperatorMethodOutputMap {
7948
8096
  inputPerMillionTokens: number;
7949
8097
  outputPerMillionTokens: number;
7950
8098
  currency: "USD";
8099
+ source: "catalog" | "provider" | "user";
8100
+ asOf?: string;
7951
8101
  };
7952
8102
  } & {
7953
8103
  readonly [key: string]: unknown;
@@ -11785,6 +11935,8 @@ export interface OperatorMethodOutputMap {
11785
11935
  root: string;
11786
11936
  registeredAt: string;
11787
11937
  label?: string;
11938
+ origin?: string;
11939
+ checkpointEligible?: boolean;
11788
11940
  })[];
11789
11941
  declines: readonly ({
11790
11942
  root: string;
@@ -11796,6 +11948,8 @@ export interface OperatorMethodOutputMap {
11796
11948
  root: string;
11797
11949
  registeredAt: string;
11798
11950
  label?: string;
11951
+ origin?: string;
11952
+ checkpointEligible?: boolean;
11799
11953
  };
11800
11954
  alreadyRegistered: boolean;
11801
11955
  };