Referensi

Data dan privasi

Tinjauan berada di folder proyek Anda. Pengaturan berada di ~/.ferret/, sedangkan key dan akun di folder data pengguna OS. Hanya laporan crash yang sampai ke pengembang, melalui Sentry, dan Anda bisa mematikannya. Umpan balik yang Anda pilih untuk dikirim dari aplikasi menjadi issue GitHub publik.

#Isi .ferret/reviews/

<project>/.ferret/reviews/20261003-104500/
├── feedback.md      # what the agent reads
├── 01.png, 02.png…  # one or more images per finding
├── session.json     # review state and edit history
├── events.jsonl     # action log (built-in browser only)
├── recording.webm   # the video
└── work/            # intermediate audio and frames

Tinjauan yang dibuat sebelum penggantian nama berada di .ade-movie/reviews/. Tinjauan tersebut tetap ditampilkan dan bisa dibuka, sedangkan tinjauan baru masuk ke .ferret/reviews/.

Saat perekaman dimulai, .ferret/ ditambahkan ke .git/info/exclude. Worktree dan submodule juga ditangani. .gitignore tidak pernah diubah. Tinjauan yang terputus dapat dipulihkan dari riwayat jika catatannya masih ada. Aplikasi kemudian memperingatkan bahwa beberapa detik terakhir mungkin hilang.

#Masa simpan

Simpan rekaman (7 hari secara bawaan, 30 hari, atau Selamanya): saat aplikasi dimulai, tinjauan selesai yang lebih lama dari itu kehilangan recording.webm dan work/. feedback.md dan gambar temuan tetap disimpan. Tinjauan yang belum selesai tidak pernah dipangkas. Pemangkasan berjalan saat peluncuran, untuk proyek yang terakhir dibuka.

#Apa yang keluar dari mesin Anda

KapanTujuanData
Transkripsi: Di perangkat (gratis)tidak ada—
Transkripsi: OpenAI / kompatibelOpenAI atau Base URL Andapotongan audio
Unduhan modelHugging Facepermintaan file
RapikanCLI Claude Code / Codex Anda, atau endpoint LLM yang Anda atur di organizerhanya teks dan log tindakan (tanpa gambar, audio, atau video)
Pemeriksaan penerimaan (model keputusan, nonaktif secara bawaan)agent Anda, melalui relay lokal, ke Ollama / Cloudflare / AI Gateway / TypeSafe / URL Andayang dikirim agent: teks temuan, "Selesai jika", dan screenshot BEFORE/AFTER (hanya model gambar)
Kirim ke Agentagent di terminal Andasatu instruksi yang menunjuk ke feedback.md
Kirim ke GitHubGitHub melalui ghhanya teks isi (tanpa gambar)
Penggunaan di footer (hanya Claude Code dan Codex)Anthropic, ChatGPTpermintaan data penggunaan dengan login Anda sendiri
Ajakan memberi bintang di GitHubGitHub melalui gh Andamemeriksa apakah Anda sudah memberi bintang pada repo, dan memberi bintang hanya jika Anda mengklik Beri bintang di GitHub
Periksa Pembaruan (manual)server unduhan (Cloudflare R2)permintaan untuk latest.json
Mengirim umpan balik dari aplikasi (hanya saat Anda mengirimnya; segera hadir)relay umpan balik milik pengembang (Cloudflare Worker), yang membuka issue publik di JapanMarketing-Dev/ferretteks Anda, bug atau ide, versi aplikasi / OS dan CPU, serta hingga 3 screenshot yang Anda lampirkan. Key, token, alamat email, dan path folder home disamarkan. Relay tidak menyimpan alamat IP Anda (lihat Umpan balik dari aplikasi)
Crash atau error (Kirim laporan crash aktif)Sentrystack trace dan versi OS / CPU / aplikasi (lihat Laporan crash)
  • Aplikasi ini tidak memiliki analitik, pelacakan performa, maupun session replay. Satu-satunya data yang dikirimnya tanpa Anda minta adalah pelaporan crash: error, satu sesi per peluncuran, serta peringatan startup lambat dan aplikasi macet, yang semuanya dijelaskan di bawah dan semuanya dikendalikan oleh Kirim laporan crash.
  • Nilai di URL yang tampak seperti rahasia (token, key) disamarkan sebelum ditulis ke feedback.md.
  • Teks yang diambil dari halaman ditandai sebagai data di feedback.md, sehingga agent diberi tahu untuk tidak mengikuti instruksi yang ada di dalamnya.
  • Situs web ini (bukan aplikasinya) menghitung tampilan halaman dengan Cloudflare Web Analytics: tanpa cookie, tanpa pelacakan lintas situs, dan tanpa data pribadi.

#Umpan balik dari aplikasi

Segera hadir

Formulir umpan balik dalam aplikasi dan relay-nya belum dirilis. Bagian ini menjelaskan cara kerjanya nanti.

Anda akan bisa mengirim laporan bug atau ide dari dalam Ferret tanpa akun GitHub. Umpan balik hanya dikirim saat Anda mengirimnya, dan menjadi issue publik di JapanMarketing-Dev/ferret (terbuka di tab baru) dengan label from-app. Jangan sertakan apa pun yang tidak akan Anda unggah secara publik.

  • Aplikasi mengirimnya dari komputer Anda ke relay kecil (Cloudflare Worker yang dijalankan pengembang), yang membuka issue dengan token GitHub miliknya sendiri. Relay ini adalah satu-satunya server milik pengembang yang menerima apa pun yang Anda tulis.
  • Yang dikirim: judul dan teks Anda, apakah itu bug atau ide, versi aplikasi, dan hingga 3 screenshot PNG atau JPEG yang Anda lampirkan. Nama dan versi OS, arsitektur CPU, serta ID instalasi acak hanya dikirim jika Anda membiarkannya tetap disertakan. Yang tidak dikirim: nama, email, akun GitHub, file proyek, rekaman, atau temuan Anda.
  • Sebelum issue dibuat, relay menyamarkan teks yang tampak seperti key atau token, alamat email, dan nama pengguna di path folder home, serta mencegah @mentions memberi notifikasi kepada siapa pun. Relay juga menghapus lokasi dan metadata lain dari screenshot. Tetap periksa teks Anda: penyamaran tidak bisa menangkap semuanya.
  • Relay tidak menyimpan alamat IP Anda. Untuk membatasi seberapa sering satu pengirim bisa mengirim (5 per jam, 20 per hari), relay menghitung hash berkunci dari alamat IP (dan dari ID instalasi, jika dikirim) hingga 24 jam, lalu menghapusnya. Keduanya tidak muncul di issue.
  • Screenshot disimpan oleh relay di Cloudflare R2 dengan nama yang tidak bisa ditebak dan ditampilkan di issue. Untuk meminta penghapusan issue atau screenshot-nya, beri komentar di issue tersebut atau buka issue baru.
  • Kode relay ada di workers/feedback-relay di repositori.

#Laporan crash

Saat aplikasi crash atau mengalami error yang tidak tertangani, Ferret mengirim laporan crash ke Sentry (terbuka di tab baru) agar bug-nya bisa diperbaiki. Fitur ini aktif secara bawaan. Matikan di Pengaturan → Privasi → Kirim laporan crash, atau dengan Nonaktifkan pada pemberitahuan yang muncul saat peluncuran pertama. Mematikannya langsung berlaku. Menyalakannya kembali berlaku pada peluncuran berikutnya. Build pengembangan (pnpm dev) juga mengirim, dengan tag development, agar pengembang bisa memperbaiki crash yang mereka alami saat bekerja. Pengujian E2E dan unit test tidak pernah mengirim.

DikirimTidak dikirim
  • Jenis dan pesan error, dengan path folder home ditampilkan sebagai ~
  • Stack trace (di bagian mana kode Ferret hal itu terjadi)
  • Untuk crash native: hanya proses mana yang crash, mengapa proses keluar (misalnya crashed atau oom), dan versi aplikasi
  • Nama dan versi OS, arsitektur CPU, versi Electron / Chrome / Node, versi aplikasi, ukuran layar, ukuran memori
  • Peristiwa siklus hidup aplikasi sesaat sebelum error (misalnya app.ready), dan kegagalan startup
  • Bagian aplikasi mana yang gagal: area layar yang tidak bisa dirender (beserta nama komponen React-nya), panggilan IPC, terminal yang tidak bisa dimulai, proses yang crash atau macet, atau halaman aplikasi yang gagal dimuat
  • Posisi Anda di aplikasi: mode editor atau umpan balik, tab yang terbuka (Browser, Temuan, Pengaturan, atau hanya file), dan apakah perekaman sedang berjalan
  • Satu sesi per peluncuran (dimulai, berakhir normal, atau crash), agar tingkat bebas crash setiap versi bisa diukur
  • ID instalasi acak (dibuat saat peluncuran pertama dan disimpan di folder pengaturan aplikasi), agar jumlah instalasi yang terdampak bisa dihitung. ID ini tidak terkait dengan nama, email, atau perangkat Anda
  • Khusus crash JavaScript: 50 baris log terakhir milik Ferret sendiri (seperti [startup] dan [recording]), dipersingkat dan dengan path, URL, email, serta key dihapus
  • Path folder proyek dan nama file Anda (diganti dengan <project>)
  • URL yang dibuka di browser bawaan, dan alamat web lainnya (diganti dengan <url>)
  • Output terminal, transkrip, temuan, teks halaman, screenshot
  • Alamat email serta API key atau token (diganti)
  • Nama Anda, nama perangkat, alamat IP (tidak disimpan), cookie, variabel lokal
  • Memory dump dari crash native (minidump). Isinya bisa berupa apa saja yang ada di memori, sehingga tetap berada di komputer Anda
  • Klik, permintaan jaringan, dan baris log apa pun yang bukan milik Ferret sendiri

Aplikasi yang terinstal mengirim paling banyak 10 laporan per peluncuran dan hanya separuh dari error JavaScript (crash native selalu dikirim). Build pengembangan mengirim setiap error, hingga 50 per peluncuran. Error yang sama hanya dikirim sekali per peluncuran. Startup lambat (lebih dari 5 detik) dan aplikasi macet lama (lebih dari 1 detik) dikirim sebagai peringatan, paling banyak sekali setiap 10 menit. Tidak ada pelacakan performa maupun session replay yang dipakai. Aplikasi memakai paket gratis Sentry. Jika kuotanya penuh, laporan tambahan dibuang dan tidak ada yang dikenai biaya.

Membangun Ferret sendiri? Atur FERRET_SENTRY_DSN (nama lama MOVIE_ADE_SENTRY_DSN juga berfungsi) ke DSN Sentry Anda sendiri, atau ke string kosong agar tidak mengirim apa pun. Kodenya ada di src/main/telemetry.ts dan src/shared/telemetry.ts.

Bantu terjemahkan halaman ini di GitHub (terbuka di tab baru)