loop: prevent panic on double Agent.Init
diff --git a/loop/agent.go b/loop/agent.go
index fec5dd7..88354e3 100644
--- a/loop/agent.go
+++ b/loop/agent.go
@@ -529,6 +529,9 @@
 }
 
 func (a *Agent) Init(ini AgentInit) error {
+	if a.convo != nil {
+		return fmt.Errorf("Agent.Init: already initialized")
+	}
 	ctx := a.config.Context
 	if ini.InDocker {
 		cmd := exec.CommandContext(ctx, "git", "stash")