main
John Lauer Skip repeated Codex IDE introductory walkthrough in new editor tabs 18eb771 20d ago

New editor tabs open directly to the prompt

Adom Codex 0.1.23 skips the known introductory IDE tour by default. Standalone editor tabs and Ctrl+Tab navigation remain available. Authentication and tool approval flows are unchanged.

Reproduction and diagnosis

Verified 2026-09-16 with OpenAI extension 26.908.40401-linux-x64, adom-vscode 1.1.90, and Hydrogen build 459a907067baf989596bd677f8f29390709c67fa-dirty-1789512781 on the Windows/WSL2 workspace.

Adom opens openai-codex://route/extension/panel/new?adom=<nonce> using chatgpt.conversationEditor. A fresh tab displayed "Codex in your IDE", Back and Next, with no editable prompt. The extension host returned true for get-global-state key viewed2025-09-15-nux even while the tour was visible. Setting a completion flag alone therefore does not resolve the observed behavior. A startup/query race is suspected, not proven.

The installed extension exposes no skip-tour VS Code setting. Its NewThreadPanelPage passes through a tour guard; the tour-status hook can return a first-run route based on the completion query and authentication method.

Package repair

runtime/walkthrough.py recognizes only the 2025-09-15 introductory tour-status hook and inserts an early none return. It does not write auth, consent or approval state. The existing package reconciler reapplies the change to recognized extension updates. Unknown or ambiguous upstream hooks are left intact and reported as unsupported. Uninstall removes only the inserted fragment, preserving unrelated edits.

This is an Adom compatibility patch, not an upstream Codex preference. The existing Hydrogen platform bootstrap 0.5.58 depends on adom/codex ^0.1.22, which accepts 0.1.23. New setup and package updates can therefore receive this default through the existing dependency chain. Other users are not claimed updated until their package updater has installed it.

Verification

  • 19 Python tests passed, including patch idempotency, missing/false/true completion state, unknown/ambiguous upstream refusal, and uninstall preservation.
  • JavaScript module syntax check and renderer lifecycle test passed.
  • A new tab opened through the live /ai/new {type: codex, surface: tab} API rendered one contenteditable prompt and no introductory tour after the patch. The same API rendered the tour and zero inputs before the patch.
  • Existing already-loaded webviews retain their old JavaScript until reopened; active conversations need no reload.