Yeqa uye kokuyinhloko
Izifundo ze-AI

Yakha futhi Usebenzise i-CometixCode, Umsizi Wokubhala Ikhodi we-AI Wase-Terminal Obhalwe nge-Rust

Funda ukwakha i-CometixCode nge-Rust ne-ICU4C, uqalise isixhumi esibonakalayo sayo sase-terminal, ulungiselele ukutholwa kwe-ripgrep, uthole ukuthi iyiphi i-binary yokusesha esebenzayo, futhi usebenzise kahle inqubo yokuhlola ehlukanisiwe yephrojekthi.

Yakha futhi Usebenzise i-CometixCode, Umsizi Wokubhala Ikhodi we-AI Wase-Terminal Obhalwe nge-Rust

Yini i-CometixCode?

I-CometixCode ingumsizi wokubhala ikhodi osekelwe ku-AI osebenza kutheminali, obhalwe nge-Rust. Iwukwenziwa kabusha okuzimele, kwefayela nefayela, kwesixhumi esibonakalayo setheminali se-Anthropic i-Claude Code, hhayi umkhiqizo osemthethweni we-Anthropic.

I-CometixCode ayisona isikhulu, ayihlangene ne-Anthropic, futhi ayigunyazwanga noma isekelwe yi-Anthropic. I-Claude ne-Claude Code yizimpawu zokuhweba ze-Anthropic, PBC.

Isixhumi esibonakalayo sokuqala setheminali se-Claude Code sisebenzisa i-TypeScript ene-React ne-Ink. I-CometixCode iphinda idale leso sakhiwo nge-Rust isebenzisa i-CometixTUI, okuyifoloki lohlaka lwe-UI yetheminali olugcina isimo olubizwa nge-iocraft. Izingxenye ze-TypeScript zihambisana nezingxenye ze-Rust, ama-hook ahambisana nama-hook, kanti umehluko wokwakheka ohleliwe ubhaliwe emthonjeni.

Le phrojekthi isaqhubeka nokuthuthukiswa. Izingxenye ezinkulu zeluphu yokusebenzisana, ukwenziwa kwamathuluzi, izimvume, ukuhlanganiswa kwe-Model Context Protocol, nemiyalo ye-slash sezisetshenzisiwe, kodwa ezinye izindawo zisaphelele kancane.

Izici Eziyinhloko Nokwakheka

  • I-UI yetheminali esekelwe ku-Rust: Isixhumi esibonakalayo sakhiwe ngemodeli yezingxenye nama-hook efana ne-React.
  • Ukudluliswa kokwakheka okusondelene: Le phrojekthi ilandela ukwakheka kwe-CLI eshicilelwe ye-Claude Code, ifayela nefayela, esikhundleni sokuyishintsha ngomklamo omusha.
  • Ukuhamba komsebenzi wokubhala ikhodi okusebenzisanayo: Izingxenye ezinkulu zeluphu yomsizi nohlelo lokwenziwa kwamathuluzi sezisetshenzisiwe.
  • Izimvume nemiyalo: Ukuphathwa kwezimvume nokusekelwa kwemiyalo ye-slash sekusetshenziswe ngezinga elikhulu.
  • Ukusekelwa kwe-MCP: Ukusebenza kwe-Model Context Protocol kufakiwe, nakuba yonke iphrojekthi isathuthukiswa.
  • Amathuluzi etheminali athuthukisiwe: I-CometixTUI inikeza umehluko wezinga lomugqa, ukusatshalaliswa kwemicimbi, ukubuyiselwa kwe-SIGCONT, ukusekelwa kwekhesa ye-IME, ukunamathisela okunabakaki, nokuhlelwa kwegridi.
  • Ukusesha amafayela kwangaphandle: I-CometixCode isebenzisa i-executable ehlukile ye-ripgrep esikhundleni sokuhlanganisa i-ripgrep ku-binary yayo.

Izidingo Zokuqala

Ngaphambi kokwakha i-CometixCode, faka lezi zincike:

  • i-Rust 1.87 noma entsha, usebenzisa i-Rust edition 2024.
  • i-ICU4C, edingwa ama-crate e-rust_icu_* nge-pkg-config.

Faka i-ICU4C ku-macOS

I-Homebrew ifaka i-ICU4C njengephakheji ye-keg-only. Yifake bese wengeza ifolda yayo ye-pkgconfig endleleni yokusesha:

brew install icu4c
export PKG_CONFIG_PATH="$(brew --prefix icu4c)/lib/pkgconfig"

Qalisa i-export ku-shell lapho wakha khona i-CometixCode. Uma usebenza kule phrojekthi njalo, engeza le variable kufayela lokumisa le-shell elifanele.

Faka i-ICU4C ku-Debian noma ku-Ubuntu

sudo apt install libicu-dev pkg-config

Yakha i-CometixCode

Vula itheminali empandeni ye-repository bese wenza i-release build elungiselelwe:

cargo build --release

I-binary ephumayo ibizwa nge-cometix. I-release build ilungele ukusetshenziswa okuvamile ngoba inika amandla ukulungiselelwa kwe-Rust kwe-release.

Qalisa Umsizi

Yakha bese uqala i-CometixCode nge-Cargo usebenzisa:

cargo run --release

Lokhu kuqala isixhumi esibonakalayo setheminali sisebenzisa i-release profile. Njengoba le phrojekthi isathuthukiswa, lindela ukuthi okunye ukuhamba komsebenzi kungakapheleli nakuba ukusebenza okukhulu kokusebenzisana, kwamathuluzi, kwezimvume, kwe-MCP, nokwemiyalo sekukhona.

Umyalo Oyisisekelo Wokuxilonga

Ngaphakathi kwe-CometixCode, sebenzisa lo myalo we-slash ukuze uhlole indawo emisiwe, kuhlanganise nokuthi iyiphi i-executable ye-ripgrep esetshenziswayo:

/doctor

Lokhu kuwusizo kakhulu lapho ukusesha amafayela kungatholakali noma lapho udinga ukuqinisekisa ukuthi i-CometixCode ikhethe i-rg binary efakwe nephakheji noma efakwe ku-host.

Lungiselela i-ripgrep Ukuze Useshe Amafayela

I-CometixCode idlulisela ukusesha amafayela ku-rg, ithuluzi lomugqa womyalo elithi ripgrep. I-executable ye-ripgrep ihlala iyimpahla yangaphandle futhi ayilokothi ihlanganiswe ku-executable ye-cometix.

I-CometixCode isesha i-ripgrep ngale ndlela elandelayo:

  1. vendor/ripgrep/<arch>-<os>/rg eduze kwe-executable, njengoba kusetshenziswa kuma-release archive.
  2. vendor/ripgrep/<arch>-<os>/rg esihlahleni somthombo, njengoba kusetshenziswa ngesikhathi sokuthuthukisa.
  3. Umyalo we-rg wesistimu ye-host otholakala nge-PATH.

Ngalokho ungabeka i-ripgrep build egxilile kufolda yesikhulumi ehambisanayo ye-vendor/ripgrep/ noma ufake i-ripgrep ku-host bese uqinisekisa ukuthi i-rg iku-PATH.

Phoqa i-ripgrep Binary Ye-host

Setha i-USE_BUILTIN_RIPGREP ibe ngu-0 lapho ufuna i-CometixCode yeqe izimpahla ze-ripgrep ezifakiwe futhi isebenzise i-executable ye-host:

USE_BUILTIN_RIPGREP=0 cargo run --release

Ngemva kokuqalisa, sebenzisa i-/doctor ukuze uqinisekise i-binary ekhethiwe.

Qalisa Iqoqo Lezivivinyo Ngokufanele

I-CometixCode inesimo esibanzi kuyo yonke inqubo, okuhlanganisa ama-environment variable nama-cache e-OnceLock. Ukuqalisa zonke izivivinyo njengama-thread enqubweni eyodwa kungavumela isimo sidlule phakathi kwezivivinyo, ngakho i-cargo test evamile ayibhekwa njengesango elivumelekile lekhwalithi lale crate.

Le phrojekthi esikhundleni salokho isebenzisa i-cargo-nextest, ebizwa nge-just. Lokhu kunikeza isivivinyo ngasinye inqubo yaso futhi kugcine isimo se-host obekungenzeka ukuthi isivivinyo sisizuze njengefa.

Qalisa Iqoqo Eliphelele

just test

Leli yisango eliphelele lezivivinyo elidingwa yiphrojekthi.

Qalisa Izivivinyo Ezihambisana Nephethini

just t <pattern>

Faka esikhundleni se-<pattern> ngochungechunge oluncane olusetshenziselwa ukuhlunga izivivinyo ofuna ukuziqhuba.

Yenza Ukuhlolwa Kwekhodi Okusheshayo

just check

Lokhu kuhlola izinhlobo nokubolekwa ngaphandle kokuxhumanisa, okwenza kube wusizo ekutholeni impendulo esheshayo ngenkathi uhlela ikhodi ye-Rust.

Amathiphu Athuthukile Okuthuthukisa

  • Khetha imodi yokukhishwa ekusetshenzisweni okujwayelekile: Sebenzisa cargo run --release ukuze uqalise ukwakhiwa okwenziwe kahle okucaciswe emibhalweni yephrojekthi.
  • Hlola ukutholwa kwe-ICU kuqala: Ku-macOS, ukwehluleka kokwakha okubandakanya i-ICU kungase kubonise ukuthi PKG_CONFIG_PATH ayifaki inkomba yemethadatha ye-ICU4C ye-Homebrew.
  • Hlola ukusesha kwamafayela nge-/doctor: Qinisekisa i-executable ye-ripgrep ekhethiwe ngqo ngaphambi kokushintsha amafayela afakwe ngaphakathi noma ukucushwa kwesistimu.
  • Phina i-ripgrep lapho ukuphindaphindeka kubalulekile: Beka i-binary ehlosiwe ngaphansi kwendlela eqondene nenkundla ethi vendor/ripgrep/ esikhundleni sokuthembela kunoma iyiphi inguqulo efakwe emhlabeni wonke.
  • Ungasebenzisi i-cargo test esikhundleni sesango lephrojekthi: Sebenzisa just test ukuze izivivinyo zithole ukuhlukaniswa kwezinqubo okulindelwe yi-codebase.
  • Bheka i-justfile ukuze uqonde isizathu sokuhlola: Unhlokweni wayo ubhala izilinganiso ezisekela isu lokuhlola elikhethiwe.

Okucatshangelwayo Mayelana Nelayisense

I-CometixCode isatshalaliswa ngaphansi kwelayisense ye-AGPL-3.0-only. Le layisense ihlanganisa isigatshana sokusetshenziswa kwenethiwekhi: uma usebenzisa inguqulo eguquliwe njengensizakalo yenethiwekhi, abasebenzisi bayo banelungelo lokuthola ikhodi yomthombo ehambisana naleyo nguqulo eguquliwe.

Isiphetho

I-CometixCode ihlinzeka ngokwakhiwa kabusha kwezakhiwo zetheminali ye-Claude Code okusekelwe ku-Rust kusetshenziswa i-CometixTUI. Uma i-Rust, i-ICU4C, kanye ne-executable efanele ye-ripgrep sezitholakala, ungayakha futhi uyiqalise nge-Cargo, uhlole ukucushwa kokusesha nge-/doctor, bese uqinisekisa izinguquko ngokusebenzisa ukuhamba komsebenzi kwephrojekthi kwe-just test okuhlukanisa izinqubo.