# How to Use `distilly get` to Resolve a Person or Retrieve Profile Information

> Learn how to use distilly get to resolve a person or retrieve profile information. Easily get person profiles with source material using the distilly CLI tool.

- Repository: [Tianyi Zhou/distilly](https://github.com/titanwings/distilly)
- Tags: how-to-guide
- Published: 2026-09-10

---

**You can resolve a person or retrieve their profile information by running `$distilly get <person-name>` or `/distilly get <person-name>`, then selecting a family category and optionally supplying source material to generate an Agent-compatible Person Profile.**

The `titanwings/distilly` repository provides a command-line interface for creating structured Person Profiles from unstructured data. The `distilly get` command serves as the primary entry point for resolving identities and retrieving profile information within the Distilly skill ecosystem. This guide explains how to use the CLI based on the actual source implementation.

## Understanding the `distilly get` Command

The `distilly get` subcommand is implemented in the CLI entry point at `bin/distilly.mjs`, which parses arguments and delegates to the profile resolution logic. According to the source analysis, the command follows an interactive workflow defined in the repository's README.

### CLI Entry Point Location

In `bin/distilly.mjs`, the application handles argument parsing for the `$distilly` and `/distilly` entry points according to the test suite. This file contains the main execution logic that initiates the person resolution workflow when the `get` subcommand is detected.

## Step-by-Step Workflow for Resolving a Person

Based on lines 75-85 of [`README.md`](https://github.com/titanwings/distilly/blob/main/README.md), the resolution process follows four distinct stages:

1. **Invoke the command** - Run `$distilly get <person>` or use the slash command `/distilly get <person>` to initiate profile creation.

2. **Select a family category** - Choose between `colleague`, `relationship`, or `celebrity` to classify the person type.

3. **Add source material** - Optionally provide descriptions, documents, or data source references. Every field is optional, but additional context improves profile accuracy.

4. **Review generated output** - Examine the synthesized Person Profile and confirm the result. Distilly packages the output as an installable Agent Skill named with the family slug.

## Entry Points and Syntax Variations

The test suite in [`tests/test_skill_entrypoint_docs.py`](https://github.com/titanwings/distilly/blob/main/tests/test_skill_entrypoint_docs.py) validates three distinct entry point formats that all resolve to the same functionality:

- **`$distilly`** - The shell-style command prefix recognized by the CLI
- **`/distilly`** - The slash command format used in Agent interfaces
- **`/skill:distilly`** - The explicit skill invocation syntax

As implemented in `bin/distilly.mjs`, these entry points trigger the same profile resolution logic.

## Practical Code Examples

```bash

# Basic person resolution

$distilly get "Alice Johnson"

# Specify family category explicitly

$distilly get --family colleague "Bob Smith"

# Include description inline

$distilly get "Carlos Ruiz" --desc "Senior backend engineer, Go specialist"

# Using slash command syntax in Agent console

/distilly get "Eve Anderson"

```

## How Profile Generation Works Under the Hood

Once you execute `distilly get`, the system processes your input through two key components:

- **[`tools/skill_writer.py`](https://github.com/titanwings/distilly/blob/main/tools/skill_writer.py)** - Assembles the profile from supplied material and writes the skill files to disk according to the generation settings.
- **[`tools/skill_schema.py`](https://github.com/titanwings/distilly/blob/main/tools/skill_schema.py)** - Validates the generated profile against the required schema, ensuring compatibility with Agent hosts like Claude Code, OpenClaw, and Hermes.

The [`skill_writer.py`](https://github.com/titanwings/distilly/blob/main/skill_writer.py) module handles the actual creation of the Person Profile package that can be installed using the `/skill:<family-slug>` syntax.

## Summary

- **`distilly get`** is the primary CLI command for resolving person profiles in the `titanwings/distilly` repository.
- The command supports multiple entry point syntaxes: `$distilly`, `/distilly`, and `/skill:distilly`.
- Users must select a family category (`colleague`, `relationship`, or `celebrity`) during the interactive workflow defined in the README.
- Source material is optional but improves the quality of the generated Person Profile.
- The underlying implementation relies on `bin/distilly.mjs` for CLI parsing and [`tools/skill_writer.py`](https://github.com/titanwings/distilly/blob/main/tools/skill_writer.py) for profile generation.

## Frequently Asked Questions

### What is the difference between `$distilly` and `/distilly` syntax?

Both entry points invoke the same underlying command parser in `bin/distilly.mjs`. The `$distilly` format is typically used in shell environments, while `/distilly` is the standard format for Agent chat interfaces. The test suite in [`tests/test_skill_entrypoint_docs.py`](https://github.com/titanwings/distilly/blob/main/tests/test_skill_entrypoint_docs.py) confirms both strings are recognized by the CLI.

### Can I use `distilly get` without providing any description?

Yes. According to the README usage instructions, every field including the description is optional. You can run `$distilly get "Name"` and Distilly will generate a basic profile based on available data, though providing source material yields more accurate results.

### What family categories are available when resolving a person?

The three supported family categories are `colleague`, `relationship`, and `celebrity`. These categories determine the schema and generation settings applied by [`tools/skill_schema.py`](https://github.com/titanwings/distilly/blob/main/tools/skill_schema.py) when creating the final Person Profile skill.

### Where does Distilly store the generated profile?

The profile generation logic in [`tools/skill_writer.py`](https://github.com/titanwings/distilly/blob/main/tools/skill_writer.py) writes the skill files to the local filesystem. The output is packaged as an Agent Skill that can be installed in compatible hosts using the `/skill:<family-slug>` syntax.