Do jeito que eu faço: Eu crio um arquivo de texto fictício e o armazeno em alguma pasta em meus documentos (isso é usado como um modelo para cada vez que o serviço é executado). Em seguida, crio um fluxo de trabalho (serviço) da seguinte forma:
Tudooquevocêprecisafazeragoraéclicarcomobotãodireitodomousenapastaemquedesejacolocaronovoarquivoeselecionaroserviçocriadosalvandoestefluxodetrabalho.
Paraabriroarquivorecém-criado,vocêpodeadicionarumaação"abrir itens do Finder", na qual você obviamente selecionaria TextMate em vez de TextEdit. Para torná-lo independente do editor, você pode avisá-lo para abrir com seu aplicativo padrão, e ele fará isso.
Se pedir o nome em tempo de execução for muito importante para você, adicione uma ação get text e atribua-a a uma segunda variável e adicione uma ação rename após a ação copy e diga replace text, substituindo o nome de seu arquivo de modelo com a variável de texto. Por padrão, você não pode usar variáveis de texto da maneira que descrevi, mas a postagem a seguir fornece uma solução para isso. Eu sei que funciona em 10.6, e pode ou não funcionar com versões anteriores do OSX.
veja aqui para instruções