@meistrari/remy-cli 1.24.0 → 1.25.0-rc.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/README.md +3 -3
- package/dist/remy.js +62 -45
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -90,7 +90,7 @@ Terminal previews show up to 50 content blocks and 8,000 characters per block, w
|
|
|
90
90
|
|
|
91
91
|
Command and attachment feedback share progress, success, failure, and attention indicators. Failed stop requests show the reason and `esc` retry; failed complete/cancel requests restore the message prompt and show the retry command. Logout shows a confirmation with `y` to confirm and `Esc` to cancel.
|
|
92
92
|
|
|
93
|
-
**Change the model or effort:** enter `/model` or `/reasoning` (`/effort` is an alias) to pick a new model or reasoning effort for your next message. The model list contains only the session's harness (a Claude session offers Claude models, a Codex session Codex models), in the same order and with the same labels as the new-session wizard. Arrows move, `Enter` stages the pick, and `Esc` closes the picker without changing what is already staged. Nothing is sent until you send a message: the change travels with it and stays the session's setting afterward. Because every terminal follow-up is a Steer, a change sent while Remy is working switches the running turn from its next model request; otherwise it applies from the turn your message starts. The header shows the staged change as `→ Sonnet 5 · High (next message)`, then `(switching…)` until the runtime applies it. The timeline then records `Switched to Sonnet 5 · High` right after your message, or `Switched to Sonnet 5 · High (from next turn)` when the running turn could not switch; its details (`Ctrl+O`) then show the provider's reason when one was given. Picking the current value removes it from the staged change.
|
|
93
|
+
**Change the model or effort:** enter `/model` or `/reasoning` (`/effort` is an alias) to pick a new model or reasoning effort for your next message. The model list contains only the session's harness (a Claude session offers Claude models, a Codex session Codex models), in the same order and with the same labels as the new-session wizard. Arrows move, `Enter` stages the pick, and `Esc` closes the picker without changing what is already staged. Nothing is sent until you send a message: the change travels with it and stays the session's setting afterward. Because every terminal follow-up is a Steer, a change sent while Remy is working switches the running turn from its next model request; otherwise it applies from the turn your message starts. The header shows the staged change as `→ Sonnet 5.5 · High (next message)`, then `(switching…)` until the runtime applies it. The timeline then records `Switched to Sonnet 5.5 · High` right after your message, or `Switched to Sonnet 5.5 · High (from next turn)` when the running turn could not switch; its details (`Ctrl+O`) then show the provider's reason when one was given. Picking the current value removes it from the staged change.
|
|
94
94
|
|
|
95
95
|
Enter `/compact` to admit a durable main-thread context compaction control without sending a human message. Remy reports request admission immediately and shows the eventual completed, no-op, failed, or unknown provider result in retained activity. Compaction waits for a safe point and does not interrupt active work or jump ahead of an earlier Next message. While admission is pending, you can keep editing or open other commands; repeated `/compact` invocations do not send another request.
|
|
96
96
|
|
|
@@ -138,7 +138,7 @@ The interactive dashboard is the recommended path. Use these commands when a scr
|
|
|
138
138
|
remy new --repository owner/repository "Add a health check endpoint"
|
|
139
139
|
```
|
|
140
140
|
|
|
141
|
-
Repeat `--repository` to select more repositories from the same GitHub installation. If you do not select a repository, supply `--installation <github-installation-id>`. Repeat `--attach <path>` to upload files or directories; the 20 MiB per-attachment limit is measured directly for a file and across all regular files before compressing a directory. Remy sends each accepted directory as a gzip-compressed tar archive. Direct creation uses `medium` reasoning unless `--reasoning-effort` overrides it; omit `--model` to use the server's Claude `claude-opus-5-5` default. `--model` accepts a Codex model (`gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-5.5`) or a Claude model (`claude-opus-5-5`, `claude-sonnet-5`, `claude-fable-5-1`); the model chooses the session's harness, which stays fixed for the session. For example, `remy new --model claude-opus-5-5 --repository owner/repository "Add a health check endpoint"` starts a Claude session. In the interactive wizard, press `m` on the confirm step to cycle through every harness's models, shown as `Codex · GPT 6.0 Astra` or `Claude · Opus 5.5`. `remy new` creates the session from the prompt and flags, then opens it when the terminal is interactive.
|
|
141
|
+
Repeat `--repository` to select more repositories from the same GitHub installation. If you do not select a repository, supply `--installation <github-installation-id>`. Repeat `--attach <path>` to upload files or directories; the 20 MiB per-attachment limit is measured directly for a file and across all regular files before compressing a directory. Remy sends each accepted directory as a gzip-compressed tar archive. Direct creation uses `medium` reasoning unless `--reasoning-effort` overrides it; omit `--model` to use the server's Claude `claude-opus-5-5` default. `--model` accepts a Codex model (`gpt-6-astra`, `gpt-6.1-sol`, `gpt-6-sol`, `gpt-6-luna`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-5.5`) or a Claude model (`claude-opus-5-5`, `claude-sonnet-5-5`, `claude-fable-5-1`); the model chooses the session's harness, which stays fixed for the session. For example, `remy new --model claude-opus-5-5 --repository owner/repository "Add a health check endpoint"` starts a Claude session. In the interactive wizard, press `m` on the confirm step to cycle through every harness's models, shown as `Codex · GPT 6.0 Astra` or `Claude · Opus 5.5`. `remy new` creates the session from the prompt and flags, then opens it when the terminal is interactive.
|
|
142
142
|
|
|
143
143
|
Repeat `--mcp <offering-id>` to attach optional MCP servers (for example, `remy new --installation <id> --mcp <offering-id> --no-tui "Investigate the issue"`). These are offering IDs, not account or session-attachment IDs. Omitting the flag still includes the organization's CLI defaults; the server validates the selection.
|
|
144
144
|
|
|
@@ -163,7 +163,7 @@ Remy sends the prompt as **Steer**, then opens the conversation. Omitting the pr
|
|
|
163
163
|
To change the model or reasoning effort, pass `--model <name>`, `--reasoning-effort <low|medium|high|xhigh>`, or both with the prompt:
|
|
164
164
|
|
|
165
165
|
```bash
|
|
166
|
-
remy --session <session-id> --model claude-sonnet-5 --reasoning-effort high "Finish the migration"
|
|
166
|
+
remy --session <session-id> --model claude-sonnet-5-5 --reasoning-effort high "Finish the migration"
|
|
167
167
|
```
|
|
168
168
|
|
|
169
169
|
The change travels with that message and stays the session's setting for later messages. A running turn switches from its next model request; otherwise the change applies from the turn the prompt starts. Either flag without a prompt is rejected, because settings only change with a message. The session keeps its harness, so `--model` must name one of that harness's models; Remy checks this against the session before sending and names the harness's models when it does not match. Omit both flags to keep the current settings.
|
package/dist/remy.js
CHANGED
|
@@ -22,7 +22,7 @@ import { mkdir as mkdir6, readFile as readFile5, readdir as readdir3, rename as
|
|
|
22
22
|
import { homedir as homedir3, tmpdir as tmpdir2 } from "os";
|
|
23
23
|
import { dirname as dirname6, join as join10 } from "path";
|
|
24
24
|
|
|
25
|
-
// ../../node_modules/.bun/@meistrari+auth-cli@1.6.1+
|
|
25
|
+
// ../../node_modules/.bun/@meistrari+auth-cli@1.6.1+b17459b52849d8f2/node_modules/@meistrari/auth-cli/dist/index.mjs
|
|
26
26
|
import { setTimeout as setTimeout2 } from "timers/promises";
|
|
27
27
|
|
|
28
28
|
// ../../node_modules/.bun/jose@6.1.3/node_modules/jose/dist/webapi/lib/buffer_utils.js
|
|
@@ -129,7 +129,7 @@ function defineErrorCodes(codes) {
|
|
|
129
129
|
}]));
|
|
130
130
|
}
|
|
131
131
|
|
|
132
|
-
// ../../node_modules/.bun/@better-auth+api-key@1.6.26+
|
|
132
|
+
// ../../node_modules/.bun/@better-auth+api-key@1.6.26+2d3b268ab7e9362c/node_modules/@better-auth/api-key/dist/version-vgVyvied.mjs
|
|
133
133
|
var API_KEY_ERROR_CODES = defineErrorCodes({
|
|
134
134
|
INVALID_METADATA_TYPE: "metadata must be an object or undefined",
|
|
135
135
|
REFILL_AMOUNT_AND_INTERVAL_REQUIRED: "refillAmount is required when refillInterval is provided",
|
|
@@ -165,7 +165,7 @@ var API_KEY_ERROR_CODES = defineErrorCodes({
|
|
|
165
165
|
});
|
|
166
166
|
var PACKAGE_VERSION = "1.6.26";
|
|
167
167
|
|
|
168
|
-
// ../../node_modules/.bun/@better-auth+api-key@1.6.26+
|
|
168
|
+
// ../../node_modules/.bun/@better-auth+api-key@1.6.26+2d3b268ab7e9362c/node_modules/@better-auth/api-key/dist/client.mjs
|
|
169
169
|
var apiKeyClient = () => {
|
|
170
170
|
return {
|
|
171
171
|
id: "api-key",
|
|
@@ -180,10 +180,10 @@ var apiKeyClient = () => {
|
|
|
180
180
|
};
|
|
181
181
|
};
|
|
182
182
|
|
|
183
|
-
// ../../node_modules/.bun/@better-auth+sso@1.6.26+
|
|
183
|
+
// ../../node_modules/.bun/@better-auth+sso@1.6.26+b17459b52849d8f2/node_modules/@better-auth/sso/dist/version-CPj5-4mL.mjs
|
|
184
184
|
var PACKAGE_VERSION2 = "1.6.26";
|
|
185
185
|
|
|
186
|
-
// ../../node_modules/.bun/@better-auth+sso@1.6.26+
|
|
186
|
+
// ../../node_modules/.bun/@better-auth+sso@1.6.26+b17459b52849d8f2/node_modules/@better-auth/sso/dist/client.mjs
|
|
187
187
|
var ssoClient = (options) => {
|
|
188
188
|
return {
|
|
189
189
|
id: "sso-client",
|
|
@@ -196,13 +196,13 @@ var ssoClient = (options) => {
|
|
|
196
196
|
};
|
|
197
197
|
};
|
|
198
198
|
|
|
199
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
199
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/package.mjs
|
|
200
200
|
var version = "1.6.26";
|
|
201
201
|
|
|
202
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
202
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/version.mjs
|
|
203
203
|
var PACKAGE_VERSION3 = version;
|
|
204
204
|
|
|
205
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
205
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/broadcast-channel.mjs
|
|
206
206
|
var kBroadcastChannel = Symbol.for("better-auth:broadcast-channel");
|
|
207
207
|
var now = () => Math.floor(Date.now() / 1000);
|
|
208
208
|
var WindowBroadcastChannel = class {
|
|
@@ -436,7 +436,7 @@ var onMount = ($store, initialize) => {
|
|
|
436
436
|
};
|
|
437
437
|
});
|
|
438
438
|
};
|
|
439
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
439
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/equality.mjs
|
|
440
440
|
function isPlainObject(value) {
|
|
441
441
|
if (typeof value !== "object" || value === null)
|
|
442
442
|
return false;
|
|
@@ -473,7 +473,7 @@ function withEquality(store, isEqual) {
|
|
|
473
473
|
});
|
|
474
474
|
}
|
|
475
475
|
|
|
476
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
476
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/focus-manager.mjs
|
|
477
477
|
var kFocusManager = Symbol.for("better-auth:focus-manager");
|
|
478
478
|
var WindowFocusManager = class {
|
|
479
479
|
listeners = /* @__PURE__ */ new Set;
|
|
@@ -505,7 +505,7 @@ function getGlobalFocusManager() {
|
|
|
505
505
|
return globalThis[kFocusManager];
|
|
506
506
|
}
|
|
507
507
|
|
|
508
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
508
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/online-manager.mjs
|
|
509
509
|
var kOnlineManager = Symbol.for("better-auth:online-manager");
|
|
510
510
|
var WindowOnlineManager = class {
|
|
511
511
|
listeners = /* @__PURE__ */ new Set;
|
|
@@ -539,7 +539,7 @@ function getGlobalOnlineManager() {
|
|
|
539
539
|
return globalThis[kOnlineManager];
|
|
540
540
|
}
|
|
541
541
|
|
|
542
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
542
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/parser.mjs
|
|
543
543
|
var PROTO_POLLUTION_PATTERNS = {
|
|
544
544
|
proto: /"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,
|
|
545
545
|
constructor: /"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,
|
|
@@ -617,7 +617,7 @@ function parseJSON(value, options = { strict: true }) {
|
|
|
617
617
|
return betterJSONParse(value, options);
|
|
618
618
|
}
|
|
619
619
|
|
|
620
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
620
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/query.mjs
|
|
621
621
|
var isServer = () => typeof window === "undefined";
|
|
622
622
|
function isAuthQueryStateEqual(a, b) {
|
|
623
623
|
return isJsonEqual(a.data, b.data) && a.error === b.error && a.isPending === b.isPending && a.isRefetching === b.isRefetching && a.refetch === b.refetch;
|
|
@@ -743,7 +743,7 @@ var useAuthQuery = (initializedAtom, path, $fetch, options) => {
|
|
|
743
743
|
return value;
|
|
744
744
|
};
|
|
745
745
|
|
|
746
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
746
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/session-refresh.mjs
|
|
747
747
|
var now2 = () => Math.floor(Date.now() / 1000);
|
|
748
748
|
var FOCUS_REFETCH_RATE_LIMIT_SECONDS = 5;
|
|
749
749
|
function createSessionRefreshManager(opts) {
|
|
@@ -1060,7 +1060,7 @@ var BetterAuthError = class extends Error {
|
|
|
1060
1060
|
}
|
|
1061
1061
|
};
|
|
1062
1062
|
|
|
1063
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
1063
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/utils/url.mjs
|
|
1064
1064
|
var SLASH_CHAR_CODE = 47;
|
|
1065
1065
|
function trimTrailingSlashes(value) {
|
|
1066
1066
|
let end = value.length;
|
|
@@ -1167,7 +1167,7 @@ function isSafeUrlScheme(value) {
|
|
|
1167
1167
|
return !DANGEROUS_URL_SCHEMES.includes(parsed.protocol);
|
|
1168
1168
|
}
|
|
1169
1169
|
|
|
1170
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
1170
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/fetch-plugins.mjs
|
|
1171
1171
|
var redirectPlugin = {
|
|
1172
1172
|
id: "redirect",
|
|
1173
1173
|
name: "Redirect",
|
|
@@ -1183,7 +1183,7 @@ var redirectPlugin = {
|
|
|
1183
1183
|
} }
|
|
1184
1184
|
};
|
|
1185
1185
|
|
|
1186
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
1186
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/session-atom.mjs
|
|
1187
1187
|
var isServer2 = () => typeof window === "undefined";
|
|
1188
1188
|
function normalizeSessionResponse(res) {
|
|
1189
1189
|
if (typeof res === "object" && res !== null && "data" in res && "error" in res)
|
|
@@ -2024,7 +2024,7 @@ var betterFetch = async (url, options) => {
|
|
|
2024
2024
|
};
|
|
2025
2025
|
};
|
|
2026
2026
|
|
|
2027
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2027
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/config.mjs
|
|
2028
2028
|
var resolvePublicAuthUrl = (basePath) => {
|
|
2029
2029
|
if (typeof process === "undefined")
|
|
2030
2030
|
return;
|
|
@@ -2134,7 +2134,7 @@ var getClientConfig = (options, loadEnv) => {
|
|
|
2134
2134
|
};
|
|
2135
2135
|
};
|
|
2136
2136
|
|
|
2137
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2137
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/utils/is-atom.mjs
|
|
2138
2138
|
function isAtom(value) {
|
|
2139
2139
|
return typeof value === "object" && value !== null && "get" in value && typeof value.get === "function" && "lc" in value && typeof value.lc === "number";
|
|
2140
2140
|
}
|
|
@@ -2152,7 +2152,7 @@ function toKebabCase(input) {
|
|
|
2152
2152
|
return splitWords(input).map((word) => word.toLowerCase()).join("-");
|
|
2153
2153
|
}
|
|
2154
2154
|
|
|
2155
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2155
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/proxy.mjs
|
|
2156
2156
|
function getMethod2(path, knownPathMethods, args) {
|
|
2157
2157
|
const method = knownPathMethods[path];
|
|
2158
2158
|
const { fetchOptions, query: _query, ...body } = args || {};
|
|
@@ -2234,7 +2234,7 @@ function createDynamicPathProxy(routes, client, knownPathMethods, atoms, atomLis
|
|
|
2234
2234
|
return createProxy();
|
|
2235
2235
|
}
|
|
2236
2236
|
|
|
2237
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2237
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/client/vanilla.mjs
|
|
2238
2238
|
function createAuthClient(options) {
|
|
2239
2239
|
const { pluginPathMethods, pluginsActions, pluginsAtoms, $fetch, atomListeners, $store } = getClientConfig(options);
|
|
2240
2240
|
const resolvedHooks = {};
|
|
@@ -2248,7 +2248,7 @@ function createAuthClient(options) {
|
|
|
2248
2248
|
}, $fetch, pluginPathMethods, pluginsAtoms, atomListeners);
|
|
2249
2249
|
}
|
|
2250
2250
|
|
|
2251
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2251
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/additional-fields/client.mjs
|
|
2252
2252
|
var inferAdditionalFields = (schema) => {
|
|
2253
2253
|
return {
|
|
2254
2254
|
id: "additional-fields-client",
|
|
@@ -2256,7 +2256,7 @@ var inferAdditionalFields = (schema) => {
|
|
|
2256
2256
|
$InferServerPlugin: {}
|
|
2257
2257
|
};
|
|
2258
2258
|
};
|
|
2259
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2259
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/access/access.mjs
|
|
2260
2260
|
function unknownResourceResponse(requestedResource) {
|
|
2261
2261
|
return {
|
|
2262
2262
|
success: false,
|
|
@@ -2342,7 +2342,7 @@ function createAccessControl(s) {
|
|
|
2342
2342
|
};
|
|
2343
2343
|
}
|
|
2344
2344
|
|
|
2345
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2345
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/admin/access/statement.mjs
|
|
2346
2346
|
var defaultStatements = {
|
|
2347
2347
|
user: [
|
|
2348
2348
|
"create",
|
|
@@ -2392,7 +2392,7 @@ var defaultRoles = {
|
|
|
2392
2392
|
user: userAc
|
|
2393
2393
|
};
|
|
2394
2394
|
|
|
2395
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2395
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/admin/error-codes.mjs
|
|
2396
2396
|
var ADMIN_ERROR_CODES = defineErrorCodes({
|
|
2397
2397
|
FAILED_TO_CREATE_USER: "Failed to create user",
|
|
2398
2398
|
USER_ALREADY_EXISTS: "User already exists.",
|
|
@@ -2419,7 +2419,7 @@ var ADMIN_ERROR_CODES = defineErrorCodes({
|
|
|
2419
2419
|
PASSWORD_CANNOT_BE_UPDATED_VIA_UPDATE_USER: "Password cannot be updated through update-user. Use the set-user-password endpoint instead"
|
|
2420
2420
|
});
|
|
2421
2421
|
|
|
2422
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2422
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/admin/has-permission.mjs
|
|
2423
2423
|
var hasPermission = (input) => {
|
|
2424
2424
|
if (input.userId && input.options?.adminUserIds?.includes(input.userId))
|
|
2425
2425
|
return true;
|
|
@@ -2433,7 +2433,7 @@ var hasPermission = (input) => {
|
|
|
2433
2433
|
return false;
|
|
2434
2434
|
};
|
|
2435
2435
|
|
|
2436
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2436
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/admin/client.mjs
|
|
2437
2437
|
var adminClient = (options) => {
|
|
2438
2438
|
const roles = {
|
|
2439
2439
|
admin: adminAc,
|
|
@@ -2466,14 +2466,14 @@ var adminClient = (options) => {
|
|
|
2466
2466
|
$ERROR_CODES: ADMIN_ERROR_CODES
|
|
2467
2467
|
};
|
|
2468
2468
|
};
|
|
2469
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2469
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/email-otp/error-codes.mjs
|
|
2470
2470
|
var EMAIL_OTP_ERROR_CODES = defineErrorCodes({
|
|
2471
2471
|
OTP_EXPIRED: "OTP expired",
|
|
2472
2472
|
INVALID_OTP: "Invalid OTP",
|
|
2473
2473
|
TOO_MANY_ATTEMPTS: "Too many attempts"
|
|
2474
2474
|
});
|
|
2475
2475
|
|
|
2476
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2476
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/email-otp/client.mjs
|
|
2477
2477
|
var emailOTPClient = () => {
|
|
2478
2478
|
return {
|
|
2479
2479
|
id: "email-otp",
|
|
@@ -2486,7 +2486,7 @@ var emailOTPClient = () => {
|
|
|
2486
2486
|
$ERROR_CODES: EMAIL_OTP_ERROR_CODES
|
|
2487
2487
|
};
|
|
2488
2488
|
};
|
|
2489
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2489
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/jwt/client.mjs
|
|
2490
2490
|
var jwtClient = (options) => {
|
|
2491
2491
|
const jwksPath = options?.jwks?.jwksPath ?? "/jwks";
|
|
2492
2492
|
return {
|
|
@@ -2502,7 +2502,7 @@ var jwtClient = (options) => {
|
|
|
2502
2502
|
} })
|
|
2503
2503
|
};
|
|
2504
2504
|
};
|
|
2505
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2505
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/organization/access/statement.mjs
|
|
2506
2506
|
var defaultStatements2 = {
|
|
2507
2507
|
organization: ["update", "delete"],
|
|
2508
2508
|
member: [
|
|
@@ -2577,7 +2577,7 @@ var defaultRoles2 = {
|
|
|
2577
2577
|
member: memberAc
|
|
2578
2578
|
};
|
|
2579
2579
|
|
|
2580
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2580
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/organization/error-codes.mjs
|
|
2581
2581
|
var ORGANIZATION_ERROR_CODES = defineErrorCodes({
|
|
2582
2582
|
YOU_ARE_NOT_ALLOWED_TO_CREATE_A_NEW_ORGANIZATION: "You are not allowed to create a new organization",
|
|
2583
2583
|
YOU_HAVE_REACHED_THE_MAXIMUM_NUMBER_OF_ORGANIZATIONS: "You have reached the maximum number of organizations",
|
|
@@ -2640,7 +2640,7 @@ var ORGANIZATION_ERROR_CODES = defineErrorCodes({
|
|
|
2640
2640
|
INVALID_TEAM_ID: "Team id contains a reserved character"
|
|
2641
2641
|
});
|
|
2642
2642
|
|
|
2643
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2643
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/organization/permission.mjs
|
|
2644
2644
|
var hasPermissionFn = (input, acRoles) => {
|
|
2645
2645
|
if (!input.permissions)
|
|
2646
2646
|
return false;
|
|
@@ -2656,7 +2656,7 @@ var hasPermissionFn = (input, acRoles) => {
|
|
|
2656
2656
|
return false;
|
|
2657
2657
|
};
|
|
2658
2658
|
|
|
2659
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2659
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/organization/client.mjs
|
|
2660
2660
|
var clientSideHasPermission = (input) => {
|
|
2661
2661
|
return hasPermissionFn(input, input.options.roles || defaultRoles2);
|
|
2662
2662
|
};
|
|
@@ -2752,7 +2752,7 @@ var organizationClient = (options) => {
|
|
|
2752
2752
|
var inferOrgAdditionalFields = (schema) => {
|
|
2753
2753
|
return {};
|
|
2754
2754
|
};
|
|
2755
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2755
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/two-factor/error-code.mjs
|
|
2756
2756
|
var TWO_FACTOR_ERROR_CODES = defineErrorCodes({
|
|
2757
2757
|
OTP_NOT_ENABLED: "OTP not enabled",
|
|
2758
2758
|
OTP_HAS_EXPIRED: "OTP has expired",
|
|
@@ -2766,7 +2766,7 @@ var TWO_FACTOR_ERROR_CODES = defineErrorCodes({
|
|
|
2766
2766
|
INVALID_TWO_FACTOR_COOKIE: "Invalid two factor cookie"
|
|
2767
2767
|
});
|
|
2768
2768
|
|
|
2769
|
-
// ../../node_modules/.bun/better-auth@1.6.26+
|
|
2769
|
+
// ../../node_modules/.bun/better-auth@1.6.26+f53c92831b49a95c/node_modules/better-auth/dist/plugins/two-factor/client.mjs
|
|
2770
2770
|
var twoFactorClient = (options) => {
|
|
2771
2771
|
return {
|
|
2772
2772
|
id: "two-factor",
|
|
@@ -16338,7 +16338,7 @@ config(en_default());
|
|
|
16338
16338
|
// ../../node_modules/.bun/zod@4.3.6/node_modules/zod/index.js
|
|
16339
16339
|
var zod_default = exports_external;
|
|
16340
16340
|
|
|
16341
|
-
// ../../node_modules/.bun/@meistrari+auth-core@1.41.2+
|
|
16341
|
+
// ../../node_modules/.bun/@meistrari+auth-core@1.41.2+421037326a065dae/node_modules/@meistrari/auth-core/dist/index.mjs
|
|
16342
16342
|
var version3 = "1.41.2";
|
|
16343
16343
|
function parsedEnumValues(schema) {
|
|
16344
16344
|
return Object.fromEntries(Object.entries(schema.enum).map(([key, value]) => [
|
|
@@ -18651,7 +18651,7 @@ Object.defineProperty(Emittery, "listenerRemoved", {
|
|
|
18651
18651
|
configurable: false
|
|
18652
18652
|
});
|
|
18653
18653
|
|
|
18654
|
-
// ../../node_modules/.bun/@meistrari+auth-cli@1.6.1+
|
|
18654
|
+
// ../../node_modules/.bun/@meistrari+auth-cli@1.6.1+b17459b52849d8f2/node_modules/@meistrari/auth-cli/dist/index.mjs
|
|
18655
18655
|
import { readFile, mkdir, writeFile, unlink } from "fs/promises";
|
|
18656
18656
|
import { dirname } from "path";
|
|
18657
18657
|
|
|
@@ -32319,6 +32319,7 @@ var agentPromptSchema = zod_default2.object({
|
|
|
32319
32319
|
|
|
32320
32320
|
// ../../packages/agents-protocol/src/agent-model.ts
|
|
32321
32321
|
var codexModelIds = [
|
|
32322
|
+
"gpt-6.1-sol",
|
|
32322
32323
|
"gpt-6-astra",
|
|
32323
32324
|
"gpt-6-sol",
|
|
32324
32325
|
"gpt-6-luna",
|
|
@@ -32331,6 +32332,7 @@ var codexModelIds = [
|
|
|
32331
32332
|
"gpt-5.2"
|
|
32332
32333
|
];
|
|
32333
32334
|
var claudeModelIds = [
|
|
32335
|
+
"claude-sonnet-5-5",
|
|
32334
32336
|
"claude-opus-5-5",
|
|
32335
32337
|
"claude-sonnet-5",
|
|
32336
32338
|
"claude-fable-5-1",
|
|
@@ -32631,9 +32633,16 @@ var codexModelPresentation = {
|
|
|
32631
32633
|
maxInputTokens: CODEX_CONTEXT_WINDOW,
|
|
32632
32634
|
isMultiModal: true
|
|
32633
32635
|
},
|
|
32636
|
+
"gpt-6.1-sol": {
|
|
32637
|
+
label: "GPT 6.1 Sol",
|
|
32638
|
+
description: "Latest workhorse model for coding and everyday work.",
|
|
32639
|
+
relativeCost: 4,
|
|
32640
|
+
maxInputTokens: CODEX_CONTEXT_WINDOW,
|
|
32641
|
+
isMultiModal: true
|
|
32642
|
+
},
|
|
32634
32643
|
"gpt-6-sol": {
|
|
32635
32644
|
label: "GPT 6.0 Sol",
|
|
32636
|
-
description: "
|
|
32645
|
+
description: "Previous generation workhorse model.",
|
|
32637
32646
|
relativeCost: 4,
|
|
32638
32647
|
maxInputTokens: CODEX_CONTEXT_WINDOW,
|
|
32639
32648
|
isMultiModal: true
|
|
@@ -32684,12 +32693,12 @@ var claudeModelPresentation = {
|
|
|
32684
32693
|
maxOutputTokens: 128000,
|
|
32685
32694
|
isMultiModal: true
|
|
32686
32695
|
},
|
|
32687
|
-
"claude-sonnet-5": {
|
|
32688
|
-
label: "Sonnet 5",
|
|
32696
|
+
"claude-sonnet-5-5": {
|
|
32697
|
+
label: "Sonnet 5.5",
|
|
32689
32698
|
description: "Efficient for routine coding tasks.",
|
|
32690
32699
|
relativeCost: 2,
|
|
32691
32700
|
maxInputTokens: CLAUDE_CONTEXT_WINDOW,
|
|
32692
|
-
maxOutputTokens:
|
|
32701
|
+
maxOutputTokens: 128000,
|
|
32693
32702
|
isMultiModal: true
|
|
32694
32703
|
},
|
|
32695
32704
|
"claude-fable-5-1": {
|
|
@@ -32713,6 +32722,7 @@ var selectableAgentReasoningEfforts = ["low", "medium", "high", "xhigh"];
|
|
|
32713
32722
|
// ../../packages/agents-protocol/src/agent-catalog.ts
|
|
32714
32723
|
var selectableCodexModelIds = [
|
|
32715
32724
|
"gpt-6-astra",
|
|
32725
|
+
"gpt-6.1-sol",
|
|
32716
32726
|
"gpt-6-sol",
|
|
32717
32727
|
"gpt-6-luna",
|
|
32718
32728
|
"gpt-5.6-sol",
|
|
@@ -32722,7 +32732,7 @@ var selectableCodexModelIds = [
|
|
|
32722
32732
|
];
|
|
32723
32733
|
var selectableClaudeModelIds = [
|
|
32724
32734
|
"claude-opus-5-5",
|
|
32725
|
-
"claude-sonnet-5",
|
|
32735
|
+
"claude-sonnet-5-5",
|
|
32726
32736
|
"claude-fable-5-1"
|
|
32727
32737
|
];
|
|
32728
32738
|
var agentHarnesses = {
|
|
@@ -33110,6 +33120,10 @@ var promptTurnCorrelatedAgentEventSchema = agentSessionEventBaseSchema.extend({
|
|
|
33110
33120
|
type: zod_default2.literal("prompt.turn-correlated"),
|
|
33111
33121
|
payload: zod_default2.object({ commandId: zod_default2.string().min(1), turnId: zod_default2.string().min(1) })
|
|
33112
33122
|
});
|
|
33123
|
+
var turnProviderInitiatedAgentEventSchema = agentSessionEventBaseSchema.extend({
|
|
33124
|
+
type: zod_default2.literal("turn.provider-initiated"),
|
|
33125
|
+
payload: zod_default2.object({ turnId: zod_default2.string().min(1) })
|
|
33126
|
+
});
|
|
33113
33127
|
var turnEndedAgentEventSchema = agentTurnEventBaseSchema.extend({
|
|
33114
33128
|
type: zod_default2.literal("turn.ended"),
|
|
33115
33129
|
payload: objectRejectingKeys({
|
|
@@ -33338,6 +33352,7 @@ var agentEventSchema = zod_default2.discriminatedUnion("type", [
|
|
|
33338
33352
|
sessionEndedAgentEventSchema,
|
|
33339
33353
|
turnStartedAgentEventSchema,
|
|
33340
33354
|
promptTurnCorrelatedAgentEventSchema,
|
|
33355
|
+
turnProviderInitiatedAgentEventSchema,
|
|
33341
33356
|
turnEndedAgentEventSchema,
|
|
33342
33357
|
workObservedAgentEventSchema,
|
|
33343
33358
|
messageStartedAgentEventSchema,
|
|
@@ -34577,7 +34592,7 @@ function formatSessionJson({
|
|
|
34577
34592
|
`;
|
|
34578
34593
|
}
|
|
34579
34594
|
// src/version.ts
|
|
34580
|
-
var remyCliVersion = "1.
|
|
34595
|
+
var remyCliVersion = "1.25.0-rc.0";
|
|
34581
34596
|
|
|
34582
34597
|
// src/self-update.ts
|
|
34583
34598
|
import { spawn } from "child_process";
|
|
@@ -34773,6 +34788,8 @@ import { mkdir as mkdir4, readFile as readFile4, rename as rename3, writeFile as
|
|
|
34773
34788
|
import { dirname as dirname4, join as join4 } from "path";
|
|
34774
34789
|
|
|
34775
34790
|
// ../../packages/supervisor-protocol/src/agent-event-wrapper.ts
|
|
34791
|
+
var internalAgentEventTypes = ["prompt.turn-correlated", "turn.provider-initiated"];
|
|
34792
|
+
var internalAgentEventTypeSet = new Set(internalAgentEventTypes);
|
|
34776
34793
|
var wrappedSessionStartedAgentEventSchema = sessionStartedAgentEventSchema.extend({
|
|
34777
34794
|
type: zod_default2.literal("agent.session.started")
|
|
34778
34795
|
});
|
|
@@ -34895,7 +34912,7 @@ var wrappedAgentEventSchema = zod_default2.discriminatedUnion("type", [
|
|
|
34895
34912
|
wrappedUserInputResolvedAgentEventSchema,
|
|
34896
34913
|
wrappedErrorAgentEventSchema
|
|
34897
34914
|
]);
|
|
34898
|
-
var wrappedAgentEventTypes = agentEventTypes.filter((type) => type
|
|
34915
|
+
var wrappedAgentEventTypes = agentEventTypes.filter((type) => !internalAgentEventTypeSet.has(type)).map(wrapAgentEventType);
|
|
34899
34916
|
function wrapAgentEventType(type) {
|
|
34900
34917
|
return `agent.${type}`;
|
|
34901
34918
|
}
|