Pretty much everything in Pi is handled by extensions. There's an extension for customizing the system prompt here: https://pi.dev/packages/pi-custom-system-prompt
My guess is that harnesses don't make core system prompts customizable out of the box because the system prompt is one of the defining features of the agent, and something they constantly iterate on and test between releases.
Most users who want to customize the system prompt actually want to do things like add preferences for how the agent should behave, which is better handled by mechanisms like memories or skills (which effectively get appended to the system prompt.)
Oh no, memories and skills are terrible replacements for system prompts.
Not only they get "lost" and ignored as the context grows, but the baseline behaviour of system prompts is retained in the agent.