How can I modify the mix new task?

I’m making a custom task to help us easily create applications under an umbrella app. Since most of our sub-applications are expected to be very similar, it would make sense for us to use a task to help us out. I’m trying to look at how the “mix new” task is executed, but I can’t find its code. I thought maybe that I could copy “mix phx.new” as an alternative, but likewise, I don’t see where it stores its code (I don’t see anything like that inside deps/phoenix/lib/mix/tasks/).

Ideally, I would like our custom task (e.g. mix my.new) to run the normal “mix new” stuff, then copy in a couple additional files. How might this best be done?

Thanks!

The code for mix new and the code for mix phx.new. And to call another mix task, you should be able to use Mix.Task.run/2