Sbt custom settingKey

I need an sbt file to refer to a setting defined in another file. Basically, I want to define the setting foo and the task bar in separate files:

ThisBuild / scalaVersion := "3.7.3"

lazy val foo = settingKey[Seq[String]]("The foo setting.")

lazy val program = (project in file(".")).settings(
  name := "Foo",
  foo  := Seq("foo")
)

lazy val bar = taskKey[Unit]("The bar task.")

bar := {
   println(name.value) // works, even in separate files
   println(foo.value) // fails unless everything is in the same sbt file
}

Is there a way to import foo in the file that defines bar? Or to define foo so it’s like name, visible everywhere?