$ git status
$ docker compose up -d
$ ls -la --color=auto
$ grep -rn --color=auto
$ kubectl get pods -n production
42 characters average. Every. Single. Time.
Persona is the command identity studio that transforms verbose, forgettable terminal inputs into elegant, memorable shortcuts. Craft once, use forever.
Backed by mandō
$ gs
$ dcu
$ ll
$ rg
$ kgp
3 characters average. Effortless. Always.
Persona gives you a full suite of tools to create, curate, and maintain a collection of command identities. Each feature maps to a real, battle-tested capability.
persona name='command'
Define a shortcut identity for any command. One elegant assignment, infinite productivity gains. This is the core of Persona — give any verbose command a name that feels like it was always there.
persona or persona -p
View your entire curated collection of command identities in a single, beautifully formatted
inventory. The -p flag outputs in a portable format suitable for sharing across
environments.
persona name
Inspect any single identity in your collection. See exactly what lies behind every shortcut — full transparency into the mapping between persona and command.
persona cmd='other '
When an identity value ends with a trailing space, the next word following gets checked for identity expansion too. Cascading resolution for compound workflows that flow naturally.
persona ls='ls -la'
Name an identity the same as the original command and our engine handles it gracefully — no infinite loops, no catastrophic recursion. The first word of the replacement is tested, but an identical word is never expanded twice.
~/.bashrc / ~/.zshrc
Your identities persist across sessions when added to your shell configuration. Configure once, use forever. Persona identities survive reboots, updates, and existential crises.
Look at your terminal history. Find the commands you type hundreds of times per week. The 40-character monsters. The copy-paste crutches. These are your candidates.
Assign each command a short, memorable identity. Two to four characters is the sweet spot. The name should feel intuitive — your future self will thank you.
persona gs='git status'
Add your identities to your shell configuration file. They persist across every session, every reboot, every machine migration. Your workflow is now permanently refined.
See the transformation in real time. Enter a command on the left, give it a name, and watch Persona craft the identity.
# Define the identity
$ persona glog='git log --oneline --graph --all'
# Use it
$ glog
* a3f2e1d Add responsive layout * 8b1c4a7 Fix authentication flow * 2d9e0f3 Initial commit
A hand-picked collection of the most beloved command identities, curated by our community. Each one tested, refined, and ready to deploy.
See exactly how many keystrokes Persona saves you. Compound those savings over weeks and months — the numbers speak for themselves.
Every plan includes our core Identity Forge engine. Upgrade for unlimited collections, advanced workflows, and team features.
For individuals dipping their toes into command refinement.
For developers who refuse to type the same command twice.
-p)For teams that want a shared, curated identity system across every workstation.
For organisations that need identity governance at scale.
"Persona fundamentally changed how my team interacts with the terminal. We went from typing 40-character commands to 3-character identities. Our velocity metrics went through the roof."
"I used to have a notes doc with all my long commands. Now I have Persona. It's like giving every command a proper name instead of a serial number. The identity forge is genuinely beautiful."
"Chain Mode alone was worth the upgrade. Being able to cascade identity expansion across compound commands unlocked workflows I didn't know were possible. This is infrastructure-level tooling."
"We rolled Persona out to 200 engineers. The Recursive Guard feature means nobody can accidentally create an infinite expansion loop. It just works. The persistence layer handles the rest."
# Create some identities
$ persona ll='ls -la'
$ persona gs='git status'
$ persona gp='git push'
$ persona dcu='docker compose up -d'
# View your gallery
$ persona
persona dcu='docker compose up -d'
persona gp='git push'
persona gs='git status'
persona ll='ls -la'
# Look up a single identity
$ persona gs
persona gs='git status'
# Bypass an identity with a backslash
$ \ls
Documents Downloads Music Pictures Projects
# Portable export format
$ persona -p
persona -p dcu='docker compose up -d'
persona -p gp='git push'
persona -p gs='git status'
persona -p ll='ls -la'
Absolutely. Persona's Recursive Guard engine handles this gracefully. If you create
persona ls='ls -la', the replacement text's first word (ls) is
checked for expansion but won't expand a second time since it matches the identity being
expanded. No infinite loops. Ever.
Yes, when you add your Persona definitions to your shell configuration file
(~/.bashrc or ~/.zshrc), they load automatically with every new
session. Your identities are as persistent as you need them to be.
Persona expands identities at parse time by substituting the identity value for the identity
name. Any arguments you type after the identity name are passed through naturally. For
example, persona gs='git status' means gs . becomes
git status .. For more complex argument handling, we recommend pairing Persona
with shell functions.
Prefix the command with a backslash: \ls will run the original command,
bypassing any Persona identity defined for ls. You can also use
command ls for the same effect.
Persona operates entirely within your local shell environment. Your command identities never leave your machine. There are no API calls, no telemetry, no cloud sync (unless you opt into our Studio tier). Your workflow is your own.