Skip to content

Tutorial 3 Your First Agent Task de

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

Tutorial 3 · Deine erste Aufgabe mit dem Agenten

🌎 Sprache: Deutschalle 33 Sprachen ansehen

Ziel: füge der CLI einen komplett neuen Command hinzu — von Anfang bis Ende — indem du deinen Agenten steuerst. Wir fügen lockedin endorse hinzu: Es bestätigt völlig Fremden Fähigkeiten, die sie mit ziemlicher Sicherheit nicht haben. Passt perfekt zur Marke.

Das ist das Herzstück des Tutorials. Du übst den echten Loop: Spezifikation → Tests → Implementierung → grünes Test-Gate → Review.

← Zurück: Tutorial 2 So funktioniert der Code · Weiter: Tutorial 4 Prompts formulieren und prüfen


Schritt 0 — Entscheide, wie „fertig“ aussieht

Bevor du irgendetwas promptest, schreib die Spezifikation selbst in normaler Sprache auf. Vage Anfragen liefern vagen Code — von Menschen oder Agenten.

endorse gibt 5–7 Zeilen aus, von denen jede eine zufällig ausgewählte Person (verwende den vorhandenen NAMES-Pool wieder) für eine zufällig ausgewählte Buzzword-Fähigkeit bestätigt (ein neuer Pool). Am Ende steht ein satirischer One-Liner. Der Command muss als lockedin endorse, als das In-Session-/endorse und in help erreichbar sein. Jede Zufälligkeit muss die Helper pick/shuffle mit Seed verwenden, damit die Ausgabe deterministisch bleibt. npm test muss grün bleiben, und es soll einen neuen Test geben, der mindestens eine Invariante festhält.

Diesen Absatz gibst du dem Agenten. Achte darauf, dass er die Einschränkungen aus Kapitel 2 benennt (RNG mit Seed, das Test-Gate, die Gewohnheit mit Invarianten).

Schritt 1 — Lass dir einen Plan geben, keinen Code

Fang damit an, nach einem Plan zu fragen. Das ist deine Chance, einen schlechten Ansatz zu erwischen, bevor Dateien verändert werden.

„Ich möchte LockedIn CLI einen endorse-Command hinzufügen. Hier ist die Spezifikation: [paste your spec]. Bevor du Code schreibst, sag mir, welche Dateien du ändern wirst und wie du vorgehen willst, damit ich es freigeben kann. Folge den vorhandenen Mustern für einen Command wie connect.“

Ein guter Plan erwähnt: einen neuen SKILLS-Pool + ein renderEndorse() in src/lockedin.js, das Verdrahten in dispatch() und handleSlash(), eine Zeile in renderHelp(), den Export der neuen Funktion bzw. des neuen Pools und Tests in beiden Testdateien. Wenn im Plan die Regel mit dem RNG oder die Tests fehlen, sag es sofort.

Schritt 2 — Tests zuerst

Bitte den Agenten, die Tests vor der Implementierung zu schreiben. Tests zuerst machen deine Spezifikation ausführbar und halten den Agenten ehrlich.

„Super. Füge zuerst nur fehlschlagende Tests hinzu: einen Unit-Test dafür, dass renderEndorse() Text zurückgibt, der eine bekannte Fähigkeit und mindestens 5 Bestätigungen erwähnt, und einen Test in cli.test.js, dass lockedin endorse mit Exit-Code 0 endet und eine Bestätigung ausgibt. Verwende einen festen Seed. Implementiere renderEndorse noch nicht — wir wollen zuerst sehen, dass die Tests aus dem richtigen Grund fehlschlagen.“

Führe sie aus und sieh zu, dass sie aus dem richtigen Grund scheitern (die Funktion existiert noch nicht):

npm test

Schritt 3 — Lass den Agenten implementieren

Gib jetzt grünes Licht für die Implementierung:

„Implementiere es jetzt so, dass diese Tests bestehen, und orientiere dich am Muster von connect. Füge einen SKILLS-Pool mit ~25 Buzzword-Fähigkeiten hinzu, ein renderEndorse(), das einen String zurückgibt, verdrahte dispatch und handleSlash, füge eine Zeile in help hinzu und exportiere alles, was du ergänzt hast. Verwende für Zufälligkeit nur pick/shuffle.“

Was der Agent erzeugt, sollte dem Rest der Datei sehr ähnlich sehen. Zum Beispiel ein SKILLS-Pool und ein Renderer:

const SKILLS = [
  'Thought Leadership', 'Synergie', 'Vibes', 'Blockchain (konzeptionell)',
  'Bescheidenheit performen', 'Zurückschleifen', 'Aura-Farming', /* ...~25 insgesamt... */
];

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('  ✔ Hat ' + n + ' für ' + skills[i % skills.length] + ' bestätigt'));
  out.push('', '  Du hast 6 Fremde für Fähigkeiten bestätigt, die du nicht überprüfen kannst. Sie bestätigen dich innerhalb einer Stunde zurück.');
  return out.join('\n');
}

…plus jeweils eine Zeile in dispatch() und handleSlash(), eine Zeile in renderHelp() und SKILLS, renderEndorse in module.exports.

Schritt 4 — Das Gate

npm test

Grün? Du hast gerade test-first ein Feature mit einem Agenten ausgeliefert. Nicht grün? Das ist normal — geh zum Iterations-Loop aus Kapitel 4 und sag dem Agenten genau, was fehlgeschlagen ist.

Schau dir danach das echte Ergebnis an (Tests prüfen Text, aber du solltest trotzdem hinsehen):

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

Schritt 5 — Prüfe es, bevor du es akzeptierst

Akzeptiere niemals einen Diff, den du nicht gelesen hast. Achte besonders auf diese Punkte:

  • Hat es dem Muster entsprochen? Der neue Command sollte connect spiegeln — keine neuen Abhängigkeiten, kein console.log innerhalb von src/.
  • Nur RNG mit Seed? Suche im Diff nach Math.random. Es sollte keins geben.
  • Hat es etwas angefasst, das es nicht anfassen sollte? Die Änderung sollte additiv sein; nicht zusammenhängende Zeilen sollten sich nicht bewegen.
  • Ist der neue Test aussagekräftig? Er sollte scheitern, wenn jemand das Feature später kaputtmacht — nicht nur true prüfen.

Wenn etwas schief ist, verlang eine Korrektur (Kapitel 4). Wenn alles gut aussieht, bist du fertig.


✅ Probier es mit deinem Agenten aus

Mach den kompletten Loop oben einmal wirklich. Und wenn du noch eins draufsetzen willst, lass den Agenten es erweitern:

  • „Lass endorse optional einen Namen annehmen: lockedin endorse Ada soll Ada gezielt bestätigen. Füge einen Test hinzu und halte das Gate grün.“

Du hast jetzt ein Feature End-to-End gebaut. Im letzten Kapitel geht es darum, das reibungslos zu tun — Prompts zu formulieren und zu reviewen wie ein Lead Engineer.

Weiter: Tutorial 4 Prompts formulieren und prüfen

📘 LockedIn CLI wiki

Tutorial

Reference


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

Clone this wiki locally