Lewati ke konten
MINGGU, NOVEMBER 8, 2026BERITA TEKNOLOGI INDEPENDEN, ULASAN & PANDUAN PRAKTIS
TENTANG
TERBARU /

Cara memakai OpenCode dari prompt pertama sampai ke App Store: panduan 2026 untuk paket coding, Ollama, server MCP, dan skills

BACA PANDUAN
AGEN AIGM / 903

Cara memakai OpenCode dari prompt pertama sampai ke App Store: panduan 2026 untuk paket coding, Ollama, server MCP, dan skills

Cara pakai OpenCode dari instalasi sampai disetujui App Store: perbandingan paket coding, Ollama lokal dan cloud, MCP, skill, dan aturan Apple 2026.

How to use OpenCode from first prompt to the App Store: coding plans, Ollama, MCP servers, skills and the 2026 App Store rules on a tech.grahammiranda.com title card

Di suatu titik antara prompt pertama dan email pertama dari App Review, agen coding AI berhenti menjadi mainan dan menjadi alat yang kamu ikut kirim. Panduan ini membahas cara memakai OpenCode untuk berpindah dari satu keadaan ke keadaan lain: memasangnya di Mac yang masih bersih, memilih apa yang perlu dibayar untuk model yang berpikir, menjalankan model di mesinmu sendiri dengan Ollama, memberi agen tangan sungguhan lewat server MCP, mengajarinya kebiasaanmu lewat skills, lalu mengantar aplikasi iPhone melewati TestFlight dan App Review tanpa kehilangan waktu sepekan untuk urusan dokumen.

Saya tidak punya latar belakang coding. Saya menjalankan perusahaan IT kecil di Jerman, dan saya membangun perangkat lunak dengan agen AI. Dua hasilnya sudah tayang di App Store musim gugur ini: Stash, yang mengingat tempat kamu menyimpan barang, dan PingAtlas, yang mengukur latensi jaringan dari perangkatmu sendiri. Keduanya muncul di panduan ini hanya saat benar-benar berguna sebagai contoh, dan tidak di tempat lain.

Semua yang ada di bawah dicek terhadap dokumentasi resmi, catatan rilis, halaman harga, dan App Store itu sendiri pada 7 November 2026. Coding AI bergerak cepat: OpenCode merilis setidaknya sepuluh rilis versi 2 hanya antara 20 dan 30 Oktober, Ollama dan MiniMax sama-sama merombak paket mereka sejak akhir Agustus, dan Apple menulis ulang sebagian pedoman peninjauannya setidaknya dua kali tahun ini. Angka yang mudah berubah ditandai di tempatnya muncul. Cek dulu sebelum kamu membeli apa pun.

Pengungkapan: Stash dan PingAtlas adalah aplikasi saya sendiri, diterbitkan oleh perusahaan saya, Graham Miranda UG (haftungsbeschränkt). Keduanya gratis dan tanpa iklan. Artikel ini berisi satu tautan afiliasi: tautan Z.ai GLM Coding Plan di Bagian 2 memberi kamu diskon 10% dan membayar komisi kepada saya jika kamu berlangganan. Tim OpenCode di Anomaly, Ollama, Apple, Expo, Z.ai, dan semua perusahaan lain yang disebut di sini tidak mensponsori, meninjau, atau menyetujui artikel ini.


TL;DR — Seluruh perjalanan dalam sepuluh poin

  • OpenCode adalah agen coding sumber terbuka (MIT) yang gratis yang bekerja dengan hampir semua model: langganan cloud, API bayar per token, atau model yang berjalan di Mac-mu sendiri. Versi terkininya 2.2.6 (6 November 2026), dengan aplikasi terminal, aplikasi desktop, antarmuka web dan ponsel, serta mode ACP yang berjalan di dalam Xcode 27.
  • Kamu membayar modelnya, bukan agennya. “Paket coding” adalah langganan bulanan tetap untuk waktu model. Bagi sebagian besar orang yang baru mulai, OpenCode Go ($10 per bulan) plus Ollama (gratis secara lokal, $20 per bulan untuk kredit cloud Pro) adalah susunan yang saya rekomendasikan: murah, tidak terikat satu model, retensi nol secara default untuk sebagian besar model, dan tidak ada wilayah abu-abu dalam syarat layanan siapa pun.
  • Alternatifnya nyata. ChatGPT Plus dan Pro, GitHub Copilot, serta Z.ai GLM Coding Plan semuanya tersambung ke OpenCode lewat provider bawaan. Langganan Claude kini berfungsi lagi melalui provider Claude Agent baru di OpenCode 2.2.3, tetapi Anthropic belum mendukung jalur itu secara publik, jadi baca Bagian 2 sebelum kamu mengandalkannya.
  • Ollama adalah satu mesin untuk model lokal dan cloud. ollama launch opencode menyambungkan keduanya, model lokal butuh jendela konteks minimal 64K, dan Mac 32 GB bisa menjalankan model coding yang mumpuni seperti qwen3.8:27b (unduhan 18 GB).
  • Server MCP memberi agen tangan. Untuk pekerjaan aplikasi, daftar pendeknya adalah jembatan MCP milik Xcode sendiri (xcrun mcpbridge), XcodeBuildMCP, server MCP Expo, Context7 untuk dokumentasi terkini, dan Sentry untuk crash. Tambahkan hanya yang kamu pakai: setiap server memakan konteks.
  • Skills memberi agen panduan kerjamu. Satu skill adalah folder yang berisi berkas SKILL.md . OpenCode membacanya dari .opencode/skills dan juga dari .claude/skills dan .agents/skills, sehingga skill yang ditulis untuk agen lain juga berfungsi. Expo menerbitkan 23 skill resmi, dan App Store Connect CLI (asc) hadir dengan lebih dari dua puluh.
  • Biarkan agen mengurus dokumennya, bukan pengirimannya. The asc CLI dan skill-nya bisa mengunggah build, mengelola TestFlight, menyinkronkan metadata dan tangkapan layar, serta memeriksa status peninjauan. Tolak perintah submit di izin OpenCode dan tekan tombolnya sendiri.
  • Aturan Apple 2026 penting untuk aplikasi buatan AI. Aplikasi tiruan di kategori yang sudah padat kini ditolak (pedoman 4.3(b), Juni), fitur tersembunyi atau tidak aktif dilarang (2.5.19 baru, Oktober), build memerlukan Xcode 26 atau lebih baru, dan mulai April 2027 aplikasi yang dibangun dengan SDK iOS 27.1 perlu tangkapan layar iPhone Duo.
  • Biaya tahun pertama: $99 jika kamu menjalankan semuanya secara lokal dan hanya membayar Apple, sekitar $419 untuk susunan yang saya rekomendasikan (Apple + OpenCode Go + Ollama Pro dengan tagihan tahunan), dan sekitar $1,779 untuk susunan kelas berat. Semua harga belum termasuk PPN.
  • Aturan yang paling penting: “selesai” adalah klaim, bukan fakta. Jalankan di iPhone sungguhan, dalam mode pesawat, dalam mode gelap, dengan ukuran teks terbesar, dan VoiceOver aktif. Baru percaya.

Sekilas perjalanannya

Tahap Yang kamu lakukan Yang dilakukan OpenCode Alat
1. Siapkan Pasang, pilih paket coding, hubungkan model Belum ada OpenCode, OpenCode Go, Ollama
2. Ajari Tulis AGENTS.md, tambahkan skill, hubungkan server MCP Membacanya setiap sesi AGENTS.md, skill, MCP
3. Rencanakan Tulis brief, debat rencananya Mengubah brief menjadi rencana dan peta jalan plan agen, /goal
4. Bangun Tinjau setiap diff, uji di perangkat Menulis kode dalam potongan kecil, mem-build, menjalankan tes, mengambil tangkapan layar build agen, Xcode MCP, XcodeBuildMCP atau Expo MCP
5. Beta Undang penguji, baca masukan Mengarsipkan, mengunggah, mengelola grup TestFlight Xcode, asc atau EAS
6. Administrasi Jawab pertanyaan hukum dan privasi dengan jujur Menyusun draf metadata, mengaudit aliran data, mengubah ukuran tangkapan layar asc skill
7. Kirim Kamu tekan “Kirim untuk Ditinjau” Memeriksa status peninjauan, menyortir penolakan App Store Connect
8. Luncurkan Tanggapi pengguna, rencanakan pembaruan Melokalkan, menulis catatan rilis, menyortir crash asc, Sentry, situs web kamu
Cara menggunakan OpenCode dari prompt pertama hingga App Store: alur delapan tahap dari penyiapan dan rencana coding sampai skill, server MCP, build, TestFlight, App Store Connect, dan peluncuran
Seluruh alur di satu halaman. Agen yang mengetik sebagian besar. Kamu yang memegang brief, tinjauan setiap diff, dan tombol “Kirim”.

Daftar isi


Bagian 1 — Apa Itu OpenCode pada November 2026, dan Mengapa Saya Merekomendasikannya

OpenCode adalah agen coding AI sumber terbuka. Kamu menjalankannya di folder proyek, jelaskan apa yang kamu inginkan, dan ia bekerja seperti seorang developer: membaca berkasmu, membuat rencana, mengedit kode, menjalankan perintah, membaca galat, dan terus berjalan sampai pekerjaan selesai atau ia membutuhkanmu. Proyek ini diterbitkan dengan lisensi MIT oleh Anomaly, tim di baliknya, dan ia tidak peduli model apa yang kamu berikan.

Halaman depan proyek ini mengklaim lebih dari 220.000 bintang GitHub, 1.089 kontributor, dan 22 juta pengembang per bulan. Itu angka dari proyek itu sendiri dan berubah setiap minggu, tetapi angka itu menjelaskan mengapa OpenCode menjadi alternatif agnostik model yang paling dikenal dibanding agen buatan para pembuat model sendiri, Claude Code dan Codex.

Di mana ia berjalan

OpenCode bukan lagi satu aplikasi. Sejak penulisan ulang 2.0, sebuah layanan latar belakang berjalan di mesinmu dan setiap antarmuka berbicara dengannya, jadi sesi yang kamu mulai di satu tempat muncul di tempat lain.

Antarmuka Apa itu Cocok untuk
Terminal (TUI) Aplikasi terminal layar penuh yang klasik Kerja cepat dengan papan ketik, sesi SSH, server
Aplikasi desktop Aplikasi Electron untuk macOS (Apple silicon dan Intel), Windows (x64 dan ARM64), serta Linux (.deb, .rpm, AppImage), dengan tab, diff, terminal, dan peramban bawaan Orang yang tidak hidup di terminal
Web dan ponsel opencode pair mencetak tautan sekali pakai (kedaluwarsa setelah lima menit) yang membuka sesi lokalmu di peramban; 2.2.6 menambahkan komposer yang ramah ponsel dan tablet Memeriksa tugas panjang dari sofa
Di dalam Xcode 27 OpenCode berbicara dengan Agent Client Protocol, jadi opencode acp dapat ditambahkan sebagai agen di pengaturan Intelligence Xcode Pengembang Swift native yang ingin tetap di Xcode
SDK dan skrip opencode run untuk tugas sekali jalan, plus SDK JavaScript Otomasi dan CI

Apa yang berubah sejak 2.0

OpenCode 2.0 adalah pembangunan ulang dari nol: menurut pengumuman tim pada Juli, runtime berpindah dari Bun ke Node.js untuk memangkas penggunaan memori, aplikasi desktop berpindah dari Tauri ke Electron, API didesain ulang, dan OpenCode mulai berjalan sebagai layanan secara bawaan. Versi 2.0.0 dirilis pada 11 September 2026. Rilis-rilis sejak itu sebagian besar menambahkan fitur yang penting untuk proyek nyata yang panjang:

Versi Tanggal Apa yang ditambahkan
2.2.0 27 Okt Plugin desktop eksperimental, aplikasi desktop yang diperbarui, API gambar dan keputusan untuk plugin
2.2.1 29 Okt Mode tujuan (/goal <objective>, dengan jeda, lanjutkan, dan hapus), opt-in prompt terjadwal, pembuatan gambar
2.2.2 29 Okt Pembuatan gambar aktif secara bawaan bila penyedia yang terhubung mendukungnya; pemilih worktree dari cabang Git
2.2.3 30 Okt The Claude Agent penyedia (lebih lanjut di Bagian 2)
2.2.4 30 Okt Penyiapan Claude Agent terpandu, jadwal yang berjalan di bawah opencode serve, terminal desktop persisten
2.2.5 30 Okt Pintasan worktree dan mode shell, buffer pemadatan berbasis persentase
2.2.6 6 Nov opencode run --worktree untuk eksekusi berskrip, dock komposer seluler, koneksi MCP bersama

Sumber: changelog OpenCode, diperiksa 7 November 2026. Kemungkinan sudah ada versi yang lebih baru saat kamu membaca ini.

Mengapa inilah agen yang saya rekomendasikan

  1. Ia tidak setia pada model mana pun. OpenCode terhubung ke langganan, API bayar-per-token, dan model lokal melalui satu /connect perintah. Saat model yang lebih baik dirilis bulan depan, kamu mengubah satu baris di berkas konfigurasi, bukan seluruh alur kerjamu.
  2. Izinnya bekerja seperti firewall. Setiap tindakan (membaca, menyunting, menjalankan perintah shell, memuat skill, memanggil alat MCP) melewati daftar berurutan allow, tanya dan deny aturan di mana kecocokan terakhir yang menang. “Jangan pernah menjalankan git push” dan “jangan pernah mengirim ke App Store” masing-masing satu baris.
  3. Ia mendukung format semua orang. Ia membaca AGENTS.md (dan beralih ke CLAUDE.md), memuat skill dari .claude/skills dan .agents/skills serta folder miliknya sendiri, dan terhubung ke server MCP mana pun. Ekosistem buatan agen lain juga berfungsi di sini.
  4. Ia ada di mana pun kamu berada. Terminal di server, aplikasi desktop di Mac, browser di ponsel, atau di dalam Xcode.
  5. Gratis. OpenCode gratis, dan bahkan menyertakan kumpulan model gratis bergilir yang bisa kamu pakai tanpa akun.

Kapan bukan pilihan terbaik

Jujur dulu: OpenCode bukan skor tertinggi di papan peringkat coding, karena ia bukan satu model. Harness yang memuncaki daftar itu adalah pasangan vendor: Claude Code dengan model terbaik Anthropic, Codex dengan model OpenAI. Keduanya disetel bersama dan sangat bagus. Saya membandingkan dua puluh delapan di antaranya dalam perbandingan harness coding AI, dan jika kamu sudah membayar salah satu langganan itu dan menyukainya, tidak ada apa pun di panduan ini yang mengharuskanmu pindah.

Ada juga sisi kasarnya. OpenCode merilis versi hampir setiap hari, jadi banyak hal bergerak di bawah kakimu. Dokumentasi versi 1 yang lama masih ada di docs.opencode.ai (dengan spanduk yang mengarah ke v2), dan banyak panduan pihak ketiga, termasuk halaman OpenCode milik Ollama sendiri, masih menampilkan alamat pemasang v1. Beberapa fitur terbaru ditandai eksperimental. Dan pengelola paket Windows tidak didukung untuk alat baris perintah v2; pengguna Windows mendapat aplikasi desktop atau zip mandiri.


Bagian 2 — Paket Coding, Dijelaskan (dan Dua yang Saya Rekomendasikan)

OpenCode gratis. Model yang berpikir tidak. Ada tiga cara membayarnya, dan sebagian besar kebingungan soal “paket coding AI” berasal dari mencampuradukkannya.

  1. Jalankan sendiri. Model bobot terbuka di Mac-mu sendiri lewat Ollama. Kamu membayar dengan perangkat keras dan kesabaran, bukan uang. Kodemu tidak pernah meninggalkan mesin.
  2. Berlangganan paket coding. Biaya bulanan tetap membeli jatah pemakaian, biasanya diukur dalam jendela lima jam dan mingguan. Di sinilah OpenCode Go, Ollama Pro, GLM Coding Plan, serta langganan ChatGPT dan Claude berada.
  3. Bayar per token. Bawa kunci API dari penyedia mana pun dan bayar tepat sesuai pemakaian. Ideal untuk masalah sulit sesekali; berbahaya untuk sesi debugging panjang tanpa peringatan anggaran.

Paket coding yang berfungsi di OpenCode (November 2026)

Paket Harga bulanan (USD) Yang kamu dapat Cara terhubung ke OpenCode
Model gratis OpenCode $0 Kumpulan model gratis waktu terbatas yang bergilir Bawaan, tanpa akun
Ollama, lokal $0 Model bobot terbuka apa pun yang muat di Mac-mu Terdeteksi otomatis, atau ollama launch opencode
OpenCode Go ⭐ $10 · Go Plus $40 · Go Teams $20 per anggota 32 model terbuka, termasuk GLM-5.3, GLM-5.3-Flash, Kimi K3 dan K3.1 Pro, MiniMax M3.1 Flash, DeepSeek V4.1 Flash, dan Qwen3.8 Max /connect → OpenCode Go → tempel kuncimu
Ollama Pro / Max ⭐ $20 ($200 setahun) · Max $100 Kredit $60 (Pro) atau $300 (Max) untuk model cloud per bulan, plus pemakaian lokal tanpa batas Sama seperti Ollama lokal; model cloud muncul bersama model lokal
GLM Coding Plan (Z.ai) Lite $18 · Pro $80 · Max $168 (diskon 20% triwulanan, 30% tahunan) GLM-5.3 dan GLM-5.3-Flash, keduanya dengan konteks 1 juta token /connect → penyedia Z.AI Coding Plan
MiniMax M Plan Go $22 · Explore $55 · Build $132 (dua bulan gratis dengan tagihan tahunan) MiniMax M3.1 Flash, plus model gambar, audio, dan (mulai Explore) video Penyedia paket coding MiniMax, dengan kunci M Plan
ChatGPT Plus $20 · Pro mulai $100 Keluarga GPT-6 OpenAI melalui paket ChatGPT-mu /connect → OpenAI → “Masuk dengan ChatGPT”
GitHub Copilot Pro $10 · Pro+ $39 · Max $100 Kumpulan model Copilot, diukur dalam GitHub AI Credits /connect → GitHub Copilot → login perangkat
Claude Pro $20 · Max mulai $100 Model Anthropic lewat Claude Code /connect → Claude Agent (OpenCode 2.2.3+, Claude Code terpasang); lihat catatan di bawah
Bayar per token Yang kamu pakai API penyedia mana pun, termasuk gateway bayar-sesuai-pakai milik OpenCode sendiri /connect → penyedia → kunci API

Harga daftar per 7 November 2026, tanpa PPN. ⭐ = yang direkomendasikan panduan ini. Harga, kuota dan daftar model berubah terus, jadi periksa halaman tiap vendor sebelum kamu berlangganan. Harga GLM berasal dari cuplikan 24 September dan judul Z.ai “paket mulai $18”; keanggotaan Kimi (mulai $19) tidak disertakan karena saya tidak bisa memastikan jalur resmi OpenCode untuknya.

Perbandingan paket coding AI, November 2026: harga masuk bulanan dari gratis sampai $168 untuk OpenCode Go, Ollama, GitHub Copilot, GLM Coding Plan, ChatGPT, Claude, dan MiniMax, dengan OpenCode Go dan Ollama disorot
Tangga harga. Dua paket yang disorot adalah yang akan saya mulai; sisanya jadi alasan bagus untuk tetap dengan langganan yang sudah kamu punya.

Cara batasannya sebenarnya bekerja

Harga di judul tidak bercerita banyak. Jatahnya yang kamu jalani sehari-hari.

  • OpenCode Go memberi setiap model jatah dolar bulanannya sendiri, dan kamu bisa menghabiskan 20% darinya dalam jendela lima jam mana pun dan 50% dalam seminggu. Pada paket $10, misalnya, GLM-5.3-Flash mendapat $60 sebulan, DeepSeek V4.1 Flash $100 dan Kimi K3 $15, jadi model murah dan efisien bertahan jauh lebih lama daripada model kelas berat. Saat kamu mencapai batas, permintaan diblokir kecuali kamu menyalakan Extra Usage, yang beralih ke kredit bayar-sesuai-pakai. Model gratis tetap berjalan dalam kedua kondisi.
  • Ollama beralih ke kredit: Pro mencakup pemakaian cloud $60 sebulan dan Max $300, keduanya ditagih dengan tarif per token, dan kredit yang tidak terpakai tidak terbawa ke bulan berikutnya. Pro mengizinkan tiga permintaan sekaligus, Max sepuluh. Harga turun di luar pukul 12:00–18:00 UTC pada hari kerja dan sepanjang akhir pekan, yang cocok untuk malam hari Eropa. Model lokal tidak terbatas di semua paket, termasuk yang gratis.
  • Paket GLM Coding memakai kredit per jendela lima jam dan mingguan, dan pemakaian di luar jam sibuk (di luar pukul 14:00–18:00 waktu Tiongkok pada hari kerja) memakan setengah kredit.
  • ChatGPT dan Copilot mengukur lewat sistem mereka sendiri: ChatGPT dalam perkiraan pesan lima jam per model, Copilot dalam AI Credits. Di dalam OpenCode, login ChatGPT tidak menampilkan biaya per permintaan karena pemakaian dihitung terhadap paketmu, dan OpenCode membatasi konteks masukan untuk mereka secara default (500.000 token pada model GPT terbaru).

Privasi dan penyimpanan data

Prompt-mu berisi kodemu. Ke mana perginya itu penting, terutama untuk pekerjaan klien di bawah ketentuan perlindungan data UE.

  • OpenCode Go memblokir endpoint berbayar yang melatih data kamu secara default. Sebagian besar model (GLM, Kimi, MiniMax, Qwen, MiMo dan lainnya) disajikan tanpa penyimpanan; beberapa (Grok, model GPT Luna, Claude Haiku dan dua model promosi gratis) menyimpan log selama 30 hari. Model “Contributor” yang didiskon memang melatih prompt-mu dan harus dinyalakan dengan sengaja. Wilayah default adalah Eropa dan Amerika Serikat, dan model DeepSeek mengharuskan kamu memilih ikut routing global, dengan perjanjian tanpa penyimpanan yang berlaku hingga 30 November 2026.
  • Ollama Cloud mengatakan terus terang: “Data prompt atau respons tidak pernah dicatat atau dijadikan bahan pelatihan.” Model berjalan terutama di Amerika Serikat, dengan kapasitas limpahan yang mungkin dirutekan ke Eropa.
  • Model gratis OpenCode adalah kesepakatan yang berbeda: dokumentasi mencatat bahwa sebagian model gratis mungkin memakai datamu untuk meningkatkan model. Tidak masalah untuk eksperimen, bukan untuk kode klien. Setel OPENCODE_DISABLE_FREE_MODELS=1 untuk menyembunyikannya.
  • Model lokal tidak pernah meninggalkan mesinmu. Untuk apa pun di bawah perjanjian pemrosesan data yang ketat, itu tetap jawaban paling bersih.

Persoalan Claude

Langganan Claude mengalami tahun yang bergejolak di alat pihak ketiga. Pada Januari, Anthropic memperketat pemeriksaannya sehingga login Claude Pro dan Max berhenti berfungsi di harness seperti OpenCode, dan pada Maret OpenCode menghapus opsi loginnya atas permintaan Anthropic. Pada 30 Oktober, OpenCode 2.2.3 menghadirkan kembali langganan lewat jalur berbeda: penyedia bawaan Claude Agent yang menjalankan Claude Code yang terpasang di mesinmu (versi 2.1.248 atau lebih baru) melalui Agent SDK resmi Anthropic, setelah kamu login dengan claude auth login.

Fakta yang perlu kamu tahu sebelum memakainya:

  • OpenCode tidak membaca login tersimpan Claude Code; claude program yang mengirim permintaannya.
  • Alat, pengaturan, dan lainnya milik Claude Code, CLAUDE.md berkas, hook, server MCP dan skill milik Claude Code dimatikan. Claude bekerja melalui alat dan prompt izin OpenCode sebagai gantinya.
  • Dokumentasi Agent SDK Anthropic menyatakan pengembang pihak ketiga tidak boleh menawarkan login claude.ai atau batas langganan di produk mereka kecuali Anthropic telah menyetujuinya. Saat artikel ini ditulis, Anthropic belum berkomentar secara publik tentang penyedia OpenCode, dan tidak ada yang bisa memastikan apakah itu membahayakan akunmu.

Saran saya: jika kamu sudah membayar Claude dan ingin mencobanya, pakai untuk proyek pribadi dan pantau pernyataan resmi. Untuk pekerjaan bisnis, gunakan kunci API Anthropic, satu-satunya jalur yang disebut dokumentasi Anthropic.

Yang saya rekomendasikan, dan alasannya

Mulai dengan OpenCode Go dan Ollama. Ini alasannya:

  • Harga. $10 sebulan membeli akses ke 32 model terbuka yang kuat. Tambahkan Ollama Pro seharga $20 jika kamu ingin ruang cloud lebih; lewati jika Mac-mu menjalankan model lokal dengan baik.
  • Pilihan tanpa keterikatan. Go dan Ollama Cloud membawa keluarga bobot terbuka yang sama (GLM, Kimi, MiniMax, DeepSeek dan lainnya), jadi kamu bisa membandingkan model pada proyekmu sendiri alih-alih memercayai papan peringkat.
  • Privasi secara default. Tanpa penyimpanan untuk sebagian besar model Go, kebijakan tanpa pencatatan di Ollama, dan opsi untuk sepenuhnya lokal untuk pekerjaan sensitif.
  • Tanpa zona abu-abu. Keduanya dirancang tepat untuk penggunaan ini, di dalam OpenCode.
  • Cadangan lokal itu gratis. Saat jendela lima jam habis pada pukul 23.00, model lokal di Ollama membuatmu tetap jalan mengerjakan tugas-tugas kecil.

Kapan memilih yang lain. Kalau kamu sudah membayar ChatGPT Plus atau Copilot, hubungkan itu dulu; tidak ada biaya tambahan. Kalau GLM akan jadi andalan harianmu, jatah GLM Coding Plan bisa lebih masuk akal daripada batas per model milik Go, dan kamu bisa dapatkan diskon 10% untuk GLM Coding Plan lewat tautan afiliasiku (tautan afiliasi, lihat pengungkapan di bagian atas). Kunci Coding Plan dan kunci API Z.ai standar tidak bisa saling tukar, jadi pilih penyedia Coding Plan di /connect. Dan kalau pekerjaanmu menuntut puncak tertinggi papan peringkat, model frontier lewat kunci API untuk tugas tersulit adalah uang yang layak dibelanjakan.


Bagian 3 — Ollama: Satu Mesin untuk Model Lokal dan Cloud

Ollama menjalankan model bobot terbuka di komputermu sendiri dan menyajikannya lewat API lokal yang sederhana. Sejak tahun lalu ia juga menjalankan model yang lebih besar di cloud miliknya sendiri, lewat aplikasi yang sama dan API yang sama, jadi bagi OpenCode model cloud tampak persis seperti model lokal. Itulah seluruh daya tariknya: satu mesin, satu penyiapan, dan pergantian antara “pribadi dan gratis” serta “besar dan cepat” yang cukup lewat nama model.

Pasang Ollama (langkah demi langkah)

  1. Unduh dari ollama.com/download. Di Mac, buka berkas unduhannya dan seret Ollama ke Applications. Di Windows, jalankan penginstalnya. Di Linux, perintah satu baris resminya adalah:
    curl -fsSL https://ollama.com/install.sh | sh
  2. Jalankan. Buka aplikasinya, atau ketik ollama di terminal. Sejak versi 0.40.15 (awal November), menjalankan ollama tanpa argumen akan membuka peluncur sambutan.
  3. Masuk kalau kamu ingin memakai model cloud. Aplikasi akan memandumu saat penyiapan. Model lokal berfungsi tanpa akun; pemakaian cloud-mu ada di ollama.com/settings/usage.
  4. Tarik model untuk memastikan semuanya berfungsi:
    ollama pull qwen3.8:27b
    ollama run qwen3.8:27b "Say hello in Swift"

Hubungkan Ollama ke OpenCode

Ada tiga opsi, dari yang paling mudah sampai yang paling fleksibel.

Opsi 1: biarkan OpenCode menemukannya. OpenCode v2 memeriksa alamat Ollama lokal bawaan saat mulai dan menambahkan setiap model yang bisa menulis teks ke /models. Tanpa akun, tanpa konfigurasi. Model yang hanya untuk embedding dilewati.

Opsi 2: biarkan Ollama yang menyiapkannya.

ollama launch opencode            # siapkan OpenCode untuk Ollama lalu jalankan
ollama launch opencode --config   # siapkan saja, jangan mulai sesi

ollama launch sudah berfungsi dengan OpenCode v2 sejak Ollama 0.40.12 (27 Oktober). Perintah ini tidak menimpa ~/.config/opencode/opencode.json, jadi pengaturanmu sendiri tetap berlaku. Satu keanehan: model yang kamu tentukan hanya di konfigurasi OpenCode tidak muncul di pemilih peluncur Ollama.

Opsi 3: arahkan OpenCode ke server Ollama di tempat lain. Kalau Ollama berjalan di Mac mini di dalam lemari atau di sebuah server, tambahkan sebagai penyedia beserta alamatnya. Bagian /v1 di akhir itu penting:

{
  "$schema": "https://opencode.ai/config.json",
  "providers": {
    "ollama": {
      "settings": {
        "baseURL": "https://ollama.example.com/v1",
        "apiKey": "{env:OLLAMA_API_KEY}"   // optional, sent as a bearer token
      }
    }
  }
}

Pengaturan yang merusak sebagian besar penyiapan lokal: panjang konteks

FAQ Ollama menyebut jendela konteks bawaannya 4.096 token. Panduan OpenCode milik Ollama sendiri meminta setidaknya 64K, karena system prompt agen, definisi alat, dan isi berkas sudah memenuhi jendela kecil sebelum pekerjaan apa pun dimulai. Atur di server Ollama, bukan di OpenCode:

# Kalau kamu menjalankan servernya sendiri:
OLLAMA_CONTEXT_LENGTH=65536 ollama serve

# Kalau kamu memakai aplikasi Mac: setel variabel untuk launchd, lalu keluar dan buka lagi Ollama
launchctl setenv OLLAMA_CONTEXT_LENGTH 65536

Lalu periksa apakah pengaturannya sudah berlaku: ollama ps menampilkan ukuran konteks setiap model yang dimuat dan apakah model itu berjalan di GPU. Jendela yang lebih besar memakai memori lebih banyak, jadi di Mac 32 GB, 64K adalah batas atas yang masuk akal untuk model 27 miliar parameter.

Model lokal mana yang cocok untuk Mac-mu

Aturan praktis yang berguna dari peringkat BenchLM November: sebuah model butuh kira-kira ukuran unduhannya ditambah 20% untuk konteks, dan Mac bisa memberikan sekitar tiga perempat memori terpadunya ke GPU. Dalam praktiknya, jaga ukuran unduhan di bawah sekitar 60% memori Mac-mu.

Memori Mac-mu Model yang dicoba lebih dulu Unduhan Konteks Cocok untuk
16 GB gemma4:12b atau gemma4:e4b 7.7 GB / 6.6 GB 256K / 128K Penjelasan, pengeditan kecil, pesan commit. Terlalu kecil untuk sesi agen yang panjang; gunakan model cloud untuk membangun
24–32 GB qwen3.8:27b (juga sebagai 27b-mlx untuk Apple silicon) 18 GB 256 ribu Titik optimal lokal untuk coding dengan agen
24–32 GB qwen3-coder:30b 19 GB 256 ribu Coder mixture-of-experts dengan hanya sekitar 3 miliar parameter aktif, jadi cepat
24–32 GB gpt-oss:20b 14 GB 128K Model bobot terbuka OpenAI yang lebih kecil; menyisakan ruang paling banyak
64 GB Model yang sama pada presisi lebih tinggi, seperti qwen3.8:27b-q8_0 30 GB 256 ribu Jawaban lebih baik, ruang untuk konteks besar
96–128 GB gpt-oss:120b atau devstral-2:123b 65 GB / 75 GB 128K / 256K Kualitas model besar tanpa cloud

Ukuran dan jendela konteks dari pustaka Ollama pada 7 November 2026. Kecepatan bergantung pada bandwidth memori chip kamu sama seperti pada ukuran memorinya. Untuk sisi perangkat keras, lihat panduan MacBook untuk LLM lokal.

Ollama Cloud: model yang tidak bisa ditampung Mac kamu

Model coding bobot terbuka terkuat saat ini jauh terlalu besar untuk laptop. Ollama Cloud menjalankannya untukmu. Di aplikasi atau CLI, model-model itu membawa tag :cloud dan tidak mengunduh apa pun:

ollama run glm-5.3:cloud
ollama run minimax-m3.1-flash:cloud

Bagian katalog cloud yang relevan untuk coding pada 7 November:

Model Pembuat Konteks Rating penggunaan Ollama Catatan
glm-5.3 Z.ai 1 juta Tinggi Unggulan Z.ai; kuat pada tugas agentic panjang
glm-5.3-flash Z.ai 1 juta Sedang Multimodal secara native, 18B parameter aktif; model build default yang bagus
kimi-k3.1-pro Moonshot AI 1 juta Sangat tinggi Entri terbaru (diperbarui 4 November), multimodal, model paling mumpuni dari Moonshot
kimi-k2.7-code Moonshot AI 256 ribu Tinggi Disesuaikan untuk coding dan lebih ringan dalam token berpikir
minimax-m3.1-flash MiniMax 976K Sedang Membaca gambar; $0.15 input dan $0.60 output per juta token
deepseek-v4.1-flash DeepSeek 1 juta Sedang Dibuat untuk kecepatan dan throughput; membaca gambar
mistral-large-4 Mistral 1 juta Tinggi Lab Eropa, bobot terbuka
gemma4 Google 256 ribu Rendah Cukup murah untuk helper dan subagen

Rating itu adalah singkatan Ollama’ untuk seberapa cepat sebuah model menghabiskan kreditmu. Jika kamu ingin membandingkan model-model besarnya dengan benar, perbandingan saya Kimi K3 versus Fable 5.1 versus GLM-5.3 dan GLM-5.3-Flash versus MiniMax M3 lebih mendalam.

Model lokal vs cloud Ollama untuk OpenCode: model coding lokal mana yang cocok untuk Mac 16, 32, 64, atau 128 GB, dan model Ollama Cloud untuk pekerjaan yang lebih besar, lengkap dengan ukuran konteks dan rating penggunaan
Lokal untuk privasi dan pekerjaan kecil, cloud untuk kerja berat. Mesin sama, API sama, hanya beda satu nama model.

Pola routing yang akan saya’ tiru

Kamu tidak’ harus memilih satu model. Beri setiap jenis pekerjaan model termurah yang bisa melakukannya dengan baik:

  • Perencanaan (kesalahan termahal terjadi di sini): model terkuatmu.
  • Membangun: model cepat dan mumpuni seperti GLM-5.3-Flash atau MiniMax M3.1 Flash.
  • Menelusuri basis kode, membaca dokumentasi, menulis tes dan pesan commit: model lokal. Tidak ada biaya dan kodemu tidak ke mana-mana.

Bagian 4 menunjukkan persis cara menyiapkannya di konfigurasi OpenCode’.

Mode hanya-lokal untuk proyek sensitif

Jika sebuah proyek tidak boleh sama sekali menyentuh model cloud, jadikan itu pengaturan, bukan janji. Ollama bisa mematikan fitur cloud-nya sepenuhnya (tambahkan "disable_ollama_cloud": true untuk ~/.ollama/server.json, atau setel OLLAMA_NO_CLOUD=1, lalu mulai ulang), dan model cloud gratis OpenCode’ bisa disembunyikan dengan OPENCODE_DISABLE_FREE_MODELS=1. Lalu hubungkan hanya penyedia lokal di proyek itu.

Catatan jujur tentang Ollama

  • Model lokal lebih lambat dan lebih lemah dalam pemakaian alat multi-langkah yang panjang dibandingkan model cloud besar. Mereka unggul pada tugas yang terbatas.
  • Cloud tetap komputer orang lain’. Kebijakan tanpa-log Ollama’ memang bagus, tetapi kodemu tetap meninggalkan mesinmu, sebagian besar ke Amerika Serikat.
  • Kredit bisa habis. Kredit Pro senilai $60 bisa bertahan lama di GLM-5.3-Flash dan jauh lebih singkat pada model dengan rating “extra high”.
  • Jawaban lambat tidak’ selalu karena modelnya. Setiap permintaan cloud lebih dulu menempuh perjalanan pulang-pergi lewat Wi-Fi, router, dan internet yang lebih luas. Jika respons terasa lambat, periksa koneksinya sebelum menyalahkan model: aplikasi saya sendiri, PingAtlas, mengukur waktu pulang-pergi dari iPhone, iPad, atau Mac kamu ke kota-kota dan ke layanan seperti GitHub, dan saya menjelaskan sisa jalurnya di apa yang terjadi di dalam router kamu.

Bagian 4 — Cara Menggunakan OpenCode: Pasang dan Hubungkan Modelmu, Langkah demi Langkah

Ini susunan yang akan saya’ berikan ke teman. Butuh sekitar dua puluh menit, sebagian besar untuk unduhan.

Langkah 0 — Yang kamu butuhkan lebih dulu

  • Mac dengan Apple silicon, jika kamu ingin membangun aplikasi iPhone secara native. Xcode 27.1 (dirilis 15 Oktober, dengan Swift 6.4 dan SDK iOS 27.1) membutuhkan macOS Tahoe 26.6 atau lebih baru. Jika kamu membangun dengan Expo, layanan cloud-nya bisa membangun aplikasi iOS dari Windows atau Linux, tetapi kamu’ tetap ingin iPhone untuk pengujian.
  • Xcode dari Mac App Store, dibuka sekali agar bisa memasang komponennya.
  • Git. Tombol undo-mu yang sebenarnya.
  • Node.js, hanya jika kamu’ akan memakai Expo: SDK 58 membutuhkan Node 22.13 atau lebih baru, 24.3 atau lebih baru, atau 26 ke atas (rilis bernomor ganjil seperti 23 dan 25 tidak’ didukung).
  • Paket coding dari Bagian 2, atau Ollama dari Bagian 3.

Langkah 1 — Pasang OpenCode

Di macOS atau Linux:

curl -fsSL https://opencode.ai/v2/install | bash

Lebih suka aplikasi? Unduh versi desktop untuk macOS, Windows, atau Linux dari opencode.ai/download. Aplikasi terminal dan desktop berbagi layanan latar belakang serta sesi yang sama. Di Windows, pakai aplikasi desktop atau zip mandiri; manajer paket Windows tidak’ didukung untuk v2.

Dua jebakan yang perlu diketahui:

  • Panduan lama memakai penginstal lama. opencode.ai/install (tanpa /v2/) masih muncul di banyak tutorial, termasuk beberapa dokumen resmi mitra. Pakai /v2/install alamat di atas.
  • pengguna mise perlu mise 2026.10.9 atau lebih baru, kalau tidak mereka’ akan mendapat OpenCode 1.

Langkah 2 — Hubungkan modelmu

Buka OpenCode di folder proyek dan jalankan /connect:

mkdir -p ~/code/my-first-app && cd ~/code/my-first-app
git init
opencode

Lalu, tergantung apa yang kamu bayar:

Kamu punya Di /connect, pilih Lalu
OpenCode Go OpenCode Go Tempel API key dari OpenCode Console
Ollama Tidak ada; model lokal muncul sendiri Atau jalankan ollama launch opencode
ChatGPT Plus atau Pro OpenAI → Masuk dengan ChatGPT Masuk di browser
GitHub Copilot GitHub Copilot Selesaikan login perangkat
Claude Pro atau Max Claude Agent (bukan “Anthropic”, yang dipakai untuk API key) Jalankan claude auth login di terminal dulu; baca catatan di Bagian 2
GLM Coding Plan Provider Z.AI Coding Plan Tempel key Coding Plan kamu, bukan API key standar
API key Nama provider Tempel key-nya

Langkah 3 — Pilih model kamu

Jalankan /models lalu pilih. Model OpenCode Go bernama opencode-go/<model-id>; model Ollama lokal muncul di bawah provider Ollama. Salin ID persisnya dari /models ke config kamu, karena nama dan tag bisa berubah.

Langkah 4 — Tambahkan konfigurasi proyek

Pengaturan bawaan sudah jalan, tapi proyek aplikasi pantas punya berkas config yang menjalankan tiga tugas: mengarahkan tiap agen ke model yang tepat, menjauhkan agen dari apa pun yang tidak bisa dibatalkan, dan menghubungkan server MCP kamu. Simpan ini sebagai opencode.jsonc di akar proyek, lalu ganti dengan ID model /models yang ditampilkan:

{
  "$schema": "https://opencode.ai/config.json",

  // The model new sessions start with
  "model": "opencode-go/glm-5.3-flash",

  "agents": {
    // Planning: your strongest model, because a bad plan costs the most later
    "plan":    { "model": "opencode-go/glm-5.3" },
    // Building: fast and capable
    "build":   { "model": "opencode-go/glm-5.3-flash" },
    // Read-only exploring: local, free, private
    "explore": { "model": "ollama/qwen3.8:27b" }
  },

  // Rules are checked in order and the LAST match wins
  "permissions": [
    { "action": "shell", "resource": "*",                     "effect": "ask"   },
    { "action": "shell", "resource": "git status *",          "effect": "allow" },
    { "action": "shell", "resource": "git diff *",            "effect": "allow" },
    { "action": "shell", "resource": "git log *",             "effect": "allow" },
    { "action": "shell", "resource": "xcodebuild -list *",    "effect": "allow" },
    { "action": "shell", "resource": "asc * list *",          "effect": "allow" },
    { "action": "shell", "resource": "asc review status *",   "effect": "allow" },
    { "action": "shell", "resource": "git push *",            "effect": "deny"  },
    { "action": "shell", "resource": "asc publish appstore *","effect": "deny"  },
    { "action": "shell", "resource": "* --submit *",          "effect": "deny"  },
    { "action": "shell", "resource": "* --confirm *",         "effect": "deny"  }
  ],

  "mcp": {
    "servers": {
      // Apple's bridge to the Xcode project you have open (Part 6)
      "xcode": { "type": "local", "command": ["xcrun", "mcpbridge"] },
      // Headless builds, simulator control and screenshots (Part 6)
      "XcodeBuildMCP": { "type": "local", "command": ["npx", "-y", "xcodebuildmcp@latest", "mcp"] },
      // Up-to-date library documentation
      "context7": { "type": "remote", "url": "https://mcp.context7.com/mcp" }
    }
  }
}

Apa yang kamu tempel, dengan kata sederhana:

  • Setiap perintah shell minta izin dulu, kecuali beberapa yang read-only. Read-only asc query (apa pun yang menampilkan daftar, plus status review) diizinkan, jadi agen bisa memeriksa build dan progres review tanpa mengganggu kamu.
  • Beberapa hal diblokir total: push kode, memublikasikan atau mengirim aplikasi untuk review, dan mengonfirmasi tindakan destruktif di App Store Connect. Itu kamu kerjakan sendiri, dengan sengaja. Mengunggah build ke TestFlight tetap diizinkan (setelah minta izin), karena itu tidak mengirim apa pun untuk review.
  • Pengaturan bawaan OpenCode sudah minta izin sebelum membaca .env berkas. Biarkan tetap aktif.
  • Izin hanyalah pagar pengaman, bukan sandbox. Model yang gigih bisa menemukan cara lain untuk melakukan sesuatu. Jauhkan kredensial produksi, kunci penandatanganan, dan kunci Admin App Store Connect kamu dari mesin tempat agen berjalan tanpa pengawasan.

Langkah 5 — Tulis AGENTS.md sebelum menulis kode

OpenCode membaca AGENTS.md di akar proyek kamu di awal setiap sesi, plus satu berkas pribadi di ~/.config/opencode/AGENTS.md kalau kamu membuatnya. Perintah /init bisa menyusun drafnya dengan memindai repositori kamu. Ini kebiasaan paling efektif dalam pengembangan berbantuan AI, dan aku menulis tentang seluruh sistemnya di panduan vibe coding. Untuk aplikasi iPhone, isinya harus memuat aturan produk sekaligus perintahnya:

# Catatan untuk agen coding

## Aplikasi ini apa
Satu kalimat. Kalau sebuah perubahan tidak melayaninya, perubahan itu tidak perlu ada.

## Yang tidak bisa ditawar
- Berjalan offline. Fitur jaringan menurun dengan mulus.
- Tanpa analitik, iklan, atau SDK pelacak. Tanya dulu sebelum menambah dependensi APA PUN.
- Tanpa rahasia di bundel aplikasi. Key yang berbayar disimpan di server.
- Tanpa fitur tersembunyi, dorman, atau khusus debug di build rilis
  (pedoman App Review 2.5.19). Menu debug dikompilasi keluar dari Release.
- Jangan pernah mengirim data pribadi ke layanan AI pihak ketiga tanpa
  layar persetujuan di dalam aplikasi (pedoman 5.1.2(i)).
- Aksesibilitas: Dynamic Type, label VoiceOver, target sentuh 44 x 44 pt,
  mode terang dan gelap di setiap layar.
- Setiap string yang dilihat pengguna dilokalkan, termasuk widget,
  notifikasi, dan prompt izin.

## Perintah
- Build dan jalankan: pakai alat XcodeBuildMCP (build_run_sim), scheme "MyApp"
- Tes: test_sim
- Jangan pernah menjalankan asc publish atau apa pun dengan --submit.

## Definisi selesai
- Build tanpa peringatan, tes lulus
- Diperiksa dengan screenshot + snapshot_ui di simulator
- Berjalan dalam mode pesawat, mode gelap, dan pada ukuran teks terbesar

Langkah 6 — Sesi nyata pertamamu

  1. Mulai dalam mode plan. Beralih ke plan agen (tidak bisa mengedit berkas proyek kamu) dan minta ia berdebat dengan brief kamu: “Baca AGENTS.md dan BRIEF.md. Daftar alur pengguna, kasus tepi yang belum aku pikirkan, dan layar yang aku lewatkan. Lalu beri tahu aku apa yang harus dipotong.”
  2. Simpan rencana itu sebagai peta jalan. Minta ia menuliskannya ROADMAP.md sebagai daftar periksa potongan kecil yang utuh dari ujung ke ujung.
  3. Bangun satu potongan setiap kali bersama build agen. Satu layar, satu fitur, bekerja dari ujung ke ujung.
  4. Tinjau diff-nya, jalankan, lalu lakukan commit. Setiap potongan berakhir dengan commit. Kalau ada langkah yang salah, /undo membatalkan langkah terakhir agen dari snapshot OpenCode; Git adalah jaring pengaman yang lebih besar.
  5. Mulai sesi baru untuk potongan berikutnya. Sesi bersih yang membaca ulang AGENTS.md dan ROADMAP.md biasanya lebih pintar daripada sesi panjang yang penuh asumsi usang.

Bagian 5 — Agen, Perintah, Izin, dan Mode Goal: Membuat OpenCode Jadi Milikmu

Setelah dasar-dasarnya berjalan, empat fitur mengubah OpenCode dari obrolan dengan terminal menjadi bengkel yang pas untuk proyekmu.

Agen bawaan

Agen Jenis Fungsinya
build Utama Bawaan. Mengedit berkas, menjalankan perintah, mengerjakan pekerjaannya
plan Utama Menjelajah dan merencanakan tanpa mengedit berkas proyekmu (ia boleh menulis berkas rencananya sendiri)
general Subagen Riset dan tugas bertahap; tidak bisa memulai subagen lain
explore Subagen Mencari dan membaca kode atau halaman web; tidak bisa mengedit apa pun

Agen utama adalah yang kamu ajak bicara. Subagen diluncurkan oleh agen utama untuk tugas yang terfokus, supaya konteks sesi utama tetap bersih.

Tulis subagenmu sendiri: pengritik App Review

Agen kustom adalah berkas Markdown di .opencode/agents/ (atau ~/.config/opencode/agents/ untuk setiap proyek). Front matter mengonfigurasi agen dan bagian isinya menjadi instruksinya. Yang ini meninjau aplikasimu seperti App Review meninjaunya, dan tidak bisa mengubah apa pun saat melakukannya:

---
description: Meninjau aplikasi dan metadatanya terhadap Pedoman App Review Apple sebelum pengiriman
mode: subagent
model: opencode-go/glm-5.3
permissions:
  - action: edit
    resource: "*"
    effect: deny
  - action: shell
    resource: "*"
    effect: deny
---

Kamu adalah spesialis App Review yang skeptis. Tinjau kode saat ini dan
berkas di metadata/ lalu daftarkan masalahnya, yang paling serius lebih dulu, dengan berkas dan baris:

- Crash, teks placeholder, tautan mati, akun demo yang hilang (2.1)
- Apa pun yang terlihat seperti salinan kategori aplikasi yang sudah padat (4.3(b))
- Fitur tersembunyi, dorman, atau tak terdokumentasi, menu debug, feature flag (2.5.19)
- Data yang keluar dari perangkat dan tidak ada di kebijakan privasi atau label privasi
- Data pribadi yang dikirim ke layanan AI mana pun tanpa persetujuan eksplisit (5.1.2(i))
- Pembuatan akun tanpa penghapusan akun di dalam aplikasi (5.1.1(v))
- Tangkapan layar atau deskripsi yang menjanjikan fitur yang tidak ada di build

Jangan perbaiki apa pun. Laporkan saja.

Simpan sebagai .opencode/agents/appstore-reviewer.md, lalu tanyakan: “Gunakan subagen appstore-reviewer untuk meninjau semua perubahan sejak tag rilis terakhir.”

Perintah kustom untuk pekerjaan yang berulang

Perintah adalah templat prompt yang kamu jalankan dengan slash. Taruh di .opencode/commands/; $ARGUMENTS diganti dengan apa pun yang kamu ketik setelah perintah, dan ` !command ` menyisipkan keluaran perintah shell sebelum prompt dikirim. Yang ini menyusun catatan rilis App Store:

---
description: Menyusun catatan "What's New" App Store dari commit sejak tag terakhir
agent: build
---

Berikut commit sejak rilis terakhir:

!`git log $(git describe --tags --abbrev=0)..HEAD --oneline`

Tulis catatan "What's New" untuk versi $ARGUMENTS dalam bahasa Inggris yang polos dan ramah,
di bawah 400 karakter, hanya perubahan yang terlihat pengguna. Simpan ke
metadata/en-US/release_notes.txt dan tunjukkan teksnya kepadaku.

Simpan sebagai .opencode/commands/whats-new.md lalu jalankan dengan /whats-new 1.2.0. Satu peringatan dari dokumentasi OpenCode layak diulang: blok-blok ! itu berjalan di luar sistem izin agen, jadi hanya taruh perintah yang kamu percaya di dalamnya.

Buku resep izin untuk proyek aplikasi

Konfigurasi di Bagian 4 sudah jadi awal yang baik. Beberapa aturan lain yang perlu diketahui:

  • Aturan per agen diletakkan di bawah agents.<id>.permissions dan ditambahkan setelah aturan global, jadi kamu bisa, misalnya, membiarkan hanya build agen tertentu menjalankan xcodebuild.
  • Alat MCP juga termasuk aksi, yang dinamai <server>_<tool>. Aturan seperti { "action": "XcodeBuildMCP_*", "resource": "*", "effect": "ask" } membuat setiap panggilan XcodeBuildMCP bertanya lebih dulu.
  • Skill bisa dibatasi bersama skill action: allow menampilkan dan memuat skill dengan bebas, tanya menampilkannya tetapi bertanya sebelum memuat, deny menyembunyikannya sepenuhnya.
  • Saat beberapa sumber daya diperiksa sekaligus, mana pun deny menang, lalu mana pun tanya.

Mode Goal, worktree, dan jadwal

Tiga fitur yang lebih baru mengubah cara tugas panjang terasa:

  • Mode tujuan (2.2.1): /goal Buat setiap layar lolos audit VoiceOver dan perbaiki yang gagal menjaga sesi tetap bekerja menuju tujuan sampai ditinjau, dengan pause, resume dan clear. Cocok untuk tugas besar dan membosankan: pemeriksaan aksesibilitas, lokalisasi, cakupan tes.
  • Worktree: mulai sesi di worktree Git terpisah dari layar sesi baru (atau ⌘⌥O di aplikasi desktop), sehingga eksperimen tidak bisa menyentuh branch utama kamu. Jalankan skrip memakai opencode run --worktree=<name> sejak 2.2.6. Buang worktree itu kalau eksperimennya gagal.
  • Prompt terjadwal (opt-in, eksperimental): /schedule menjalankan prompt sesuai jadwal saat opencode serve sedang berjalan, misalnya “jalankan tes dan rangkum kegagalan” setiap malam.

Bagian 6 — Server MCP: Memberi Tangan kepada Agen

Sendirian, agen coding bisa membaca berkas dan menjalankan perintah shell. MCP, Model Context Protocol, adalah cara standar untuk memberinya lebih banyak hal: proyek Xcode yang sedang berjalan, simulator yang bisa ia ketuk dan tangkap layarnya, laporan crash kamu, dokumentasi terkini, layanan build kamu. Setiap server MCP menyediakan sekumpulan alat, dan agen memutuskan kapan memanggilnya.

Ada biayanya, dan dokumentasi OpenCode menyatakannya dengan gamblang: “Alat MCP memakan konteks model, jadi tambahkan hanya server yang kamu butuhkan.” Setiap server yang terhubung menambahkan deskripsi alat ke setiap permintaan. Sepuluh server yang jarang kamu pakai membuat setiap jawaban lebih lambat dan kurang fokus.

Pilihan utama pengembang aplikasi

Server Apa yang diberikannya kepada agen Tambahkan ke OpenCode Perlu diketahui
Xcode (Apple) Proyek Xcode kamu yang terbuka: build, tes, dan lainnya, lewat Xcode itu sendiri opencode mcp add xcode -- xcrun mcpbridge Di Xcode → Settings → Intelligence, atur Izinkan Agen Eksternal Menggunakan Alat Xcode untuk Selalu atau Saat Xcode terbuka. Buka proyeknya di Xcode sebelum kamu memberi prompt; Xcode menunjukkan saat agen terhubung
XcodeBuildMCP Build headless, menjalankan simulator dan perangkat, tangkapan layar, ketuk dan geser, snapshot aksesibilitas, tes, debugging LLDB opencode mcp add XcodeBuildMCP -- npx -y xcodebuildmcp@latest mcp Sumber terbuka (MIT), dikelola oleh Sentry sejak mengakuisisi proyek ini pada Februari. Butuh macOS 14.5+, Xcode 16+ dan Node 18+. Hanya alat simulator yang aktif secara bawaan
Expo Build EAS, alur kerja dan pengiriman, dokumen Expo, simulator cloud, data crash dan umpan balik dari TestFlight dan toko aplikasi opencode mcp add expo --url https://mcp.expo.dev/mcp, lalu opencode mcp auth expo Butuh akun Expo dan SDK terbaru. Sebagian alat butuh paket Expo berbayar. Alat simulator lokal butuh npx expo install expo-mcp --dev dan SDK 54+
Context7 Dokumentasi terkini yang spesifik versi untuk library dan framework opencode mcp add context7 --url https://mcp.context7.com/mcp Mencegah model mengarang API yang berubah bulan lalu
Sentry Crash dan error nyata milikmu opencode mcp add sentry --url https://mcp.sentry.dev/mcp, lalu opencode mcp auth sentry Masuk lewat OAuth
Playwright Peramban sungguhan yang bisa dikendalikan agen opencode mcp add playwright -- npx @playwright/mcp@latest Untuk versi web aplikasimu dan landing page-mu
Firebase Proyek Firebase, aturan keamanan dan konfigurasimu opencode mcp add firebase -- npx -y firebase-tools@latest mcp Bertanya sebelum mengubah apa pun di proyekmu

Periksa apa yang terhubung dengan opencode mcp list, dan nyalakan atau matikan server untuk satu sesi dengan /mcps.

Jika kamu mendesain di Figma, server MCP-nya juga bisa memberi frame dan variabel ke agen. Saya bahas jebakan khusus OpenCode (server remote versus server desktop) di panduan saya untuk membangun aplikasi dari nol dengan AI.

Jembatan MCP Xcode vs XcodeBuildMCP

Keduanya tumpang tindih, dan bekerja baik bersama:

  • Server Xcode sendiri (xcrun mcpbridge) bekerja lewat aplikasi Xcode yang sedang kamu buka. Itu punya Apple, ia memahami proyekmu seperti Xcode, dan butuh Xcode yang berjalan.
  • XcodeBuildMCP membungkus alat command-line Apple (xcodebuild, simctl, devicectl), jadi ia berjalan headless. Kekuatan sesungguhnya ada di loop verifikasi: build_run_sim untuk build dan menjalankan, screenshot untuk melihat, snapshot_ui untuk membaca pohon aksesibilitas, tap dan type_text untuk memakai aplikasi, dan test_sim untuk menjalankan tes. Jalankan xcodebuildmcp init sekali di proyekmu untuk memasang dua skill pendampingnya.

Di berkas konfigurasi

Server yang sama bisa berada di opencode.jsonc (Bagian 4 punya contoh lengkapnya), yang lebih baik untuk tim karena pengaturannya ikut berpindah bersama repositori:

"mcp": {
  "servers": {
    "expo":   { "type": "remote", "url": "https://mcp.expo.dev/mcp" },
    "sentry": { "type": "remote", "url": "https://mcp.sentry.dev/mcp" },
    "context7": {
      "type": "remote",
      "url": "https://mcp.context7.com/mcp",
      "headers": { "CONTEXT7_API_KEY": "{env:CONTEXT7_API_KEY}" }
    },
    "playwright": { "type": "local", "command": ["npx", "@playwright/mcp@latest"], "disabled": true }
  }
}

Dua detail dari dokumen MCP OpenCode: rahasia dimasukkan sebagai {env:NAME} (bentuk $NAME biasa tidak diperluas), dan "disabled": true membuat server tetap terkonfigurasi tanpa menyambungkannya.

Server MCP untuk pengembangan aplikasi iOS dengan OpenCode: jembatan MCP milik Xcode, XcodeBuildMCP, Expo, Context7, Sentry, Playwright, dan Firebase di sekitar OpenCode, dengan alat command-line gh, asc, dan eas sebagai alternatif yang lebih ringan
Tujuh server yang memang layak dipakai dalam proyek aplikasi, dan tiga alat baris perintah yang sering menyelesaikan pekerjaan dengan konteks lebih sedikit.

Kapan alat baris perintah lebih unggul daripada server MCP

Aturan saya: kalau ada alat baris perintah yang bagus, coba dulu lewat skill sebelum menambah server. Agen sudah tahu cara menjalankan perintah, CLI tidak memakan konteks sampai dipakai, dan output-nya bisa disaring sebelum sampai ke model. Untuk pekerjaan aplikasi, tiga CLI ini sudah mencakup banyak hal:

  • gh untuk GitHub: issue, pull request, rilis.
  • asc untuk App Store Connect: build, TestFlight, metadata, tangkapan layar, status peninjauan (Bagian 9).
  • eas untuk layanan build dan submit Expo.

Keamanan MCP dalam empat aturan

  1. Pasang server dari pembuatnya atau dari proyek yang bisa kamu baca. Server adalah kode yang berjalan di mesinmu dengan izinmu.
  2. Anggap output alat sebagai tidak tepercaya. Halaman web, komentar issue, atau laporan crash bisa berisi instruksi yang ditujukan ke agenmu. Biarkan tindakan berisiko pada tanya.
  3. Batasi alat berdasarkan namanya. Setiap alat MCP adalah aksi izin bernama <server>_<tool>, jadi kamu bisa mengizinkan yang hanya-baca dan membuat sisanya bertanya.
  4. Hapus yang tidak kamu pakai. Itu memakan konteks, dan satu hal lebih sedikit yang bisa salah.

Bagian 7 — Skill: Tulis Playbook-mu Sekali Saja

AGENTS.md memberi tahu agen proyekmu itu apa. Skill mengajarkannya cara kamu mengerjakan tugas tertentu: merilis build, menulis migrasi, menyiapkan tangkapan layar, mengaudit privasi. Skill adalah folder berisi SKILL.md berkas dengan deskripsi singkat di bagian atas dan instruksi di bawahnya, plus skrip atau berkas referensi yang dibutuhkannya. Formatnya adalah standar terbuka yang dipakai bersama oleh OpenCode, Claude Code, Codex, dan lainnya, karena itu skill yang ditulis untuk satu agen biasanya juga jalan di agen lain.

Cara OpenCode memakai skill

  1. Di setiap langkah, OpenCode menunjukkan ke model daftar skill yang boleh dipakai: hanya ID, nama, dan deskripsi tiap skill. Instruksinya sendiri tidak dimuat, jadi seratus skill hampir tidak memakan biaya.
  2. Saat sebuah tugas cocok, model memanggil skill alat dengan ID skill itu, dan OpenCode memeriksa izinmu.
  3. OpenCode menambahkan instruksinya ke percakapan, bersama path folder skill dan daftar maksimal sepuluh berkas pendukungnya.
  4. Berkas pendukung hanya dimuat saat instruksinya meminta. Daftar periksa panjang atau skrip tetap di disk sampai dibutuhkan.

Kamu juga bisa memuatnya sendiri dengan menyebutnya di prompt: @app-store-release.

Di mana OpenCode mencari

Cakupan Folder
Proyekmu .opencode/skills/
Proyekmu (dipakai bersama agen lain) .claude/skills/ dan .agents/skills/
Semua proyek di mesinmu ~/.config/opencode/skills/
Semua proyek (bersama) ~/.claude/skills/ dan ~/.agents/skills/
Di tempat lain Path atau katalog HTTP yang tercantum dalam skill array di opencode.jsonc

ID sebuah skill berasal dari nama foldernya, bukan memberi nama di front matter-nya, dan peka huruf besar-kecil: .opencode/skills/app-store-release/SKILL.md memiliki ID app-store-release. Jika dua sumber mendefinisikan ID yang sama, yang muncul lebih akhir dalam urutan ini menang: bawaan, .claude/skills, .agents/skills, folder global kamu, folder proyek kamu .opencode/skills, lalu entri konfigurasi eksplisit. Skill tanpa deskripsi tidak diiklankan ke model sama sekali.

Tulis skill pertamamu: daftar periksa rilis App Store

Buat .opencode/skills/app-store-release/SKILL.md:

---
name: App Store release
description: Prepare an iOS release. Bumps the version and build number, runs the release checklist, archives, uploads to TestFlight with asc and drafts What's New notes. Use when asked to "ship", "release" or "send to TestFlight".
---

# App Store release

1. Check `git status`. If the working tree isn't clean, stop and say so.
2. Bump the marketing version and build number (ask which version if it isn't given).
3. Work through references/release-checklist.md. Every item must pass.
4. Archive and export the IPA with scripts/archive.sh.
5. Upload: `asc builds upload --app "$ASC_APP_ID" --ipa build/MyApp.ipa`
6. Draft What's New notes from the commits since the last tag and save them
   to metadata/en-US/release_notes.txt.
7. NEVER submit for review. Report that the build is uploaded, then stop.

Taruh daftar periksa di references/release-checklist.md dan skrip arsip di scripts/archive.sh di sebelahnya. Saat berikutnya kamu bilang “ship 1.2.0 to TestFlight”, agen menemukan skill itu dari deskripsinya dan mengikuti langkahmu alih-alih berimprovisasi.

Cara kerja skill agen OpenCode: folder skill berisi SKILL.md, referensi, dan skrip; OpenCode mencantumkan deskripsi skill, model memuat salah satunya lewat alat skill, dan berkas pendukung baru dibaca saat diperlukan
Satu skill memakan satu baris konteks sampai dibutuhkan. Itu sebabnya kamu bisa memasang puluhan.

Skill yang layak dipasang untuk pekerjaan aplikasi

Set skill Isinya Pasang
Skill Expo (resmi) 23 skill: 16 untuk Expo SDK (Router, UI native, @expo/ui, sistem desain, upgrade, modul native, dan lainnya) dan 7 untuk layanan Expo, termasuk eas-app-stores untuk membangun dan mengirim ke TestFlight, App Store, dan Google Play npx skills add expo/skills
Skill App Store Connect CLI Lebih dari dua puluh asc skill: alur rilis, orkestrasi TestFlight, sinkronisasi metadata dengan pemeriksaan batas karakter, terjemahan listing, pipeline tangkapan layar, penyiapan signing, kesehatan pengiriman, triase crash, audit ASO asc install-skills, atau npx skills add rorkai/app-store-connect-cli-skills
Skill XcodeBuildMCP Dua skill yang mengajari agen alat dan CLI XcodeBuildMCP xcodebuildmcp init
skills.sh Direktori terbuka skill komunitas milik Vercel; OpenCode tercantum di antara agen yang didukung npx skills add <owner/repo>

Jika OpenCode tidak menampilkan skill yang sudah kamu pasang, cocokkan lokasi yang dipakai installer dengan folder di atas, atau salin folder skill itu ke .opencode/skills/.

Keamanan skill

Skill adalah instruksi plus, sering kali, skrip yang akan dijalankan agen. Baca skill pihak ketiga sebelum memasangnya, sama seperti kamu membaca skrip shell dari internet. Utamakan skill dari orang yang membuat alatnya (Expo untuk Expo, asc maintainer untuk asc), biarkan skill yang tidak dikenal dalam mode tanya dengan aturan izin, dan ingat bahwa deny menyembunyikan skill dari model sepenuhnya.


Bagian 8 — Membangun Aplikasi: Dari Ide ke Build yang Kamu Percaya

Alatnya sudah siap. Sekarang bagian yang menentukan apakah ada orang yang mengunduh hasilnya.

Pilih ide yang akan diloloskan App Review

AI membuat pembuatan aplikasi jadi murah, dan Apple menyadarinya. Pada 9 Juni, Apple menulis ulang pedoman 4.3(b), aturan spam-nya: aplikasi yang pada dasarnya sama dengan yang sudah berlimpah di toko kini ditolak, dan Apple menyebut aplikasi kencan, senter, wallpaper, timer, dan ramalan sebagai kategori yang menuntut pengalaman yang benar-benar berbeda atau lebih baik. Aplikasi baru yang asal jadi bisa dihapus, aplikasi lama di kategori itu bisa ditarik jika tidak diperbaiki atau tidak menarik pengguna, dan pengiriman berulang semacam ini bisa membuat keanggotaan developer-mu dicabut.

Jadi sebelum prompt pertama, satu uji: bisakah kamu sebutkan dalam satu kalimat apa yang aplikasimu lakukan yang tidak dilakukan hasil teratas untuk kata kunci pencarian utamanya? Kalau kamu tidak bisa, agen akan membangunnya dengan indah dan App Review akan mengembalikannya.

Kecil dan spesifik mengalahkan besar dan generik. Dua aplikasi saya sendiri sengaja sempit cakupannya:

  • Stash mengingat di mana kamu meletakkan barang: foto tempatnya, pilih ruangan, simpan, lalu cari berdasarkan nama, ruangan, atau catatan suara yang sudah ditranskripsikan.
  • PingAtlas mengukur waktu pulang-pergi jaringan dari iPhone, iPad, atau Mac kamu sendiri ke 202 kota, 278 tujuan publik, 109 game dan 32 layanan online, tanpa akun atau layanan pengukuran jarak jauh.

Satu tugas masing-masing. Itulah yang membuatnya bisa dibangun oleh satu orang dengan agen, dan bisa dijelaskan dalam satu kalimat di halaman App Store.

Pilih stack kamu

SwiftUI + Xcode 27.1 Expo SDK 58 (React Native 0.88)
Berjalan di iPhone, iPad, Mac, Apple Watch, dan Vision Pro iPhone, iPad, Android dan web dari satu basis kode
Bahasa Swift 6.4 TypeScript
Butuh Mac? Ya Bukan untuk membangun atau mengirim (cloud Expo yang melakukannya); ya untuk alat simulator iOS lokal
Perkakas agen jembatan MCP Xcode, XcodeBuildMCP, OpenCode di dalam Xcode lewat ACP Server MCP Expo, 23 skill resmi, sebuah @expo/agent-cli eksperimental serta expo command:ps keluaran yang dapat dibaca mesin untuk agen
Baru musim gugur ini SDK iOS 27.1, simulator iPhone Duo (dengan beberapa batasan pada ekstensi) Dibangun dengan SDK iOS 27; aplikasi beralih ke siklus hidup scene UIKit, siap untuk iPhone Duo; dukungan App Intents dalam tahap alfa; macOS tidak didukung di SDK 58
Terbaik untuk Aplikasi khusus Apple yang menginginkan fitur platform terbaru Satu orang yang merilis ke iPhone dan Android, dengan versi web

Kalau kamu suka merilis versi web lebih dulu (saya suka), keluaran web Expo memungkinkan kamu menaruh demo yang berfungsi di depan orang sebelum versi App Store ada. Situs Stash’s melakukan hal serupa dengan demo peramban dibangun di sekitar rumah contoh: orang bisa mencoba idenya sebelum memasang apa pun.

Siklus build yang berhasil

Agen menulis dengan cepat. Yang membuat hasilnya bisa dipercaya adalah siklus di sekelilingnya:

  1. Ringkasan. Satu halaman BRIEF.md: janji dalam satu kalimat, tiga cerita pengguna, daftar layar.
  2. Rencana. The plan agen mengubahnya menjadi ROADMAP.md: irisan vertikal kecil, masing-masing satu fitur yang berjalan dari ujung ke ujung.
  3. Bangun satu irisan. The build agen mengimplementasikannya dan menulis tesnya.
  4. Verifikasi seperti pengguna. Dengan XcodeBuildMCP agen bisa membangun dan menjalankan aplikasi di simulator, mengambil tangkapan layar, membaca pohon aksesibilitas dengan snapshot_ui, menelusuri alurnya dan menjalankan tes. Dengan Expo, alat MCP lokal melakukan hal yang sama untuk simulator. Minta agen membandingkan apa yang dilihatnya dengan apa yang kamu minta.
  5. Tinjau seperti App Review. Jalankan appstore-reviewer subagen dari Bagian 5.
  6. Baca diff-nya sendiri. Setiap baris yang akan dirilis.
  7. Commit, centang kotaknya, mulai sesi baru.

Untuk proses mekanis besar (menambahkan label aksesibilitas di mana-mana, melokalkan setiap string, menaikkan cakupan tes) gunakan mode goal: /goal Lokalkan setiap string yang dilihat pengguna ke bahasa Jerman, termasuk widget, notifikasi dan permintaan izin.

Tiga templat prompt yang layak diadaptasi:

Satu bagian: Implementasikan irisan 4 dari ROADMAP.md (pencarian). Baca AGENTS.md dulu. Tulis tes unit dulu, baru kodenya. Build dan jalankan di simulator, ambil tangkapan layar layar hasil dan periksa terhadap ringkasan. Tunjukkan diff-nya dan daftar setiap asumsi yang kamu buat.

Bug: Di iPhone dengan ukuran Dynamic Type terbesar, keyboard menutupi tombol Save di layar Add. Reproduksi di simulator, ambil tangkapan layar, jelaskan penyebabnya dalam dua kalimat, perbaiki, dan periksa setiap formulir lain untuk masalah yang sama.

Tinjauan sebelum commit: Tinjau semua perubahan sejak commit terakhir sebagai reviewer iOS senior yang skeptis: crash, kehilangan data, kebocoran privasi, label aksesibilitas yang hilang, string dan warna yang di-hard-code, apa pun yang merusak penggunaan offline. Daftar bernomor, yang paling serius duluan. Jangan perbaiki apa pun dulu.

Pelajaran dari dua aplikasi kecil

Stash dan lokalisasi. Stash 1.1.0 (28 Oktober) menambahkan sepuluh bahasa ke bahasa Inggris: Spanyol, Prancis, Jerman, Italia, Portugis Brasil, Belanda, Polandia, Jepang, Korea dan Mandarin Sederhana. Aplikasi mengambil salah satunya dari perangkat dan membiarkanmu menggantinya di Pengaturan → Bahasa, dan catatan rilis menyebutkan bahwa widget, pengingat dan prompt izin sistem juga diterjemahkan. Detail terakhir itulah pelajarannya: lokalisasi adalah pekerjaan agen yang ideal, tapi string yang dilupakan agen berada di luar layar utama, di widget, notifikasi, string tujuan izin dan pemformatan tanggal. Sebutkan di AGENTS.md dan semuanya akan dikerjakan.

PingAtlas dan klaim yang jujur. Deskripsi App Store PingAtlas membuat janji yang spesifik: balasan yang hilang tampil sebagai “Tidak ada balasan”, bukan sebagai 0 ms; tidak ada GPS dan tidak ada izin lokasi; tidak ada iklan, tidak ada analitik dan tidak ada akun; hasilnya tetap di perangkat kecuali kamu mengekspornya; dan pemeriksaan situs web hanya memakai permintaan HEAD. Janji seperti ini semestinya ada di AGENTS.md sebagai hal yang tidak bisa ditawar, karena itulah juga yang tertulis di label privasimu. Label PingAtlas berbunyi “Data Tidak Dikumpulkan”, dan itu hanya benar selama kodenya setuju. Subagen reviewer ada di sana untuk menyadari hari ketika kodenya tidak lagi setuju.

Cakupan yang terbatas adalah fitur. PingAtlas berukuran 1,9 MB saat diunduh. Stash, dengan foto, catatan suara, sinkronisasi dan widget, sekitar 65 MB. Lebih banyak fitur berarti lebih banyak yang harus diuji, lebih banyak yang harus dijelaskan di kebijakan privasi dan lebih banyak yang dipertanyakan App Review. Mulailah dari versi terkecil yang tetap menepati janji.

Dua aplikasi yang dibuat satu pengembang dengan agen coding AI: Stash, yang mengingat di mana kamu menaruh barang, dan PingAtlas, yang mengukur latensi jaringan dari perangkatmu sendiri, beserta fakta App Store keduanya
Dua aplikasi kecil, masing-masing satu tugas. Semakin sempit janjinya, semakin mudah bagi agen untuk membangunnya dan bagi App Review untuk menyetujuinya.

Aksesibilitas sejak hari pertama

Label Nutrisi Aksesibilitas milik Apple memungkinkanmu mendeklarasikan dukungan untuk sembilan fitur di halaman App Store-mu: VoiceOver, Kontrol Suara, Teks Lebih Besar, Antarmuka Gelap, Dibedakan Tanpa Warna Saja, Kontras Memadai, Gerakan Dikurangi, Takarir dan Deskripsi Audio. Saat ini sifatnya sukarela, tapi Apple bilang lama-lama kamu harus menyediakannya untuk mengirim aplikasi dan pembaruan baru. Kamu hanya boleh mendeklarasikan sebuah fitur kalau orang bisa menyelesaikan semua tugas umum aplikasimu dengannya, termasuk pembukaan pertama, masuk, pembelian dan pengaturan.

Tak satu pun dari listing milikku sendiri yang mendeklarasikannya, dan justru celah seperti itulah yang ingin ditangkap panduan ini. Agen bisa mengerjakan sebagian besar auditnya: XcodeBuildMCP snapshot_ui membaca pohon aksesibilitas, jadi /goal Buat setiap layar sepenuhnya bisa dipakai dengan VoiceOver dan pada ukuran teks terbesar, lalu daftar apa pun yang tidak bisa kamu perbaiki adalah pekerjaan satu sore yang realistis.


Bagian 9 — Menerbitkan ke App Store: Biarkan OpenCode Urus Administrasinya, Lalu Tekan Kirim Sendiri

Membangun adalah bagian yang menyenangkan. Menerbitkan adalah proyek tersendiri, dan di situ pengembang pemula kehilangan waktu seminggu. Kabar baiknya untuk 2026: hampir semuanya sekarang bisa diskrip, artinya agen bisa melakukan pengetikannya sementara kamu mengambil keputusan.

Apa yang berubah di Apple pada 2026

Kapan Apa yang berubah Apa yang harus dilakukan
31 Jan 2026 Pertanyaan rating usia baru menjadi wajib untuk pembaruan Jawab semuanya untuk setiap aplikasi sebelum kamu mengirim
28 Apr 2026 Unggahan harus dibangun dengan Xcode 26 atau yang lebih baru dan SDK 26 Pakai Xcode 26 atau 27
9 Jun 2026 Pedoman 4.3(b) ditulis ulang: aplikasi tiruan dan asal-asalan ditolak atau dihapus Bedakan (Bagian 8)
9 Sep 2026 Unggahan harus menyasar iOS 13 atau yang lebih baru Tidak ada, untuk aplikasi baru mana pun
15 Okt 2026 Xcode 27.1 (Swift 6.4, SDK iOS 27.1; butuh macOS Tahoe 26.6+) dan Expo SDK 58 Perbarui toolchain-mu
16 Okt 2026 Panduan baru 2.5.19 melarang fitur tersembunyi, tidak aktif atau tak terdokumentasi; aturan lebih ketat untuk aplikasi yang menyembunyikan tujuannya saat peninjauan Pastikan menu debug dan feature flag tidak ikut dikompilasi ke build rilis
Berlaku Pedoman 5.1.2(i): beri tahu orang dan dapatkan izin mereka sebelum membagikan data pribadi ke AI pihak ketiga (ditambahkan November 2025) Tambahkan layar persetujuan kalau aplikasimu memanggil layanan AI
Sekarang Tangkapan layar: satu set untuk iPhone dengan Dynamic Island (layar sedang) wajib, ditambah iPad 13 inci kalau aplikasimu berjalan di iPad Rencanakan ukuran tangkapan layar kamu (Bagian 10)
April 2027 iPhone Duo tangkapan layar yang diwajibkan untuk aplikasi yang dibangun dengan SDK iOS 27.1 atau lebih baru Mulai rancang untuk layar kedua sekarang
Sukarela, untuk sekarang milik Apple Nyatakan apa yang benar-benar kamu dukung

Pasal baru 2.5.19 inilah yang menggigit aplikasi buatan AI. Agen suka tambahan yang terasa membantu: layar debug tersembunyi, feature flag yang dibiarkan mati, menu uji di balik tekan lama. Rumusan baru Apple blak-blakan: “Jangan sertakan fitur tersembunyi, tidak aktif, atau tidak terdokumentasi dalam aplikasi kamu.” Menurut laporan 9to5Mac tentang perubahan ini, mencoba menyembunyikan fitur seperti itu, misalnya lewat obfuscation kode, bisa berujung pada penghapusan aplikasi dan pemutusan akun developer kamu. Tulis aturan ini di AGENTS.md dan minta subagen reviewer mencarinya sebelum setiap pengiriman.

Aturan App Store pada 2026: garis waktu dari tenggat rating usia Januari dan persyaratan Xcode 26 April sampai pedoman 4.3(b) pada Juni, Xcode 27.1 dan pedoman 2.5.19 pada Oktober, serta tangkapan layar iPhone Duo mulai April 2027
Tanggal-tanggal yang mengubah pengiriman App Store pada 2026, dalam skala waktu sebenarnya. Dua perubahan pedoman ini paling penting bagi aplikasi yang dibangun dengan AI.

Alur kerjanya, langkah demi langkah

  1. Daftar ke Apple Developer Program. Biayanya $99 per tahun (€99 di Jerman). Perusahaan mendaftar sebagai organisasi, yang memerlukan nomor D-U-N-S. Mulai lebih awal; verifikasi bisa memakan waktu berhari-hari. Daftar di sini.
  2. Nyatakan status pedagang EU kamu. Di bawah Digital Services Act milik EU, setiap developer wajib menyatakan apakah mereka pedagang. Jika kamu menerbitkan sebagai bisnis, alamat, nomor telepon, dan email kamu muncul di halaman produk di setiap negara EU. Apple mencabut ribuan aplikasi dari storefront EU pada Februari 2025 karena tidak mencantumkannya.
  3. Buat kunci API App Store Connect. Di App Store Connect, buka Pengguna dan Akses → Integrasi → App Store Connect API lalu buat kunci tim. Hanya Account Holder yang bisa meminta akses API pada awalnya. Beri kunci itu peran paling lemah yang cukup untuk pekerjaannya (Apple’s ikhtisar peran menunjukkan apa yang bisa dilakukan masing-masing), unduh .p8 berkasnya sekali saja, lalu simpan di tempat yang aman dan di luar repositori kamu.
  4. Pasang App Store Connect CLI dan masuk. asc adalah alat command-line sumber terbuka (MIT) untuk App Store Connect API, dibuat untuk skrip dan agen: ia mencetak tabel di terminal dan JSON saat program lain membaca keluarannya.
brew install asc        # or: curl -fsSL https://asccli.sh/install | bash

asc auth login --name "MyApp" --key-id "ABC123" --issuer-id "DEF456" \
  --private-key ~/keys/AuthKey_ABC123.p8 --network
asc auth status --validate

Lalu pasang skill-nya (asc install-skills) agar OpenCode tahu cara memakainya.

  1. Buat catatan aplikasi. Di App Store Connect, pilih Aplikasi → + → Aplikasi Baru, dan pilih bundle ID kamu dengan hati-hati, karena nilainya tidak pernah berubah (milik Stash adalah network.grahammiranda.stash, milik PingAtlas network.grahammiranda.pingatlas). Skill asc asc mencakup satu yang melakukan ini lewat otomasi peramban, tetapi ini pekerjaan dua menit yang layak dikerjakan manual sekali.
  2. Beresi soal signing. Untuk aplikasi native, signing otomatis Xcode menangani sertifikat dan profil. Untuk Expo, EAS mengelola kredensial untuk kamu. Skill asc-signing-setup mencakup bundle ID, kapabilitas, sertifikat, dan profil kalau kamu lebih suka menuliskannya sebagai skrip.
  3. Build dan unggah. Native: arsipkan di Xcode (atau biarkan agen melakukannya dengan skill asc-xcode-build ), lalu unggah:
asc builds upload --app "123456789" --ipa build/MyApp.ipa

Expo: eas build --platform ios, lalu eas submit -p ios, yang mengunggah build ke App Store Connect (tidak mengirimnya untuk review). Mengunggah aman didelegasikan; mengirim untuk review tidak.

  1. Uji dulu dengan TestFlight. Penguji internal (hingga 100 orang di tim kamu) mendapat build tanpa peninjauan. Penguji eksternal (hingga 10.000, lewat email atau tautan publik) memerlukan Beta App Review singkat untuk build pertama. Build tetap dapat diuji selama 90 hari. Agen dapat mengelola grup dengan asc testflight groups list --app "123456789" dan asc-testflight-orchestration skill. Berikan aplikasi itu kepada lima orang dengan iPhone berbeda selama seminggu; mereka akan menemukan crash yang tidak kamu temukan.
  2. Tulis metadata, lalu biarkan agen memeriksanya. Simpan listing kamu dalam berkas di repositori (metadata/en-US/…) lalu terapkan dengan dry run lebih dulu:
asc metadata apply --app "123456789" --version "1.0.0" --dir ./metadata --dry-run

The asc-metadata-sync skill memeriksa batas karakter Apple sebelum apa pun diunggah. Bagian 10 membahas apa yang harus ditulis.

  1. Buat tangkapan layar. Minimal satu, maksimal sepuluh, untuk setiap ukuran yang diwajibkan, dalam format PNG atau JPEG tanpa transparansi. asc-shots-pipeline dapat mengambilnya dari simulator, membingkainya, dan mengunggahnya dengan asc screenshots upload. Bagian 10 memuat ukurannya.
  2. Jawab pertanyaan privasi, rating usia, dan kepatuhan dengan jujur. Inilah bagian yang tidak boleh kamu delegasikan secara buta:
  • Label privasi. Dalam ketentuan Apple, data dihitung sebagai terkumpul ketika data meninggalkan perangkat dan disimpan lebih lama daripada waktu yang dibutuhkan untuk menangani permintaan. Data yang hanya diproses di perangkat tidak dihitung. Menyinkronkan konten orang ke server kamu tetap dihitung, meskipun hanya mereka yang bisa melihatnya. Minta agen mengaudit setiap panggilan jaringan dan SDK, lalu isi sendiri labelnya dari tabelnya.
  • Kebijakan privasi harus ditautkan di App Store Connect dan dapat diakses di dalam aplikasi, dan harus menjelaskan aplikasi ini, bukan hanya perusahaan kamu.
  • AI pihak ketiga (pedoman 5.1.2(i)): jika data pribadi dikirim ke layanan AI, beri tahu dan minta izin lebih dulu.
  • Penghapusan akun (pedoman 5.1.1(v)): jika orang bisa membuat akun, mereka harus bisa menghapusnya di dalam aplikasi.
  • Rating usia, kepatuhan ekspor, dan Accessibility Nutrition Labels. Jika aplikasi kamu hanya memakai enkripsi bawaan iOS, seperti HTTPS, setel ITSAppUsesNonExemptEncryption di Info.plist kamu setelah memeriksa panduan Apple, agar kamu tidak ditanya pada setiap unggahan.
  1. Kirim sendiri. Tambahkan versi untuk ditinjau dan kirimkan di halaman aplikasi di App Store Connect, atau jalankan asc publish appstore … --submit --confirm dari terminal kamu sendiri (aturan izin di Bagian 4 mencegah agen menjalankannya). Lalu biarkan agen memantau: asc review status --app "123456789".

Peninjauan: apa yang diharapkan

Apple menyatakan bahwa rata-rata 90% pengajuan ditinjau dalam waktu kurang dari 24 jam, dan lebih dari 40% masalah yang tidak terselesaikan berasal dari pedoman 2.1, App Completeness: crash, konten placeholder, informasi tidak lengkap, dan tautan rusak. Jika kamu ditolak, baca pesannya dua kali, perbaiki masalah yang sebenarnya, dan balas di App Store Connect. asc-submission-health membantu mendiagnosis penghambat, dan agen pandai menyusun balasan yang tenang dan spesifik. Kirim sendiri.


Bagian 10 — Peluncuran: Listing, Tangkapan Layar, ASO, dan Kehidupan Setelah Disetujui

Aplikasi yang disetujui dengan listing lemah seperti toko tanpa papan nama. Inilah sisa pekerjaannya.

Listing, kolom demi kolom

Kolom Batas Yang efektif
Nama aplikasi 30 karakter Merek plus manfaat. “Stash — Temukan Cepat” memberi tahu orang asing untuk apa aplikasi ini
Subjudul 30 karakter Manfaatnya dalam kata-kata sederhana. PingAtlas memakai “Ping kota, game & layanan”
Kata kunci 100 karakter Dipisahkan koma, tanpa spasi. Jangan ulangi kata yang sudah ada di nama atau subjudul; kata itu tetap dihitung
Teks promosi 170 karakter Bisa diubah tanpa peninjauan ulang, jadi pakai untuk musim dan berita
Deskripsi 4.000 karakter Apa fungsinya, untuk siapa, dan apa yang tidak dilakukannya dengan data orang. Jelas dan spesifik
Yang baru Per versi Perubahan nyata dalam kata-kata manusia; /whats-new perintah dari Bagian 5 yang membuat drafnya
Tangkapan layar 1 sampai 10 per ukuran Ceritakan berurutan; kebanyakan orang tidak pernah menggulir melewati tiga yang pertama

Dua aturan saat membiarkan agen menulis semua ini: suruh ia memakai hanya fitur yang ada di dalam kode (dan menyebutkan berkas tempat masing-masing berada), lalu simpan hasilnya di repositori supaya setiap perubahan ditinjau seperti kode. asc-aso-audit skill kemudian bisa memeriksa celah kata kunci secara offline sebelum apa pun tayang.

Ukuran tangkapan layar pada November 2026

Perangkat Wajib? Ukuran potret (piksel)
iPhone dengan Dynamic Island, layar sedang Ya 1179 × 2556 atau 1206 × 2622
iPhone dengan Dynamic Island, layar besar Opsional 1260 × 2736, 1290 × 2796, atau 1320 × 2868
iPad, layar 13 inci Ya, jika aplikasimu berjalan di iPad 2064 × 2752 atau 2048 × 2732
iPhone Duo (layar luar / dalam) Mulai April 2027, untuk aplikasi yang dibangun dengan SDK iOS 27.1 atau lebih baru 1398 × 2034 / 2007 × 2853

Kalau tampilanmu sama di semua ukuran dan bahasa, kamu hanya perlu resolusi wajib yang tertinggi; App Store Connect mengecilkannya untuk perangkat yang lebih kecil. Tangkapan layar tidak boleh mengandung transparansi.

Anatomi daftar App Store dengan batas karakter: nama aplikasi 30, subjudul 30, kata kunci 100, teks promosi 170, deskripsi 4.000, plus ukuran tangkapan layar yang diwajibkan pada November 2026 dan ukuran iPhone Duo yang berlaku mulai April 2027
Semua yang dibaca pencarian App Store, dan semua yang dilihat orang asing sebelum menekan “Dapatkan”, dalam satu halaman.

Lokalkan listing-nya, bukan hanya aplikasinya

Kalau aplikasinya berbicara beberapa bahasa, listing-nya juga harus begitu. asc-localize-metadata skill menerjemahkan teks listing dan asc-metadata-sync memeriksa setiap bahasa terhadap batas karakter Apple, yang biasanya jadi tempat subtitle bahasa Jerman hasil terjemahan manual meleset. Mintalah penutur asli membaca hasilnya; terjemahan mesin sekarang sangat bagus, tetapi teks di toko aplikasi adalah pemasaran, dan pemasaran butuh telinga manusia.

Setelah disetujui

  • Minta penilaian saat momennya tepat. Prompt penilaian sistem Apple muncul paling banyak tiga kali setahun per orang, jadi jangan buang kesempatan itu saat peluncuran pertama. Mintalah tepat setelah sesuatu berjalan baik.
  • Gunakan teks promosi untuk momen tertentu. Musim pindahan, bersih-bersih musim semi, akhir pekan bermain gim. Bisa diubah tanpa peninjauan.
  • Pantau crash sejak hari pertama. The asc-crash-triage skill meninjau crash dan masukan TestFlight; server MCP Expo bisa mengambil crash, masukan, dan ulasan (balasan perlu konfirmasimu); server MCP Sentry membawa masuk error produksi.
  • Rilis pembaruan kecil sesering mungkin. Stash tayang pada 23 September, merilis desain ulang pada 2 Oktober, dan menambah sepuluh bahasa di versi 1.1.0 pada 28 Oktober. Rilis versi yang sudah berfungsi, lalu perbaiki di depan publik.
  • Beri aplikasimu rumah di web. Halaman sederhana dengan demo, kebijakan privasi yang ditulis untuk aplikasi itu, dan, kalau kamu di Jerman, sebuah Impressum. Panduan aplikasi dari nol milik saya membahas halaman hukum bagi pengembang Jerman dan UE.

Bagian 11 — Berapa Biayanya: Empat Anggaran Tahun Pertama

OpenCode gratis. Ollama gratis di perangkat kerasmu sendiri. Satu-satunya biaya yang tidak bisa kamu hindari untuk aplikasi iPhone adalah keanggotaan Apple; selebihnya tergantung berapa banyak waktu model yang ingin kamu beli.

Anggaran Isinya Tahun pertama (USD)
Hanya lokal Apple Developer Program; OpenCode; Ollama dengan model lokal di Mac milikmu sendiri (32 GB atau lebih) $99
Pemula Hanya lokal + OpenCode Go ($10 per bulan) $219
Disarankan Starter + Ollama Pro dengan tagihan tahunan ($200) $419
Daya Apple + OpenCode Go Plus ($40 per bulan) + Ollama Max ($100 per bulan) $1,779

Harga daftar per 7 November 2026, di luar PPN, tanpa diskon promosi. Ganti dengan pilihanmu sendiri: GLM Coding Plan Lite alih-alih Go berbiaya $216 per tahun dengan tagihan bulanan (sekitar $151 dengan tagihan tahunan), bukan $120; ChatGPT Plus $240 per tahun. Tambahan opsional: biaya sekali bayar $25 dari Google Play jika kamu merilis di Android, paket Expo berbayar jika kebutuhanmu melebihi paket gratis, dan berapa pun biaya situs webmu.

Biaya tahun pertama untuk membangun dan menerbitkan aplikasi dengan OpenCode dan Ollama pada 2026: $99 hanya lokal, $219 pemula, $419 direkomendasikan, dan $1.779 kelas power, terbagi ke Apple, OpenCode Go, dan Ollama
Biaya Apple adalah satu-satunya pos yang tidak bisa kamu hindari. Konfigurasi yang direkomendasikan sekitar $35 per bulan.

Namun biaya sebenarnya tidak ada di daftar itu: waktu malammu. AI mempersingkat pengetikan, bukan pemikiran, dan pemikiran adalah bagian terbesar dari pekerjaan.


Bagian 12 — Lima Belas Kesalahan yang Harus Dihindari

  1. Membiarkan agen mengirim untuk ditinjau. Tolak di pengaturan izin. Kamu yang menekan tombolnya.
  2. Menyimpan kunci API Admin di tempat agen berjalan tanpa pengawasan. Gunakan peran paling rendah yang memadai, lalu simpan kunci penandatanganan dan kredensial produksi di tempat lain.
  3. Membuat salinan dari sesuatu yang sudah ada. Panduan 4.3(b) kini menyebut kategori secara keseluruhan. Temukan dulu perbedaanmu dalam satu kalimat.
  4. Merilis fitur tambahan yang tersembunyi. Layar debug, feature flag yang tidak aktif, dan menu pengujian melanggar panduan 2.5.19. Keluarkan semuanya dari build rilis lewat kompilasi.
  5. Label privasi yang terdengar masuk akal tetapi tidak akurat. Jika data meninggalkan perangkat dan menetap di server, data itu dianggap terkumpul, meskipun hanya pengguna yang bisa melihatnya.
  6. Mengirim data pribadi ke layanan AI tanpa bertanya. Panduan 5.1.2(i) mewajibkan pengungkapan dan izin.
  7. Rahasia di dalam bundel aplikasi. Apa pun di dalam aplikasi bisa diekstrak. Kunci yang bernilai uang disimpan di server.
  8. Menghubungkan setiap server MCP yang kamu temukan. Masing-masing memakan konteks pada setiap permintaan. Tambahkan yang kamu pakai.
  9. Memasang skill dan server yang belum kamu baca. Itu instruksi dan kode yang berjalan dengan izinmu.
  10. Percaya pada “selesai”. Jalankan di iPhone sungguhan, offline, dalam mode gelap, dengan ukuran teks terbesar, dan VoiceOver aktif.
  11. Memakai model promosi gratis untuk kode klien. Sebagian mungkin memakai datamu untuk meningkatkan model. Nonaktifkan untuk proyek klien.
  12. Lupa panjang konteks Ollama. Dengan pengaturan bawaan, agen kehabisan ruang sebelum mulai. Setel 64K di server.
  13. Membiarkan dependensi menumpuk. Setiap paket adalah kode yang tidak kamu baca dan pembaruan yang harus kamu kelola. Buat agen bertanya dulu.
  14. Sesi yang panjang dan berantakan. Mulai dari awal untuk setiap potongan, dan gunakan worktree untuk eksperimen.
  15. Menjanjikan roadmap-mu. Tangkapan layar dan deskripsi menunjukkan apa yang dilakukan build ini. Ide sebaiknya di situs webmu, diberi label sebagai ide.

Bagian 13 — Setup Mana yang Harus Kamu Pilih? Enam Skenario

1. “Saya belum pernah menulis kode dan saya punya Mac.”

Aplikasi desktop OpenCode, OpenCode Go, dan Ollama untuk tugas-tugas kecil. Expo jika kamu juga ingin Android; SwiftUI jika hanya peduli iPhone. Jaga perintah shell di tanya, commit setelah setiap langkah yang berhasil, dan mulai dengan aplikasi yang hanya punya satu tugas.

2. “Kode saya tidak boleh pernah meninggalkan mesin saya.”

OpenCode hanya dengan Ollama lokal. Nonaktifkan fitur cloud Ollama, setel OPENCODE_DISABLE_FREE_MODELS=1, dan jangan hubungkan penyedia cloud apa pun di proyek itu. Harapkan bantuan yang lebih lambat dan sederhana, dan beri agen tugas yang lebih kecil. Mac dengan 64 GB atau lebih membuat ini jauh lebih nyaman.

3. “Saya sudah membayar ChatGPT, Copilot, atau Claude.”

Hubungkan dulu yang sudah kamu punya. ChatGPT Plus dan Pro serta GitHub Copilot berfungsi lewat proses masuk bawaan tanpa biaya tambahan. Claude berfungsi lewat penyedia Claude Agent; baca Bagian 2 sebelum kamu bergantung padanya untuk pekerjaan bisnis. Tambahkan OpenCode Go nanti jika kamu ingin model terbuka juga.

4. “Saya ingin iPhone dan Android dari satu basis kode.”

Expo SDK 58, server MCP Expo, skill resmi Expo, dan EAS untuk build dan unggahan di cloud. Kamu bisa membangun dan mengunggah aplikasi iOS tanpa Mac, meskipun kamu tetap akan ingin punya satu (dan sebuah iPhone) untuk pengujian.

5. “Saya hanya peduli pada platform Apple dan ingin semuanya native.”

SwiftUI di Xcode 27.1, dengan OpenCode baik di dalam Xcode lewat ACP (Xcode → Settings → Intelligence → Add an Agent…, executable opencode, argument acp) atau di terminalmu dengan MCP bridge milik Xcode dan XcodeBuildMCP. Satu keterbatasan rute di dalam Xcode: tidak ada pemilih model, jadi atur model default kamu di opencode.jsonc dulu.

6. “Saya ingin cepat dan saya siap membayarnya.”

OpenCode Go Plus dan Ollama Max, worktree untuk eksperimen paralel, mode goal untuk pekerjaan mekanis yang panjang, dan model frontier lewat API key untuk masalah yang benar-benar sulit. Pantau pengeluaranmu setiap minggu. Untuk menjalankan beberapa agen berdampingan, perbandingan harness membahas pilihannya.


Pertanyaan yang sering diajukan

Bagaimana cara memakai OpenCode untuk pertama kali?

Pasang dengan curl -fsSL https://opencode.ai/v2/install | bash (atau unduh aplikasi desktop dari opencode.ai/download), buka terminal di folder proyekmu dan jalankan opencode. Ketik /connect untuk menambah penyedia model, seperti OpenCode Go, login ChatGPT, atau model Ollama lokal, lalu /models untuk memilih model. Tambahkan file AGENTS.md yang menjelaskan proyekmu, mulai di agen plan, dan bangun satu fitur kecil setiap kali sambil meninjau setiap perubahan.

Apakah OpenCode gratis?

Ya. OpenCode bersumber terbuka di bawah lisensi MIT dan tidak memakan biaya. Ia bahkan menyertakan satu set model gratis yang bergilir dan bisa kamu pakai tanpa akun. Kamu hanya membayar akses model yang kamu pilih untuk ditambahkan, seperti OpenCode Go seharga $10 per bulan, paket Ollama Cloud, langganan ChatGPT atau Copilot yang sudah ada, atau API key bayar per token. Model lokal lewat Ollama gratis.

Apa itu OpenCode Go dan berapa biayanya?

OpenCode Go adalah paket coding milik OpenCode sendiri: $10 per bulan untuk akses ke 32 model terbuka, termasuk GLM-5.3, Kimi K3, MiniMax M3.1 Flash, dan DeepSeek V4.1 Flash. Setiap model punya jatah dolar bulanan, yang bisa kamu pakai 20% per lima jam dan 50% per minggu. Go Plus berharga $40 per bulan dengan batas lebih tinggi, dan Go Teams $20 per anggota. Sebagian besar model disajikan dengan retensi data nol.

Bisakah OpenCode dipakai dengan Ollama?

Ya. OpenCode mendeteksi server Ollama lokal secara otomatis dan mendaftarkan modelnya di /models. Kamu juga bisa menjalankan ollama launch opencode, yang berfungsi dengan OpenCode v2 sejak Ollama 0.40.12. Atur panjang konteks Ollama minimal 64K token, karena default 4.096 terlalu kecil untuk agen coding. Model cloud Ollama bekerja dengan cara yang sama setelah kamu masuk.

Model lokal mana yang sebaiknya dipakai dengan OpenCode di Mac?

Jaga ukuran unduhan model di bawah sekitar 60% memori Mac kamu. Di 32 GB, mulai dengan qwen3.8:27b (18 GB), qwen3-coder:30b (19 GB) atau gpt-oss:20b (14 GB). Di 64 GB, pakai model yang sama pada presisi lebih tinggi dengan konteks lebih besar. Di 96 sampai 128 GB, gpt-oss:120b (65 GB) dan devstral-2:123b (75 GB) muat. Di 16 GB, model lokal cocok untuk pekerjaan kecil; pakai model cloud untuk membangun.

Bisakah langganan Claude Pro atau Max dipakai di OpenCode?

Sejak OpenCode 2.2.3 (30 Oktober 2026), ya, lewat penyedia Claude Agent: pasang Claude Code 2.1.248 atau lebih baru, jalankan claude auth login, lalu pilih Claude Agent di /connect. Ia menjalankan program Claude Code resmi lewat Agent SDK milik Anthropic. Anthropic belum menyetujui penggunaan ini secara publik, dan ketentuan Agent SDK-nya membatasi pihak ketiga yang menawarkan login claude.ai, jadi gunakan API key Anthropic untuk pekerjaan bisnis.

Bisakah ChatGPT Plus atau GitHub Copilot dipakai di OpenCode?

Ya, keduanya lewat penyedia bawaan. Untuk ChatGPT Plus atau Pro, jalankan /connect, pilih OpenAI lalu “Sign in with ChatGPT”; pemakaian dihitung terhadap paketmu. Untuk GitHub Copilot, pilih GitHub Copilot dan selesaikan login perangkat; akunmu perlu akses Copilot Chat, yang sudah termasuk dalam paket Copilot gratis.

Apa itu server MCP, dan mana yang perlu dipakai untuk pengembangan iOS?

Server MCP (Model Context Protocol) memberi agen coding alat tambahan, seperti mengendalikan Xcode atau simulator. Untuk pekerjaan iOS, yang paling berguna adalah bridge bawaan Xcode (xcrun mcpbridge), XcodeBuildMCP untuk build, kontrol simulator dan tangkapan layar, server Expo MCP untuk proyek Expo, Context7 untuk dokumentasi terkini, dan Sentry untuk data crash. Setiap server menambah konteks pada setiap permintaan, jadi hubungkan hanya yang kamu pakai.

Apa itu skill di OpenCode?

Skill adalah folder yang berisi SKILL.md file: deskripsi singkat plus instruksi langkah demi langkah, kadang dengan skrip. OpenCode hanya menunjukkan deskripsinya ke model dan memuat instruksi sebuah skill saat tugas membutuhkannya. Ia membaca skill dari .opencode/skills, .claude/skills dan .agents/skills di proyekmu, dan dari folder global. Expo dan App Store Connect CLI menerbitkan set skill resmi.

Bisakah OpenCode menerbitkan aplikasimu ke App Store?

Ia bisa melakukan hampir semua pekerjaan: mengarsipkan, mengunggah build, mengelola TestFlight, menyinkronkan metadata dan tangkapan layar, serta memeriksa status peninjauan, memakai alat seperti asc CLI atau EAS dari Expo. Agen tidak boleh menekan “Submit for Review”. Blokir perintah submit di izin OpenCode, jawab sendiri pertanyaan privasi dan kepatuhan, lalu kirim versinya sendiri di App Store Connect.

Apakah saya perlu Mac untuk menerbitkan aplikasi iPhone?

Tidak harus. Dengan Expo, EAS membangun aplikasi iOS kamu di cloud dan mengunggahnya ke App Store Connect dari Windows atau Linux. Untuk pengembangan native dengan Xcode kamu perlu Mac, dan Xcode 27.1 memerlukan macOS Tahoe 26.6 atau lebih baru. Apa pun jalurnya, kamu tetap butuh iPhone asli untuk pengujian, dan kamu perlu keanggotaan Apple Developer Program ($99 setahun) untuk menerbitkan.

Berapa biaya membangun dan menerbitkan aplikasi dengan OpenCode?

Mulai $99 pada tahun pertama jika kamu memakai model lokal dan hanya membayar iuran keanggotaan Apple. Setup yang direkomendasikan dalam panduan ini (OpenCode Go plus Ollama Pro dengan tagihan tahunan) mencapai sekitar $419 untuk tahun pertama termasuk iuran Apple, dan setup bertenaga dengan OpenCode Go Plus dan Ollama Max sekitar $1.779. Harga adalah daftar harga November 2026 tidak termasuk PPN.

Apa yang berubah dalam aturan App Store pada 2026?

Build harus dibuat dengan Xcode 26 atau lebih baru (sejak April), aplikasi tiruan dan aplikasi asal-asalan di kategori jenuh ditolak berdasarkan pedoman 4.3(b) yang ditulis ulang (Juni), fitur tersembunyi, dorman, atau tak terdokumentasi dilarang berdasarkan pedoman baru 2.5.19 (Oktober), dan aplikasi harus menyasar iOS 13 atau lebih baru (September). Tangkapan layar iPhone Duo menjadi wajib pada April 2027 untuk aplikasi yang dibangun dengan SDK iOS 27.1, dan set tangkapan layar iPhone yang diwajibkan sekarang adalah set untuk layar Dynamic Island ukuran sedang (1179 × 2556 atau 1206 × 2622 piksel).

Apa itu Stash dan PingAtlas?

Keduanya adalah dua aplikasi iPhone dan iPad gratis dari Graham Miranda UG, perusahaan penulis. Stash — Find It Fast mengingat di mana kamu meletakkan barang: kamu memotret tempatnya, memilih ruangan, lalu mencarinya lagi nanti, bahkan lewat catatan suara yang ditranskripsikan, dalam 11 bahasa. PingAtlas mengukur waktu pulang-pergi jaringan dari perangkatmu sendiri ke kota, game, dan layanan online, tanpa akun, tanpa iklan, dan tanpa analitik.


Kesimpulan

Pembelajaran cara memakai OpenCode yang baik bukan soal menghafal perintah. Ini soal membangun sistem kecil di sekitar agen: paket coding yang sesuai anggaranmu, Ollama untuk pekerjaan yang sebaiknya tetap di mesinmu, beberapa server MCP yang membuat agen bisa melihat apa yang dibangunnya, skill yang menyimpan playbook-mu, dan izin yang menjaga keputusan tak bisa dibatalkan tetap di tanganmu.

Rekomendasi saya tetap: OpenCode dengan OpenCode Go dan Ollama adalah cara termurah, paling fleksibel, dan paling tidak mengikat untuk membangun aplikasi dengan AI pada akhir 2026. Tambahkan langganan yang sudah kamu bayar, atau model frontier lewat kunci API, saat tugasnya layak. Lalu pakai agen untuk urusan administrasi juga, dan simpan tombol “Submit” untuk dirimu sendiri.

Kalau kamu ingin melihat hasil proses seperti ini dalam skala kecil, kedua aplikasi saya gratis: Stash — Find It Fast untuk barang-barang yang kamu simpan, dan PingAtlas untuk mengecek seberapa dekat internet sebenarnya dari tempatmu duduk. Setelah itu, bangun aplikasimu sendiri.


Sedang membangun dengan OpenCode? Saya ingin mendengar paket coding mana yang akhirnya kamu pilih, model lokal mana yang mendapat tempat di Mac-mu, dan server MCP atau skill mana yang tak bisa kamu tinggalkan. Koreksi dan bukti tandingan diterima; artikel ini diperbarui saat keadaannya berubah.

Pengungkapan: Stash dan PingAtlas adalah aplikasi saya sendiri, diterbitkan oleh perusahaan saya, Graham Miranda UG (haftungsbeschränkt). Keduanya gratis tanpa iklan. Artikel ini memuat satu tautan afiliasi, yaitu ke GLM Coding Plan dari Z.ai di Bagian 2; jika kamu berlangganan lewat tautan itu, kamu mendapat diskon 10% dan saya menerima komisi. Tidak ada perusahaan yang disebut di sini yang mensponsori, meninjau, atau menyetujui artikel ini.

Terakhir diperbarui: 7 November 2026.

Tambahkan sinyalmu.

Alamat email kamu tidak akan dipublikasikan. Ruas yang wajib ditandai *

id_IDBahasa Indonesia