From 1034e337bab8851e7d67bb1ad3a06a1629f7e4b2 Mon Sep 17 00:00:00 2001 From: MaheshtheDev <38828053+MaheshtheDev@users.noreply.github.com> Date: Wed, 29 Jul 2026 21:47:29 +0000 Subject: [PATCH] feat(web): Company Brain proactivity settings UI (#1374) Part of ENG-1135 --- apps/web/components/configure-view.tsx | 21 +- .../settings/company-brain-proactivity.tsx | 292 ++++++++++++++++++ .../settings/proactiveness-icon.tsx | 22 +- apps/web/hooks/use-brain-settings.ts | 76 +++++ 4 files changed, 390 insertions(+), 21 deletions(-) create mode 100644 apps/web/components/settings/company-brain-proactivity.tsx create mode 100644 apps/web/hooks/use-brain-settings.ts diff --git a/apps/web/components/configure-view.tsx b/apps/web/components/configure-view.tsx index c36ea5e4..21206920 100644 --- a/apps/web/components/configure-view.tsx +++ b/apps/web/components/configure-view.tsx @@ -5,7 +5,9 @@ import { Blocks, CalendarClock, Cpu, ScrollText } from "lucide-react" import { useState } from "react" import CompanyBrainConnections from "@/components/settings/company-brain-connections" import CompanyBrainModels from "@/components/settings/company-brain-models" +import CompanyBrainProactivity from "@/components/settings/company-brain-proactivity" import Proactiveness from "@/components/settings/proactiveness" +import { ProactivenessIcon } from "@/components/settings/proactiveness-icon" import { WorkspacePrompt } from "@/components/settings/workspace-prompt" import { ErrorBoundary } from "@/components/error-boundary" import { useAuth } from "@lib/auth-context" @@ -15,13 +17,14 @@ type ConfigureSection = | "company-brain" | "models" | "workspace-prompt" + | "proactivity" | "automations" const SECTIONS: { id: ConfigureSection label: string description: string - icon: typeof Blocks + icon: React.ComponentType<{ className?: string }> }[] = [ { id: "company-brain", @@ -44,6 +47,13 @@ const SECTIONS: { "Persistent guidance for how your brain works across the workspace. Fixed safety, access, and approval constraints still apply.", icon: ScrollText, }, + { + id: "proactivity", + label: "Proactivity", + description: + "When Company Brain speaks up in Slack without being asked. Quiet channels are still read and remembered.", + icon: ProactivenessIcon, + }, { id: "automations", label: "Automations", @@ -62,16 +72,13 @@ export function ConfigureView() { return (
-
+