Code Velocity
Mjetet e Zhvilluesit

Subagjentët Codex: Përmirësimi i Flukseve të Punës për Zhvillimin e AI

·7 min lexim·OpenAI·Burimi origjinal
Ndaj
Diagram që ilustron subagjentë të shumtë të AI duke punuar paralelisht, të orkestruar nga një agjent kryesor Codex, me shigjeta që tregojnë rrjedhën e të dhënave dhe shpërndarjen e detyrave.

I would like to review the following points on the current PR (this branch vs main). Spawn one agent per point, wait for all of them, and summarize the result for each point.

  1. Security issue
  2. Code quality
  3. Bugs
  4. Race conditions
  5. Test flakiness
  6. Maintainability of the code

Në këtë skenar, Codex ka të ngjarë të lëshojë gjashtë subagjentë të veçantë, secili i specializuar në një nga pikat e rishikimit të listuara. Pasi çdo agjent të përfundojë analizën e tij, Codex do të përpilojë gjetjet në një raport të vetëm, të strukturuar, duke ofruar një pasqyrë holistike të kërkesës së tërheqjes. Kjo shembullon efikasitetin e fituar duke shpërndarë ngarkesën e punës midis entiteteve të specializuara të AI-së.

## Menaxhimi dhe Sigurimi i Ekosistemit Tuaj të Subagjentëve

Menaxhimi efektiv dhe siguria e fortë janë konsiderata kyçe kur punoni me subagjentë. Codex ofron mjete dhe mekanizma për të mbikëqyrur aktivitetet e subagjentëve dhe për të siguruar operacione të sigurta brenda mjediseve të tyre sandbox.

Në sesionet interaktive CLI, zhvilluesit mund të përdorin komandën `/agent` për të kaluar midis thread-eve aktive të agjentëve, për të inspektuar proceset në vazhdim, ose për të drejtuar një subagjent të caktuar. Ky kontroll granular lejon rregullime në kohë reale dhe monitorim të progresit të agjentit individual. Ju gjithashtu mund t'i kërkoni në mënyrë eksplicite Codex-it të ndalojë një subagjent në ekzekutim ose të mbyllë thread-e të përfunduara për të menaxhuar burimet dhe për t'u fokusuar.

Siguria është parësore, dhe subagjentët trashëgojnë politikën aktuale të sandbox-it nga sesioni kryesor i Codex-it. Kjo siguron që operacionet e tyre t'u përmbahen rregullave të paracaktuara të sigurisë dhe aksesit. Kur kërkesat për miratim lindin nga thread-et inaktive të agjentëve, veçanërisht në sesionet interaktive CLI, Codex i shfaq me inteligjencë këto te përdoruesi. Një mbivendosje miratimi do të tregojë thread-in burimor, duke ju lejuar të shtypni 'o' për të hapur dhe inspektuar atë thread përpara se të merrni një vendim të informuar për të miratuar, refuzuar ose përgjigjur kërkesës. Kjo parandalon miratimet e verbërta dhe ruan mbikëqyrjen e zhvilluesit.

Për rrjedhat jo-interaktive ose situatat kur nuk mund të shfaqet një miratim i ri, çdo veprim që kërkon miratim të ri do të dështojë automatikisht, me Codex që raporton gabimin te fluksi i punës prind. Ky mekanizëm i sigurisë parandalon veprimet e paautorizuara në kontekstet e automatizuara. Për më tepër, Codex riaplikon mbishkrimet e kohës së ekzekutimit të kthimit prind—si ndryshimet e bëra përmes `/approvals` ose flamurit `--yolo`—te fëmijët e krijuar, duke siguruar qëndrime të qëndrueshme sigurie në të gjithë hierarkinë e agjentëve. Për përdoruesit e avancuar, është gjithashtu e mundur të mbishkruhet konfigurimi i sandbox-it për [agjentë të personalizuar](#defining-custom-subagents-for-tailored-tasks) individualë, duke lejuar kontroll të hollësishëm mbi lejet e tyre, për shembull, duke shënuar një agjent si 'lexim-vetëm'.

## Përcaktimi i Subagjentëve të Personalizuar për Detyra të Përshtatura

Ndërsa Codex ofron disa agjentë të integruar, si `default` për qëllime të përgjithshme, `worker` për detyra të fokusuara në ekzekutim, dhe `explorer` për eksplorim të bazës së kodit me intensitet leximi, fuqia e vërtetë e sistemit të subagjentëve qëndron në zgjerueshmërinë e tij. Zhvilluesit mund të përcaktojnë **agjentët e tyre të personalizuar** për të adresuar kërkesa shumë të specializuara, duke përshtatur sjelljen e AI-së me kontekste unike projekti.

Agjentët e personalizuar përcaktohen duke përdorur skedarë TOML të pavarur. Këta skedarë mund të vendosen në `~/.codex/agents/` për agjentët personal ose `.codex/agents/` për agjentët e fushëveprimit të projektit. Çdo skedar TOML vepron në thelb si një shtresë konfigurimi, duke lejuar agjentët e personalizuar të mbishkruajnë cilësimet që përndryshe do të trashëgoheshin nga sesioni prind. Kjo përfshin parametra kritikë si modeli i AI-së i përdorur, përpjekja e tij për arsyetim, modaliteti i sandbox-it, dhe madje konfigurimet specifike të aftësive.

Çdo skedar i pavarur i agjentit të personalizuar *duhet* të përcaktojë fushat e mëposhtme:

*   **`name`**: Identifikuesi unik i agjentit, të cilin Codex e përdor kur e krijon ose i referohet atij.
*   **`description`**: Udhëzime të lexueshme nga njeriu që ndihmojnë Codex-in të kuptojë kur të vendosë këtë agjent.
*   **`developer_instructions`**: Grupi thelbësor i udhëzimeve që diktojnë sjelljen dhe logjikën operative të agjentit.

Fusha opsionale si `nickname_candidates`, `model`, `model_reasoning_effort`, `sandbox_mode`, `mcp_servers`, dhe `skills.config` gjithashtu mund të përfshihen. Nëse lihen pa specifikuar, këto cilësime do të trashëgohen nga sesioni prind, duke thjeshtuar konfigurimin aty ku parazgjedhjet janë të pranueshme. Për praktikat më të mira në inxhinierinë e kërkesave (prompt engineering), e cila ndikon drejtpërdrejt në udhëzimet e agjentit, referojuni burimeve si [Codex Prompting Guide](/sq/codex-prompting-guide).

Fusha `name` është identifikuesi përfundimtar për një agjent të personalizuar. Ndërsa përshtatja e emrit të skedarit me emrin e agjentit është një konvencion i zakonshëm dhe i rekomanduar, fusha `name` brenda skedarit TOML është burimi përfundimtar i së vërtetës. Fusha `nickname_candidates` është një shtesë e dobishme për përvojën e përdoruesit, duke lejuar Codex-in të caktojë emra shfaqjeje më të lexueshëm për agjentët e krijuar, gjë që është veçanërisht e dobishme në skenarë kompleksë me shumë agjentë.

## Cilësimet Globale dhe Konfigurimi i Avancuar i Subagjentëve

Përtej përcaktimeve individuale të agjentëve të personalizuar, Codex ofron cilësime globale të konfigurimit për të menaxhuar sjelljen e përgjithshme të flukseve të punës të subagjentëve. Këto cilësime gjenden zakonisht nën seksionin `[agents]` në skedarin tuaj kryesor të konfigurimit, duke ofruar kontroll të centralizuar mbi alokimin e burimeve dhe parametrat operacionalë.

Këtu është një shpjegim i cilësimeve kyçe globale të subagjentëve:

| Fusha                      | Lloji  | Kërkohet | Qëllimi                                                                                                                                                                                                                                                                                                 |
| :------------------------- | :----- | :------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `agents.max_threads`       | numër  | Jo       | Kufizon numrin e thread-eve të agjentëve të hapur njëkohësisht. Vlera e parazgjedhur është `6` nëse nuk është caktuar.                                                                                                                                                                                     |
| `agents.max_depth`         | numër  | Jo       | Kufizon thellësinë e folezimit të agjentëve të krijuar (sesioni rrënjësor fillon nga 0). Vlera e parazgjedhur është `1`. Parandalon delegimin rekursiv përtej fëmijëve të menjëhershëm për të menaxhuar përdorimin e tokenave dhe vonesën.                                                                         |
| `agents.job_max_runtime_seconds` | numër  | Jo       | Vendos kohën maksimale të parazgjedhur për punëtorin për punët `spawn_agents_on_csv`. Nëse nuk është caktuar, vlera e parazgjedhur është `1800` sekonda (30 minuta).                                                                                                                                       |

Cilësimi `agents.max_threads`, me vlerë parazgjedhjeje `6`, siguron një mbrojtje kundër konsumit të tepërt të burimeve duke kufizuar numrin e subagjentëve që mund të operojnë njëkohësisht. Cilësimi `agents.max_depth`, me vlerën e tij parazgjedhjeje `1`, është veçanërisht i rëndësishëm. Ndërsa folezimi më i thellë mund të duket tërheqës për delegim kompleks, rritja e kësaj vlere mund të çojë në rritje të ndjeshme të përdorimit të tokenave, vonesës dhe konsumit lokal të burimeve për shkak të ndarjes së përsëritur. Përgjithësisht rekomandohet të ruhet parazgjedhja nëse një model specifik i delegimit rekursiv nuk është absolutisht i nevojshëm dhe i menaxhuar me kujdes.

Skedarët e agjentëve të personalizuar gjithashtu mund të përfshijnë çelësa të tjerë të mbështetur `config.toml`, duke zgjeruar konfigurueshmërinë e tyre përtej vetëm fushave të detyrueshme. Kjo qasje modulare dhe e shtresëzuar e konfigurimit siguron që zhvilluesit të kenë kontroll të hollësishëm mbi agjentët e tyre të AI-së, duke i lejuar ata të optimizojnë për performancën, koston dhe sigurinë të përshtatur sipas nevojave të tyre specifike të zhvillimit. Duke kuptuar dhe shfrytëzuar këto aftësi të fuqishme të subagjentëve, zhvilluesit mund të shtyjnë kufijtë e kodimit të asistuar nga AI dhe të përmirësojnë ndjeshëm flukset e tyre të punës të zhvillimit.

Pyetjet e bëra shpesh

What are Codex subagents and how do they enhance AI development workflows?
Codex subagents are specialized AI agents that can be spawned in parallel by a primary Codex instance to tackle complex, multi-faceted tasks. They significantly enhance AI development workflows by enabling the division of labor across different agents, each focusing on a specific aspect of a task. This parallel processing capability is particularly beneficial for computationally intensive or intricate operations like comprehensive codebase exploration, implementing large-scale multi-step feature plans, or conducting extensive code reviews. By distributing the workload, subagents help in accelerating development cycles, improving the quality of outputs, and managing complexity more effectively than a single agent could.
How does Codex manage the orchestration of multiple subagents?
Codex excels at orchestrating subagent workflows by managing the entire lifecycle from spawning new agents to consolidating their results. When a complex task is initiated, Codex can intelligently route follow-up instructions to the appropriate subagents, monitor their progress, and await the completion of all requested tasks. Once all subagents have finished their assignments and returned their respective outputs, Codex then aggregates these results into a unified, consolidated response. This seamless orchestration ensures that even highly parallelized tasks remain coherent and deliver a comprehensive solution, simplifying complex project management for developers.
What are the security considerations and controls for Codex subagents?
Security for Codex subagents is a critical aspect, with several mechanisms in place to ensure safe operation. Subagents inherently inherit the current sandbox policy of the parent session, ensuring a consistent security posture. For interactive command-line interface (CLI) sessions, approval requests stemming from inactive agent threads can be surfaced to the user, allowing for informed decisions before actions are taken. In non-interactive environments or when immediate approval isn't feasible, actions requiring new approval will fail, preventing unauthorized operations. Developers can also apply runtime overrides for sandbox and approval choices, and even configure individual custom agents with specific sandbox modes, such as 'read-only', for fine-grained control over their operational scope and access.
How can developers create and utilize custom agents within Codex?
Developers can define custom agents in Codex to tailor AI behavior to specific needs. This is achieved by creating standalone TOML configuration files under `~/.codex/agents/` for personal agents or `.codex/agents/` for project-scoped ones. Each TOML file defines a single custom agent and acts as a configuration layer, allowing developers to override default settings like model choice, reasoning effort, or sandbox mode. Essential fields such as 'name', 'description', and 'developer_instructions' are mandatory, guiding the agent's identity and core behavior. This flexibility enables the creation of highly specialized agents for unique development tasks, further enhancing the adaptability of the Codex system.
What global settings are available for managing subagent behavior in Codex?
Codex provides several global settings to manage subagent behavior, primarily located under the `[agents]` section in the configuration file. Key settings include `agents.max_threads`, which controls the maximum number of concurrent open agent threads (defaulting to 6); `agents.max_depth`, which limits the nesting depth of spawned agents (defaulting to 1 to prevent excessive recursion and resource consumption); and `agents.job_max_runtime_seconds`, which sets a default timeout for workers in `spawn_agents_on_csv` jobs (defaulting to 1800 seconds if not specified). These settings are crucial for balancing performance, resource usage, and control over complex agent workflows, helping developers prevent unintended fan-out and manage token consumption effectively.
What are the primary advantages of using subagents for complex tasks?
The primary advantages of using subagents for complex tasks within Codex lie in their ability to parallelize and specialize operations. By breaking down a large task into smaller, manageable subtasks and assigning each to a specialized agent, development teams can achieve significant speed improvements and higher quality outcomes. For instance, in a large codebase review, one subagent might focus on security vulnerabilities, another on code quality, and a third on performance bottlenecks simultaneously. This concurrent processing not only accelerates the overall task but also allows for deeper, more focused analysis in each area, leading to more robust and comprehensive solutions than a single, monolithic AI agent could provide.

Qëndroni të përditësuar

Merrni lajmet më të fundit të AI në email.

Ndaj