Summary

Pemeriksa kode AI ini memindai fungsi atau file terhadap empat sinyal berbasis aturan nyata: fungsi lebih dari 40 baris, nesting melampaui 4 level kedalaman, kepadatan TODO/FIXME, dan panggilan berisiko seperti JSON.parse atau fetch tanpa try/catch. Menghasilkan skor 0-100 dengan rincian baris demi baris tentang apa yang dikurangi dan mengapa, sepenuhnya di browser Anda. Tidak ada akun, tidak ada unggahan, tidak ada penilaian AI kotak hitam—hanya empat pemeriksaan yang akan dijalankan engineer senior mana pun.

Cek Kode dengan AI: Tanda-Tanda Merah Nyata, Bukan Perasaan

Tempel fungsi atau file untuk cek kode dengan AI dan dapatkan skor 0-100 dari empat pemeriksaan yang akan dijalankan engineer staff: panjang fungsi, kedalaman nesting, backlog TODO, dan penanganan kesalahan, dihitung langsung di browser Anda saat mengetik.

Developer mengetik di keyboard mekanis dengan diff pull request terbuka di dual monitor

Pemeriksa kode AI

Tempel fungsi atau seluruh file di bawah. Skor dan rincian diperbarui saat Anda mengetik.

0 lines · dipindai secara lokal, tidak ada yang meninggalkan browser
--
Tempel kode untuk dipindai

Berjalan sepenuhnya di browser Anda. Tidak ada yang diunggah.

    Cara kerjanya

    Empat pemeriksaan, tidak ada kotak hitam

    Struktur: panjang dan nesting

    Fungsi ditandai melampaui 40 baris, cocok dengan default max-lines-per-function ESLint sendiri sebesar 50 dengan beberapa margin. Kedalaman nesting dilacak dengan penghitungan kurung untuk bahasa kurung, atau fallback kedalaman indentasi untuk kode gaya Python, dan ditandai melampaui 4 level dalam, titik sebagian besar panduan gaya sebut tidak dapat dibaca.

    Penanganan kesalahan

    Pemindai mencari panggilan berisiko: JSON.parse, fetch, await, .then, execSync, requests., os.system. Kemudian memeriksa apakah try/catch ada di tempat mana pun dalam kode yang ditempel. Panggilan berisiko tanpa penjaga terdekat berarti pengurangan, bukan lewat gratis.

    Pemeliharaan

    Marker TODO, FIXME, XXX, dan HACK dihitung dan dinormalkan per 100 baris kode. Satu atau dua dalam file normal teknik. Backlog padat mereka adalah sinyal file perlu lulus sebelum dikirim, bukan sesudah.

    Mengapa empat pemeriksaan ini, dan bukan linter nyata

    ESLint, pylint, dan setaranya mem-parse pohon sintaks abstrak, itulah mengapa mereka dapat menangkap variabel tidak terpakai, cabang tidak dapat diakses, dan ketidakcocokan tipe. Tool ini tidak melakukan itu. Ini pemindai teks yang dapat dijalankan pada cuplikan tanpa langkah build, file config, dan install, berguna untuk sepuluh detik antara menyelesaikan fungsi dan membuka pull request. Trade-off jujur: lebih sedikit pemeriksaan, kasar, dihitung transparan, versus penyimpanan setup lebih dalam tapi lebih lambat analizer statis nyata. Jika tim sudah menjalankan ESLint atau pylint di CI, terus jalankan. Tool ini untuk celah sebelum itu, saat kode belum ada di repo.

    Pertanyaan tentang skor

    Apakah pemeriksa kode AI ini benar-benar gratis?
    Ya. Berjalan sepenuhnya di browser dengan tanpa pendaftaran, tanpa kunci API, dan tanpa batas penggunaan. Tidak ada server dalam proses penilaian, jadi tidak ada yang perlu diukur atau ditagih.
    Apakah kode saya diunggah ke mana pun?
    Tidak. Pemindaian berjalan sebagai JavaScript biasa di tab Anda, terhadap teks di textarea. Tidak ada yang dikirim ke server, disimpan, atau dicatat, kecuali acara penggunaan tool anonim tanpa konten kode, hanya untuk melihat widget digunakan.
    Apa perbedaan pemeriksa kode AI dengan linter nyata?
    Ini adalah pemindai heuristik, bukan compiler atau linter seperti ESLint atau pylint. Tidak mem-parse AST, jadi tidak bisa menangkap error tipe, variabel tidak terpakai, atau jalur kode mati. Sebaliknya, menandai empat pola struktural: fungsi panjang, nesting dalam, kepadatan TODO, dan panggilan berisiko tanpa try/catch terdekat.
    Bahasa pemrograman apa yang didukung?
    Apa pun yang dibatasi kurung berjalan baik: JavaScript, TypeScript, Java, C, C#, Go, Rust, PHP, Swift. Kedalaman nesting diukur dengan menghitung kurung yang cocok. Bahasa hanya indentasi seperti Python kembali ke pemeriksaan kedalaman indentasi. Tab dan spasi campuran, atau format tidak biasa, dapat mengacaukan perhitungan nesting.
    Mengapa fungsi yang saya pikir bersih ditandai?
    Biasanya satu dari dua hal: panggilan JSON.parse, fetch, atau await tanpa try/catch di mana pun dalam cuplikan yang ditempel, atau nesting yang melampaui 4 level dalam blok. Tempel lebih banyak konteks, termasuk blok try yang mengelilingi jika ada, dan skor diperbarui saat Anda mengetik.
    Dari mana ambil nilai ambang (40 baris, kedalaman 4, dll)?
    Melacak default umum dalam konfigurasi linter nyata: aturan max-lines-per-function ESLint default 50 baris, dan sebagian besar panduan gaya internal menandai nesting melampaui 3 hingga 4 level sebagai masalah keterbacaan. Kami menetapkan nilai sedikit di bawah default tersebut, di sisi ketat, karena pemindai tanpa parsing AST penuh membutuhkan margin keselamatan yang lebih luas daripada linter nyata.
    Bisakah ini menggantikan code review?
    Tidak, dan seharusnya tidak mencoba. Ini pemeriksaan lima detik sebelum membuka pull request, bukan reviewer. Menangkap bau struktural, bukan bug logika, masalah keamanan, atau masalah arsitektur. Gunakan sebelum review, bukan sebagai gantinya.
    Skor saya 100 tapi kode masih terasa berantakan. Apakah tool salah?
    Ini memeriksa empat hal spesifik, bukan kualitas kode umum. Skor 100 berarti tidak ada fungsi panjang, tidak ada nesting dalam, tidak ada backlog TODO, dan tidak ada panggilan berisiko tanpa penjaga. Tidak berarti penamaan baik, tes ada, atau arsitektur masuk akal enam bulan ke depan.
    Apakah menempel cuplikan parsial mempengaruhi skor?
    Ya, dan itu diharapkan. Jika Anda menempel badan fungsi tanpa try/catch yang membungkusnya di tempat lain dalam file, pemeriksa tidak tahu penjaga itu ada. Untuk pembacaan akurat, tempel unit paling kecil yang berdiri sendiri: satu fungsi, atau satu file.

    Ini memeriksa struktur. CodebaseChat menjawab pertanyaan yang lebih sulit.

    Tanya codebase Anda apa pun dalam bahasa biasa: di mana auth terwiring, mengapa fungsi ada, apa yang memanggil apa di seluruh repo. Tidak perlu grep.