Update ralph-loop to guardrail hooks task

Switch from completed morning-report to guardrail hooks implementation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
OpenCode Test
2026-01-07 11:11:27 -08:00
parent 0fd0e74b67
commit c14c0d843d

View File

@@ -1,25 +1,23 @@
---
active: true
iteration: 36
max_iterations: 0
completion_promise: "The morning-report skill is fully implemented, tested, and registered"
started_at: "2026-01-03T08:16:44Z"
iteration: 1
max_iterations: 20
completion_promise: "Guardrail hooks are fully implemented, tested, and registered"
started_at: "2026-01-07T18:52:10Z"
---
Build the morning-report skill following the design at ~/.claude/docs/plans/2025-01-02-morning-report-design.md
Implement guardrail hooks following the design at ~/.claude/docs/plans/2025-01-06-guardrail-hooks-design.md
Implementation order:
1. Create skill skeleton: ~/.claude/skills/morning-report/ with SKILL.md and config.json
2. Build collectors: weather.py, stocks.py, infra.py (easy wins first)
3. Build gtasks.py collector (Google Tasks API - add OAuth scope)
4. Build news.py collector (RSS feeds)
5. Build generate.py orchestrator and render.py templating
6. Create systemd timer and /morning command
7. Test end-to-end and verify output
Use appropriate LLM tiers:
- Haiku: weather, stocks, infra formatting
- Sonnet: email triage, news summarization
- None: calendar, tasks (structured data)
1. Create state/guardrails.json with starter rules config
2. Create hooks/scripts/guardrail.py main logic
3. Create hooks/scripts/guardrail-confirm.py confirm helper
4. Modify hooks/hooks.json to add PreToolUse registration
5. Modify hooks/scripts/session-end.sh to clear session allowlist
6. Create logs/ directory
7. Test: block scenario (catastrophic command pattern)
8. Test: confirm scenario (operation outside safe paths)
9. Test: allow scenario (operation in safe path)
10. Test: git-aware detection
Register in component-registry.json when complete.