TL;DR
- Delapan repo Claude Code populer dipasang di level proyek pada satu codebase nyata lalu diukur: token saat sesi dimulai, token output pada tiga tugas coding, dan apa yang ditulis tiap repo di luar proyek.
- Hanya satu dari delapan yang mengubah hasil: anti-slop, dijalankan sebagai linter, menangkap cast tidak aman yang sama di ketiga run T3, dengan biaya +95 token sesi dan nol per turn.
- Ruleset output ringkas tidak bertahan pada pekerjaan yang memakai tool: klaim Chisle sebesar 52% dari baseline menjadi 94% dari token output baseline, dan arm-nya lebih mahal daripada baseline di dua dari tiga tugas begitu input dihitung.
- Ketiga server MCP tidak pernah dipanggil sekali pun dalam 63 run. Terpasang tidak sama dengan terpakai.
- Stack-nya bersifat aditif: kedelapan repo bersama-sama menambah +6,804 token saat sesi dimulai, selisih 63 token dari jumlah masing-masing.
- Dua instalasi menjangkau keluar proyek. Satu codemod mendaftarkan dirinya ke konfigurasi global 8 agent lain; satu tool meng-hardcode
--dangerously-skip-permissionsdan menyalin file kredensial, sehingga tidak pernah dijalankan.
Apa kata pengukuran
Token saat sesi dimulai bisa direproduksi, biaya dolar tidak: setiap kondisi menghasilkan total token input yang identik di kedua run, sementara biaya kondisi yang sama berayun dari $0.0183 sampai $0.0035 tergantung status prompt cache, jadi jumlah token menjadi metrik di seluruh laporan. Proyek baseline mulai di 17,378 token s4.
Skema tool MCP ditunda (deferred) pada versi Claude Code ini, dan biayanya kini mengikuti jumlah nama tool yang diiklankan server, bukan ukuran skema. 39 tool ouroboros menelan +1,642 token, 19 tool reticle +895, 2 tool ui-skills +37: kira-kira 42 sampai 47 token per nama tool. Secara default semua tool MCP ditunda dan dimuat saat dibutuhkan, dan mode auto dari ENABLE_TOOL_SEARCH menundanya begitu definisinya mencapai 10% dari context window s4.
img2threejs membawa SKILL.md sebesar 32,902 byte dan 352 file, tetapi hanya memakan +107 token saat sesi dimulai, karena yang dimuat hanya deskripsi di frontmatter. Dokumentasi skills membatasi tiap deskripsi yang terdaftar sampai 1,536 karakter dan memangkas deskripsi agar muat di anggaran listing ketika skill-nya banyak; setelah compaction, skill yang pernah dipanggil dilampirkan ulang sebesar 5,000 token masing-masing dalam anggaran bersama 25,000 token s5. Anggaran listing itulah sebabnya 40 skill bisa memakan 3,060 token per turn pada setup yang tidak memanggil satu pun s10, dan mengapa deskripsi dipotong alih-alih skill dibuang s11.
Hook UserPromptSubmit milik Chisle menambah 287 byte additionalContext di setiap turn; pada tugas 22 turn, itulah sebabnya arm-nya memakan total +41,539 token input di T3 dibanding baseline. caveman, diukur sebagai referensi, tidak menyuntikkan apa pun kecuali prompt diawali /caveman. Ketika beberapa hook pada event yang sama masing-masing mengembalikan additionalContext, Claude menerima semuanya digabung, dengan batas 10,000 karakter per hook s15. Dengan Chisle, caveman, dan ouroboros terpasang bersamaan ada 3 registrasi di SessionStart, 3 di UserPromptSubmit, dan 2 di PostToolUse, dengan +4,269 token saat mulai s15.
README Chisle mengklaim tagihan 20 tugas pada 52% dari baseline, dan README itu sendiri membatasi angka tersebut pada prompt single-turn tanpa tool s3. Pada tiga tugas terhadap repo nyata, 3 run per sel, rata-rata output Chisle yang dijumlahkan adalah 9,007 token melawan baseline 9,615, yaitu 94%; caveman 10,820, yaitu 113%, pada sampel yang sebaran T3-nya 2,014 token, sehingga tidak ada arah yang melewati noise s3. Kompresor output Chisle tidak pernah menulis catatan penghematan dalam 63 run.
anti-slop yang di-vendor ke tools/oxlint/ dengan semua 18 aturan generik ditambah oxc/no-accumulating-spread menemukan 109 masalah pada proyek 4,775 baris yang belum disentuh, 83% di antaranya dari dua aturan gaya rumah (require-readable-spacing 50, require-safety-comment-for-type-assertion 41) s8. Pada kode yang ditulis Claude, ia menangkap maxLength={field.maxLength as number} di ketiga run T3, yaitu Claude menyalin cast tidak aman milik codebase itu sendiri s8. Plugin-nya ESM, jadi proyek host butuh "type": "module" atau oxlint gagal dengan Cannot use import statement outside a module.
Codemod init milik Reticle, dijalankan dengan RETICLE_STATE_DIR diset dan telemetri dimatikan, melaporkan bahwa ia mendaftarkan server MCP ke 8 agent lain (VS Code user scope, GitHub Copilot CLI, Warp, Factory Droid, Kiro, Amazon Q Developer CLI, Cline CLI, Amp) dan menyetujui di muka tool-nya di Gemini CLI; pairing lalu gagal dengan ERR_OSSL_EVP_UNSUPPORTED s6. Caliper ditolak: claude_code.py:106 meng-hardcode --dangerously-skip-permissions, dan seed_files() menyalin ~/.claude/.credentials.json dengan fallback Keychain s2. Hook UserPromptSubmit milik ouroboros menjawab prompt biasa seperti write prd for reading time dengan REQUIRED SKILL: /ouroboros:setup, langkah yang tidak bisa dipenuhi instalasi level proyek s7.
Sebuah makalah atas 2,545 trajektori pada pustaka berisi 52, 102, dan 202 skill melaporkan penurunan pass rate gabungan sebesar .08, .14, dan hingga 21%, dengan deskripsi yang mirip saling menutupi sebagai bagian yang makin besar dari kerugian itu s20.
Pengukuran
Protokol: satu proyek TypeScript nyata, setiap repo dipasang hanya di level proyek. Awal sesi: prompt Reply with OK dalam mode JSON -p dengan flag identik, 2 run per kondisi, angka = input_tokens + cache_creation_input_tokens + cache_read_input_tokens pada turn pertama. Ablasi: tiga tugas coding (T1 pendek, T2 menengah, T3 tugas UI panjang) dengan pass check dan gerbang type-check, 3 run per sel, kondisi = baseline, tiap repo always-on sendirian, kedelapan ditumpuk. anti-slop: oxlint 1.78.0 dengan ruleset yang di-vendor atas proyek yang belum disentuh dan atas kode yang ditulis dalam 9 run baseline.
| repo | terpasang di level proyek | token ditambahkan saat sesi dimulai | biaya per turn |
|---|---|---|---|
| baseline | tidak ada | 17,378 | tidak ada |
| Chisle | 4 skill, 4 command, 3 hook | +3,496 | +287 byte additionalContext di setiap turn |
| ouroboros | server MCP, 39 nama tool | +1,642 | injeksi bersyarat |
| reticle | server MCP, 19 nama tool | +895 / +903 | tidak teramati |
| fwc-swiftui-skills | 2 skill | +304 | tidak ada |
| caliper | 2 skill | +172 | tidak ada |
| img2threejs | 1 skill, 352 file, SKILL.md = 32,902 B |
+107 | tidak ada |
| anti-slop | 1 skill + ruleset yang di-vendor | +95 | tidak ada |
| ui-skills | MCP remote, 2 tool | +37 | tidak ada |
| kedelapan ditumpuk | semua di atas | +6,804 | hanya per turn milik Chisle |
| caveman (referensi) | 4 skill, 2 hook | +744 | 0 |
| tugas | kondisi | lulus | type error baru | rata-rata tok output | output min sampai maks | rata-rata total input | rata-rata biaya | turn | panggilan MCP |
|---|---|---|---|---|---|---|---|---|---|
| T1 | baseline | 3/3 | 0 | 1,668 | 1,619 sampai 1,739 | 95,462 | $0.0519 | 7.0 | 0 |
| T1 | Chisle | 3/3 | 0 | 1,434 | 1,341 sampai 1,502 | 106,001 | $0.0576 | 7.7 | 0 |
| T1 | ui-skills | 3/3 | 0 | 1,756 | 1,644 sampai 1,885 | 96,279 | $0.0535 | 7.3 | 0 |
| T1 | reticle | 3/3 | 0 | 1,899 | 1,653 sampai 2,177 | 107,263 | $0.0594 | 8.0 | 0 |
| T1 | ouroboros | 3/3 | 0 | 1,729 | 1,655 sampai 1,787 | 97,166 | $0.0549 | 7.0 | 0 |
| T1 | stack | 3/3 | 0 | 1,462 | 1,460 sampai 1,465 | 128,221 | $0.0646 | 7.7 | 0 |
| T2 | baseline | 3/3 | 0 | 2,128 | 2,105 sampai 2,164 | 74,286 | $0.0540 | 9.0 | 0 |
| T2 | Chisle | 3/3 | 0 | 2,184 | 2,150 sampai 2,230 | 87,462 | $0.0624 | 10.0 | 0 |
| T2 | ui-skills | 3/3 | 0 | 2,348 | 2,224 sampai 2,504 | 74,869 | $0.0604 | 10.0 | 0 |
| T2 | reticle | 3/3 | 0 | 2,614 | 2,312 sampai 2,824 | 78,664 | $0.0635 | 10.7 | 0 |
| T2 | ouroboros | 3/3 | 0 | 2,441 | 2,152 sampai 2,815 | 80,819 | $0.0622 | 10.0 | 0 |
| T2 | stack | 3/3 | 0 | 2,136 | 2,015 sampai 2,216 | 89,378 | $0.0661 | 9.7 | 0 |
| T3 | baseline | 3/3 | 0 | 5,819 | 5,423 sampai 6,063 | 198,217 | $0.1551 | 22.0 | 0 |
| T3 | Chisle | 3/3 | 0 | 5,389 | 5,206 sampai 5,500 | 239,756 | $0.1565 | 20.3 | 0 |
| T3 | ui-skills | 3/3 | 0 | 5,279 | 4,860 sampai 5,567 | 214,691 | $0.1477 | 21.0 | 0 |
| T3 | reticle | 3/3 | 0 | 4,664 | 4,008 sampai 5,776 | 198,740 | $0.1293 | 19.0 | 0 |
| T3 | ouroboros | 3/3 | 0 | 5,456 | 4,324 sampai 7,093 | 232,763 | $0.1544 | 21.0 | 0 |
| T3 | stack | 3/3 | 0 | 5,331 | 4,787 sampai 5,843 | 241,576 | $0.1591 | 19.7 | 0 |
63/63 run lulus dan 0/63 memasukkan type error baru. Hanya dua sel yang melewati sebaran run-ke-run miliknya sendiri: Chisle di T1 (−234, −14.0%) dan stack di T1 (−206, −12.3%). Di T2 dan T3 setiap delta berada dalam sebaran; run T3 ouroboros berkisar 4,324 sampai 7,093 token output pada prompt yang identik, ayunan 64%.
| repo | vonis | bukti |
|---|---|---|
| anti-slop | mengubah output, sebagai pemeriksa | menangkap cast tidak aman yang sama di 3/3 run T3, +95 token, 0 per turn |
| Chisle | tidak ada yang terukur, lebih mahal | 94% dari output baseline vs klaim 52%; +3,496 saat mulai, +287 byte per turn |
| ui-skills | tidak mengubah apa pun | 0 panggilan tool dalam 9 run, +37 token |
| reticle | bentrok | init menulis ke ~/.claude/settings.json dan konfigurasi 8 agent lain; pairing tidak pernah selesai |
| ouroboros | bentrok | menuntut /ouroboros:setup pada prompt biasa; 39 nama tool, 0 panggilan |
| caliper | tidak dijalankan | --dangerously-skip-permissions di-hardcode, menyalin file kredensial |
| img2threejs | di luar stack | +107 token, tidak ada yang bisa bentrok |
| fwc-swiftui-skills | di luar stack | +304 token, Markdown statis |
Kerjakan hari Senin
- Jalankan
/context alldi sesi baru pada proyek utamamu dan catat angka awalnya. - Jalankan
claude plugin details <name>pada setiap plugin yang terpasang; baris always-on adalah satu-satunya angka yang ditagih di setiap turn. - Daftar hook-mu per event. Hook apa pun yang mengembalikan
additionalContextdiUserPromptSubmituntuk setiap prompt adalah pajak per turn; pertahankan hanya yang dibatasi kata kunci atau matcher. - Hitung nama tool yang diiklankan tiap server MCP, anggarkan sekitar 42 sampai 47 token per nama, lalu periksa transkripmu untuk melihat berapa yang pernah dipanggil.
- Sebelum memasang apa pun yang punya skrip
initatau setup, bacalah untuk mencari tulisan di luar repo:~/.claude/settings.json, direktori konfigurasi agent lain, file kredensial,--dangerously-skip-permissions. - Pasang pemeriksaan kualitas untuk kode hasil generate sebagai linter di langkah verify, bukan sebagai skill di dalam konteks: aturan lint tidak memakan biaya per turn.
- Sebelum memercayai klaim hemat token apa pun, jalankan tugas yang sama 3 kali dengan dan tanpa tool itu, lalu bandingkan deltanya dengan sebaran min sampai maks milikmu sendiri.
- Arsipkan apa yang kamu buang, jangan dihapus, supaya workflow yang mencarinya bisa mendapatkannya kembali.
Bacaan lanjutan
- Anggaran listing skill dan batas deskripsi 1,536 karakter menjelaskan mengapa setup yang penuh makin menurun kualitasnya tanpa ada skill yang gagal dimuat. Baca bagian "Skill descriptions are cut short" dan "Skill content lifecycle" s5.
- Tulisan
/skill-doctormenunjukkan 40 skill yang memakan 3,060 token per turn dan mana yang dipotong lebih dulu; titik butanya, skill mahal di dalam plugin yang sedang dipakai, ditinggalkan untuk tindak lanjut s10. - Makalah di balik aturan praktis "lebih dari 30 skill": 2,545 trajektori pada pustaka 52, 102, dan 202 skill, dengan efek shadowing yang diisolasi s20, dan ringkasan mudah dibaca yang mempopulerkannya s12.
- Penggabungan hook dan batas
additionalContext10,000 karakter, plus sintaks matcher yang membuat hook hanya menyala padaWrite|Edits15. - Thread penghapusan 63%, termasuk bearer token yang di-hardcode dalam konfigurasi MCP yang dihapus, tangen keamanan yang tidak dibahas video s13.
- README Chisle sendiri, baris 229 dan 262, membatasi angka 52% pada prompt single-turn tanpa tool dan mengakui sel coding pendek milik caveman. Baca cetakan kecilnya sebelum mengutip judulnya s3.
- Dua repo di luar stack tidak diberi skor karena dipanggil manual dan tidak memakan biaya saat mulai: img2threejs untuk scene Three.js s21 dan fwc-swiftui-skills untuk permukaan Liquid Glass s22.
Sumber
- Plugins reference, Claude Code docs. Kenapa dibaca:
plugin details, scope instalasi, dan pemuatan tool MCP tertunda yang menjadikan jumlah nama tool sebagai biaya sebenarnya. - Extend Claude with skills, Claude Code docs. Kenapa dibaca: batas deskripsi, anggaran listing, dan anggaran lampir ulang pascacompaction dalam satu halaman.
- Hooks reference, Claude Code docs. Kenapa dibaca: apa yang terjadi ketika dua hook menyuntik pada event yang sama, dan bagaimana matcher menjauhkan hook dari sebagian besar turn.
- dmmulroy/anti-slop, GitHub. Kenapa dibaca: satu-satunya dari delapan repo yang mengubah hasil; vendor aturannya, lewati skill-nya.
- JayPokale/Chisle, GitHub. Kenapa dibaca: README yang membatasi klaim 52%-nya sendiri dengan jujur kalau dibaca melewati judulnya.
- edonadei/caliper, GitHub. Kenapa dibaca: evaluator skill yang layak diketahui, dan pelajaran untuk membaca
claude_code.pysebelum menjalankan apa pun. - reticlehq/reticle, GitHub. Kenapa dibaca: codemod
initadalah contoh paling jelas dari installer yang menulis jauh di luar proyekmu. - Q00/ouroboros, GitHub. Kenapa dibaca: workflow berbasis hook yang masuk akal hanya jika dipasang global, dengan langkah setup yang tidak bisa dipenuhi instalasi proyek.
- ibelick/ui-skills, GitHub. Kenapa dibaca: instalasi termurah di sini dengan +37 token, dan tidak pernah dipanggil sekali pun.
- /skill-doctor: 40 skills, 3,060 tokens a turn, dev.to. Kenapa dibaca: rincian biaya per skill pada setup nyata.
- Too many Claude Code skills? How the listing budget decides, dev.to. Kenapa dibaca: mekanisme yang membuat deskripsi terpotong.
- Why More Than 30 Skills Kill Your AI Agent, dev.to. Kenapa dibaca: versi mudah dibaca dari makalah shadowing.
- Skill shadowing paper, arXiv. Kenapa dibaca: penurunan pass rate gabungan menurut ukuran pustaka, dengan interval kepercayaan.
- I removed 63% of my Claude Code setup, Reddit r/ClaudeCode. Kenapa dibaca: ~235 komponen turun jadi ~87, diarsipkan bukan dihapus.
- My fresh Claude Code sessions were starting at ~35K tokens, Reddit r/ClaudeCode. Kenapa dibaca: audit
/context alltujuh langkah yang bisa kamu tiru sore ini. - img2threejs/img2threejs, GitHub. Kenapa dibaca: bukti bahwa
SKILL.md32,902 byte hanya memakan 107 token sampai kamu memanggilnya. - FloWritesCode/fwc-swiftui-skills, GitHub. Kenapa dibaca: skill Markdown statis, bentuk instalasi yang tidak bisa bentrok dengan apa pun.
FAQ
Apakah server MCP masih memakan ribuan token skema saat startup?
Tidak pada versi yang diukur. Skema ditunda dan biayanya mengikuti jumlah nama tool yang diiklankan, sekitar 42 sampai 47 token per nama. Server dengan 39 tool memakan +1,642 token; server dengan 2 tool +37.
Mengapa Chisle lebih mahal daripada baseline padahal menghasilkan lebih sedikit token output?
Ruleset-nya dimuat saat sesi dimulai (+3,496 token) dan hook-nya menyuntik 287 byte di setiap turn. Di T2 dan T3 overhead input itu melampaui penghematan output yang tidak pernah melewati noise antar-run.
AIDive