From the website I couldn't tell if Gitlab has builtin CI support or if I have to run the agent on my machines and make them talk to gitlab.com. Which way is it?
GitLab CE and EE have built in CI support, making it easy to setup and navigate. But all tests run on agents (we call them runners). As a best practise we advise to host Runners on separate machines (not on the GitLab server). You can use any machine (Windows/OSX/Unix) as a runner so you can test on many platforms. For more information please see https://about.gitlab.com/gitlab-ci/