AI Class

Cara Bangun AI Agent Penilaian Kualitas Kode dengan n8n + LLM (MVP 2 Hari)

· 3 menit baca

Cara Bangun AI Agent Penilaian Kualitas Kode dengan n8n + LLM (MVP 2 Hari)

Problem: Developer junior sering submit pull request dengan bug atau antipattern, tapi tim review tidak punya waktu untuk memeriksa tiap baris. Akibatnya, technical debt menumpuk dan release jadi lebih lambat.

Solusi praktis? AI Agent yang otomatis menilai kualitas kode, memberi skor, dan menyarankan perbaikan—semua lewat workflow n8n yang terhubung ke LLM (misalnya OpenAI GPT‑4 atau Claude).

Konsep Singkat (Tanpa Teori Berlebihan)

  • AI Agent: Bot yang menerima kode sebagai input, memanggil LLM untuk analisis, dan mengembalikan rekomendasi.
  • n8n: Orkestrator ber‑basis low‑code yang mengatur alur: trigger → fetch code → call LLM → post comment.
  • LLM Prompt Engineering: Prompt yang diformat supaya LLM mengerti konteks bahasa pemrograman, standar kode, dan aturan tim.

Workflow Teknis di n8n

  1. Trigger GitHub Pull Request (Webhook node). Set event = "pull_request" & action = "opened" atau "reopened".
  2. Fetch Changed Files – gunakan GitHub → Get Pull Request Files node, filter hanya file *.js, *.py, *.ts etc.
  3. Extract Code Snippet – Function node: gabungkan semua diff menjadi satu string, batasi maxTokens = 2000 untuk menghindari limit LLM.
  4. LLM Evaluation – HTTP Request node ke OpenAI/Anthropic API.
    {
      "model": "gpt-4o",
      "messages": [{"role": "system","content": "You are a senior code reviewer. Evaluate the given code snippet for readability, performance, security, and best‑practice compliance. Return JSON with fields: score (0‑100), issues (array of strings), suggestions (array of strings)."},
      {"role": "user","content": "{{ $json.code }}"}]
    }
       
    Pastikan header Content-Type: application/json dan Authorization: Bearer YOUR_API_KEY.
  5. Parse LLM Response – Set node: parse JSON, calculate overall_score = average(score).
  6. Decision Node – Jika overall_score < 70, kirim komentar perbaikan ke PR; jika >=70, beri 👍 dan label "auto‑approved".
  7. Post Comment / Add Label – GitHub → Create Comment dan GitHub → Add Labels nodes.
  8. Notify via Slack (Opsional) – Slack → Send Message dengan ringkasan skor.

Contoh Use Case Real

Tim startup fintech memiliki 5 developer junior. Setiap hari rata‑rata 12 PR masuk. Dengan AI Agent:

  • Waktu review turun dari 30 menit per PR menjadi 5 menit (hanya review manual untuk PR <70).
  • Technical debt berkurang 40% dalam 1 bulan karena issue otomatis ditandai sejak pertama.
  • Developer menerima feedback langsung di komentar PR, mempercepat learning curve.

Strategi & Insight Penting

  • Prompt Versioning: Simpan semua prompt di repo Git, gunakan n8n → Git Pull node untuk meng‑update tanpa redeploy workflow.
  • Cost Control: Batch file diffs menjadi satu panggilan LLM; gunakan model: gpt-4o-mini untuk kode sederhana, fallback ke gpt-4o bila skor <70.
  • Human‑in‑the‑Loop: Tambahkan Manual node untuk reviewer senior meng‑override keputusan AI bila diperlukan.
  • Security: Jangan kirim kode proprietary ke LLM publik tanpa enkripsi; gunakan layanan LLM on‑premise (e.g., Ollama) untuk kode sensitif.
  • Continuous Improvement: Simpan hasil evaluasi ke BigQuery/SQLite; analisis pola error tiap minggu, kemudian refine prompt atau tambahkan rule‑based linting.

Penutup + Call to Action

Dengan hanya beberapa node n8n dan satu prompt LLM, kamu sudah dapat membangun AI Agent Penilaian Kualitas Kode yang mengurangi beban review, meningkatkan standar kode, dan mempercepat shipping. Tidak perlu menulis ribuan baris script—semua dapat di‑drag‑drop.

Mulai sekarang: fork repo template n8n-code-review-agent, set API key, dan jalankan workflow di environment dev. Dalam 2 hari, timmu sudah dapat merasakan manfaatnya.

Sudah siap mengotomasi review kode? Join komunitas JIPRAKS dan share hasil build‑mu!

Artikel terkait