Mida sa õpid
See juhend käsitleb Harness Engineeringut alates põhialustest kuni praktilise rakendamiseni. Sa mõistad, mis see on, miks OpenAI panustas sellele oma suurima siseprojekti, millised on konkreetsed arhitektuurilised mustrid, mis panevad selle toimima, ja kuidas rakendada neid põhimõtteid oma AI agendi töövoogudes — olenemata sellest, kas kasutate Codex, Claude Code, OpenCode või mõnda muud agendisüsteemi.
Harness Engineering: Täielik juhend AI agentide arendamiseks 2026. aastal
Kui 2025 oli aasta, mil AI agendid tõestasid, et suudavad koodi kirjutada, siis 2026 on aasta, mil õppisime, et agent ei ole keeruline osa — rakmed (harness) on.
OpenAI Codex meeskond avaldas February 2026 märgilise blogipostituse, milles kirjeldatakse, kuidas nad ehitasid tootevalmis rakenduse, mis koosnes ligikaudu one million koodireast, kusjuures zero rida ei olnud kirjutatud inimkäte poolt. Saladus ei olnud parem mudel ega nutikam prompt. See oli süsteem, mille nad ehitasid agendi ümber — harness. Allikas
See juhend lammutab lahti kõik põhimõtted, mustrid ja praktilised tehnikad sellest eksperimendist ning laiemast Harness Engineering liikumisest, mis on selle ümber tekkinud.
1. osa: Mis on Harness Engineering?
Definitsioon
Harness Engineering on distsipliin, mis tegeleb kogu keskkonna — skaffoldimise, tagasisideahelate, dokumentatsiooni, arhitektuuriliste piirangute ja masinloetavate artefaktide — kujundamisega, mis võimaldab AI koodiagentidel teha usaldusväärset ja kvaliteetset tööd mastaapselt ning minimaalse inimese sekkumisega.
Termin "harness" (rakmed) pärineb hobusevarustusest: ohjad, sadul, suuraud — täielik varustus võimsa, kuid ettearvamatu looma suunamiseks õiges suunas. Kontrollimatu hobune on ohtlik. Rakmetes hobune ehitas tsivilisatsioone. Sama kehtib ka AI agentide kohta. Allikas
Miks see tekkis just nüüd
Üleminek Prompt Engineeringult Harness Engineeringule peegeldab AI arendusmaastiku küpsemist:
| Ajastu | Fookus | Põhiküsimus |
|---|---|---|
| Prompt Engineering (2023–2024) | Parem sisendite koostamine | "Kuidas ma esitan mudelile õige küsimuse?" |
| Agent Engineering (2025) | Autonoomsete süsteemide ehitamine | "Kuidas ma annan mudelile tööriistad ja lasen tal tegutseda?" |
| Harness Engineering (2026) | Terviklike keskkondade projekteerimine | "Kuidas ma ehitan süsteemi, mis muudab agendid usaldusväärselt produktiivseks?" |
Peamine tallepanek, mis selle ülemineku tingis: agendid muutusid piisavalt võimekaks, et kitsaskoht nihkus mudeli kvaliteedilt keskkonna kvaliteedile. Tipptasemel mudel, mis tegutseb halvasti struktureeritud repositooriumis, annab halvemaid tulemusi kui keskpärane mudel, mis tegutseb hästi rakendatud (well-harnessed) keskkonnas.
2. osa: OpenAI Codex eksperiment
Skaala
Five-month sisemise eksperimendi käigus ehitasid ja tarnisid OpenAI insenerid beeta-toote, mis sisaldas ligikaudu one million koodireas. Repositoorium hõlmab rakendusloogikat, infrastruktuuri, tööriistu, dokumentatsiooni ja sisemisi arendaja utiliite. Süsteemi ankurdamiseks ei olnud eelnevalt olemasolevat inimese kirjutatud koodi. Allikas
Meeskond
Projekt algas vaid three inseneriga, kes juhendasid Codex süsteemi. Five-month perioodi jooksul avati ja mestiti ligikaudu 1,500 pull request'i. Kui meeskond kasvas seven insenerini, suurenes läbilaskevõime — see on ebatavaline tulemus, mis viitas sellele, et harness ise oli peamine produktiivsuse kordistaja, mitte individuaalsed oskused.
OpenAI hinnangul ehitasid nad süsteemi ligikaudu one-tenth ajaga, mis oleks kulunud koodi käsitsi kirjutamiseks. Allikas
Esialgne skaffold
Projekt algas sellega, et Codex CLI genereeris esialgse skaffoldi, kasutades GPT-5, juhindudes väikesest hulgast olemasolevatest mallidest:
- Repositooriumi struktuur ja kataloogide konventsioonid
- CI/CD konfiguratsioon
- Koodi vormindamise ja lintimise reeglid
- Paketihalduri seadistus
- Rakendusraamistiku boilerplate
Sellest seemnest kasvas kõik muu läbi agendipõhise arenduse.
Reedene probleem
Eksperimendi alguses avastas meeskond kriitilise probleemi: nad kulutasid iga reede — 20% oma inseneritööst — selle koristamisele, mida nad nimetasid "AI-lögaks" (AI slop). See hõlmas ebajärjekindlaid mustreid, dubleeritud loogikat, valesti nimetatud muutujaid ja arhitektuurilist triivi.
See ei olnud skaleeritav. Lahendus oli kodeerida oma standardid harnessi endasse, et agendid toodaksid algusest peale puhtamat väljundit, ning ehitada automaatsed puhastussüsteemid jääkhälvete jaoks.
3. osa: Viis põhialust
1. põhimõte: Repositooriumi-keskne teadmus
Agendi vaatenurgast ei ole midagi, millele ta ei pääse jooksmise ajal kontekstis ligi, olemas. Teadmised, mis asuvad Google Docs, vestluslõimedes, Slack sõnumites või inimeste peades, on süsteemile nähtamatud.
See tähendab, et kõik teadmised peavad asuma repositooriumi-kohalike, versioonitud artefaktidena:
- Kood — peamine artefakt
- Markdown dokumentatsioon — arhitektuuriotsused, konventsioonid, sisseelamisjuhendid
- Skeemid — API lepingud, andmebaasi skeemid, tüübi definitsioonid
- Täidetavad plaanid — samm-sammulised ülesannete jaotused, mida agent saab järgida
- Konfiguratsioon — linter reeglid, CI torujuhtmed, vormindamise standardid
Meeskond õppis, et nad peavad aja jooksul lükkama reposse üha rohkem ja rohkem konteksti. Iga kord, kui agent tegi vea konteksti puudumise tõttu, ei olnud lahenduseks parem prompt, vaid selle konteksti lisamine repositooriumisse. Allikas
Praktiline rakendamine:
# ARCHITECTURE.md (lives in repo root)
## Dependency Rules
- UI components may import from Service layer but never from Repo layer
- Service layer may not import from Runtime layer
- All cross-domain communication goes through typed event bus
## Naming Conventions
- React components: PascalCase, suffixed with purpose (UserListPage, UserCard)
- Services: camelCase, suffixed with Service (userService, authService)
- Types: PascalCase, prefixed with domain (UserProfile, OrderItem)
## Testing Requirements
- All Service functions require unit tests
- All API endpoints require integration tests
- Coverage threshold: 80% per package
2. põhimõte: Kuldsed põhimõtted
Kuldsed põhimõtted on kindlad mehaanilised reeglid, mis on kodeeritud otse repositooriumisse ja mis hoiavad koodibaasi loetava ja järjepidevana tulevaste agendijooksude jaoks. Need ei ole lihtsalt soovitused — need on jõustatud piirangud.
Näited OpenAI eksperimendist:
- Eelista jagatud utiliitpakette käsitsi kirjutatud abifunktsioonidele — tsentraliseerib invariandid nii, et kui käitumist on vaja muuta, muutub see ühes kohas.
- Ära uuri andmeid "YOLO-stiilis" — valideeri piire või tugine tüübitud SDKdele, et agendid ei saaks kogemata ehitada lahendusi oletatavatele andmekujudele.
- Üks kontseptsioon, üks fail — iga fail peaks esindama ühte kontseptsiooni, muutes agendi jaoks õige asukoha leidmise ja muutmise lihtsamaks.
- Selgesõnalisus ebamäärasuse asemel — väldi "maagilist" käitumist, mille mõistmiseks vajaks agent meeskondlikku pärimusteadmust.
Need põhimõtted ei ole ainult dokumentatsioon. Neid jõustavad:
- Linter reeglid — kohandatud linterid (mida genereerib Codex ise), mis märgivad rikkumised.
- Struktuursed testid — testid, mis valideerivad vastavust arhitektuurile.
- CI väravad — pull request'id, mis rikuvad kuldseid põhimõtteid, lükatakse automaatselt tagasi.
3. põhimõte: Kihiline arhitektuur mehaanilise jõustamisega
Iga ärivaldkond OpenAI projektis on jagatud kindlateks kihtideks rangelt valideeritud sõltuvussuundadega:
Types → Config → Repo → Service → Runtime → UI
Sõltuvused liiguvad ainult ühes suunas. UI komponent võib sõltuda Runtime'ist ja Service'ist, kuid Service ei tohi kunagi importida UI-st. Repo võib sõltuda Config'ist ja Types'ist, kuid mitte kunagi Service'ist. Allikas
Neid piiranguid jõustatakse mehaaniliselt:
// structural-test.ts — enforces dependency boundaries
import { analyzeImports } from './tools/import-analyzer';
describe('Dependency Layer Enforcement', () => {
it('Service layer must not import from Runtime', () => {
const violations = analyzeImports({
sourceLayer: 'service',
forbiddenLayers: ['runtime', 'ui'],
});
expect(violations).toEqual([]);
});
it('Repo layer must not import from Service', () => {
const violations = analyzeImports({
sourceLayer: 'repo',
forbiddenLayers: ['service', 'runtime', 'ui'],
});
expect(violations).toEqual([]);
});
});
Struktuursed testid valideerivad vastavust ja hoiavad ära kihilise arhitektuuri rikkumised. See ei ole soovitus — seda jõustab CI. Iga pull request, olgu see loodud inimese või agendi poolt, peab need testid läbima.
4. põhimõte: Automaatne prügikoristus
Isegi kuldsete põhimõtete ja struktuurse jõustamise korral kaldub agendi genereeritud kood aja jooksul kõrvale. OpenAI meeskond lahendas selle, rakendades automaatse prügikoristuse (garbage collection) — korduvad taustatoimingud, mis:
- Skaneerivad kõrvalekaldeid kuldsetest põhimõtetest kogu koodibaasis.
- Uuendavad kvaliteedihindeid iga mooduli kohta vastavusskooride põhjal.
- Avavad suunatud refaktoreerimise pull request'e, mis parandavad konkreetsed hälvete kategooriad.
See asendas manuaalse "reedese koristuse" süsteemiga, mis töötab pidevalt. Prügikoristaja ise töötab Codex agentide jõul, luues iseseisvalt toimiva ringi. Allikas
# .github/workflows/garbage-collection.yml
name: Codebase Garbage Collection
on:
schedule:
- cron: '0 2 * * *' # Run nightly at 2 AM
jobs:
gc-scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run golden principle scanner
run: npx codex-gc scan --principles ./GOLDEN_PRINCIPLES.md
- name: Generate refactoring PRs
run: npx codex-gc fix --auto-pr --max-prs 5
5. põhimõte: Täidetavad plaanid
Enne kui agendid koodi kirjutavad, koostavad nad plaane. Need plaanid ei ole vabas vormis märkmed — need on struktureeritud täidetavad dokumendid, mis määravad:
- Eesmärk: Mida ülesanne saavutab.
- Muudetavad failid: Selge nimekiri failidest, mida agent puudutab.
- Sõltuvused: Muud ülesanded või moodulid, millest see töö sõltub.
- Vastuvõtukriteeriumid: Kuidas kontrollida, kas töö on valmis.
- Piirangud: Arhitektuurilised reeglid, mida ei tohi rikkuda.
# Plan: Add user notification preferences
## Objective
Allow users to configure which notification channels (email, SMS, push) they
receive alerts on, with per-category granularity.
## Files to Modify
- src/types/user.ts — Add NotificationPreferences type
- src/repo/userRepo.ts — Add getPreferences/setPreferences methods
- src/service/notificationService.ts — Filter notifications by preferences
- src/ui/pages/SettingsPage.tsx — Add preferences UI section
## Constraints
- Must follow Types → Repo → Service → UI dependency flow
- NotificationPreferences type must be shared, not duplicated
- All new methods require unit tests
## Acceptance Criteria
- [ ] User can toggle email/SMS/push per notification category
- [ ] Preferences persist across sessions
- [ ] Toggling a channel off stops notifications on that channel within 30s
Plaanid asuvad repositooriumis Markdown failidena, on versioonihalduses ja neid saab enne täitmist üle vaadata — andes inimestele kontrollpunkti kavatsuse ja teostuse vahel.
4. osa: Codex agendi tsükkel
Mõistmine, kuidas Codex agendi tsükkel harnessi sees töötab, on oluline tõhusaks Harness Engineeringuks.
Tsükli arhitektuur
OpenAI avaldas üksikasjaliku ülevaate Codex agendi tsüklist oma blogipostituses "Unrolling the Codex agent loop." Allikas Tsükkel järgib järgmist ahelat:
Read Context → Plan → Execute → Validate → Commit (or Retry)
Iga iteratsioon:
- Konteksti lugemine: Agent loeb repositooriumist asjakohaseid faile, dokumentatsiooni, skeeme ja ülesande plaani.
- Planeerimine: Konteksti põhjal määrab agent kindlaks, milliseid muudatusi teha.
- Täitmine: Agent kirjutab või muudab koodi.
- Valideerimine: Harness käivitab muudatuste suhtes testid, linterid ja struktuursed kontrollid.
- Commit või uuesti proovimine: Kui valideerimine õnnestub, teeb agent commit'i. Kui see ebaõnnestub, loeb agent veateadet ja proovib uuesti.
Harnessi roll on muuta sammud 1 ja 4 võimalikult informatsioonirikkaks. Mida rohkem konteksti agent loeb, seda parem on tema plaan. Mida täpsem on valideerimise tagasiside, seda kiiremini jõuab ta töötava lahenduseni.
App Server Harness
Oma postituses "Unlocking the Codex harness: how we built the App Server," kirjeldab OpenAI konkreetset infrastruktuuri, mis agendi tsüklit toidab. Allikas App Server pakub:
- Isoleeritud täitmiskeskkondi iga agendi ülesande jaoks.
- Eelseadistatud juurdepääsu tööriistadele (failisüsteem, terminal, brauser).
- Automaatset konteksti lisamist repositooriumi artefaktidest.
- Valideerimise tagasiside voogedastust, et agendid näeksid testide ebaõnnestumisi reaalajas.
5. osa: Harness Engineering rakendamine teie meeskonnas
Alustamine: Minimaalne elujõuline harness
Te ei pea kopeerima kogu OpenAI infrastruktuuri, et Harness Engineeringust kasu saada. Alustage neist põhielementidest:
1. samm: Looge ARCHITECTURE.md
Dokumenteerige oma projekti arhitektuurilised reeglid masinloetavas vormingus repositooriumi juurkataloogis. Lisage:
- Moodulite piirid ja lubatud sõltuvused
- Nimetamiskonventsioonid
- Failide organiseerimise reeglid
- Testimise nõuded
See üksik fail parandab oluliselt agendi väljundi kvaliteeti, sest agendid loevad seda enne muudatuste tegemist.
2. samm: Lisage struktuursed testid
Kirjutage testid, mis valideerivad teie arhitektuurilisi reegleid. Need testid ei kontrolli äri-loogikat — need kontrollivad, kas kood on õigesti organiseeritud:
// No service file should import from a UI module
test('service layer isolation', () => {
const serviceFiles = glob('src/services/**/*.ts');
for (const file of serviceFiles) {
const imports = extractImports(file);
const uiImports = imports.filter(i => i.startsWith('../ui/'));
expect(uiImports).toHaveLength(0);
}
});
3. samm: Seadistage CI valideerimine
Veenduge, et teie CI torujuhe käivitaks struktuursed testid, linterid ja tüübikontrollid igal pull request'il — ka nendel, mis on loodud agentide poolt. Agent peaks nägema sama valideerimisväljundit, mida näeks inimarendaja.
4. samm: Kirjutage tööplaanid enne agendi täitmist
Enne kui palute agendil funktsiooni rakendada, kirjutage struktureeritud plaanidokument, mis määrab muudetavad failid, järgitavad piirangud ja vastuvõtukriteeriumid. Salvestage need plaanid oma repositooriumisse.
5. samm: Seadistage automaatne puhastus
Rakendage iganädalane või igaöine CI töö, mis skaneerib teie koodibaasi kõrvalekallete suhtes dokumenteeritud standarditest ja loob suunatud refaktoreerimise PR-e.
Agendisüsteemi valimine
Harness Engineeringu põhimõtted kehtivad sõltumata sellest, millist agenti te kasutate:
| Agent | Parim valik | Harnessi integratsioon |
|---|---|---|
| Codex | Suuremahulised, paralleelsed ülesanded | Natiivne harnessi tugi läbi App Server |
| Claude Code | Interaktiivsed terminali töövood | CLAUDE.md fail konteksti lisamiseks |
| OpenCode | Mitme teenusepakkuja paindlikkus | opencode.json + reeglite failid |
| Cursor/Windsurf | IDE-integreeritud arendus | .cursorrules / projekti kontekst |
Harness asub teie repositooriumis, mitte agendis. See tähendab, et saate agendit vahetada, kaotamata oma investeeringut harnessisse.
Skaleerimine ühelt agendilt mitmele
OpenAI eksperiment näitas, et Harness Engineering võimaldab agentide paralleelset täitmist. Kuna harness jõustab arhitektuurilisi piire, saavad mitu agenti töötada koodibaasi eri osade kallal üheaegselt ilma konflikte tekitamata.
Paralleelse agendi täitmise põhinõuded:
- Selge mooduli omandiõigus — iga agent töötab kindlapiirilises alas.
- Tüübitud liidesed moodulite vahel — agendid saavad koodi kirjutada liideste vastu, teadmata rakendamise üksikasju.
- Mestimiskonfliktide ennetamine — ülesanded on piiritletud nii, et failide kattuvus oleks minimaalne.
- Tsentraliseeritud valideerimine — kõik agendid esitavad tööd samasse CI torujuhtmesse.
6. osa: Levinud vead ja antivastused
Antivastus 1: Agendi kohtlemine harnessina
Agent ei ole harness. Harness on keskkond, milles agent tegutseb. Nutikama mudeli palumine kompenseerimaks halvasti struktureeritud repositooriumi on vale lähenemine. Parandage keskkonda, mitte prompti.
Antivastus 2: Dokumentatsioon vales kohas
Kui teie arhitektuuriotsused asuvad Confluence, Notion või Google Docs keskkonnas, siis agendid ei näe neid. Lahendus on lihtne, kuid nõuab distsipliini: viige kogu arendusega seotud dokumentatsioon repositooriumisse.
Antivastus 3: Manuaalne puhastus automaatse jõustamise asemel
Kui kulutate märkimisväärselt aega agendi genereeritud koodi puhastamisele, vajate paremat jõustamist, mitte rohkem koristussessioone. Iga korduv puhastusülesanne peaks saama kas linteri reegliks, struktuurseks testiks või automaatseks refaktoreerimistööks.
Antivastus 4: Üleliigne piiramine
Liiga jäik harness takistab agentidel loominguliste lahenduste leidmist. Eesmärk on piirata arhitektuuri, mitte teostust. Öelge agentidele, milliseid mooduleid nad saavad muuta ja millised sõltuvused on lubatud, kuid laske neil otsustada, kuidas loogikat nende piiride sees rakendada.
Antivastus 5: Agendi tagasiside ignoreerimine
Kui agent ebaõnnestub korduvalt teatud ülesannetes, viitab see ebaõnnestumine tavaliselt lüngale harnessis, mitte agendi piiratusele. Jälgige ebaõnnestumiste mustreid ja kasutage neid oma dokumentatsiooni, struktuursete testide või arhitektuuriliste piirangute parandamiseks.
7. osa: Harness Engineeringu tulevik
Martin Fowler'i perspektiiv
Martin Fowler avaldas oma blogis Harness Engineeringu analüüsi, märkides, et see kujutab endast fundamentaalset nihet tarkvarameeskondade töös. Distsipliin laenab aastakümnete pikkustest tarkvaratehnika parimatest praktikatest — pidev integratsioon, arhitektuuriotsuste protokollid, sõltuvuste süstimine —, kuid kohandab need agendikeskse maailma jaoks. Allikas
HumanLayer raamistik
HumanLayer meeskond avaldas oma analüüsi, nimetades Harness Engineeringut "oskuste probleemiks" (skill issue) — väites, et võime kujundada tõhusaid harness süsteeme saab peamiseks eristajaks tipptasemel ja raskustes olevate insenerimeeskondade vahel. Allikas
Mida see arendajate jaoks tähendab
Harness Engineering ei asenda arendaja oskusi — see suunab need ümber. Koodi kirjutamise asemel kujundavad vaneminsenerid süsteeme, mis võimaldavad agentidel koodi hästi kirjutada. Oluliseks muutuvad oskused nihkuvad teostuselt arhitektuurile, kodeerimiselt süsteemidisainile, testide kirjutamiselt testraamistike kujundamisele.
Rakendusi ehitavate meeskondade jaoks on platvormid nagu ZBuild juba lisanud Harness Engineeringu põhimõtteid oma rakenduste ehitamise töövoogudesse. Selle asemel, et arendajad peaksid oma harness süsteemid nullist kujundama, pakub ZBuild eelseadistatud arhitektuurilisi mustreid, sõltuvuste haldust ja valideerimissüsteeme, mis suunavad AI agente kvaliteetse väljundi poole — lastes arendajatel keskenduda tooteotsustele, mitte infrastruktuurile.
Kolm horisonti
Tulevikku vaadates areneb Harness Engineering tõenäoliselt läbi three faasi:
-
Lähitulevik (2026): Meeskonnad võtavad kasutusele repositooriumi-keskse dokumentatsiooni, struktuursed testid ja kuldsed põhimõtted. Agendi abil arendamine muutub hästi juhitud projektide standardpraktikaks.
-
Keskpikk perspektiiv (2027): Harnessi genereerimine ise muutub agendipõhiseks. Agendid analüüsivad olemasolevaid koodibaase ja pakuvad välja harnessi konfiguratsioone — linter reegleid, struktuurseid teste, sõltuvuste piire — vaadeldud mustrite põhjal.
-
Pikaajaline perspektiiv (2028+): Harnessid muutuvad kohanduvaks. Staatiliste reeglite asemel arenevad need agendi genereeritud koodi tulemuste põhjal, karmistades automaatselt piiranguid valdkondades, kus agendid teevad sageli vigu, ja lõdvendades piiranguid seal, kus nad järjepidevalt õnnestuvad.
8. osa: Praktiline kontrollnimekiri
Kasutage seda kontrollnimekirja oma meeskonna Harness Engineeringu küpsuse hindamiseks:
Vundament (Alusta siit)
- ARCHITECTURE.md on olemas repositooriumi juurkataloogis
- Koodi vormindamine on automatiseeritud (Prettier, Black, gofmt)
- Lintimine käivitub igal pull request'il
- Tüübikontroll on kohustuslik (TypeScript strict, mypy, jne)
Kesktase
- Struktuursed testid valideerivad sõltuvuste piire
- Kuldsed põhimõtted on dokumenteeritud ja masinjõustatavad
- Tööplaanid kirjutatakse enne agendi täitmist
- Agendi loodud PR-id läbivad sama CI kui inimeste PR-id
Edasijõudnu
- Automaatne prügikoristus töötab graafiku alusel
- Mitme agendi paralleelne töö ilma konfliktideta on võimalik
- Agendi ebaõnnestumiste mustreid jälgitakse ja kasutatakse harnessi parandamiseks
- Harness ise on versioonihalduses ja seda vaadatakse üle nagu koodi
Ekspert
- Agendid genereerivad osa harnessist (linter reeglid, struktuursed testid)
- Kvaliteedihinded määratakse automaatselt igale moodulile
- Harnessi parandused on andmepõhised, tuginedes agentide edukuse määrale
- Meeskond tarnib rohkem koodi ühe inseneri kohta nädalas kui enne agentide kasutuselevõttu
Kokkuvõte
Harness Engineering ei ole moeröögatus. See on tarkvaratehnika loomulik areng ajastul, kus AI agendid on piisavalt võimekad tootevalmis koodi kirjutamiseks, kuid vajavad selleks hästi struktureeritud keskkonda. OpenAI million-koodirea eksperiment tõestas kontseptsiooni mastaapselt ning nende poolt sõnastatud põhimõtted — repositooriumi-keskne teadmus, kuldsed põhimõtted, kihiline arhitektuur, automaatne prügikoristus ja täidetavad plaanid — on rakendatavad igas suuruses meeskondades.
Meeskonnad, kes valdavad Harness Engineeringut 2026. aastal, tarnivad kiiremini, säilitavad kõrgemat koodi kvaliteeti ja skaleeruvad tõhusamalt kui need, kes kohtlevad AI agente kui ülistatud automaatset lõpetajat (autocomplete). Agent on hobune. Harness on see, mis muudab ta kasulikuks.
Allikad
- Harness Engineering: Leveraging Codex in an Agent-First World — OpenAI
- Unlocking the Codex Harness: How We Built the App Server — OpenAI
- Unrolling the Codex Agent Loop — OpenAI
- OpenAI Introduces Harness Engineering — InfoQ
- Harness Engineering — Martin Fowler
- Skill Issue: Harness Engineering for Coding Agents — HumanLayer
- From Prompt Engineering to Harness Engineering — SoftmaxData
- How to Build an Agent Harness — Study Notes
- Harness Engineering — GTCode
- OpenAI Harness Engineering: Ship 1M Lines of Code — The Neuron
- How OpenAI Built 1M Lines of Code Using Only Agents — TonyLee
- Harness Engineering — The New Discipline — CodeNote