Blog
Catatan teknis seputar web development, DevOps, dan integrasi AI.
131 artikel
- 11.30tooling
Login DeepSeek Hilang? Pindahkan Sesi, Jangan Rebuild Profil
Profil Camofox kehilangan login DeepSeek? Saya pindahkan cookies HttpOnly dan userToken localStorage ke profil yang sama, tanpa rebuild.
TL;DR: Sesi login DeepSeek di profil Camofox hilang karena ternyata ada dua lapis yang harus dipulihkan sekaligus: cookie HttpOnly di storage-state.json dan userToken di localStorage. Solusinya migrasi, bukan rebuild: ekspor cookies, dedupe by pasangan name-domain, injeksikan token via tiga skrip, plus keepalive polling tiap lima menit. Ingat, storage state itu kredensial plaintext—jaga seperti password dan regenerasi berkala.
#automation#playwright#deepseek - 23.00ai
Review 3 Skill Coding Agent di Hermes Agent: Claude Code vs OpenCode vs OpenHands
Hermes Agent bisa mendelegasikan pekerjaan koding ke agent CLI eksternal lewat sistem skill-nya. Ada tiga skill coding agent yang paling menonjol:…
TL;DR: Hermes Agent bisa mendelegasikan tugas koding ke tiga agent CLI dengan keunggulan berbeda: claude-code unggul di kontrol biaya dan tool per-run, opencode fleksibel ganti provider per-run, dan openhands menjalankan agent secara otonom di sandbox Docker. Pola amannya konsisten: prompt lengkap dikirim via file, kerja diarahkan ke workdir terpisah. Hermes tetap memverifikasi diff dan melakukan commit sendiri, bukan percaya klaim agent.
#ai-agents#opencode#claude-code - 22.34frontend
Textarea React Diotomasi, Tapi Diam Saja
Teks terlihat di layar tapi React tidak tahu ada perubahan. Kenapa manual assignment gagal, dan cara bypass controlled component pakai native prototype setter.
TL;DR: Kalau isi textarea lewat assignment biasa, React tidak sadar karena setter aslinya sudah diganti wrapper React yang menelan event buatan. Solusinya panggil setter asli dari HTMLTextAreaElement.prototype, lalu dispatch event input dengan bubbles: true supaya React menangkap perubahannya. Tombol kirim yang cuma ikon tanpa teks? Cukup tekan Enter lewat API keyboard Playwright.
#deepseek#react#automation - 21.52ai
Query Rewriting: Otak Kecil Sebelum Agent Pakai Mesin Pencari
Agent disuruh mencari "nano banana"? Tanpa query rewriting, hasil pencarian bisa dua dunia. Ini 5 pola rewrite yang saya pasang di agent.
TL;DR: Query ambigu seperti "nano banana" bisa mengacaukan riset otomatis sejak awal, jadi penulis mewajibkan lima variasi: literal, disambiguasi konteks, Inggris, sinonim industri, dan pertanyaan penuh. Semua dieksekusi lalu hasilnya digabung, dan karena agent sendiri yang menulis ulang, biayanya nyaris nol. Aturan ini sudah dipakai di chat dan cron riset sebagai jejak audit, meski efeknya belum ada benchmark.
#query-rewriting#ai-agent#rag - 19.16ai
Chat AI Buat Nyari Sudut, Halaman Primer Buat Nyetujui
Lane C di cron saya: sintesis chat AI buat nyari sudut yang kelewat, verifikasi tetap ke halaman primer yang dibuka sendiri.
TL;DR: Chat AI kepakai sebagai detektor sudut riset, bukan penentu kebenaran; satu sudut baru lolos cek manual, satu klaim Stanford HAI dibuang karena halaman primernya nggak bisa dibuka. Lane C cuma nambah sintesis tanpa menggantikan Lane A, yang tetap jadi ground truth lewat sumber primer dan sitasi terverifikasi. Sitasi itu jejak buat diverifikasi manusia, bukan stempel kebenaran.
#ai-agents#llm#automation - 19.09devops
Fallback Tanpa Diagnosa Cuma Nutup Akar Masalah
Generate qwen exit 1 ditangani fallback router9 tanpa diagnosa, padahal penyebabnya cuma probe clipboard 410 yang bisa diperbaiki.
TL;DR: Generate qwen gagal dengan exit 1, fallback ke router9 langsung jalan dan menelan diagnosis sebenarnya. Setelah dicek lewat camofox-doctor, penyebabnya cuma probe clipboard HTTP 410 di level L4, bukan qwen mati. Sekarang fallback hanya sah kalau doctor L0-L4 clear, plus exit code dipecah biar tiap kegagalan ditangani sesuai penyebabnya.
#automation#debugging#docker - 16.57ai
Memory Agent Saya Disintesis Sekali Seminggu, Bukan Tiap Chat
Cron mingguan no-agent membaca digest pesan tujuh hari lalu mengusulkan kandidat pembaruan memory: kandidat dulu, ratifikasi kemudian, tanpa auto-write.
TL;DR: Sistem memory kebanyakan cuma bisa nambah, entri usang tak pernah ditandai—OpenAI sendiri mengakuinya. Penulis membangun skrip sintesis mingguan berbasis cron yang membaca riwayat chat, lalu menghasilkan laporan kandidat: entri baru, kontradiksi, dan yang tak perlu dicatat. Masih report-only dengan ratifikasi manual, karena auto-write dinilai jebakan selama tingkat salahnya belum nol.
#ai-agents#memory#cron - 12.18ai
Mencuri Pola L0 OpenViking untuk Knowledge Base Saya
Query KB cuma keluar path plus skor? Saya curi pola ringkasan L0 OpenViking: satu kalimat per dossier, tanpa instalasi baru.
TL;DR: Setiap query ke knowledge base dulu cuma mengeluarkan path dan skor, jadi saya terpaksa membuka satu per satu dossier untuk menilai relevansi. Dari OpenViking saya curi polanya tanpa memasangnya: 40 baris Python yang menambahkan ringkasan satu kalimat wajib di tiap dossier dan menampilkannya di hasil query. Sekarang saya bisa langsung memutuskan buka atau tidak tanpa membuka file penuh.
#ai-agents#embedding#python - 11.49ai
ChatGPT Masih Ingat Obrolan Lama? Ini Cara Kerjanya
Memory ChatGPT bukan rangkuman semua sesi secara real-time. Saya bongkar mekanisme sebenarnya: sintesis berkala, injeksi system prompt, dan risiko privasinya.
TL;DR: Memori ChatGPT ternyata bukan pencarian real-time atas seluruh riwayat chat, melainkan profil sintesis yang diperbarui berkala lalu disuntikkan ke system prompt tiap sesi baru. Konsekuensinya, hapus satu obrolan belum cukup; wawasan yang terserap harus dibersihkan dari semua sumbernya. Pola serupa bisa diterapkan sendiri lewat proyek open source seperti Letta atau Mem0.
#chatgpt#memory#privacy