Skip to content

Tutorial 3 Your First Agent Task eu

James Morris edited this page Jul 29, 2026 · 1 revision

Tutorial 3 · Zure lehen ataza agentearekin

Helburua: komando guztiz berri bat CLIari gehitu — hasieratik amaierara — zure agentea zuzenduz. lockedin endorse gehituko dugu: erabat ezezagunak diren pertsonak babesten ditu ia ziurtasunez ez dituzten gaitasunengatik. Markarekin bat.

Hau da tutorialaren bihotza. Benetako begizta praktikatuko duzu: espezifikazioa → probak → inplementazioa → langa berdea → berrikuspena.

← Aurrekoa: 2 Nola funtzionatzen duen kodeak · Hurrengoa: 4 Prompt-ak eta berrikuspena


0. urratsa — Erabaki "eginda" nolakoa den

Ezer prompt egin aurretik, idatzi espezifikazioa zuk zeuk lengoaia arruntean. Eskaera lausoek kode lausoa ematen dute — gizaki batengandik edo agente batengandik.

endorse-ek 5–7 lerro inprimatzen ditu, bakoitzak ausaz aukeratutako pertsona bat babesten (berrerabili existitzen den NAMES poola) ausaz aukeratutako buzzword-gaitasun batengatik (pool berri bat). Esaldi satiriko batekin amaitzen da. lockedin endorse gisa, saioko /endorse gisa eta help-en agertu behar du. Ausazkotasun guztiak hazidun pick/shuffle laguntzaileak erabili behar ditu irteera determinista izaten jarrai dezan. npm test berde mantendu behar da, eta gutxienez aldaezin bat finkatzen duen proba berri bat egon behar da.

Paragrafo hori da agenteari emango diozuna. Ohartu 2. kapituluko murrizketak izendatzen dituela (hazidun RNGa, test-langa, aldaezinen ohitura).

1. urratsa — Eskatu agenteari planifikatzeko, ez kodetzeko

Hasi plan bat eskatuz. Hau da fitxategirik aldatu aurretik hurbilketa txar bat harrapatzeko duzun aukera.

"endorse komando bat gehitu nahi diot LockedIn CLIari. Hona espezifikazioa: [paste your spec]. Kodea idatzi aurretik, esan zein fitxategi aldatuko dituzun eta zure hurbilketa, onets dezadan. Jarraitu connect bezalako komando baten existitzen diren patroiei."

Plan on batek honako hauek aipatzen ditu: SKILLS pool berri bat + renderEndorse() bat src/lockedin.js-en, dispatch() eta handleSlash()-en konektatzea, renderHelp()-i lerro bat gehitzea, funtzio/pool berria esportatzea, eta probak gehitzea bi proba-fitxategietan. Planak hazidun RNGaren araua edo probak ahazten baditu, esan orain.

2. urratsa — Probak lehenengo

Eskatu agenteari probak idazteko inplementazioaren aurretik. Probak-lehenengo zure espezifikazioa exekutagarri den zerbait bihurtzen du, eta agentea zintzo mantentzen du.

"Bikain. Lehenik, gehitu huts egiten duten probak bakarrik: unitate-proba bat non renderEndorse()-ek gaitasun ezagun bat eta gutxienez 5 babes aipatzen dituen testua itzultzen duen, eta cli.test.js-eko proba bat non lockedin endorse-k 0-rekin irteten den eta babes bat inprimatzen duen. Erabili hazi finko bat. Ez inplementatu renderEndorse oraindik — ikus dezagun lehenik probak huts egiten."

Exekutatu eta ikusi arrazoi zuzenagatik huts egiten dutela (funtzioa oraindik ez da existitzen):

npm test

3. urratsa — Utzi agenteari inplementatzen

Orain eman argi berdea inplementazioari:

"Orain inplementatu proba horiek gainditzeko, connect patroiari jarraituz. Gehitu ~25 buzzword-gaitasuneko SKILLS pool bat, string bat itzultzen duen renderEndorse() bat, konektatu dispatch eta handleSlash, gehitu help lerro bat, eta esportatu gehitu duzuna. Erabili pick/shuffle soilik ausazkotasunerako."

Agenteak sortzen duenak fitxategiaren gainerakoaren oso antzekoa izan beharko luke. Adibidez, SKILLS pool bat eta errenderizatzaile bat:

const SKILLS = [
  'Thought Leadership', 'Sinergia', 'Vibeak', 'Blockchain (kontzeptualki)',
  'Apaldua Izatea', 'Gaietara Itzultzea', 'Aura Farming', /* ...~25 guztira... */
];

function renderEndorse() {
  const people = shuffle(NAMES).slice(0, 5 + Math.floor(rand() * 3)); // 5–7
  const skills = shuffle(SKILLS);
  const out = [''];
  people.forEach((n, i) =>
    out.push('  ✔ Babestu duzu ' + n + ' honetan: ' + skills[i % skills.length]));
  out.push('', '  6 ezezagun babestu dituzu egiazta ezin dituzun trebetasunengatik. Ordubete barru bueltan babestuko zaituzte.');
  return out.join('\n');
}

…gehi lerro bana dispatch() eta handleSlash()-en, lerro bat renderHelp()-en, eta SKILLS, renderEndorse gehituta module.exports-en.

4. urratsa — Langa

npm test

Berde? Agente batekin funtzionalitate bat argitaratu berri duzu, probak lehenengo. Ez berde? Hori normala da — joan 4. kapituluko iterazio-begiztara eta esan agenteari zehazki zerk huts egin duen.

Ondoren, begiratu benetakoari (probek testua egiaztatzen dute, baina hala ere begiratu egin beharko zenuke):

node bin/lockedin.js endorse
LOCKEDIN_SEED=1 node bin/lockedin.js endorse   # erreproduzigarria

5. urratsa — Berrikusi onartu aurretik

Inoiz ez onartu irakurri ez duzun diff bat. Begiratu zehazki hauei:

  • Patroiari jarraitu dio? Komando berriak connect islatu beharko luke — mendekotasun berririk ez, console.log-ik ez src/-ren barruan.
  • Hazidun RNGa soilik? Bilatu Math.random diff-ean. Ez luke bat ere egon behar.
  • Ukitu al du ukitu behar ez zuen ezer? Aldaketak gehigarria izan behar du; zerikusirik ez duten lerroek ez lukete mugitu behar.
  • Esanguratsua al da proba berria? Norbaitek gero funtzionalitatea hausten badu huts egin beharko luke — ez soilik true baieztatu.

Zerbait gaizki badago, eskatu konponketa bat (4. kapitulua). Ondo badago, amaitu duzu.


✅ Probatu zure agentearekin

Egin goiko begizta osoa benetan. Ondoren, kreditu gehigarrirako, eskatu agenteari hedatzeko:

  • "Egin endorse-k aukerako izen bat onar dezan: lockedin endorse Ada-k Ada zehazki babestu beharko luke. Gehitu proba bat, mantendu langa berde."

Dagoeneko funtzionalitate bat eraiki duzu hasieratik amaierara. Azken kapitulua hau arazorik gabe egiteari buruzkoa da — ingeniari nagusi baten moduan prompt egin eta berrikustea.

Hurrengoa: 4 Prompt-ak eta berrikuspena

📘 LockedIn CLI wiki

Tutorial

Reference


Satire · Sátira · 風刺. Not affiliated with LinkedIn. GPL-3.0-or-later.

Clone this wiki locally