Yeqa uye kokuyinhloko
Izifundo ze-AI

Yakha Isango Lama-Coding Agent Elinabahlinzeki Abaningi nge-My Free Code

Funda ukufaka i-My Free Code v0.8, ukulungisa amamodeli asekelwa abahlinzeki noma asebenza endaweni, ukuxhuma ama-coding agent, ukuphatha ukuqondiswa ngamazinga kanye nezinye izindlela ezilandelanayo, ukuhlola i-Admin UI, nokuvikela isango ukuze lisetshenziswe endaweni.

Yakha Isango Lama-Coding Agent Elinabahlinzeki Abaningi nge-My Free Code

Okufezwa Yikhodi Yami Yamahhala

My Free Code v0.8 iyisango elizimele elisebenzisa abahlinzeki abaningi, elenzelwe i-Claude Code namanye ama-agent okubhala ikhodi. Isebenzisa isango lendawo le-FastAPI elamukela izicelo zama-agent, likhethe imodeli emisiwe, lihumushele isicelo kumhlinzeki ofanele, bese lisakaza impendulo liyibuyisele kuklayenti. Le phrojekthi ayihlangene ne-Anthropic.

Isango lisekela iphrothokholi ye-Anthropic Messages ku-/v1/messages, ukubalwa kwamathokheni e-Anthropic ku-/v1/messages/count_tokens, kanye nephoyinti lokugcina elihambisana ne-OpenAI Responses ku-/v1/responses. Liphe also ukutholwa kwamamodeli nge-/v1/models, iphoyinti lokuhlola impilo ku-/health, i-Admin UI yendawo ku-/admin, nama-API okuphatha aqinisekisiwe ngaphansi kwe-/api/admin/*.

Izici Ezibalulekile

  • Amaphrothokholi ama-agent amaningi: Yamukela izicelo ezihambisana ne-Anthropic Messages ne-OpenAI Responses ngesango elilodwa.
  • Amakhono ama-agent: Phatha ama-Server-Sent Events okusakazwa, izincazelo zamathuluzi, izingcingo zamathuluzi, imiphumela yamathuluzi, izithombe, kanye nokudluliswa kwemethadatha yokucabanga.
  • Ukuhambisa amazinga e-Claude: Nikeza amamodeli ahlukene angaphandle ezicelweni ze-Fable, Opus, Sonnet, ne-Haiku.
  • Ukuhambisa okuthembekile: Sebenzisa ezinye izinhlobo zamamodeli ezihlelwe ngokulandelana, ukubambezeleka kokubuyela emuva kwempilo yabahlinzeki, ukulawula inani lezicelo ngomhlinzeki ngamunye, nokulawula amawindi esilinganiso.
  • Ubunikazi bemodeli obuzinzile: Gcina ubunikazi bemodeli yomphakathi besango noma i-router ithumela isicelo komunye umhlinzeki.
  • Ukujwayelekile kokucabanga: Gcina inhloso yokucabanga yesitayela sika-Claude ihlukile ezinkambini zezicelo eziqondene nomhlinzeki.
  • Ukusekelwa kwamamodeli endawo: Xhuma i-Ollama, i-LM Studio, noma i-llama.cpp ngamaphoyinti awo okugcina ahambisana ne-OpenAI.
  • Abethuli bama-agent: Lungiselela indawo ye-proxy ye-Claude Code, Codex, Pi, OpenCode, Cline, Hermes, DeepSeek Harness, Grok Build, ne-Muse Code.

Ikhathalogi yabahlinzeki ihlanganisa iqoqo elibanzi lezinsizakalo zamafu nezinhlelo ezisebenza endaweni. Abahlinzeki abavamile abahambisana ne-OpenAI basebenzisa ezokuthutha ezabiwe, kanti abahlinzeki abanokuqinisekisa noma amaphrothokholi angajwayelekile badinga ama-adapter azinikele. Ngakho-ke, okufakwe kukhathalogi akufanele kuthathwe njengesiqinisekiso sokusekelwa jikelele ngaphandle kokucushwa okuqondene nomhlinzeki.

Indlela Isakhiwo Esisebenza Ngayo

             Ama-agent Okubhala Ikhodi / Ama-IDE
                      |
          +-----------+-----------+
          |                       |
    Anthropic Messages       OpenAI Responses
          |                       |
          +-----------+-----------+
                      |
                FastAPI Gateway
                      |
                Model Router
                      |
          +-----------+-----------+
          |                       |
       Primary                  Fallbacks
          |                       |
          +-----------+-----------+
                      |
              Provider Runtime
                      |
       +--------------+--------------+
       |              |              |
 OpenAI-compatible  Specialized   Local
     adapter          adapter     runtime
       |              |              |
     APIs          provider API  Ollama/LM Studio

Idizayini ihlukanisa amaphrothokholi angenayo okuxhumana ngocingo ekuhanjisweni nasekuhlanganisweni kwabahlinzeki. Ama-adapter e-HTTP amukela izicelo, ungqimba lohlelo lukhetha futhi lusebenzise umzila, bese i-runtime yomhlinzeki ixhumana nezokuthutha ezabiwe ezihambisana ne-OpenAI, i-adapter ekhethekile, noma i-runtime yendawo. Abethuli be-CLI bahlala bengungqimba oluhlukile olucupha indawo yeklayenti bese ludlulisela ukuqaliswa ku-agent yokubhala ikhodi efakiwe.

Faka Isango

Okudingekayo Ngaphambili

  • Python 3.10 noma entsha.
  • Ikhophi yendawo ye-repository.
  • Izimpawu zokuqinisekisa zanoma yibaphi abahlinzeki abakude ohlela ukubasebenzisa.
  • Ikhasimende le-agent yokubhala ikhodi ofuna ukuliqalisa, elifakiwe futhi elitholakala ku-PATH.

1. Dala indawo ebonakalayo

python -m venv .venv

2. Yenze isebenze bese ufaka okuncikile

Kwi-Windows PowerShell, sebenzisa:

.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
copy .env.example .env

Kwi-macOS noma i-Linux, sebenzisa:

source .venv/bin/activate
python -m pip install -r requirements.txt
cp .env.example .env

3. Qalisa i-My Free Code

python -m my_free_code

Ngokuzenzakalelayo, isango litholakala ku-http://127.0.0.1:8082. Ungahlola insizakalo nge-http://127.0.0.1:8082/health bese uvula i-Admin UI yendawo ku-http://127.0.0.1:8082/admin.

Hlela Amamodeli Nabahlinzeki

Hlela ifayela elidalwe le-.env ukuze ukhethe imodeli ezenzakalelayo, unikeze amamodeli amazinga e-Claude, futhi uchaze ezinye izindlela ezihlelwe ngokulandelana. Isibonelo esilandelayo sisebenzisa amamodeli avela kubahlinzeki abaningana:

MODEL=open_router/openrouter/free
MODEL_SONNET=deepseek/deepseek-chat
MODEL_HAIKU=groq/llama-3.3-70b-versatile
MODEL_OPUS=nvidia_nim/meta/llama-3.3-70b-instruct
FALLBACK_MODELS=deepseek/deepseek-chat,ollama/llama3.1

Faka okhiye be-API abahambisana nabahlinzeki ku-.env. Sebenzisa i-.env.example njengereferensi yezinkambu zokucushwa ezisekelwayo. Qalisa kabusha isango ngemva kokushintsha indawo yalo.

MODEL ikhetha imodeli evamile yesango. Okuguquguqukayo okuqondene namazinga, okufana ne-MODEL_SONNET, MODEL_HAIKU, ne-MODEL_OPUS, kuvumela i-router ukuthi iqondise amazinga amamodeli ka-Claude ezinsizeni zangaphandle ezahlukene. FALLBACK_MODELS iwuhlu lwezinye izindlela oluhlukaniswe ngokhefana futhi oluhlelwe ngokulandelana.

Xhuma i-Claude Code

Inketho 1: Setha indawo ngesandla

Kwi-Windows PowerShell, qondisa i-Claude Code esangweni lendawo elihambisana ne-Anthropic:

$env:ANTHROPIC_BASE_URL="http://127.0.0.1:8082"
$env:ANTHROPIC_AUTH_TOKEN="local"
$env:CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY="1"
claude

I-URL eyisisekelo iqondisa kabusha izicelo ze-Claude Code ku-My Free Code, kanti ukutholwa kwamamodeli kuvumela iklayenti ukuthi libuze ikhathalogi yamamodeli yesango.

Inketho 2: Sebenzisa i-launcher adapter

python -m my_free_code.cli.mfc claude

I-launcher ilungisa imvelo ye-proxy yasendaweni bese idlulisela izimpikiswano kuklayenti le-Claude Code elifakiwe. Ayilifaki iklayenti ngokwayo.

Qalisa Amanye Ama-Coding Agent

Lokhu kusebenzisana kwe-launcher kusekela namanye amaklayenti amaningi:

python -m my_free_code.cli.mfc codex
python -m my_free_code.cli.mfc pi
python -m my_free_code.cli.mfc opencode
python -m my_free_code.cli.mfc cline
python -m my_free_code.cli.mfc hermes
python -m my_free_code.cli.mfc deepseek-harness
python -m my_free_code.cli.mfc grok
python -m my_free_code.cli.mfc muse

Ngaphambi kokusebenzisa omunye wale miyalo, qinisekisa ukuthi iklayenti elihambisanayo lifakiwe futhi liyatholakala ku-PATH. I-launcher ilungisa kuphela imvelo yesango bese ibiza uhlelo olukhona.

Qonda Ama-Fallback Ahleliwe

Ake sithi imvelo iqukethe lokhu kulungiselelwa komzila:

MODEL_SONNET=deepseek/deepseek-chat
FALLBACK_MODELS=groq/llama-3.3-70b-versatile,ollama/llama3.1

Isicelo se-Sonnet siqale siye ku-deepseek/deepseek-chat. Uma lowo mzamo wehluleka ngaphambi kokukhiqiza okukhiphayo, umzila uzama groq/llama-3.3-70b-versatile. Uma nomzamo wesibili wehluleka ngaphambi kokukhipha okuthile, uzama ollama/llama3.1.

Claude Code
    |
    v
deepseek/deepseek-chat
    |
    | failure before output
    v
groq/llama-3.3-70b-versatile
    |
    | failure before output
    v
ollama/llama3.1

Uma impendulo esakazwayo isiqalile ukukhipha okuthile, isango alishintshi abahlinzeki buthule. Lokhu kugwema ukuphinda i-turn noma ukuhlanganisa izimpendulo ezingaphelele ezivela kumamodeli ahlukene.

Sebenzisa Amamodeli Asendaweni

Ollama

Qalisa isevisi ye-Ollama ngokwehlukana, bese ulungiselela i-base URL ehambisana ne-OpenAI nemodeli:

OLLAMA_BASE_URL=http://127.0.0.1:11434/v1
MODEL=ollama/llama3.1

LM Studio

Qalisa iseva yasendaweni ye-LM Studio bese usebenzisa:

LM_STUDIO_BASE_URL=http://127.0.0.1:1234/v1
MODEL=lmstudio/qwen3.5-coder

llama.cpp

Qalisa iseva ye-llama.cpp bese ulungiselela:

LLAMACPP_BASE_URL=http://127.0.0.1:8080/v1
MODEL=llamacpp/my-model

Izinhlelo zesikhathi sokusebenza zasendaweni zingavela futhi ku-FALLBACK_MODELS, okwenza imodeli yasendaweni ibe enye indlela lapho isicelo esikude sehluleka ngaphambi kokukhipha okuthile.

Lungiselela Ukuziphatha Kokucabanga

Isango lamukela inhloso yokucabanga yesitayela se-Claude bese liyijwayelanisa ngaphambi kokuba i-adapter yomhlinzeki ihumushe isicelo. Izindlela ezisekelwayo yilezi:

auto
on
off

Izinga lomzamo elingakhethwa lingaba:

low
medium
high

Lokhu kwehlukanisa kugcina inqubomgomo yokucabanga ebhekiswe ku-agent izimele ezinkambini eziqondene nomhlinzeki. I-adapter yomhlinzeki ngamunye ingakwazi ukubeka imephu yemodi nomzamo ojwayelekile ezinkambini ezibhalwe umhlinzeki ongaphezulu.

Qapha Isango

Vula i-Admin UI endaweni ku:

http://127.0.0.1:8082/admin

I-JSON Admin API eqinisekisiwe ihlanganisa:

GET /api/admin/status
GET /api/admin/models
GET /api/admin/providers

Sebenzisa lezi endpoints ukuhlola isimo sesango, ikhathalogi yamamodeli, nabahlinzeki abalungiselelwe. Ama-endpoint okuphatha adinga ukuqinisekiswa futhi kufanele ahlale eyimfihlo.

Izeluleko Ezithuthukile

Gcina ubunikazi bomphakathi bemodeli buzinzile

Isicelo singaqondiswa kumodeli ethile yezinga noma kumhlinzeki we-fallback, kodwa isango ligcina ubunikazi bomphakathi bemodeli buzinzile. Ngakho izinhlelo zamaklayenti zingasebenzisana nemodeli yesango ngaphandle kokulandelela zonke izinqumo zomzila eziphezulu.

Hlela ukuhleleka kwe-fallback ngenhloso

Faka amamodeli ku-FALLBACK_MODELS ngendlela eqondile okufanele azanywe ngayo. Cabangela ukutholakala komhlinzeki nokuthi isikhathi sokusebenza sasendaweni kufanele sibe inketho yokugcina yini. Khumbula ukuthi i-fallback yenzeka kuphela ngaphambi kokuba okukhiphayo okusakazwayo kuqinisekiswe.

Hlonipha umehluko wabahlinzeki

Abahlinzeki abaningi basebenzisa ezokuthutha ezivumelana ne-OpenAI, kodwa izindlela ezingajwayelekile zokuqinisekisa noma amaphrothokholi zidinga ama-adapter akhethekile. Qinisekisa ukuthi i-adapter yomhlinzeki efanele nemininingwane yokuqinisekisa kuyatholakala, esikhundleni sokucabanga ukuthi konke okufakwe kukhathalogi kusebenza ngendlela efanayo.

Sebenzisa ama-endpoint ephrothokholi ngokuqondile lapho kudingeka

  • Thumela izicelo ze-Anthropic Messages ku-/v1/messages.
  • Bala amathokheni efomethi ye-Anthropic nge-/v1/messages/count_tokens.
  • Sebenzisa isixhumi esibonakalayo esihambisana ne-OpenAI Responses ku-/v1/responses.
  • Thola amamodeli nge-/v1/models.
  • Hlola impilo yesevisi nge-/health.

Qalisa i-test suite

pytest -q

Indawo yokugcina inama-test anemiphumela enqunyiwe omzila, ukuguqulwa kwephrothokholi, ukuqinisekiswa, ukucabanga, ikhathalogi yamamodeli, nezisekelo zokusakaza. Wasebenzise ngemva kokushintsha ikhodi yesango, yomzila, noma yomhlinzeki.

Imihlahlandlela Yokuphepha

I-My Free Code yenzelwe ukusetshenziswa endaweni. Sebenzisa lezi zinyathelo zokuphepha:

  • Gcina i-HOST=127.0.0.1 ukuze isevisi ibopheleke emshinini wasendaweni.
  • Setha i-PROXY_AUTH_TOKEN engeyona elula ukuqagela.
  • Ungalokothi ufake ifayela le-.env ekulawulweni kwekhodi yomthombo.
  • Ungawavezi ngokuqondile kuma-Internet ama-endpoint okuphatha.
  • Gcina imininingwane yabahlinzeki emvelweni noma ekulungisweni. Isango alithumeli imininingwane yokuqinisekisa yomhlinzeki oyedwa komunye umhlinzeki.

Isiphetho

I-My Free Code inikeza ungqimba lwasendaweni lokuhambisana nokudlulisa izicelo phakathi kwama-agent okubhala ikhodi nabahlinzeki abaningi bamamodeli asefu noma bendawo. Ngemva kokufaka okuncikile kwe-Python, ukumisa amamodeli nemininingwane yokuqinisekisa, nokuqalisa i-gateway, ungaxhuma i-Claude Code noma elinye iklayenti elisekelwayo, unikeze amamodeli ngokwamazinga e-Claude, bese wakha uchungechunge lokubuyela emuva olulawulwayo. Izingqimba zayo ezihlukene zephrothokholi, ukudlulisa izicelo, umhlinzeki, nesiqalisi zenza iphrojekthi ibe lula ukuyihlola nokuyivivinya.