Skip to main content

What Are Hands?

Hands are OpenFang’s core innovation — pre-built autonomous capability packages that run independently, on schedules, without you having to prompt them. Traditional agents wait for you to type something. Hands work for you.
A Hand is not just an agent — it’s a complete capability bundle: manifest, system prompt, skills, tools, requirements, settings schema, and dashboard metrics.

Hands vs Regular Agents

You activate the Lead Hand once:
From that moment:
  • It runs daily at 6 AM
  • Scrapes your ICP (Ideal Customer Profile) from web sources
  • Enriches prospects with company data, social profiles, and contact info
  • Scores each lead 0-100 using your criteria
  • Deduplicates against your existing database
  • Delivers a CSV/JSON report to your configured channel (Telegram, email, etc.)
You check in on it. You don’t prompt it.

The 7 Bundled Hands

OpenFang ships with 7 production-ready Hands:

Clip Hand

Category: Content
Takes YouTube URLs, downloads videos, identifies highlights, cuts vertical shorts with captions/thumbnails, adds AI voice-over, publishes to Telegram/WhatsApp. 8-phase pipeline. Supports FFmpeg, yt-dlp, 5 STT backends.

Lead Hand

Category: Productivity
Daily prospect discovery matching your ICP. Enriches with web research, scores 0-100, deduplicates, delivers qualified leads. Builds ICP profiles over time.

Collector Hand

Category: Security
OSINT-grade intelligence gathering. Monitors companies/people/topics continuously. Change detection, sentiment tracking, knowledge graph construction, critical alerts.

Predictor Hand

Category: Data
Superforecasting engine. Collects signals from multiple sources, builds calibrated reasoning chains, makes predictions with confidence intervals, tracks accuracy using Brier scores. Has contrarian mode.

Researcher Hand

Category: Productivity
Deep autonomous researcher. Cross-references multiple sources, evaluates credibility using CRAAP criteria, generates cited reports with APA formatting, supports multiple languages.

Twitter Hand

Category: Communication
Autonomous Twitter/X account manager. Creates content in 7 rotating formats, schedules posts for optimal engagement, responds to mentions, tracks performance. Has approval queue.

Browser Hand

Category: Productivity
Web automation agent. Navigates sites, fills forms, clicks buttons, handles multi-step workflows. Uses Playwright bridge with session persistence. Mandatory purchase approval gate.
The Browser Hand will never spend your money without explicit confirmation. All purchase-like actions (checkout, payment forms) require user approval.

Hand Definition (HAND.toml)

Every Hand is defined by a HAND.toml manifest:
Settings are typed and validated before activation:
At activation time, the kernel:
  1. Validates user-provided settings against the schema
  2. Resolves provider environment variables (e.g., GROQ_API_KEY for a Groq option)
  3. Injects a settings block into the agent’s system prompt
  4. Stores the config in the Hand instance

Hand Lifecycle

1

Discovery

User browses available Hands in the dashboard or CLI:
Output:
2

Requirement Validation

Before activation, OpenFang checks all requirements:
  • Binary requirements: Checks if ffmpeg, whisper, etc. are on PATH
  • API key requirements: Checks if environment variables are set
  • Env var requirements: Validates custom env vars
If requirements are missing, the UI shows platform-specific install instructions from HAND.toml.
3

Configuration

User provides settings in the activation modal (web UI) or via CLI flags:
4

Agent Spawning

The kernel:
  1. Creates a new HandInstance with a unique UUID
  2. Resolves settings into a prompt block and env var list
  3. Spawns an agent using the Hand’s agent template
  4. Injects the settings prompt block into the system prompt
  5. Grants the agent access to specified tools and skills
  6. Stores the instance in the Hand registry
5

Autonomous Execution

The Hand runs on its defined schedule (e.g., daily, hourly). The kernel sends the configured trigger message to the agent, which processes it through the normal agent loop.
6

Dashboard Updates

After each run, the Hand writes metrics to its structured memory:
The dashboard queries these keys and formats them according to the dashboard.metrics schema.
7

Pause/Resume

Users can pause a Hand without losing state:
Paused Hands remain in the registry but don’t execute on schedule.

Hand Instance Management

Multiple instances of the same Hand can run simultaneously:
Each instance has its own agent, memory, and configuration.

Skill Injection

Hands can bundle a SKILL.md file with domain expertise. At runtime, this is injected into the agent’s context:
This gives the agent deep domain knowledge without bloating the system prompt.

Guardrails & Approval Gates

Some Hands have mandatory approval gates for sensitive actions:
The Browser Hand has a built-in purchase detector:
Before any purchase-like action:
  1. Agent pauses execution
  2. Sends approval request to user via configured channel
  3. Waits for explicit approve or deny response
  4. Times out after 5 minutes if no response
User approves via:
Every tweet goes into an approval queue before posting:
Output:
Approve individually or in batch:

Custom Hands

You can build your own Hands:
1

Create HAND.toml

2

Add SKILL.md (optional)

Create a SKILL.md file with domain expertise. This will be injected into the agent’s context at runtime.
3

Test Locally

4

Publish to FangHub

Once published, anyone can install your Hand:

Dashboard Metrics

Hands define custom metrics that appear in the dashboard:
Format types:
  • number: Raw integer display
  • duration: Formats seconds as “2h 15m”
  • bytes: Formats bytes as “1.5 GB”
  • currency: Formats as “$12.50”
  • percent: Formats 0.85 as “85%“

Next Steps

Build a Hand

Step-by-step guide to creating your first Hand

Hand API Reference

Full API documentation for Hand management

Security

Understand guardrails and approval gates

Agent Lifecycle

Learn how Hand agents are spawned and managed