Repository navigation
Computer Use Chrome extension is unavailable in Chrome Web Store; is there an offline installer? #21700
Description
Activity
- addedbugSomething isn't workingSomething isn't workingappIssues related to the Codex desktop appIssues related to the Codex desktop appwindows-osIssues related to Codex on Windows systemsIssues related to Codex on Windows systems
on May 8, 2026 the same for mac of intel/m chip
Same
I have read that for EU region its not available, no idea how credible this statement is.
Reacted by Alain Kaisersame!
same
I know the problem, if you are in hong kong, this extension is not available
Try switching your VPN to the USReacted by Boris, Wordless Echo, WilliamBob, 46319943, UFOcgj, lockseed, Yyy, snowysuki2233 and Richard XuMine is the same. Even when the VPN is switched to the US, it still doesn't work.
Reacted by Jake, Jason and dilidilihoMine is the same. Even when the VPN is switched to the US, it still doesn't work.
@hu1990a It appears to be tied to the region associated with your Google account, rather than the region of your network connection.
Reacted by angoeldi and zzswitch vpn to a US work for me
Reacted by Tianyue Qi, KrystalC, Maxim Spiridonov and Jonny Chan8 remaining items
Offline installation from crx
codex-openai-1.1.5.crx
SHA-256: 54e8d5c26f0e47ee9e33b56276b7e1305991dd5de7b046a4c74e57e076f0545f- Download the extension package to a normal folder
- Rename .crx to .zip
- unzip the extension so you have any directory
- Open Chrome and go to chrome://extensions/
- Enable Developer mode using the toggle in the top-right corner
- Click Load unpacked
- Select the extracted extension folder, not the .crx file itself
- Chrome will load the extension and it should appear in the extensions list
Reacted by xuwenxinedu, ilsurgareev, Picasso618, yurasik2000, Code You, vibemen, Evgeny Kolesnikov, 杨钒, northernCold, jiacheng1232 and 10 moreIt works, but it needs a few extra steps. Fortunately, those steps can be handled by Codex as well.
from codex
Reacted by ilsurgareev and fug990Quick update: the Codex Chrome extension appears to be available again for my Chrome profile/account.
I can now see the extension installed and enabled on
chrome://extensions:- Extension:
Codex - Version:
1.1.5 - ID:
hehggadaopoacecdllhhajmbjkdcmajg - Description:
Control Chrome with Codex.
So at least for my account/region, the Chrome extension is back and no offline CRX workaround seems necessary anymore.
- Extension:
Same issue here on macOS + Chrome.
The official Codex extension URL redirects to
/detail/hehggadaopoacecdllhhajmbjkdcmajg/error, and the extension is unavailable in both the store page and search.I tested VPN off, different VPN regions, and a clean Chrome profile, with the same result every time.
This looks like Web Store/account-region gating rather than a local Chrome issue. Please confirm whether the extension is currently region/account restricted or provide an official reinstall path.
codex chrome extension are forbidden in some region, here is a solution:
- Download Codex's crx zip from: https://lixian.online/chrome?q=hehggadaopoacecdllhhajmbjkdcmajg
- unzip crx
- enable developer mode in Chrome
chrome://extensions/, install from unzipped local directory - done
Reacted by zzdzzorz and SheldonPhangYou'll need TUN mode for you US vpn.
VPN US Work, thanks
VPN US Work
I know the problem, if you are in hong kong, this extension is not available Try switching your VPN to the US
Thanks! u really helps me a lot~
If Computer Use -> Google Chrome shows the Web Store error page (
.../hehggadaopoacecdllhhajmbjkdcmjag/error), the listing is region-gated. The extension is not missing from the app.Method:
- Open that Chrome Web Store item from a US-region network / VPN.
- Install the official extension there, then turn the VPN off.
- In Codex Desktop, open Computer Use -> Google Chrome and use Reinstall / reconnect.
- Confirm Chrome shows the Codex Computer Use extension as enabled.
Do not sideload a random CRX. If the store page still 404s from every region, this is an availability outage, not a local install problem.
Independent community workaround; not an official OpenAI fix.
Reacted by lincer_x42just depends on region, you can use proxy. eg us proxy
Reproduced on 2026-09-11 with the current Windows desktop build.\n\nEnvironment:\n- Windows 11 x64\n- Codex Desktop / Microsoft Store package: 26.903.9818.0\n- Google Chrome: 153.0.8010.37 (official 64-bit build)\n- Extension ID: hehggadaopoacecdllhhajmbjkdcmajg\n\nSteps/result:\n1. Settings -> Computer Use -> Google Chrome shows Browser extension is not installed.\n2. Clicking Install opens the official Chrome Web Store URL and redirects to /detail/hehggadaopoacecdllhhajmbjkdcmajg/error.\n3. The store shows This product is unavailable.\n4. Codex Desktop was updated/reinstalled and fully restarted.\n5. Local Chrome policies were checked: only QuicAllowed=0 and DnsOverHttpsMode=off are configured; no extension blocklist/allowlist policy was found.\n\nThe public store listing is currently visible through web indexing and identifies OpenAI as the publisher, but the actual Chrome profile cannot install it. Please confirm whether this is an account, country, workspace, or rollout entitlement issue and provide an official supported installation path. A paid account is affected.\n\nTask/chat ID for support correlation: 01a04350-770e-7422-bd12-a5cc2962dc89
Reproduced on Windows with the current ChatGPT Desktop build.
- ChatGPT Desktop: 26.908.40834
- Release date: 2026-09-12
- Google Chrome: 153.0.8010.36
- Extension ID: hehggadaopoacecdllhhajmbjkdcmajg
Clicking the Google Chrome install option from ChatGPT/Codex redirects the Chrome Web Store to /error and shows “此商品无法购买或下载 / This item cannot be purchased or downloaded”.
I also tested with a confirmed US IP exit using system-wide TUN mode, and the result is unchanged.
I submitted diagnostics through ChatGPT Desktop feedback.
Feedback ID:
no-active-thread-01a0a8a0-2edc-7312-8a65-ed8d7f3ab783
Please confirm whether this is an account/workspace rollout restriction or a Chrome Web Store distribution issue, and provide an official supported installation method if available.
Working offline installation workaround for Codex Chrome extension on Windows
I managed to get the Codex Chrome extension working offline on Windows after Codex kept showing:
Not installedand the extension popup showed:
DisconnectedThe main issue was not the extension files themselves.
The problem was that when the
.crxfile was extracted and loaded using Load unpacked, Chrome assigned the extension a different ID because the extractedmanifest.jsondid not contain the original public key.Codex Desktop expects a specific stable extension ID:
hehggadaopoacecdllhhajmbjkdcmajgOnce the correct public key was restored in
manifest.json, Chrome generated the expected ID and Codex connected successfully.
Environment
This worked for me on:
Windows Codex Desktop Codex Chrome extension version: 1.1.5 ChromeThe Codex app installed on my machine referenced this stable Chrome extension ID internally:
hehggadaopoacecdllhhajmbjkdcmajg
1. Download the CRX manually
Chrome may refuse to download/install a
.crxdirectly from a non-Web-Store URL.I downloaded it using PowerShell instead:
Invoke-WebRequest "https://storage.yandexcloud.net/temp-sgjfgsdj/codex-openai-1.1.5.crx" ` -OutFile "$env:USERPROFILE\Downloads\codex-openai-1.1.5.crx"
After that, verify that the file exists:
Get-Item "$env:USERPROFILE\Downloads\codex-openai-1.1.5.crx"
2. Verify the SHA-256
Run:
Get-FileHash "$env:USERPROFILE\Downloads\codex-openai-1.1.5.crx" -Algorithm SHA256
For the CRX I used, the SHA-256 was:
54E8D5C26F0E47EE9E33B56276B7E1305991DD5DE7B046A4C74E57E076F0545FIf your hash is different, stop and verify where your file came from before continuing.
3. Extract the CRX
Copy it as a ZIP:
Copy-Item ` "$env:USERPROFILE\Downloads\codex-openai-1.1.5.crx" ` "$env:USERPROFILE\Downloads\codex-openai-1.1.5.zip"
Then extract it:
Expand-Archive ` "$env:USERPROFILE\Downloads\codex-openai-1.1.5.zip" ` "$env:USERPROFILE\Downloads\codex-openai-1.1.5" ` -Force
You should now have a directory like:
C:\Users\<USERNAME>\Downloads\codex-openai-1.1.5Inside it there should be:
manifest.json background.js popup.html images\ ...
4. First attempt: Load unpacked
Open:
chrome://extensions/Enable:
Developer modeClick:
Load unpackedand select:
C:\Users\<USERNAME>\Downloads\codex-openai-1.1.5The extension should load.
However, in my case Chrome assigned it a different extension ID.
Codex Desktop therefore still showed:
Not installedand the extension showed:
Disconnected
5. Why this happens
The extracted
manifest.jsondid not contain a"key"field.Without the original extension public key, Chrome generates a different extension ID for an unpacked extension.
That means the extension can look completely correct and still not be recognized by Codex.
The ID generated by Chrome from the unpacked extension was different from the stable ID expected by Codex.
Expected ID:
hehggadaopoacecdllhhajmbjkdcmajg
6. Extract the public key from the CRX3 header
The CRX file was CRX version 3.
You can confirm this and extract the RSA public keys using Python.
Create:
C:\Users\<USERNAME>\Downloads\check_crx.pywith the following contents:
import struct import hashlib import base64 PATH = r"C:\Users\<USERNAME>\Downloads\codex-openai-1.1.5.crx" def read_varint(data, pos): result = 0 shift = 0 while True: b = data[pos] pos += 1 result |= (b & 0x7F) << shift if not (b & 0x80): return result, pos shift += 7 def parse_fields(data): pos = 0 fields = [] while pos < len(data): key, pos = read_varint(data, pos) field_num = key >> 3 wire_type = key & 7 if wire_type == 0: value, pos = read_varint(data, pos) fields.append((field_num, wire_type, value)) elif wire_type == 2: length, pos = read_varint(data, pos) value = data[pos:pos + length] pos += length fields.append((field_num, wire_type, value)) elif wire_type == 1: value = data[pos:pos + 8] pos += 8 fields.append((field_num, wire_type, value)) elif wire_type == 5: value = data[pos:pos + 4] pos += 4 fields.append((field_num, wire_type, value)) else: raise ValueError(f"Unsupported wire type: {wire_type}") return fields def extension_id_from_key(pubkey): digest = hashlib.sha256(pubkey).digest()[:16] return "".join( chr(ord("a") + int(c, 16)) for c in digest.hex() ) with open(PATH, "rb") as f: data = f.read() if data[:4] != b"Cr24": raise SystemExit("Not a CRX file") version = struct.unpack("<I", data[4:8])[0] print("CRX version:", version) if version != 3: raise SystemExit(f"Expected CRX3, got CRX{version}") header_len = struct.unpack("<I", data[8:12])[0] header = data[12:12 + header_len] print("Header length:", header_len) top_fields = parse_fields(header) found = False for field_num, wire_type, value in top_fields: # CRX3 field 2 = sha256_with_rsa if field_num == 2 and wire_type == 2: proof_fields = parse_fields(value) for pf_num, pf_wire, pf_value in proof_fields: # field 1 = public_key if pf_num == 1 and pf_wire == 2: pubkey = pf_value ext_id = extension_id_from_key(pubkey) print() print("Public key length:", len(pubkey)) print("Extension ID:", ext_id) print("Manifest key:") print(base64.b64encode(pubkey).decode()) found = True if not found: print("RSA public key not found")
Replace:
<USERNAME>with your Windows username.
Then run:
python "$env:USERPROFILE\Downloads\check_crx.py"
7. Find the key that produces the Codex extension ID
In my CRX, the script found two RSA public keys.
One of them produced:
hehggadaopoacecdllhhajmbjkdcmajgThis matched the stable extension ID expected by my installed Codex runtime.
The corresponding public key was:
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr5M/DZ28sAuOnk9v8C2IPTLNEZ0F0pv9qwRzMAbGbE0NB6I6T+wS6Na2n0sbQOK98iezN2FX26dsBWMELXtf4YCETdRiFSBOnNhZObZdrxeTTrhk1AhKA/Id5vgDWfSZ3Q+9BjBWHYK9yuTGo3PMK/yOW/CH6cSn07btvn7Aq+t+KrAwGOJewCN7gGojOrshJs/YwdxwxpUnb7s6QbFGkPKg9G6as4y4ipQ8fiQHRAcKm+mUK/CoCVSL+c4Yog0CSJqEEaruOeh8CgM4V0LX4kw5rs/4THAvTwtYRsW0n3faVR7uGj1eadsWuKciQHxpRMI9I4EE7yuaxavv3Agf6QIDAQAB
8. Add the original key to manifest.json
You can modify the extracted manifest automatically with PowerShell.
Run:
$path = "$env:USERPROFILE\Downloads\codex-openai-1.1.5\manifest.json" $j = Get-Content $path -Raw | ConvertFrom-Json $j | Add-Member ` -NotePropertyName key ` -NotePropertyValue "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr5M/DZ28sAuOnk9v8C2IPTLNEZ0F0pv9qwRzMAbGbE0NB6I6T+wS6Na2n0sbQOK98iezN2FX26dsBWMELXtf4YCETdRiFSBOnNhZObZdrxeTTrhk1AhKA/Id5vgDWfSZ3Q+9BjBWHYK9yuTGo3PMK/yOW/CH6cSn07btvn7Aq+t+KrAwGOJewCN7gGojOrshJs/YwdxwxpUnb7s6QbFGkPKg9G6as4y4ipQ8fiQHRAcKm+mUK/CoCVSL+c4Yog0CSJqEEaruOeh8CgM4V0LX4kw5rs/4THAvTwtYRsW0n3faVR7uGj1eadsWuKciQHxpRMI9I4EE7yuaxavv3Agf6QIDAQAB" ` -Force $j | ConvertTo-Json -Depth 20 | Set-Content $path -Encoding UTF8
You can verify that the key was added:
Get-Content "$env:USERPROFILE\Downloads\codex-openai-1.1.5\manifest.json"
You should now see:
"key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A..."
9. Remove the incorrectly loaded extension
Open:
chrome://extensions/Remove the Codex extension that was loaded before adding the key.
This is important because Chrome will not retroactively change the ID of the already-loaded unpacked extension.
10. Load the extension again
Click:
Load unpackedand select:
C:\Users\<USERNAME>\Downloads\codex-openai-1.1.5Now check the extension ID.
It should be:
hehggadaopoacecdllhhajmbjkdcmajgIf it is still different, verify that:
- the
"key"field exists inmanifest.json - you loaded the correct extracted directory
- the directory you selected directly contains
manifest.json
11. Restart Chrome and Codex
Fully close both applications.
It may help to verify in Task Manager that there are no remaining:
chrome.exe codex.exeprocesses.
Then start:
- Codex
- Chrome
Open the Codex extension popup.
For me, the status changed from:
Disconnectedto:
ConnectedCodex Desktop also stopped showing:
Not installedThe browser connection then worked normally.
Result
Working state:
Extension ID: hehggadaopoacecdllhhajmbjkdcmajg Extension: Connected Codex: Chrome installed / connected
Optional: verify what extension ID your Codex build expects
I also verified the expected extension ID directly inside the browser runtime bundled with Codex.
On my installation, Codex files were located under:
%LOCALAPPDATA%\OpenAI\Codex\runtimes\Searching for the extension ID:
Get-ChildItem "$env:LOCALAPPDATA\OpenAI\Codex" ` -Recurse ` -File ` -Include *.json,*.js,*.mjs,*.cjs ` -ErrorAction SilentlyContinue | Select-String -Pattern "hehggada"
My installed Codex browser runtime contained the stable Chrome configuration:
hehggadaopoacecdllhhajmbjkdcmajgSo this was not a guessed ID — it matched the configuration used by the installed Codex build.
Optional: native messaging troubleshooting
During troubleshooting I also checked the Chrome Native Messaging registry entries.
Example:
reg query "HKCU\Software\Google\Chrome\NativeMessagingHosts\com.openai.codexextension" /s
reg query "HKLM\Software\Google\Chrome\NativeMessagingHosts\com.openai.codexextension" /s
reg query "HKLM\Software\WOW6432Node\Google\Chrome\NativeMessagingHosts\com.openai.codexextension" /s
In my case those checks initially returned no matching registry entry.
However, I did not manually create or modify the native messaging host.
Once the extension was loaded with the correct extension ID and Chrome/Codex were restarted, the extension connected successfully.
So I would recommend fixing the extension ID first before manually touching Native Messaging configuration.
Why the workaround works
Chrome extension IDs are derived from the extension's public key.
When the CRX is installed normally, Chrome has access to the signing/public-key information.
When the CRX is manually extracted, the resulting
manifest.jsonmay not contain the"key"property.If you then use:
Load unpackedChrome generates an ID based on the unpacked extension state instead of preserving the original store extension identity.
Codex Desktop looks for a known extension ID.
Therefore:
correct files + wrong ID = Codex says "Not installed"while:
correct files + original public key + correct ID = Connected
Important security note
The CRX URL above is not a Chrome Web Store URL.
Do not blindly install third-party extension packages.
At minimum:
- verify the SHA-256
- inspect the extension permissions
- inspect
manifest.json - only use a package whose origin you trust
The hash I used for version
1.1.5was:54E8D5C26F0E47EE9E33B56276B7E1305991DD5DE7B046A4C74E57E076F0545FThis guide documents the package and version that worked for me. Future Codex/extension releases may use a different CRX, key, hash, or extension ID.
TL;DR
If you already have the correct
1.1.5CRX:- Download it.
- Verify SHA-256.
- Extract it.
- Add the original public key to
manifest.json. - Remove the previously loaded unpacked extension.
- Load the folder again.
- Verify the ID is:
hehggadaopoacecdllhhajmbjkdcmajg- Restart Chrome and Codex.
- The extension should show:
ConnectedThe critical part is preserving the original extension identity by restoring the
"key"field.Reacted by web3daemon and Sergofun- the
Change your IP to US region, then you can install the extension from chrome store

What happened
The Chrome extension used by Codex Desktop's Computer Use / Google Chrome integration cannot currently be downloaded from the Chrome Web Store.
The Chrome Web Store page opens at:
https://chromewebstore.google.com/detail/hehggadaopoacecdllhhajmbjkdcmjag/error
but it shows an error page saying the item cannot be purchased or downloaded. In my localized Chrome UI, the message is:
In Codex Desktop settings, the Computer Use > Google Chrome page still shows Chrome as not connected and offers "Reinstall extension", but following the store link leads back to the unavailable item page.
Environment
hehggadaopoacecdllhhajmbjkdcmjagExpected behavior
The Chrome extension needed for Computer Use should be installable from the Chrome Web Store, or Codex should provide a documented fallback installation path.
Actual behavior
The Chrome Web Store reports that the item cannot be purchased or downloaded, so the Computer Use Google Chrome integration cannot be connected through the in-app install/reinstall flow.
Question / request
Is there an official offline installer, CRX package, unpacked extension bundle, or another documented fallback that users can download and install manually when the Chrome Web Store page is unavailable in their region/account/browser?
If an offline package is not currently available, could one be provided or documented for cases where Chrome Web Store distribution is blocked or unavailable?