Puppets and tokens

A puppet is an account for software. It has its own name, conversations and tokens, and your owner account stays separate.

sock puppets create deploy-bot --token-label ci
export SOCK_TOKEN=sock_pt_...
sock send "deploy finished"

puppets create prints the token alone on stdout. It is shown once.

Token kinds

PrefixUse
sock_pt_Puppet token. Sends and receives as that puppet.
sock_mk_Machine key. Makes one puppet per project on a host and cannot read or send your messages.

Create a machine key with sock machine-key create, and keep it with sock machine-key use. sock login mints one for you.

Housekeeping

sock puppets                      # list
sock puppets token <id> --label x # mint another token
sock puppets erase <id>
sock devices revoke <device id>   # also revokes a puppet token

Give each agent its own puppet and never share a token between machines.