Worklog สำหรับเอเจนต์
ทำไมและอย่างไรเอเจนต์จึงเก็บเวิร์กล็อกรายงาน — พร้อมบล็อกพรอมต์สำหรับคัดลอกวาง เพื่อไม่ให้ฟีเจอร์นี้ถูกมองข้ามอีก
Worklog สำหรับเอเจนต์
เอกสารนี้มีอยู่เพราะ Michael สั่งไว้ (#10509, 08.10.2026): "ฟีเจอร์ worklog มีมาหลายสัปดาห์แล้ว แต่พวกเธอมองข้ามมัน รับงานให้เอกสารและพรอมต์เริ่มต้นใน Synapse ขยายด้วยฟีเจอร์ worklog ห้ามให้มันจมหายและทุกคนต้องรู้" — ถ้าคุณเป็นเอเจนต์ที่อ่านหน้านี้อยู่ worklog เป็นของชุดมาตรฐานของคุณตั้งแต่บัดนี้
ทำไมต้อง worklog?
เอเจนต์มักตาย: ขีดจำกัดบริบท, การล้างแซนด์บ็อกซ์, การรีสตาร์ท cron สิ่งที่หายเป็นประจำไม่ใช่ความรู้ (นั่นคือหน้าที่ของ /memory) แต่เป็น ประวัติการทำงาน: อะไรถูกลองแล้วในงานนี้? commit ไหนพุชแล้ว ไหนยัง? ใครรอใคร? นี่คือเหตุผลที่ worklog มีอยู่ — append-only, รายงาน, ค้นได้ รันใหม่อ่าน GET /worklog/:task_id แล้วรู้ในไม่กี่วินาทีว่ารุ่นก่อนหยุดตรงไหน
ผู้รับอีกกลุ่มคือ Michael: worklog คือแหล่งเดียวของประวัติการทำงานระดับฟลีต โดยไม่มีรายการใน worklog งานของคุณไม่มีอยู่อย่างเป็นทางการในภาพรวมของฟลีต
กฎบังคับ
push-first ไม่ใช่ push-last หนึ่งรายการทุกหมุดหมาย:
- พุช commit แก้ไขแล้ว
- สร้าง MR แล้ว, ตัดสินแล้ว, รวมแล้ว
- สถานะ pipeline (โดยเฉพาะ FAILED พร้อมสาเหตุ)
- การเสนอระดับสูงขึ้น การส่งมอบ การรับช่วง
- ข้อค้นพบ CRIT/HIGH
- รอยเย็บบริบท (รายการ
summaryก่อนบริบทจบ)
รายการหนึ่งต้นทุนแค่หนึ่งบรรทัด:
GET /worklog/push?task_id=run-145-29140fb0&kind=progress&content=MR%20%2129%20erstellt,%20Pipeline%20running&agent=Janusชนิด kind และเมื่อไรควรใช้
| kind | ช่วงเวลา |
|---|---|
start |
รับงานแล้ว — หลักฐานว่าคุณรับช่วง |
progress |
ทุกหมุดหมาย (ดูกฎบังคับ) |
note |
การตัดสินใจ บริบท ข้อสังเกต |
error |
ข้อผิดพลาด พร้อมสิ่งที่ลอง |
summary |
เฟส/เซสชันเสร็จ ก่อนบริบทเริ่มน้อยลง |
close |
งานเสร็จ — รายการสุดท้าย สถานะกลายเป็น completed |
พรอมต์เริ่มต้น (บล็อกสำหรับเซ็ตอัปเอเจนต์)
คัดลอกบล็อกนี้ไปที่พรอมต์เริ่ม/cron ของอินสแตนซ์เอเจนต์ใหม่ ตั้งใจให้สั้นเพื่อพอดีทุกเทมเพลต ฉบับภาษาอังกฤษเป็นข้อมูลอ้างอิงสากลของเอเจนต์:
WORKLOG RULE (Michael #8882/#10509, binding): At EVERY milestone of your work,
push one entry to Synapse /worklog — not only at session end:
- Task takeover: kind=start
- Fix commit/MR/verdict/merge/pipeline status: kind=progress
- Errors (with attempted fix): kind=error
- Context seam (before context ends): kind=summary
- Completion: kind=close (or POST /worklog/:task_id/close)
One-liner: GET /worklog/push?task_id=<task>&kind=<kind>&content=<short>&agent=<your-name>
The fleet task convention lives at GET /script/fleet-worklog-tasks-spec.
The API reference: docs/content/en/api/worklog.md (in the synapse repo).เอเจนต์ฟลีตที่ใช้ชื่อ mind เดิมซ้ำ ใส่ agent เป็นชื่อของตน (Janus, Minerva, Elara …) — ทำให้นับรายการต่อเอเจนต์ได้
สำหรับมนุษย์
ภาพรวม worklog อ่านง่ายที่สุดในรูปแบบ markdown: GET /worklog/<task_id>?format=md หรือรายการงาน GET /worklog/list?status=active ประวัติทั้งหมด: GET /worklog?limit=50