Masalah instalasi umum

Masalah izin Linux

Saat menginstal Claude Code dengan npm, Anda mungkin mengalami kesalahan izin jika prefiks global npm Anda tidak dapat ditulis oleh pengguna (misalnya /usr, atau /usr/local).

Solusi yang direkomendasikan: Buat prefiks npm yang dapat ditulis pengguna

Pendekatan teraman adalah mengonfigurasi npm untuk menggunakan direktori dalam folder home Anda:

# Pertama, simpan daftar paket global yang ada untuk migrasi nanti
npm list -g --depth=0 > ~/npm-global-packages.txt

# Buat direktori untuk paket global Anda
mkdir -p ~/.npm-global

# Konfigurasikan npm untuk menggunakan jalur direktori baru
npm config set prefix ~/.npm-global

# Catatan: Ganti ~/.bashrc dengan ~/.zshrc, ~/.profile, atau file yang sesuai untuk shell Anda
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc

# Terapkan pengaturan PATH baru
source ~/.bashrc

# Sekarang instal ulang Claude Code di lokasi baru
npm install -g @anthropic-ai/claude-code

# Opsional: Instal ulang paket global sebelumnya di lokasi baru
# Lihat ~/npm-global-packages.txt dan instal paket yang ingin Anda simpan

Solusi ini direkomendasikan karena:

  • Menghindari modifikasi izin direktori sistem
  • Membuat lokasi yang bersih dan khusus untuk paket npm global Anda
  • Mengikuti praktik terbaik keamanan

Pemulihan Sistem: Jika Anda telah menjalankan perintah yang mengubah kepemilikan dan izin file sistem atau sejenisnya

Jika Anda sudah menjalankan perintah yang mengubah izin direktori sistem (seperti sudo chown -R $USER:$(id -gn) /usr && sudo chmod -R u+w /usr) dan sistem Anda sekarang rusak (misalnya, jika Anda melihat sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set), Anda perlu melakukan langkah-langkah pemulihan.

Metode Pemulihan Ubuntu/Debian:
  1. Saat melakukan reboot, tahan SHIFT untuk mengakses menu GRUB

  2. Pilih “Advanced options for Ubuntu/Debian”

  3. Pilih opsi mode pemulihan

  4. Pilih “Drop to root shell prompt”

  5. Pasang kembali sistem file sebagai dapat ditulis:

    mount -o remount,rw /
    
  6. Perbaiki izin:

    # Kembalikan kepemilikan root
    chown -R root:root /usr
    chmod -R 755 /usr
    
    # Pastikan /usr/local dimiliki oleh pengguna Anda untuk paket npm
    chown -R YOUR_USERNAME:YOUR_USERNAME /usr/local
    
    # Atur bit setuid untuk binary penting
    chmod u+s /usr/bin/sudo
    chmod 4755 /usr/bin/sudo
    chmod u+s /usr/bin/su
    chmod u+s /usr/bin/passwd
    chmod u+s /usr/bin/newgrp
    chmod u+s /usr/bin/gpasswd
    chmod u+s /usr/bin/chsh
    chmod u+s /usr/bin/chfn
    
    # Perbaiki konfigurasi sudo
    chown root:root /usr/libexec/sudo/sudoers.so
    chmod 4755 /usr/libexec/sudo/sudoers.so
    chown root:root /etc/sudo.conf
    chmod 644 /etc/sudo.conf
    
  7. Instal ulang paket yang terpengaruh (opsional tetapi direkomendasikan):

    # Simpan daftar paket yang terinstal
    dpkg --get-selections > /tmp/installed_packages.txt
    
    # Instal ulang
    awk '{print $1}' /tmp/installed_packages.txt | xargs -r apt-get install --reinstall -y
    
  8. Reboot:

    reboot
    
Metode Pemulihan Alternatif dengan Live USB:

Jika mode pemulihan tidak berfungsi, Anda dapat menggunakan live USB:

  1. Boot dari live USB (Ubuntu, Debian, atau distribusi Linux apa pun)

  2. Temukan partisi sistem Anda:

    lsblk
    
  3. Pasang partisi sistem Anda:

    sudo mount /dev/sdXY /mnt  # ganti sdXY dengan partisi sistem Anda yang sebenarnya
    
  4. Jika Anda memiliki partisi boot terpisah, pasang juga:

    sudo mount /dev/sdXZ /mnt/boot  # jika diperlukan
    
  5. Chroot ke sistem Anda:

    # Untuk Ubuntu/Debian:
    sudo chroot /mnt
    
    # Untuk sistem berbasis Arch:
    sudo arch-chroot /mnt
    
  6. Ikuti langkah 6-8 dari metode pemulihan Ubuntu/Debian di atas

Setelah memulihkan sistem Anda, ikuti solusi yang direkomendasikan di atas untuk mengatur prefiks npm yang dapat ditulis pengguna.

Masalah auto-updater

Jika Claude Code tidak dapat memperbarui secara otomatis, mungkin karena masalah izin dengan direktori prefiks global npm Anda. Ikuti solusi yang direkomendasikan di atas untuk memperbaikinya.

Jika Anda lebih suka menonaktifkan auto-updater, Anda dapat: Jika Anda lebih suka menonaktifkan auto-updater, Anda dapat mengatur variabel lingkungan DISABLE_AUTOUPDATER ke 1

Izin dan autentikasi

Prompt izin berulang

Jika Anda menemukan diri Anda berulang kali menyetujui perintah yang sama, Anda dapat mengizinkan alat tertentu untuk berjalan tanpa persetujuan menggunakan perintah /permissions. Lihat Dokumentasi Izin.

Masalah autentikasi

Jika Anda mengalami masalah autentikasi:

  1. Jalankan /logout untuk keluar sepenuhnya
  2. Tutup Claude Code
  3. Mulai ulang dengan claude dan selesaikan proses autentikasi lagi

Jika masalah berlanjut, coba:

rm -rf ~/.config/claude-code/auth.json
claude

Ini menghapus informasi autentikasi tersimpan Anda dan memaksa login bersih.

Kinerja dan stabilitas

Penggunaan CPU atau memori tinggi

Claude Code dirancang untuk bekerja dengan sebagian besar lingkungan pengembangan, tetapi mungkin mengkonsumsi sumber daya yang signifikan saat memproses basis kode besar. Jika Anda mengalami masalah kinerja:

  1. Gunakan /compact secara teratur untuk mengurangi ukuran konteks
  2. Tutup dan mulai ulang Claude Code di antara tugas-tugas utama
  3. Pertimbangkan untuk menambahkan direktori build besar ke file .gitignore Anda

Perintah macet atau membeku

Jika Claude Code tampak tidak responsif:

  1. Tekan Ctrl+C untuk mencoba membatalkan operasi saat ini
  2. Jika tidak responsif, Anda mungkin perlu menutup terminal dan memulai ulang

Tombol ESC tidak berfungsi di terminal JetBrains (IntelliJ, PyCharm, dll.)

Jika Anda menggunakan Claude Code di terminal JetBrains dan tombol ESC tidak menghentikan agen seperti yang diharapkan, ini kemungkinan karena bentrokan pengikatan tombol dengan pintasan default JetBrains.

Untuk memperbaiki masalah ini:

  1. Buka Settings → Tools → Terminal
  2. Klik hyperlink “Configure terminal keybindings” di sebelah “Override IDE Shortcuts”
  3. Di dalam pengikatan tombol terminal, gulir ke bawah ke “Switch focus to Editor” dan hapus pintasan tersebut

Ini akan memungkinkan tombol ESC berfungsi dengan baik untuk membatalkan operasi Claude Code alih-alih ditangkap oleh tindakan “Switch focus to Editor” PyCharm.

Mendapatkan bantuan lebih lanjut

Jika Anda mengalami masalah yang tidak tercakup di sini:

  1. Gunakan perintah /bug dalam Claude Code untuk melaporkan masalah langsung ke Anthropic
  2. Periksa repositori GitHub untuk masalah yang diketahui
  3. Jalankan /doctor untuk memeriksa kesehatan instalasi Claude Code Anda