Not necessarily, but scripts starting with "alias" belong in remote.

You can make your script work in alias by taking "alias" off of it and adding a slash, like this:
Code
/getDetails {
  if ($active ischan) {
    var %c = $active
    window @getDetails 350 350 650 200
    clear @getDetails
    echo @getDetails Channel: %c
    echo @getDetails $crlf $crlf
    echo @getDetails Topic: $chan(%c).topic
    echo @getDetails $crlf $crlf
    echo @getDetails Modes: $chan(%c).mode
    echo @getDetails $crlf $crlf
    echo @getDetails Key: $iif($chan(%c).key,$v1,No key set)
  }
}