FAQ dan Pemecahan Masalah
Halaman ini membantu memilih workflow Repomix yang tepat, mengurangi output besar, dan menyiapkan konteks codebase untuk asisten AI.
Pertanyaan umum
Untuk apa Repomix digunakan?
Repomix mengemas repository menjadi satu file yang ramah AI. Anda dapat memberi ChatGPT, Claude, Gemini, atau asisten lain konteks codebase lengkap untuk code review, investigasi bug, refactoring, dokumentasi, dan onboarding.
Apakah Repomix bekerja dengan repository privat?
Ya. Jalankan Repomix secara lokal di checkout yang sudah dapat diakses mesin Anda:
repomixTinjau file yang dihasilkan sebelum membagikannya ke layanan AI eksternal.
Bisakah memproses repository GitHub publik tanpa clone?
Ya. Gunakan --remote dengan shorthand atau URL lengkap:
npx repomix --remote yamadashy/repomix
npx repomix --remote https://github.com/yamadashy/repomixFormat output mana yang sebaiknya dipilih?
Mulai dari XML default jika ragu. Gunakan Markdown untuk percakapan yang mudah dibaca, JSON untuk automation, dan plain text untuk kompatibilitas maksimum.
repomix --style markdown
repomix --style jsonLihat Format Output.
Mengurangi penggunaan token
File yang dihasilkan terlalu besar. Apa yang harus dilakukan?
Persempit konteks:
repomix --include "src/**/*.ts,docs/**/*.md"
repomix --ignore "**/*.test.ts,dist/**"
repomix --compress
repomix --remove-commentsUntuk repository besar, gabungkan pola include/ignore dengan kompresi kode.
Apa fungsi --compress?
--compress mempertahankan struktur penting seperti imports, exports, class, function, dan interface, sambil menghapus banyak detail implementasi. Ini berguna untuk memahami arsitektur.
Keamanan dan privasi
Apakah CLI mengunggah kode saya?
Repomix CLI berjalan lokal dan menulis file output di mesin Anda. Website dan ekstensi browser memiliki workflow berbeda; lihat Kebijakan Privasi.
Bagaimana Repomix mencegah secret ikut masuk?
Repomix menggunakan safety check berbasis Secretlint. Anggap ini sebagai perlindungan tambahan dan selalu tinjau output.
Pemecahan masalah
Mengapa ada file yang hilang dari output?
Repomix mengikuti .gitignore, aturan ignore default, dan pola custom. Periksa repomix.config.json, --ignore, dan aturan git ignore.
Bagaimana membuat output reproducible untuk tim?
Buat dan commit konfigurasi bersama:
repomix --initPertanyaan umum tambahan
Apakah Repomix bekerja dengan C#, Python, Java, Go, Rust, atau bahasa lain?
Ya. Repomix membaca file dari project Anda dan memformatnya untuk tool AI, sehingga dapat mem-pack repository dalam bahasa pemrograman apa pun. CLI membutuhkan Node.js 20 atau lebih baru. Beberapa fitur lanjutan, seperti kompresi kode berbasis Tree-sitter, bergantung pada dukungan parser untuk setiap bahasa.
Bisakah saya menggunakan Repomix dengan Hermes Agent, OpenClaw, atau agent lain yang kompatibel dengan MCP?
Ya. Repomix dapat berjalan sebagai MCP server:
npx -y repomix --mcpUntuk Hermes Agent, tambahkan Repomix sebagai stdio MCP server di ~/.hermes/config.yaml:
mcp_servers:
repomix:
command: "npx"
args: ["-y", "repomix", "--mcp"]Untuk OpenClaw atau agent lain yang kompatibel dengan MCP, gunakan command dan args yang sama di tempat agent tersebut mengizinkan konfigurasi external stdio MCP server. Jika assistant Anda mendukung Agent Skills, Anda juga dapat memakai Repomix Explorer Skill.
Bagaimana memakai Repomix agar AI assistant memahami library atau framework baru?
Pack repository library atau dokumentasinya, lalu berikan output sebagai referensi untuk AI assistant:
npx repomix --remote owner/repo
npx repomix --remote owner/repo --include "docs/**,src/**"Untuk penggunaan berulang, Anda dapat membuat direktori Agent Skills yang dapat digunakan kembali:
npx repomix --remote owner/repo --skill-generate library-referenceBagaimana mengecualikan CSS, test, build output, atau file noisy lainnya?
Gunakan --ignore untuk perintah sekali jalan:
repomix --ignore "**/*.css,**/*.test.ts,dist/**,coverage/**"Gunakan --include jika hanya ingin mempertahankan path source atau dokumentasi tertentu:
repomix --include "src/**/*.ts,docs/**/*.md"Apakah ada batas ukuran repository?
CLI tidak memiliki batas ukuran repository tetap, tetapi repository sangat besar dapat dibatasi oleh memori, ukuran file, atau batas upload dan context dari tool AI. Untuk project besar, mulai dari include pattern yang terarah, periksa file dengan token besar, dan pisahkan output jika diperlukan:
repomix --token-count-tree 1000
repomix --split-output 1mbMengapa --include tidak menyertakan file dari node_modules, direktori build, atau path yang di-ignore?
--include mempersempit file yang dicoba untuk di-pack oleh Repomix, tetapi aturan ignore tetap berlaku. File masih dapat dikecualikan oleh .gitignore, .ignore, .repomixignore, pola default bawaan, atau repomix.config.json. Untuk kasus lanjutan, opsi seperti --no-gitignore atau --no-default-patterns dapat membantu, tetapi gunakan dengan hati-hati karena dapat menyertakan dependencies, artefak build, atau file noisy lainnya.