AFAIK Pi out of the box as other harnesses handles this use case via dot directories on your filesystem. So a .pi directory in your working directory Pi gets started in is the place where you would implement such a profile.
Note that there is also a global .pi in the home directory, which takes precedence over session-local .pi directories.
In the past I used this abstraction conveniently to setup different agents for different purposes. I kinda like having this abstraction on my filesystem to inspect instead of it being hidden away in a opaque harness or, even worse, the weights of the model.
EDIT: then a Pi Extension that swaps .pi directories out, maybe via git worktrees, is just the low-hanging fruit to establish your profiles pattern I think.