@ellipsis-dev/sdk 0.31.0 → 0.32.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.
- package/dist/index.d.ts +291 -324
- package/dist/index.js +75 -294
- package/dist/store/index.d.ts +1 -1
- package/dist/stream/index.d.ts +1 -1
- package/dist/{types-BQxZcD0_.d.ts → types-DjY1VcOe.d.ts} +1636 -2346
- package/package.json +1 -1
- package/schema/collection_frames.schema.json +430 -31
- package/schema/frames.schema.json +474 -278
- package/schema/lifecycle.schema.json +0 -45
- package/schema/openapi.v1.json +3973 -5064
- package/schema/trigger_fields.schema.json +224 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as components } from './types-
|
|
2
|
-
export { A as AgentConfig, a as AgentIdentity, b as AttributionType, B as BudgetConfig, C as
|
|
1
|
+
import { c as components } from './types-DjY1VcOe.js';
|
|
2
|
+
export { A as AgentConfig, a as AgentIdentity, b as AttributionType, B as BudgetConfig, C as CheckRunAction, d as ClaudeAssistantEvent, e as ClaudeAssistantMessage, f as ClaudeConfig, g as ClaudeConversationResetEvent, h as ClaudeNativeEvent, i as ClaudeNativeSessionRecord, j as ClaudeNativeUsage, k as ClaudeRateLimitEvent, l as ClaudeRateLimitInfo, m as ClaudeResultEvent, n as ClaudeSessionRecord, o as ClaudeSystemEvent, p as ClaudeUserEvent, q as ClaudeUserMessage, r as CodexAgentMessage, s as CodexAgentMessageItem, t as CodexAppServerError, u as CodexAppServerEvent, v as CodexAppServerItem, w as CodexAppServerNotification, x as CodexAppServerSessionRecord, y as CodexCommandExecution, z as CodexCommandExecutionItem, D as CodexConfig, E as CodexContextCompaction, F as CodexEffortLevel, G as CodexErrorEvent, H as CodexErrorItem, I as CodexErrorParams, J as CodexEvent, K as CodexFileChange, L as CodexFileChangeItem, M as CodexFileUpdate, N as CodexItem, O as CodexItemCompleted, P as CodexItemCompletedEvent, Q as CodexItemParams, R as CodexItemStarted, S as CodexItemStartedEvent, T as CodexItemUpdatedEvent, U as CodexLocalImageInput, V as CodexMcpToolCall, W as CodexMcpToolCallAppContext, X as CodexMcpToolCallError, Y as CodexMcpToolCallItem, Z as CodexMcpToolCallResult, _ as CodexPlan, $ as CodexReasoning, a0 as CodexReasoningItem, a1 as CodexSessionRecord, a2 as CodexTextInput, a3 as CodexThread, a4 as CodexThreadStarted, a5 as CodexThreadStartedEvent, a6 as CodexThreadStartedParams, a7 as CodexThreadTokenUsage, a8 as CodexTodoListItem, a9 as CodexTokenUsageBreakdown, aa as CodexTokenUsageParams, ab as CodexTokenUsageUpdated, ac as CodexTurn, ad as CodexTurnCompleted, ae as CodexTurnCompletedEvent, af as CodexTurnError, ag as CodexTurnFailedEvent, ah as CodexTurnParams, ai as CodexTurnStarted, aj as CodexTurnStartedEvent, ak as CodexUsage, al as CodexUserInput, am as CodexUserMessage, an as CodexWebSearch, ao as CodexWebSearchItem, ap as ComputeConfig, aq as ComputeConfig1, ar as ConfigMetadata, as as CronTrigger, at as DeltaFrame, au as DoneFrame, av as Duration, aw as EffortLevel, ax as EllipsisGrant, ay as EllipsisPermissions, az as EnvironmentBaseBuild, aA as EnvironmentConfig, aB as EnvironmentHooks, aC as EnvironmentHooks1, aD as EnvironmentOutputPayload, aE as EnvironmentOutputRecord, aF as EnvironmentPhasePayload, aG as EnvironmentPhaseRecord, aH as EnvironmentReadyPayload, aI as EnvironmentReadyRecord, aJ as EnvironmentScript, aK as EnvironmentSource, aL as EnvironmentVariable, aM as ErrorFrame, aN as GithubAccountFilter, aO as GithubAccountSelector, aP as GithubAccountSnippet, aQ as GithubAccountType, aR as GithubCheckRunEvent, aS as GithubIssueEvent, aT as GithubPermissions, aU as GithubPullRequestEvent, aV as GithubPushEvent, aW as GithubReleaseEvent, aX as HandlerService, aY as HeartbeatFrame, aZ as InputContract, a_ as IssueAction, a$ as LegacyAssistantPayload, b0 as LegacyNativeUsage, b1 as LegacyResultPayload, b2 as Level, b3 as LifecycleSessionRecord, b4 as LinearIssueAction, b5 as LinearIssueEvent, b6 as McpRemoteServer, b7 as McpServerRef, b8 as McpStdioServer, b9 as MemorySize, ba as MessageDeliveredPayload, bb as MessageDeliveredRecord, bc as MessageReceivedPayload, bd as MessageReceivedRecord, be as MessageRequeuedPayload, bf as MessageRequeuedRecord, bg as OutputConfig, bh as PermissionsConfig, bi as PermissionsConfig1, bj as PlatformSessionRecord, bk as PromptBlockedReason, bl as PullRequestAction, bm as ReactCheckRun, bn as ReactIssue, bo as ReactLinearIssue, bp as ReactPullRequest, bq as ReactPush, br as ReactRelease, bs as ReactSentry, bt as ReactSlackChannel, bu as ReactTrigger, bv as RecordsAppendFrame, bw as ReleaseAction, bx as RepositoryFilter, by as RepositoryRef, bz as Review, bA as ReviewComment, bB as ReviewConfig, bC as ReviewConfigsListResponse, bD as ReviewPullRequest, bE as ReviewPullRequestAuthor, bF as ReviewReviewer, bG as ReviewSummary, bH as ReviewsListResponse, bI as SdkAssistantRecord, bJ as SdkCacheCreation, bK as SdkContentBlock, bL as SdkRateLimitRecord, bM as SdkRecord, bN as SdkResultRecord, bO as SdkServerToolResultBlock, bP as SdkServerToolUseBlock, bQ as SdkSystemRecord, bR as SdkTextBlock, bS as SdkThinkingBlock, bT as SdkToolResultBlock, bU as SdkToolUseBlock, bV as SdkUserRecord, bW as SendSessionMessageRequest, bX as SentryAction, bY as SentryAlertEvent, bZ as Session, b_ as Session1, b$ as SessionAgent, c0 as SessionArchived, c1 as SessionAttribution, c2 as SessionClosedPayload, c3 as SessionClosedRecord, c4 as SessionConfig, c5 as SessionConversation, c6 as SessionConversationConfig, c7 as SessionCost, c8 as SessionCost1, c9 as SessionEnvironment, ca as SessionEventActor, cb as SessionFrame, cc as SessionGit, cd as SessionGitCommit, ce as SessionGitFile, cf as SessionGitPr, cg as SessionGitRepo, ch as SessionHandler, ci as SessionMessage, cj as SessionMessageImage, ck as SessionMessageResponse, cl as SessionMessageStatus, cm as SessionOutput, cn as SessionParent, co as SessionPrompting, cp as SessionRecord, cq as SessionRecordsListResponse, cr as SessionResponse, cs as SessionSource, ct as SessionState, cu as SessionStopped, cv as SessionStreamFrame, cw as SessionSummary, cx as SessionTokens, cy as SessionTokens1, cz as SessionTurn, cA as SessionTurnResponse, cB as SessionTurnsListResponse, cC as SessionsListResponse, cD as SettingsRef, cE as SkillRef, cF as SlackChannelCreatedEvent, cG as SlackMessageEvent, cH as SnapshotFrame, cI as StreamFrame, cJ as TokensInfo, cK as TurnEndedPayload, cL as TurnEndedRecord, cM as TurnReason, cN as TurnStartedPayload, cO as TurnStartedRecord, cP as TurnStatus, cQ as UnknownSessionRecord, cR as UpdateSessionRequest, cS as paths } from './types-DjY1VcOe.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Frames on /v1/sessions/stream, /v1/agents/stream and /v1/vm-executions/{id}/stream. Ignore unknown frame types.
|
|
@@ -43,7 +43,7 @@ type Session = {
|
|
|
43
43
|
/**
|
|
44
44
|
* The typed external event that started the session; null for direct and scheduled starts.
|
|
45
45
|
*/
|
|
46
|
-
event: (GithubPullRequestEvent | GithubIssueEvent | GithubPushEvent | LinearIssueEvent | SlackMessageEvent | SlackChannelCreatedEvent | SentryAlertEvent) | null;
|
|
46
|
+
event: (GithubPullRequestEvent | GithubIssueEvent | GithubPushEvent | GithubCheckRunEvent | GithubReleaseEvent | LinearIssueEvent | SlackMessageEvent | SlackChannelCreatedEvent | SentryAlertEvent) | null;
|
|
47
47
|
/**
|
|
48
48
|
* What the session did to git, one entry per repository in its workspace: the commit and branch it sits on, per-file line counts for its uncommitted changes, and the pull requests it opened. Null if nothing was ever captured.
|
|
49
49
|
*/
|
|
@@ -63,9 +63,9 @@ type Session = {
|
|
|
63
63
|
[k: string]: string;
|
|
64
64
|
};
|
|
65
65
|
/**
|
|
66
|
-
* The structured
|
|
66
|
+
* The session's structured output: the `json_schema` the agent must satisfy and, once a turn has submitted it, the `result`.
|
|
67
67
|
*/
|
|
68
|
-
output:
|
|
68
|
+
output: SessionOutput | null;
|
|
69
69
|
/**
|
|
70
70
|
* The predecessor session this session continues; null when there is none.
|
|
71
71
|
*/
|
|
@@ -123,7 +123,14 @@ type SessionConfig = {
|
|
|
123
123
|
* Codex input and native options. Set exactly one of claude_code or codex.
|
|
124
124
|
*/
|
|
125
125
|
codex: CodexConfig | null;
|
|
126
|
+
conversation: SessionConversationConfig;
|
|
126
127
|
environment: string | EnvironmentConfig;
|
|
128
|
+
/**
|
|
129
|
+
* Arbitrary string key/value metadata stored on every session.
|
|
130
|
+
*/
|
|
131
|
+
metadata: {
|
|
132
|
+
[k: string]: string;
|
|
133
|
+
};
|
|
127
134
|
output: OutputConfig | null;
|
|
128
135
|
permissions: PermissionsConfig;
|
|
129
136
|
skills: SkillRef[];
|
|
@@ -150,20 +157,33 @@ type GithubAccountFilter = {
|
|
|
150
157
|
exclude: string[];
|
|
151
158
|
include: string[] | boolean;
|
|
152
159
|
} | boolean | string[];
|
|
153
|
-
|
|
160
|
+
/**
|
|
161
|
+
* What a completed check run did. `failed` covers the conclusions that
|
|
162
|
+
* mean the check did not pass on its own merits (`failure`, `timed_out`); a
|
|
163
|
+
* cancelled, skipped, neutral or stale check is not a failure and never
|
|
164
|
+
* fires (see FAILED_CHECK_RUN_CONCLUSIONS).
|
|
165
|
+
*/
|
|
166
|
+
type CheckRunAction = 'failed';
|
|
154
167
|
type RepositoryFilter = {
|
|
155
168
|
exclude: string[];
|
|
156
169
|
include: string[];
|
|
157
170
|
} | string[];
|
|
171
|
+
type IssueAction = 'opened' | 'closed' | 'commented';
|
|
158
172
|
type LinearIssueAction = 'opened';
|
|
159
173
|
type PullRequestAction = 'opened' | 'pushed' | 'merged' | 'closed' | 'review_submitted' | 'commented';
|
|
174
|
+
/**
|
|
175
|
+
* What happened to a GitHub release. `published` is the one moment a
|
|
176
|
+
* release becomes visible: a release or prerelease published directly, or a
|
|
177
|
+
* draft published later. Edits, deletions, and unpublishes never fire.
|
|
178
|
+
*/
|
|
179
|
+
type ReleaseAction = 'published';
|
|
160
180
|
type SentryAction = 'issue_alert' | 'metric_alert';
|
|
161
181
|
type GithubAccountType = 'User' | 'Organization' | 'Bot' | 'Mannequin';
|
|
162
182
|
type AttributionType = 'github_user' | 'linear_user' | 'slack_user' | 'api_key';
|
|
163
183
|
/**
|
|
164
184
|
* Why direct prompting is refused. Absent when prompting is allowed.
|
|
165
185
|
*/
|
|
166
|
-
type PromptBlockedReason = 'mention_surface' | '
|
|
186
|
+
type PromptBlockedReason = 'mention_surface' | 'non_interactive' | 'harness_single_turn' | 'budget_exhausted' | 'closed';
|
|
167
187
|
/**
|
|
168
188
|
* `open` while the session can take messages; `closed` is permanent.
|
|
169
189
|
*/
|
|
@@ -184,7 +204,7 @@ type HandlerService = 'slack' | 'github' | 'linear' | 'sentry';
|
|
|
184
204
|
/**
|
|
185
205
|
* Where the session came from (e.g. react, web, api, cli, mention, cron).
|
|
186
206
|
*/
|
|
187
|
-
type SessionSource = 'react' | 'web' | 'api' | 'cli' | 'mention' | 'cron';
|
|
207
|
+
type SessionSource = 'react' | 'code_review' | 'web' | 'api' | 'cli' | 'mention' | 'cron';
|
|
188
208
|
/**
|
|
189
209
|
* Why a turn failed or was cancelled. Null on every other outcome.
|
|
190
210
|
*/
|
|
@@ -203,7 +223,7 @@ type ConfigManagedBy = 'github' | 'api';
|
|
|
203
223
|
* Rides on `Sandbox.cache_tier` and the sandbox_ready lifecycle record.
|
|
204
224
|
*/
|
|
205
225
|
type SandboxCacheTier = 'exact' | 'incremental' | 'full';
|
|
206
|
-
type SandboxSource = '
|
|
226
|
+
type SandboxSource = 'session' | 'image_refresh' | 'environment_check' | 'test' | 'script';
|
|
207
227
|
type SandboxStatus = 'scheduled' | 'building' | 'running' | 'released' | 'terminating' | 'terminated' | 'failed';
|
|
208
228
|
type SandboxType = 'claude_code';
|
|
209
229
|
interface SessionListStreamMessage {
|
|
@@ -219,7 +239,7 @@ interface SessionListStreamMessage {
|
|
|
219
239
|
interface SessionAgent {
|
|
220
240
|
config: AgentConfig;
|
|
221
241
|
/**
|
|
222
|
-
* Identifier of the saved agent this session's snapshot was taken from. Null for a routing-file agent
|
|
242
|
+
* Identifier of the saved agent this session's snapshot was taken from. Null for a routing-file agent or the built-in mention agent, which have no saved agent behind them. Points at the agent as it exists now, which may have changed since.
|
|
223
243
|
*/
|
|
224
244
|
id: string | null;
|
|
225
245
|
}
|
|
@@ -241,9 +261,7 @@ interface AgentConfig {
|
|
|
241
261
|
* config directory) — see `yaml_is_ellipsis_config`.
|
|
242
262
|
*
|
|
243
263
|
* `enabled` is agent behavior, not freeform metadata, so it stays inside
|
|
244
|
-
* the config `sha` (only `metadata` is sha-excluded).
|
|
245
|
-
* accepts messages is a per-run choice (POST /v1/sessions `interactive`),
|
|
246
|
-
* not a config one.
|
|
264
|
+
* the config `sha` (only `metadata` is sha-excluded).
|
|
247
265
|
*/
|
|
248
266
|
interface AgentIdentity {
|
|
249
267
|
description: string | null;
|
|
@@ -264,15 +282,24 @@ interface ConfigMetadata {
|
|
|
264
282
|
* when it happens; this is what goes in).
|
|
265
283
|
*
|
|
266
284
|
* `json_schema` validates customer data sent as `input` to
|
|
267
|
-
* `POST /v1/agents/{id}/sessions` and
|
|
268
|
-
*
|
|
269
|
-
*
|
|
285
|
+
* `POST /v1/agents/{id}/sessions` (the dashboard and the CLI start
|
|
286
|
+
* through the same door) and stored as `session.input`. An on-demand
|
|
287
|
+
* start requires input when a schema is declared. A trigger fires
|
|
288
|
+
* without it: a cron fire has no payload and a react fire carries the
|
|
289
|
+
* platform-shaped event, so an agent may declare a schema alongside
|
|
290
|
+
* either trigger and the schema governs only its on-demand starts.
|
|
270
291
|
*
|
|
271
292
|
* `message` is the initial-message template: exact `{{path}}` substitution
|
|
272
|
-
* over the
|
|
273
|
-
* published fields
|
|
274
|
-
*
|
|
275
|
-
*
|
|
293
|
+
* over the payload the session has (the caller payload on an on-demand
|
|
294
|
+
* start, the surface's published fields on a react fire, the empty
|
|
295
|
+
* object on a cron fire), no conditionals/loops/filters. Refs are
|
|
296
|
+
* validated at deploy time against every governing field set (see
|
|
297
|
+
* AgentConfig's `_check_input`): the caller schema's paths, the react
|
|
298
|
+
* surface's published fields, and both when the agent has a react trigger
|
|
299
|
+
* and a schema, so one template renders fully on either door (declare the
|
|
300
|
+
* surface's field names in the schema). Omit `message` to let each door
|
|
301
|
+
* render its default. An unresolved ref renders as the empty string (a
|
|
302
|
+
* cron fire, an optional field the payload omitted).
|
|
276
303
|
*/
|
|
277
304
|
interface InputContract {
|
|
278
305
|
json_schema: {
|
|
@@ -280,10 +307,26 @@ interface InputContract {
|
|
|
280
307
|
} | null;
|
|
281
308
|
message: string | null;
|
|
282
309
|
}
|
|
310
|
+
/**
|
|
311
|
+
* A saved agent's spend limits: the per-session cap plus its total spend
|
|
312
|
+
* over the trailing 1, 7, and 28 days.
|
|
313
|
+
*/
|
|
283
314
|
interface BudgetConfig {
|
|
315
|
+
/**
|
|
316
|
+
* The most the agent may spend over the last day, in US dollars.
|
|
317
|
+
*/
|
|
284
318
|
day: number | null;
|
|
319
|
+
/**
|
|
320
|
+
* The most the agent may spend over the last 28 days, in US dollars.
|
|
321
|
+
*/
|
|
285
322
|
month: number | null;
|
|
323
|
+
/**
|
|
324
|
+
* The most one session may spend, in US dollars.
|
|
325
|
+
*/
|
|
286
326
|
session: number | null;
|
|
327
|
+
/**
|
|
328
|
+
* The most the agent may spend over the last 7 days, in US dollars.
|
|
329
|
+
*/
|
|
287
330
|
week: number | null;
|
|
288
331
|
}
|
|
289
332
|
/**
|
|
@@ -293,7 +336,10 @@ interface ClaudeConfig {
|
|
|
293
336
|
effort: EffortLevel | null;
|
|
294
337
|
fallback_model: string | null;
|
|
295
338
|
max_turns: number | null;
|
|
296
|
-
|
|
339
|
+
/**
|
|
340
|
+
* The model the session runs on: an alias or canonical id from the models table. Required.
|
|
341
|
+
*/
|
|
342
|
+
model: string;
|
|
297
343
|
/**
|
|
298
344
|
* The initial user message, passed verbatim. Omit to start an interactive session with no turn, waiting for a message.
|
|
299
345
|
*/
|
|
@@ -301,12 +347,10 @@ interface ClaudeConfig {
|
|
|
301
347
|
settings: SettingsRef | null;
|
|
302
348
|
}
|
|
303
349
|
/**
|
|
304
|
-
* A
|
|
305
|
-
*
|
|
306
|
-
*
|
|
307
|
-
*
|
|
308
|
-
* security setting. Lets a team point the cloud agent at the same settings file
|
|
309
|
-
* they already use with Claude Code locally instead of re-encoding it as YAML.
|
|
350
|
+
* A Claude Code settings.json read from a repository and applied to the
|
|
351
|
+
* session. It adds permission rules and other Claude Code settings; rules the
|
|
352
|
+
* platform sets stay in force. Supported models list `settings` in
|
|
353
|
+
* `/v1/account/models`.
|
|
310
354
|
*/
|
|
311
355
|
interface SettingsRef {
|
|
312
356
|
path: string;
|
|
@@ -319,21 +363,30 @@ interface RepositoryRef {
|
|
|
319
363
|
}
|
|
320
364
|
/**
|
|
321
365
|
* Native options supported by the current Codex adapter.
|
|
322
|
-
*
|
|
323
|
-
* Options and capabilities expand only when their runtime behavior is tested.
|
|
324
|
-
* Unknown options are rejected instead of silently ignored.
|
|
325
366
|
*/
|
|
326
367
|
interface CodexConfig {
|
|
327
368
|
/**
|
|
328
369
|
* Reasoning effort for every turn. Omit to use the model default.
|
|
329
370
|
*/
|
|
330
371
|
effort: CodexEffortLevel | null;
|
|
372
|
+
/**
|
|
373
|
+
* The model the session runs on: a Responses-capable id from the models table. Required.
|
|
374
|
+
*/
|
|
331
375
|
model: string;
|
|
332
376
|
/**
|
|
333
377
|
* The initial user message, passed verbatim. Omit to start an interactive session with no turn, waiting for a message.
|
|
334
378
|
*/
|
|
335
379
|
prompt: string | null;
|
|
336
380
|
}
|
|
381
|
+
/**
|
|
382
|
+
* Conversation settings for a session, set on a saved agent or sent when starting a session or running an agent.
|
|
383
|
+
*/
|
|
384
|
+
interface SessionConversationConfig {
|
|
385
|
+
/**
|
|
386
|
+
* Whether the session stays open after its first turn. Defaults to true; false runs once and requires a prompt. Requires the model's interactive capability when true. Direct message acceptance is reported separately in conversation.prompting.
|
|
387
|
+
*/
|
|
388
|
+
interactive: boolean;
|
|
389
|
+
}
|
|
337
390
|
/**
|
|
338
391
|
* Everything about the environment the agent runs in: which
|
|
339
392
|
* `repositories` are cloned into it, which environment `variables` it gets,
|
|
@@ -454,13 +507,12 @@ interface EnvironmentBaseBuild {
|
|
|
454
507
|
run: string;
|
|
455
508
|
}
|
|
456
509
|
/**
|
|
457
|
-
* One built-in MCP server this agent
|
|
510
|
+
* One built-in MCP server this agent attaches by name (`linear`/`slack`).
|
|
458
511
|
* A name reference over the connected built-in set — the platform manages the
|
|
459
|
-
* server's transport and credentials.
|
|
460
|
-
*
|
|
461
|
-
*
|
|
462
|
-
*
|
|
463
|
-
* `McpRemoteServer`).
|
|
512
|
+
* server's transport and credentials. A session gets a built-in server only
|
|
513
|
+
* when its config names it here or the session started from that server's
|
|
514
|
+
* own surface. For a server the platform does not provide, define it instead
|
|
515
|
+
* (`McpStdioServer` / `McpRemoteServer`).
|
|
464
516
|
*/
|
|
465
517
|
interface McpServerRef {
|
|
466
518
|
name: string;
|
|
@@ -524,7 +576,7 @@ interface OutputConfig {
|
|
|
524
576
|
* where the agent runs; this is what it may do from there.
|
|
525
577
|
*
|
|
526
578
|
* `ellipsis` scopes the session's Ellipsis API token (`ELLIPSIS_API_TOKEN`,
|
|
527
|
-
* what the `
|
|
579
|
+
* what the `ellipsis` CLI running inside the session authenticates with).
|
|
528
580
|
* `true` / the string `all` (the default) grant the full session token
|
|
529
581
|
* ceiling — everything a session token can ever do. A map narrows it per
|
|
530
582
|
* resource (see `EllipsisPermissions`); the minted token carries
|
|
@@ -550,8 +602,8 @@ interface EllipsisPermissions {
|
|
|
550
602
|
}
|
|
551
603
|
/**
|
|
552
604
|
* One grant entry: a level, optionally narrowed to instances whose
|
|
553
|
-
* natural key (a file's name, a
|
|
554
|
-
*
|
|
605
|
+
* natural key (a file's name, a secret's name, a config's name, a session's
|
|
606
|
+
* id) matches any of the `match` globs.
|
|
555
607
|
*/
|
|
556
608
|
interface EllipsisGrant {
|
|
557
609
|
level: Level;
|
|
@@ -559,8 +611,8 @@ interface EllipsisGrant {
|
|
|
559
611
|
}
|
|
560
612
|
/**
|
|
561
613
|
* The agent's GitHub access: the scope of the installation token minted for
|
|
562
|
-
* its session's environment — the credential `git
|
|
563
|
-
*
|
|
614
|
+
* its session's environment — the credential `git` and `gh` authenticate
|
|
615
|
+
* with.
|
|
564
616
|
*
|
|
565
617
|
* By default the token carries the installation's full permissions on all of
|
|
566
618
|
* the installation's repositories. `permissions` narrows what it may do:
|
|
@@ -589,36 +641,86 @@ interface SkillRef {
|
|
|
589
641
|
path: string;
|
|
590
642
|
repository: RepositoryRef | null;
|
|
591
643
|
}
|
|
644
|
+
/**
|
|
645
|
+
* A schedule: `schedule` is a five-field cron expression in UTC.
|
|
646
|
+
*
|
|
647
|
+
* `enabled: false` pauses the trigger and keeps its definition: the schedule
|
|
648
|
+
* stops firing while the agent stays live for on-demand starts and open
|
|
649
|
+
* sessions keep taking follow-ups (`ellipsis.enabled: false` pauses the
|
|
650
|
+
* whole file instead). Re-enabling resumes at the next scheduled time; runs
|
|
651
|
+
* missed while paused are not made up.
|
|
652
|
+
*/
|
|
592
653
|
interface CronTrigger {
|
|
654
|
+
enabled: boolean;
|
|
593
655
|
schedule: string;
|
|
594
656
|
type: 'cron';
|
|
595
657
|
}
|
|
658
|
+
/**
|
|
659
|
+
* An event trigger: exactly one surface block names the events to match.
|
|
660
|
+
*
|
|
661
|
+
* `enabled: false` pauses the trigger and keeps its definition: events stop
|
|
662
|
+
* matching while the agent stays live for on-demand starts and open
|
|
663
|
+
* sessions keep taking follow-ups (`ellipsis.enabled: false` pauses the
|
|
664
|
+
* whole file instead).
|
|
665
|
+
*/
|
|
596
666
|
interface ReactTrigger {
|
|
667
|
+
check_run: ReactCheckRun | null;
|
|
668
|
+
enabled: boolean;
|
|
597
669
|
issue: ReactIssue | null;
|
|
598
670
|
linear_issue: ReactLinearIssue | null;
|
|
599
671
|
pull_request: ReactPullRequest | null;
|
|
600
672
|
push: ReactPush | null;
|
|
673
|
+
release: ReactRelease | null;
|
|
601
674
|
sentry: ReactSentry | null;
|
|
602
675
|
slack_channel: ReactSlackChannel | null;
|
|
603
676
|
type: 'react';
|
|
604
677
|
}
|
|
605
|
-
|
|
678
|
+
/**
|
|
679
|
+
* A CI/CD check completing on a commit — a `check_run` from GitHub
|
|
680
|
+
* Actions or any other app that reports checks. `names` narrows to the check
|
|
681
|
+
* runs whose name matches (exact, or a prefix ending in `*`); `branch` is the
|
|
682
|
+
* check suite's head branch. The `for:` audience is the commit's author (the
|
|
683
|
+
* pull request author when the check is attached to one), never the CI app
|
|
684
|
+
* that completed the check — a check run's sender is always a bot.
|
|
685
|
+
*
|
|
686
|
+
* Delivery needs the Ellipsis GitHub App's `checks` permission on the
|
|
687
|
+
* installation; without it GitHub sends no check events and the webhook
|
|
688
|
+
* handler refuses the ones it does see.
|
|
689
|
+
*/
|
|
690
|
+
interface ReactCheckRun {
|
|
691
|
+
branch: string[];
|
|
606
692
|
for: GithubAccountSelector;
|
|
607
|
-
|
|
608
|
-
on:
|
|
693
|
+
names: string[];
|
|
694
|
+
on: CheckRunAction[];
|
|
609
695
|
repositories: RepositoryFilter;
|
|
610
696
|
}
|
|
611
697
|
/**
|
|
612
698
|
* A selector of GitHub accounts — the `for:` audience gate on react
|
|
613
|
-
* surfaces
|
|
614
|
-
*
|
|
699
|
+
* surfaces, classified on the stable entity author (the pusher for `push`,
|
|
700
|
+
* the PR author for a pull request). `users` selects human
|
|
615
701
|
* accounts, `bots` selects bot accounts; each is a `GithubAccountFilter`
|
|
616
702
|
* (include minus exclude, with bare bool/list shorthand).
|
|
703
|
+
*
|
|
704
|
+
* `teams` narrows further to members of any of the listed GitHub teams of
|
|
705
|
+
* the installation's organization, by slug (`platform` for
|
|
706
|
+
* `@org/platform`). It applies on top of `users`: the author must pass the
|
|
707
|
+
* users filter AND belong to a listed team. A bot is never a team member,
|
|
708
|
+
* so a selector with `teams` never admits one. Membership is resolved live
|
|
709
|
+
* at match time (see `TriggerEventContext.is_author_team_member`), and the
|
|
710
|
+
* config sync refuses a team that does not exist when the file is
|
|
711
|
+
* accepted.
|
|
617
712
|
*/
|
|
618
713
|
interface GithubAccountSelector {
|
|
619
714
|
bots: GithubAccountFilter;
|
|
715
|
+
teams: string[];
|
|
620
716
|
users: GithubAccountFilter;
|
|
621
717
|
}
|
|
718
|
+
interface ReactIssue {
|
|
719
|
+
for: GithubAccountSelector;
|
|
720
|
+
labels: string[];
|
|
721
|
+
on: IssueAction[];
|
|
722
|
+
repositories: RepositoryFilter;
|
|
723
|
+
}
|
|
622
724
|
interface ReactLinearIssue {
|
|
623
725
|
for: GithubAccountSelector;
|
|
624
726
|
on: LinearIssueAction[];
|
|
@@ -639,6 +741,21 @@ interface ReactPush {
|
|
|
639
741
|
paths: string[];
|
|
640
742
|
repositories: RepositoryFilter;
|
|
641
743
|
}
|
|
744
|
+
/**
|
|
745
|
+
* A GitHub release being published — a release or prerelease published
|
|
746
|
+
* directly, or a draft published later. `tag` narrows to the release tags
|
|
747
|
+
* that match (exact, or a prefix ending in `*`, so `v*`); `prerelease`
|
|
748
|
+
* selects prereleases or full releases, like `draft` on pull requests. The
|
|
749
|
+
* `for:` audience is the release's author, which for a release cut by CI is
|
|
750
|
+
* a bot and needs `bots` to opt in.
|
|
751
|
+
*/
|
|
752
|
+
interface ReactRelease {
|
|
753
|
+
for: GithubAccountSelector;
|
|
754
|
+
on: ReleaseAction[];
|
|
755
|
+
prerelease: boolean | null;
|
|
756
|
+
repositories: RepositoryFilter;
|
|
757
|
+
tag: string[];
|
|
758
|
+
}
|
|
642
759
|
interface ReactSentry {
|
|
643
760
|
on: SentryAction[];
|
|
644
761
|
projects: string[];
|
|
@@ -669,6 +786,7 @@ interface GithubAccountSnippet {
|
|
|
669
786
|
avatar_url: string;
|
|
670
787
|
id: number;
|
|
671
788
|
login: string;
|
|
789
|
+
name: string | null;
|
|
672
790
|
type: GithubAccountType;
|
|
673
791
|
}
|
|
674
792
|
/**
|
|
@@ -848,8 +966,30 @@ interface GithubPushEvent {
|
|
|
848
966
|
type: 'github.push';
|
|
849
967
|
url: string;
|
|
850
968
|
}
|
|
969
|
+
interface GithubCheckRunEvent {
|
|
970
|
+
action: CheckRunAction;
|
|
971
|
+
actor: SessionEventActor | null;
|
|
972
|
+
branch: string | null;
|
|
973
|
+
conclusion: string | null;
|
|
974
|
+
head_sha: string;
|
|
975
|
+
name: string;
|
|
976
|
+
pull_request_number: number | null;
|
|
977
|
+
repository: string;
|
|
978
|
+
type: 'github.check_run';
|
|
979
|
+
url: string;
|
|
980
|
+
}
|
|
981
|
+
interface GithubReleaseEvent {
|
|
982
|
+
action: ReleaseAction;
|
|
983
|
+
actor: SessionEventActor | null;
|
|
984
|
+
name: string | null;
|
|
985
|
+
prerelease: boolean;
|
|
986
|
+
repository: string;
|
|
987
|
+
tag: string;
|
|
988
|
+
type: 'github.release';
|
|
989
|
+
url: string;
|
|
990
|
+
}
|
|
851
991
|
interface LinearIssueEvent {
|
|
852
|
-
action: LinearIssueAction | 'commented';
|
|
992
|
+
action: LinearIssueAction | ('commented' | 'delegated');
|
|
853
993
|
actor: SessionEventActor | null;
|
|
854
994
|
identifier: string | null;
|
|
855
995
|
number: number;
|
|
@@ -957,6 +1097,26 @@ interface SessionHandler {
|
|
|
957
1097
|
*/
|
|
958
1098
|
sha: string;
|
|
959
1099
|
}
|
|
1100
|
+
/**
|
|
1101
|
+
* Structured output on the wire: the contract and, when a turn has
|
|
1102
|
+
* submitted one, the payload. `result` is None while the session runs and
|
|
1103
|
+
* when no turn submitted anything; it is the agent's own JSON, in the
|
|
1104
|
+
* shape of `json_schema`.
|
|
1105
|
+
*/
|
|
1106
|
+
interface SessionOutput {
|
|
1107
|
+
/**
|
|
1108
|
+
* JSON Schema the agent's result must satisfy.
|
|
1109
|
+
*/
|
|
1110
|
+
json_schema: {
|
|
1111
|
+
[k: string]: unknown;
|
|
1112
|
+
};
|
|
1113
|
+
/**
|
|
1114
|
+
* The payload the agent submitted, or null until a turn submits one.
|
|
1115
|
+
*/
|
|
1116
|
+
result: {
|
|
1117
|
+
[k: string]: unknown;
|
|
1118
|
+
} | null;
|
|
1119
|
+
}
|
|
960
1120
|
/**
|
|
961
1121
|
* The predecessor session this session continues.
|
|
962
1122
|
*/
|
|
@@ -1571,7 +1731,7 @@ declare class EllipsisAccountBilling {
|
|
|
1571
1731
|
* Explain whether your account can start sessions.
|
|
1572
1732
|
*
|
|
1573
1733
|
* Uses the same account gate as session admission, including credit,
|
|
1574
|
-
* contact email, and personal
|
|
1734
|
+
* contact email, and personal subscription eligibility. Scoped
|
|
1575
1735
|
* spend limits are reported separately by /v1/account/budget.
|
|
1576
1736
|
*
|
|
1577
1737
|
* Required permissions: read:account.
|
|
@@ -1591,13 +1751,11 @@ declare class EllipsisAccountModels {
|
|
|
1591
1751
|
* List selectable agent models.
|
|
1592
1752
|
*
|
|
1593
1753
|
* Grouped by manufacturer and model family, newest versions first
|
|
1594
|
-
* within each family
|
|
1595
|
-
* flagged (`is_default_agent_model`: the `default_model` of
|
|
1596
|
-
* `GET /v1/account/settings`).
|
|
1754
|
+
* within each family.
|
|
1597
1755
|
*
|
|
1598
1756
|
* Reads the same registry as the dashboard's rate table, so a
|
|
1599
1757
|
* client's model picker can never drift from what's offered. The
|
|
1600
|
-
* selectable set is global
|
|
1758
|
+
* selectable set is global.
|
|
1601
1759
|
*
|
|
1602
1760
|
* Required permissions: read:templates.
|
|
1603
1761
|
* API key: Supported.
|
|
@@ -1662,62 +1820,12 @@ declare class EllipsisAccountOnboarding {
|
|
|
1662
1820
|
* Higher permission levels include lower levels: read < write < delete.
|
|
1663
1821
|
*/
|
|
1664
1822
|
update(options?: {
|
|
1823
|
+
finished?: boolean;
|
|
1665
1824
|
other_use_case?: string | null;
|
|
1666
1825
|
use_cases?: (S['AccountOnboardingUseCase'])[];
|
|
1667
1826
|
work_email?: string | null;
|
|
1668
1827
|
}): Promise<S['AccountOnboardingResponse']>;
|
|
1669
1828
|
}
|
|
1670
|
-
declare class EllipsisAccountProvidersAnthropic {
|
|
1671
|
-
private readonly transport;
|
|
1672
|
-
constructor(transport: Transport);
|
|
1673
|
-
/**
|
|
1674
|
-
* Delete Anthropic Config
|
|
1675
|
-
*
|
|
1676
|
-
* Required permissions: delete:account.
|
|
1677
|
-
* API key: Supported.
|
|
1678
|
-
* CLI user token: Supported.
|
|
1679
|
-
* Session token: Not supported by session tokens, even with permissions.ellipsis enabled.
|
|
1680
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
1681
|
-
*/
|
|
1682
|
-
delete(): Promise<void>;
|
|
1683
|
-
/**
|
|
1684
|
-
* Get Anthropic Config
|
|
1685
|
-
*
|
|
1686
|
-
* Required permissions: read:account.
|
|
1687
|
-
* API key: Supported.
|
|
1688
|
-
* CLI user token: Supported.
|
|
1689
|
-
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration.
|
|
1690
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
1691
|
-
*/
|
|
1692
|
-
get(): Promise<S['AnthropicConfigResponse']>;
|
|
1693
|
-
/**
|
|
1694
|
-
* Put Anthropic Config
|
|
1695
|
-
*
|
|
1696
|
-
* Required permissions: write:account.
|
|
1697
|
-
* API key: Supported.
|
|
1698
|
-
* CLI user token: Supported.
|
|
1699
|
-
* Session token: Not supported by session tokens, even with permissions.ellipsis enabled.
|
|
1700
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
1701
|
-
*/
|
|
1702
|
-
set(options: {
|
|
1703
|
-
api_key: string;
|
|
1704
|
-
}): Promise<S['AnthropicConfigResponse']>;
|
|
1705
|
-
/**
|
|
1706
|
-
* Validate Anthropic Config
|
|
1707
|
-
*
|
|
1708
|
-
* Required permissions: write:account.
|
|
1709
|
-
* API key: Supported.
|
|
1710
|
-
* CLI user token: Supported.
|
|
1711
|
-
* Session token: Not supported by session tokens, even with permissions.ellipsis enabled.
|
|
1712
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
1713
|
-
*/
|
|
1714
|
-
validate(): Promise<S['ValidateAnthropicConfigResponse']>;
|
|
1715
|
-
}
|
|
1716
|
-
declare class EllipsisAccountProviders {
|
|
1717
|
-
private readonly transport;
|
|
1718
|
-
readonly anthropic: EllipsisAccountProvidersAnthropic;
|
|
1719
|
-
constructor(transport: Transport);
|
|
1720
|
-
}
|
|
1721
1829
|
declare class EllipsisAccountSettings {
|
|
1722
1830
|
private readonly transport;
|
|
1723
1831
|
constructor(transport: Transport);
|
|
@@ -1726,9 +1834,9 @@ declare class EllipsisAccountSettings {
|
|
|
1726
1834
|
*
|
|
1727
1835
|
* Get the organization settings.
|
|
1728
1836
|
*
|
|
1729
|
-
* Session
|
|
1730
|
-
*
|
|
1731
|
-
* supplied sections; PUT
|
|
1837
|
+
* Session budget ceiling, mention behavior, analytics,
|
|
1838
|
+
* retention, and notification contacts. PATCH replaces
|
|
1839
|
+
* supplied sections; PUT sets the budget ceiling only.
|
|
1732
1840
|
*
|
|
1733
1841
|
* Required permissions: read:defaults.
|
|
1734
1842
|
* API key: Supported.
|
|
@@ -1742,13 +1850,10 @@ declare class EllipsisAccountSettings {
|
|
|
1742
1850
|
*
|
|
1743
1851
|
* Set the organization settings.
|
|
1744
1852
|
*
|
|
1745
|
-
* Replaces both: `default_model` accepts an alias or canonical id
|
|
1746
|
-
* and is stored canonical, and cannot be cleared (it is the only
|
|
1747
|
-
* default a session's model resolves against);
|
|
1748
1853
|
* `budget_ceiling.session` is in US dollars, at most the platform
|
|
1749
1854
|
* ceiling, and null clears it.
|
|
1750
1855
|
* Refused for session tokens (potentially prompt-injected code must
|
|
1751
|
-
* not
|
|
1856
|
+
* not raise the organization's ceiling).
|
|
1752
1857
|
*
|
|
1753
1858
|
* Required permissions: write:defaults.
|
|
1754
1859
|
* API key: Requires a CLI user token belonging to an account administrator.
|
|
@@ -1756,29 +1861,26 @@ declare class EllipsisAccountSettings {
|
|
|
1756
1861
|
* Session token: Not supported by session tokens, even with permissions.ellipsis enabled.
|
|
1757
1862
|
* Higher permission levels include lower levels: read < write < delete.
|
|
1758
1863
|
*/
|
|
1759
|
-
set(options
|
|
1864
|
+
set(options?: {
|
|
1760
1865
|
budget_ceiling?: S['BudgetCeiling'];
|
|
1761
|
-
default_model: string;
|
|
1762
1866
|
}): Promise<S['OrganizationSettings']>;
|
|
1763
1867
|
/**
|
|
1764
1868
|
* Patch Account Settings
|
|
1765
1869
|
*
|
|
1766
1870
|
* Replace supplied settings sections without changing omitted sections.
|
|
1767
1871
|
*
|
|
1768
|
-
* Changes to
|
|
1872
|
+
* Changes to the budget ceiling require a GitHub administrator.
|
|
1769
1873
|
*
|
|
1770
1874
|
* Required permissions: write:defaults.
|
|
1771
|
-
* API key: Cannot set budget_ceiling
|
|
1772
|
-
* CLI user token: Requires an account administrator when setting budget_ceiling
|
|
1875
|
+
* API key: Cannot set budget_ceiling to a non-null value; those changes require a CLI user token belonging to an account administrator.
|
|
1876
|
+
* CLI user token: Requires an account administrator when setting budget_ceiling to a non-null value.
|
|
1773
1877
|
* Session token: Not supported by session tokens, even with permissions.ellipsis enabled.
|
|
1774
1878
|
* Higher permission levels include lower levels: read < write < delete.
|
|
1775
1879
|
*/
|
|
1776
1880
|
update(options?: {
|
|
1777
|
-
analytics?: S['AnalyticsSettings'] | null;
|
|
1881
|
+
analytics?: S['AnalyticsSettings-Input'] | null;
|
|
1778
1882
|
budget_ceiling?: S['BudgetCeiling'] | null;
|
|
1779
|
-
|
|
1780
|
-
data_retention?: S['DataRetentionSettings'] | null;
|
|
1781
|
-
default_model?: string | null;
|
|
1883
|
+
data_retention?: S['DataRetentionSettings-Input'] | null;
|
|
1782
1884
|
notifications?: S['NotificationSettings'] | null;
|
|
1783
1885
|
}): Promise<S['AccountSettings']>;
|
|
1784
1886
|
}
|
|
@@ -1789,7 +1891,6 @@ declare class EllipsisAccount {
|
|
|
1789
1891
|
readonly models: EllipsisAccountModels;
|
|
1790
1892
|
readonly notifications: EllipsisAccountNotifications;
|
|
1791
1893
|
readonly onboarding: EllipsisAccountOnboarding;
|
|
1792
|
-
readonly providers: EllipsisAccountProviders;
|
|
1793
1894
|
readonly settings: EllipsisAccountSettings;
|
|
1794
1895
|
constructor(transport: Transport);
|
|
1795
1896
|
/**
|
|
@@ -1877,7 +1978,7 @@ declare class EllipsisAccount {
|
|
|
1877
1978
|
*
|
|
1878
1979
|
* Omit period_start for the current UTC month; select a period returned
|
|
1879
1980
|
* in billing_periods to view history. Credit debits are distinct from
|
|
1880
|
-
* rated token usage through
|
|
1981
|
+
* rated token usage through a developer's Claude or Codex
|
|
1881
1982
|
* subscription. Rated usage estimates are not provider invoices.
|
|
1882
1983
|
* Pending and unresolved requests identify missing measurements.
|
|
1883
1984
|
*
|
|
@@ -1999,17 +2100,19 @@ declare class EllipsisAgents {
|
|
|
1999
2100
|
/**
|
|
2000
2101
|
* Start Agent Session
|
|
2001
2102
|
*
|
|
2002
|
-
*
|
|
2103
|
+
* Start an agent session.
|
|
2003
2104
|
*
|
|
2004
|
-
*
|
|
2005
|
-
*
|
|
2006
|
-
*
|
|
2007
|
-
*
|
|
2008
|
-
*
|
|
2009
|
-
*
|
|
2010
|
-
*
|
|
2011
|
-
*
|
|
2012
|
-
* `
|
|
2105
|
+
* Starts a session from the agent's saved `session` settings and
|
|
2106
|
+
* returns it. The body takes the fields of POST /v1/sessions, all
|
|
2107
|
+
* optional: each field you send replaces the agent's value for that
|
|
2108
|
+
* field, and each field you leave out keeps it. `metadata` is merged
|
|
2109
|
+
* into the agent's key by key, and a `null` value removes a key.
|
|
2110
|
+
* Other lists and maps, and `environment`, are replaced whole;
|
|
2111
|
+
* naming the other harness replaces the agent's. An empty body starts
|
|
2112
|
+
* the agent as written. If the agent declares input.json_schema, send
|
|
2113
|
+
* `input`; its rendered message is added after the prompt. A run-once
|
|
2114
|
+
* session needs a prompt or `input` from the agent or the request, or
|
|
2115
|
+
* the call is a 400.
|
|
2013
2116
|
*
|
|
2014
2117
|
* Required permissions: write:sessions.
|
|
2015
2118
|
* API key: Supported.
|
|
@@ -2018,11 +2121,19 @@ declare class EllipsisAgents {
|
|
|
2018
2121
|
* Higher permission levels include lower levels: read < write < delete.
|
|
2019
2122
|
* Grant match patterns can further restrict access to individual resources.
|
|
2020
2123
|
*/
|
|
2021
|
-
|
|
2022
|
-
budget?:
|
|
2124
|
+
start(agent_id: string, options?: {
|
|
2125
|
+
budget?: S['RunBudget'] | null;
|
|
2126
|
+
claude_code?: S['ClaudeOverrides'] | null;
|
|
2127
|
+
codex?: S['CodexOverrides'] | null;
|
|
2128
|
+
conversation?: S['SessionConversationConfig-Input'];
|
|
2129
|
+
environment?: string | S['EnvironmentConfig-Input'] | null;
|
|
2130
|
+
force_rebuild?: boolean;
|
|
2131
|
+
images?: (S['ImageAttachment'])[];
|
|
2023
2132
|
input?: Record<string, unknown> | null;
|
|
2024
|
-
metadata?: Record<string, string>;
|
|
2025
|
-
|
|
2133
|
+
metadata?: Record<string, string | null>;
|
|
2134
|
+
output?: S['OutputConfig'] | null;
|
|
2135
|
+
permissions?: S['PermissionsConfig-Input'] | null;
|
|
2136
|
+
skills?: (S['SkillRef-Input'])[] | null;
|
|
2026
2137
|
}): Promise<S['SessionResponse']>;
|
|
2027
2138
|
/**
|
|
2028
2139
|
* Get Agents Stream Ticket
|
|
@@ -2184,7 +2295,7 @@ declare class EllipsisAnalytics {
|
|
|
2184
2295
|
/**
|
|
2185
2296
|
* Get Analytics Reviews
|
|
2186
2297
|
*
|
|
2187
|
-
* Return
|
|
2298
|
+
* Return pull request review analytics.
|
|
2188
2299
|
*
|
|
2189
2300
|
* account_type scopes reviewers (bot|user|all) — e.g. "what apps
|
|
2190
2301
|
* review the most PRs?" is the reviewer facets here with
|
|
@@ -2459,7 +2570,6 @@ declare class EllipsisIntegrationsLinear {
|
|
|
2459
2570
|
* Higher permission levels include lower levels: read < write < delete.
|
|
2460
2571
|
*/
|
|
2461
2572
|
updateSettings(options: {
|
|
2462
|
-
mcp_inclusion?: S['McpInclusionMode'] | null;
|
|
2463
2573
|
teams: (S['LinearTeamUpdate'])[];
|
|
2464
2574
|
}): Promise<S['AccountActionResponse']>;
|
|
2465
2575
|
}
|
|
@@ -2538,18 +2648,6 @@ declare class EllipsisIntegrationsSlack {
|
|
|
2538
2648
|
* Higher permission levels include lower levels: read < write < delete.
|
|
2539
2649
|
*/
|
|
2540
2650
|
members(): Promise<S['SlackMembersListResponse']>;
|
|
2541
|
-
/**
|
|
2542
|
-
* Update Slack Settings
|
|
2543
|
-
*
|
|
2544
|
-
* Required permissions: write:integrations.
|
|
2545
|
-
* API key: Supported.
|
|
2546
|
-
* CLI user token: Supported.
|
|
2547
|
-
* Session token: Not supported by session tokens, even with permissions.ellipsis enabled.
|
|
2548
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
2549
|
-
*/
|
|
2550
|
-
updateSettings(options: {
|
|
2551
|
-
mcp_inclusion: S['McpInclusionMode'];
|
|
2552
|
-
}): Promise<S['AccountActionResponse']>;
|
|
2553
2651
|
}
|
|
2554
2652
|
declare class EllipsisIntegrations {
|
|
2555
2653
|
private readonly transport;
|
|
@@ -2578,166 +2676,30 @@ declare class EllipsisIntegrations {
|
|
|
2578
2676
|
*/
|
|
2579
2677
|
list(): Promise<S['GetIntegrationsResponse']>;
|
|
2580
2678
|
}
|
|
2581
|
-
declare class
|
|
2679
|
+
declare class EllipsisReviewsConfigs {
|
|
2582
2680
|
private readonly transport;
|
|
2583
2681
|
constructor(transport: Transport);
|
|
2584
2682
|
/**
|
|
2585
|
-
*
|
|
2586
|
-
*
|
|
2587
|
-
* Save a memory for future agent sessions.
|
|
2588
|
-
*
|
|
2589
|
-
* Memories are durable lessons shared across the whole
|
|
2590
|
-
* organization — conventions, past decisions, known gotchas that an
|
|
2591
|
-
* agent cannot derive from the repository itself. One concise fact
|
|
2592
|
-
* per memory; the description is what a reader sees in the index.
|
|
2593
|
-
*
|
|
2594
|
-
* Creating never overwrites: a path that already exists is a 409, so
|
|
2595
|
-
* correcting an existing memory is an explicit edit.
|
|
2596
|
-
*
|
|
2597
|
-
* Required permissions: write:memories.
|
|
2598
|
-
* API key: Supported.
|
|
2599
|
-
* CLI user token: Supported.
|
|
2600
|
-
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration.
|
|
2601
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
2602
|
-
* Grant match patterns can further restrict access to individual resources.
|
|
2603
|
-
*/
|
|
2604
|
-
create(options: {
|
|
2605
|
-
content: string;
|
|
2606
|
-
description: string;
|
|
2607
|
-
path: string;
|
|
2608
|
-
}): Promise<S['MemoryResponse']>;
|
|
2609
|
-
/**
|
|
2610
|
-
* Delete Memory
|
|
2611
|
-
*
|
|
2612
|
-
* Delete a memory that is no longer true.
|
|
2613
|
-
*
|
|
2614
|
-
* Available to every credential type, agents included — a wrong
|
|
2615
|
-
* memory is worse than a missing one. The deleted content is kept in
|
|
2616
|
-
* the memory's history for forensics, not for an undo API.
|
|
2617
|
-
*
|
|
2618
|
-
* Required permissions: delete:memories.
|
|
2619
|
-
* API key: Supported.
|
|
2620
|
-
* CLI user token: Supported.
|
|
2621
|
-
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration.
|
|
2622
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
2623
|
-
* Grant match patterns can further restrict access to individual resources.
|
|
2624
|
-
*/
|
|
2625
|
-
delete(memory_id: string, options?: {
|
|
2626
|
-
if_sha256?: string | null;
|
|
2627
|
-
}): Promise<void>;
|
|
2628
|
-
/**
|
|
2629
|
-
* Edit Memory
|
|
2630
|
-
*
|
|
2631
|
-
* Correct an existing memory in place.
|
|
2632
|
-
*
|
|
2633
|
-
* Pass description, content, or both. This never creates a memory (an
|
|
2634
|
-
* unknown id is a 404) and never moves one — the path is immutable, so
|
|
2635
|
-
* relocating a memory is a delete plus a create.
|
|
2636
|
-
*
|
|
2637
|
-
* Pass `if_sha256` (from a previous read) to make a concurrent write
|
|
2638
|
-
* a 409 instead of silently overwriting it.
|
|
2639
|
-
*
|
|
2640
|
-
* Required permissions: write:memories.
|
|
2641
|
-
* API key: Supported.
|
|
2642
|
-
* CLI user token: Supported.
|
|
2643
|
-
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration.
|
|
2644
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
2645
|
-
* Grant match patterns can further restrict access to individual resources.
|
|
2646
|
-
*/
|
|
2647
|
-
edit(memory_id: string, options?: {
|
|
2648
|
-
content?: string | null;
|
|
2649
|
-
description?: string | null;
|
|
2650
|
-
if_sha256?: string | null;
|
|
2651
|
-
}): Promise<S['MemoryResponse']>;
|
|
2652
|
-
/**
|
|
2653
|
-
* Get Memory
|
|
2654
|
-
*
|
|
2655
|
-
* Read one memory's full content.
|
|
2656
|
-
*
|
|
2657
|
-
* The id comes from the index returned by listing memories.
|
|
2658
|
-
*
|
|
2659
|
-
* Required permissions: read:memories.
|
|
2660
|
-
* API key: Supported.
|
|
2661
|
-
* CLI user token: Supported.
|
|
2662
|
-
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration.
|
|
2663
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
2664
|
-
* Grant match patterns can further restrict access to individual resources.
|
|
2665
|
-
*/
|
|
2666
|
-
get(memory_id: string): Promise<S['MemoryResponse']>;
|
|
2667
|
-
/**
|
|
2668
|
-
* List Memories
|
|
2669
|
-
*
|
|
2670
|
-
* List the organization's memories as a readable index.
|
|
2683
|
+
* List Review Configs
|
|
2671
2684
|
*
|
|
2672
|
-
*
|
|
2673
|
-
* memory, carrying its id, path, and description) plus the same
|
|
2674
|
-
* entries structured, each with every field except `content`. Read
|
|
2675
|
-
* the index, then fetch the ids whose content you want.
|
|
2685
|
+
* List code review configs: every kind: code_review file synced from a repository, newest first.
|
|
2676
2686
|
*
|
|
2677
|
-
* Required permissions: read:
|
|
2687
|
+
* Required permissions: read:reviews.
|
|
2678
2688
|
* API key: Supported.
|
|
2679
2689
|
* CLI user token: Supported.
|
|
2680
2690
|
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration.
|
|
2681
2691
|
* Higher permission levels include lower levels: read < write < delete.
|
|
2682
|
-
* Grant match patterns can further restrict access to individual resources.
|
|
2683
2692
|
*/
|
|
2684
|
-
list(
|
|
2685
|
-
prefix?: string | null;
|
|
2686
|
-
}): Promise<S['MemoriesListResponse']>;
|
|
2693
|
+
list(): Promise<S['ReviewConfigsListResponse']>;
|
|
2687
2694
|
}
|
|
2688
2695
|
declare class EllipsisReviews {
|
|
2689
2696
|
private readonly transport;
|
|
2697
|
+
readonly configs: EllipsisReviewsConfigs;
|
|
2690
2698
|
constructor(transport: Transport);
|
|
2691
|
-
/**
|
|
2692
|
-
* List Review Configs
|
|
2693
|
-
*
|
|
2694
|
-
* Required permissions: read:reviews.
|
|
2695
|
-
* API key: Supported.
|
|
2696
|
-
* CLI user token: Supported.
|
|
2697
|
-
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration.
|
|
2698
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
2699
|
-
*/
|
|
2700
|
-
configs(): Promise<S['GetCodeReviewConfigsResponse']>;
|
|
2701
|
-
/**
|
|
2702
|
-
* Create Review
|
|
2703
|
-
*
|
|
2704
|
-
* Run a code review on demand.
|
|
2705
|
-
*
|
|
2706
|
-
* Reviews an open pull request. Which pipeline runs is not a
|
|
2707
|
-
* parameter: it resolves from the repository's files exactly as
|
|
2708
|
-
* it does for a push, so an on-demand review never disagrees with
|
|
2709
|
-
* the automatic one.
|
|
2710
|
-
*
|
|
2711
|
-
* A review is one pipeline run over one commit range, with one
|
|
2712
|
-
* agent session per stage: `review.id` is the review id, and
|
|
2713
|
-
* `stages[].session_id` is where a client streams
|
|
2714
|
-
* (/sessions/{id}/stream on a stage session), since the review
|
|
2715
|
-
* itself is a pipeline rather than one process.
|
|
2716
|
-
*
|
|
2717
|
-
* Required permissions: write:reviews.
|
|
2718
|
-
* API key: Supported.
|
|
2719
|
-
* CLI user token: Supported.
|
|
2720
|
-
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration.
|
|
2721
|
-
* Higher permission levels include lower levels: read < write < delete.
|
|
2722
|
-
*/
|
|
2723
|
-
create(options: {
|
|
2724
|
-
owner: string;
|
|
2725
|
-
post?: boolean;
|
|
2726
|
-
pull_request_number: number;
|
|
2727
|
-
repo: string;
|
|
2728
|
-
scope?: S['ReviewScope'];
|
|
2729
|
-
}): Promise<S['Review']>;
|
|
2730
2699
|
/**
|
|
2731
2700
|
* Get Review
|
|
2732
2701
|
*
|
|
2733
|
-
*
|
|
2734
|
-
*
|
|
2735
|
-
* Includes its scope, the per-stage sessions, the parsed findings,
|
|
2736
|
-
* the finding counters, and the posting outcome.
|
|
2737
|
-
*
|
|
2738
|
-
* Findings only exist after a stage session finalizes — a running
|
|
2739
|
-
* review honestly reports [] / null, which is why a client
|
|
2740
|
-
* streams a stage session and then re-fetches the review.
|
|
2702
|
+
* Get a code review: its reviewers and every comment they returned, posted or held back.
|
|
2741
2703
|
*
|
|
2742
2704
|
* Required permissions: read:reviews.
|
|
2743
2705
|
* API key: Supported.
|
|
@@ -2751,14 +2713,6 @@ declare class EllipsisReviews {
|
|
|
2751
2713
|
*
|
|
2752
2714
|
* List code reviews, newest first.
|
|
2753
2715
|
*
|
|
2754
|
-
* `findings` and `configuration` are omitted (counters only). Each
|
|
2755
|
-
* filter is a set: repeat `repository`, `pull_request_number`, or
|
|
2756
|
-
* `status` to match any of several values. `start` and `end` bound
|
|
2757
|
-
* the review's creation time.
|
|
2758
|
-
*
|
|
2759
|
-
* Webhook-created reviews appear here too, so this answers "show
|
|
2760
|
-
* me every review on this PR".
|
|
2761
|
-
*
|
|
2762
2716
|
* Required permissions: read:reviews.
|
|
2763
2717
|
* API key: Supported.
|
|
2764
2718
|
* CLI user token: Supported.
|
|
@@ -2766,14 +2720,14 @@ declare class EllipsisReviews {
|
|
|
2766
2720
|
* Higher permission levels include lower levels: read < write < delete.
|
|
2767
2721
|
*/
|
|
2768
2722
|
list(options?: {
|
|
2769
|
-
repository?: (string)[];
|
|
2770
|
-
pull_request_number?: (number)[];
|
|
2771
|
-
status?: (S['
|
|
2723
|
+
repository?: (string)[] | null;
|
|
2724
|
+
pull_request_number?: (number)[] | null;
|
|
2725
|
+
status?: (S['CodeReviewStatus'])[] | null;
|
|
2772
2726
|
start?: string | null;
|
|
2773
2727
|
end?: string | null;
|
|
2774
2728
|
limit?: number;
|
|
2775
2729
|
cursor?: string | null;
|
|
2776
|
-
}): Promise<Page<S['
|
|
2730
|
+
}): Promise<Page<S['ReviewSummary'], S['ReviewsListResponse']>>;
|
|
2777
2731
|
}
|
|
2778
2732
|
declare class EllipsisSecrets {
|
|
2779
2733
|
private readonly transport;
|
|
@@ -3021,27 +2975,23 @@ declare class EllipsisSessions {
|
|
|
3021
2975
|
author_id?: number | null;
|
|
3022
2976
|
repo?: string | null;
|
|
3023
2977
|
unfinished?: boolean;
|
|
3024
|
-
exclude_code_review?: boolean;
|
|
3025
2978
|
}): Promise<Page<S['Session'], S['SessionsListResponse']>>;
|
|
3026
2979
|
/**
|
|
3027
|
-
* Get Session
|
|
2980
|
+
* Get Session Metrics
|
|
3028
2981
|
*
|
|
3029
|
-
*
|
|
2982
|
+
* List the CPU, memory, swap, and disk readings of every VM the
|
|
2983
|
+
* session ran on, oldest first.
|
|
3030
2984
|
*
|
|
3031
|
-
*
|
|
3032
|
-
* output.json_schema, as the raw JSON body with no envelope. 404
|
|
3033
|
-
* while the session is still running (poll GET /v1/sessions/{id}),
|
|
3034
|
-
* when the agent declares no output block, or when no turn
|
|
3035
|
-
* produced output.
|
|
2985
|
+
* A reading is taken every 5 seconds while the session runs.
|
|
3036
2986
|
*
|
|
3037
2987
|
* Required permissions: read:sessions.
|
|
3038
2988
|
* API key: Supported.
|
|
3039
2989
|
* CLI user token: Supported.
|
|
3040
|
-
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration.
|
|
2990
|
+
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration. Only the token's own session.
|
|
3041
2991
|
* Higher permission levels include lower levels: read < write < delete.
|
|
3042
2992
|
* Grant match patterns can further restrict access to individual resources.
|
|
3043
2993
|
*/
|
|
3044
|
-
|
|
2994
|
+
metrics(session_id: string): Promise<S['VMMetricsResponse']>;
|
|
3045
2995
|
/**
|
|
3046
2996
|
* Get Session Records
|
|
3047
2997
|
*
|
|
@@ -3094,7 +3044,7 @@ declare class EllipsisSessions {
|
|
|
3094
3044
|
*
|
|
3095
3045
|
* Send a message to a session.
|
|
3096
3046
|
*
|
|
3097
|
-
* 409 for
|
|
3047
|
+
* 409 for mention, non-interactive, closed, and out-of-budget
|
|
3098
3048
|
* sessions. Returns the created message and its turn; a retried send
|
|
3099
3049
|
* with the same idempotency_key returns the original ones.
|
|
3100
3050
|
*
|
|
@@ -3135,9 +3085,9 @@ declare class EllipsisSessions {
|
|
|
3135
3085
|
* Set exactly one of `claude_code` or `codex`. Its `prompt` is the
|
|
3136
3086
|
* first message; omit the prompt and the session starts with no
|
|
3137
3087
|
* turn, waiting for one. 400 when `conversation.interactive` is false
|
|
3138
|
-
* and there is no prompt, or when `budget` exceeds the
|
|
3139
|
-
* per-session ceiling. To
|
|
3140
|
-
* POST /v1/agents/{agent_id}/sessions.
|
|
3088
|
+
* and there is no prompt, or when `budget.session` exceeds the
|
|
3089
|
+
* organization's per-session ceiling. To start a session from a saved
|
|
3090
|
+
* agent, use POST /v1/agents/{agent_id}/sessions.
|
|
3141
3091
|
*
|
|
3142
3092
|
* Required permissions: write:sessions.
|
|
3143
3093
|
* API key: Supported.
|
|
@@ -3147,17 +3097,16 @@ declare class EllipsisSessions {
|
|
|
3147
3097
|
* Grant match patterns can further restrict access to individual resources.
|
|
3148
3098
|
*/
|
|
3149
3099
|
start(options?: {
|
|
3150
|
-
budget?:
|
|
3100
|
+
budget?: S['RunBudget'] | null;
|
|
3151
3101
|
claude_code?: S['ClaudeConfig-Input'] | null;
|
|
3152
3102
|
codex?: S['CodexConfig-Input'] | null;
|
|
3153
|
-
conversation?: S['SessionConversationConfig'];
|
|
3103
|
+
conversation?: S['SessionConversationConfig-Input'];
|
|
3154
3104
|
environment?: string | S['EnvironmentConfig-Input'] | null;
|
|
3155
3105
|
force_rebuild?: boolean;
|
|
3156
3106
|
images?: (S['ImageAttachment'])[];
|
|
3157
3107
|
metadata?: Record<string, string>;
|
|
3158
3108
|
output?: S['OutputConfig'] | null;
|
|
3159
3109
|
permissions?: S['PermissionsConfig-Input'] | null;
|
|
3160
|
-
repositories?: (string)[] | null;
|
|
3161
3110
|
skills?: (S['SkillRef-Input'])[] | null;
|
|
3162
3111
|
}): Promise<S['SessionResponse']>;
|
|
3163
3112
|
/**
|
|
@@ -3528,6 +3477,23 @@ declare class EllipsisVms {
|
|
|
3528
3477
|
limit?: number;
|
|
3529
3478
|
offset?: number;
|
|
3530
3479
|
}): Promise<S['VMListResponse']>;
|
|
3480
|
+
/**
|
|
3481
|
+
* List Vm Metrics
|
|
3482
|
+
*
|
|
3483
|
+
* List a VM's CPU, memory, swap, and disk readings, oldest first.
|
|
3484
|
+
*
|
|
3485
|
+
* A reading is taken every 5 seconds while a session runs on the VM.
|
|
3486
|
+
*
|
|
3487
|
+
* Required permissions: read:environments.
|
|
3488
|
+
* API key: Supported.
|
|
3489
|
+
* CLI user token: Supported.
|
|
3490
|
+
* Session token: Requires the ellipsis:api scope and the required grants in the token's permissions.ellipsis configuration. Only the token's own VM.
|
|
3491
|
+
* Higher permission levels include lower levels: read < write < delete.
|
|
3492
|
+
*/
|
|
3493
|
+
metrics(vm_id: string, options?: {
|
|
3494
|
+
start?: string | null;
|
|
3495
|
+
end?: string | null;
|
|
3496
|
+
}): Promise<S['VMMetricsResponse']>;
|
|
3531
3497
|
}
|
|
3532
3498
|
declare class EllipsisWebhooksDeliveries {
|
|
3533
3499
|
private readonly transport;
|
|
@@ -3683,7 +3649,6 @@ declare class Ellipsis {
|
|
|
3683
3649
|
readonly environments: EllipsisEnvironments;
|
|
3684
3650
|
readonly handlers: EllipsisHandlers;
|
|
3685
3651
|
readonly integrations: EllipsisIntegrations;
|
|
3686
|
-
readonly memories: EllipsisMemories;
|
|
3687
3652
|
readonly reviews: EllipsisReviews;
|
|
3688
3653
|
readonly secrets: EllipsisSecrets;
|
|
3689
3654
|
readonly sessions: EllipsisSessions;
|
|
@@ -3700,10 +3665,12 @@ declare class Ellipsis {
|
|
|
3700
3665
|
*
|
|
3701
3666
|
* Return the identity behind the caller's credential.
|
|
3702
3667
|
*
|
|
3703
|
-
*
|
|
3668
|
+
* Any valid credential may call this; no permission grant is needed.
|
|
3669
|
+
*
|
|
3670
|
+
* Required permissions: none; any valid credential.
|
|
3704
3671
|
* API key: Supported.
|
|
3705
3672
|
* CLI user token: Supported.
|
|
3706
|
-
* Session token: Requires the ellipsis:api scope
|
|
3673
|
+
* Session token: Requires the ellipsis:api scope; no permissions.ellipsis grant is needed.
|
|
3707
3674
|
* Higher permission levels include lower levels: read < write < delete.
|
|
3708
3675
|
*/
|
|
3709
3676
|
identity(): Promise<S['Identity']>;
|