@sumicom/quicksave-shared 0.8.1 → 0.8.3

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/cards.d.ts CHANGED
@@ -43,6 +43,12 @@ export interface ToolCallCard extends CardBase {
43
43
  toolUseId: string;
44
44
  /** Paired result — populated by the agent when tool_result arrives. */
45
45
  result?: ToolCallResult;
46
+ /**
47
+ * AskUserQuestion only: map of question text → answer text the user picked.
48
+ * Populated by the agent the moment the user responds, so the UI can show
49
+ * selections without waiting for (or parsing) the CLI's tool_result.
50
+ */
51
+ answers?: Record<string, string>;
46
52
  }
47
53
  export interface ToolCallResult {
48
54
  content: string;
@@ -149,6 +155,12 @@ export interface CardStreamEnd {
149
155
  cacheCreation?: number;
150
156
  /** Tokens read from the prompt cache this turn (Claude only). */
151
157
  cacheRead?: number;
158
+ /** Codex reports usage as session-cumulative; the provider converts to
159
+ * per-turn deltas above and surfaces the raw cumulative here so the
160
+ * agent can persist it and seed `prev` after a daemon restart. */
161
+ cumulativeInput?: number;
162
+ cumulativeOutput?: number;
163
+ cumulativeCachedInput?: number;
152
164
  };
153
165
  }
154
166
  //# sourceMappingURL=cards.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cards.d.ts","sourceRoot":"","sources":["../src/cards.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cards.d.ts","sourceRoot":"","sources":["../src/cards.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,15 @@ export declare const DEFAULT_PERMISSION_MODE = "auto";
8
8
  export declare const DEFAULT_REASONING_EFFORT: "high";
9
9
  export declare const DEFAULT_AGENT: AgentId;
10
10
  export declare const DEFAULT_SANDBOXED = true;
11
+ /** Auto-compact window for Claude Code sessions. Claude Code's CLI
12
+ * auto-promotes Sonnet/Opus to 1M context unless told otherwise; we cap at
13
+ * 200k by default so usage and pricing stay predictable. Users can opt up
14
+ * to 500k or 1M per-session from the settings drawer. */
15
+ export declare const DEFAULT_CONTEXT_WINDOW = 200000;
16
+ export declare const CONTEXT_WINDOW_OPTIONS: readonly [200000, 500000, 1000000];
17
+ export declare const DEFAULT_CODEX_MODEL = "gpt-5.5";
18
+ export declare const DEFAULT_CODEX_PERMISSION_MODE = "default";
19
+ export declare const DEFAULT_CODEX_REASONING_EFFORT = "medium";
11
20
  /** Prompt cache lifetime used by the PWA countdown above the chat input. */
12
21
  export declare const DEFAULT_KV_CACHE_LIFETIME_MS: number;
13
22
  //# sourceMappingURL=defaults.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;GAGG;AAEH,eAAO,MAAM,aAAa,oBAAoB,CAAC;AAC/C,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAC9C,eAAO,MAAM,wBAAwB,EAAG,MAAe,CAAC;AACxD,eAAO,MAAM,aAAa,EAAE,OAAuB,CAAC;AACpD,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC,4EAA4E;AAC5E,eAAO,MAAM,4BAA4B,QAAiB,CAAC"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;GAGG;AAIH,eAAO,MAAM,aAAa,oBAAoB,CAAC;AAC/C,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAC9C,eAAO,MAAM,wBAAwB,EAAG,MAAe,CAAC;AACxD,eAAO,MAAM,aAAa,EAAE,OAAuB,CAAC;AACpD,eAAO,MAAM,iBAAiB,OAAO,CAAC;AACtC;;;0DAG0D;AAC1D,eAAO,MAAM,sBAAsB,SAAU,CAAC;AAC9C,eAAO,MAAM,sBAAsB,oCAAyC,CAAC;AAK7E,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAC7C,eAAO,MAAM,6BAA6B,YAAY,CAAC;AACvD,eAAO,MAAM,8BAA8B,WAAW,CAAC;AAEvD,4EAA4E;AAC5E,eAAO,MAAM,4BAA4B,QAAiB,CAAC"}
package/dist/defaults.js CHANGED
@@ -2,11 +2,25 @@
2
2
  * Shared defaults — single source of truth for both agent and PWA.
3
3
  * Import from '@sumicom/quicksave-shared'.
4
4
  */
5
+ // Claude defaults. The wire protocol's `ClaudePreferences` and the PWA's
6
+ // claude-agent prefs both seed from these.
5
7
  export const DEFAULT_MODEL = 'claude-opus-4-7';
6
8
  export const DEFAULT_PERMISSION_MODE = 'auto';
7
9
  export const DEFAULT_REASONING_EFFORT = 'high';
8
10
  export const DEFAULT_AGENT = 'claude-code';
9
11
  export const DEFAULT_SANDBOXED = true;
12
+ /** Auto-compact window for Claude Code sessions. Claude Code's CLI
13
+ * auto-promotes Sonnet/Opus to 1M context unless told otherwise; we cap at
14
+ * 200k by default so usage and pricing stay predictable. Users can opt up
15
+ * to 500k or 1M per-session from the settings drawer. */
16
+ export const DEFAULT_CONTEXT_WINDOW = 200_000;
17
+ export const CONTEXT_WINDOW_OPTIONS = [200_000, 500_000, 1_000_000];
18
+ // Codex defaults — separate from Claude because the SDKs use different
19
+ // enums (codex preset ids vs Claude's permissionMode strings; codex's
20
+ // reasoning union differs too). Used to seed the codex agent's prefs.
21
+ export const DEFAULT_CODEX_MODEL = 'gpt-5.5';
22
+ export const DEFAULT_CODEX_PERMISSION_MODE = 'default';
23
+ export const DEFAULT_CODEX_REASONING_EFFORT = 'medium';
10
24
  /** Prompt cache lifetime used by the PWA countdown above the chat input. */
11
25
  export const DEFAULT_KV_CACHE_LIFETIME_MS = 60 * 60 * 1000;
12
26
  //# sourceMappingURL=defaults.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAC/C,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAC9C,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAe,CAAC;AACxD,MAAM,CAAC,MAAM,aAAa,GAAY,aAAa,CAAC;AACpD,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAEtC,4EAA4E;AAC5E,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAEH,yEAAyE;AACzE,2CAA2C;AAC3C,MAAM,CAAC,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAC/C,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAC9C,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAe,CAAC;AACxD,MAAM,CAAC,MAAM,aAAa,GAAY,aAAa,CAAC;AACpD,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AACtC;;;0DAG0D;AAC1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,OAAO,CAAC;AAC9C,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAU,CAAC;AAE7E,uEAAuE;AACvE,sEAAsE;AACtE,sEAAsE;AACtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAC7C,MAAM,CAAC,MAAM,6BAA6B,GAAG,SAAS,CAAC;AACvD,MAAM,CAAC,MAAM,8BAA8B,GAAG,QAAQ,CAAC;AAEvD,4EAA4E;AAC5E,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC"}
@@ -1,22 +1,28 @@
1
1
  /**
2
- * Check whether a tool call matches a Claude Code allow-list pattern.
2
+ * Check whether a tool call matches a Claude Code allow-list pattern,
3
+ * and generate suggested patterns from a tool call.
3
4
  *
4
- * Pattern formats:
5
- * - `ToolName` — matches all invocations of that tool
6
- * - `ToolName(pattern)` — matches the tool's primary input against pattern
7
- * - `*` in pattern — matches any characters within a single path/command segment
8
- * - `**` in pattern — matches any characters across segments (recursive)
9
- * - For Bash, `:` separates command words: `Bash(docker:*)` matches `docker compose up`
5
+ * Pattern formats follow Claude Code's `settings.json` permission rules
6
+ * (validated by the SDK's `lY1` rule validator):
7
+ *
8
+ * - `ToolName` — matches all invocations of that tool
9
+ * - `Bash(prefix:*)` — legacy command-prefix match (e.g. `Bash(npm:*)` `npm install`)
10
+ * - `Bash(npm run *)` — wildcard match anywhere in the command
11
+ * - `WebFetch(domain:host)` — exact host match (`*` allowed in host: `domain:*.example.com`)
12
+ * - `Read(./relative/**)` / `Read(//absolute/**)` — file-glob match (`//` prefix = absolute path)
13
+ * - `WebSearch` — pattern not supported by SDK; only the bare form
10
14
  */
11
15
  export declare function matchAllowPattern(pattern: string, toolName: string, toolInput: Record<string, unknown>): boolean;
12
16
  /**
13
17
  * Generate a suggested allow-list wildcard pattern from a tool call.
14
18
  *
15
- * The returned string follows the Claude Code `settings.local.json` syntax:
16
- * - `Bash(cmd:*)` — command-prefix match
17
- * - `WebFetch(https://host/path/*)` URL-prefix match
18
- * - `Read(//absolute/dir/**)` — recursive glob
19
- * - `ToolName` allow all invocations
19
+ * Returned patterns conform to Claude Code's `settings.json` allow-rule syntax
20
+ * (validated by the SDK):
21
+ * - `Bash(cmd:*)` legacy command-prefix match
22
+ * - `WebFetch(domain:host)` — host match (no scheme/path)
23
+ * - `Read(//absolute/dir/**)` recursive glob, `//` prefix = absolute
24
+ * - `Read(./relative/dir/**)` — recursive glob, project-relative
25
+ * - `ToolName` — allow all invocations
20
26
  */
21
27
  export declare function generateAllowPattern(toolName: string, toolInput: Record<string, unknown>): string;
22
28
  //# sourceMappingURL=permissions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,OAAO,CA6BT;AA8CD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,MAAM,CA0CR"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,OAAO,CAqCT;AAwHD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,MAAM,CA0CR"}
@@ -1,12 +1,16 @@
1
1
  /**
2
- * Check whether a tool call matches a Claude Code allow-list pattern.
2
+ * Check whether a tool call matches a Claude Code allow-list pattern,
3
+ * and generate suggested patterns from a tool call.
3
4
  *
4
- * Pattern formats:
5
- * - `ToolName` — matches all invocations of that tool
6
- * - `ToolName(pattern)` — matches the tool's primary input against pattern
7
- * - `*` in pattern — matches any characters within a single path/command segment
8
- * - `**` in pattern — matches any characters across segments (recursive)
9
- * - For Bash, `:` separates command words: `Bash(docker:*)` matches `docker compose up`
5
+ * Pattern formats follow Claude Code's `settings.json` permission rules
6
+ * (validated by the SDK's `lY1` rule validator):
7
+ *
8
+ * - `ToolName` — matches all invocations of that tool
9
+ * - `Bash(prefix:*)` — legacy command-prefix match (e.g. `Bash(npm:*)` `npm install`)
10
+ * - `Bash(npm run *)` — wildcard match anywhere in the command
11
+ * - `WebFetch(domain:host)` — exact host match (`*` allowed in host: `domain:*.example.com`)
12
+ * - `Read(./relative/**)` / `Read(//absolute/**)` — file-glob match (`//` prefix = absolute path)
13
+ * - `WebSearch` — pattern not supported by SDK; only the bare form
10
14
  */
11
15
  export function matchAllowPattern(pattern, toolName, toolInput) {
12
16
  // Parse pattern: "ToolName" or "ToolName(arg)"
@@ -20,39 +24,110 @@ export function matchAllowPattern(pattern, toolName, toolInput) {
20
24
  return false;
21
25
  // Extract the argument pattern (strip trailing ')')
22
26
  const argPattern = pattern.slice(parenIdx + 1, pattern.endsWith(')') ? -1 : undefined);
23
- // Get the tool's primary input value
24
- const inputValue = getPrimaryInput(toolName, toolInput);
25
- if (inputValue === null)
26
- return false;
27
- // For Bash: if the command contains shell metacharacters (chaining, piping,
28
- // redirection, subshells, etc.), refuse to auto-match — fall through to
29
- // permission prompt. Trying to split/parse shell syntax ourselves would
30
- // inevitably diverge from real bash behavior and create security holes.
31
27
  if (toolName === 'Bash') {
32
- if (hasShellMetachars(inputValue))
28
+ const command = toolInput.command?.trim();
29
+ if (!command)
30
+ return false;
31
+ // Refuse to auto-match if the command contains shell metacharacters that
32
+ // could chain or redirect execution. We can't safely parse shell syntax,
33
+ // so fall through to the permission prompt.
34
+ if (hasShellMetachars(command))
35
+ return false;
36
+ return matchBashPattern(argPattern, command);
37
+ }
38
+ if (toolName === 'WebFetch') {
39
+ const url = toolInput.url;
40
+ if (!url)
33
41
  return false;
34
- const normalized = inputValue.trim().replace(/\s+/g, ':');
35
- return wildcardMatch(argPattern, normalized);
42
+ return matchWebFetchPattern(argPattern, url);
36
43
  }
37
- return wildcardMatch(argPattern, inputValue);
44
+ if (FILE_PATTERN_TOOLS.has(toolName)) {
45
+ const filePath = getFilePath(toolName, toolInput);
46
+ if (!filePath)
47
+ return false;
48
+ return matchFilePattern(argPattern, filePath);
49
+ }
50
+ return false;
38
51
  }
39
- /** Extract the primary input value used for pattern matching. */
40
- function getPrimaryInput(toolName, input) {
41
- switch (toolName) {
42
- case 'Bash':
43
- return input.command ?? null;
44
- case 'WebFetch':
45
- return input.url ?? null;
46
- case 'WebSearch':
47
- return input.query ?? null;
48
- case 'Read':
49
- case 'Write':
50
- case 'Edit':
51
- case 'NotebookEdit':
52
- return (input.file_path ?? input.path) ?? null;
53
- default:
54
- return null;
52
+ const FILE_PATTERN_TOOLS = new Set([
53
+ 'Read',
54
+ 'Write',
55
+ 'Edit',
56
+ 'NotebookEdit',
57
+ 'NotebookRead',
58
+ 'Glob',
59
+ ]);
60
+ /** Extract the file path from a file-pattern-tool's input. */
61
+ function getFilePath(toolName, input) {
62
+ if (toolName === 'NotebookEdit' || toolName === 'NotebookRead') {
63
+ return input.notebook_path ?? null;
64
+ }
65
+ if (toolName === 'Glob') {
66
+ // Glob's primary input is `pattern`; matched directly as a file pattern.
67
+ return input.pattern ?? null;
68
+ }
69
+ return (input.file_path ?? input.path) ?? null;
70
+ }
71
+ /**
72
+ * Match a Bash command against a permission pattern.
73
+ *
74
+ * Two pattern syntaxes are supported (matching SDK behaviour):
75
+ * - Legacy prefix: `prefix:*` — matches if the command equals `prefix` or starts with `prefix `.
76
+ * Everything before `:*` is a literal prefix; embedded spaces are allowed
77
+ * (e.g. `git diff:*` matches `git diff --staged`).
78
+ * - Wildcard: any pattern using `*` — matches with `*` spanning any characters.
79
+ */
80
+ function matchBashPattern(argPattern, command) {
81
+ if (argPattern.endsWith(':*')) {
82
+ const prefix = argPattern.slice(0, -2);
83
+ if (!prefix)
84
+ return false; // `:*` alone is invalid per SDK
85
+ return command === prefix || command.startsWith(prefix + ' ');
55
86
  }
87
+ // Wildcard match. For Bash, `*` should span any characters (including '/'
88
+ // and spaces) so that patterns like `Bash(npm run *)` match
89
+ // `npm run test --watch`.
90
+ return wildcardMatch(argPattern, command, { crossSegments: true });
91
+ }
92
+ /**
93
+ * Match a WebFetch URL against a `domain:host` pattern.
94
+ *
95
+ * The host portion supports `*` wildcards (e.g. `domain:*.example.com`).
96
+ * The pattern must use the `domain:` prefix; the SDK validator rejects
97
+ * raw URL patterns.
98
+ */
99
+ function matchWebFetchPattern(argPattern, url) {
100
+ if (!argPattern.startsWith('domain:'))
101
+ return false;
102
+ const hostPattern = argPattern.slice('domain:'.length);
103
+ if (!hostPattern)
104
+ return false;
105
+ let hostname;
106
+ try {
107
+ hostname = new URL(url).hostname;
108
+ }
109
+ catch {
110
+ return false;
111
+ }
112
+ return wildcardMatch(hostPattern, hostname);
113
+ }
114
+ /**
115
+ * Match a file path against a permission pattern.
116
+ *
117
+ * Patterns may use:
118
+ * - `//absolute/path/**` — leading `//` denotes an absolute path; the extra
119
+ * slash is stripped before comparison so it matches values like `/absolute/path/file`.
120
+ * - `./relative/path/**` — project-relative; matched literally against the
121
+ * input value (which may already include `./`).
122
+ * - `~/home/relative` — left as-is; the matcher is not cwd-aware so user-edited
123
+ * `~` patterns will only match if the input value also begins with `~`.
124
+ */
125
+ function matchFilePattern(argPattern, filePath) {
126
+ let pattern = argPattern;
127
+ if (pattern.startsWith('//')) {
128
+ pattern = pattern.slice(1); // // → / (absolute path convention)
129
+ }
130
+ return wildcardMatch(pattern, filePath);
56
131
  }
57
132
  /** Returns true if the command contains shell metacharacters that could chain
58
133
  * or redirect execution. If so, we refuse to auto-allow — the user must
@@ -66,25 +141,35 @@ function hasShellMetachars(command) {
66
141
  // Check for shell operators: && || ; | > >> < << $( ` { }
67
142
  return /&&|\|\||[;|`]|[<>]{1,2}|\$\(|\{.*\}/.test(stripped);
68
143
  }
69
- /** Simple wildcard matcher supporting `*` (single segment) and `**` (recursive). */
70
- function wildcardMatch(pattern, value) {
71
- // Convert wildcard pattern to regex
72
- // Escape regex special chars, then convert wildcards
73
- let regex = pattern
144
+ /**
145
+ * Simple wildcard matcher.
146
+ *
147
+ * - `**` matches any characters (across `/`).
148
+ * - `*` matches any characters within a single path segment by default
149
+ * (i.e. excludes `/`). Pass `crossSegments: true` to make `*` span any chars,
150
+ * which is the right semantic for Bash commands and domain hostnames.
151
+ */
152
+ function wildcardMatch(pattern, value, opts = {}) {
153
+ const singleStar = opts.crossSegments ? '.*' : '[^/]*';
154
+ // Convert wildcard pattern to regex. Escape regex specials, then convert
155
+ // `**` and `*` to regex equivalents.
156
+ const regex = pattern
74
157
  .replace(/[.+^${}()|[\]\\]/g, '\\$&') // escape regex chars (not * and ?)
75
158
  .replace(/\*\*/g, '\0') // placeholder for **
76
- .replace(/\*/g, '[^/]*') // * = anything except /
77
- .replace(/\0/g, '.*'); // ** = anything
159
+ .replace(/\*/g, singleStar) // * = single segment (or any)
160
+ .replace(/\0/g, '.*'); // ** = any
78
161
  return new RegExp(`^${regex}$`).test(value);
79
162
  }
80
163
  /**
81
164
  * Generate a suggested allow-list wildcard pattern from a tool call.
82
165
  *
83
- * The returned string follows the Claude Code `settings.local.json` syntax:
84
- * - `Bash(cmd:*)` — command-prefix match
85
- * - `WebFetch(https://host/path/*)` URL-prefix match
86
- * - `Read(//absolute/dir/**)` — recursive glob
87
- * - `ToolName` allow all invocations
166
+ * Returned patterns conform to Claude Code's `settings.json` allow-rule syntax
167
+ * (validated by the SDK):
168
+ * - `Bash(cmd:*)` legacy command-prefix match
169
+ * - `WebFetch(domain:host)` — host match (no scheme/path)
170
+ * - `Read(//absolute/dir/**)` recursive glob, `//` prefix = absolute
171
+ * - `Read(./relative/dir/**)` — recursive glob, project-relative
172
+ * - `ToolName` — allow all invocations
88
173
  */
89
174
  export function generateAllowPattern(toolName, toolInput) {
90
175
  switch (toolName) {
@@ -94,30 +179,31 @@ export function generateAllowPattern(toolName, toolInput) {
94
179
  return toolName;
95
180
  try {
96
181
  const u = new URL(raw);
97
- // Keep origin + first path segment, wildcard the rest
98
- const segments = u.pathname.split('/').filter(Boolean);
99
- const prefix = segments.length > 0 ? `/${segments[0]}` : '';
100
- return `WebFetch(${u.origin}${prefix}/*)`;
182
+ return `WebFetch(domain:${u.hostname})`;
101
183
  }
102
184
  catch {
103
- return `WebFetch(${raw})`;
185
+ return 'WebFetch';
104
186
  }
105
187
  }
106
188
  case 'WebSearch':
107
- // Queries aren't pattern-matchable, allow all searches
189
+ // SDK validator rejects WebSearch patterns containing `*` or `?`.
190
+ // We don't have a meaningful query-prefix to suggest, so allow all.
108
191
  return 'WebSearch';
109
192
  case 'Bash': {
110
193
  const cmd = toolInput.command;
111
194
  if (!cmd)
112
195
  return toolName;
113
196
  const firstWord = cmd.trim().split(/\s+/)[0];
197
+ if (!firstWord)
198
+ return toolName;
114
199
  return `Bash(${firstWord}:*)`;
115
200
  }
116
201
  case 'Read':
117
202
  case 'Write':
118
203
  case 'Edit':
119
- case 'NotebookEdit': {
120
- const filePath = (toolInput.file_path ?? toolInput.path);
204
+ case 'NotebookEdit':
205
+ case 'NotebookRead': {
206
+ const filePath = getFilePath(toolName, toolInput);
121
207
  if (!filePath)
122
208
  return toolName;
123
209
  const dir = filePath.replace(/\/[^/]+$/, '');
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=permissions.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissions.test.d.ts","sourceRoot":"","sources":["../src/permissions.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,240 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { matchAllowPattern, generateAllowPattern } from './permissions.js';
3
+ describe('matchAllowPattern', () => {
4
+ describe('bare tool name', () => {
5
+ it('matches any Read invocation regardless of input', () => {
6
+ expect(matchAllowPattern('Read', 'Read', { file_path: '/anything' })).toBe(true);
7
+ });
8
+ it('matches Read with empty input', () => {
9
+ expect(matchAllowPattern('Read', 'Read', {})).toBe(true);
10
+ });
11
+ it('does not match a different tool name', () => {
12
+ expect(matchAllowPattern('Read', 'Write', { file_path: '/anything' })).toBe(false);
13
+ });
14
+ });
15
+ describe('Bash legacy cmd:* prefix', () => {
16
+ it('matches a command that starts with the prefix and a space', () => {
17
+ expect(matchAllowPattern('Bash(npm:*)', 'Bash', { command: 'npm install' })).toBe(true);
18
+ });
19
+ it('matches a command that exactly equals the prefix', () => {
20
+ expect(matchAllowPattern('Bash(npm:*)', 'Bash', { command: 'npm' })).toBe(true);
21
+ });
22
+ it('does not match when prefix is followed by non-boundary character', () => {
23
+ expect(matchAllowPattern('Bash(npm:*)', 'Bash', { command: 'npmtest' })).toBe(false);
24
+ });
25
+ it('matches a multi-word prefix containing a space', () => {
26
+ expect(matchAllowPattern('Bash(git diff:*)', 'Bash', { command: 'git diff --staged' })).toBe(true);
27
+ });
28
+ it('does not match when multi-word prefix differs', () => {
29
+ expect(matchAllowPattern('Bash(git diff:*)', 'Bash', { command: 'git status' })).toBe(false);
30
+ });
31
+ it('rejects an empty prefix', () => {
32
+ expect(matchAllowPattern('Bash(:*)', 'Bash', { command: 'anything' })).toBe(false);
33
+ });
34
+ });
35
+ describe('Bash wildcard *', () => {
36
+ it('matches when wildcard fills in arguments', () => {
37
+ expect(matchAllowPattern('Bash(npm run *)', 'Bash', { command: 'npm run test --watch' })).toBe(true);
38
+ });
39
+ it('matches when wildcard sits between literal segments', () => {
40
+ expect(matchAllowPattern('Bash(git * --push)', 'Bash', { command: 'git foo --push' })).toBe(true);
41
+ });
42
+ it('does not match when literal prefix differs', () => {
43
+ expect(matchAllowPattern('Bash(npm run *)', 'Bash', { command: 'yarn run test' })).toBe(false);
44
+ });
45
+ });
46
+ describe('Bash shell metacharacter rejection', () => {
47
+ it('rejects && chained commands even with permissive cmd:* pattern', () => {
48
+ expect(matchAllowPattern('Bash(echo:*)', 'Bash', { command: 'echo hi && rm -rf /' })).toBe(false);
49
+ });
50
+ it('rejects ; chained commands even with permissive wildcard pattern', () => {
51
+ expect(matchAllowPattern('Bash(echo *)', 'Bash', { command: 'echo a; echo b' })).toBe(false);
52
+ });
53
+ it('rejects pipe |', () => {
54
+ expect(matchAllowPattern('Bash(echo:*)', 'Bash', { command: 'echo a | grep b' })).toBe(false);
55
+ });
56
+ it('rejects $( command substitution', () => {
57
+ expect(matchAllowPattern('Bash(echo:*)', 'Bash', { command: 'echo $(whoami)' })).toBe(false);
58
+ });
59
+ it('rejects backtick command substitution', () => {
60
+ expect(matchAllowPattern('Bash(echo:*)', 'Bash', { command: 'echo `whoami`' })).toBe(false);
61
+ });
62
+ it('rejects > redirection', () => {
63
+ expect(matchAllowPattern('Bash(echo:*)', 'Bash', { command: 'echo a > /tmp/x' })).toBe(false);
64
+ });
65
+ it('rejects >> redirection', () => {
66
+ expect(matchAllowPattern('Bash(echo:*)', 'Bash', { command: 'echo a >> log' })).toBe(false);
67
+ });
68
+ it('rejects < redirection', () => {
69
+ expect(matchAllowPattern('Bash(echo:*)', 'Bash', { command: 'echo a < input' })).toBe(false);
70
+ });
71
+ it('allows && when fully inside double quotes', () => {
72
+ expect(matchAllowPattern('Bash(echo:*)', 'Bash', { command: 'echo "hello && world"' })).toBe(true);
73
+ });
74
+ it('allows ; when fully inside single quotes', () => {
75
+ expect(matchAllowPattern('Bash(echo:*)', 'Bash', { command: "echo 'a; b'" })).toBe(true);
76
+ });
77
+ });
78
+ describe('WebFetch domain pattern', () => {
79
+ it('matches a URL with the exact domain', () => {
80
+ expect(matchAllowPattern('WebFetch(domain:example.com)', 'WebFetch', {
81
+ url: 'https://example.com/path',
82
+ })).toBe(true);
83
+ });
84
+ it('does not match a different domain', () => {
85
+ expect(matchAllowPattern('WebFetch(domain:example.com)', 'WebFetch', {
86
+ url: 'https://other.com/path',
87
+ })).toBe(false);
88
+ });
89
+ it('matches a subdomain when pattern uses *.', () => {
90
+ expect(matchAllowPattern('WebFetch(domain:*.example.com)', 'WebFetch', {
91
+ url: 'https://docs.example.com/x',
92
+ })).toBe(true);
93
+ });
94
+ it('does not match the bare domain when pattern requires a subdomain', () => {
95
+ expect(matchAllowPattern('WebFetch(domain:*.example.com)', 'WebFetch', {
96
+ url: 'https://example.com/x',
97
+ })).toBe(false);
98
+ });
99
+ it('rejects pattern without the domain: prefix', () => {
100
+ expect(matchAllowPattern('WebFetch(example.com)', 'WebFetch', {
101
+ url: 'https://example.com/x',
102
+ })).toBe(false);
103
+ });
104
+ it('rejects a legacy https URL pattern', () => {
105
+ expect(matchAllowPattern('WebFetch(https://example.com/*)', 'WebFetch', {
106
+ url: 'https://example.com/x',
107
+ })).toBe(false);
108
+ });
109
+ it('rejects an empty domain', () => {
110
+ expect(matchAllowPattern('WebFetch(domain:)', 'WebFetch', {
111
+ url: 'https://example.com/x',
112
+ })).toBe(false);
113
+ });
114
+ it('returns false for malformed URL input without crashing', () => {
115
+ expect(matchAllowPattern('WebFetch(domain:example.com)', 'WebFetch', {
116
+ url: 'not a url',
117
+ })).toBe(false);
118
+ });
119
+ it('returns false when the url field is missing', () => {
120
+ expect(matchAllowPattern('WebFetch(domain:example.com)', 'WebFetch', {})).toBe(false);
121
+ });
122
+ });
123
+ describe('file tools — absolute path with // prefix', () => {
124
+ it('matches when file_path is under the pattern directory', () => {
125
+ expect(matchAllowPattern('Read(//home/jimmy/foo/**)', 'Read', {
126
+ file_path: '/home/jimmy/foo/bar.ts',
127
+ })).toBe(true);
128
+ });
129
+ it('does not match when file_path is outside the pattern directory', () => {
130
+ expect(matchAllowPattern('Read(//home/jimmy/foo/**)', 'Read', {
131
+ file_path: '/etc/passwd',
132
+ })).toBe(false);
133
+ });
134
+ it('does not match when the tool differs from the pattern tool', () => {
135
+ expect(matchAllowPattern('Read(//home/jimmy/foo/**)', 'Write', {
136
+ file_path: '/home/jimmy/foo/bar.ts',
137
+ })).toBe(false);
138
+ });
139
+ });
140
+ describe('file tools — relative path', () => {
141
+ it('matches when file_path is under the relative pattern', () => {
142
+ expect(matchAllowPattern('Edit(./src/**)', 'Edit', {
143
+ file_path: './src/components/Foo.tsx',
144
+ })).toBe(true);
145
+ });
146
+ it('does not match when file_path is in a different directory', () => {
147
+ expect(matchAllowPattern('Edit(./src/**)', 'Edit', {
148
+ file_path: './tests/Foo.tsx',
149
+ })).toBe(false);
150
+ });
151
+ });
152
+ describe('file tools — single * does not cross /', () => {
153
+ it('matches a file directly inside the directory', () => {
154
+ expect(matchAllowPattern('Read(/tmp/*)', 'Read', { file_path: '/tmp/x.txt' })).toBe(true);
155
+ });
156
+ it('does not match a file in a nested subdirectory', () => {
157
+ expect(matchAllowPattern('Read(/tmp/*)', 'Read', { file_path: '/tmp/sub/x.txt' })).toBe(false);
158
+ });
159
+ it('matches a nested subdirectory file when pattern uses **', () => {
160
+ expect(matchAllowPattern('Read(/tmp/**)', 'Read', { file_path: '/tmp/sub/x.txt' })).toBe(true);
161
+ });
162
+ });
163
+ describe('file tools — alternative input keys', () => {
164
+ it('falls back to path when file_path is missing for Edit', () => {
165
+ expect(matchAllowPattern('Edit(./src/**)', 'Edit', { path: './src/x.ts' })).toBe(true);
166
+ });
167
+ it('uses notebook_path for NotebookEdit', () => {
168
+ expect(matchAllowPattern('NotebookEdit(//abs/dir/**)', 'NotebookEdit', {
169
+ notebook_path: '/abs/dir/foo.ipynb',
170
+ })).toBe(true);
171
+ });
172
+ it('returns false when NotebookEdit input uses the wrong key', () => {
173
+ expect(matchAllowPattern('NotebookEdit(//abs/dir/**)', 'NotebookEdit', {
174
+ file_path: '/abs/dir/foo.ipynb',
175
+ })).toBe(false);
176
+ });
177
+ });
178
+ });
179
+ describe('generateAllowPattern', () => {
180
+ describe('WebFetch', () => {
181
+ it('extracts the domain from a typical https URL', () => {
182
+ expect(generateAllowPattern('WebFetch', { url: 'https://docs.anthropic.com/en/api/messages' })).toBe('WebFetch(domain:docs.anthropic.com)');
183
+ });
184
+ it('extracts the domain from an http URL', () => {
185
+ expect(generateAllowPattern('WebFetch', { url: 'http://example.com' })).toBe('WebFetch(domain:example.com)');
186
+ });
187
+ it('returns bare WebFetch for a malformed URL', () => {
188
+ expect(generateAllowPattern('WebFetch', { url: 'not a url' })).toBe('WebFetch');
189
+ });
190
+ it('returns bare WebFetch when url is missing', () => {
191
+ expect(generateAllowPattern('WebFetch', {})).toBe('WebFetch');
192
+ });
193
+ });
194
+ describe('WebSearch', () => {
195
+ it('always returns the bare tool name', () => {
196
+ expect(generateAllowPattern('WebSearch', { query: 'anything' })).toBe('WebSearch');
197
+ });
198
+ });
199
+ describe('Bash', () => {
200
+ it('extracts the first token as the prefix', () => {
201
+ expect(generateAllowPattern('Bash', { command: 'npm install foo' })).toBe('Bash(npm:*)');
202
+ });
203
+ it('uses only the first space-separated token', () => {
204
+ expect(generateAllowPattern('Bash', { command: 'git diff --staged' })).toBe('Bash(git:*)');
205
+ });
206
+ it('trims leading whitespace before extracting the token', () => {
207
+ expect(generateAllowPattern('Bash', { command: ' ls /tmp' })).toBe('Bash(ls:*)');
208
+ });
209
+ it('returns bare Bash for an empty command', () => {
210
+ expect(generateAllowPattern('Bash', { command: '' })).toBe('Bash');
211
+ });
212
+ });
213
+ describe('file tools — absolute paths get // prefix', () => {
214
+ it('uses the parent directory of file_path for Read', () => {
215
+ expect(generateAllowPattern('Read', { file_path: '/home/jimmy/foo/bar.ts' })).toBe('Read(//home/jimmy/foo/**)');
216
+ });
217
+ it('uses the parent directory of file_path for Edit', () => {
218
+ expect(generateAllowPattern('Edit', { file_path: '/etc/hosts' })).toBe('Edit(//etc/**)');
219
+ });
220
+ it('uses notebook_path for NotebookEdit', () => {
221
+ expect(generateAllowPattern('NotebookEdit', { notebook_path: '/home/jimmy/work/n.ipynb' })).toBe('NotebookEdit(//home/jimmy/work/**)');
222
+ });
223
+ });
224
+ describe('file tools — relative paths keep their prefix', () => {
225
+ it('preserves the ./ prefix in the generated pattern', () => {
226
+ expect(generateAllowPattern('Read', { file_path: './src/foo.ts' })).toBe('Read(./src/**)');
227
+ });
228
+ });
229
+ describe('file tools — input fallback', () => {
230
+ it('falls back to path when file_path is missing', () => {
231
+ expect(generateAllowPattern('Edit', { path: '/abs/x.ts' })).toBe('Edit(//abs/**)');
232
+ });
233
+ });
234
+ describe('unknown tool', () => {
235
+ it('returns the bare tool name', () => {
236
+ expect(generateAllowPattern('UnknownTool', {})).toBe('UnknownTool');
237
+ });
238
+ });
239
+ });
240
+ //# sourceMappingURL=permissions.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissions.test.js","sourceRoot":"","sources":["../src/permissions.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEvD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAO1E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAChC,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,IAAI,GACZ;IACD,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,YAAY,EAAE,WAAW,CAAC;CAC3B,CAIA;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAclD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAEzD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAE3D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,WAAW,GAAG,WAAW,CAErE;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA0BvD,CAAC"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEvD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAO1E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAChC,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,IAAI,GACZ;IACD,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,YAAY,EAAE,WAAW,CAAC;CAC3B,CAIA;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAclD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAEzD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAE3D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,WAAW,GAAG,WAAW,CAErE;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAmCvD,CAAC"}
package/dist/protocol.js CHANGED
@@ -84,5 +84,14 @@ export const REQUEST_RESPONSE_MAP = {
84
84
  'session:update-history': 'session:update-history:response',
85
85
  'session:delete-history': 'session:delete-history:response',
86
86
  'session:list-archived': 'session:list-archived:response',
87
+ // Terminals
88
+ 'terminal:create': 'terminal:create:response',
89
+ 'terminal:close': 'terminal:close:response',
90
+ 'terminal:input': 'terminal:input:response',
91
+ 'terminal:resize': 'terminal:resize:response',
92
+ 'terminal:rename': 'terminal:rename:response',
93
+ // File browser
94
+ 'files:list': 'files:list:response',
95
+ 'files:read': 'files:read:response',
87
96
  };
88
97
  //# sourceMappingURL=protocol.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAI,IAAiB,EAAE,OAAU;IAC5D,OAAO;QACL,EAAE,EAAE,iBAAiB,EAAE;QACvB,IAAI;QACJ,OAAO;QACP,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACtB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAiB,EACjB,OAAa;IAKb,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7C,MAAM,YAAY,GAAG,GAAG,IAAI,WAA0B,CAAC;IACvD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEhC,IACE,OAAO,MAAM,KAAK,QAAQ;QAC1B,MAAM,KAAK,IAAI;QACf,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ;QAC7B,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;QAC/B,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,EACpC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,MAAiB,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAgB;IAChD,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,YAAyB;IACtD,OAAO,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAgB,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAA2B;IAC1D,YAAY,EAAE,qBAAqB;IACnC,UAAU,EAAE,mBAAmB;IAC/B,WAAW,EAAE,oBAAoB;IACjC,aAAa,EAAE,sBAAsB;IACrC,YAAY,EAAE,qBAAqB;IACnC,SAAS,EAAE,kBAAkB;IAC7B,cAAc,EAAE,uBAAuB;IACvC,cAAc,EAAE,uBAAuB;IACvC,aAAa,EAAE,sBAAsB;IACrC,aAAa,EAAE,sBAAsB;IACrC,mBAAmB,EAAE,4BAA4B;IACjD,oBAAoB,EAAE,6BAA6B;IACnD,qBAAqB,EAAE,8BAA8B;IACrD,SAAS,EAAE,eAAe;IAC1B,IAAI,EAAE,MAAM;IACZ,kBAAkB;IAClB,cAAc,EAAE,uBAAuB;IACvC,eAAe,EAAE,wBAAwB;IACzC,eAAe,EAAE,wBAAwB;IACzC,qBAAqB,EAAE,8BAA8B;IACrD,wBAAwB,EAAE,iCAAiC;IAC3D,6BAA6B;IAC7B,wBAAwB,EAAE,iCAAiC;IAC3D,wBAAwB,EAAE,iCAAiC;IAC3D,uBAAuB,EAAE,gCAAgC;CAC1D,CAAC"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -14,7 +14,7 @@ export interface Message<T = unknown> {
14
14
  */
15
15
  repoPath?: string;
16
16
  }
17
- export type MessageType = 'ping' | 'pong' | 'handshake' | 'handshake:ack' | 'git:status' | 'git:status:response' | 'git:diff' | 'git:diff:response' | 'git:stage' | 'git:stage:response' | 'git:unstage' | 'git:unstage:response' | 'git:stage-patch' | 'git:stage-patch:response' | 'git:unstage-patch' | 'git:unstage-patch:response' | 'git:commit' | 'git:commit:response' | 'git:log' | 'git:log:response' | 'git:branches' | 'git:branches:response' | 'git:checkout' | 'git:checkout:response' | 'git:discard' | 'git:discard:response' | 'git:untrack' | 'git:untrack:response' | 'git:gitignore-add' | 'git:gitignore-add:response' | 'git:submodules' | 'git:submodules:response' | 'git:config-get' | 'git:config-get:response' | 'git:config-set' | 'git:config-set:response' | 'git:gitignore-read' | 'git:gitignore-read:response' | 'git:gitignore-write' | 'git:gitignore-write:response' | 'ai:generate-commit-summary' | 'ai:generate-commit-summary:response' | 'ai:commit-summary:clear' | 'ai:commit-summary:clear:response' | 'ai:commit-summary:updated' | 'ai:set-api-key' | 'ai:set-api-key:response' | 'ai:get-api-key-status' | 'ai:get-api-key-status:response' | 'agent:list-repos' | 'agent:list-repos:response' | 'agent:switch-repo' | 'agent:switch-repo:response' | 'agent:browse-directory' | 'agent:browse-directory:response' | 'agent:add-repo' | 'agent:add-repo:response' | 'agent:remove-repo' | 'agent:remove-repo:response' | 'agent:clone-repo' | 'agent:clone-repo:response' | 'agent:list-coding-paths' | 'agent:list-coding-paths:response' | 'agent:add-coding-path' | 'agent:add-coding-path:response' | 'agent:remove-coding-path' | 'agent:remove-coding-path:response' | 'agent:check-update' | 'agent:check-update:response' | 'agent:update' | 'agent:update:response' | 'agent:restart' | 'agent:restart:response' | 'claude:start' | 'claude:start:response' | 'claude:resume' | 'claude:resume:response' | 'claude:cancel' | 'claude:cancel:response' | 'claude:close' | 'claude:close:response' | 'claude:get-messages' | 'claude:get-messages:response' | 'claude:stream' | 'claude:stream:end' | 'claude:user-input-response' | 'claude:session-updated' | 'claude:set-preferences' | 'claude:set-preferences:response' | 'claude:preferences-updated' | 'claude:set-session-permission' | 'claude:set-session-permission:response' | 'claude:get-cards' | 'claude:get-cards:response' | 'session:set-config' | 'session:set-config:response' | 'session:config-updated' | 'session:control-request' | 'session:control-request:response' | 'session:update-history' | 'session:update-history:response' | 'session:delete-history' | 'session:delete-history:response' | 'session:list-archived' | 'session:list-archived:response' | 'session:history-updated' | 'push:subscription-offer' | 'push:subscription-offer:response' | 'codex:list-models' | 'codex:list-models:response' | 'project:list-summaries' | 'project:list-summaries:response' | 'project:list-repos' | 'project:list-repos:response' | 'project:delete' | 'project:delete:response' | 'bus:frame' | 'error';
17
+ export type MessageType = 'ping' | 'pong' | 'handshake' | 'handshake:ack' | 'git:status' | 'git:status:response' | 'git:diff' | 'git:diff:response' | 'git:stage' | 'git:stage:response' | 'git:unstage' | 'git:unstage:response' | 'git:stage-patch' | 'git:stage-patch:response' | 'git:unstage-patch' | 'git:unstage-patch:response' | 'git:commit' | 'git:commit:response' | 'git:log' | 'git:log:response' | 'git:branches' | 'git:branches:response' | 'git:checkout' | 'git:checkout:response' | 'git:discard' | 'git:discard:response' | 'git:untrack' | 'git:untrack:response' | 'git:gitignore-add' | 'git:gitignore-add:response' | 'git:submodules' | 'git:submodules:response' | 'git:config-get' | 'git:config-get:response' | 'git:config-set' | 'git:config-set:response' | 'git:gitignore-read' | 'git:gitignore-read:response' | 'git:gitignore-write' | 'git:gitignore-write:response' | 'ai:generate-commit-summary' | 'ai:generate-commit-summary:response' | 'ai:commit-summary:clear' | 'ai:commit-summary:clear:response' | 'ai:commit-summary:updated' | 'ai:set-api-key' | 'ai:set-api-key:response' | 'ai:get-api-key-status' | 'ai:get-api-key-status:response' | 'agent:list-repos' | 'agent:list-repos:response' | 'agent:switch-repo' | 'agent:switch-repo:response' | 'agent:browse-directory' | 'agent:browse-directory:response' | 'agent:add-repo' | 'agent:add-repo:response' | 'agent:remove-repo' | 'agent:remove-repo:response' | 'agent:clone-repo' | 'agent:clone-repo:response' | 'agent:list-coding-paths' | 'agent:list-coding-paths:response' | 'agent:add-coding-path' | 'agent:add-coding-path:response' | 'agent:remove-coding-path' | 'agent:remove-coding-path:response' | 'agent:check-update' | 'agent:check-update:response' | 'agent:update' | 'agent:update:response' | 'agent:restart' | 'agent:restart:response' | 'claude:start' | 'claude:start:response' | 'claude:resume' | 'claude:resume:response' | 'claude:cancel' | 'claude:cancel:response' | 'claude:close' | 'claude:close:response' | 'claude:end-task' | 'claude:end-task:response' | 'claude:get-messages' | 'claude:get-messages:response' | 'claude:stream' | 'claude:stream:end' | 'claude:user-input-response' | 'claude:session-updated' | 'claude:set-preferences' | 'claude:set-preferences:response' | 'claude:preferences-updated' | 'claude:set-session-permission' | 'claude:set-session-permission:response' | 'claude:get-cards' | 'claude:get-cards:response' | 'session:set-config' | 'session:set-config:response' | 'session:config-updated' | 'session:control-request' | 'session:control-request:response' | 'session:update-history' | 'session:update-history:response' | 'session:delete-history' | 'session:delete-history:response' | 'session:list-archived' | 'session:list-archived:response' | 'session:history-updated' | 'push:subscription-offer' | 'push:subscription-offer:response' | 'codex:list-models' | 'codex:list-models:response' | 'codex:login-start' | 'codex:login-start:response' | 'codex:login-status' | 'codex:login-status:response' | 'codex:login-cancel' | 'codex:login-cancel:response' | 'codex:login-updated' | 'project:list-summaries' | 'project:list-summaries:response' | 'project:list-repos' | 'project:list-repos:response' | 'project:delete' | 'project:delete:response' | 'terminal:create' | 'terminal:create:response' | 'terminal:close' | 'terminal:close:response' | 'terminal:input' | 'terminal:input:response' | 'terminal:resize' | 'terminal:resize:response' | 'terminal:rename' | 'terminal:rename:response' | 'files:list' | 'files:list:response' | 'files:read' | 'files:read:response' | 'bus:frame' | 'error';
18
18
  export type FileStatus = 'added' | 'modified' | 'deleted' | 'renamed' | 'copied';
19
19
  export interface FileChange {
20
20
  path: string;
@@ -79,6 +79,10 @@ export interface CodingPath {
79
79
  export interface ClaudePreferences {
80
80
  model: string;
81
81
  reasoningEffort?: 'low' | 'medium' | 'high' | 'max';
82
+ /** Auto-compact ceiling for Claude Code sessions (200k / 500k / 1M).
83
+ * Maps to the CLI's `CLAUDE_CODE_AUTO_COMPACT_WINDOW` env var; values
84
+ * above 200k also enable the `context-1m-2025-08-07` beta header. */
85
+ contextWindow?: number;
82
86
  }
83
87
  export interface ClaudeSetPreferencesRequestPayload {
84
88
  preferences: Partial<ClaudePreferences>;
@@ -200,6 +204,14 @@ export interface SessionRegistryEntry {
200
204
  noteHistory?: SessionNoteEntry[];
201
205
  permissionMode?: string;
202
206
  sandboxed?: boolean;
207
+ /** Model the session was last started/resumed with. For codex this is the
208
+ * user-requested model id; the actual running model is reported back via
209
+ * the provider's session-started event. */
210
+ model?: string;
211
+ /** Reasoning effort the session was last started/resumed with (Claude or codex). */
212
+ reasoningEffort?: string;
213
+ /** Auto-compact ceiling the session was last started/resumed with (Claude only). */
214
+ contextWindow?: number;
203
215
  }
204
216
  export interface SessionUpdateHistoryRequestPayload {
205
217
  sessionId: string;
@@ -246,6 +258,9 @@ export interface BroadcastSessionEntry extends SessionRegistryEntry {
246
258
  lastTurnCacheCreationTokens?: number;
247
259
  lastTurnCacheReadTokens?: number;
248
260
  lastTurnContextUsage?: ContextUsageBreakdown;
261
+ /** Most reliable cache-TTL countdown anchor. See `ClaudeSessionSummary.lastCacheTouchAt`.
262
+ * Populated only for sessions live in-memory; inactive sessions fall back to `lastTurnEndedAt`. */
263
+ lastCacheTouchAt?: number;
249
264
  }
250
265
  export interface SessionHistoryUpdatedPayload {
251
266
  cwd: string;
@@ -314,12 +329,53 @@ export interface HandshakeAckPayload {
314
329
  export interface CodexModelInfo {
315
330
  id: string;
316
331
  name: string;
332
+ /** Reasoning levels this model accepts, e.g. ['low', 'medium', 'high', 'xhigh'].
333
+ * Sourced from `model/list` `supportedReasoningEfforts` — the canonical
334
+ * per-account list. */
317
335
  reasoningEfforts?: string[];
336
+ /** Per-model default reasoning level (e.g. 'medium'). The PWA seeds the
337
+ * reasoning chip from this when no per-session override is set. */
338
+ defaultReasoningEffort?: string;
339
+ /** Token capacity reported by Codex. Currently NOT exposed by app-server's
340
+ * `model/list` response — left undefined so the PWA falls back to its
341
+ * hardcoded default for the context-usage badge. */
342
+ contextWindow?: number;
343
+ /** True for the model `model/list` flagged as the account default. The
344
+ * agent uses this to coerce unsupported user-selected models back to a
345
+ * valid choice instead of letting the request fail with `BadRequest`. */
346
+ isDefault?: boolean;
318
347
  }
319
348
  export interface CodexListModelsResponsePayload {
320
349
  models: CodexModelInfo[];
321
350
  error?: string;
351
+ /** Whether the daemon currently has valid Codex credentials. When
352
+ * false the PWA should offer to kick off the OAuth device flow. */
353
+ loggedIn?: boolean;
354
+ }
355
+ /** Device-code OAuth state mirrored from the spawned `codex login --device-auth`. */
356
+ export interface CodexLoginState {
357
+ /** True once auth credentials appear (either ChatGPT OAuth or OPENAI_API_KEY). */
358
+ loggedIn: boolean;
359
+ /** True while a `codex login --device-auth` subprocess is running. */
360
+ inProgress: boolean;
361
+ method?: 'chatgpt' | 'api-key';
362
+ /** Verification URL user opens in a browser (e.g. https://auth.openai.com/codex/device). */
363
+ verificationUrl?: string;
364
+ /** One-time device code (e.g. "YKFF-30JQC"). */
365
+ userCode?: string;
366
+ /** Absolute unix-ms expiry of the device code (~15 min after start). */
367
+ expiresAt?: number;
368
+ /** Populated when the most recent attempt failed or was cancelled. */
369
+ error?: string;
370
+ }
371
+ export interface CodexLoginStartResponsePayload extends CodexLoginState {
372
+ ok: boolean;
373
+ }
374
+ export type CodexLoginStatusResponsePayload = CodexLoginState;
375
+ export interface CodexLoginCancelResponsePayload {
376
+ ok: boolean;
322
377
  }
378
+ export type CodexLoginUpdatedPayload = CodexLoginState;
323
379
  export interface StatusRequestPayload {
324
380
  path?: string;
325
381
  }
@@ -705,6 +761,14 @@ export interface ClaudeSessionSummary {
705
761
  * Autonomous turns can run for minutes; anchoring on `lastPromptAt` would
706
762
  * expire the countdown prematurely. */
707
763
  lastTurnEndedAt?: number;
764
+ /** Epoch ms of the most recent SDK assistant/result message whose `usage`
765
+ * reported `cache_creation_input_tokens > 0` or `cache_read_input_tokens > 0`.
766
+ * This is the most reliable anchor for the prompt-cache TTL countdown:
767
+ * Anthropic refreshes the cache on every cache-hitting request, so each
768
+ * inner API call inside an autonomous turn (tool loop, compaction, etc.)
769
+ * resets the timer. Falls back to `lastTurnEndedAt` if absent. Populated
770
+ * in-memory by SessionManager; not persisted to the event store. */
771
+ lastCacheTouchAt?: number;
708
772
  /** Cumulative stats derived from the event store. */
709
773
  turnCount?: number;
710
774
  totalInputTokens?: number;
@@ -810,6 +874,8 @@ export interface SessionUpdatePayload {
810
874
  lastPromptAt?: number;
811
875
  /** See `ClaudeSessionSummary.lastTurnEndedAt`. */
812
876
  lastTurnEndedAt?: number;
877
+ /** See `ClaudeSessionSummary.lastCacheTouchAt`. */
878
+ lastCacheTouchAt?: number;
813
879
  turnCount?: number;
814
880
  totalInputTokens?: number;
815
881
  totalOutputTokens?: number;
@@ -826,8 +892,16 @@ export interface ClaudeStartRequestPayload {
826
892
  allowedTools?: string[];
827
893
  systemPrompt?: string;
828
894
  model?: string;
829
- permissionMode?: 'default' | 'acceptEdits' | 'bypassPermissions' | 'plan';
895
+ /** Claude-style modes (`default`/`acceptEdits`/`bypassPermissions`/`plan`)
896
+ * or codex-native modes (`never`/`on-request`/`on-failure`/`untrusted`).
897
+ * The agent maps either form to the right provider call. */
898
+ permissionMode?: string;
830
899
  sandboxed?: boolean;
900
+ /** Per-session reasoning depth — currently honored by the Codex provider
901
+ * only. SDK-valid values: `minimal` / `low` / `medium` / `high` / `xhigh`. */
902
+ reasoningEffort?: string;
903
+ /** Auto-compact ceiling for Claude Code (200k / 500k / 1M). Codex ignores. */
904
+ contextWindow?: number;
831
905
  }
832
906
  export interface ClaudeStartResponsePayload {
833
907
  success: boolean;
@@ -861,6 +935,13 @@ export interface ClaudeCloseResponsePayload {
861
935
  success: boolean;
862
936
  error?: string;
863
937
  }
938
+ export interface ClaudeEndTaskRequestPayload {
939
+ sessionId: string;
940
+ }
941
+ export interface ClaudeEndTaskResponsePayload {
942
+ success: boolean;
943
+ error?: string;
944
+ }
864
945
  export interface ClaudeGetMessagesRequestPayload {
865
946
  sessionId: string;
866
947
  cwd?: string;
@@ -950,4 +1031,169 @@ export interface ClaudeUserInputResponsePayload {
950
1031
  /** Wildcard pattern to persist in project .claude/settings.local.json allow list */
951
1032
  allowPattern?: string;
952
1033
  }
1034
+ /**
1035
+ * Summary for one live terminal — delivered via the `/terminals` bus
1036
+ * subscription (snapshot = all terminals; updates = one `TerminalSummary`
1037
+ * per upsert or a `TerminalRemovedPayload` for close).
1038
+ */
1039
+ export interface TerminalSummary {
1040
+ terminalId: string;
1041
+ title: string;
1042
+ cwd: string;
1043
+ shell: string;
1044
+ cols: number;
1045
+ rows: number;
1046
+ createdAt: number;
1047
+ lastActivityAt: number;
1048
+ exited: boolean;
1049
+ exitCode?: number | null;
1050
+ }
1051
+ export type TerminalsUpdate = {
1052
+ kind: 'upsert';
1053
+ terminal: TerminalSummary;
1054
+ } | {
1055
+ kind: 'remove';
1056
+ terminalId: string;
1057
+ };
1058
+ /**
1059
+ * Incremental payload on the `/terminals/:terminalId/output` stream.
1060
+ * Snapshot returns `TerminalOutputSnapshot` (the current scrollback buffer +
1061
+ * last known cols/rows); each update carries a fresh `chunk` of output that
1062
+ * the PWA feeds to xterm.js.
1063
+ */
1064
+ export interface TerminalOutputSnapshot {
1065
+ terminalId: string;
1066
+ /** Scrollback buffer — concatenated raw output (may contain ANSI escapes). */
1067
+ buffer: string;
1068
+ /** Monotonic sequence number of the last byte included in `buffer`. */
1069
+ seq: number;
1070
+ cols: number;
1071
+ rows: number;
1072
+ exited: boolean;
1073
+ exitCode?: number | null;
1074
+ }
1075
+ export interface TerminalOutputChunk {
1076
+ terminalId: string;
1077
+ /** Sequence number of this chunk — strictly increasing. */
1078
+ seq: number;
1079
+ chunk: string;
1080
+ /** True when this chunk carries the final exit notification. */
1081
+ exited?: boolean;
1082
+ exitCode?: number | null;
1083
+ }
1084
+ export interface TerminalCreateRequestPayload {
1085
+ cwd: string;
1086
+ /** Optional shell override; defaults to $SHELL or /bin/bash. */
1087
+ shell?: string;
1088
+ /** Optional explicit shell args — if omitted, a login flag appropriate to
1089
+ * the chosen shell is used (`-l`). */
1090
+ args?: string[];
1091
+ /** Initial viewport size — the PWA should send an accurate resize after
1092
+ * xterm.js lays out. */
1093
+ cols?: number;
1094
+ rows?: number;
1095
+ /** Optional display name; defaults to basename(shell). */
1096
+ title?: string;
1097
+ }
1098
+ export interface TerminalCreateResponsePayload {
1099
+ success: boolean;
1100
+ terminal?: TerminalSummary;
1101
+ error?: string;
1102
+ }
1103
+ export interface TerminalInputRequestPayload {
1104
+ terminalId: string;
1105
+ /** Raw bytes (as string) to write to the PTY master. */
1106
+ data: string;
1107
+ }
1108
+ export interface TerminalInputResponsePayload {
1109
+ success: boolean;
1110
+ error?: string;
1111
+ }
1112
+ export interface TerminalResizeRequestPayload {
1113
+ terminalId: string;
1114
+ cols: number;
1115
+ rows: number;
1116
+ }
1117
+ export interface TerminalResizeResponsePayload {
1118
+ success: boolean;
1119
+ error?: string;
1120
+ }
1121
+ export interface TerminalCloseRequestPayload {
1122
+ terminalId: string;
1123
+ /** When true, kill the PTY even if the child is still running. */
1124
+ force?: boolean;
1125
+ }
1126
+ export interface TerminalCloseResponsePayload {
1127
+ success: boolean;
1128
+ error?: string;
1129
+ }
1130
+ export interface TerminalRenameRequestPayload {
1131
+ terminalId: string;
1132
+ title: string;
1133
+ }
1134
+ export interface TerminalRenameResponsePayload {
1135
+ success: boolean;
1136
+ terminal?: TerminalSummary;
1137
+ error?: string;
1138
+ }
1139
+ export type FileEntryKind = 'file' | 'directory' | 'symlink' | 'other';
1140
+ export interface FileEntry {
1141
+ /** Basename only — the agent never returns full paths here. */
1142
+ name: string;
1143
+ kind: FileEntryKind;
1144
+ /** Bytes. Zero for directories. */
1145
+ size: number;
1146
+ /** Modification time, ms since epoch. */
1147
+ mtime: number;
1148
+ /** Files only: true when `size` exceeds the default preview cap so the UI
1149
+ * can gray out / warn before the user clicks. `files:read` still succeeds
1150
+ * for these and returns `kind: 'oversized'`. */
1151
+ oversized?: boolean;
1152
+ /** Symlinks only: true when the target resolves to a directory (treat the
1153
+ * entry as navigable). Undefined when the link is broken. */
1154
+ targetIsDirectory?: boolean;
1155
+ }
1156
+ export interface FilesListRequestPayload {
1157
+ /** Project root — every resolved path must stay inside this directory. */
1158
+ cwd: string;
1159
+ /** Path relative to `cwd`. Empty or '.' lists the root itself. */
1160
+ path: string;
1161
+ }
1162
+ export interface FilesListResponsePayload {
1163
+ success: boolean;
1164
+ /** Echoed request fields — lets the PWA reconcile against a stale response. */
1165
+ cwd?: string;
1166
+ path?: string;
1167
+ /** Canonical absolute path the agent actually read. */
1168
+ absolutePath?: string;
1169
+ /** Directories first, files second, alpha within each group. */
1170
+ entries?: FileEntry[];
1171
+ error?: string;
1172
+ }
1173
+ export interface FilesReadRequestPayload {
1174
+ cwd: string;
1175
+ path: string;
1176
+ /** Override the default 100 KiB preview cap. The agent clamps this to an
1177
+ * internal hard cap so payloads stay bounded. */
1178
+ maxBytes?: number;
1179
+ }
1180
+ /** Discriminator explaining whether `content` is present on a successful read. */
1181
+ export type FileReadKind = 'text' | 'binary' | 'oversized';
1182
+ export interface FilesReadResponsePayload {
1183
+ success: boolean;
1184
+ cwd?: string;
1185
+ path?: string;
1186
+ absolutePath?: string;
1187
+ /** Present on success — tags whether the UI should render text or a
1188
+ * placeholder. Absent only on failures (see `error`). */
1189
+ kind?: FileReadKind;
1190
+ /** UTF-8 decoded file body. Only populated when `kind === 'text'`. */
1191
+ content?: string;
1192
+ encoding?: 'utf-8';
1193
+ /** File size in bytes — present for every successful read (including
1194
+ * binary/oversized) so the UI can show "3.2 MB binary file". */
1195
+ size?: number;
1196
+ mtime?: number;
1197
+ error?: string;
1198
+ }
953
1199
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAmW/E,yEAAyE;AACzE,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAqmB3C,MAAM,CAAC,MAAM,aAAa,GAA4E;IACpG,EAAE,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE;IAC/F,EAAE,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,0BAA0B,EAAE;IACzG,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE;IAC1F,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE;CAC3F,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAgY/E,yEAAyE;AACzE,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AA8pB3C,MAAM,CAAC,MAAM,aAAa,GAA4E;IACpG,EAAE,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE;IAC/F,EAAE,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,0BAA0B,EAAE;IACzG,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE;IAC1F,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE;CAC3F,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sumicom/quicksave-shared",
3
- "version": "0.8.1",
3
+ "version": "0.8.3",
4
4
  "description": "Shared types and utilities for Quicksave",
5
5
  "license": "MIT",
6
6
  "repository": {