{"slug":"slack-to-steve","total":13,"limit":100,"offset":0,"since":null,"commits":[{"hash":"d48a5ac","date":"2026-09-24 15:13:49 -0700","author":"Steve Abrams","subject":"MIC- SKU grid PNG generator (active MIC-prefix products from dw_unified)","body":"Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>"},{"hash":"8679504","date":"2026-09-24 14:46:56 -0700","author":"Steve Abrams","subject":"mica catalog grid PNG generator (contact sheet from micawallpaper products + dw_unified)","body":"Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>"},{"hash":"2d31494","date":"2026-09-24 14:34:14 -0700","author":"Steve Abrams","subject":"slack bridge: #general call mode (@mention/'claude'), staff no-tools path, Sonnet for speed, Slack bold, event logging","body":"Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>"},{"hash":"e1aa598","date":"2026-07-13 14:40:19 -0700","author":"Steve Abrams","subject":"slack-to-steve: Socket Mode client (socket.mjs) — Slack pushes messages over websocket, real-time, no polling/rate-limits; replaces the poller","body":""},{"hash":"9aae89c","date":"2026-07-13 10:24:22 -0700","author":"Steve Abrams","subject":"auto-save: 2026-07-13T10:24:15 (1 files) — socket.mjs","body":""},{"hash":"8c5a8be","date":"2026-07-13 09:55:14 -0700","author":"Steve Abrams","subject":"ingest: adaptive polling — 3s while a convo is active, 12s idle; 429 backoff w/ Retry-After","body":""},{"hash":"641bc93","date":"2026-07-13 09:52:39 -0700","author":"Steve Abrams","subject":"ingest: re-entrancy guard on tick() — prevents overlapping armed claude -p runs double-executing the same message","body":""},{"hash":"b51b813","date":"2026-07-13 01:33:33 -0700","author":"Steve Abrams","subject":"dashboard: pipe status + inbox + transcripts viewer on :9897 (pm2 slack-to-steve-dash)","body":""},{"hash":"bef02c4","date":"2026-07-13 01:17:16 -0700","author":"Steve Abrams","subject":"arm.sh: arm BOTH channels (Steve's call)","body":""},{"hash":"0116c5c","date":"2026-07-13 01:15:19 -0700","author":"Steve Abrams","subject":"slack-to-steve: armed claude -p path (rails-gated, per-channel scope) + watch loop + arm.sh (Steve-run)","body":""},{"hash":"27adc1d","date":"2026-07-13 00:51:47 -0700","author":"Steve Abrams","subject":"auto-save: 2026-07-13T00:51:43 (1 files) — exports/","body":""},{"hash":"0bd337e","date":"2026-07-13 00:30:11 -0700","author":"Steve Abrams","subject":"slack-to-steve: multi-channel poller — watch both #claude-chat and #claude-to-steve","body":""},{"hash":"de634c1","date":"2026-07-12 23:01:45 -0700","author":"Steve Abrams","subject":"slack-to-steve: pre-build two-way #claude-to-steve poller (DTD verdict A), un-armed pending read scope","body":""}]}