@engineer-ai/sdk 1.6.2 → 1.7.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.
@@ -1,5 +1,5 @@
1
1
  import { type Client, type Options as Options2, type TDataShape } from "./client/index.js";
2
- import type { AgentPartInput, AppAgentsResponses, AppLogErrors, AppLogResponses, AppRulesResponses, AppSkillsResponses, Auth as Auth3, AuthRemoveErrors, AuthRemoveResponses, AuthSetErrors, AuthSetResponses, CommandListResponses, CommandValidateErrors, CommandValidateResponses, Config as Config3, ConfigGetResponses, ConfigProvidersResponses, ConfigUpdateErrors, ConfigUpdateResponses, EventSubscribeResponses, EventTuiCommandExecute, EventTuiPromptAppend, EventTuiPromptModeReset, EventTuiPromptReplace, EventTuiSessionSelect, EventTuiToastShow, ExperimentalMavenStatusResponses, ExperimentalResourceListResponses, FileListResponses, FilePartInput, FilePartSource, FileReadResponses, FileStatusResponses, FindFilesResponses, FindSymbolsResponses, FindTextResponses, FormatterStatusResponses, GitCheckResponses, GlobalConfigGetResponses, GlobalConfigUpdateErrors, GlobalConfigUpdateResponses, GlobalDisposeResponses, GlobalEventResponses, GlobalHealthResponses, InstanceDisposeResponses, LspStatusResponses, McpAddErrors, McpAddResponses, McpAuthAuthenticateErrors, McpAuthAuthenticateResponses, McpAuthCallbackErrors, McpAuthCallbackResponses, McpAuthRemoveErrors, McpAuthRemoveResponses, McpAuthStartErrors, McpAuthStartResponses, McpConnectResponses, McpDisconnectResponses, McpLocalConfig, McpRemoteConfig, McpStatusResponses, Part as Part2, PartDeleteErrors, PartDeleteResponses, PartUpdateErrors, PartUpdateResponses, PathGetResponses, PermissionListResponses, PermissionReplyErrors, PermissionReplyResponses, PermissionRespondErrors, PermissionRespondResponses, PermissionRuleset, ProjectCurrentResponses, ProjectListResponses, ProjectUpdateErrors, ProjectUpdateResponses, ProviderAuthResponses, ProviderListResponses, ProviderOauthAuthorizeErrors, ProviderOauthAuthorizeResponses, ProviderOauthCallbackErrors, ProviderOauthCallbackResponses, PtyConnectErrors, PtyConnectResponses, PtyCreateErrors, PtyCreateResponses, PtyGetErrors, PtyGetResponses, PtyListResponses, PtyRemoveErrors, PtyRemoveResponses, PtyUpdateErrors, PtyUpdateResponses, QuestionAnswer, QuestionListResponses, QuestionRejectErrors, QuestionRejectResponses, QuestionReplyErrors, QuestionReplyResponses, RulePartInput, SessionAbortErrors, SessionAbortResponses, SessionChildrenErrors, SessionChildrenResponses, SessionCommandErrors, SessionCommandResponses, SessionCreateErrors, SessionCreateResponses, SessionDeleteErrors, SessionDeleteResponses, SessionDiffResponses, SessionForkResponses, SessionGetErrors, SessionGetResponses, SessionInitErrors, SessionInitResponses, SessionListResponses, SessionMessageErrors, SessionMessageResponses, SessionMessagesErrors, SessionMessagesResponses, SessionOptimizeErrors, SessionOptimizeResponses, SessionPromptAsyncErrors, SessionPromptAsyncResponses, SessionPromptErrors, SessionPromptResponses, SessionRevertErrors, SessionRevertResponses, SessionShareErrors, SessionShareResponses, SessionShellErrors, SessionShellResponses, SessionSpecErrors, SessionSpecResponses, SessionStatusErrors, SessionStatusResponses, SessionSummarizeErrors, SessionSummarizeResponses, SessionTodoErrors, SessionTodoResponses, SessionUnrevertErrors, SessionUnrevertResponses, SessionUnshareErrors, SessionUnshareResponses, SessionUpdateErrors, SessionUpdateResponses, SubtaskPartInput, TeamConfigResponses, TeamFireResponses, TeamHireResponses, TeamMessagesResponses, TeamRolesResponses, TeamStatusResponses, TextPartInput, ToolIdsErrors, ToolIdsResponses, ToolListErrors, ToolListResponses, TuiAppendPromptErrors, TuiAppendPromptResponses, TuiClearPromptResponses, TuiControlNextResponses, TuiControlResponseResponses, TuiExecuteCommandErrors, TuiExecuteCommandResponses, TuiOpenHelpResponses, TuiOpenModelsResponses, TuiOpenSessionsResponses, TuiOpenThemesResponses, TuiPublishErrors, TuiPublishResponses, TuiReplacePromptErrors, TuiReplacePromptResponses, TuiResetPromptModeErrors, TuiResetPromptModeResponses, TuiSelectSessionErrors, TuiSelectSessionResponses, TuiShowToastResponses, TuiSubmitPromptResponses, VcsGetResponses, WorktreeCreateErrors, WorktreeCreateInput, WorktreeCreateResponses, WorktreeListMetaResponses, WorktreeListResponses, WorktreeRemoveErrors, WorktreeRemoveInput, WorktreeRemoveResponses, WorktreeResetErrors, WorktreeResetInput, WorktreeResetResponses, WorktreeSwitchErrors, WorktreeSwitchInput, WorktreeSwitchResponses } from "./types.gen.js";
2
+ import type { AgentPartInput, AppAgentsResponses, AppLogErrors, AppLogResponses, AppRulesResponses, AppSkillsResponses, Auth as Auth3, AuthRemoveErrors, AuthRemoveResponses, AuthSetErrors, AuthSetResponses, CommandListResponses, CommandValidateErrors, CommandValidateResponses, Config as Config3, ConfigGetResponses, ConfigProvidersResponses, ConfigUpdateErrors, ConfigUpdateResponses, CronCreateErrors, CronCreateResponses, CronDeleteErrors, CronDeleteResponses, CronGetErrors, CronGetResponses, CronListResponses, CronSessionsErrors, CronSessionsResponses, CronUpdateErrors, CronUpdateResponses, EventSubscribeResponses, EventTuiCommandExecute, EventTuiPromptAppend, EventTuiPromptModeReset, EventTuiPromptReplace, EventTuiSessionSelect, EventTuiToastShow, ExperimentalMavenStatusResponses, ExperimentalResourceListResponses, ExpertListResponses, FileListResponses, FilePartInput, FilePartSource, FileReadResponses, FileStatusResponses, FindFilesResponses, FindSymbolsResponses, FindTextResponses, FormatterStatusResponses, GitCheckResponses, GlobalConfigGetResponses, GlobalConfigUpdateErrors, GlobalConfigUpdateResponses, GlobalDisposeResponses, GlobalEventResponses, GlobalHealthResponses, InstanceDisposeResponses, LspStatusResponses, McpAddErrors, McpAddResponses, McpAuthAuthenticateErrors, McpAuthAuthenticateResponses, McpAuthCallbackErrors, McpAuthCallbackResponses, McpAuthRemoveErrors, McpAuthRemoveResponses, McpAuthStartErrors, McpAuthStartResponses, McpConnectResponses, McpDisconnectResponses, McpLocalConfig, McpRemoteConfig, McpStatusResponses, Part as Part2, PartDeleteErrors, PartDeleteResponses, PartUpdateErrors, PartUpdateResponses, PathGetResponses, PermissionListResponses, PermissionReplyErrors, PermissionReplyResponses, PermissionRespondErrors, PermissionRespondResponses, PermissionRuleset, ProjectCurrentResponses, ProjectListResponses, ProjectUpdateErrors, ProjectUpdateResponses, ProviderAuthResponses, ProviderListResponses, ProviderOauthAuthorizeErrors, ProviderOauthAuthorizeResponses, ProviderOauthCallbackErrors, ProviderOauthCallbackResponses, PtyConnectErrors, PtyConnectResponses, PtyCreateErrors, PtyCreateResponses, PtyGetErrors, PtyGetResponses, PtyListResponses, PtyRemoveErrors, PtyRemoveResponses, PtyUpdateErrors, PtyUpdateResponses, QuestionAnswer, QuestionListResponses, QuestionRejectErrors, QuestionRejectResponses, QuestionReplyErrors, QuestionReplyResponses, RulePartInput, SessionAbortErrors, SessionAbortResponses, SessionChildrenErrors, SessionChildrenResponses, SessionCommandErrors, SessionCommandResponses, SessionCreateErrors, SessionCreateResponses, SessionDeleteErrors, SessionDeleteResponses, SessionDiffResponses, SessionForkResponses, SessionGetErrors, SessionGetResponses, SessionInitErrors, SessionInitResponses, SessionListResponses, SessionMessageErrors, SessionMessageResponses, SessionMessagesErrors, SessionMessagesResponses, SessionOptimizeErrors, SessionOptimizeResponses, SessionPromptAsyncErrors, SessionPromptAsyncResponses, SessionPromptErrors, SessionPromptResponses, SessionRevertErrors, SessionRevertResponses, SessionShareErrors, SessionShareResponses, SessionShellErrors, SessionShellResponses, SessionSpecErrors, SessionSpecResponses, SessionStatusErrors, SessionStatusResponses, SessionSummarizeErrors, SessionSummarizeResponses, SessionTodoErrors, SessionTodoResponses, SessionUnrevertErrors, SessionUnrevertResponses, SessionUnshareErrors, SessionUnshareResponses, SessionUpdateErrors, SessionUpdateResponses, SubtaskPartInput, TeamConfigResponses, TeamFireResponses, TeamHireResponses, TeamMessagesResponses, TeamRolesResponses, TeamStatusResponses, TextPartInput, ToolIdsErrors, ToolIdsResponses, ToolListErrors, ToolListResponses, TuiAppendPromptErrors, TuiAppendPromptResponses, TuiClearPromptResponses, TuiControlNextResponses, TuiControlResponseResponses, TuiExecuteCommandErrors, TuiExecuteCommandResponses, TuiOpenHelpResponses, TuiOpenModelsResponses, TuiOpenSessionsResponses, TuiOpenThemesResponses, TuiPublishErrors, TuiPublishResponses, TuiReplacePromptErrors, TuiReplacePromptResponses, TuiResetPromptModeErrors, TuiResetPromptModeResponses, TuiSelectSessionErrors, TuiSelectSessionResponses, TuiShowToastResponses, TuiSubmitPromptResponses, VcsGetResponses, WorktreeCreateErrors, WorktreeCreateInput, WorktreeCreateResponses, WorktreeListMetaResponses, WorktreeListResponses, WorktreeRemoveErrors, WorktreeRemoveInput, WorktreeRemoveResponses, WorktreeResetErrors, WorktreeResetInput, WorktreeResetResponses, WorktreeSwitchErrors, WorktreeSwitchInput, WorktreeSwitchResponses } from "./types.gen.js";
3
3
  export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {
4
4
  /**
5
5
  * You can provide a client instance returned by `createClient()` instead of
@@ -326,6 +326,8 @@ export declare class Session extends HeyApiClient {
326
326
  start?: number;
327
327
  search?: string;
328
328
  limit?: number;
329
+ cronName?: string;
330
+ includeCron?: boolean;
329
331
  }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<SessionListResponses, unknown, ThrowOnError, "fields">;
330
332
  /**
331
333
  * Create session
@@ -336,7 +338,8 @@ export declare class Session extends HeyApiClient {
336
338
  directory?: string;
337
339
  parentID?: string;
338
340
  title?: string;
339
- type?: "session_memory_extraction";
341
+ type?: "session_memory_extraction" | "cron";
342
+ cronName?: string;
340
343
  mode?: "agent" | "plan" | "goal";
341
344
  permission?: PermissionRuleset;
342
345
  }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<SessionCreateResponses, SessionCreateErrors, ThrowOnError, "fields">;
@@ -1074,6 +1077,86 @@ export declare class Team extends HeyApiClient {
1074
1077
  unread?: boolean;
1075
1078
  }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<TeamMessagesResponses, unknown, ThrowOnError, "fields">;
1076
1079
  }
1080
+ export declare class Cron extends HeyApiClient {
1081
+ /**
1082
+ * List cron configs
1083
+ *
1084
+ * Get a list of all cron configurations.
1085
+ */
1086
+ list<ThrowOnError extends boolean = false>(parameters?: {
1087
+ directory?: string;
1088
+ }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<CronListResponses, unknown, ThrowOnError, "fields">;
1089
+ /**
1090
+ * Create cron config
1091
+ *
1092
+ * Create a new cron configuration with a CRON.md file.
1093
+ */
1094
+ create<ThrowOnError extends boolean = false>(parameters?: {
1095
+ directory?: string;
1096
+ name?: string;
1097
+ description?: string;
1098
+ schedule?: string;
1099
+ type?: "agent" | "command";
1100
+ enabled?: boolean;
1101
+ model?: string;
1102
+ steps?: number;
1103
+ command?: string;
1104
+ body?: string;
1105
+ }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<CronCreateResponses, CronCreateErrors, ThrowOnError, "fields">;
1106
+ /**
1107
+ * Delete cron config
1108
+ *
1109
+ * Delete a cron configuration and stop its scheduler.
1110
+ */
1111
+ delete<ThrowOnError extends boolean = false>(parameters: {
1112
+ name: string;
1113
+ directory?: string;
1114
+ }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<CronDeleteResponses, CronDeleteErrors, ThrowOnError, "fields">;
1115
+ /**
1116
+ * Get cron config
1117
+ *
1118
+ * Retrieve a specific cron configuration by name.
1119
+ */
1120
+ get<ThrowOnError extends boolean = false>(parameters: {
1121
+ name: string;
1122
+ directory?: string;
1123
+ }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<CronGetResponses, CronGetErrors, ThrowOnError, "fields">;
1124
+ /**
1125
+ * Update cron config
1126
+ *
1127
+ * Update properties of an existing cron configuration.
1128
+ */
1129
+ update<ThrowOnError extends boolean = false>(parameters: {
1130
+ name: string;
1131
+ directory?: string;
1132
+ description?: string;
1133
+ schedule?: string;
1134
+ type?: "agent" | "command";
1135
+ enabled?: boolean;
1136
+ model?: string;
1137
+ steps?: number;
1138
+ command?: string;
1139
+ }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<CronUpdateResponses, CronUpdateErrors, ThrowOnError, "fields">;
1140
+ /**
1141
+ * Get cron sessions
1142
+ *
1143
+ * Retrieve sessions created by a specific cron configuration, limited to 20 most recent.
1144
+ */
1145
+ sessions<ThrowOnError extends boolean = false>(parameters: {
1146
+ name: string;
1147
+ directory?: string;
1148
+ }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<CronSessionsResponses, CronSessionsErrors, ThrowOnError, "fields">;
1149
+ }
1150
+ export declare class Expert extends HeyApiClient {
1151
+ /**
1152
+ * List experts
1153
+ *
1154
+ * Get a list of all available experts (digital employees).
1155
+ */
1156
+ list<ThrowOnError extends boolean = false>(parameters?: {
1157
+ directory?: string;
1158
+ }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<ExpertListResponses, unknown, ThrowOnError, "fields">;
1159
+ }
1077
1160
  export declare class Instance extends HeyApiClient {
1078
1161
  /**
1079
1162
  * Dispose instance
@@ -1238,6 +1321,10 @@ export declare class EngineerClient extends HeyApiClient {
1238
1321
  get tui(): Tui;
1239
1322
  private _team?;
1240
1323
  get team(): Team;
1324
+ private _cron?;
1325
+ get cron(): Cron;
1326
+ private _expert?;
1327
+ get expert(): Expert;
1241
1328
  private _instance?;
1242
1329
  get instance(): Instance;
1243
1330
  private _path?;
@@ -590,6 +590,8 @@ export class Session extends HeyApiClient {
590
590
  { in: "query", key: "start" },
591
591
  { in: "query", key: "search" },
592
592
  { in: "query", key: "limit" },
593
+ { in: "query", key: "cronName" },
594
+ { in: "query", key: "includeCron" },
593
595
  ],
594
596
  },
595
597
  ]);
@@ -612,6 +614,7 @@ export class Session extends HeyApiClient {
612
614
  { in: "body", key: "parentID" },
613
615
  { in: "body", key: "title" },
614
616
  { in: "body", key: "type" },
617
+ { in: "body", key: "cronName" },
615
618
  { in: "body", key: "mode" },
616
619
  { in: "body", key: "permission" },
617
620
  ],
@@ -2162,6 +2165,161 @@ export class Team extends HeyApiClient {
2162
2165
  });
2163
2166
  }
2164
2167
  }
2168
+ export class Cron extends HeyApiClient {
2169
+ /**
2170
+ * List cron configs
2171
+ *
2172
+ * Get a list of all cron configurations.
2173
+ */
2174
+ list(parameters, options) {
2175
+ const params = buildClientParams([parameters], [{ args: [{ in: "query", key: "directory" }] }]);
2176
+ return (options?.client ?? this.client).get({
2177
+ url: "/cron",
2178
+ ...options,
2179
+ ...params,
2180
+ });
2181
+ }
2182
+ /**
2183
+ * Create cron config
2184
+ *
2185
+ * Create a new cron configuration with a CRON.md file.
2186
+ */
2187
+ create(parameters, options) {
2188
+ const params = buildClientParams([parameters], [
2189
+ {
2190
+ args: [
2191
+ { in: "query", key: "directory" },
2192
+ { in: "body", key: "name" },
2193
+ { in: "body", key: "description" },
2194
+ { in: "body", key: "schedule" },
2195
+ { in: "body", key: "type" },
2196
+ { in: "body", key: "enabled" },
2197
+ { in: "body", key: "model" },
2198
+ { in: "body", key: "steps" },
2199
+ { in: "body", key: "command" },
2200
+ { in: "body", key: "body" },
2201
+ ],
2202
+ },
2203
+ ]);
2204
+ return (options?.client ?? this.client).post({
2205
+ url: "/cron",
2206
+ ...options,
2207
+ ...params,
2208
+ headers: {
2209
+ "Content-Type": "application/json",
2210
+ ...options?.headers,
2211
+ ...params.headers,
2212
+ },
2213
+ });
2214
+ }
2215
+ /**
2216
+ * Delete cron config
2217
+ *
2218
+ * Delete a cron configuration and stop its scheduler.
2219
+ */
2220
+ delete(parameters, options) {
2221
+ const params = buildClientParams([parameters], [
2222
+ {
2223
+ args: [
2224
+ { in: "path", key: "name" },
2225
+ { in: "query", key: "directory" },
2226
+ ],
2227
+ },
2228
+ ]);
2229
+ return (options?.client ?? this.client).delete({
2230
+ url: "/cron/{name}",
2231
+ ...options,
2232
+ ...params,
2233
+ });
2234
+ }
2235
+ /**
2236
+ * Get cron config
2237
+ *
2238
+ * Retrieve a specific cron configuration by name.
2239
+ */
2240
+ get(parameters, options) {
2241
+ const params = buildClientParams([parameters], [
2242
+ {
2243
+ args: [
2244
+ { in: "path", key: "name" },
2245
+ { in: "query", key: "directory" },
2246
+ ],
2247
+ },
2248
+ ]);
2249
+ return (options?.client ?? this.client).get({
2250
+ url: "/cron/{name}",
2251
+ ...options,
2252
+ ...params,
2253
+ });
2254
+ }
2255
+ /**
2256
+ * Update cron config
2257
+ *
2258
+ * Update properties of an existing cron configuration.
2259
+ */
2260
+ update(parameters, options) {
2261
+ const params = buildClientParams([parameters], [
2262
+ {
2263
+ args: [
2264
+ { in: "path", key: "name" },
2265
+ { in: "query", key: "directory" },
2266
+ { in: "body", key: "description" },
2267
+ { in: "body", key: "schedule" },
2268
+ { in: "body", key: "type" },
2269
+ { in: "body", key: "enabled" },
2270
+ { in: "body", key: "model" },
2271
+ { in: "body", key: "steps" },
2272
+ { in: "body", key: "command" },
2273
+ ],
2274
+ },
2275
+ ]);
2276
+ return (options?.client ?? this.client).patch({
2277
+ url: "/cron/{name}",
2278
+ ...options,
2279
+ ...params,
2280
+ headers: {
2281
+ "Content-Type": "application/json",
2282
+ ...options?.headers,
2283
+ ...params.headers,
2284
+ },
2285
+ });
2286
+ }
2287
+ /**
2288
+ * Get cron sessions
2289
+ *
2290
+ * Retrieve sessions created by a specific cron configuration, limited to 20 most recent.
2291
+ */
2292
+ sessions(parameters, options) {
2293
+ const params = buildClientParams([parameters], [
2294
+ {
2295
+ args: [
2296
+ { in: "path", key: "name" },
2297
+ { in: "query", key: "directory" },
2298
+ ],
2299
+ },
2300
+ ]);
2301
+ return (options?.client ?? this.client).get({
2302
+ url: "/cron/{name}/sessions",
2303
+ ...options,
2304
+ ...params,
2305
+ });
2306
+ }
2307
+ }
2308
+ export class Expert extends HeyApiClient {
2309
+ /**
2310
+ * List experts
2311
+ *
2312
+ * Get a list of all available experts (digital employees).
2313
+ */
2314
+ list(parameters, options) {
2315
+ const params = buildClientParams([parameters], [{ args: [{ in: "query", key: "directory" }] }]);
2316
+ return (options?.client ?? this.client).get({
2317
+ url: "/expert",
2318
+ ...options,
2319
+ ...params,
2320
+ });
2321
+ }
2322
+ }
2165
2323
  export class Instance extends HeyApiClient {
2166
2324
  /**
2167
2325
  * Dispose instance
@@ -2444,6 +2602,14 @@ export class EngineerClient extends HeyApiClient {
2444
2602
  get team() {
2445
2603
  return (this._team ??= new Team({ client: this.client }));
2446
2604
  }
2605
+ _cron;
2606
+ get cron() {
2607
+ return (this._cron ??= new Cron({ client: this.client }));
2608
+ }
2609
+ _expert;
2610
+ get expert() {
2611
+ return (this._expert ??= new Expert({ client: this.client }));
2612
+ }
2447
2613
  _instance;
2448
2614
  get instance() {
2449
2615
  return (this._instance ??= new Instance({ client: this.client }));
@@ -496,6 +496,13 @@ export type EventPermissionReplied = {
496
496
  reply: "once" | "always" | "reject";
497
497
  };
498
498
  };
499
+ export type EventExpertCreated = {
500
+ type: "expert.created";
501
+ properties: {
502
+ name: string;
503
+ description: string;
504
+ };
505
+ };
499
506
  export type EventTuiPromptAppend = {
500
507
  type: "tui.prompt.append";
501
508
  properties: {
@@ -554,56 +561,13 @@ export type EventMcpBrowserOpenFailed = {
554
561
  url: string;
555
562
  };
556
563
  };
557
- export type EventWorktreeReady = {
558
- type: "worktree.ready";
559
- properties: {
560
- name: string;
561
- branch: string;
562
- };
563
- };
564
- export type EventWorktreeFailed = {
565
- type: "worktree.failed";
566
- properties: {
567
- message: string;
568
- };
569
- };
570
- export type EventCommandExecuted = {
571
- type: "command.executed";
572
- properties: {
573
- name: string;
574
- sessionID: string;
575
- arguments: string;
576
- messageID: string;
577
- };
578
- };
579
- export type EventSkillCreated = {
580
- type: "skill.created";
564
+ export type EventRuleCreated = {
565
+ type: "rule.created";
581
566
  properties: {
582
567
  name: string;
583
568
  description: string;
584
- };
585
- };
586
- export type SessionStatus = {
587
- type: "idle";
588
- } | {
589
- type: "retry";
590
- attempt: number;
591
- message: string;
592
- next: number;
593
- } | {
594
- type: "busy";
595
- };
596
- export type EventSessionStatus = {
597
- type: "session.status";
598
- properties: {
599
- sessionID: string;
600
- status: SessionStatus;
601
- };
602
- };
603
- export type EventSessionIdle = {
604
- type: "session.idle";
605
- properties: {
606
- sessionID: string;
569
+ alwaysApply: boolean;
570
+ globs: Array<string>;
607
571
  };
608
572
  };
609
573
  export type QuestionOption = {
@@ -670,30 +634,6 @@ export type EventQuestionRejected = {
670
634
  requestID: string;
671
635
  };
672
636
  };
673
- export type EventTaskNotification = {
674
- type: "task.notification";
675
- properties: {
676
- taskId: string;
677
- parentSessionId: string;
678
- status: "pending" | "running" | "completed" | "failed" | "cancelled";
679
- description: string;
680
- output?: string;
681
- error?: string;
682
- };
683
- };
684
- export type EventSessionMemoryExtracted = {
685
- type: "session.memory.extracted";
686
- properties: {
687
- sessionID: string;
688
- projectID: string;
689
- };
690
- };
691
- export type EventSessionCompacted = {
692
- type: "session.compacted";
693
- properties: {
694
- sessionID: string;
695
- };
696
- };
697
637
  export type EventFileWatcherUpdated = {
698
638
  type: "file.watcher.updated";
699
639
  properties: {
@@ -701,13 +641,15 @@ export type EventFileWatcherUpdated = {
701
641
  event: "add" | "change" | "unlink";
702
642
  };
703
643
  };
704
- export type EventRuleCreated = {
705
- type: "rule.created";
644
+ export type EventTaskNotification = {
645
+ type: "task.notification";
706
646
  properties: {
707
- name: string;
647
+ taskId: string;
648
+ parentSessionId: string;
649
+ status: "pending" | "running" | "completed" | "failed" | "cancelled";
708
650
  description: string;
709
- alwaysApply: boolean;
710
- globs: Array<string>;
651
+ output?: string;
652
+ error?: string;
711
653
  };
712
654
  };
713
655
  export type Todo = {
@@ -874,6 +816,29 @@ export type EventSpecUpdated = {
874
816
  };
875
817
  };
876
818
  };
819
+ export type SessionStatus = {
820
+ type: "idle";
821
+ } | {
822
+ type: "retry";
823
+ attempt: number;
824
+ message: string;
825
+ next: number;
826
+ } | {
827
+ type: "busy";
828
+ };
829
+ export type EventSessionStatus = {
830
+ type: "session.status";
831
+ properties: {
832
+ sessionID: string;
833
+ status: SessionStatus;
834
+ };
835
+ };
836
+ export type EventSessionIdle = {
837
+ type: "session.idle";
838
+ properties: {
839
+ sessionID: string;
840
+ };
841
+ };
877
842
  export type EventMavenIndexReady = {
878
843
  type: "maven.index.ready";
879
844
  properties: {
@@ -890,6 +855,48 @@ export type EventMavenIndexBuilding = {
890
855
  pomFiles: Array<string>;
891
856
  };
892
857
  };
858
+ export type EventWorktreeReady = {
859
+ type: "worktree.ready";
860
+ properties: {
861
+ name: string;
862
+ branch: string;
863
+ };
864
+ };
865
+ export type EventWorktreeFailed = {
866
+ type: "worktree.failed";
867
+ properties: {
868
+ message: string;
869
+ };
870
+ };
871
+ export type EventCommandExecuted = {
872
+ type: "command.executed";
873
+ properties: {
874
+ name: string;
875
+ sessionID: string;
876
+ arguments: string;
877
+ messageID: string;
878
+ };
879
+ };
880
+ export type EventSkillCreated = {
881
+ type: "skill.created";
882
+ properties: {
883
+ name: string;
884
+ description: string;
885
+ };
886
+ };
887
+ export type EventSessionMemoryExtracted = {
888
+ type: "session.memory.extracted";
889
+ properties: {
890
+ sessionID: string;
891
+ projectID: string;
892
+ };
893
+ };
894
+ export type EventSessionCompacted = {
895
+ type: "session.compacted";
896
+ properties: {
897
+ sessionID: string;
898
+ };
899
+ };
893
900
  export type EventVcsBranchUpdated = {
894
901
  type: "vcs.branch.updated";
895
902
  properties: {
@@ -910,7 +917,11 @@ export type Session = {
910
917
  projectID: string;
911
918
  directory: string;
912
919
  parentID?: string;
913
- type?: "session_memory_extraction";
920
+ type?: "session_memory_extraction" | "cron";
921
+ /**
922
+ * Cron config name that created this session
923
+ */
924
+ cronName?: string;
914
925
  summary?: {
915
926
  additions: number;
916
927
  deletions: number;
@@ -1010,7 +1021,49 @@ export type EventPtyDeleted = {
1010
1021
  id: string;
1011
1022
  };
1012
1023
  };
1013
- export type Event = EventInstallationUpdated | EventEngineerUpdateAvailable | EventProjectUpdated | EventServerInstanceDisposed | EventServerConnected | EventGlobalDisposed | EventLspClientDiagnostics | EventLspUpdated | EventFileEdited | EventMessageUpdated | EventMessageRemoved | EventMessagePartUpdated | EventMessagePartRemoved | EventPermissionAsked | EventPermissionReplied | EventTuiPromptAppend | EventTuiPromptReplace | EventTuiPromptModeReset | EventTuiCommandExecute | EventTuiToastShow | EventTuiSessionSelect | EventMcpToolsChanged | EventMcpBrowserOpenFailed | EventWorktreeReady | EventWorktreeFailed | EventCommandExecuted | EventSkillCreated | EventSessionStatus | EventSessionIdle | EventQuestionAsked | EventQuestionReplied | EventQuestionRejected | EventTaskNotification | EventSessionMemoryExtracted | EventSessionCompacted | EventFileWatcherUpdated | EventRuleCreated | EventTodoUpdated | EventTeamWorkerStarted | EventTeamWorkerStopped | EventTeamTaskAssigned | EventTeamTaskCompleted | EventTeamTaskFailed | EventTeamMessageReceived | EventTeamMemberHired | EventTeamMemberFired | EventTeamWorkerStatusChanged | EventSpecUpdated | EventMavenIndexReady | EventMavenIndexBuilding | EventVcsBranchUpdated | EventSessionCreated | EventSessionUpdated | EventSessionDeleted | EventSessionDiff | EventSessionError | EventPtyCreated | EventPtyUpdated | EventPtyExited | EventPtyDeleted;
1024
+ export type EventCronCreated = {
1025
+ type: "cron.created";
1026
+ properties: {
1027
+ info: {
1028
+ name: string;
1029
+ description: string;
1030
+ schedule: string;
1031
+ type: "agent" | "command";
1032
+ enabled?: boolean;
1033
+ model?: string;
1034
+ steps?: number;
1035
+ command?: string;
1036
+ location: string;
1037
+ source: "global" | "project";
1038
+ body: string;
1039
+ };
1040
+ };
1041
+ };
1042
+ export type EventCronUpdated = {
1043
+ type: "cron.updated";
1044
+ properties: {
1045
+ info: {
1046
+ name: string;
1047
+ description: string;
1048
+ schedule: string;
1049
+ type: "agent" | "command";
1050
+ enabled?: boolean;
1051
+ model?: string;
1052
+ steps?: number;
1053
+ command?: string;
1054
+ location: string;
1055
+ source: "global" | "project";
1056
+ body: string;
1057
+ };
1058
+ };
1059
+ };
1060
+ export type EventCronDeleted = {
1061
+ type: "cron.deleted";
1062
+ properties: {
1063
+ name: string;
1064
+ };
1065
+ };
1066
+ export type Event = EventInstallationUpdated | EventEngineerUpdateAvailable | EventProjectUpdated | EventServerInstanceDisposed | EventServerConnected | EventGlobalDisposed | EventLspClientDiagnostics | EventLspUpdated | EventFileEdited | EventMessageUpdated | EventMessageRemoved | EventMessagePartUpdated | EventMessagePartRemoved | EventPermissionAsked | EventPermissionReplied | EventExpertCreated | EventTuiPromptAppend | EventTuiPromptReplace | EventTuiPromptModeReset | EventTuiCommandExecute | EventTuiToastShow | EventTuiSessionSelect | EventMcpToolsChanged | EventMcpBrowserOpenFailed | EventRuleCreated | EventQuestionAsked | EventQuestionReplied | EventQuestionRejected | EventFileWatcherUpdated | EventTaskNotification | EventTodoUpdated | EventTeamWorkerStarted | EventTeamWorkerStopped | EventTeamTaskAssigned | EventTeamTaskCompleted | EventTeamTaskFailed | EventTeamMessageReceived | EventTeamMemberHired | EventTeamMemberFired | EventTeamWorkerStatusChanged | EventSpecUpdated | EventSessionStatus | EventSessionIdle | EventMavenIndexReady | EventMavenIndexBuilding | EventWorktreeReady | EventWorktreeFailed | EventCommandExecuted | EventSkillCreated | EventSessionMemoryExtracted | EventSessionCompacted | EventVcsBranchUpdated | EventSessionCreated | EventSessionUpdated | EventSessionDeleted | EventSessionDiff | EventSessionError | EventPtyCreated | EventPtyUpdated | EventPtyExited | EventPtyDeleted | EventCronCreated | EventCronUpdated | EventCronDeleted;
1014
1067
  export type GlobalEvent = {
1015
1068
  directory: string;
1016
1069
  payload: Event;
@@ -1728,6 +1781,10 @@ export type Config = {
1728
1781
  */
1729
1782
  paths?: Array<string>;
1730
1783
  };
1784
+ /**
1785
+ * Product names passed to the business knowledge backend (productNames) to scope business_search queries
1786
+ */
1787
+ products?: Array<string>;
1731
1788
  watcher?: {
1732
1789
  ignore?: Array<string>;
1733
1790
  };
@@ -2305,6 +2362,8 @@ export type Agent = {
2305
2362
  [key: string]: unknown;
2306
2363
  };
2307
2364
  steps?: number;
2365
+ expert?: boolean;
2366
+ label?: string;
2308
2367
  };
2309
2368
  export type LspStatus = {
2310
2369
  id: string;
@@ -2941,6 +3000,14 @@ export type SessionListData = {
2941
3000
  * Maximum number of sessions to return
2942
3001
  */
2943
3002
  limit?: number;
3003
+ /**
3004
+ * Filter sessions by cron config name
3005
+ */
3006
+ cronName?: string;
3007
+ /**
3008
+ * Include cron sessions in results
3009
+ */
3010
+ includeCron?: boolean;
2944
3011
  };
2945
3012
  url: "/session";
2946
3013
  };
@@ -2955,7 +3022,8 @@ export type SessionCreateData = {
2955
3022
  body?: {
2956
3023
  parentID?: string;
2957
3024
  title?: string;
2958
- type?: "session_memory_extraction";
3025
+ type?: "session_memory_extraction" | "cron";
3026
+ cronName?: string;
2959
3027
  mode?: "agent" | "plan" | "goal";
2960
3028
  permission?: PermissionRuleset;
2961
3029
  };
@@ -4947,6 +5015,249 @@ export type TeamMessagesResponses = {
4947
5015
  }>;
4948
5016
  };
4949
5017
  export type TeamMessagesResponse = TeamMessagesResponses[keyof TeamMessagesResponses];
5018
+ export type CronListData = {
5019
+ body?: never;
5020
+ path?: never;
5021
+ query?: {
5022
+ directory?: string;
5023
+ };
5024
+ url: "/cron";
5025
+ };
5026
+ export type CronListResponses = {
5027
+ /**
5028
+ * List of cron configs
5029
+ */
5030
+ 200: Array<{
5031
+ name: string;
5032
+ description: string;
5033
+ schedule: string;
5034
+ type: "agent" | "command";
5035
+ enabled?: boolean;
5036
+ model?: string;
5037
+ steps?: number;
5038
+ command?: string;
5039
+ location: string;
5040
+ source: "global" | "project";
5041
+ body: string;
5042
+ }>;
5043
+ };
5044
+ export type CronListResponse = CronListResponses[keyof CronListResponses];
5045
+ export type CronCreateData = {
5046
+ body?: {
5047
+ name: string;
5048
+ description: string;
5049
+ schedule: string;
5050
+ type: "agent" | "command";
5051
+ enabled?: boolean;
5052
+ model?: string;
5053
+ steps?: number;
5054
+ command?: string;
5055
+ body: string;
5056
+ };
5057
+ path?: never;
5058
+ query?: {
5059
+ directory?: string;
5060
+ };
5061
+ url: "/cron";
5062
+ };
5063
+ export type CronCreateErrors = {
5064
+ /**
5065
+ * Bad request
5066
+ */
5067
+ 400: BadRequestError;
5068
+ };
5069
+ export type CronCreateError = CronCreateErrors[keyof CronCreateErrors];
5070
+ export type CronCreateResponses = {
5071
+ /**
5072
+ * Created cron config
5073
+ */
5074
+ 200: {
5075
+ name: string;
5076
+ description: string;
5077
+ schedule: string;
5078
+ type: "agent" | "command";
5079
+ enabled?: boolean;
5080
+ model?: string;
5081
+ steps?: number;
5082
+ command?: string;
5083
+ location: string;
5084
+ source: "global" | "project";
5085
+ body: string;
5086
+ };
5087
+ };
5088
+ export type CronCreateResponse = CronCreateResponses[keyof CronCreateResponses];
5089
+ export type CronDeleteData = {
5090
+ body?: never;
5091
+ path: {
5092
+ name: string;
5093
+ };
5094
+ query?: {
5095
+ directory?: string;
5096
+ };
5097
+ url: "/cron/{name}";
5098
+ };
5099
+ export type CronDeleteErrors = {
5100
+ /**
5101
+ * Bad request
5102
+ */
5103
+ 400: BadRequestError;
5104
+ /**
5105
+ * Not found
5106
+ */
5107
+ 404: NotFoundError;
5108
+ };
5109
+ export type CronDeleteError = CronDeleteErrors[keyof CronDeleteErrors];
5110
+ export type CronDeleteResponses = {
5111
+ /**
5112
+ * Successfully deleted
5113
+ */
5114
+ 200: boolean;
5115
+ };
5116
+ export type CronDeleteResponse = CronDeleteResponses[keyof CronDeleteResponses];
5117
+ export type CronGetData = {
5118
+ body?: never;
5119
+ path: {
5120
+ name: string;
5121
+ };
5122
+ query?: {
5123
+ directory?: string;
5124
+ };
5125
+ url: "/cron/{name}";
5126
+ };
5127
+ export type CronGetErrors = {
5128
+ /**
5129
+ * Bad request
5130
+ */
5131
+ 400: BadRequestError;
5132
+ /**
5133
+ * Not found
5134
+ */
5135
+ 404: NotFoundError;
5136
+ };
5137
+ export type CronGetError = CronGetErrors[keyof CronGetErrors];
5138
+ export type CronGetResponses = {
5139
+ /**
5140
+ * Cron config
5141
+ */
5142
+ 200: {
5143
+ name: string;
5144
+ description: string;
5145
+ schedule: string;
5146
+ type: "agent" | "command";
5147
+ enabled?: boolean;
5148
+ model?: string;
5149
+ steps?: number;
5150
+ command?: string;
5151
+ location: string;
5152
+ source: "global" | "project";
5153
+ body: string;
5154
+ };
5155
+ };
5156
+ export type CronGetResponse = CronGetResponses[keyof CronGetResponses];
5157
+ export type CronUpdateData = {
5158
+ body?: {
5159
+ description?: string;
5160
+ schedule?: string;
5161
+ type?: "agent" | "command";
5162
+ enabled?: boolean;
5163
+ model?: string;
5164
+ steps?: number;
5165
+ command?: string;
5166
+ };
5167
+ path: {
5168
+ name: string;
5169
+ };
5170
+ query?: {
5171
+ directory?: string;
5172
+ };
5173
+ url: "/cron/{name}";
5174
+ };
5175
+ export type CronUpdateErrors = {
5176
+ /**
5177
+ * Bad request
5178
+ */
5179
+ 400: BadRequestError;
5180
+ /**
5181
+ * Not found
5182
+ */
5183
+ 404: NotFoundError;
5184
+ };
5185
+ export type CronUpdateError = CronUpdateErrors[keyof CronUpdateErrors];
5186
+ export type CronUpdateResponses = {
5187
+ /**
5188
+ * Updated cron config
5189
+ */
5190
+ 200: {
5191
+ name: string;
5192
+ description: string;
5193
+ schedule: string;
5194
+ type: "agent" | "command";
5195
+ enabled?: boolean;
5196
+ model?: string;
5197
+ steps?: number;
5198
+ command?: string;
5199
+ location: string;
5200
+ source: "global" | "project";
5201
+ body: string;
5202
+ };
5203
+ };
5204
+ export type CronUpdateResponse = CronUpdateResponses[keyof CronUpdateResponses];
5205
+ export type CronSessionsData = {
5206
+ body?: never;
5207
+ path: {
5208
+ name: string;
5209
+ };
5210
+ query?: {
5211
+ directory?: string;
5212
+ };
5213
+ url: "/cron/{name}/sessions";
5214
+ };
5215
+ export type CronSessionsErrors = {
5216
+ /**
5217
+ * Bad request
5218
+ */
5219
+ 400: BadRequestError;
5220
+ /**
5221
+ * Not found
5222
+ */
5223
+ 404: NotFoundError;
5224
+ };
5225
+ export type CronSessionsError = CronSessionsErrors[keyof CronSessionsErrors];
5226
+ export type CronSessionsResponses = {
5227
+ /**
5228
+ * List of sessions
5229
+ */
5230
+ 200: Array<Session>;
5231
+ };
5232
+ export type CronSessionsResponse = CronSessionsResponses[keyof CronSessionsResponses];
5233
+ export type ExpertListData = {
5234
+ body?: never;
5235
+ path?: never;
5236
+ query?: {
5237
+ directory?: string;
5238
+ };
5239
+ url: "/expert";
5240
+ };
5241
+ export type ExpertListResponses = {
5242
+ /**
5243
+ * List of experts
5244
+ */
5245
+ 200: Array<{
5246
+ name: string;
5247
+ label: string;
5248
+ modality?: "text" | "vision";
5249
+ description: string;
5250
+ resources?: {
5251
+ mcp?: Array<string>;
5252
+ skills?: Array<string>;
5253
+ rules?: Array<string>;
5254
+ tools?: Array<string>;
5255
+ } | null;
5256
+ location: string;
5257
+ content: string;
5258
+ }>;
5259
+ };
5260
+ export type ExpertListResponse = ExpertListResponses[keyof ExpertListResponses];
4950
5261
  export type InstanceDisposeData = {
4951
5262
  body?: never;
4952
5263
  path?: never;
@@ -5112,6 +5423,7 @@ export type AppSkillsResponses = {
5112
5423
  200: Array<{
5113
5424
  name: string;
5114
5425
  description: string;
5426
+ inject?: boolean;
5115
5427
  location: string;
5116
5428
  content: string;
5117
5429
  }>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@engineer-ai/sdk",
4
- "version": "1.6.2",
4
+ "version": "1.7.1",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "scripts": {