AgentKit
Tài liệuBộ kitTham chiếu CLIỨng dụng Desktop
BetaBạn đang đọc tài liệu kênh beta (2.13.0-beta.20). Tính năng có thể thay đổi trước bản stable tiếp theo.Chuyển sang stable →

ak watch

ak watch start

Poll issue GitHub, sinh reply, post comment và vận hành rolling-rate cùng watcher state cục bộ an toàn.

Chỉ dùng ak watch start sau khi xem cùng filter bằng dry-run. Candidate thành công sẽ tạo comment GitHub bên ngoài.

Cách dùng

ak watch start <owner/repo>

Tuỳ chọn

CờMặc địnhMô tả
--label <labels>[]Khớp bất kỳ label nào đã liệt kê.
--author <logins>[]Khớp bất kỳ GitHub login nào đã liệt kê.
--keyword <terms>[]Khớp bất kỳ term nào trong title/body, không phân biệt hoa thường.
--agent <kit/skill>engineer/scoutSkill truyền cho ak run để sinh response.
--max-per-hour <count>10Số post đã ghi nhận tối đa trong rolling hour.
--poll-interval <seconds>60Khoảng cách giữa các lần poll ở daemon mode.
--daemonfalseLặp trong process hiện tại đến khi bị ngắt.
--kits-dir <path>""Override nguồn Kit dùng bởi ak run.

Dùng giá trị dương cho cả hai cờ số. Implementation không validate đầy đủ range trước khi bắt đầu.

Tác động bên ngoài và cục bộ

ak watch dry-run owner/repo --label needs-response
ak watch start owner/repo --label needs-response --max-per-hour 5

Mỗi pass lấy tối đa 100 issue mở qua gh đã authenticate, áp dụng AND giữa category/OR trong category, bỏ qua ID đã ghi nhận, kiểm tra rolling-hour bucket, gửi nội dung issue cho ak run, rồi post stdout được sinh qua gh issue comment.

Sau post thành công, issue ID và timestamp được save atomically dưới ~/.agentkit/watch/<repo-slug>/state.json; AGENTKIT_HOME thay root. Nếu save thất bại sau khi GitHub nhận comment, lỗi chỉ được log và lần chạy sau có thể post lại. Kiểm tra stderr và state đã lưu sau mỗi live run.

Lệnh không hỏi xác nhận. --json, --no-interactive và non-TTY không làm posting an toàn hơn; chúng vẫn cho phép comment bên ngoài.

Daemon mode

--daemon không fork hoặc đưa watcher vào background. Nó giữ process hiện tại, ghi daemon.logcli-meta.json, poll ngay rồi lặp theo interval. Dừng process bằng Ctrl-C, SIGTERM hoặc process supervisor.

ak watch stop không signal process, còn loop đang chạy không đọc lại trường active. Không dựa vào stop riêng lẻ để chặn post tiếp theo.

Output và mã thoát

Human stdout one-shot tóm tắt responded, skipped và remaining. JSON dùng một envelope kind=watch.start. Lỗi agent, rate và post từng issue đi stderr, không nằm trong hai array ID.

Output daemon --json là mixed: một human start line trước, sau đó một object watch.start mỗi tick thành công. Lỗi poll về sau được log và loop tiếp tục. Không đưa toàn stream thẳng vào NDJSON parser nếu chưa bỏ dòng đầu.

Mã thoátÝ nghĩa
0One-shot render xong hoặc daemon kết thúc do huỷ; vẫn có thể có lỗi từng issue.
1State, poll đầu, render hoặc setup daemon thất bại.
2Argument repository hoặc cờ không hợp lệ.

Dù help lệnh cha khai báo exit 3 cho rate limit one-shot, loop hiện tại hấp thụ lỗi từng issue đó và có thể trả 0.

Lệnh liên quan