Auto-filed by .github/workflows/garra-routine-trigger.yml at the recurring xH:15 UTC tick. This issue is a reminder, not the work itself.
How to consume this trigger
-
Manually (recommended for now) — open Claude Code at the repo root and run:
The slash command is defined in .claude/commands/garra-routine.md.
It reads ROADMAP.md, queries Linear, picks the next slice, plans it,
implements it via PR + CI, and merges to main when green.
-
From a server — wire scripts/run-garra-routine.sh to system cron on
a host that has the claude CLI. The wrapper invokes Claude Code
headlessly and the routine ends with a merged PR or a no-op summary.
-
Future: a Claude Code Action workflow can listen for this issue's
label and dispatch a routine session unattended. Not wired today.
Closing this issue
The routine ends with a one-paragraph summary on the merged PR. Once that
PR exists, link it here and close. If the routine determined no productive
slice was available (everything Done or blocked), close with a short note —
that signal alone is worth keeping.
Slot
Generated by garra-routine-trigger.yml — see docs/automation/garra-routine.md.
Auto-filed by
.github/workflows/garra-routine-trigger.ymlat the recurring xH:15 UTC tick. This issue is a reminder, not the work itself.How to consume this trigger
Manually (recommended for now) — open Claude Code at the repo root and run:
The slash command is defined in
.claude/commands/garra-routine.md.It reads
ROADMAP.md, queries Linear, picks the next slice, plans it,implements it via PR + CI, and merges to main when green.
From a server — wire
scripts/run-garra-routine.shto system cron ona host that has the
claudeCLI. The wrapper invokes Claude Codeheadlessly and the routine ends with a merged PR or a no-op summary.
Future: a Claude Code Action workflow can listen for this issue's
label and dispatch a routine session unattended. Not wired today.
Closing this issue
The routine ends with a one-paragraph summary on the merged PR. Once that
PR exists, link it here and close. If the routine determined no productive
slice was available (everything Done or blocked), close with a short note —
that signal alone is worth keeping.
Slot
2026-05-08T21(UTC hour of the cron tick)Generated by
garra-routine-trigger.yml— seedocs/automation/garra-routine.md.