[{"data":1,"prerenderedAt":194},["ShallowReactive",2],{"\u002Fid\u002Fdocs\u002Fcore-concepts\u002Flayer-2":3},{"id":4,"title":5,"body":6,"description":186,"extension":187,"meta":188,"navigation":189,"path":190,"seo":191,"stem":192,"__hash__":193},"docs\u002Fid\u002Fdocs\u002Fcore-concepts\u002Flayer-2.md","Layer 2: Agent Definitions",{"type":7,"value":8,"toc":178},"minimark",[9,28,33,107,117,121,154,158,164,168],[10,11,12,13,17,18,21,22,27],"p",{},"Layer 2 mendefinisikan siapa mengerjakan apa. Setiap role dalam siklus PIV punya file\ndefinisi sendiri di ",[14,15,16],"code",{},".claude\u002Fagents\u002F"," — hasil generate ",[14,19,20],{},"caf-initiator init"," yang sudah\nmenyerap konteks dari ",[23,24,26],"a",{"href":25},"\u002Fid\u002Fdocs\u002Fcore-concepts\u002Flayer-1","Layer 1: Project Knowledge Base",".",[29,30,32],"h2",{"id":31},"empat-role","Empat role",[34,35,36,52],"table",{},[37,38,39],"thead",{},[40,41,42,46,49],"tr",{},[43,44,45],"th",{},"File",[43,47,48],{},"Role",[43,50,51],{},"Akses",[53,54,55,69,82,95],"tbody",{},[40,56,57,63,66],{},[58,59,60],"td",{},[14,61,62],{},"planner.md",[58,64,65],{},"Menyusun rencana kerja dari ticket",[58,67,68],{},"Read-only ke kode",[40,70,71,76,79],{},[58,72,73],{},[14,74,75],{},"implementer.md",[58,77,78],{},"Menulis kode sesuai plan yang disetujui",[58,80,81],{},"Read-write",[40,83,84,89,92],{},[58,85,86],{},[14,87,88],{},"verifier.md",[58,90,91],{},"Scanner — lint, test, review otomatis",[58,93,94],{},"Read-only",[40,96,97,102,105],{},[58,98,99],{},[14,100,101],{},"reviewer.md",[58,103,104],{},"Menyiapkan ringkasan diff & checklist untuk human review",[58,106,94],{},[10,108,109,111,112,116],{},[14,110,101],{}," ",[113,114,115],"strong",{},"tidak"," menggantikan manusia. Isinya instruksi untuk menyusun ringkasan\nyang memudahkan manusia mengambil keputusan approve\u002Freject — keputusan akhir tetap selalu\ndi tangan manusia, sesuai checkpoint wajib di setiap fase.",[29,118,120],{"id":119},"apa-isi-satu-file-definisi","Apa isi satu file definisi",[122,123,124,131,137,143],"ul",{},[125,126,127,130],"li",{},[113,128,129],{},"Scope peran"," — batas tanggung jawab role tersebut, tidak lebih",[125,132,133,136],{},[113,134,135],{},"Batasan akses"," — tools apa yang boleh dipakai, terutama status read-only vs read-write",[125,138,139,142],{},[113,140,141],{},"Kebijakan retry"," — maksimal 3x percobaan sebelum dieskalasi ke manusia",[125,144,145,148,149,153],{},[113,146,147],{},"Format output"," — struktur artifact yang harus dihasilkan di akhir fase (lihat\n",[23,150,152],{"href":151},"\u002Fid\u002Fdocs\u002Fcore-concepts\u002Flayer-3","Layer 3: Artifact Handoff",")",[29,155,157],{"id":156},"kustomisasi","Kustomisasi",[10,159,160,161,163],{},"File-file ini bukan konfigurasi yang dikunci. Kamu bisa mengedit langsung untuk\nmenyesuaikan gaya kerja tim — misalnya menambah aturan khusus di ",[14,162,75],{}," seperti\n\"selalu tulis test untuk setiap fungsi baru\".",[29,165,167],{"id":166},"hubungan-dengan-layer-lain","Hubungan dengan layer lain",[10,169,170,171,174,175,177],{},"Layer 2 mengonsumsi konteks dari ",[113,172,173],{},"Layer 1"," dan menentukan format artifact yang akan\nditulis ke ",[23,176,152],{"href":151}," di setiap akhir fase.",{"title":179,"searchDepth":180,"depth":180,"links":181},"",2,[182,183,184,185],{"id":31,"depth":180,"text":32},{"id":119,"depth":180,"text":120},{"id":156,"depth":180,"text":157},{"id":166,"depth":180,"text":167},"Peran, batasan akses, dan kebijakan retry untuk tiap agent di CAF.","md",{},true,"\u002Fid\u002Fdocs\u002Fcore-concepts\u002Flayer-2",{"title":5,"description":186},"id\u002Fdocs\u002Fcore-concepts\u002Flayer-2","FFkIf3qrndCBAyqGUdg1bMYobkigIskZEMpo8HRxOME",1787621084082]