ئالدى بىلەن بىر سۆزنى ئىزدەپ كۆرەيلى.harnessدېگەن ئىسىمنىڭ لۇغەتتىكى بىرىنچى مەنىسى تېخنىكىلىق ئاتالغۇ ئەمەس، بەلكىجابدۇق— كالا ياكى ئاتقا سېلىنىپ، ھارۋا تارتقۇزىدىغان ۋە يۈگۈرۈپ كونترولدىن چىقىپ كېتىشتىن ساقلايدىغان بىر يۈرۈش ئۈسكۈنە. تېخىمۇ ئېنىق ئېيتساق، harness پەقەتھارۋا تارتىپ ئىش قىلىدىغانجابدۇقنى كۆرسىتىدۇ؛ مىنىش ئېگىرى ۋە ئۈزەڭگۈ ئۇنىڭغا كىرمەيدۇ. بۇ سۆز تۇغۇلغاندىنلا ئىش ھايۋىنىغا قارىتىلغان. تىزگىن يۆنىلىشنى، ئېغىزلىق جىددىي توختاشنى باشقۇرىدۇ، ھارۋا ئوقى كۈچنى ھارۋىغا ئۆتكۈزىدۇ، قوغدىغۇچ تاسادىپىي زەخىمدىن ساقلايدۇ. ساھە يېقىنقى ئىككى يىلدا مودېلنى ئوراپ تۇرىدىغان سىستېمىنى Harness دەپ ئاتىدى؛ بۇ تاللاش راستچىل:ئىلگىرىكى بىر ماقالىدەبىز سىز ئۈچۈن 7×24 ئىش قىلىدىغان Agent نى «رەقەملىك ئىش ھايۋىنى» دەپ ئاتىغان. ئىش ھايۋىنىنى ئىشقا سېلىشتىن بۇرۇن جابدۇق سېلىش كېرەك.
بۇ قەۋەتكە نېمىشقا ئايرىم ماقالە يېزىش كېرەك؟ چۈنكى كۆپ تىلغا ئېلىنمايدىغان بىر پاكىت بار:مودېلنىڭ ئەقلى ئىجارىگە ئېلىنغان.سىز بىلەن رىقابەتچىڭىز ئىشلىتىدىغان API لار شۇ بىر نەچچىسى؛ مودېل ئىقتىدارىنىڭ يۇقىرى چېكى ھەممىگە ئوخشاش. سىزگە ھەقىقىي تەۋە بولغىنى مودېل سىرتىدىكى جابدۇق. ئوخشاش مودېلنىڭ قولىڭىزدا پاراڭ كۆزنىكى بولۇشى ياكى سىرتقا قويۇپ ئىش قىلدۇرالايدىغان سىستېما بولۇشىنى شۇ بەلگىلەيدۇ. ھازىر ساھە بۇنى بىر تەڭلىمە بىلەن ئىپادىلەيدۇ:Agent = Model + Harness. ئومۇمىي بايان ماقالىسىدە LangChain نىڭ تەجرىبىسى نەقىل قىلىنغان: مودېلنىڭ بىر قۇر كودىنىمۇ ئۆزگەرتمەي، پەقەت Harness نى ئالماشتۇرغاندا تېرمىنال ۋەزىپە نەتىجىسى 52.8% تىن 66.5% كە چىققان. ئون نەچچە پىرسەنت پەرق جابدۇقتىن كەلگەن.
شۇڭا بۇ ماقالە مودېلنى ئەمەس، جابدۇقنى چۇۋۇپ كۆرسىتىدۇ. تەركىبلەر تىزىملىكى بويىچە ماڭمايمىز؛ ئۇ ئاسرىغۇچىغا لازىم. ئىشلەتكۈچى كۆڭۈل بۆلىدىغىنى بىر سوئال:نېمىگە تايىنىپ ئۇنى ئىشقا سېلىشقا جۈرئەت قىلىمەن؟بۇنى تۆت كىچىك سوئالغا بۆلگىلى بولىدۇ: ئۇ نېمىگە تېگەلەيدۇ؟ ئىشنى بۇزسا قانداق قىلىمىز؟ ئۇنى كىم كۆزىتىدۇ؟ ئۇ قەيەردە ئىشلەيدۇ؟ HexClaw ماتورىنىڭ مەنبە كودىنى دەل مۇشۇ تۆت سوئال بويىچە تەكشۈرگىلى بولىدۇ.
Prompt(ئاخىرقى ماقالە) → Context(ئالدىنقى ماقالە) → Harness ▸ بۇ ماقالە → Loop(ئومۇمىي بايان)
Context نىڭ ئەستە ساقلاش تەرىپى ئۈچۈن «چۈش كۆرىدىغان Agent ئەستە ساقلىشى»غا قاراڭ
(جابدۇقنىڭ ئومۇمىي كۆرۈنۈشى. تۆت ئىشەنچ سوئالى تۆت بۇلۇڭدا، ئوتتۇرىدا ئىجارىگە ئېلىنغان ماتور؛ قوغدىغۇچ قەۋىتى يېقىندا چوڭ رېمونتتىن ئۆتتى.)

بىرىنچى سوئال: ئۇ نېمىگە تېگەلەيدۇ — قورال دائىرىسى ۋە ئىجازەت دەرۋازىسى
جابدۇقنىڭ بىرىنچى تاسمىسى تىزگىن. HexClaw ماتورىنىڭ قورال ئايلىنىشى بىرلا يولدا ماڭىدۇ، ھازىرقى Agent لارنىڭ ئاساسلىق ئۇسۇلىنى قوللىنىدۇ: ھەر ئايلانمىدا تولۇق قورال تىزىملىكى مودېلغا بېرىلىدۇ؛ مودېل قورال چاقىرىش قايتۇرسا ئىجرا قىلىپ داۋاملىشىدۇ، قايتۇرمىسا ئۇ جاۋاب بولىدۇ. ئادەتتىكى ئاساسلىق يولدا «بۇ ئايلانمىدا قورال بېرىلەمدۇ» دېگەن شاخ يوق —نېمىگە تېگەلەيدىغانلىقىنى قورالنى يوشۇرۇش ئەمەس، دەرۋازا بەلگىلەيدۇ. (بەزى كېلىشىم ئەھۋاللىرىدا قورال دائىرىسى تارىيىدۇ: مودېل مەلۇم قورالنىلا ئىشلىتىشكە مەجبۇرلىنىدۇ ياكى مەنبەگە قاراپ قورال تۆۋەن چېكى بېكىتىلىدۇ. بۇ يۆنىلىش بەلگىلەش ۋە خاتالىقنىڭ ئالدىنى ئېلىش؛ «كۆرمىسۇن»نى بىخەتەرلىك تەدبىرى قىلىش ئەمەس.)
ئىككى دەرۋازا بار. بىرىنچىسى ئىجازەت تەستىقى، سۈكۈتتىمۇ ئېچىلغان. ھەر قورالغا خەتەر دەرىجىسى بېرىلىدۇ —safe / sensitive / dangerous دېگەن ئۈچ دەرىجە. ئاقىۋەت پەيدا قىلىدىغان ھەرىكەتلەر (shell ئىجرا قىلىش، ھۆججەت يېزىش، سىرتقا ئۇچۇر ئەۋەتىش، ئىقتىدار ئۆزگەرتىش) قورال نامى، پارامېتىر ۋە سەۋەب بىلەن تەستىق تەلىپىگە ئورىلىپ ئالدى يۈزگە يوللىنىدۇ، سىزنىڭ ماقۇللۇقىڭىزنى كۈتىدۇ. تەستىقلىغاندا «بۇ سۆھبەتتە ئەستە ساقلا»نى تاللىسىڭىز، ئوخشاش قورال قايتا-قايتا ئاۋارە قىلمايدۇ. بۇ بانكا پۇكىيىدىكى قايتا تەكشۈرۈشكە ئوخشايدۇ: ھەرىكەت ئۆزى يامان نىيەتنى باھالىيالمايدۇ، ئەمما«ئاقىۋىتى بار» بولۇشنىڭ ئۆزى بىر توختاشقا ئەرزىيدۇ— ئۆزئارا تەسىرلىك ئەھۋالدا كود ئىجرا قىلىش، ھۆججەت ئۆزگەرتىش ۋە ئىقتىدار ئۆزگەرتىشنىڭ ھەممىسى ئالدى بىلەن سىزدىن سورايدۇ، ھېچكىم بۇنىڭ سىرتىدا ئەمەس.
ئىككىنچى دەرۋازا ھۆججەت سىستېمىسىنىڭ يېنىدا، ئۇسۇلى تېخىمۇ قىزىق. Agent يەرلىك ھۆججەتلەرنى توپلاپ بىلىم ئامبىرىغا كىرگۈزمەكچى بولسا، knowledge_ingest_pathقورالىنى چاقىرىدۇ. دىققەت: ئۇ پەقەتيولنىقوبۇل قىلىدۇ، مەزمۇننى ئەمەس. ھۆججەتنى كود ئۆزى ئوقۇيدۇ: بىر قېتىمدا ئەڭ كۆپ 200 ھۆججەت، توغرا UTF-8 تېكىست، بىخەتەر يول يېشىش تەلەپ قىلىنىدۇ؛ سىمۋوللۇق ئۇلانما ئارقىلىق چىقىپ كېتىش ۋە .. ئارقىلىق چەكتىن ئۆتۈش بىۋاسىتە رەت قىلىنىدۇ. مۇندەرىجە سانالغاندا ھەر تۈر قايتا يېشىلىپ، سىمۋوللۇق ئۇلانمىنىڭ ئايلىنىپ ئۆتۈشى توسۇلىدۇ. بۇ لايىھەنىڭ مەنىسى ئۈستىدە ئويلىنىشقا ئەرزىيدۇ:مودېل «ئوقۇدۇم» دېسە ھېساب ئەمەس؛ كود ئوقۇغان نەرسە ھېساب.«سانلىق مەلۇمات ئېلىش» ھوقۇقىنى مودېلدىن قايتۇرۇۋېلىش تەستىق كۆزنىكىدىنمۇ تۈپ دەرۋازا.
قورال دائىرىسىنىڭ يەنە بىر زامانىۋى ئاۋارىچىلىقى بار: زاۋۇتتىلا مۇقىملاپ قويۇلمايدۇ. MCP ئارقىلىق ئۈچىنچى تەرەپ قوراللىرى خالىغان چاغدا ئۇلىنىدۇ، Skill نى ئورنىتىش ۋە يېڭى قۇرۇشمۇ بولىدۇ. HexClaw بۇنىڭغا رەسمىي يول تەييارلىدى: ئىچىگە قۇرۇلغانSkill / MCP بازىرىرەسمىي hub ئامبىرىدىن تىزىملىك ئېلىپ، ئىزدەش، كۆرۈش ۋە بىر چېكىشتە ئورنىتىشنى تەمىنلەيدۇ. جابدۇققا داۋاملىق يېڭى زاپچاس قوشقىلى بولىدۇ، تەمىنلەش يولى ئوچۇق. بۇ Harness قا ئۆزىگە قايتىدىغان تەلەپ قويىدۇ:«جابدۇقنى ئۆزگەرتىش» ھەرىكىتىنىڭ ئۆزىمۇ جابدۇق دەرۋازىسىدىن ئۆتۈشى كېرەك.HexClaw create_skill، manage_skill، manage_mcp_server نىڭ ھەممىسىنى sensitive دەپ بېكىتىپ، تەستىق تەلەپ قىلىدۇ. كود بۇ ھەرىكەتلەرنى ئېنىق «ئىقتىدار كىرگۈزۈش / ئىقتىدار ئۆزگەرتىش» دەپ ئاتايدۇ (قايتىش سىنىقىدىكى ئىنگلىزچە ئات تېخىمۇ جانلىق:capability mutation). ھەقىقىي قىيىنى ئادەمسىز ئىشلىتىش: يېنىدا «رۇخسەت»نى چېكىدىغان ئادەم بولمىسا دەرۋازا قانداق ساقلىنىدۇ؟ HexClaw نىڭ ئۇسۇلىبۇ قوراللارنى قورال ساندۇقىدىن يوشۇرۇش ئەمەس— ئۇ كونا نۇسخىنىڭ ئۇسۇلى، قاتتىق كودلانغان چىقىرىۋېتىش تىزىملىكى ئىدى؛ ھازىر ماسلىشىش ئۈچۈنلا ساقلانغان قۇرۇق مەشغۇلاتقا ئايلاندى. ئۇنىڭ ئورنىنى ھەممە كۆرەلەيدىغان ۋە تەڭشىيەلەيدىغان ئاپتوماتىك رۇخسەت ماترىتساسى ئالدى. سۈكۈتتىكى دەرىجىدە (مەنبە كودتىكى function-first) ئادەمسىز ۋاقىتلىق ۋەزىپە ۋە webhook لار پەقەت ئوقۇش، تور كۆرۈش،قۇم ساندۇقىدائىجرا قىلىش، ھۆججەت تەھرىرلەش ۋە سىرتقا يەتكۈزۈش قاتارلىق كۈندىلىك ئىشلارنى ئاپتوماتىك رۇخسەت قىلىدۇ. ساھىب ماشىنىدا بىۋاسىتە shell ئىجرا قىلىشتەك «چەكتىن چىقىدىغان» ئىجرا يەنىلا تەستىققا ئۆتىدۇ. قەتئىي تۇتۇپ قالىدىغىنى ئىككى تۈر:ئىقتىدار ئۆزگەرتىش(يۇقىرىدىكى ئۈچ قورال) ۋەئۆزىگە يېڭى ۋاقىتلىق ۋەزىپە ئورۇنلاشتۇرۇش(ئىزاھ ئۇنى بىۋاسىتە «ئۆزىنى كۆپەيتىش ئايلىنىشى» — job نىڭ job قۇرۇشى دەپ ئاتايدۇ). تۈگمەن تارتىۋاتقان ھايۋان ئۆز جابدۇقىنى ئۆزگەرتەلمەيدۇ، ئۆزىگە يەنە ھايۋانمۇ ياللىيالمايدۇ. ئەمما ئۇنى توسۇۋاتقىنى «قورال يوشۇرۇلدى» ئەمەس، «دەرۋازا ياق دېدى». بۇ بۆلەكنىڭ بېشىدىكى سۆزگە ئۇلىنىدۇ:چەك دەرۋازىدىن كېلىدۇ، يوشۇرۇشتىن ئەمەس。
شۇنچە دەرۋازا دېگەندىن كېيىن، ئەمەلىي سوئال شۇ: بۇلار جانسىز بىر خىل چەكمۇ ياكى ئېھتىياجغا قاراپ تەڭشەلەمدۇ؟ تەڭشەكلەردىكىئاپتوماتلاشتۇرۇش ئىجازەتلىرىبېتى جاۋاب بېرىدۇ: يۇقىرىدىكى ماترىتسانى قولدا تەڭشىيەلەيدىغان تاختا قىلىپ يېيىپ بېرىدۇ:ئىقتىدار ئالدىن / قاتتىق تەستىق / تولۇق ئىقتىدار دېگەن ئۈچ تاللاش بار (ماتوردا «تەڭپۇڭ» ھالىتىمۇ بار، ئەمما تاللاشنى زىيادە كۆپەيتمەسلىك ئۈچۈن ئۈستەل يۈزى ئۇنىڭغا ئايرىم كارتا بەرمىگەن). ھەر دەرىجىنىڭ يېنىدا قايسى ئىقتىدار ئاپتوماتىك ئىجرا بولىدىغانلىقى، قايسىسى تەستىققا ئۆتىدىغانلىقى بىۋاسىتە يېزىلغان؛ «ئىقتىدار ئورنىتىش / ئۆزگەرتىش»مۇ ئايرىم قۇر. يېڭى Webhook نى ئۇلاپ، تېخى خاتىرجەم ئەمەسمۇ؟ ئالدى بىلەن «قاتتىق تەستىق»قا ئۆتۈپ، ھەر ئاپتوماتىك ۋەزىپىنىڭ سورىشىنى تەلەپ قىلىڭ؛ بىر نەچچە كۈن كۆزەتكەندىن كېيىن بوشىتىڭ. ئومۇمىي دەرىجىدىنمۇ ئىنچىكە قەۋەتۋەزىپە دەرىجىلىك ئىجازەت: بىر ۋەزىپە ئۈچۈن ئومۇمىي سۈكۈتنى بوشىتىش ھاجەتسىز، پەقەت شۇ ۋەزىپىگە كېرەكلىك ئىقتىدارنى رۇخسەت قىلىڭ. ۋەزىپە ئۆچۈرۈلسە ئىجازەتمۇ قايتۇرۇلىدۇ. ئىچىگە قۇرۇلغان تۈرى بولمىغان MCP ئۇلىغۇچ قوراللىرى ئادەمسىز ھالەتتە دەل مۇشۇ يولدىن ئۆتىدۇ.شۇڭا «ئۇنى ئىشقا سېلىشقا جۈرئەت قىلىش» ھەممىنى قويۇۋېتىش ياكى ھەممىنى چەكلەش دېگەن گەپ ئەمەس؛ ئۆلچىمى بار دەرۋازا.كېيىنكى ماقالە بىلەن چېگرانىمۇ ئايرىپ قويايلى: markdown شەكلىدىكى Skill باشقا نەرسە؛ ئۇ قورال ئەمەس، مودېلغا يېزىلغان يوليورۇق، ئاخىرقى ماقالىنىڭ تېمىسى.
(ئاپتوماتلاشتۇرۇش ئىجازەت بېتى. ئۈستىدە ئومۇمىي ئۈچ دەرىجە، ئاستىدا ئۈنۈملۈك سىياسەت ماترىتساسى: قايسى ۋەزىپە ئاپتوماتىك ئۆتىدۇ، قايسىسى تەستىققا ئۆتىدۇ — بۇ شۇئار ئەمەس، كۆرگىلى، تەڭشىگىلى ۋە تەكشۈرگىلى بولىدىغان دەرۋازا.)
ئىككىنچى سوئال: ئىشنى بۇزسا قانداق قىلىمىز — كونترول قىلىنغان مەغلۇبىيەت
ھايۋان پۇتلىشىدۇ، قورال ۋاقىتتىن ئېشىپ كېتىدۇ. جابدۇق يىقىلماسلىققا كاپالەت ئەمەس، يىقىلىشقا بەرداشلىق بېرىش ئۈچۈن. HexClaw ھەر قورال ئىجراسىنى قايتا سىناش قەۋىتىگە ئورايدۇ؛ سانلار چوڭ ئەمەس، ئەمما ھەر بىرىنىڭ سەۋەبى بار:
ئاخىرقى قۇر ئاچقۇچ. مەنبە كودنىڭ سىياسەت ئىزاھى روشەن: «پەقەت ئېنىق ۋاقىتلىق خاتالىقلارنى قايتا سىنا، نامەلۇم خاتالىققا ئېھتىياتچان مۇئامىلە قىل». تور تەۋرەپ كەتسە قايتا سىناشقا ئەرزىيدۇ؛ پارامېتىر خاتا بولسا يۈز قېتىم سىنىسىمۇ خاتا —قايتا سىناش تەلەي ئۈچۈن، bug ئۈچۈن ئەمەس. تور كۆرگۈچكە 120 سېكۇنت، كود ئىجراسىغا 60 سېكۇنت بېرىشمۇ ھەر بىرىنىڭ ھەقىقىي ۋاقىت تەقسىماتىغا ئاساسەن، بىر ئومۇمىي ساننىلا قويۇش ئەمەس.
بىر قېتىملىق مەغلۇبىيەتتىنمۇ كۆپرەك باشقۇرۇشقا تېگىشلىكى «پۈتمەي تۇرۇش». قورال ئايلىنىشىنىڭ ئايلانما خامچوتى بار: سۈكۈتتىكى چېكى 25. ئىزاھتا بۇ ساننىڭ نورمال ۋەزىپىگە يېتەرلىك بوشلۇق بېرىدىغانلىقى، «چەككە يېتىش نورمال ئاخىرلىشىش» ئىكەنلىكى، خاتالىق ئەمەسلىكى چۈشەندۈرۈلگەن. budget ھالىتىدە يەنە 50 ئايلانمىلىق مۇتلەق بىخەتەرلىك چېكى بار. ئومۇمىي باياندا كۆرگەن بۇ ئىككى ساننى بۇ يەردە قايتا ئوقۇغاندا مەنىسى باشقىچە:خامچوت ئىقتىدارنى چەكلەش ئەمەس، «بۇ ئىش پۈتمەيدۇ» دېگەن ئەھۋالغا مۇۋاپىق ئاخىرلىشىش بېرىش. كونترولدىن چىققان ئۇزۇن ۋەزىپە مەغلۇپ بولغان قىسقا ۋەزىپىدىن كۆپ قىممەت.
ئۈچىنچى سوئال: ئۇنى كىم كۆزىتىدۇ — ئىجراچىغا ئىشەنمەيدىغان باھالىغۇچىلار
بۇ مەن ئەڭ يېيىپ چۈشەندۈرگۈم كەلگەن بۆلەك. چۈنكى ئۇ جابدۇقتىكى ئەڭ كۈتۈلمىگەن نەرسىگە توغرا كېلىدۇ: ئىش ھايۋىنىغائۆزى باشقۇرالمايدىغان نازارەتچىبېرىش. پۇل-مۇئامىلە سىستېمىسىدا بۇ maker/checker دەپ ئاتىلىدۇ: ئىشنى بېجىرگۈچى بىلەن تەكشۈرگۈچى ئىككى ئادەم بولۇشى كېرەك. HexClaw ماتورىدا بىر ئائىلە باھالىغۇچى بار؛ ئورتاق يېرى بىرلا —ئىجراچىنىڭ ئۆزى توغرىسىدىكى دوكلاتىغا ھەرگىز ئىشەنمەيدۇ。
بىرىنچى باھالىغۇچى ئادەمسىز قوبۇل قىلىشتىكىقاتتىقلاشتۇرۇش قەۋىتى. ئادەمسىز ھالەت نېمىگە تېگەلەيدىغانلىقىنى سۈكۈتتە بىرىنچى سوئالدىكى ماترىتسا بەلگىلەيدۇ. ئەمما ماتور ئۇنىڭ ئۈستىگە چېتىشقا بولىدىغان تېخىمۇ قاتتىق باھالىغۇچى — مۇستەقىل خەتەر تەكشۈرگۈچى قالدۇرغان. ۋەزىپە تەسۋىرىنى بېرىپ، prompt پەقەت low / medium / high دېگەن بىر سۆز تەلەپ قىلىدۇ. بۇ چاقىرىشنىڭ MaxTokens ى پەقەت 16(ئىزاھمۇ تېجەشچان: «a one-word verdict — keep it cheap»، بىر سۆزلۈك ھۆكۈم، ئەرزان بولسۇن). قائىدىسى ئىنتايىن قاتتىق:پەقەت low ئۆتىدۇ؛ medium، high، دەرىجە ئايرىش مەغلۇبىيىتى ياكى باھالىغۇچىنىڭ ئۆزىمۇ تەڭشەلمىگەن بولسا ھەممىسى رەت. جاۋاب ئېنىق low بولمىسا high تەرەپكە ئېلىنىدۇ. مەنبە كود ئېنىق دەيدۇ: ئۇ سۈكۈتتە ماترىتسانى ئالماشتۇرمايدۇ، پەقەت «تېخىمۇ چىڭ تۇتۇش» ئۈچۈن؛ تېخىمۇ ئېھتىياتچان سىياسەتكە ئېھتىياجلىق ئورۇنلاشتۇرۇشلار ئۆزى ئۇلايدۇ. بۇ لايىھە fail-closed نىڭ دەرسلىك مىسالى: دەرۋازا بۇزۇلسا قۇلۇپلىنىدۇ، ئېچىلىپ كەتمەيدۇ.
ئىككىنچى باھالىغۇچى سۈپەتكە نومۇر بېرىدۇ: Agent نىڭ ھەر قورال چاقىرىش ئىپادىسى LLM-as-judge ئارقىلىق ئەۋرىشكىلەپ باھالىنىدۇ، ناچار ئىپادە Skill ياخشىلاش لايىھەسىگە ئايلىنىدۇ. ئۇنىڭ لايىھە تاللىشى توغرىسىدىكى ئىزاھنى ئەسلى مەنىسى بىلەن نەقىل قىلايلى:
«ھەر قورال چاقىرىشنى نومۇرلاش LLM نورمىسىنى سەرپ قىلىدۇ، شۇڭا ئەۋرىشكىلەش نىسبىتى قوللىنىلىدۇ (سۈكۈت 0.1 = 10%)… LLM چاقىرىش مەغلۇپ بولسا، ۋاقىتتىن ئاشسا ياكى يېشىش مەغلۇپ بولسا 10 نومۇر قايتۇر (fail-open)،judge تەۋرىنىشى سەۋەبىدىن خاتا draft شاۋقۇنى پەيدا قىلما。"
— skill_judge.go بېشىدىكى ئىزاھ (بۇ ماقالىدىكى «ياخشى جۈملىلەر» سەھنىدىن ئەمەس، كود ئىزاھىدىن كەلگەن)
بۇ ئىككى باھالىغۇچىنى بىللە كۆرسەك، كۆزدىن قاچىدىغان بىر قارىمۇقارشىلىق بار: خەتەر تەكشۈرگۈچى بۇزۇلسا high (fail-closed)، سۈپەت باھالىغۇچى بۇزۇلسا تولۇق نومۇر (fail-open) قايتۇرىدۇ —بىر سىستېمىدىكى ئىككى دەرۋازا قەستەن قارىمۇقارشى يۆنىلىشتە مەغلۇپ بولىدۇ. بۇ بىردەك ئەمەسلىك ئەمەس؛ ئەكسىچە ئەڭ بىردەك جايى: كىرىشنى ساقلايدىغان دەرۋازا بۇزۇلسا قۇلۇپلىنىشى، قوشۇمچە پايدا بېرىدىغان دەرۋازا بۇزۇلسا يول بېرىشى كېرەك. دەرۋازىنىڭ يۆنىلىشى ئۇنىڭ بارلىقىدىن مۇھىم؛ ئورنىتىشتىن بۇرۇن بۇزۇلغان كۈنى قايسى تەرەپكە يىقىلىشىنى ئويلاڭ.
ئۈچىنچى باھالىغۇچى ماتېماتىكا قاتارلىق قايتا ھېسابلاپ تەكشۈرگىلى بولىدىغان ئىشلارغا مەسئۇل. ھەل قىلغۇچى Agent جاۋاب بەرگەندىن كېيىن verifier ناملىق كىچىك رولپۈتۈنلەي يېڭى كونتېكىستتاكود بىلەن مۇستەقىل ھېسابلاپ، ئاندىن سېلىشتۇرىدۇ. ئۇنىڭدا پەقەت code_exec بىرلا قورال بار؛ ھەل قىلىش جەريانىنى كۆرمەيدۇ، ئۆزى ھېسابلىشى كېرەك. تۆتىنچى باھالىغۇچى ئەڭ ئاددىي، ئەڭ كەسكىن؛ «دېگەن بىلەن ھېساب ئەمەس»نى باشقۇرىدۇ: ۋاقىتلىق ۋەزىپە ماتېرىيالنى بىلىم ئامبىرىغا ساقلىدىم دېدىمۇ؟ قورال چاقىرىش خاتىرىسىنى تەكشۈر:
ۋەزىپە «ئامبارغا كىرگۈزۈش تامام» دېسىمۇ، قورال چاقىرىش تىزىملىكىدە شۇ قېتىملىق knowledge_ingestيوق بولسا مەغلۇپ دەپ ھۆكۈم قىلىنىدۇ. سەۋەبى بىۋاسىتە: «مۇۋەپپەقىيەت دوكلات قىلدى، ئەمما ئامبارغا كىرگۈزۈش قورالىنى چاقىرمىدى — ھېچقانداق ھۆججەت ساقلانمىدى». بۇ يەتتە قۇر كود پۈتكۈل باھالىغۇچى ئائىلىسىنىڭ دۇنيا قارىشىنى يىغىنچاقلايدۇ:دېگەن ھېساب ئەمەس، چاقىرغان ھېساب؛ چىقىرىلما ئەمەس، ئەمەلىي تەسىر ھېساب.يەنە بىرى تەرتىپكە مەسئۇل: كۆپ Agent تارماقلىنىشىنىڭ fan-out قوغدىغۇچىسى بار؛ دەرەخلەر ئارا ئومۇمىي سان چەككە يەتسە يېڭى تارماق ۋەزىپە رەت قىلىنىدۇ. بۇ Loop ئومۇمىي بايانىنىڭ دائىرىسى، بۇ يەردە تەكرارلىمايمىز.
تۆتىنچى سوئال: ئۇ قەيەردە ئىشلەيدۇ — يېقىندا چوڭ رېمونت قىلىنغان قۇم ساندۇقى
ئالدىنقى ئۈچ سوئالغا HexClaw تولۇق جاۋاب بېرىدۇ. تۆتىنچىسىنى ئايرىپ ئېيتىش كېرەك، ئالدى بىلەن بار بولغىنىنى: كود ئىجرا قىلىدىغان code_exec مۇستەقىل قۇم ساندۇقى ئابستراكسىيە قەۋىتىدىن ئۆتىدۇ. تەڭشەكنى قىزىق يېڭىلىغىلى بولىدۇ؛ چەك ئۆزگەرسە قايتا قوزغىتىشسىز قۇم ساندۇقى نۇسخىسى قايتا قۇرۇلىدۇ. macOS تا Seatbelt profile چەكلىمىسى بار. ۋاقىتلىق ۋەزىپىنىڭ script قۇم ساندۇقى«رەقەملىك ئىش ھايۋىنى» ماقالىسىدەتەپسىلىي يېزىلغان: Starlark تەرجىمانى، بىر HTTP ئېلىشنىڭ چېكى 8 MiB، يۈز مىليون يوليورۇق قەدىمى، 300 سېكۇنت ۋاقىت چېكى — ئۆزىنى ئوڭشايدىغان script قەپەز ئىچىگە تۈزۈلىدۇ.
بۇ قوغدىغۇچ يېقىندا چوڭ رېمونتتىن ئۆتتى. كونا code_exec تېخىمۇ كۆپ كود پارچىسى ئىجراچىسىغا ئوخشايتتى: كودنى بېرىپ، نەتىجە ئېلىش بىلەنلا تۈگەيتتى. رېمونت ئىجرا ھالىتىنى تۆت دەرىجىگە كېڭەيتتى —snippet / file / module / project: بىر كود پارچىسىدىن ئامباردىكى ھۆججەت، مودۇل، ئاندىن خىزمەت رايونىدا تۈر بۇيرۇقى ئىجرا قىلىشقىچە. نەتىجە ھۆججەتلىرى (دىئاگرامما، CSV، خاتىرە) قايتۇرۇلىدۇ؛ ئۇزۇن چىقىرىلما چەكلىنىدۇ. رۇخسەتسىز ساھىب يولى ئايرىۋېتىلگەن ئىجرا مۇھىتىغا ئاشكارىلانمايدۇ (project پەقەت ئېنىق رۇخسەت قىلىنغان تۈر يىلتىزىنى كۆرسىتىدۇ، secrets deny قائىدىسى يەنە ئالدىن يوشۇرىدۇ). ھەتتا قورال ئىقتىدارى ئاجىز مودېلغا كىرىش يەكۈنىمۇ بار: پەقەت mode=file ئەۋەتىدىغان مودېلمۇ توغرا ئىجرا ئۇسۇلىغا يېتەكلىنىدۇ. ئەڭ ئېغىر سالماقلىق ئۆزگىرىش شۇكى، بۇ قۇم ساندۇقىنىڭئۆزىگە خاس CI سىبار؛ مەشغۇلات سىستېمىلىرى ئارا ماترىتسا ئېقىمى مەخسۇس ئۇنى سىنايدۇ. «كۆپ سۇپىدا ئىشلىگەندەك كۆرۈنۈش» كونا كېسىلى CI غا قادالدى. جابدۇقنىڭ تۆت قىسمى بۇنىڭ بىلەن ئورنىدا. قوغداشنى يەنە چوڭقۇرلاشتۇرغىلى بولىدۇ (تېخىمۇ تولۇق تايىنىشچانلىق ئورنىتىش، چوڭقۇر سۇپا ئايرىمىسى پىلاندا)، ئەمما«ئىشقا سېلىش»تىكى ئىش «بىر پارچە كودنى ئىجرا قىل»دىن «مېنىڭ تۈرىمنى ئىشلىتىپ بەر»گە كۆتۈرۈلدى。
بۇ قۇم ساندۇقىدا ئاسان كۆزدىن قاچىدىغىنى بىر نەچچە مەنبە چېكى ئەمەس، بەلكىمەخپىي ئۇچۇرلىرىڭىزنىمۇ سىرتتا قالدۇرىدىغانلىقى. ھەتتا project ھالىتىدە پۈتۈن $HOME نى خىزمەت رايونى قىلىپ بەرسىڭىزمۇ، سۈكۈتتىكى deny قائىدىلىرى بەزى يوللارنى ئالدىن يوشۇرىدۇ: سىرتقى كىنىشكا مۇندەرىجىلىرى ~/.ssh、~/.aws، gcloud، gnupg، شۇنداقلا HexClaw نىڭ ئۆز ھايات تومۇرى — باش ئاچقۇچ master.key(ساقلانغان بارلىق شىفىرلانغان كىنىشكىنى يېشەلەيدۇ)، تەڭشەك ھۆججىتى hexclaw.yaml(ھەر provider نىڭ API key ى)، شىفىرلانغان ئامبار data.db. بۇنىڭغا يەنە DenyLoopbackقوشۇلىدۇ: كود تورغا چىقىپ بەت ئالالايدۇ، API چاقىرالايدۇ، ئەمما يەرلىك loopback قا يېتەلمەيدۇ؛ ئادەمسىز Agent نىڭ loopback ئارقىلىق يەرلىك باشقۇرۇش ئېغىزىغا تەگكۈزۈپ ئۆز ھوقۇقىنى ئۆستۈرۈشىگە يول قويۇلمايدۇ (SSRF ئارقىلىق ھوقۇق ئۆستۈرۈشنىڭ تىپىك يۈزى). بۇ يەردە سۇپا چېكىنى راست ئېيتىش كېرەك: macOS تا loopback نى Seatbelt قۇم ساندۇقى قەۋىتىدىن مەجبۇرىي توسىدۇ؛ Linux تا ھازىر net namespace ئايرىلمىغان، loopback قا يەتكىلى بولىدۇ. بۇ مەلۇم ئىقتىدار بوشلۇقى، ئۈستۈنكى قەۋەت ياكى ئورۇنلاشتۇرۇش تەرەپ تولدۇرۇشى كېرەك.ئەمما قەپەزنىڭ مەقسىتى روشەن: قانچىلىك ئۇزۇن ئىجرا بولۇشنىلا ئەمەس، نېمىنى ئوقۇيالايدىغانلىقى ۋە قەيەرگە ئۇلىنالايدىغانلىقىنىمۇ باشقۇرىدۇ.
ساھە باشلامچىلىرى ئوخشاش ئىشنى قىلىۋاتىدۇ، پەقەت ئاتىلىشى باشقا
كەڭرەك قارايدىغان بولساق، ئالدىنقى قاتاردىكى مودېل شىركەتلىرىنىڭ Agent مەھسۇلات ھۆججىتىدىكى ئەڭ ئۇزۇن بابلارنىڭ ھەممىسى جابدۇق توغرىسىدا. بۇ قەۋەتنىڭ ئورتاق نامى harness («جابدۇق» لۇغەۋى تەرجىمە، بىز ئىش ھايۋىنى مىسالىغا ئۇلاپ ئىشلەتتۇق). ئەمما ھەر مەھسۇلات ھۆججىتىدە نامى ئوخشىمايدۇ: OpenAI Agents SDK كىرگۈزۈش-چىقىرىش قوغداشنى بىرىنچى دەرىجىلىك قىلىپ guardrails دەيدۇ. Codex يەرلىك قۇم ساندۇقى سۇپىغا بۆلۈنىدۇ: macOS تا Seatbelt، Linux/WSL2 ئاساسلىق يولىدا bubblewrap (CLI sandbox helper نىڭ Landlock/seccomp ئۇسۇلىمۇ بار)، Windows تا يەرلىك Windows sandbox. Anthropic Claude Agent ئۈچۈن تولۇق permissions ۋە sandboxing ھۆججىتى يازغان، ئۆز sandbox-runtime ىنىمۇ ئوچۇق مەنبە قىلغان. ئۇنىڭ چۈشەندۈرگەن تەھدىت مودېلى يۇقىرىدىكى secrets يوشۇرۇش بىلەن ئوخشاش: تور ئايرىمىسى بولمىسا بۇزۇپ كىرىلگەن Agent SSH key ڭىزنى سىرتقا ئەۋەتەلەيدۇ. Google ADK بولسا callbacks ئارقىلىق قورال چاقىرىش ئالدى-كەينىدە دەرۋازا قويىدۇ. ئىبارىسى ئوخشىمىسىمۇ، يۆنىلىشى ئوخشاش —مودېل ساتقۇچىلارنىڭ ئۆزىمۇ قايتا-قايتا «پەقەت مودېل بىلەن يولغا چىققىلى بولمايدۇ» دەيدۇ. بۇ «Agent = Model + Harness» تەڭلىمىسىنىڭ ئەڭ كۈچلۈك ئىسپاتى بولسا كېرەك: ئوڭ تەرەپنىڭ بىرىنچى قىسمىنى ياسىغۇچىلار ئىككىنچىسىنى پۈتۈن كۈچى بىلەن تولۇقلاۋاتىدۇ. ئاكادېمىيەمۇ بۇ يىل گەپنى ئېنىق قىلدى؛ بىر ماقالىنىڭ نامى Harness as an Asset— جابدۇقنى مۈلۈك دەپ قاراش. بۇ تۆت سۆز «مودېل ئىجارىگە، جابدۇق ئۆزىڭىزگە» دېگەننىڭ ئاكادېمىيەچە ئىپادىسى.
بۇ يەردە ئاتالغۇنىمۇ ئايرىش كېرەك: «Harness Engineering» نى بۇ يىل ئىككى تۈركۈم ئىككى يۆنىلىشكە تارتىۋاتىدۇ، ئاسان ئارىلىشىدۇ. OpenAI نىڭ 2-ئايدىكى Codex ماقالىسى بىلەن Martin Fowler نىڭ ئوخشاش ناملىق ئۇزۇن ماقالىسى ئۇنى بىرتەتقىق قىلىپ ئېچىش ئەندىزىسىدەپ قوللىنىدۇ: ئىنژېنېر كودنى ئۆزى يېزىش ئورنىغا چەكلىمە (AGENTS.md، lint قائىدىسى، Ralph تىپىدىكى ئۆزى ئايلىنىش) يېزىپ، پۈتۈن كود ئامبىرىنى Agent كە يازدۇرۇدۇ. بۇ «Agent بىلەن يۇمشاق دېتال ياساش» جابدۇقى، ئېچىش ئۈستىلىگە يۈزلەنگەن. بۇ ماقالە بولسا باشتىن-ئاخىر يەنە بىر قەۋەت —ئىجرا ۋاقتىدامودېلنى ئوراپ، مەھسۇلاتىڭىزدىكى Agent نى ئىش قىلىشقا جۈرئەت قىلدۇرۇپ، ئاۋارىچىلىكتىن ساقلايدىغان جابدۇقنى سۆزلەيدۇ. ئىككىسىمۇ ھەقىقىي، ئىككىسىمۇ تېز تەرەققىي قىلىۋاتىدۇ، ئەمما بىر نەرسە دەپ ئارلاشتۇرماڭ. بۇ يۈرۈشلۈك كېيىنكىسىنى سۆزلەيدۇ؛ ئالدىنقىسى بىزنىڭClaude Code SOP ماقالىمىزگە تېخىمۇ يېقىن، كېيىن ئايرىم يېزىمىز.
يۈرۈشلۈك تېمىسىغا قايتايلى. ئالدىنقى ماقالە ئىزدەپ ئېلىش زەنجىرى Agent نىڭ ھەر ئايلانمىداكۆرگەن نەرسىسىنى ئىشەنچلىك قىلىشقامەسئۇل دېگەن. بۇ ماقالە بولسا كۆرىدىغاننى كۆرگەندىن كېيىن ئۇنىڭقىلىدىغان ھەرىكىتى كونترولدا بولۇشىنىسۆزلەيدۇ. ئىسپات ئىشەنچلىك، ھەرىكەت كونترولدا؛ بۇ ئىككى قەۋەت بىللە بولغاندىلا «ئۇنى ئىشقا سېلىشقا جۈرئەت قىلىش» تېخنىكىلىق مەنىگە ئىگە، قۇرۇق باتۇرلۇق ئەمەس.
ئەمما جابدۇق بىلەنلا ھېكايە تۈگىمەيدۇ. سىز بۇ ماقالىدە سۆزلەنگەنلەرنىڭ ھەممىسىنىڭقاتتىق دەرۋازائىكەنلىكىنى بايقىغان بولۇشىڭىز مۇمكىن: تەستىق، ۋاقىت چېكى، ھۆكۈم، قەپەز — ھەممىسى كود بىلەن مەجبۇرىي ئىجرا قىلىنىدۇ. لېكىن ماتور ھەر ئايلانمىدا مودېلغا بەرگەن نەچچە مىڭ خەتلىك system prompt تا يەنە كۆپ «يۇمشاق» چەكلىمە بار: خاراكتېرى، ئىنتىزامى، قاچان سورىشى ۋە قاچان قىلماسلىقى. قاتتىق دەرۋازا مەغلۇبىيەتنى باشقۇرىدۇ، يۇمشاق چەكلىمە كۈتۈلمىنى بەلگىلەيدۇ. بۇ ئەڭ يۇمشاق، ئەڭ ئاستىدىكى قەۋەت ساھەدە Prompt دەپ ئاتىلىدۇ، تۆت ئەۋلاد ئەندىزىنىڭ بىرىنچىسى. كېيىنكى ئاخىرقى ماقالىدە ئۇنىڭ ئۆلمىگەنلىكى، بەلكى كېلىشىمگە چۆككەنلىكىنى سۆزلەيمىز.
تۆت ئەۋلاد ئەندىزە يۈرۈشلۈكى
▸ Loop · ئومۇمىي بايان ئوچۇق مەنبە Agent نىڭ كودىنى ئېچىپ، Prompt تىن Loop قا قەدەر تۆت ئەۋلاد ئەندىزىنى قەۋەتمۇ-قەۋەت سېلىشتۇرۇش
▸ Context · ماتېرىيال تەرىپى RAG نىڭ ھەقىقىي قىيىنى ئىزدەپ قايتۇرۇش ئەمەس، «جاۋابقا ئوخشايدىغان شاۋقۇن»نى Loop سىرتىدا قالدۇرۇش
▸ Context · ئەستە ساقلاش تەرىپى «چۈش كۆرىدىغان» Agent ئەستە ساقلىشى: HexClaw نىڭ چۈشى ئۆز كومپيۇتېرىڭىزدا
▸ Prompt · ئاخىرقى ماقالە ھەممە ئۇنى ئۆلدى دەيدۇ، ئەمەلىيەتتە ئۇ Agent نىڭ ئەڭ ئاستىدىكى كېلىشىمگە چۆكتى (ئاخىرقى ماقالە، پات يېقىندا ئېلان قىلىنىدۇ)
تېخىمۇ كۆپ ئالدىنقى ماقالىلەر
▸ HexClaw نىڭ «رەقەملىك ئىش ھايۋىنى»نى يېتىشتۈرۈش خاتىرىسى: بىر جۈملىنى ئۆزىنى ئوڭشايدىغان قۇم ساندۇقى script ىغا تۈزۈش
▸ HexClaw ئارقىسىدىكى Claude Code SOP: لايىھە يېتەكچىلىكى × سىناقنى تاماملاش × كۆپ Agent ھەمكارلىقى
پايدىلانغان مەنبەلەر
· OpenAI، Agents SDK — Guardrails رەسمىي ھۆججىتى؛ Codex قۇم ساندۇقى (macOS Seatbelt / Linux·WSL2 bubblewrap، CLI helper دا Landlock+seccomp / Windows يەرلىك sandbox، unelevated قايتىش يولىدا چەكلەنگەن token)
· Anthropic، Claude Agent نىڭ permissions / sandboxing ھۆججىتى؛ ئوچۇق مەنبە sandbox-runtime
· Google، Agent Development Kit (ADK) — callbacks مېخانىزمى
· LangChain، ئوخشاش مودېلنى (GPT-5.2-Codex مۇقىم) ساقلاپ Harness ئالماشتۇرۇلغان Terminal-Bench 2.0 سېلىشتۇرما تەجرىبىسى (52.8% → 66.5%، بۇ يۈرۈشلۈكنىڭ ئومۇمىي بايانىغا قاراڭ)
· Harness as an Asset: Enforcing Determinism via the Convergent AI Agent Framework (CAAF)، arXiv:2604.17025 — «جابدۇق مۈلۈك»نىڭ ئاكادېمىيەچە ئىپادىسى
· ئاتالغۇ ئايرىمىسى: OpenAI نىڭ «Harness engineering: leveraging Codex in an agent-first world» (2026-02) ۋە Martin Fowler نىڭ ئوخشاش ناملىق ماقالىسى «ئادەم چەكلىمە يازىدۇ، Agent كود يازىدۇ» دېگەن ئېچىش ئەندىزىسىنى كۆرسىتىدۇ؛ بۇ يەردىكى «ئىجرا ۋاقتى جابدۇقى» بىلەن نامى ئوخشاش، مەنىسى ئايرىم.
· maker/checker (تۆت كۆز پىرىنسىپى)، بانكا ساھەسىدىكى ئورتاق ئىككى ئادەملىك قايتا تەكشۈرۈش كونتروللۇقى
· ماقالىدىكى بارلىق HexClaw مېخانىزمى ۋە تۇراقلىق سانلار 2026-07-04 كۈنى ئامبارنىڭ main تارمىقىدىكى كودقا قاراپ تەكشۈرۈلگەن (code_exec قۇم ساندۇقىنىڭ يېڭىلىنىشى، snippet / file / module / project تۆت ئىجرا ھالىتى ۋە كۆپ سۇپا CI سى ھەممىسى main غا كىرگۈزۈلگەن).