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
| Aspect | Regular Agent | Hand |
|---|---|---|
| Activation | Manual spawn | One-command activation |
| Interaction | You chat with it | It works for you |
| Scheduling | One-off messages | 24/7 autonomous runs |
| Configuration | Manifest editing | Settings modal UI |
| Pre-built | You define everything | Bundled & ready |
| Dashboard | Generic metrics | Custom metrics per Hand |
Example: Lead Generation Hand
Example: Lead Generation Hand
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.)
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.
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.
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.
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.
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.
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.
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.
Web automation agent. Navigates sites, fills forms, clicks buttons, handles multi-step workflows. Uses Playwright bridge with session persistence. Mandatory purchase approval gate.
Hand Definition (HAND.toml)
Every Hand is defined by aHAND.toml manifest:
Hand Settings Schema
Hand Settings Schema
Settings are typed and validated before activation:At activation time, the kernel:
- Validates user-provided settings against the schema
- Resolves provider environment variables (e.g.,
GROQ_API_KEYfor a Groq option) - Injects a settings block into the agentβs system prompt
- Stores the config in the Hand instance
Hand Lifecycle
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
HAND.toml.Agent Spawning
The kernel:
- Creates a new
HandInstancewith a unique UUID - Resolves settings into a prompt block and env var list
- Spawns an agent using the Handβs
agenttemplate - Injects the settings prompt block into the system prompt
- Grants the agent access to specified tools and skills
- Stores the instance in the Hand registry
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.
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.Hand Instance Management
Skill Injection
Hands can bundle a SKILL.md file with domain expertise. At runtime, this is injected into the agentβs context:Guardrails & Approval Gates
Some Hands have mandatory approval gates for sensitive actions:Browser Hand Purchase Protection
Browser Hand Purchase Protection
The Browser Hand has a built-in purchase detector:Before any purchase-like action:
- Agent pauses execution
- Sends approval request to user via configured channel
- Waits for explicit
approveordenyresponse - Times out after 5 minutes if no response
Twitter Hand Approval Queue
Twitter Hand Approval Queue
Every tweet goes into an approval queue before posting:Output:Approve individually or in batch:
Custom Hands
You can build your own Hands:Add SKILL.md (optional)
Create a
SKILL.md file with domain expertise. This will be injected into the agentβs context at runtime.Dashboard Metrics
Hands define custom metrics that appear in the dashboard:number: Raw integer displayduration: 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