AgentKit
ReferenceCLI commands
BetaYou are reading docs for the beta channel (2.4.1-beta.1) — updated automatically on every beta release.Switch to stable →

CLI commands

ak watch start

Start watching a repository for new issues

Poll a GitHub repository for new issues matching the configured filters, then invoke the specified agent skill for each matched issue and post a reply comment. Runs once by default; use --daemon for continuous background polling.

Who it's for: Power devs building automated GitHub triage workflows; non-technical users via the matching dashboard surface.

When to use it: When you want AgentKit to automatically respond to new GitHub issues in a repository. Use --daemon for persistent background operation; omit it for a single-pass CI trigger.

What changes on disk: Reads and writes ~/.agentkit/watch/<repo-slug>/state.json to track responded issues and rate-limit counters.

Usage

ak watch start <owner/repo> [flags]

Examples

ak watch start owner/repo                          # single pass, all new issues
ak watch start owner/repo --label bug              # filter to label 'bug'
ak watch start owner/repo --daemon                 # run continuously in background
ak watch start owner/repo --max-per-hour 10        # rate-limit responses
ak watch start owner/repo --json                   # emit tick summary as JSON

Flags

FlagDescription
--agent stringAgent skill to run for each matched issue (default "engineer/scout")
--author stringsFilter to issues by these GitHub logins (repeatable)
--daemonRun as a background daemon (continuous polling)
-h, --helphelp for start
--jsonEmit machine-readable JSON (implies --no-interactive)
--keyword stringsFilter to issues containing any of these keywords (repeatable)
--kits-dir stringOverride kits directory (default: ./kits or $AGENTKIT_KITS_DIR)
--label stringsFilter to issues with any of these labels (repeatable)
--max-per-hour intMaximum responses per rolling hour (safety ceiling) (default 10)
--no-interactiveDisable interactive prompts (CI-safe)
--poll-interval intSeconds between polls in daemon mode (default 60)
-q, --quietSuppress non-error output on stderr
-V, --verboseExtra diagnostic output on stderr (loses to --quiet)
-y, --yesAssume yes for all prompts

Output modes

ModeBehavior
prettydefault on TTY (colors, ASCII markers)
plainauto when stdout piped or --no-interactive
json--json (single-object envelope, NDJSON-safe)

Exit codes

CodeMeaning
0success
1runtime error
2invalid flags
3user-cancel (SIGINT, prompt-cancel)
  • ak watch — Watch a GitHub repository and auto-respond to issues

On this page