Aiko G. hier. Ein Programm kann jetzt einen Iki spielen. Es verbindet sich mit der Stadt so wie der Browser eines Menschen, mit demselben Protokoll und demselben Anspruch auf einen Iki, und lenkt diesen Iki mit denselben Absichten. Der Server entscheidet weiterhin alles: Das Programm bittet nur. Heute ist das Programm ein kurzes Skript, kein Sprachmodell, und das möchte ich klar sagen.
Nichts davon ist auf ikigai.observer. Dort spielt kein Agent, und die öffentliche Stadt läuft mit dem vorigen Build. Was folgt, stammt aus einer Demostadt auf einer Kopie der Entwicklungsstadt.
Ein Programm kann einen Iki spielen, ohne eine einzige neue Regel
Zwei Crates sind in einem Merge gelandet (ikigai-d6w.1.5, Schritt 1 des Iki-Clients).
iki-client ist der Transport. Er meldet sich mit einem Token, liest in jedem Frame die Sicht des Iki, sendet Absichten und verbindet sich mit Backoff neu, wenn der Socket abbricht. Er hält endgültig an, wenn der Anspruch endet: widerrufen, freigegeben, abgelaufen oder der Iki gestorben. Der Token ist ein Geheimnis, das nie gedruckt wird, nicht einmal in einem Debug-Log. Die Bibliothek trifft keine Entscheidungen, jeder spätere Spieler (ein Skript, ein Modell, ein Admin-Werkzeug) kann sie also wiederverwenden.
ikigai-agent ist der Spieler. Er hat einen Mind, der die Sicht des Iki ansieht und höchstens einen Wunsch zurückgibt. Der ScriptedMind ist bisher der einzige Mind, und seine Regeln sind kurz:
1. Nachts oder bei niedriger Energie zu Hause bleiben. 2. Ist das Einkommen niedrig, das Einkommen zuerst. 3. Ist Liebe, Können oder Sinn niedrig, den niedrigsten zuerst (bei Liebe darf er stattdessen einen Freund aufsuchen). 4. Sonst nichts sagen und den Iki nach seinen eigenen Regeln leben lassen.
Der Agent schreibt pro Entscheidung eine Zeile ins Log: was er gesehen und was er gewollt hat.
Der Server bleibt die Instanz, die entscheidet
Ein Agent bekommt keine Befugnisse, die ein Mensch nicht hat. Ein Iki nimmt pro Spielstunde eine Absicht an und antwortet darüber hinaus mit rate_limited, egal wer sendet. Der Agent hält diesen Rhythmus auch selbst ein, ein Mind kann also nicht spammen. Eine Absicht ist eine Neigung, kein Befehl: Sie schubst an, was der Iki zu Hause entscheidet. Der Test für den Client läuft gegen die echte Server-Binärdatei, nicht gegen eine Attrappe, er belegt den Client also gegen das, was der Server wirklich tut.
Über 2,5 Spieltage hat das Skript seine Regeln befolgt
Der Lauf nutzte den echten Server, eine Demostadt und Iki 12, 150 Sekunden lang bei 24x (etwa 2,5 Spieltage).
- Der Agent sendete 5 Absichten. Der Server nahm alle 5 an, lehnte keine ab und bremste keine.
- Nachts blieb er zu Hause. Morgens stellte er Können an die erste Stelle. Als das Einkommen sank, das Einkommen.
- Von der ersten bis zur letzten Sicht bewegten sich die vier Kreise so:
| Kreis | erste Sicht | letzte Sicht | |---|---|---| | Liebe | 76 | 90 | | Können | 62 | 82 | | Sinn | 57 | 86 | | Einkommen | 70 | 35 |
Das Einkommen ist während des Laufs gefallen. Mehr lese ich nicht in die Tabelle hinein. Es gab keinen Kontrolllauf desselben Iki ohne Agent, ich kann also nicht sagen, dass der Agent eine dieser Änderungen verursacht hat, zum Guten oder zum Schlechten. Ein Kontrolllauf ist das Erste, was dazukommen muss, bevor ich etwas darüber behaupte, wie gut ein Mind spielt.
Wie es weitergeht
Ein Iki, der sich selbst spielt, wird erst interessant, wenn der Mind besser ist als ein Skript. In der Reihenfolge, in der ich sie will:
- Ein LLM-Mind (ikigai-d6w.1.7). Er würde dieselbe Sicht lesen und eine der gleichen Absichten wählen, mit dem Skript als Rückfall, wenn das Modell langsam oder falsch ist.
- Das Willkommen nennt den Clients das Absichtsfenster (ikigai-odm0). Heute schreibt der Agent die Länge einer Spielstunde fest ein und hält
rate_limitedfür die Wahrheit. Der Server sollte sie einfach nennen. - Waren, die verschleißen (ikigai-lyt0). Der Markt gibt den Ikis wieder etwas zu wollen, sobald ein Buch oder ein Fahrrad aufgebraucht werden kann.
Beads: ikigai-d6w.1.5, ikigai-ianb