A keyword-heavy, listener-based programming language built to seamlessly construct and intercept network connections globally. Stop writing boilerplate socket code.
// Define server binding and scope
@listen 8080
@type all
// Global state maintained by the VM
global blocklist = new List()
// The VM automatically injects connections here
listener Firewall(conn) {
if conn.country == 'CN' or conn.country == 'RU' then
drop
end
else accept
}
Designed specifically for modern network engineers and security researchers who need to prototype resilient intercepts in seconds.
Write pure policy logic. The P# auto-listening Virtual Machine handles all background socket operations, polling, and multithreading automatically.
Scripts compile to secure `.pbc` artifacts and execute on a hyper-optimized, stack-based virtual machine written natively in Go.
Comes out of the box with a fully-featured Language Server Protocol (LSP) providing squiggly diagnostics, autocompletion, and hover info.
Get started in seconds on macOS or Linux using our universal installer script.
The installer will automatically detect your architecture, verify
checksums, and place the psh compiler and Language Server in your path.
| Operating System | Architecture | Release (v0.1.0) |
|---|---|---|
| Linux | AMD64 (x86_64) | psh-linux-amd64.tar.gz |
| macOS | Apple Silicon (ARM64) | psh-macos-arm64.tar.gz |
| macOS | Intel (AMD64) | psh-macos-amd64.tar.gz |
| Windows | AMD64 (x86_64) | psh-windows-amd64.zip |