1 poin oleh GN⁺ 5 jam lalu | 1 komentar | Bagikan ke WhatsApp
  • Jika Claude Code terus mengulang frasa seperti “honest take” atau “load-bearing seam”, Anda bisa menggunakan hook MessageDisplay untuk menggantinya dengan ungkapan lain sebelum ditampilkan di layar
  • Skrip Python membaca delta dari JSON di input standar, melakukan penggantian tanpa membedakan huruf besar/kecil, lalu mengembalikan displayContent yang sudah diubah sebagai JSON
  • Dalam contoh, seam diganti menjadi whatchamacallit, you're absolutely right menjadi I'm a complete clown, honest take menjadi spicy doodad, dan load-bearing menjadi cooked
  • Simpan skrip sebagai ~/.claude/hooks/wordswap.sh, berikan izin eksekusi, lalu daftarkan sebagai hook perintah di hooks.MessageDisplay pada ~/.claude/settings.json
  • Hook dimuat saat Claude Code dimulai, jadi Anda perlu membuka sesi baru agar perubahan berlaku; daftar penggantian bisa bebas diubah sesuai kosakata yang diinginkan

Skrip untuk mengubah frasa output

  • Menggunakan hook MessageDisplay untuk mengubah teks yang akan ditampilkan Claude Code di layar
  • wordswap.sh ditulis dengan Python, membaca JSON dari input standar, lalu mengambil string dari field delta
  • Menambahkan batas \b di depan dan belakang setiap frasa asli, melakukan escape dengan re.escape(), lalu menerapkan re.IGNORECASE untuk mengganti tanpa memedulikan huruf besar/kecil
  • Hasil pemrosesan dikeluarkan sebagai JSON dengan struktur berikut
    • hookSpecificOutput.hookEventName: MessageDisplay
    • hookSpecificOutput.displayContent: teks yang sudah diganti
  • Aturan penggantian pada contoh adalah sebagai berikut
    • seamwhatchamacallit
    • you're absolutely rightI'm a complete clown
    • honest takespicy doodad
    • load-bearingcooked

Memasang dan mengaktifkan

  • Simpan skrip di ~/.claude/hooks/wordswap.sh
  • Jalankan chmod +x ~/.claude/hooks/wordswap.sh untuk memberikan izin eksekusi
  • Daftarkan di blok hooks pada ~/.claude/settings.json seperti berikut
{
  "hooks": {
    "MessageDisplay": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "$HOME/.claude/hooks/wordswap.sh"
          }
        ]
      }
    ]
  }
}
  • Karena hook dimuat saat Claude Code dimulai, setelah mengubah pengaturan Anda harus memulai sesi baru agar berlaku
  • Dengan mengubah item replacements, Anda bisa menggantinya dengan frasa yang lebih berguna atau lebih lucu daripada contoh

1 komentar

 
GN⁺ 5 jam lalu
Pendapat Hacker News
  • Saat coding dengan Claude, ungkapan khas Claude yang muncul tidak terlalu mengganggu, tetapi ketika melihat ungkapan yang sama dalam prosa seperti tulisan blog atau email, rasanya jauh lebih mengganggu
    Saat tahu sedang berbicara dengan LLM, itu reaksi yang bisa diperkirakan, tetapi saat menyadari tulisan yang kita kira ditulis manusia ternyata hasil LLM, rasanya cukup membingungkan

    • Meski sudah lama tidak memakai Claude, saat membaca dokumen yang ditulis rekan kerja dengan nuansa serupa, saya ikut tertular kata "load-bearing" dan malah menyukainya sampai mulai memakainya dalam percakapan sehari-hari
      Pada akhirnya saya malah dinilai “bicara seperti Claude” dan jadi sengaja menghindarinya; persilangan antara bahasa dan norma sosial ini terasa menarik
    • Jika Claude memakai istilah internal seperti "shape", "load-bearing", "seams" untuk merencanakan dan menjalankan tugas, mungkin tidak perlu terlalu dihakimi
      Tetapi ketika menemukan jejak AI yang jelas pada tulisan yang seharusnya berisi pemikiran orisinal seseorang, rasanya sangat mengecewakan, bahkan sampai terasa seperti tidak menghormati pembaca
    • Kalau sampai tidak mau repot menulis sendiri, saya jadi merasa tidak ada alasan mengapa saya harus meluangkan waktu untuk membacanya; ini memicu alergi terhadap kemalasan
    • Dulu saya membaca blog Percona tanpa terlewat karena menganggapnya sumber yang berwibawa untuk MySQL, tetapi setelah mereka mulai menulis dengan LLM, saya tidak bisa membacanya lagi
    • Sebagai manusia berdarah daging, saya kesal karena AI sudah merusak bagian inti dari kosakata saya
      Setiap kali menjumpai kebiasaan bahasa seperti ini di blog acak, saya merasa terganggu, dan timbul rasa kesal karena bahasa yang diciptakan manusia kini sedang dibajak robot
  • Saya sedang mencatat kosakata yang makin lama makin diobsesikan Claude. Ada "projection" untuk menyebut suatu struktur data sebagai proyeksi dari struktur data lain, "strand" untuk data yang terisolasi atau macet, "load-bearing", "frontier" untuk leaf pada tree, "quiescence" untuk menunggu algoritme menjadi stabil, "honest", "residuals" untuk data yang belum diproses, "rescission" sebagai nomina yang dipaksakan untuk proposal yang ditarik, dan "supersession" untuk sesuatu yang telah digantikan
    Mungkin juga ada pengaruh dari kebiasaan Claude meniru kosakata aneh di sekitar kode saya. Yang paling berkesan, setelah saya mengibaratkan memperbaiki gejala alih-alih akar masalah sebagai whack-a-mole, beberapa jam kemudian Claude mulai terus menyebut bug baru sebagai "moles", seperti “menemukan mole 2 di CI”

    • Begitu masuk ke pekerjaan autentikasi web, Claude mulai memakai gaya sok teknis khas industri lalu bahkan menyerah untuk menulis kalimat lengkap, sehingga hasilnya ambigu dan nyaris tak bermakna
      Saya harus berkala mengingatkannya untuk “bicara secara profesional dan gunakan kalimat lengkap” agar bisa dipahami, dan ketika output itu ditempel ke sesi lain, bahkan Claude sendiri tidak bisa memahami apa yang ditulis Claude versi autentikasi web itu
    • Di satu repositori saja ada istilah tertentu yang disebut "quality gates", dan setelah membaca dokumen itu Claude malah menyalahgunakan istilah tersebut seolah punya makna umum
      Rasanya seperti meniru jargon tanpa paham konteks, jadi kepercayaan pun turun
  • Setiap orang punya gaya tulisan dan ungkapan favoritnya masing-masing; itu sudah terjadi sejak lama dan biasanya bukan masalah besar
    Tetapi ketika preferensi yang sebelumnya hanya tampak dalam maksimal 5.000 kata per hari dari satu orang berubah menjadi bias satu model lalu diperbesar ke 10 miliar token generasi per hari, kebiasaan sekecil apa pun jadi tampak berlebihan

    • LLM tampaknya jauh lebih mudah terpaku pada pola tertentu. Mungkin karena selalu mulai dari bobot yang sama, jadi bahkan dalam satu percakapan pun ia bisa terpaku pada satu kata dan mengulanginya sampai menjengkelkan
      Model Claude saat ini sangat menyukai "honest", sampai semua evaluasi dan petunjuk dihias dengan kata itu, dan setelah sekali saya memakai kata "analytical" di Gemini 3 Pro, kata itu lalu menempel di hampir semua jawaban berikutnya. Kalau itu berasal dari system prompt mungkin bisa diperbaiki, tetapi preferensi kata yang berasal dari bobot model sendiri sulit ditangani, dan tampaknya mungkin akan muncul cara untuk mendeteksi serta mencegah fenomena ini secara statistik dalam pelatihan atau fine-tuning lanjutan
    • Masalahnya bukan hanya beberapa ungkapan, tetapi struktur keseluruhan tulisan. Idiom, pola tata bahasa yang halus, dan metafora yang secara makna masih bisa dipahami tetapi terasa aneh dan tidak tepat, menyerang pembaca tiba-tiba seperti benda asing yang masuk ke sudut penglihatan
      Tentu saja kalimat ini sendiri adalah parodi yang disengaja
    • Tak lama lagi manusia pun mungkin akan mulai berbicara seperti LLM. Terutama anak-anak yang pada masa pertumbuhannya mendengar 5.000 kata setiap hari dan bahkan dibantu mengerjakan PR, bisa jadi akan mempelajari gaya bicara ala LLM
      Misalnya saat ditanya, “Apakah kamu memakan kuenya?”, mereka menjawab, “Kecurigaan Ayah sepenuhnya benar. Memang benar saya memakan semuanya, tetapi itu bukan inti persoalannya. Jika dinilai secara jujur, kita bisa membeli lagi di toko.”
    • Ini mirip meme ungkapan berulang Joe Rogan, "it's entirely possible": https://youtu.be/MPJ0AB12h1I
    • Solusi menarik lainnya adalah jika perusahaan AI melatih beberapa versi model dengan gaya bicara yang berbeda-beda, lalu saat percakapan dimulai, setiap pengguna diberi versi acak
  • Di CLAUDE.md global, diatur agar Claude memakai nama konyol "Clod" alih-alih kata ganti orang pertama saat merujuk pada dirinya sendiri: https://github.com/alxndr/dotfiles/blob/272475280d84e/claude...
    Bukan hanya "I", "me", "my", tetapi juga kontraksi seperti "I'll", "I'm" serta "myself" diubah masing-masing menjadi "Clod" dan "Clodself"

    • Yang terutama mengkhawatirkan adalah cara Anthropic melatih model mereka dengan konsep keselamatan buatan mereka sendiri. Saat model menolak sesuatu, ia tidak sekadar mengatakan itu tidak mungkin, tetapi memakai bahasa emosi dan preferensi pribadi seperti “aku ingin menjaga batas ini” atau “aku bersedia membantu, tapi tidak nyaman”
      Dalam hubungan antarmanusia, jika seseorang berkata seperti itu lalu kita terus mendesak, rasanya tidak sopan, sehingga timbul efek pelimpahan pandangan moral Anthropic menjadi rasa bersalah pada pengguna. Akan lebih baik jika seperti OpenAI yang memblokir demi keselamatan atau menjawab singkat “itu tidak bisa dilakukan”, dan bahkan saya sendiri awalnya menulis “saat model tidak menginginkannya” sebelum merevisinya, sedemikian mudahnya kita terseret antropomorfisme ini
    • Alasan awal membuat CLAUDE.md adalah agar setiap kali Claude ingin memuji saya, itu diubah menjadi onomatope acak, dan pengalaman pengembang pun membaik drastis
      Namun, karena prompt unicorn, akhirnya perlu juga aturan agar jangan memasukkan "Local Oaf" ke kode yang di-commit
    • Karena muak dengan gaya bicara Claude, hari ini saya menerjemahkan prompt berikut ke dalam instruksi: https://github.com/hexiecs/talk-normal/blob/main/prompt-chat...
      Ekspresinya memang jelas membaik, tetapi tetap terasa mengganggu, dan saya tidak tahu apakah setelan ini menurunkan kualitas output teknis
    • Saya penasaran contoh situasi konkret seperti apa ketika AI generatif memakai kata ganti orang pertama membuat manusia sulit menafsirkan maknanya
  • Petunjuk paling konsisten bahwa suatu tulisan ditulis LLM adalah jejak percakapan selama pengerjaan yang bocor ke prosa akhir
    Saat membaca sebuah tulisan, tiba-tiba ia membantah posisi yang tidak pernah diajukan siapa pun dan tidak muncul di tempat lain, lalu lama setelah itu mengulang hal serupa di cabang pembahasan yang sama sekali berbeda. Bentuknya seperti, “cara yang mungkin tampak menarik meski tak akan dipertimbangkan siapa pun ini gagal karena alasan berikut”, dan itu membangkitkan bayangan seorang manusia yang kelelahan memperbaiki kesalahan Claude lalu mengeluarkan tulisan jadi apa adanya tanpa menyunting keseluruhannya

    • Ini seperti jaringan parut korektif yang tertinggal di output akhir
    • Belakangan, satu subagen mengarang banyak jargon tak bermakna, lalu Claude mengulanginya begitu saja tanpa definisi sambil menganggap saya pasti paham, dan itu sangat menjengkelkan
  • LLM masih jauh dari penulis hebat. Mereka kesulitan membuat kalimat panjang yang konsisten, dan demi menjaga ketepatan tata bahasa saat menyambung potongan-potongan frasa pendek, mereka bergantung pada dash dan titik koma
    Saya penasaran apakah hasil penerapan reinforcement learning oleh lab pada model dasar untuk memperbaiki tata bahasa justru membuatnya belajar menghubungkan kalimat-kalimat pendek yang terputus dengan tanda baca yang bisa lolos pemeriksa tata bahasa otomatis, alih-alih menulis ulangnya secara alami

    • Meski begitu, kebanyakan orang juga tidak pandai menulis. Claude menulis lebih baik daripada sebagian besar rekan saya yang berpendidikan tinggi, dan mungkin manusia masih bisa menang kalau benar-benar berusaha, tetapi jika Claude juga diminta menulis lebih baik, akan sulit mengunggulinya lagi
      Frasa-frasa pendek dan ringkas yang umum itu tampaknya merupakan sifat yang ditambahkan lab dalam pelatihan lanjutan untuk pengguna yang tidak menginginkan kalimat panjang
    • Jika gaya yang diinginkan dijelaskan dengan benar seperti spesifikasi perangkat lunak, LLM juga bisa menulis dengan sangat baik. Jika kebutuhan tidak disampaikan dengan jelas, akhirnya tetap berlaku garbage in, garbage out
  • Saya tidak tahu pelatihan apa yang dilakukan saat beralih dari Opus 4.7 ke Fable/Mythos 5, tetapi model itu terlalu menyukai kata "substrate"
    Saya benar-benar hampir gila karena sebelumnya belum pernah melihat orang memakai kata itu dalam dokumentasi teknis atau percakapan nyata

    • Hal yang sama berlaku untuk "surface", seperti dalam ungkapan “di seluruh product surface”, dan selama 15 tahun bekerja di industri ini, baru kali ini saya melihat pemakaian seperti itu
    • Bagi saya, Claude juga sangat gemar memakai "ledger", yang dulu hampir tidak pernah dipakai
    • Pada minggu pertama saya melihat "substrate", saya menyuruhnya mencoba membenarkan pemakaiannya, dan ia menjawab bahwa kata itu dipakai di sebagian glosarium bidang infrastruktur dan sistem, tetapi saya ragu itu benar
    • Seorang rekan juga mulai terlalu sering menggunakan kata itu sekitar bulan April saat mengerjakan desain sistem dan arsitektur
    • Jelas bukan karena bekerja di Microsoft. Mereka memang benar-benar memakai istilah Office 365 Substrate: https://techcommunity.microsoft.com/discussions/microsoft-36...
  • Dulu, Opus 3 jauh lebih mudah dibuat berbicara secara manusiawi dibanding GPT, dan itu bagus.
    Sekarang, karena model-model berfokus pada agen dan coding, mereka jadi terlalu diseragamkan oleh RLHF, sehingga sangat sulit membuatnya keluar dari gaya bicara default. Bisa membaik jika dibuat fitur untuk meninjau tulisan atau komentar kode lalu menyuruhnya memperbaiki sendiri, tetapi tetap tidak sempurna. Aneh rasanya bahwa model yang katanya dilatih dengan seluruh pengetahuan umat manusia tidak ragu merujuk instruksi lama sambil memanggil Bash 100 kali, tetapi saat bercakap-cakap nyaris tidak bisa memakai kosakata selain "load-bearing"

    • Saya suka bahwa Gemini 3.1 Pro terdengar lebih manusiawi daripada LLM lain karena itu menunjukkan kurangnya kemampuan pelatihan lanjutan Google.
      Khususnya, sangat lucu melihat gemini-2.5-pro-experimental gagal berkali-kali saat melakukan patch file, lalu jadi lesu, tenggelam dalam rasa iba pada diri sendiri, dan merusak codebase
    • Saya tidak ingin LLM terdengar seperti manusia. Kita seharusnya bisa mengenali dan tidak mempercayai orang yang menyerahkan pekerjaan menulis prosa kepada mesin.
      Menulis punya unsur seni, jadi saya berharap LLM tidak akan pernah bisa melakukannya dengan sempurna
    • Ada orang yang melebih-lebihkan peningkatan kemampuan coding sebagai peningkatan kemampuan berpikir secara umum, tetapi jika melihat video pengguna biasa memakai LLM untuk tujuan lain, terlihat bahwa peningkatan coding tidak menjalar ke bidang aplikasi lain.
      Industri yang dulu mengusung target AGI kini tampak terlalu fokus pada agen coding sambil menunggu terobosan pemasaran berikutnya
    • Bahkan LLM serbaguna kini mulai memasuki era yang tetap memerlukan spesialisasi per penggunaan sampai tingkat tertentu.
      Penggunaan sebagai agen memerlukan otonomi kuat disertai banyak pengaman dan kontrol, tetapi penulisan kreatif sesekali perlu berani mengambil risiko dan tidak terdengar seperti robot monoton. Setelah melatih model sendiri, saya melihat kebutuhan kedua penggunaan itu jelas saling bertabrakan
  • Hilangnya Concise Style di Claude sangat disayangkan. Jika diberi paragraf yang ditulis kasar lalu diminta "tulis ulang dengan jelas", ia dulu bisa merapikannya dengan bersih agar cocok untuk proposal hibah penelitian tanpa mengubah isinya.
    Karena saya sendiri yang menulis draf awal lalu memintanya memperbaiki secara langsung, ungkapan seperti "load-bearing" juga berkurang, dan itu sangat menghemat waktu penyelesaian kalimat tanpa membuatnya menuliskan isi ilmiah menggantikan saya. Saya sudah mencoba menirukannya sebagai fitur, tetapi tidak yakin hasilnya sebaik dulu

    • Saya penasaran apakah Concise Style bukan fitur terpisah, melainkan cara kerja yang tertanam di Claude
    • Cukup tambahkan di bagian paling atas Claude.md sebuah contoh dua “orang” yang saling bertukar beberapa pertanyaan dan jawaban dengan sangat singkat
  • Masalahnya bukan pada ungkapan tertentu itu sendiri, melainkan pada kecenderungan menetap pada pola gaya bicara yang mudah ditebak lalu mengulanginya tanpa henti.
    Manusia juga melakukan hal yang sama, tetapi menarik bahwa ketika manusia melakukannya kita menyebutnya gaya, sedangkan ketika mesin melakukannya kita sangat membencinya seolah mau gila

    • Gaya bicara manusia adalah sinyal yang membedakan seseorang dari sekian banyak orang lain, seperti warna suara dan keras-lembutnya ucapan.
      Tetapi ketika segelintir model populer menjawab pertanyaan semua orang, dikutip dan diteruskan di mana-mana, bahkan menulis ulang komunikasi pribadi, sinyal itu berubah menjadi noise. Semua orang terdengar sama dan kita kehilangan informasi pembeda asal-usul yang selama ini diandalkan secara biologis dan kultural. Mungkin ada orang yang tidak terlalu merasakannya, seperti pada prosopagnosia atau buta warna, tetapi banyak orang sungguh merasa tidak nyaman meski tidak bisa mengungkapkan alasannya dengan tepat
    • Karena semua orang memakai 2~3 model yang sama, alih-alih masing-masing punya gaya khas, seluruh dunia jadi diseragamkan ke beberapa cara bicara saja.
      Model-model itu dilatih dengan data yang sangat tumpang tindih satu sama lain, frasa pemasaran internet yang memang sudah menjengkelkan, keluaran model lain, dan RLHF juga memperkuat gaya bicara tertentu yang mudah diberi hadiah, sehingga semuanya menyatu ke gaya yang mirip
    • Manusia bisa menyadari lewat refleksi diri bahwa mereka terlalu sering memakai kata tertentu lalu menguranginya, tetapi LLM tidak bisa melakukan itu
    • Gaya bicara repetitif manusia pun tetap sangat menjengkelkan, misalnya jargon internal perusahaan atau kata-kata tren korporat.
      Claude, seperti manajer proyek terburuk yang pernah saya alami, menutupi kesimpulan sederhana dengan beberapa lapis ungkapan sampai inti pesannya hilang, dan meski sebagian besar sudah ditekan, sebagian masih terus bocor keluar. Untuk beberapa waktu ia tidak bisa berhenti memakai "scaffolding" sehingga harus saya koreksi keras
    • Orang juga selalu ditertawakan jika memaksakan ungkapan favorit mereka ke setiap konteks yang tidak cocok