Ostajan opas
Näin valitset koodiälyn MCP-palvelimen
Valitse palvelin, joka vastaa agenttisi todellisiin kysymyksiin omasta koodistasi: missä symboli on määritelty, kuka sitä kutsuu, mikä hajoaa, jos se muuttuu, ja missä on käsite, jonka nimeä kukaan ei enää muista.
Siihen tarvitaan useita hakutapoja, aitoa jäsennystä toimittamillesi kielille, indeksi, joka pysyy commitien tahdissa, ja käyttöönotto, jonka asiakasohjelma hoitaa muutamassa minuutissa. Tee alla oleva 15 minuutin testi repositoriolla, jonka tunnet: se kertoo enemmän kuin mikään ominaisuuslista, tämäkin mukaan lukien.
Mitä verrata
Esitä jokaiselle ehdokkaalle samat kysymykset ja tarkista vastaukset omalla koodillasi. Ominaisuuslista on väite; oikea vastaus omassa repositoriossasi on näyttö.
| Kriteeri | Mitä kysyä | Miten tarkistaa |
|---|---|---|
| Hakutavat | Yhdistääkö se semanttisen, rakenteellisen (AST), graafi- ja tarkan tekstihaun, ja ohjaako se jokaisen kysymyksen oikeaan hakutapaan? Yksi hakutapa jättää kokonaisia kysymysluokkia vaille vastausta. | Esitä yksi kysymys kustakin lajista: käsite, koodin muoto, kutsujien luettelo ja tarkka virheilmoitus. |
| Kielituen syvyys | Jäsennetäänkö jokaisen toimittamasi kielen koodi AST:ksi symboleineen ja suhteineen, vai indeksoidaanko se vain tekstinä? Pitkä kieliluettelo voi kätkeä pinnallisen tuen. | Etsi kieliesi julkaistut kyvykkyysliput ja hae sitten yksi symboli kustakin kielestä. |
| Repositorion koko | Kestääkö se suurimman repositoriosi ja useita repositorioita kerralla? Pysyvätkö tulokset järjestettyinä ja rajattuina, vai hukuttaako yksi iso tiedosto vastauksen? | Indeksoi suurin oikea repositoriosi, älä demoprojektia, ja mittaa aika ensimmäiseen hyödylliseen vastaukseen. |
| Ajantasaisuus ja synkronointi | Miten indeksi saa tiedon uusista commiteista, ja kuinka kauan kestää, ennen kuin muutos löytyy haulla? Vanhentunut indeksi vastaa itsevarmasti koodista, jota ei enää ole. | Tee commit, joka nimeää jotain uudelleen, ja hae sitten sekä uutta että vanhaa nimeä. |
| Tietoturva ja tietojen käsittely | Missä lähdekoodiasi säilytetään, mitä lähetetään kolmansille osapuolille, käytetäänkö sitä koulutukseen ja mitä poistetaan, kun katkaiset yhteyden? | Lue tietojen käsittelyä koskeva sivu. Etsi nimettyjä palveluntarjoajia ja konkreettisia poistosääntöjä, älä merkkejä. |
| Käyttöönotto asiakasohjelmittain | Onko jokaiselle tiimisi käyttämälle asiakasohjelmalle dokumentoitu määritys, ja palveleeko yksi päätepiste ne kaikki? | Yhdistä kaksi asiakasohjelmaa, joita tiimisi jo käyttää, ja mittaa molempien aika. |
| Hinnoittelumalli | Onko hinta julkinen? Maksatko käyttäjäpaikan, agentin vai työtilan mukaan, ja riittääkö ilmaistaso oikeaan kokeiluun? | Hinnoittele todellinen kokoonpanosi: agentit, repositoriot ja indeksoidut rivit, joita oikeasti ajaisit. |
| Näyttö omalla koodilla | Voitko testata sitä tänään omalla repositoriollasi ilman myyntipuhelua? | Jos kokeilu vaatii ensin palaverin, sekin on vastaus. |
Missä indeksi sijaitsee
Se, missä indeksi sijaitsee, on vähemmän tärkeää kuin se, mihin se osaa vastata. Agenttisi tarvitsee oikean tiedoston, symbolin ja kutsujaluettelon juuri silloin, kun se suunnittelee muutosta, joten arvioi jokainen ehdokas yllä olevilla kysymyksillä omaa koodiasi vasten.
Testaa omalla repolla 15 minuutissa
Käytä repositoriota, jonka tunnet hyvin, jotta voit arvioida jokaisen vastauksen yhdellä silmäyksellä. Laske vastaukset, jotka jouduit korjaamaan.
-
Yhdistä repositorio ja kirjaa, kuinka kauan kestää ennen kuin ensimmäinen haku palauttaa tuloksia.
-
Esitä käsitekysymys, jolla ei ole yhteisiä avainsanoja koodin kanssa, esimerkiksi ”missä käsittelemme vanhentuneet istunnot?” Avaa jokainen viitattu tiedosto ja rivi.
-
Hae yksi symboli nimellä ja kysy sitten sen kutsujia. Vertaa luetteloa siihen, mitä tiedät.
-
Valitse funktio, jota aiot muuttaa, ja kysy, mikä riippuu siitä. Se luettelo on sen vaikutusalue: vertaa sitä testeihin, jotka havaitsisivat rikkoutumisen.
-
Kysy koodin muotoa nimen sijaan, esimerkiksi kaikkia reittikäsittelijöitä tai kaikkia luokkia, jotka toteuttavat tietyn rajapinnan.
-
Hae tarkkaa merkkijonoa, kuten virheilmoitusta, ja varmista, että jokainen osuma on todellinen.
-
Tee commit pienestä uudelleennimeämisestä, odota, että indeksi ehtii perään, ja hae molempia nimiä.
-
Laske korjaukset. Voittaja on palvelin, joka tarvitsi niitä vähiten, sanoipa sen ominaisuuslista mitä tahansa.
Käsitteet selitettyinä
- Koodiälyn MCP-palvelin
- MCP-palvelin, joka indeksoi lähdekoodin ja tarjoaa sen tekoälyagenteille työkaluina. Sen sijaan, että agentti liittäisi kokonaisia tiedostoja kehotteeseen, se esittää kysymyksen ja saa järjestetyt tulokset tiedostopolkuineen ja rivinumeroineen.
- Koodigraafi
- Kartta siitä, miten symbolit, tiedostot ja moduulit liittyvät toisiinsa: määrittelyt, viittaukset, kutsut, tuonnit ja periytyminen. Se vastaa kysymykseen ”kuka käyttää tätä?” lukematta jokaista tiedostoa.
- Vaikutusalue
- Koodi, johon symbolin muutos voi vaikuttaa: sen kutsujat, siitä riippuvat osat ja niitä kattavat testit. Sen tunteminen ennen muutosta on juuri se, mihin graafihakua tarvitaan.
- AST-haku
- Haku abstraktista syntaksipuusta eli koodin jäsennetystä rakenteesta. Se löytää koodia muodon perusteella, esimerkiksi jokaisen funktion, jolla on tietty dekoraattori, mihin pelkkä tekstihaku ei luotettavasti pysty.
- Semanttinen haku
- Haku merkityksen perusteella upotusten avulla. Se löytää kuvaukseen sopivan koodin, vaikka koodilla ja kysymyksellä ei olisi yhtään yhteistä sanaa.
- Tarkka tekstihaku
- Literaali- tai säännöllisen lausekkeen vastaavuus. Oikea työkalu virheilmoituksille, määritysavaimille ja tunnisteille, jotka jo tiedät.
Mihin Maguyva sopii
Maguyva on isännöity koodiälyn MCP-palvelin. Se indeksoi yhdistämäsi GitHub-repositoriot ja antaa agentillesi 11 MCP-työkalua, ja jokainen tulos viittaa tiedostopolkuun.
- Haku
- Semanttinen, rakenteellinen, graafi- ja tarkka tekstihaku sekä symbolihaku ja reititystyökalu, joka valitsee jokaiselle kysymykselle oikean hakutavan.
-
intelligent_search -
semantic_search -
structural_search -
text_pattern_search -
find_symbol -
dependency_search -
analyze_dependencies
-
- Kielet
- Indeksoituja kieliä ja tekstimuotoja 285: AST-pohjainen rakenteellinen haku 247 kielelle, symbolien poiminta 282 kielelle ja graafisuhteet 151 kielelle. Syvyys vaihtelee kielittäin, joten tarkista omasi.
- Ajantasaisuus
- Indeksit päivittyvät GitHub-synkronointitöiden kautta koodin muuttuessa.
- Käyttöönotto
- Yksi etä-MCP-päätepiste ja vaiheittaiset määritykset 23 dokumentoidulle asiakasohjelmalle.
- Hinnoittelu
- Julkinen, ja työtilakohtainen käyttäjäpaikkojen sijaan. Free-paketti kattaa 3 repositoriota ja 50 000 indeksoitua riviä, mikä riittää 15 minuutin testiin.
- Tietojen käsittely
- Tietoturvasivulla kerrotaan, mitä säilytetään missä, mitä lähetetään upotuksia varten ja mitä poistetaan, kun katkaiset yhteyden.
Repositoriot yhdistetään tällä hetkellä GitHub-palvelusta. Jos koodisi on muualla, tarkista yhteensopivuussivu ennen kuin aloitat.
// paras benchmark on repo, jonka tunnet jo.