2026-04-19 06:39:06 +00:00
{
"app" : {
"brand" : "nanobot" ,
"loading" : {
"connecting" : "Menghubungkan ke nanobot…" ,
"boot" : "Memuat nanobot…"
},
"error" : {
"title" : "Tidak dapat menjangkau nanobot" ,
2026-04-21 14:33:44 +00:00
"gatewayHint" : "Pastikan gateway sedang berjalan (`nanobot gateway`) dan halaman ini dibuka pada mesin yang sama."
2026-04-19 06:39:06 +00:00
},
2026-05-08 09:40:15 +00:00
"system" : {
"section" : "Sistem" ,
"restartHint" : "Mulai ulang nanobot untuk menerapkan perubahan runtime." ,
2026-05-08 15:31:52 +00:00
"restart" : "Mulai ulang nanobot" ,
"restarting" : "Memulai ulang..."
2026-05-08 09:40:15 +00:00
},
"restart" : {
"completed" : "Mulai ulang selesai dalam {{seconds}} dtk."
},
2026-04-19 06:39:06 +00:00
"documentTitle" : {
"base" : "nanobot" ,
"chat" : "{{title}} · nanobot"
},
"meta" : {
"description" : "UI web nanobot — ngobrol dengan workspace nanobot Anda."
}
},
"sidebar" : {
"collapse" : "Ciutkan sidebar" ,
"toggleTheme" : "Ganti tema" ,
"newChat" : "Obrolan baru" ,
"recent" : "Terbaru" ,
"refreshSessions" : "Segarkan sesi" ,
2026-05-08 15:31:52 +00:00
"settings" : "Pengaturan" ,
2026-04-19 06:39:06 +00:00
"language" : {
"label" : "Bahasa" ,
"ariaLabel" : "Ganti bahasa"
}
2026-05-08 15:31:52 +00:00
},
"settings" : {
"backToChat" : "Kembali ke obrolan" ,
"sidebar" : {
"title" : "Pengaturan" ,
"ariaLabel" : "Bagian pengaturan"
},
"nav" : {
"general" : "Umum" ,
"byok" : "BYOK"
},
"sections" : {
"interface" : "Antarmuka" ,
"ai" : "AI" ,
"system" : "Sistem"
},
"rows" : {
"theme" : "Tema" ,
"language" : "Bahasa" ,
"provider" : "Penyedia" ,
"model" : "Model" ,
"restart" : "Mulai ulang nanobot" ,
"configPath" : "Path konfigurasi"
},
"help" : {
"theme" : "Beralih antara tampilan terang dan gelap." ,
"language" : "Pilih bahasa yang digunakan WebUI." ,
"provider" : "Pilih penyedia untuk permintaan model baru." ,
"model" : "Atur nama model default yang digunakan nanobot." ,
"configPath" : "File konfigurasi gateway yang sedang digunakan."
},
"values" : {
"light" : "Terang" ,
"dark" : "Gelap" ,
"notAvailable" : "Tidak tersedia"
},
"status" : {
"loading" : "Memuat pengaturan..." ,
"loadError" : "Tidak dapat memuat pengaturan" ,
"unsaved" : "Ada perubahan yang belum disimpan." ,
"savedRestart" : "Tersimpan. Mulai ulang nanobot untuk menerapkan."
},
"actions" : {
"save" : "Simpan" ,
"saving" : "Menyimpan" ,
"edit" : "Edit" ,
"cancel" : "Batal"
},
"byok" : {
"description" : "Gunakan kunci provider Anda sendiri. Nanobot membaca nilai ini dari config saat ini, dan hanya provider yang sudah dikonfigurasi yang bisa dipilih di Umum." ,
"configured" : "Terkonfigurasi" ,
"notConfigured" : "Belum dikonfigurasi" ,
"configuredSection" : "Terkonfigurasi" ,
"notConfiguredSection" : "Belum dikonfigurasi" ,
"showMore" : "Tampilkan {{count}} lagi" ,
"showLess" : "Tampilkan lebih sedikit" ,
"apiKey" : "API key" ,
"apiBase" : "API base" ,
"apiKeyPlaceholder" : "Masukkan API key" ,
"apiKeyConfiguredPlaceholder" : "Kosongkan untuk mempertahankan key saat ini" ,
"configuredKeyHint" : "Key terkonfigurasi" ,
"apiBasePlaceholder" : "Gunakan default provider" ,
"apiKeyRequired" : "API key diperlukan untuk mengonfigurasi provider ini." ,
"showApiKey" : "Tampilkan API key" ,
"hideApiKey" : "Sembunyikan API key" ,
"noConfiguredProviders" : "Belum ada provider terkonfigurasi" ,
"configureFirst" : "Konfigurasikan provider di BYOK terlebih dahulu." ,
2026-05-09 06:48:26 +00:00
"openByok" : "Buka BYOK" ,
"tabs" : {
"ariaLabel" : "Jenis kredensial BYOK" ,
"llm" : "LLM" ,
"webSearch" : "Web Search"
},
"webSearch" : {
"provider" : "Search provider" ,
"providerHelp" : "Pilih backend yang digunakan alat web search." ,
"selectProvider" : "Pilih provider" ,
"credentials" : "Kredensial" ,
"noCredentialRequired" : "Tidak perlu key" ,
"noCredentialHelp" : "DuckDuckGo berfungsi tanpa menyimpan API key." ,
"apiKeyHelp" : "Disimpan di config dan ditampilkan tersamarkan setelah disimpan." ,
"baseUrl" : "Base URL" ,
"baseUrlHelp" : "SearXNG memerlukan URL instance Anda sendiri." ,
"baseUrlPlaceholder" : "https://search.example.com" ,
"apiKeyRequired" : "Provider pencarian ini memerlukan API key." ,
"baseUrlRequired" : "SearXNG memerlukan Base URL." ,
"missingCredential" : "Tambahkan kredensial yang diperlukan sebelum menyimpan." ,
"saveHint" : "Perubahan berlaku untuk permintaan web search baru."
}
2026-05-08 15:31:52 +00:00
}
2026-04-19 06:39:06 +00:00
},
"chat" : {
"fallbackTitle" : "Obrolan {{id}}" ,
"loading" : "Memuat…" ,
"noSessions" : "Belum ada sesi." ,
"actions" : "Aksi obrolan untuk {{title}}" ,
"delete" : "Hapus" ,
"newChat" : "Obrolan baru"
},
"deleteConfirm" : {
2026-05-08 13:28:34 +00:00
"title" : "Hapus obrolan ini?" ,
"description" : "Tindakan ini tidak dapat dibatalkan." ,
2026-04-19 06:39:06 +00:00
"cancel" : "Batal" ,
"confirm" : "Hapus"
},
"connection" : {
"idle" : "Idle" ,
"connecting" : "Menghubungkan…" ,
"open" : "Terhubung" ,
"reconnecting" : "Menyambung ulang…" ,
"closed" : "Terputus" ,
"error" : "Kesalahan koneksi"
},
"thread" : {
"loadingConversation" : "Memuat percakapan…" ,
"empty" : {
2026-05-06 15:54:15 +00:00
"description" : "Ajukan pertanyaan, lanjutkan pekerjaan lokal, atau mulai thread baru." ,
"greeting" : "Apa yang bisa saya bantu?" ,
"quickActions" : {
"plan" : {
"title" : "Buat rencana proyek" ,
"prompt" : "Buat rencana proyek ringkas untuk apa yang sebaiknya saya bangun berikutnya."
},
"analyze" : {
"title" : "Analisis data ini" ,
"prompt" : "Bantu saya menganalisis data ini dan soroti pola yang paling penting."
},
"brainstorm" : {
"title" : "Brainstorm ide" ,
"prompt" : "Brainstorm beberapa ide praktis dan tradeoff untuk masalah ini."
},
"code" : {
"title" : "Tulis kode" ,
"prompt" : "Bantu saya menulis kode untuk tugas ini, mulai dari perubahan berguna yang paling kecil."
},
"summarize" : {
"title" : "Ringkas dokumen ini" ,
"prompt" : "Ringkas dokumen ini dan daftar poin-poin utamanya."
},
"more" : {
"title" : "Lainnya" ,
"prompt" : "Tunjukkan beberapa cara berguna Anda dapat membantu di workspace ini."
}
2026-05-08 09:40:15 +00:00
},
"imageQuickActions" : {
"icon" : {
"title" : "Desain ikon aplikasi" ,
"prompt" : "Buat ikon aplikasi 1:1 yang bersih untuk nanobot: robot ramah, gaya vektor sederhana, palet biru dan putih lembut, tanpa teks."
},
"sticker" : {
"title" : "Buat stiker" ,
"prompt" : "Buat gambar gaya stiker yang lucu dari asisten robot kecil, latar terlihat transparan, ekspresif dan menyenangkan."
},
"poster" : {
"title" : "Buat poster" ,
"prompt" : "Buat konsep poster yang rapi untuk asisten AI pribadi, komposisi modern, hierarki visual kuat, cocok untuk landing page."
},
"product" : {
"title" : "Mockup produk" ,
"prompt" : "Buat gambar mockup produk yang bersih untuk aplikasi web AI percakapan, antarmuka minimal, pencahayaan premium, bingkai perangkat realistis."
},
"portrait" : {
"title" : "Potret bergaya" ,
"prompt" : "Buat potret bergaya dari pendamping AI yang ramah, pencahayaan lembut, detail tetapi tetap mudah didekati, gaya ilustrasi modern."
},
"edit" : {
"title" : "Edit gambar" ,
"prompt" : "Bantu saya mengedit gambar. Minta saya mengunggah atau menyebutkan gambar terlebih dahulu, lalu buat hasil editnya."
}
2026-05-06 15:54:15 +00:00
}
2026-04-19 06:39:06 +00:00
},
"header" : {
"toggleSidebar" : "Tampilkan atau sembunyikan sidebar"
},
"composer" : {
"placeholderThread" : "Ketik pesan Anda…" ,
"placeholderHero" : "Apa yang sedang Anda pikirkan?" ,
"placeholderOpening" : "Membuka obrolan baru…" ,
2026-05-01 12:38:22 -03:00
"placeholderStreaming" : "Model sedang merespons…" ,
2026-04-19 06:39:06 +00:00
"inputAria" : "Input pesan" ,
"sendHint" : "Enter untuk kirim · Shift+Enter untuk baris baru" ,
2026-05-16 01:14:11 +08:00
"runRuntimeTitle" : "Berjalan · {{elapsed}}" ,
"goalStateStrip" : "Tujuan · {{label}}" ,
"goalStateFallback" : "Tujuan" ,
"goalStateExpandAria" : "Lihat tujuan lengkap" ,
2026-05-16 04:42:58 +00:00
"goalStateSheetTitle" : "Tujuan" ,
2026-04-21 10:29:47 +00:00
"send" : "Kirim pesan" ,
2026-05-08 09:40:15 +00:00
"stop" : "Hentikan respons" ,
2026-04-21 10:29:47 +00:00
"attachImage" : "Lampirkan gambar" ,
2026-05-08 09:40:15 +00:00
"imageMode" : {
"label" : "Buat gambar" ,
"toggle" : "Alihkan mode pembuatan gambar" ,
"placeholder" : "Deskripsikan atau edit gambar…" ,
"aspectAria" : "Rasio aspek gambar" ,
"aspectLabel" : "Rasio gambar" ,
"aspect" : {
"auto" : "Otomatis" ,
"1_1" : "Persegi 1:1" ,
"3_4" : "Potret 3:4" ,
"9_16" : "Story 9:16" ,
"4_3" : "Lanskap 4:3" ,
"16_9" : "Lebar 16:9"
}
},
2026-04-21 10:29:47 +00:00
"encoding" : "Memproses…" ,
"remove" : "Hapus lampiran" ,
"normalizedSizeHint" : "{{orig}} → {{current}} (auto)" ,
"imageRejected" : {
"unsupported_type" : "Tipe file tidak didukung" ,
"too_many_images" : "Maksimal {{max}} gambar per pesan" ,
"magic_mismatch" : "File ini tampaknya bukan gambar asli" ,
"decode_failed" : "Tidak dapat mendekode gambar ini" ,
"too_large" : "Gambar terlalu besar — coba yang lebih kecil" ,
"io" : "Tidak dapat membaca file ini"
2026-05-06 15:54:15 +00:00
},
"slash" : {
"ariaLabel" : "Perintah slash" ,
"label" : "perintah" ,
"navigateHint" : "↑↓ Pilih" ,
"selectHint" : "Enter/Tab Sisipkan" ,
"closeHint" : "Esc Tutup" ,
"commands" : {
"new" : {
"title" : "Obrolan baru" ,
"description" : "Hentikan tugas saat ini dan mulai percakapan baru."
},
"stop" : {
"title" : "Hentikan tugas saat ini" ,
"description" : "Batalkan giliran agent yang sedang aktif di chat ini."
},
"restart" : {
"title" : "Mulai ulang nanobot" ,
"description" : "Mulai ulang proses bot di tempat."
},
"status" : {
"title" : "Tampilkan status" ,
"description" : "Tampilkan status runtime, provider, dan channel."
},
"history" : {
"title" : "Tampilkan riwayat" ,
"description" : "Cetak N pesan percakapan tersimpan terbaru."
},
"dream" : {
"title" : "Jalankan Dream" ,
"description" : "Picu konsolidasi memori secara manual."
},
"dream_log" : {
"title" : "Tampilkan log Dream" ,
"description" : "Tampilkan perubahan dari konsolidasi Dream terakhir."
},
"dream_restore" : {
"title" : "Pulihkan memori" ,
"description" : "Kembalikan memori ke snapshot Dream sebelumnya."
},
2026-05-16 01:14:11 +08:00
"goal" : {
"title" : "Tujuan jangka panjang" ,
"description" : "Instruksikan agen memperlakukan ini sebagai tujuan multi-langkah yang berkelanjutan."
},
2026-05-06 15:54:15 +00:00
"help" : {
"title" : "Tampilkan bantuan" ,
"description" : "Daftar perintah slash yang tersedia."
}
}
2026-05-16 04:42:58 +00:00
},
"goalStateCloseAria" : "Tutup tujuan"
2026-04-19 06:39:06 +00:00
},
2026-05-17 17:04:57 +08:00
"scrollToBottom" : "Gulir ke bawah" ,
"loadEarlier" : "Muat pesan sebelumnya"
2026-04-19 06:39:06 +00:00
},
"message" : {
"streaming" : "sedang mengalir" ,
"assistantTyping" : "Asisten sedang mengetik" ,
"toolSingle" : "Menggunakan sebuah alat" ,
2026-04-21 10:29:47 +00:00
"toolMany" : "Menggunakan {{count}} alat" ,
2026-05-16 01:14:11 +08:00
"toolSummary" : "{{count}} alat" ,
"toolSummaryMany" : "{{count}} alat" ,
"reasoningTools" : "Penalaran · {{count}} alat" ,
"reasoningToolsSingular" : "Penalaran · 1 alat" ,
"reasoning" : "Penalaran" ,
"reasoningStreaming" : "Berpikir…" ,
"reasoningSummary" : "Penalaran" ,
"agentActivitySummary" : "{{reasoning}} langkah · {{tools}} panggilan alat" ,
"agentActivityToolsOnly" : "{{tools}} panggilan alat" ,
"agentActivityLiveSummary" : "Berjalan… · {{reasoning}} langkah · {{tools}} panggilan alat" ,
"agentActivityLiveToolsOnly" : "Berjalan… · {{tools}} panggilan alat" ,
"imageAttachment" : "Lampiran gambar" ,
"turnLatencyTitle" : "Waktu respons (ujung ke ujung)"
2026-04-21 10:29:47 +00:00
},
"lightbox" : {
"title" : "Pratinjau gambar" ,
"open" : "Lihat gambar" ,
"prev" : "Gambar sebelumnya" ,
"next" : "Gambar berikutnya" ,
"close" : "Tutup pratinjau"
2026-04-19 06:39:06 +00:00
},
"code" : {
"fallbackLanguage" : "kode" ,
"copyAria" : "Salin kode" ,
"copy" : "Salin" ,
"copied" : "Tersalin"
2026-04-21 10:29:47 +00:00
},
"common" : {
"dismiss" : "Tutup"
},
"errors" : {
"messageTooBig" : {
"title" : "Pesan terlalu besar" ,
"body" : "Server menolak pesan terakhir karena melebihi batas ukuran. Hapus beberapa gambar atau gunakan berkas yang lebih kecil, lalu coba lagi."
}
2026-04-19 06:39:06 +00:00
}
}