
Loyiha haqida
ccodex-sleep-state — Go tilida yozilgan mahalliy vosita bo‘lib, Codex’dan foydalanish jarayonida yuzaga kelishi mumkin bo‘lgan javob sifati o‘zgarishi, tezlik cheklovi, ulanish xatolari va konfiguratsiya ziddiyatlarini kamaytirishga qaratilgan. U ulanish boshqaruvi, proksi chiqish nuqtalari, turn-state yig‘ish, konfiguratsiyani boshqarish va nosozliklarni aniqlashni bitta mahalliy xizmat hamda veb-panelga birlashtiradi, shu tariqa konfiguratsiya fayllarini qo‘lda o‘zgartirish zaruratini kamaytiradi.
Avval shuni aniq ta’kidlash kerak: bu vosita akkaunt limitini oshirmaydi va chiqish nuqtasini almashtirgandan keyin model sifati albatta tiklanishini kafolatlamaydi. U ulanish, konfiguratsiya va javoblardagi X-Codex-Turn-State bilan ishlaydi, natijalarni yig‘ish, kiritish holati, so‘rov yo‘li va xato sabablarini tekshirishni osonlashtiradi.
Loyiha hozircha ommaviy beta sinov bosqichida. Turli Release versiyalarining funksiyalari farq qilishi mumkin. Yuklab olingan versiyaning chiqarilish qaydlariga amal qiling; ayrim modellar yoki siqilgan jarayonlar muvaffaqiyatli sinovdan o‘tganini barcha holatlar qabul qilingan deb tushunmaslik kerak.
Asosiy funksiyalar
- Mahalliy veb-panel: Codex boshqaruvga o‘tgan-o‘tmaganini, so‘rovlar xizmat orqali o‘tayotganini, sessiya holati va so‘rovlar hisoblagichini ko‘rish.
- turn-state yig‘ish va kiritish: Nomzod chiqish nuqtalaridan qisqa so‘rov yuborish, javobdagi state’ni tekshirish va keyingi so‘rovlarda uni qoidalar asosida ishlatish.
- Bir nechta autentifikatsiya usuli: Rasmiy ChatGPT login’i, OpenAI rasmiy API key’i hamda Responses proksisi yoki CCS API key’ini alohida qayta ishlash.
- Model izolyatsiyasi:
gpt-6-astra,gpt-5.6-solvagpt-5.6-terraqo‘llab-quvvatlanadi; state akkaunt, credential va model bo‘yicha ajratiladi, modellar o‘rtasida aralashtirilmaydi. - Proksi va obunalar: HTTP, HTTPS, SOCKS5, shuningdek Clash/Mihomo YAML, qatorlar bo‘yicha URI va Base64 URI obunalari qo‘llab-quvvatlanadi.
- Konfiguratsiyani himoyalash: Boshqaruvga olishdan oldin Codex konfiguratsiyasini zaxiralash, xizmat to‘xtatilganda uni tiklashga urinish; konfiguratsiya buzilganda tiklash paneliga kirish.
- Diagnostika: Maxfiy ma’lumotlari olib tashlangan diagnostikani yuklab olish yoki nosozliklarni aniqlash ma’lumotlarini yig‘ish uchun
doctorbuyrug‘ini ishga tushirish.
O‘rnatishdan oldingi tayyorgarlik
Avvalo Codex ushbu vositasiz ham normal ishlashini tekshiring. Rasmiy akkaunt uchun avval login jarayonini yakunlang; proksi xizmatidan foydalanganda esa o‘zingizning API key’ingizni oldindan sozlang.
Agar CCS yoki CC Switch’dan bir vaqtda foydalansangiz, unda joriy foydalanish uchun kerakli provider, upstream va autentifikatsiya konfiguratsiyasini tanlang, so‘ng Codex’dan chiqing va konfiguratsiya almashtirishni vaqtincha to‘xtating. ccodex-sleep-state CCS akkauntlar bazasini boshqarmaydi; u faqat Codex’da joriy tanlangan provider’ni o‘qiydi va kirish nuqtasini vaqtincha mahalliy xizmatga yo‘naltiradi.
To‘g‘ri o‘rnatish paketini tanlash
- Loyihaning Releases sahifasini oching.
- Oddiy Windows kompyuteri uchun
windows-amd64ni tanlang. - Windows ARM qurilmasi uchun
windows-arm64ni tanlang. - Apple chip’li Mac uchun
darwin-arm64ni tanlang. - Intel Mac uchun
darwin-amd64ni tanlang. - Yuklab olgach, paketni to‘liq arxivdan chiqaring; alohida faylni arxiv ichidan to‘g‘ridan-to‘g‘ri ishga tushirmang.
Ishga tushirish va boshlang‘ich sozlash
Ishga tushirish skriptidan foydalanish
Windows foydalanuvchilari start.cmd faylini, macOS foydalanuvchilari esa start.command faylini ikki marta bosing. Xizmat ishga tushgach, brauzer odatda mahalliy boshqaruv panelini avtomatik ochadi va joriy sessiyaga bevosita kiradi; boshqaruv parolini oldindan nusxalash shart emas.
Dastur yetishmayotgan xizmat konfiguratsiyasini yaratadi, Codex’ni zaxiralaydi va boshqaruvga oladi. Panelda boshqaruv amalga oshirilgani ko‘ringach, Codex’ni qayta ishga tushiring va yangi sessiya yarating, so‘ng sinov uchun qisqa xabar yuboring. Eski sessiya tezkor almashtirishni qo‘llamaydi, shuning uchun faqat eski sessiyada test o‘tkazmang.
Buyruq satridan ishga tushirish
Agar chiqarilgan paketda ishga tushirish skripti bo‘lmasa, dastur katalogida setup buyrug‘ini bajaring. Windows buyrug‘i:
.\ccodex-sleep-state.exe setup
macOS buyrug‘i:
./ccodex-sleep-state setup
setup yetishmayotgan konfiguratsiyani yaratadi, xizmatni ishga tushiradi va panelni ochadi; avval saqlangan obuna hamda proksi sozlamalarini tiklamaydi. Eski versiya ushbu buyruqni qo‘llamasa, yangiroq Release versiyasiga yangilang.
Agar brauzer avtomatik ochilmasa, terminal chiqishiga ko‘ra boshqaruv manziliga qo‘lda kiring. Standart manzil: http://127.0.0.1:17841/admin/. So‘ng terminalda ko‘rsatilgan joriy boshqaruv parolini joylashtiring.
Ishga tushirish dasturining o‘zi model so‘rovlarini yubormaydi, ammo Codex ulanganidan keyin state yig‘ish haqiqiy limitni sarflashi mumkin. Xizmat ishlayotgan paytda terminal oynasini ochiq qoldiring.
Birinchi ulanishni yakunlash
- Paneldagi “Foydalanishni boshlash” bo‘limiga kiring va konfiguratsiya holatida boshqaruvga o‘tilgani ko‘rsatilganini tasdiqlang.
- Agar proksi aniqlanmasa, “Obunalar va proksi” bo‘limini ochib, mahalliy HTTP, HTTPS yoki SOCKS5 manzilini kiriting yoki masofaviy obuna hamda mahalliy obuna faylini import qiling.
- “Ulanish sozlamalari” bo‘limida model va akkaunt qoidalarini tasdiqlang.
- Zaruratga ko‘ra “turn-state kiritish” funksiyasini yoqing yoki o‘chiring.
- Codex’ni qayta ishga tushiring va mutlaqo yangi sessiya yarating.
- Qisqa xabar yuboring, so‘ng so‘rovlar hisoblagichi, sessiya va yig‘ish diagnostikasini tekshirish uchun panelga qayting.
Birinchi ishga tushirishda zaxira siyosati aniq belgilanmagan bo‘lsa, setup sukut bo‘yicha “state yig‘ilmasa, odatdagi yo‘naltirish” rejimini tanlaydi. Avval qat’iy rejim aniq tanlangan bo‘lsa, bu tanlov saqlanib qoladi.
Bosh sahifadagi “Codex’ni bir bosishda ulash” funksiyasi asosan ulanishni qayta tekshirish va tiklash uchun mo‘ljallangan; uni har bir ishga tushirishdan keyin bosish shart emas. Mavjud proksi, obuna, model va kiritish tugmalari ham saqlanadi.
turn-state, 292 va 332 ni tushunish
Vosita upstream javobidagi X-Codex-Turn-State ga e’tibor qaratadi. U nomzod chiqish nuqtalaridan qisqa so‘rov yuboradi, state o‘rami, vaqt va shifrlangan bloklar sonini tekshiradi hamda joriy tajriba qoidalariga mos qiymatni saqlaydi; keyingi so‘rovlar ushbu qiymatni yuboradi va unga mos chiqish nuqtasidan foydalanadi.
- Shaxsiy akkaunt qoidasi: Loyiha qabul qiladigan tajribaviy shakl 10 blokdan iborat bo‘lib, odatda 292 belgidir; 11 blok yoki 312 belgi mos qiymat hisoblanmaydi.
- Team yoki Business qoidasi: Loyiha qabul qiladigan tajribaviy shakl 12 blokdan iborat bo‘lib, odatda 332 belgidir; 13 blok yoki 356 belgi mos qiymat hisoblanmaydi.
Ushbu uzunliklar OpenAI tomonidan rasman e’lon qilingan sifat ko‘rsatkichlari emas. Uzunlik mos kelishi model albatta “to‘liq quvvat” holatida ekanini isbotlamaydi; mos kelmasligi esa proksi buzilganini yoki model sifati pasayganini yakka o‘zi isbotlay olmaydi.
Avtomatik aniqlash joriy so‘rovdagi tarif ko‘rsatmalariga tayanadi; faqat uzunlikka qarab akkauntni Team deb belgilamaydi. Ko‘rsatma noaniq bo‘lsa, panel qaysi qoida qo‘llanganini ko‘rsatadi; shuningdek, shaxsiy yoki Team rejimini qo‘lda belgilash mumkin.
Qat’iy rejim yoki odatiy yo‘naltirish zaxirasini tanlash
Qat’iy rejim
Qat’iy rejim mos kelmaydigan state’dan foydalanmaydi. Yig‘ish muvaffaqiyatsiz bo‘lsa, so‘rov aniq sabab bilan qaytariladi. Foydalanuvchi strict rejimini aniq tanlagan bo‘lsa, keyingi setup ishga tushirilishi bu tanlovni avtomatik almashtirmaydi.
Odatiy yo‘naltirish zaxirasi
Odatiy yo‘naltirish zaxirasi foydalanish mumkin bo‘lgan state bo‘lmaganda kiritishni to‘xtatadi, biroq rasmiy so‘rovlarni tanlangan chiqish nuqtasi orqali yo‘naltirishda davom etadi. Rasmiy so‘rov ko‘pi bilan bir marta yo‘naltiriladi; holat ma’lumotida bu safar kiritish amalga oshirilmagani aniq ko‘rsatiladi, yig‘ish muvaffaqiyatli bo‘lgandek ko‘rsatilmaydi.
Bu rejim tezlik cheklovini bekor qilmaydi. 401, 403 yoki 429 holatlarida xizmat to‘xtatish qoidalariga amal qiladi; upstream’ga yuborilgan rasmiy generatsiya so‘rovi chiqish nuqtasi almashtirilgach avtomatik qayta yuborilmaydi.
Proksi va obunalarni sozlash
Agar proksi dasturi o‘rnatilgan bo‘lsa, “Obunalar va proksi” sahifida mahalliy HTTP, HTTPS yoki SOCKS5 manzilini kiriting. Birinchi avtomatik ulanish faqat 127.0.0.1 dagi keng tarqalgan SOCKS5 portlarini tekshiradi, mahalliy tarmoqni skanerlamaydi va proksi dasturining akkauntlar bazasini o‘qimaydi.
Loyiha Clash/Mihomo YAML, qatorlar bo‘yicha URI va Base64 URI obunalarini ham qo‘llab-quvvatlaydi. Ichki chiqish adapterlariga AnyTLS, SS, SSR, VMess, VLESS, Trojan, Hysteria, Hysteria2 va TUIC kiradi, biroq obunadagi TUN, DNS yoki tizim qoidalari import qilinmaydi.
Ulanishni sinash, chiqish nuqtasini belgilash yoki avtomatik tanlovga qaytish uchun “Marshrutlash” sahifasidan foydalanish mumkin. E’tibor bering: ulanish testi muvaffaqiyatli bo‘lishi faqat tarmoq yo‘li ishlayotganini bildiradi, mos state yig‘ilganini emas.
CCS va proksi xizmatlari bilan birga foydalanish
Rasmiy ChatGPT login’i uchun vosita state’ni yig‘ishi va kiritishi, shuningdek kiritishni o‘chirishi mumkin. OpenAI rasmiy API key’i esa API kanali orqali yo‘naltiriladi va ChatGPT obunasi login’i sifatida qaralmaydi.
Responses proksisi yoki CCS API key’i uchun vosita mavjud upstream va API key autentifikatsiya usulini saqlaydi, proksiga rasmiy login ma’lumotlarini yubormaydi va rasmiy state’ni kiritmaydi.
Agar CCS provider, upstream yoki autentifikatsiya usulini haqiqatan almashtirsa, xizmat ma’lumotlarni noto‘g‘ri manzilga yubormaslik uchun yo‘naltirishni to‘xtatadi. Quyidagi almashtirish tartibi tavsiya etiladi:
- ccodex-sleep-state’ni to‘xtating.
- CCS’da konfiguratsiyani almashtiring.
- ccodex-sleep-state’ni qayta ishga tushiring.
- Codex’ni qayta ishga tushiring va yangi sessiya yarating.
Konfiguratsiya ziddiyati yuzaga kelsa, tranzaksiya fayllarini o‘chirmang va TOML faylini o‘ylamasdan qo‘lda tahrirlamang. “Konfiguratsiyani tekshirish va tiklash” bo‘limiga kirib, avval o‘zgarishlarni ko‘rib chiqing, CCS’ning joriy konfiguratsiyasini saqlashni ustuvor qiling, so‘ng qayta boshqaruvga o‘ting.
Xizmatni to‘xtatish va konfiguratsiyani tiklash
Xizmat ishlayotgan paytda terminal oynasini ochiq qoldiring. Chiqish kerak bo‘lsa, terminalda Ctrl+C tugmalarini bosing, konfiguratsiya tiklanishi yakunlanishini kuting, shundan keyin Codex’ni qayta ishga tushiring.
Brauzerni yopish, state kiritishni o‘chirish va xizmatni to‘xtatish — uch xil amal: brauzerni yopish fon xizmatini to‘xtatmaydi; kiritishni o‘chirish so‘rovlarni yo‘naltirishni davom ettirishi mumkin; faqat xizmat jarayonini tugatish to‘xtatish va konfiguratsiyani tiklash jarayonini boshlaydi.
Keng tarqalgan muammolarni bartaraf etish
Panelda “Boshqaruvga olinmagan” ko‘rsatilishi
Xizmat ishga tushgani Codex ulanishni yakunlaganini anglatmaydi. Paneldagi konfiguratsiya ko‘rsatmalariga amal qiling va faqat o‘qish uchun mo‘ljallangan --no-config rejimi ishlatilmayotganini tasdiqlang.
Codex javob beradi, ammo panelda so‘rov yo‘q
Avval Codex’ni qayta ishga tushiring va yangi sessiya yarating. Hali ham yozuv bo‘lmasa, Codex boshqa konfiguratsiya, profile, loyiha yoki topshiriq darajasidagi ustma-ust sozlamadan foydalanayotganini yoxud boshqa nusxa bir vaqtda ishlayotganini tekshiring.
codex_config_changed yoki 409 paydo bo‘lishi
“Konfiguratsiyani tekshirish va tiklash” bo‘limini oching, farqlarni ko‘rib chiqing, CCS’ning joriy konfiguratsiyasini saqlashni ustuvor qiling, so‘ng qayta boshqaruvga o‘ting.
state_unavailable yoki mahalliy 503 paydo bo‘lishi
Akkaunt qoidalari, yig‘ish diagnostikasi va kutish vaqtini tekshiring. Foydalanishni avval tiklash kerak bo‘lsa, odatiy yo‘naltirish zaxirasini aniq tanlang yoki kiritishni vaqtincha o‘chiring.
state_shape_changed paydo bo‘lishi
Bu state shakli joriy qoidalarga mos kelmasligini bildiradi. Rasmiy so‘rov allaqachon limitni sarflagan bo‘lishi mumkin; xizmat uni avtomatik qayta yubormaydi. Akkaunt qoidalari, upstream va so‘nggi o‘zgarishlarni tekshiring, uzunlik qoidalarini shunchaki o‘zgartirmang.
415 paydo bo‘lishi
Yangi versiya rasmiy mijozning gzip va zstd so‘rov kodlashlarini qo‘llab-quvvatlaydi. Eski versiya ishlamayotganini tasdiqlang, so‘ng maxfiy ma’lumotlari olib tashlangan diagnostikani ko‘ring.
502, 503 yoki vaqt tugashi paydo bo‘lishi
Proksi chiqish nuqtasi va upstream xizmati holatini tekshiring. Tarmoq nosozligini state uzunligini o‘zgartirish orqali bartaraf etib bo‘lmaydi.
401, 403 yoki 429 paydo bo‘lishi
Login holati, kirish huquqi yoki tezlik cheklovi tiklanishini kutish zaruratini alohida tekshiring. Loyiha ushbu to‘xtatish shartlarini chetlab o‘tish uchun IP manzilni tinimsiz almashtirmaydi.
Konfiguratsiya faylining buzilishi
Agar xizmat JSON fayli buzilgan bo‘lsa, setup faqat o‘qish uchun tiklash panelini ochadi. Zaxira nusxasi mavjudligini tasdiqlagach, uni qayta yarating va xizmatni qayta ishga tushiring. Codex TOML fayli buzilgan bo‘lsa, avval zaxirani saqlang, so‘ng aniq qayta yaratish jarayonidan foydalaning yoki CCS orqali qayta generatsiya qiling; buzilgan fayldan API key’ni taxmin qilib olmang.
Diagnostika yig‘ish uchun doctor’dan foydalanish
Texnik xizmat ko‘rsatuvchi, guruh a’zosi yoki AI Agent’ga nosozliklarni aniqlash ma’lumotlarini taqdim etishdan oldin Windows foydalanuvchilari quyidagi buyruqni ishga tushirishi mumkin:
.\ccodex-sleep-state.exe doctor
macOS foydalanuvchilari ishga tushiradi:
./ccodex-sleep-state doctor
Muammo haqida xabar berishda odatda operatsion tizim, Codex versiyasi, vosita versiyasi, xato xabari va zarur bo‘lsa, maxfiy ma’lumotlardan tozalangan diagnostika kifoya. auth.json faylini, boshqaruv parolini, to‘liq obuna havolasini, akkaunt ma’lumotlarini yoki butun ma’lumotlar katalogini yubormang.
Ilg‘or foydalanish bo‘yicha maslahatlar
Haqiqiy konfiguratsiya katalogini aniqlash
Agar CODEX_HOME o‘rnatilgan bo‘lsa, vosita shu joydan foydalanadi. Shuningdek, CCODEX_STATE_HOME va --data-dir ham qo‘llab-quvvatlanadi. Hozir qaysi konfiguratsiya ishlatilayotganiga ishonchingiz komil bo‘lmasa, quyidagini ishga tushiring:
ccodex-sleep-state paths
Joriy konfiguratsiya joylashuvini faqat katalog nomiga qarab taxmin qilmang.
Yig‘ish xarajati va kutish davrini tushunish
state yig‘ilishi haqiqiy kvotadan foydalanadi. Odatiy holatda har bir siklda ko‘pi bilan 6 ta nomzod chiqish nuqtasi sinab ko‘riladi, bitta tekshiruv ko‘pi bilan 20 soniya davom etadi, ikki yig‘ish sikli orasida kamida 180 soniya bo‘lishi kerak. Oddiy generatsiya so‘rovlari avtomatik qayta yuborilmaydi. Shu sababli yig‘ish yoki chiqish nuqtasini almashtirishni bepul qayta urinish deb qaramang.
Model va akkauntlarni ajratish
Astra, Sol va Terra o‘rtasida state’dan qayta foydalanmang. Standart modelni o‘zgartirgandan so‘ng Codex’ni qayta ishga tushiring yoki yangi sessiya yarating. Modeldan haqiqatan foydalanish mumkinligi baribir akkaunt huquqlari va upstream tegishli modelni taqdim etishiga bog‘liq.
Siqishni qo‘llab-quvvatlashni ehtiyotkorlik bilan baholash
Loyiha qaydlariga ko‘ra, haqiqiy Sol’ning yangi V2 masofaviy siqishi va siqishdan keyin javobni davom ettirish muvaffaqiyatli ishlagan; eski V1 to‘g‘ridan-to‘g‘ri upstream ulanishi esa 404 qaytargan. Yuborishdan oldingi bridge faqat mahalliy simulyatsiya qilingan mijoz testi bilan yakunlangan, haqiqiy qo‘shimcha qabul testida esa chiqish nuqtasi orqali uzatish xatosi yuz bergan. Shuning uchun barcha siqish usullari to‘liq ishlaydi deb hisoblab bo‘lmaydi.
Muhim cheklovlar va xavfsizlik chegaralari
- Hozir qo‘llab-quvvatlanadigan modellar faqat
gpt-6-astra,gpt-5.6-solvagpt-5.6-terradan iborat. - Hozir Responses HTTP va SSE ishlatiladi; WebSocket qo‘llab-quvvatlanmaydi va ixtiyoriy protokol konversiyasi taqdim etilmaydi.
- Vositа akkaunt nomidan model huquqlarini yoqmaydi va modelni jimgina almashtirmaydi.
- U tizim proksisini almashtirmaydi, Codex tizimiga kirishni yangilamaydi va reset kartasidan foydalanmaydi.
- Relay xizmati ulana olishi turn-state yondashuvi ushbu relay uchun samarali ekanini anglatmaydi.
- Autentifikatsiya qiymatlari va to‘liq state odatiy jurnallarga yozilmaydi; loyihada telemetriya yo‘q va jurnallar muallifga yuklanmaydi.
- Mahalliy proksi konfiguratsiyasi va tiklash zaxira nusxalarida baribir maxfiy ma’lumotlar bo‘lishi mumkin, shuning uchun ularni o‘zingiz ehtiyotkorlik bilan saqlashingiz kerak.
Ishlab chiquvchilar uchun ma’lumot
Loyiha Go tilida yozilgan, statik boshqaruv sahifasi ikkilik faylga joylashtirilgan va alohida frontend xizmatini ishga tushirishni talab qilmaydi. Asosiy kod tuzilmasi quyidagilarni o‘z ichiga oladi:
cmd/ccodex-sleep-state: buyruqlar, bir bosishda ishga tushirish va diagnostika.internal/codexconfig: provider tahlili, konfiguratsiyani boshqarish, semantik tekshiruv va tiklanadigan tuzatishlar.internal/gateway: model va akkauntlarni ajratish, yig‘ish, siqish va oqimli uzatish.internal/turnstate: state’ni o‘rash qoidalari, joriy va zaxira qiymatlar.internal/proxyroute: obunalarni tahlil qilish va chiquvchi ulanish.internal/service: yagona nusxa, veb-panel, konfiguratsiyani tezkor almashtirish va so‘rov diagnostikasi.
Loyiha GPL-3.0 litsenziyasi asosida tarqatiladi, proksi qismida Mihomo’dan qayta foydalanilgan. Ushbu loyihaning OpenAI, Mihomo yoki GPT-Load bilan hech qanday tashkiliy aloqasi yo‘q.
Xulosa
ccodex-sleep-state’ning asosiy qiymati tezlik cheklovlarini olib tashlash yoki model sifatini tiklashga va’da berish emas, balki Codex ulanishi, proksi chiqish nuqtasi, turn-state, konfiguratsiya zaxira nusxalari va xatolar diagnostikasini ko‘rinadigan, tekshiriladigan hamda tiklanadigan qilishdir. Birinchi foydalanishda avval asl Codex ishlashini tekshiring, so‘ng setupni ishga tushiring, panel orqali boshqaruvni tasdiqlang, Codex’ni qayta ishga tushiring va yangi sessiya yarating. Muammoga duch kelsangiz, avval panel diagnostikasini ko‘ring va doctorni ishga tushiring; konfiguratsiyani ko‘r-ko‘rona o‘zgartirmang yoki maxfiy hisob ma’lumotlarini oshkor qilmang.
