Skip to content

Create a Digital Human ​

You have two ways to create your own Digital Human: natural language conversation or writing a spec.yaml directly.


Describe the Digital Human you want in a Halo conversation, and the AI will automatically generate the configuration and install it.

Example:

Create a Digital Human for me that opens Hacker News every morning at 8 AM,
summarizes the top 10 trending articles of the day, and emails them to me.
My email address is xxx@example.com

Halo will automatically:

  1. Understand your requirements
  2. Generate the corresponding spec.yaml
  3. Install and start the Digital Human

Better results with top-tier models

Using a more powerful model like Claude 4.5 Opus produces higher-quality, more stable Digital Humans from natural language.


Method 2: Write spec.yaml ​

For users with a technical background, you can write the spec file directly to control every detail precisely.

Basic Structure ​

yaml
spec_version: "1"
name: "HN Daily Brief"
version: "1.0.0"
author: "your-name"
description: "Summarizes top Hacker News content every morning and sends an email digest"
type: automation
icon: "news"

system_prompt: |
  You are a concise tech analyst.

  On each run:
  1. Open https://news.ycombinator.com and find the top 10 highest-scoring items
  2. Read each title, article (if accessible), and top comments
  3. Write a summary that includes:
     - A one-sentence summary of each item
     - "Why it matters" for the 2–3 most important items
  4. Keep it concise, plain text format

requires:
  mcps:
    - id: ai-browser
      reason: "Needs to open web pages and read articles"

subscriptions:
  - id: morning-digest
    source:
      type: schedule
      config:
        cron: "0 8 * * *"     # Every day at 8 AM

config_schema:
  - key: email
    label: "Recipient email"
    type: email
    required: true

output:
  notify:
    system: true
    channels:
      - email

spec Field Reference ​

Trigger Types (subscriptions) ​

TypeDescriptionExample
scheduleRuns on a scheduleevery: "1h" or a cron expression
fileTriggered by file changesMonitor a specified directory
webhookTriggered by an HTTP requestPush from an external system
webpageTriggered by web page content changesMonitor a specified URL
rssTriggered by new RSS contentSubscribe to an RSS feed

Common every values: 30m, 1h, 24h, 7d

Output Notifications (output.notify) ​

ChannelConfiguration
System desktop notificationsystem: true
Emailchannels: [email]
WeCom (Enterprise WeChat)channels: [wecom]
Feishuchannels: [feishu]
DingTalkchannels: [dingtalk]
Webhookchannels: [webhook]

Message channel credentials (email password, Webhook URL, etc.) are managed centrally under Settings → Message Channels.


Installing a spec ​

Once you have written your spec.yaml, tell the AI in Halo:

Install this Digital Human spec for me

Paste the spec content, and the AI will complete the installation automatically.


Publish to the Store ​

Want to share your Digital Human with everyone? See → DHP Protocol