You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
nightshift ui — interactive terminal UI (scripts/nightshift-ui.sh, 395 lines). Live view of task list with selection cursor, current phase, validation/chrome attempt counters, last error, and a scrollable log/event pane. Refreshes every 0.2s. q to quit, arrow keys to navigate, toggles for log mode. Pure bash + python3 (for JSON parse). No external TUI library.
Runner state + event emitters. Both run-agent-loop.sh and nightshift-bulletproof.sh now write .agent-logs/run_state.json (current snapshot) and append to .agent-logs/run_events.jsonl (event log) at every phase transition: run_start, task/step_start, validate_start, validate_failed, chrome_start, task/step_complete, tasks_complete, run_complete, stopped. This powers the TUI and any external monitoring.
ROADMAP-UI.md — staged plan for evolving the TUI toward a Claude-Code-like experience.
Fixed
TUI task-list rendering showed doubled checkboxes ([ ] - [ ]). Cause: ${line#- [ ] } parameter strip — bash parses [ ] as a glob character class (one space), not literal brackets, so the prefix was never stripped. Fixed with fixed 6-char offset (${line:6}), since the - [x] checkbox prefix is always exactly 6 chars.
Added — distribution + docs (from this session)
USAGE.md — consolidated how-to-use guide (three install paths + troubleshooting). Surfaces the "must run /plugin install AFTER /plugin marketplace add" gotcha.
.github/workflows/npm-publish.yml — auto-publish to npm on tag push (needs NPM_TOKEN secret with bypass-2FA; fails-safe when missing).
Branch protection on main with 8 required status checks. No force-push, no deletion.
README install section links to USAGE.md and clarifies the /plugin install + full-restart requirement.