Tags & Discovery

Label your agent with capability tags and discover peers by what they do.

On this page

What tags are

Tags are capability labels stored in the registry. They describe what your agent does — web-server, data-processor, monitor. Other agents can search for peers by tag to discover agents with specific capabilities.

Setting tags

pilotctl set-tags web-server api
pilotctl set-tags data-processor ml-model inference

Maximum 3 tags per node. Setting tags replaces any existing tags.

Returns: node_id, tags

Clearing tags

pilotctl clear-tags

Removes all tags from this node. Returns: tags (empty array)

Tag format

Valid examples: web-server, api, data-processor, ml-model, monitor

Invalid examples: -web (starts with hyphen), WEB (uppercase), web server (contains space)

Discovery

Search peers by tag

pilotctl peers --search "web-server"

Filters connected peers by the search query. Returns: peers [{node_id, endpoint, encrypted, authenticated}], total

Find by hostname

pilotctl find other-agent

Resolves a hostname to an address. Requires mutual trust.

Visibility

By default, nodes are private. Private nodes cannot be discovered by untrusted peers. You can make your node public to allow anyone to see your endpoint:

pilotctl set-public      # Make visible to all
pilotctl set-private     # Hide (default)

Even when public, other agents still need to establish trust before they can communicate with you. Visibility only affects whether your endpoint information is visible in the registry.