@youdie006/prodex 0.4.0 → 0.5.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 CHANGED
@@ -196,7 +196,7 @@ prodex pro browser ask --model Pro --pro-mode 확장 --project "my-project" "Rev
196
196
  prodex pro browser ask --effort "매우 높음" "Draft the release notes"
197
197
  ```
198
198
 
199
- Prerequisite: selection matches menu items by their visible text in the **Korean ChatGPT UI** (즉시/중간/높음/매우 높음, Pro 기본/확장, "프로젝트" sidebar labels). If your ChatGPT display language is not Korean, the selection flags will fail with "menu item not found"; either switch the UI language or send without selection flags.
199
+ Prerequisite: selection matches menu items by their visible text in the **Korean ChatGPT UI** (즉시/중간/높음/매우 높음, Pro 기본/확장, "프로젝트" sidebar labels). If your ChatGPT display language is not Korean, the `--effort`/`--pro-mode`/`--project` flags will fail with "menu item not found"; either switch the UI language, send without selection flags, or use the escape hatch: `--model "<exact label>"` clicks any radio entry in the picker by the exact text your UI shows (run `pro browser models` to list them).
200
200
 
201
201
  To see the labels your account currently shows, list them read-only (opens the menu, reads it, presses Escape — nothing is selected):
202
202
 
@@ -207,15 +207,16 @@ prodex pro browser models
207
207
  - `--model` picks the composer model by its exact menu label. `Pro` is verified end-to-end. Models whose menu entry opens a submenu of variants (for example GPT-5.5) are rejected with a clear error instead of silently keeping the previous model; direct variant selection is planned.
208
208
  - `--pro-mode 기본|확장` selects the Pro sub-mode; it applies only when the model is Pro. `확장` can think for minutes, so it raises the default `--timeout-ms` from 90000 to 300000 (an explicit `--timeout-ms` always wins).
209
209
  - `--effort 즉시|중간|높음|"매우 높음"` sets the reasoning effort. English aliases `instant`/`medium`/`high`/`max` are accepted. The effort options and Pro share one radio group in ChatGPT, so picking an effort switches the composer to the standard reasoning model and deselects Pro; for the same reason `--pro-mode` and `--effort` cannot be combined.
210
- - `--project "name"` enters an existing sidebar project before sending. It cannot be combined with `--target-url` (the project click would navigate away from the confirmed tab). Creating a new project from the CLI is not supported yet; make it in ChatGPT first, then pass `--project`.
210
+ - `--project "name"` enters an existing sidebar project before sending. `--project-new "name"` creates a new project (sidebar 새 프로젝트 popover, committed with Enter) and sends inside it. Neither can be combined with `--target-url` (the project step would navigate away from the confirmed tab), and `--project-new` never comes from saved defaults creating a project is always an explicit per-ask choice.
211
211
 
212
212
  Selection clicks are guarded: prodex refuses to click a control that is covered or out of view, waits for the menu to actually open instead of sleeping a fixed delay, and treats a menu that stays open after a pick as a failed selection. If any step fails, it backs out with Escape and reports a blocker instead of sending with the wrong model. Note that an applied selection stays active in your ChatGPT session after the send — switch back manually if you were on a different model.
213
213
 
214
- Persist defaults so you can omit these flags on routine asks; a per-ask flag always overrides the saved default. View saved defaults with `prodex status`, and clear one with the matching `--clear-*` flag:
214
+ Persist defaults so you can omit these flags on routine asks; a per-ask flag always overrides the saved default. View saved defaults with `prodex status`, clear one with the matching `--clear-*` flag, or answer a short wizard instead of remembering flags:
215
215
 
216
216
  ```bash
217
217
  prodex setup --model Pro --pro-mode 확장 --project "my-project"
218
218
  prodex setup --clear-project
219
+ prodex setup --interactive # asks model / Pro sub-mode or effort / project
219
220
  ```
220
221
 
221
222
  Whatever selection is applied is recorded on the consult receipt (`metadata.selection`); receipt display output redacts the project name, keeping only the model axes visible. `prodex` only clicks the picker you can see; it never selects a model, effort, or project silently outside the visible browser.
@@ -241,6 +242,14 @@ prodex results reseal <task-id> --confirm-current-result
241
242
 
242
243
  This writes a new local `task_completed` receipt for the current result payload. Prefer the explicit task id you just reviewed; `latest` is accepted for convenience but resolves from the current raw result list at execution time. It does not reseal unsigned receipts, forged receipts, or receipts that already point at a different result digest.
243
244
 
245
+ Receipts are HMAC-signed with a local key in `.bridge/receipt-key.local`. If you suspect the key was exposed, rotate it:
246
+
247
+ ```bash
248
+ prodex receipts rotate-key
249
+ ```
250
+
251
+ New receipts are signed with the fresh key; previous keys stay in the file (verification only) so receipts signed before the rotation remain trusted.
252
+
244
253
  To send into a specific visible Project or thread, open that ChatGPT URL in the dedicated browser first, confirm it is the right destination, then pass the same URL:
245
254
 
246
255
  ```bash
@@ -137,6 +137,9 @@ export declare function submenuItemRectExpression(label: string): string;
137
137
  export declare function proRadioRectExpression(): string;
138
138
  export declare function proSubmenuExpanderRectExpression(): string;
139
139
  export declare function projectItemRectExpression(name: string): string;
140
+ export declare function newProjectButtonRectExpression(): string;
141
+ export declare function newProjectNameInputRectExpression(): string;
142
+ export declare function newProjectNameInputVisibleExpression(): string;
140
143
  export declare function sendChatGptPrompt(options: SendChatGptPromptOptions): Promise<SendChatGptPromptResult>;
141
144
  export interface ChatGptModelOption {
142
145
  label: string;
@@ -477,7 +477,7 @@ export function modelButtonRectExpression() {
477
477
  const b = [...scope.querySelectorAll('[aria-haspopup="menu"]')].find((el) => {
478
478
  const t = (el.textContent || "").trim();
479
479
  const aria = el.getAttribute("aria-label") || "";
480
- return /\\S/.test(t) && !/파일|첨부|받아쓰기|음성|dictation|attach/i.test(t + aria);
480
+ return /\\S/.test(t) && !/파일|첨부|받아쓰기|음성|dictation|attach|file|voice|record|search|mic/i.test(t + aria);
481
481
  });
482
482
  if (!b) return { ok: false, reason: "model selector button not found" };
483
483
  return clickPoint(b);
@@ -635,9 +635,97 @@ async function selectModelReasoning(cdp, options) {
635
635
  throw error;
636
636
  }
637
637
  }
638
+ export function newProjectButtonRectExpression() {
639
+ return `(() => {${CLICK_POINT_SNIPPET}
640
+ const el =
641
+ document.querySelector('button[aria-label="새 프로젝트"]') ||
642
+ [...document.querySelectorAll('button,[role="button"]')].find((b) =>
643
+ /새 프로젝트|new project/i.test(((b.textContent || "") + (b.getAttribute("aria-label") || "")).trim())
644
+ );
645
+ if (!el) return { ok: false, reason: "new-project button not found in the sidebar" };
646
+ return clickPoint(el);
647
+ })()`;
648
+ }
649
+ // The new-project popover has a single visible text input for the name;
650
+ // creation is committed by pressing Enter (there is no dedicated create button).
651
+ const VISIBLE_TEXT_INPUT_FINDER = `
652
+ const findNameInput = () =>
653
+ [...document.querySelectorAll('input[type="text"]')].find((i) => {
654
+ const r = i.getBoundingClientRect();
655
+ return r.width > 0 && r.height > 0;
656
+ });`;
657
+ export function newProjectNameInputRectExpression() {
658
+ return `(() => {${CLICK_POINT_SNIPPET}${VISIBLE_TEXT_INPUT_FINDER}
659
+ const input = findNameInput();
660
+ if (!input) return { ok: false, reason: "new-project name input did not appear" };
661
+ return clickPoint(input);
662
+ })()`;
663
+ }
664
+ export function newProjectNameInputVisibleExpression() {
665
+ return `(() => {${VISIBLE_TEXT_INPUT_FINDER}
666
+ return Boolean(findNameInput());
667
+ })()`;
668
+ }
669
+ function newProjectNameInputValueExpression() {
670
+ return `(() => {${VISIBLE_TEXT_INPUT_FINDER}
671
+ const input = findNameInput();
672
+ return input ? input.value : null;
673
+ })()`;
674
+ }
675
+ async function dispatchEnterKey(cdp) {
676
+ await cdp.send("Input.dispatchKeyEvent", { type: "keyDown", key: "Enter", code: "Enter", windowsVirtualKeyCode: 13, text: "\r" });
677
+ await cdp.send("Input.dispatchKeyEvent", { type: "keyUp", key: "Enter", code: "Enter", windowsVirtualKeyCode: 13 });
678
+ }
679
+ // Creates a project in the user's real ChatGPT account: sidebar 새 프로젝트 →
680
+ // type the name into the popover input → Enter → wait for navigation into the
681
+ // new project. Backs out with Escape on any failure.
682
+ async function createChatGptProject(cdp, name) {
683
+ const hrefBefore = await cdp.evaluate("location.href");
684
+ const button = await cdp.evaluate(newProjectButtonRectExpression());
685
+ if (!button.ok || button.x === undefined || button.y === undefined) {
686
+ throw new Error(button.reason ?? "new-project button not found in the sidebar");
687
+ }
688
+ try {
689
+ await verifiedClickAt(cdp, button.x, button.y, "새 프로젝트");
690
+ const inputVisible = await waitForExpressionTrue(cdp, newProjectNameInputVisibleExpression(), MENU_OPEN_TIMEOUT_MS);
691
+ if (!inputVisible)
692
+ throw new Error("new-project name input did not appear");
693
+ const input = await cdp.evaluate(newProjectNameInputRectExpression());
694
+ if (!input.ok || input.x === undefined || input.y === undefined) {
695
+ throw new Error(input.reason ?? "new-project name input is not clickable");
696
+ }
697
+ await verifiedClickAt(cdp, input.x, input.y, "project name input");
698
+ await sleep(150);
699
+ await cdp.send("Input.insertText", { text: name });
700
+ await sleep(150);
701
+ const typed = await cdp.evaluate(newProjectNameInputValueExpression());
702
+ if (typed !== name) {
703
+ throw new Error(`could not type the project name into the new-project input (saw: ${typed === null ? "no input" : JSON.stringify(typed)})`);
704
+ }
705
+ await dispatchEnterKey(cdp);
706
+ const navigated = await waitForExpressionTrue(cdp, `location.href !== ${JSON.stringify(hrefBefore)}`, PROJECT_NAVIGATION_TIMEOUT_MS);
707
+ if (!navigated)
708
+ throw new Error(`Creating project "${name}" did not navigate into the new project`);
709
+ const composerReady = await waitForExpressionTrue(cdp, `Boolean(document.querySelector('#prompt-textarea,[contenteditable="true"],textarea'))`, PROJECT_NAVIGATION_TIMEOUT_MS);
710
+ if (!composerReady)
711
+ throw new Error(`ChatGPT composer did not appear after creating project "${name}"`);
712
+ }
713
+ catch (error) {
714
+ try {
715
+ await dispatchEscapeKey(cdp);
716
+ await sleep(150);
717
+ await dispatchEscapeKey(cdp);
718
+ }
719
+ catch {
720
+ // best effort only
721
+ }
722
+ throw error;
723
+ }
724
+ }
638
725
  async function selectProject(cdp, options) {
639
726
  if (options.projectNew) {
640
- throw new Error("projectNew (new-project modal) automation is not implemented yet; create the project manually and use --project");
727
+ await createChatGptProject(cdp, options.projectNew);
728
+ return;
641
729
  }
642
730
  if (!options.project)
643
731
  return;
@@ -688,12 +776,16 @@ export async function sendChatGptPrompt(options) {
688
776
  if (busyBlocker) {
689
777
  throw new ChatGptBrowserBlockerError(busyBlocker);
690
778
  }
691
- const beforeSubmit = await evaluateOnPage(page, answerExpression());
779
+ let beforeSubmit;
692
780
  const cdp = await connectCdp(page.webSocketDebuggerUrl);
693
781
  try {
694
782
  await cdp.send("Runtime.enable");
695
783
  await selectProject(cdp, options);
696
784
  await selectModelReasoning(cdp, options);
785
+ // Capture the answer baseline AFTER any project navigation or model switch
786
+ // so assistant-message counts compare within the thread we actually send
787
+ // into; a --project/--project-new hop lands on a page with its own counts.
788
+ beforeSubmit = await evaluateOnPage(page, answerExpression());
697
789
  const inserted = await cdp.evaluate(setComposerTextExpression(options.prompt));
698
790
  if (!inserted.ok)
699
791
  throw new Error(inserted.reason ?? "Could not insert text into ChatGPT composer");
@@ -1 +1 @@
1
- {"version":3,"file":"chatgpt-browser.js","sourceRoot":"","sources":["../src/chatgpt-browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatgpt-browser.js","sourceRoot":"","sources":["../src/chatgpt-browser.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -4,5 +4,7 @@ export interface CliIO {
4
4
  stdout: (line: string) => void;
5
5
  stderr: (line: string) => void;
6
6
  allowAskProBrowserSend?: boolean;
7
+ /** Answer an interactive question (used by `setup --interactive`); defaults to terminal readline. */
8
+ promptUser?: (question: string) => Promise<string>;
7
9
  }
8
10
  export declare function runCli(args: string[], io?: CliIO): Promise<number>;
package/dist/cli.js CHANGED
@@ -93,12 +93,21 @@ export async function runCli(args, io = defaultIo()) {
93
93
  }
94
94
  if (command === "setup") {
95
95
  const setupValueFlags = ["--cwd", "--host", "--port", "--token", "--token-ttl-hours", ...ASK_PRO_SELECTION_DEFAULT_FLAGS];
96
- const setupBooleanFlags = [...ASK_PRO_SELECTION_CLEAR_FLAGS];
96
+ const setupBooleanFlags = [...ASK_PRO_SELECTION_CLEAR_FLAGS, "--interactive"];
97
97
  if (printHelpIfRequested(rest, "setup", io.stdout, printSetupHelp, { valueFlags: setupValueFlags, booleanFlags: setupBooleanFlags }))
98
98
  return 0;
99
99
  assertOnlyOptions(rest, "setup", setupValueFlags, setupBooleanFlags);
100
100
  const targetCwd = resolveCwdFlag(io.cwd, rest);
101
- const browserDefaults = parseBrowserDefaultFlags(rest);
101
+ const interactive = rest.includes("--interactive");
102
+ if (interactive) {
103
+ const conflicting = [...ASK_PRO_SELECTION_DEFAULT_FLAGS, ...ASK_PRO_SELECTION_CLEAR_FLAGS].filter((flag) => rest.includes(flag));
104
+ if (conflicting.length > 0) {
105
+ throw new Error(`setup --interactive collects the browser defaults itself; drop ${conflicting.join(", ")} or run without --interactive.`);
106
+ }
107
+ }
108
+ const browserDefaults = interactive
109
+ ? await runBrowserDefaultsWizard(resolvePromptUser(io), io.stdout)
110
+ : parseBrowserDefaultFlags(rest);
102
111
  const config = await writeLocalConfig(targetCwd, {
103
112
  host: readFlag(rest, "--host") ?? "127.0.0.1",
104
113
  port: readPortFlag(rest, "--port") ?? 8787,
@@ -671,7 +680,18 @@ export async function runCli(args, io = defaultIo()) {
671
680
  io.stdout(JSON.stringify(receipt, null, 2));
672
681
  return 0;
673
682
  }
674
- throw unknownSubcommandError("receipts", subcommand, ["list", "show"]);
683
+ if (subcommand === "rotate-key") {
684
+ if (printHelpIfRequested(receiptArgs, "receipts rotate-key", io.stdout, printReceiptsHelp, { valueFlags: ["--cwd"] }))
685
+ return 0;
686
+ assertOnlyOptions(receiptArgs, "receipts rotate-key", ["--cwd"]);
687
+ const targetStore = new BridgeStore(resolveCwdFlag(io.cwd, receiptArgs));
688
+ await targetStore.ensure();
689
+ const rotated = await targetStore.rotateReceiptIntegrityKey();
690
+ io.stdout(`Rotated the local receipt integrity key: ${rotated.keys} key(s) in .bridge/receipt-key.local.`);
691
+ io.stdout("New receipts are signed with the new key; receipts signed before the rotation still verify via the retained legacy keys.");
692
+ return 0;
693
+ }
694
+ throw unknownSubcommandError("receipts", subcommand, ["list", "show", "rotate-key"]);
675
695
  }
676
696
  if (command === "sessions") {
677
697
  const [subcommand, ...sessionArgs] = rest;
@@ -940,13 +960,8 @@ export async function runCli(args, io = defaultIo()) {
940
960
  if (explicitProject !== undefined && explicitProjectNew !== undefined) {
941
961
  throw new Error("ask-pro cannot combine --project and --project-new; pick an existing project or create one.");
942
962
  }
943
- if (explicitProjectNew !== undefined) {
944
- // Creating a project mutates the real ChatGPT account and the modal
945
- // automation is unverified, so this stays gated until it is confirmed live.
946
- throw new Error('--project-new is not supported yet; create the project in ChatGPT, then use --project "name".');
947
- }
948
- if (normalizedTargetUrl && explicitProject !== undefined) {
949
- throw new Error("ask-pro cannot combine --target-url with --project: --target-url pins the confirmed tab while --project navigates the sidebar away from it. Open the project thread in the browser and pass its URL as --target-url instead.");
963
+ if (normalizedTargetUrl && (explicitProject !== undefined || explicitProjectNew !== undefined)) {
964
+ throw new Error("ask-pro cannot combine --target-url with --project/--project-new: --target-url pins the confirmed tab while the project step navigates the sidebar away from it. Open the project thread in the browser and pass its URL as --target-url instead.");
950
965
  }
951
966
  const explicitModel = readFlag(parsedAskPro.optionArgs, "--model");
952
967
  const explicitProModeRaw = readFlag(parsedAskPro.optionArgs, "--pro-mode");
@@ -961,12 +976,14 @@ export async function runCli(args, io = defaultIo()) {
961
976
  // pinning --target-url suppresses a default project (it would navigate away
962
977
  // from the confirmed tab).
963
978
  const selectionModel = explicitModel ?? browserDefaults?.model;
964
- const selectionProject = explicitProject ?? (normalizedTargetUrl ? undefined : browserDefaults?.project);
979
+ const selectionProjectNew = explicitProjectNew;
980
+ const selectionProject = explicitProject ?? (normalizedTargetUrl || selectionProjectNew !== undefined ? undefined : browserDefaults?.project);
965
981
  const reasoningAxisChosen = explicitProMode !== undefined || explicitEffort !== undefined;
966
982
  const selectionProMode = explicitProMode ?? (reasoningAxisChosen ? undefined : browserDefaults?.pro_mode);
967
983
  const selectionEffort = explicitEffort ?? (reasoningAxisChosen ? undefined : browserDefaults?.effort);
968
984
  const selectionMetadata = {
969
985
  ...(selectionProject ? { project: selectionProject } : {}),
986
+ ...(selectionProjectNew ? { project_new: selectionProjectNew } : {}),
970
987
  ...(selectionModel ? { model: selectionModel } : {}),
971
988
  ...(selectionProMode ? { pro_mode: selectionProMode } : {}),
972
989
  ...(selectionEffort ? { effort: selectionEffort } : {})
@@ -1038,6 +1055,7 @@ export async function runCli(args, io = defaultIo()) {
1038
1055
  targetUrl: normalizedTargetUrl,
1039
1056
  timeoutMs: browserTimeoutMs,
1040
1057
  project: selectionProject,
1058
+ projectNew: selectionProjectNew,
1041
1059
  model: selectionModel,
1042
1060
  proMode: selectionProMode,
1043
1061
  effort: selectionEffort
@@ -1181,7 +1199,7 @@ Commands:
1181
1199
  prodex --version
1182
1200
  prodex init [--cwd /absolute/path/to/repo]
1183
1201
  prodex doctor [--cwd /absolute/path/to/repo] [--source-cli /absolute/path/to/dist/cli.js]
1184
- prodex setup [--cwd /absolute/path/to/repo] [--host 127.0.0.1] [--port 8787] [--token-ttl-hours <hours>] [--model Pro] [--pro-mode 기본|확장] [--effort 즉시|중간|높음|"매우 높음"] [--project "name"]
1202
+ prodex setup [--cwd /absolute/path/to/repo] [--host 127.0.0.1] [--port 8787] [--token-ttl-hours <hours>] [--model Pro] [--pro-mode 기본|확장] [--effort 즉시|중간|높음|"매우 높음"] [--project "name"] [--clear-model|--clear-pro-mode|--clear-effort|--clear-project] [--interactive]
1185
1203
  prodex start [--cwd /absolute/path/to/repo] [--source-cli /absolute/path/to/dist/cli.js]
1186
1204
  prodex status [--cwd /absolute/path/to/repo] [--source-cli /absolute/path/to/dist/cli.js] [--show-token] [--url-only] [--unsafe-show-non-expiring-token]
1187
1205
  prodex tunnel url [--cwd /absolute/path/to/repo] [--source-cli /absolute/path/to/dist/cli.js] --public-url https://... [--show-token] [--url-only]
@@ -1197,7 +1215,7 @@ Commands:
1197
1215
  prodex pro browser check [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo] [--port 9333] [--timeout-ms 1500]
1198
1216
  prodex pro browser smoke [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo] [--port 9333] [--timeout-ms 90000]
1199
1217
  prodex pro browser models [--source-cli /absolute/path/to/dist/cli.js] [--port 9333] [--timeout-ms 15000] # read-only list of model menu options
1200
- prodex pro browser ask [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo] [--port 9333] [--timeout-ms 90000] [--target-url url --confirm-target] [--file path] [--model Pro] [--pro-mode 기본|확장] [--effort 즉시|중간|높음|"매우 높음"] [--project "name"] "prompt" # explicit visible-browser send
1218
+ prodex pro browser ask [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo] [--port 9333] [--timeout-ms 90000] [--target-url url --confirm-target] [--file path] [--model Pro] [--pro-mode 기본|확장] [--effort 즉시|중간|높음|"매우 높음"] [--project "name" | --project-new "name"] "prompt" # explicit visible-browser send
1201
1219
  prodex pro latest [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo]
1202
1220
  prodex pro list [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo]
1203
1221
  prodex pro show <task-id|latest> [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo]
@@ -1212,6 +1230,7 @@ Commands:
1212
1230
  prodex results reseal <task-id|latest> --confirm-current-result [--cwd /absolute/path/to/repo]
1213
1231
  prodex receipts list [--kind kind] [--task-id task-id] [--cwd /absolute/path/to/repo]
1214
1232
  prodex receipts show <receipt-id|latest> [--cwd /absolute/path/to/repo]
1233
+ prodex receipts rotate-key [--cwd /absolute/path/to/repo]
1215
1234
  prodex sessions list [--status preview|running|done|blocked] [--cwd /absolute/path/to/repo]
1216
1235
  prodex sessions show <session-id|latest> [--cwd /absolute/path/to/repo]
1217
1236
  prodex mcp [--cwd /absolute/path/to/repo]`);
@@ -1228,7 +1247,7 @@ function printSetupHelp(stdout) {
1228
1247
  stdout(`prodex setup
1229
1248
 
1230
1249
  Commands:
1231
- prodex setup [--cwd /absolute/path/to/repo] [--host 127.0.0.1] [--port 8787] [--token-ttl-hours <hours>] [--model Pro] [--pro-mode 기본|확장] [--effort 즉시|중간|높음|"매우 높음"] [--project "name"]
1250
+ prodex setup [--cwd /absolute/path/to/repo] [--host 127.0.0.1] [--port 8787] [--token-ttl-hours <hours>] [--model Pro] [--pro-mode 기본|확장] [--effort 즉시|중간|높음|"매우 높음"] [--project "name"] [--clear-model|--clear-pro-mode|--clear-effort|--clear-project] [--interactive]
1232
1251
 
1233
1252
  Save a loopback-only HTTP MCP profile in .bridge/config.local.json. Use --token-ttl-hours before tunnels or ChatGPT Project use.
1234
1253
 
@@ -1315,7 +1334,7 @@ Commands:
1315
1334
  prodex pro browser check [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo]
1316
1335
  prodex pro browser smoke [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo]
1317
1336
  prodex pro browser models [--source-cli /absolute/path/to/dist/cli.js]
1318
- prodex pro browser ask [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo] [--target-url url --confirm-target] [--file path] [--model Pro] [--pro-mode 기본|확장] [--effort 즉시|중간|높음|"매우 높음"] [--project "name"] "prompt"
1337
+ prodex pro browser ask [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo] [--target-url url --confirm-target] [--file path] [--model Pro] [--pro-mode 기본|확장] [--effort 즉시|중간|높음|"매우 높음"] [--project "name" | --project-new "name"] "prompt"
1319
1338
  prodex pro latest [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo]
1320
1339
  prodex pro list [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo]
1321
1340
  prodex pro show <task-id|latest> [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo]
@@ -1372,7 +1391,12 @@ function printReceiptsHelp(stdout) {
1372
1391
 
1373
1392
  Commands:
1374
1393
  prodex receipts list [--kind kind] [--task-id task-id] [--cwd /absolute/path/to/repo]
1375
- prodex receipts show <receipt-id|latest> [--cwd /absolute/path/to/repo]`);
1394
+ prodex receipts show <receipt-id|latest> [--cwd /absolute/path/to/repo]
1395
+ prodex receipts rotate-key [--cwd /absolute/path/to/repo]
1396
+
1397
+ rotate-key generates a new signing key for receipt integrity seals and keeps the
1398
+ previous keys in .bridge/receipt-key.local so receipts signed before the
1399
+ rotation still verify.`);
1376
1400
  }
1377
1401
  function printSessionsHelp(stdout) {
1378
1402
  stdout(`prodex sessions
@@ -2753,7 +2777,7 @@ function printProBrowserHelp(stdout, sourceCli) {
2753
2777
  const smokeUsage = sourceCli
2754
2778
  ? `${cli} pro browser smoke${sourceCliOption} [--cwd /absolute/path/to/repo] [--port 9333] [--timeout-ms 90000]`
2755
2779
  : "prodex pro browser smoke [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo] [--port 9333] [--timeout-ms 90000]";
2756
- const selectionUsage = '[--model Pro] [--pro-mode 기본|확장] [--effort 즉시|중간|높음|"매우 높음"] [--project "name"]';
2780
+ const selectionUsage = '[--model Pro] [--pro-mode 기본|확장] [--effort 즉시|중간|높음|"매우 높음"] [--project "name" | --project-new "name"]';
2757
2781
  const askUsage = sourceCli
2758
2782
  ? `${cli} pro browser ask${sourceCliOption} [--cwd /absolute/path/to/repo] [--port 9333] [--timeout-ms 90000] [--target-url url --confirm-target] [--file path] ${selectionUsage} "prompt"`
2759
2783
  : `prodex pro browser ask [--source-cli /absolute/path/to/dist/cli.js] [--cwd /absolute/path/to/repo] [--port 9333] [--timeout-ms 90000] [--target-url url --confirm-target] [--file path] ${selectionUsage} "prompt"`;
@@ -3516,6 +3540,62 @@ function parseBrowserDefaultFlags(args) {
3516
3540
  ...(clearProject ? { project: undefined } : {})
3517
3541
  };
3518
3542
  }
3543
+ function resolvePromptUser(io) {
3544
+ if (io.promptUser)
3545
+ return io.promptUser;
3546
+ if (!process.stdin.isTTY) {
3547
+ throw new Error("setup --interactive needs a terminal (TTY). Use the --model/--pro-mode/--effort/--project flags instead.");
3548
+ }
3549
+ return async (question) => {
3550
+ const readline = await import("node:readline/promises");
3551
+ const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
3552
+ try {
3553
+ return (await rl.question(question)).trim();
3554
+ }
3555
+ finally {
3556
+ rl.close();
3557
+ }
3558
+ };
3559
+ }
3560
+ // Ask up to `attempts` times; empty input means skip (returns undefined).
3561
+ async function askChoice(prompt, question, choices, attempts = 3) {
3562
+ for (let attempt = 0; attempt < attempts; attempt += 1) {
3563
+ const raw = (await prompt(question)).trim();
3564
+ if (raw === "")
3565
+ return undefined;
3566
+ const index = Number.parseInt(raw, 10);
3567
+ if (Number.isInteger(index) && index >= 1 && index <= choices.length)
3568
+ return choices[index - 1];
3569
+ }
3570
+ throw new Error(`No valid choice after ${attempts} attempts; run setup again or use flags.`);
3571
+ }
3572
+ async function runBrowserDefaultsWizard(prompt, stdout) {
3573
+ stdout("Browser send defaults (press Enter to skip a question; labels match the Korean ChatGPT UI):");
3574
+ const model = await askChoice(prompt, "Default model — 1) Pro [Enter=skip]: ", ["Pro"]);
3575
+ let proMode;
3576
+ let effort;
3577
+ if (model === "Pro") {
3578
+ proMode = (await askChoice(prompt, "Pro sub-mode — 1) 기본 2) 확장 [Enter=skip]: ", ["기본", "확장"]));
3579
+ }
3580
+ else {
3581
+ effort = (await askChoice(prompt, "Reasoning effort — 1) 즉시 2) 중간 3) 높음 4) 매우 높음 [Enter=skip]: ", [
3582
+ "즉시",
3583
+ "중간",
3584
+ "높음",
3585
+ "매우 높음"
3586
+ ]));
3587
+ }
3588
+ const projectRaw = (await prompt('Default project name (existing sidebar project) [Enter=skip]: ')).trim();
3589
+ const project = projectRaw === "" ? undefined : projectRaw;
3590
+ if (model === undefined && proMode === undefined && effort === undefined && project === undefined)
3591
+ return undefined;
3592
+ return {
3593
+ ...(model !== undefined ? { model } : {}),
3594
+ ...(proMode !== undefined ? { proMode } : {}),
3595
+ ...(effort !== undefined ? { effort } : {}),
3596
+ ...(project !== undefined ? { project } : {})
3597
+ };
3598
+ }
3519
3599
  function formatBrowserDefaults(defaults) {
3520
3600
  const parts = [];
3521
3601
  if (defaults.model)