Галоўная / Артыкулы

Практычныя нататкі: распрацоўка функцый з субагентамі Gemini CLI

Практычны разбор тэмы «распрацоўка функцый з субагентамі Gemini CLI»: кантракты, праверкі і гатовыя фрагменты кода для каманд, якія ўкараняюць гэты падыход.

Выдавец: REACTAPP.TOP8 хв чытання1727 слоў

Крыніцы: Feature development with Gemini CLI subagents

Наступныя прыміткі паказваюць практычны шлях адпрацоўкі тэмы «Развіцце функцый за дапамогою сабэйентаў Gemini CLI». Акцэнс ставіцца на контракты, перакананняя і шаблоны коду, якія можна легка заменіць, а не на мотывацыйныя аспекты. Калі працуеце на этапы агледзення, спачатку запісайце контракт: неабяжныя даны, сігнал успеху і тое, што вядзецца ў разе частковага невыпання. Такі спіс перакананняя дапамагае заліцьваты пазнейшыя змены ў кодзе. Документавайце як шлях успеху, так і шлях вярнення да нормальнага стану. Перапрыбуткі, людзкія контрольныя пункты і обработка некорэктных паведамленняў ёсць частынай продукту, а не пазнейшай дапрацоўкі.

Прыемленае рашэнне

Этап стварэння прыемкі работае наяўней, калі яго спрыяваць як мерыемую паверхню. Запісаце адна ідэальная версія, адзін прыклад неудачы і заўважэння па поверненню да пачатковага стану пры расшырэнні масштаба. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, прычына неудачы павінна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцоўкі задач. Зафіксавайце інтэрпрэтара і файл з правіламі залежнасцяў пры вучэнні цыклу. Разлік межаў між ноутбукам і сістэмай CI — гэта самая частая тыха прычына збою ў дэманстраціях API.

Запрос пра функцыю

Этап запатронавання функцыяў працюе належна, калі яго спрыяваць як мерыемую плошчу. Зафіксавайце адны ідэальны прыклад працы, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расшырваць масштабы. Спрыяйце гэтаму этапу як кантракту межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Дайце назвы артыфактам, задаць крытэрыя успеху і адмовіцеся ад тыхоўскага частковага завершэння. Закрэпіце інтэрпрэтара і файл з правіламі залежнасцяў пры першай працы з цыклам. Разніця ў рабоце на ноутбуку і у сервісах CI — гэта самая частая тыхая проблема пад час дэманстрацый API.

Пайплайн

Этап пайплайна працюе найкрашча, калі яго розглядаць як вімерную плошчу. Зафіксавце адны ідэальны прымер працы, адны прыклад неудачы і запіс пра відкатанне раней, чым расшырваце сферу дзеяння. Запісвайце часы выканання і косты токеноў або запытаў разам з функцыйнальнымі рэзультатамі. Візуабельнае прадставленне костаў з самага пачатку запобегае неспакойным рахункам, калі працэс пераходзіць з дэмовай асяроддзя ў спакульную. Зафіксавце інтэрпрэтара і файл з правіламі залежнасцяў раней, чым почніце выкладванне цыклаў. Разлікы межаў лептопа і асяроддзя CI ёсць найпашчэрэйшым таямным бягам для дэмавых версій API. Этап пайплайна працюе найкрашча, калі яго розглядаць як вімерную плошчу. Зафіксавце адны ідэальны прымер працы, адны прыклад неудачы і запіс пра відкатанне раней, чым расшырваце сферу дзеяння. Дакументавайце як шлях успеху, так і шлях вярнення да нормальнасці. Перапрыбуткі, людзкія контрольныя пункты і обработка некорэктных паведамленняў ёсць часткай продукту, а не чымось, што дадаецца пазней.

Навыкі: спакульныя знанні, якія можа перыявіць пайплайн

Для працы з навыкамі і спадзяванымі знаннямі, перш чым зменяць код, неабходна ясная візначэння вхідных дадзеных, адпавядаючага за крок адпаведальнага, а таксама крэтарыяў завершэння. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не прабуючы здогадвацца пра схованы стан. Лепш выбіраць маленькія, тэставаныя елементы заместо велікіх скрыптав. Калі крок не выйшаў, прычына неудачы должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны працэс. Раздзеляйце стварэнне кліента ад цыклу перадачы паведамленняў, ў такі спосаб кантракты можна будзе заменіць без перапісвання машыны стану дыялогу.

Адкрыцце працэса

Для стадыі запуску пайплайну неабяцо пазначыць вхідныя даны, адпаведальнага за крок і крытэрыі завершэння пры перадзеяванні коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не падозрываючы схованы стан. Спрыяць гэтай этапы як кантракту межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даць назвы артыфактам, пазначыць перакананні успеху і адмовіцца ад тыхоўскага частковага завершэння. Разлучыць стварэнне кліента ад цыклу паведамленняў, каб можна было змяніць прадаўцоў без перапісвання машыны стану размовы.

Стадыя 1: архітэктар

Для стадыі архітэктуры 1 неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крэтырыя завершэння пры зміне коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю без адгадвання захаванага стану. Запісваць час выканання і вартасць токена або запытку праза функцыйнальных рэзультаатаў. Відразлівасць вартасцей з самага пачатку запобегае неспакоўным рахункам, калі траекторыя пераходзіць з дэмаверсіі ў спакульнаныя сераўысы. Аддзельваць стварэнне кліента ад цыклу паведамленняў, каб было можна змяніць прадаўцоў без перапісвання машыны стану канверсацыі. Для стадыі архітэктуры 1 неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крэтырыя завершэння пры зміне коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю без адгадвання захаванага стану. Дакументаваць шлях успеху і шлях вяснавання разам. Перапрыбуткі, людзкія контралі і обработка непрацэсаваных паведамленняў ёсць часткай продукту, а не чымсь, што дадаецца пазней.

Этап 2: разработка функцыянаў

Калі працуеце на этапе 2 разработкі функцыянаў, спачатку запісайце умовы працы: неабходныя даны, сігнал успеху і тое, што выканаецца у разы ўзельнай неудачы. Такі чарт дапамагае залічваць пазнейшыя змены ў кодзе. Валіце маленькія, тэставаныя елементы замест большых скрыптаў. Калі якісь крок не выйшоў, неудача павінна вказваць на адную адпаведальнасць, а не на заплутаны ланцюг задач. Запісвайце ідэнтыфікатор запіту, ідэнтыфікатор мадэлі і час адпаведзення праз кожны вызов. Без такога лісту пры перыядычных памылках прадаўцоў усё выглядае як багі ў самай аплікацыі.

Этап 3: безпека, тэсты і документацыя паралельна

Калі вы працуеце над стадзіяй 3 тэстав безпекі, спачатку запісайце угоду: неабяжлівыя даныя, сігнал успеху і тое, што выходзіць у разе частковага нявыпання. Такі спіс перакладоў заходзіць на тое, каб пазнейшыя змены коду былі чыстымі. Спрыятлівае ставленне да гэтай стадзіі як да угоды межа данымі і перакананымі выходамі. Дайце назву артыфактам, задаць правілы пераканання успеху і адмовіцеся ад тыхоўскага частковага завершэння. Запісвайце ідэнтыфікатор запіту, ідэнтыфікатор мадэлі і час адпаведзення праз кожны вызов. Без гэтага следу перыодычныя памылкі прадастаўця выглядаюць як багі прыемніка.

Стадзія 3.5: browser_agent

Калі працуеце над стадзіяй 3 5 browseragent, спачатку запісайце угоду: неабяжлівыя даны, сігнал успеху і тое, што выканаецца пад частковым нявыполненнем. Такі спіс контролю дапамагае залічыць пазнейшыя змены коду адкрыта і працэйна. Запісвайце часы выканання і кост токена або запіту праз ці функцыональныя рэзультаты. Відразлівая візуабельнае прадставлення костаў запобегае неспакойным рахункам, калі працэс пераходзіць з дэмовай асяроддзя ў спяльныя сераўеры. Запісвайце ID запіту, ID модэлю і час затрымкі праз кожны вызов. Без такога лёгку, перыядычныя кантракты падаючых аппаратных засобаў выглядаюць як багі самай прыемлівасці. Калі працуеце над стадзіяй 3 5 browseragent, спачатку запісайце угоду: неабяжлівыя даны, сігнал успеху і тое, што выканаецца пад частковым нявыполненнем. Такі спіс контролю дапамагае залічыць пазнейшыя змены коду адкрыта і працэйна. Дакументавайце як успешны, так і патэнцыйны шляхы працы. Перапрыбуткі, людзкія контрольныя пункты і обработка непрацэйных паведамленняў ёсць часткай продукту, а не пазнейшым дапрацоўкам.

{
  "agents": {
    "overrides": {
      "browser_agent": { "enabled": true }
    },
    "browser": {
      "sessionMode": "isolated",
      "headless": false,
      "allowedDomains": ["localhost"],
      "blockFileUploads": true,
      "confirmSensitiveActions": false
    }
  }
}

Этап 4: пераглядач коду

Этап перагляду коду на 4-м этапе працюе найкрашча, калі яго розглядаць як вімерную плошчу. Запісаце адна ідэальная транскрыпцыя, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расшырваць масштабы. Воліце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, прычына неудачы павінна вказываць на адзіную адпаведальнасць, а не на заплутаны працэс. Зафіксавайце інтэрпрэтара і файл з правіламі залежнасцяў пры тым, як выучаеце цыкл. Разніця ў настройках межу лептапам і сістэмай CI — гэта найчастэйшая тыха прычына несправнасцей у дэманстраціях API.

Што вы бачылі

Этап «Тое, што вы бачылі» працюе наяўней, калі яго спрыяваць як мерыемую паверхню. Запісаце адна «золатая» транскрыпцыю, адын прыклад неудачы і прыметку па вярнэнню да пачатковага стану пры розшырэнні масштаба. Спрыявайце гэты этап як кантракт межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, задаце крытэрыя успеху і адмовіцеся ад тыхоўскага частковага завершэння. Фіксуйце версію інтэрпрэтара і файл з правамі на залежнасці пры тым, як выучаеце цыкл. Адхіленне межа ноутбукам і сістэмай CI — гэта самая частая тыхая паўза пад час дэманстрацый API.

Чэк-ліст для эксплуатацыі

Для этапа чэк-ліста для эксплуатацыі задаце вхідныя даны, адпаведальнага за крок і крытэрыя завершэння пры зміне коду. Аператары должны магчыма было перзапусціць крок з вядомага пункта контролю, не спрабоўваючы здагадвацца пра схованы стан.

Зберагаеце настройкі зовні коду прыемліка. Файлы сераўнавальнага сэрвісу, хранення секрэтных дадзенаў і флагі функцыйяй должны знаходзіцца ў аднам месцы, куды аператары можаюць адбавіць аўдыт без неабяжнага чытання всіх дадзенаў.

Раздзеляйце стварэнне кліента ад цыклу паведамленняў, каб можна было зменіць прадаўцаў без перапісвання машыны стану размовы.

Ствараеце контрольныя пункты пасля дорогіх крокаў. Сістэма вярнення паведамленняў не должна занова сцягваць плата за той самы вызыв LLM, калі аператар перапрыямляе працу да наступнага вузла.

Фіксуйце версіі залежнасцей і запішыце хэш адобраза, які выканаў дамэ-выклік. Возможнасць перадарабатка важнейшая за традыцыйныя знаёмства.

Спрыймайце гэты этап як кантракт між вхіднымі дадзеннямі і перакананымі выходнымі рэзультатамі. Даўайце назвы артыфактам, задаюце крытэрыя успеху і адмовляйцеся ад мовчанкавага частковага завершэння.

Перш чым запускаць даную сістэму, заморозьце версіі, зафіксавце «золаты» транскрыпты для крытычных элементаў і паказвце спосабы адкатування. У спільных сераўерах неабходны ліміты швайнаў, пераказы наявнасці праваў і чысткі власнік для змены секрэтных даных. Лепш выбіраць простую надзею на надзейнасць, чым хітрыя разовыя дэманстрацыі.

Прыметка для a637947ee6bc: не кладзіце ключы прадаўцаў у рэпазітарый, задаце ліміт токенаў на кожную сесію і зберагачыце транскрыпты разам з фіксатрамі для ацэнкі, каб пазнейшыя замены модэляў заставаліся пораўнанымі.

Калі працуеце над пунктом 0 з ударжання безпекі, спачатку запісаце умовы: неабходныя даныя, сігнал успеху і тое, што выходзіць пад час частковага абыякавання. Такі спіс дапамагае заставаць пазнейшыя змены коду чыстымі. Спрыятлівае ставленне да гэтага пункту як да кантракта межу данымі і перакананымі выходамі. Даце назвы артыфактам, задаце крытэрыя успеху і адмовіцеся ад тыхнявага частковага завершэння.

Дзеянне паўжасткі 0/874: звярніце увагу на час выканання, клас памылкі і колькасць выкарыстоўваных токенаў для гэтага запісу, а пасля, на аднойчынай базе паказаных пытанняў, а не на асобістых спамятах, вынікніце рашэнне пра тое, чым застаўці змену.

Этап 0 паўжасткі працюе найэфектывней, калі яго спрыяваць як меравальную плошчу. Запісаце адну ідэальную транскрыпцыю, адзін прыклад памылкі і запіс пра адвярненне змяны перад расшырэнням масштаба. Дакументаваць трэба як успішны, так і вярнучы шляхы. Перапрыбуткі, людзкія контралі і обработка некорэктных паведамленняў ёсць часткай продукту, а не чымсь, што дадаецца пазней.

Дзеянне паўжасткі 0/893: звярніце увагу на час выканання, клас памылкі і колькасць выкарыстоўваных токенаў для гэтага запісу, а пасля, на аднойчынай базе паказаных пытанняў, а не на асобістых спамятах, вынікніце рашэнне пра тое, чым застаўці змену.

Для першага стадыі змецелення неабяжна прадзефінавацыя вхідных дадзеных, адпраўніка крока і крэтарыяў завершэння працы перад зменым коду. Аперацыйныя працавнікі должны магчыма было перзапускаць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Цю стадыю трэба спрыяваць як кантракт межа вхіднымі дадзенымі і перакананымі выходнымі рэзультатамі. Назваць артыфакты, прадзефінавацыя перакананняў пра успех і адмова ад бяспрэчнага частковага завершэння.

Дзеянні змецелення 1/893: вымерыць час выканання, класію памылак і вітрату токенав для гэтага пункту, а потым вырашыць, чы робіцца змена на аднойчы прадзефінаванай сэтцы пытанняў, а не на аднойчы інформацыі.