added plan

This commit is contained in:
João Pedro Battistella Nadas
2026-04-30 08:08:55 +02:00
parent 21da959ff2
commit 58d1cd69fd

21
plan.md
View File

@@ -207,9 +207,14 @@ Each tool module exports:
- Timeout: 15s - Timeout: 15s
- Output truncation: 12,000 chars - Output truncation: 12,000 chars
#### `tools/write_code.py` — Claude Code Subprocess #### `tools/write_code.py` — Valinor Code Changes
- Clones valinor repo → runs `claude --print` → creates branch + PR - Clones valinor repo → runs `claude --print` → creates branch + draft PR
- Risk classification for changes (optional, simpler than infra-agent's) - Scope: infrastructure changes (apps/, manifests/, ansible/, terraform/)
- Always creates draft PRs, never merges
#### `tools/write_documentation.py` — Lord of the Rings Doc Changes
- Clones lord-of-the-rings repo → runs `claude --print` → creates branch + draft PR
- Scope: homelab documentation (docs, runbooks, index pages)
- Always creates draft PRs, never merges - Always creates draft PRs, never merges
### Tasks ### Tasks
@@ -330,8 +335,8 @@ Add Telegram or Signal as alternative interfaces.
## Open Questions ## Open Questions
1. **Ansible access**: Should tolkien be able to run ansible playbooks, or just read the config? Running playbooks from in-cluster would need SSH keys to external hosts — big blast radius. Start read-only? 1. ~~**Ansible access**~~: Read config + propose changes via draft PR. Operator runs playbooks manually.
2. **write_code scope**: Should it only modify valinor, or also lord-of-the-rings? Probably both (code + docs). 2. ~~**write_code scope**~~: Two separate tools — `write_code` for valinor (infra), `write_documentation` for lord-of-the-rings (docs). Both produce draft PRs.
3. **Streaming responses**: Should the CLI stream Claude's response as it generates, or wait for the full response? Streaming is better UX for long answers. 3. ~~**Streaming responses**~~: Full response mode. CLI will be used on unreliable internet (trains), so wait for complete response rather than streaming.
4. **Rate limiting**: Any concern about Anthropic API costs? Could add a simple per-session token budget. 4. ~~**Rate limiting**~~: Use a dedicated Anthropic API key for tolkien with a monthly spend limit set in the Anthropic Console. No in-app budget tracking needed.
5. **lotr access in-cluster**: Git clone as init container (stale) vs. mount from a shared PVC vs. fetch on demand via Gitea API? Gitea API is simplest and always fresh. 5. ~~**lotr access in-cluster**~~: Git clone (init container or sidecar with periodic pull). Faster reads, works offline if needed.