{"id":52282,"date":"2026-04-20T13:07:49","date_gmt":"2026-04-20T05:07:49","guid":{"rendered":"https:\/\/www.1ai.net\/?p=52282"},"modified":"2026-04-20T13:07:49","modified_gmt":"2026-04-20T05:07:49","slug":"%e9%9b%b6%e5%9f%ba%e7%a1%80%e6%95%99%e7%a8%8b%ef%bc%8c%e4%b8%89%e5%88%86%e9%92%9f%e6%9e%84%e5%bb%ba%e7%a7%81%e4%ba%bagpt%e4%bb%a3%e7%90%86%e6%b1%a0%ef%bc%9a%e7%9c%8b%e5%ae%8c%e8%bf%98%e8%83%bd","status":"publish","type":"post","link":"https:\/\/www.1ai.net\/en\/52282.html","title":{"rendered":"ZERO BASIC COURSE, THREE MINUTES TO BUILD A PRIVATE GPT PROXY POOL: AN AI TRANSIT STATION"},"content":{"rendered":"<p>A Plus account is not enough, a Pro account is often idle? Three minutes to build your own local<a href=\"https:\/\/www.1ai.net\/en\/tag\/%e4%bb%a3%e7%90%86%e6%b1%a0\" title=\"_Other Organiser\" target=\"_blank\" >Agent pool<\/a>I don't know. After the operation, you'll be able to open the stop! And all you have to do is prepare one <a href=\"https:\/\/www.1ai.net\/en\/tag\/codex\" title=\"_Other Organiser\" target=\"_blank\" >Codex<\/a>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52283\" title=\"bf564677j00tds0mn005cd000iw00bip\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/bf564677j00tds0mn005cd000iw00bip.jpg\" alt=\"bf564677j00tds0mn005cd000iw00bip\" width=\"680\" height=\"414\" \/><\/p>\n<p>Overview of proxy pool<\/p>\n<p><strong>Rationale and strengths and weaknesses<\/strong><\/p>\n<p>Principle: Client - &gt; CLIProxyAPI - &gt; Account Schedule - &gt; <a href=\"https:\/\/www.1ai.net\/en\/tag\/openai\" title=\"[View articles tagged with [OpenAI]]\" target=\"_blank\" >OpenAI<\/a><\/p>\n<p>Advantages and disadvantages:<\/p>\n<ul>\n<li>The front-end configuration will only be available once, and every client will not be required to change account numbers in the back<\/li>\n<li>Multiple accounts can be maintained centrally<\/li>\n<li>It's a bit of a bit of a scratch, but if it's just an introvert that's used in Codex, the risk is much lower<\/li>\n<\/ul>\n<p><strong>Let Codex help you deploy locally<\/strong><\/p>\n<p>It's the simplest part, just handing it over to Codex\u3002<\/p>\n<p>You can just send this:<\/p>\n<pre><code class=\"language-*\">https:\/\/github.com\/router-for-me\/CLIProxyAPI is being deployed to my local location instead of Docker\u3002<\/code><\/pre>\n<p>For those without a basis, it can be emphasized that it is not the Docker's experience to make the decision\u3002<\/p>\n<p>This way, Codex usually helps you to download, install, configure, start up\u3002<\/p>\n<p>Once the service runs, it usually gives you a confirmation similar to the following:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52284\" title=\"f0a80d2fj00tds0n6005d000iw00agp\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/f0a80d2fj00tds0n6005dd000iw00agp.jpg\" alt=\"f0a80d2fj00tds0n6005d000iw00agp\" width=\"680\" height=\"376\" \/><\/p>\n<p>CLIProxyAPI local service started successfully<\/p>\n<p>There are at least two things you have to confirm from this picture:<\/p>\n<ul>\n<li>the service address is up, e.g. http:\/\/127.0.0.1:8317<\/li>\n<li>\/v1\/models returns normally, not 500 or not connected<\/li>\n<\/ul>\n<p>If this step is not successful, let's not go back, let Cordex continue to repair the service until it can be accessed\u3002<\/p>\n<p><strong>Open account authorization switch<\/strong><\/p>\n<p>CLIProxyAPI wants access to your ChatGPT\/ Codex account, provided the account number allows the device code authorization\u3002<\/p>\n<p>Log in to your ChatGPT account, access: https:\/\/chatgpt.com\/#settings\/Security<\/p>\n<p>Enabled data code access for Codex and opened\u3002<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52285\" title=\"657c05d5j00tds0ng52d000iv00bwp\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/657c05d5j00tds0nh0052d000iv00bwp.jpg\" alt=\"657c05d5j00tds0ng52d000iv00bwp\" width=\"679\" height=\"428\" \/><\/p>\n<p>Enable Codex device code authorization in ChatGPT security settings<\/p>\n<p>This step is made once for each account to be accessed. If you don't, the back device code will be stuck\u3002<\/p>\n<p><strong>Let Codex tie your first account<\/strong><\/p>\n<p>Once the service is deployed and the authorized switch is open, the account number can start\u3002<\/p>\n<p>Directly to Codex says:<\/p>\n<pre><code class=\"language-*\">Configure Codex accounts for me<\/code><\/pre>\n<p>It usually returns a device code authorized link and authentication code to enable you to go to the browser to confirm:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52287\" title=\"4358721aj00tds0nq0057d000iw00brp\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/4358721aj00tds0nq0057d000iw00brp.jpg\" alt=\"4358721aj00tds0nq0057d000iw00brp\" width=\"680\" height=\"423\" \/><\/p>\n<p>Codex returns the device code authorized link and authentication code<\/p>\n<p>If the device code authorization fails, it's out of date\u3002<\/p>\n<p>Open Mandate Page<\/p>\n<p>access to browser: https:\/\/auth.openai.com\/codex\/device<\/p>\n<p>Normally, you'll see the login page:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52286\" title=\"178e8fc8j00tds0nx003od000iw00ccp\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/178e8fc8j00tds0nx003od000iw00ccp.jpg\" alt=\"178e8fc8j00tds0nx003od000iw00ccp\" width=\"680\" height=\"444\" \/><\/p>\n<p>OpenAI Login Page<\/p>\n<p>Enter your account code to continue\u3002<\/p>\n<p><strong>Don't panic if you run into Ops<\/strong><\/p>\n<p>The easiest thing in this process to talk people out of is that every once in a while the authorization page is going to give you a wrong answer:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52288\" title=\"38ca20d8j00tds0o7003pd000iw00b8p\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/38ca20d8j00tds0o7003pd000iw00b8p.jpg\" alt=\"38ca20d8j00tds0o7003pd000iw00b8p\" width=\"680\" height=\"404\" \/><\/p>\n<p>Ops Error on Device Code Authorization Page<\/p>\n<p>It's not a failure. There's a way around:<\/p>\n<p>Try again, enter any wrong account and move the process to the next page:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52289\" title=\"0b21fc2ej00tds0og004od000iw00dlp\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/0b21fc2ej00tds0og004od000iw00dlp.jpg\" alt=\"0b21fc2ej00tds0og004od000iw00dlp\" width=\"680\" height=\"489\" \/><\/p>\n<p>Click Edit to resume login<\/p>\n<p>Click Edit to change the mailbox to the correct account number and enter the password to continue\u3002<\/p>\n<p><strong>Enter Device Code<\/strong><\/p>\n<p>After login is completed, the page will require you to enter the nine-bit device code just provided by Codex:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52290\" title=\"6a0659cfj00tds0oo0040d000iw00bwp\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/6a0659cfj00tds0oo0040d000iw00bwp.jpg\" alt=\"6a0659cfj00tds0oo0040d000iw00bwp\" width=\"680\" height=\"428\" \/><\/p>\n<p>Enter device code complete Codex device authorization<\/p>\n<p>Finish it, Continue\u3002<\/p>\n<p><strong>Confirmation of authorization<\/strong><\/p>\n<p>Then there will be an authorized confirmation page, meaning that the ChatGPT account will be allowed to share the identity with Codex CLI:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52291\" title=\"7ef8a072j00tds0p1004md000iw00dgp\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/7ef8a072j00tds0p1004md000iw00dgp.jpg\" alt=\"7ef8a072j00tds0p1004md000iw00dgp\" width=\"680\" height=\"484\" \/><\/p>\n<p>Confirms that the ChatGPT account is authorized to be used by Codex<\/p>\n<p>Let's just go straight here, Continue\u3002<\/p>\n<p>And when it's done, go back to Codex and tell it, \"Okay, it'll finish, and it'll actually access the CLIProxyAPI\u3002<\/p>\n<p><strong>Continue adding more accounts<\/strong><\/p>\n<p>If you have more than one account, repeat the authorization process above\u3002<\/p>\n<p>You just have to say to Codex:<\/p>\n<pre><code class=\"language-*\">We have to keep adding the account number<\/code><\/pre>\n<p>Then we can repeat the steps ahead\u3002<\/p>\n<p><strong>Check management backstage<\/strong><\/p>\n<p>once the account number is completed, open: http:\/\/127.0.0.1:8317\/management.html<\/p>\n<p>If it doesn't open, just let Codex help you check\u3002<\/p>\n<p>default management password is local-manage-key\u3002<\/p>\n<p>The first time you open it, you see the login page, you fill in the default management password:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52292\" title=\"58baa79ej00tds0pf004gd000iw00bwp\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/58baa79ej00tds0pf004gd000iw00bwp.jpg\" alt=\"58baa79ej00tds0pf004gd000iw00bwp\" width=\"680\" height=\"428\" \/><\/p>\n<p>CLIProxyAPI manages background login pages<\/p>\n<p>Once the login is successful, the following background overview page will be found:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52293\" title=\"024783 cfj00tds0pm004kd000iw00bxp\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/024783cfj00tds0pm004kd000iw00bxp.jpg\" alt=\"024783 cfj00tds0pm004kd000iw00bxp\" width=\"680\" height=\"429\" \/><\/p>\n<p>CLIProxyAPI administration backstage overview page<\/p>\n<p>If you want other devices in the same LAN to be called, you can also say to Codex:<\/p>\n<pre><code class=\"language-*\">Configure CLIProxyAPI into a local area network (LAN) accessible\u3002<\/code><\/pre>\n<p>In Codex, replace it with a local API<\/p>\n<p>When both the agent level and the account number are ready, the Codex front end can be delivered to this local interface\u3002<\/p>\n<p>Let Codex change you directly to config.yaml, the core configuration is these two values:<\/p>\n<pre><code class=\"language-*\">openai_base_url: \"http:\/\/192.168.3.6:8317\/v1\" # of which ip corresponds to your own ip\napi_key: \"local-api-key\"<\/code><\/pre>\n<p>If it's only for your own use, you can write the address as follows:<\/p>\n<pre><code class=\"language-*\">openai_base_url: \"http:\/\/127.0.0.1:8317\/v1\"\napi_key: \"local-api-key\"<\/code><\/pre>\n<p>Among them:<\/p>\n<ul>\n<li>openai_base_url points to your CLIProxyAPI service<\/li>\n<li>api_key default is a local-api-key<\/li>\n<\/ul>\n<p>It is recommended that these two lines be copied directly to Codex to fill them in for you\u3002<\/p>\n<p><strong>Select API Key Access in Codex Welcome Page<\/strong><\/p>\n<p>After reopening Codex, do not leave the official login and select Enter API key (if the account has been entered first):<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52294\" title=\"6babc866\/j00tds0px004rd000i00b5p\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/6babc866j00tds0px004rd000iw00b5p.jpg\" alt=\"6babc866\/j00tds0px004rd000i00b5p\" width=\"680\" height=\"401\" \/><\/p>\n<p>Enter API key<\/p>\n<p>To enter API Key interface, fill in: local-api-key<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-52295\" title=\"c429bc82j00tds0q3004ud000iv00bop\" src=\"https:\/\/www.1ai.net\/wp-content\/uploads\/2026\/04\/c429bc82j00tds0q3004ud000iv00bop.jpg\" alt=\"c429bc82j00tds0q3004ud000iv00bop\" width=\"679\" height=\"420\" \/><\/p>\n<p>Codex Enter API Key<\/p>\n<p>Summary of frequently asked questions<\/p>\n<p>1. What if the authorization page is always wrong<\/p>\n<ul>\n<li>Try again<\/li>\n<li>Wrong number first<\/li>\n<li>More, Edit<\/li>\n<li>Change the correct account number<\/li>\n<\/ul>\n<p>2. What about the management page<\/p>\n<ul>\n<li>Is the service out already<\/li>\n<li>Port 8317. Has it changed<\/li>\n<li>Did you tie the service to another address<\/li>\n<\/ul>\n<p>If you don't want to find out for yourself, just let Codex help you restart and check\u3002<\/p>","protected":false},"excerpt":{"rendered":"<p>A Plus account is not enough, a Pro account is often idle? Three minutes to build your own local proxy pool! After the operation, you'll be able to open the stop! And at the beginning of all this, you just have to prepare a Cordex. The principle of client - &gt; CLIProxyAPI - &gt; Account Scheduling - &gt; OpenAI Advantages: The front end is only configured once, and the subsequent account exchange does not need to change each client<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[149,144],"tags":[8469,6623,190,8470],"collection":[],"class_list":["post-52282","post","type-post","status-publish","format-standard","hentry","category-jiaocheng","category-baike","tag-ai","tag-codex","tag-openai","tag-8470"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.1ai.net\/en\/wp-json\/wp\/v2\/posts\/52282","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.1ai.net\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.1ai.net\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.1ai.net\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.1ai.net\/en\/wp-json\/wp\/v2\/comments?post=52282"}],"version-history":[{"count":0,"href":"https:\/\/www.1ai.net\/en\/wp-json\/wp\/v2\/posts\/52282\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.1ai.net\/en\/wp-json\/wp\/v2\/media?parent=52282"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.1ai.net\/en\/wp-json\/wp\/v2\/categories?post=52282"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.1ai.net\/en\/wp-json\/wp\/v2\/tags?post=52282"},{"taxonomy":"collection","embeddable":true,"href":"https:\/\/www.1ai.net\/en\/wp-json\/wp\/v2\/collection?post=52282"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}