diff --git a/packages/ui/src/features/loops/components/LoopBehaviorFields.tsx b/packages/ui/src/features/loops/components/LoopBehaviorFields.tsx
new file mode 100644
index 0000000000..935185a321
--- /dev/null
+++ b/packages/ui/src/features/loops/components/LoopBehaviorFields.tsx
@@ -0,0 +1,44 @@
+import type { LoopSchemas } from "@posthog/api-client/loops";
+import { Switch } from "@posthog/quill";
+import { Flex, Text } from "@radix-ui/themes";
+import { isAutoFixEnabled, withAutoFix } from "../loopFormTypes";
+
+interface LoopBehaviorFieldsProps {
+ behaviors: LoopSchemas.LoopBehaviors;
+ onChange: (behaviors: LoopSchemas.LoopBehaviors) => void;
+ disabled?: boolean;
+}
+
+export function LoopBehaviorFields({
+ behaviors,
+ onChange,
+ disabled,
+}: LoopBehaviorFieldsProps) {
+ return (
+
+
+
+
+ Auto-fix pull requests
+
+
+ Watch CI and review comments on PRs this loop opens, and let Claude
+ push fixes.
+
+
+
+ onChange(withAutoFix(behaviors, checked))
+ }
+ />
+
+
+ );
+}
diff --git a/packages/ui/src/features/loops/components/LoopForm.tsx b/packages/ui/src/features/loops/components/LoopForm.tsx
index f7e26acae0..15647e6f73 100644
--- a/packages/ui/src/features/loops/components/LoopForm.tsx
+++ b/packages/ui/src/features/loops/components/LoopForm.tsx
@@ -21,11 +21,13 @@ import { useLoopDraftStore } from "../loopDraftStore";
import {
emptyLoopFormValues,
formValuesToLoopWrite,
+ isAutoFixEnabled,
isLoopFormValid,
isTriggerDraftValid,
type LoopFormValues,
loopToFormValues,
} from "../loopFormTypes";
+import { LoopBehaviorFields } from "./LoopBehaviorFields";
import { Field } from "./LoopFormPrimitives";
import { LoopModelFields } from "./LoopModelFields";
import { LoopNotificationsFields } from "./LoopNotificationsFields";
@@ -230,6 +232,16 @@ export function LoopForm({ loop }: LoopFormProps) {
+
+ patch({ behaviors })}
+ />
+
+
+
+
{
const isCurrent = index === current;
const isDone = index < current && complete[index];
- // Free navigation back to any earlier step; forward only into the step
- // immediately after a completed one, so you can't skip required fields.
- const reachable = index <= current || complete[index - 1];
+ // Steps navigate freely in both directions; skipping ahead is safe
+ // because Next stays gated per step and Create on the whole form.
return (