Repository navigation
igris v0.5.0
igris runs the tasks in your markdown project plan one at a time, each in a fresh Claude Code session, started with exactly the model your plan assigns to that task.
v0.5.0 shows you what a run is doing and what it did: the run view gets the phase's progress, an estimate for the current task and a live tail of its session, and igris report turns a finished run into markdown for your PR. Notifications reach Slack, Gotify and your own automation through a signed webhook, with message templates, quiet hours and digests. Everything is additive: no plan or config migration is needed.
Highlights
igris report [RUN] [--json]. One run as markdown, ready to paste into a PR description: how it ended, what was done and skipped, per task its duration, attempts, verify results, commit and how long it waited on you, the done notes and skip reasons, and aclaude --resume <uuid>for each session you can reopen.RUNis1(the newest),2, … or a run ID fromigris history. See Quick start.- Progress and ETA. The run view's header shows
phase M1 · 7/12 · 58% ██████░░░░(or the slice's progress for--only/--from/--until). Once your past runs have at least 3 finished tasks of the current rank, the task card adds≈ 14m leftfrom their median. - Live tail. The current-task card shows the session's last lines (6, or 3 on a narrow terminal), so you can see what Claude is doing without switching tabs. It is only drawn, never logged, sent or stored;
[tui] tail = falseturns it off. - Slack, Gotify and a generic webhook.
[notify.slack],[notify.gotify]and[notify.webhook], with secrets asenv:VARreferences. The webhook POSTs a fixed JSON payload and signs it with HMAC-SHA256 when you give it asecret. See Notifications. - Templates, quiet hours and digests. A
templateper channel (Gotext/templateover the event, project, phase, task, title, run ID and time) is checked whenigris.tomlloads.[notify] quiet = "22:00-07:00"holds everything but the urgent events and sends one digest per channel when the window ends;task_done_digestgroups finished tasks into one message per N tasks or per phase. - A documented run log.
.igris/runs.jsonllines are now versioned ("v":1) and carry the run ID, attempt, Claude session, verify profile, commit SHA, durations and when igris waited on you. The format is indocs/runlog.md;igris historyshows each run's ID.
Upgrade
brew upgrade igris # or: brew install drilonrecica/tap/igris
go install github.com/drilonrecica/igris/cmd/igris@v0.5.0Or download the archive for your platform below, check it against checksums.txt, and put the binary on your PATH:
sha256sum --ignore-missing -c checksums.txt # macOS: shasum -a 256 --ignore-missing -c checksums.txt
tar xzf igris_0.5.0_<os>_<arch>.tar.gz
install -m 755 igris ~/.local/bin/igris
igris versionYour v0.4 plans and configs work unchanged, and keep their config hash: a run interrupted under v0.4 resumes without a config-changed notice. Your existing runs.jsonl keeps working; history and report show — for details old runs didn't record.
Behavior changes
- The live tail is on by default. igris reads the current session's pane every
poll_intervalto draw it. Settail = falseunder[tui]to turn it off; igris then never reads the pane. igris historyshows run IDs after each run's start time ("run"in--json). Scripts parsing the text output may need adjusting.- A damaged
runs.jsonlline no longer breaksigris history: lines that can't be read are skipped with a note, and the rest shows. runs.jsonllines carry"v":1and new fields and events (task_retried,needs_you,needs_you_clear). Existing fields keep their meaning; scripts reading the file should ignore what they don't know.- The narrow run view's top line shows the phase's progress (
M0 · 3/7) instead ofphase M0. - Notifications don't follow redirects (ntfy and Discord included): a
3xxis reported as a failure, so set the final URL. Failures say only what went wrong (connection refused,TLS failed,server answered 403 Forbidden, …), never the URL or host. Discord and Slack webhook URLs must behttps.
Known limitations
- Linux and macOS; Windows through WSL2 only, not yet verified on a real Windows machine.
- Release artifacts are not signed (SHA-256 checksums only).
See CHANGELOG.md for every change in this release and the README for the full guide.