Dir2md + Spicy: pemindai repositori yang mengekstrak konteks Markdown/JSONL untuk LLM dan laporan keamanan sekaligus
(github.com/flamehaven01)Halo. Sekitar tiga bulan lalu saya pernah memperkenalkan Dir2md untuk pertama kalinya.
Sejak itu, saat diterapkan ke berbagai proyek, keterbatasan strukturalnya mulai terlihat, sehingga kami menata ulang seluruh algoritme, keamanan, dan pipeline output.
❔Apa itu Dir2md
Dir2md adalah alat yang mengubah struktur direktori yang kompleks menjadi konteks Markdown·JSONL yang ramah AI dengan smart sampling, masking keamanan, dan kontrol anggaran token. Alat ini secara otomatis merapikan repo dalam bentuk yang dioptimalkan untuk AI-assisted development.
🔧 Apa yang berubah — hasil penataan ulang total selama 3 bulan
1) Desain ulang mesin optimasi AI
- Penerapan smart sampling head/tail per file
- Penyempurnaan logika alokasi anggaran token otomatis
- Pembenahan struktur pemilihan prioritas file penting
- Penyusunan pipeline output multi-format untuk Markdown, JSON, JSONL, dan manifest
2) Penerapan Spicy (penganalisis keamanan·risiko)
- Dilengkapi pemindai risiko bawaan yang aktif secara default saat dijalankan
- Menerapkan sistem tingkat keparahan 5 level dari ok hingga critical
- Menghasilkan skor risiko 0~100 per repo
- Mengeluarkan Actionable Risk Table yang mencakup file/baris/kategori/panduan penanganan
3) Penguatan mesin masking keamanan
- Masking otomatis untuk pola utama seperti API key, JWT, OAuth, DB URL, PEM, dll.
- Menambahkan regex kustom pengguna dan fitur pemuatan file pola
4) Penerapan deduplikasi berbasis SimHash
- Menghapus file serupa dan artefak hasil build
- Meminimalkan pemborosan token duplikat dalam konteks input LLM
5) Perluasan sistem preset
- Menyediakan empat mode:
raw,pro,ai,fast - Mode
aimencakup anggaran 6000 token + pemeringkatan file berbasis kueri
🌶️ Apa itu Spicy?
Singkatnya, Spicy adalah “reviewer otomatis yang seperti developer senior bermata tajam dan tidak pernah longgar soal keamanan.”
Dir2md bukan sekadar alat untuk “mendokumentasikan direktori”, tetapi juga sekaligus melakukan pemeriksaan keamanan dan kualitas yang wajib dilakukan sebelum repo dimasukkan ke AI.
1) Deteksi informasi sensitif
- Mendeteksi pola yang dapat benar-benar menyebabkan insiden, seperti API Key, OAuth Client Secret, JWT, DB URL, kunci PEM, dll.
2) Analisis enkripsi lemah dan penggunaan keamanan yang rentan
- Mendeteksi kode yang bermasalah dari sisi keamanan, seperti algoritme rentan dan penanganan kunci yang tidak aman
3) Diagnosis kemungkinan injeksi
- Mendeteksi pola yang mirip dengan SQL/Command/Code Injection
4) Paparan data melalui log·debug
- Mendeteksi kode/konfigurasi yang menampilkan informasi sensitif
5) Masalah kontrol akses
- Menganalisis pola yang memiliki celah terkait autentikasi dan otorisasi
- Juga mendeteksi sinyal risiko konfigurasi yang disebutkan di README
📊 Hasil pengukuran aktual berdasarkan 9 repo produksi internal
Berikut angka nyata yang diukur hingga kemarin setelah redesain Dir2md + Spicy:
- Rata-rata 2,4 deteksi informasi sensitif tingkat high·critical per repo
- API key, private key PEM, DB URL, bearer token, dll.
- Ukuran konteks berkurang rata-rata 68%
- 128k → ~41k tokens (semua file yang bermakna tetap dipertahankan)
- Waktu review keamanan: 3,5 jam sebelumnya → 11 detik
- Kebocoran informasi rahasia melalui prompt LLM sejak diterapkan: 0 kasus
Hasil ini adalah performa nyata di lingkungan operasional saat smart sampling · deduplikasi SimHash · analisis risiko Spicy · mesin masking digabungkan.
⭐ Jika proyek ini membantu Anda
Dir2md + Spicy adalah open source.
Sebagian besar fitur yang Anda lihat sekarang dapat berkembang berkat masukan pengguna dan star (⭐). Sekali lagi, terima kasih.
- 👉 Satu GitHub Star sangat berarti!
- 👉 Laporan bug dan usulan ide juga selalu diterima.
2 komentar
📌 Ringkasan pembaruan utama sejak dir2md v1.1.2
v1.2.1 (patch keamanan/keandalan)
vulture) → memblokir vektor RCEdefaults.json+ memperkenalkan sistem prioritasv1.2.0 (optimasi otomatis cerdas)
Pipeline penghematan token 60~70% yang berjalan tanpa konfigurasi
Saat menggunakan
--query, koreksi typo otomatis + perluasan pencarianDesain berpusat pada preset sehingga flag sangat dikurangi (raw/fast/pro/ai)
Diimplementasikan tanpa dependensi NLP/LLM eksternal
v1.1.3
👉 Singkatnya, sejak 1.2.x ini adalah rilis yang berfokus pada “mengurangi konfigurasi, serta keamanan·determinisme·ramah AI”.
(kompatibilitas mundur tetap dipertahankan, tidak ada breaking change pada CLI)
Sumber: CHANGELOG
🚂 Rilis dir2md 1.1.2!
Pembaruan kali ini terlihat kecil di permukaan, tetapi isinya hanya perubahan yang benar-benar berdampak langsung pada stabilitas penggunaan nyata.
🛡 Security
🔸Pra-kompilasi regex masking dasar/lanjutan → mengurangi risiko ReDoS
🔸File berukuran lebih dari 1MB dilewati sebelum dibaca dan hanya dicatat di manifest
⚙️ Performance
🔸Menerapkan cache LRU (2048) untuk estimasi token → meningkatkan kecepatan di repo besar
🔸String kosong pun diperlakukan sebagai minimal 1 token → menghilangkan ambiguitas “0 token”
🧩 UX / Behavior
🔸File yang dilewati meninggalkan hash/ringkasan placeholder untuk meningkatkan transparansi
🔸Pola masking kustom akan diperingatkan lalu diabaikan jika kompilasi gagal (mencegah kegagalan diam-diam)
✅ Tests
🔸22 lulus, 2 dilewati
Meski ini rilis kecil, semua pengujian tetap kami jalankan.
Tujuan versi ini hanya satu:
“Apakah ini aman dijalankan setiap hari di CI dan kode produksi nyata?”
Kini kami selangkah lebih dekat ke sana.
https://github.com/flamehaven01/Dir2md/releases/tag/v1.1.2