crates/openfang-api/static/index_body.html
Retry
Getting Started
Setup WizardDismiss
Go
Get started quickly with the guided Setup Wizard, or configure manually:
Launch Setup WizardConfigure ManuallyDismiss
Agents Running
Tokens Used
Total Cost
Uptime
Channels
Skills
MCP Servers
Tool Calls
Providers
LLM Providers
System Health
Status
Version
Provider
Model
Security Systems
Merkle AuditTaint TrackingWASM SandboxGCRA Rate LimitEd25519 SigningSSRF ProtectionSecret ZeroizeLoop GuardSession Repair
9 defense-in-depth systems active
Connected Channels
MCP Servers
Quick Actions
New Agent Browse Skills Add Channel Create Workflow Settings
Recent Activity View All
Activity will appear here once agents start processing.
Chat with an Agent
Create Agent
Spawn a new agent
Configure Provider
Set up an LLM provider
Browse Skills
Explore available skills
Ready Generating...
Sessions+ New
No sessions
Stop
×
Choose an agent from the sidebar or go to the Agents tab to create a new one.
✓✗▶
!Generated image
Input
Result
Drop files here
📄×
Available models — pick one or keep typing
All
Switching...
No models found
×
Your Agents
Info
Files
Config
ID
State
ModeObserveAssistFull
Profile
Provider Change Save... Cancel
Model Change Save... Cancel
Created
Fallbacks
×
None — add a fallback chain
AddCancel
ChatCloneClear HistoryStop
Loading files...
No workspace files found
← Back
SaveSaving...Cancel
Name
System Prompt
Emoji
Color
ArchetypeNone
VibeNoneProfessionalFriendlyTechnicalCreativeConciseMentor Save ConfigSaving...
Allowlist: only these tools available (empty = all). Blocklist: these tools excluded.
Allowlist ×
Add
Blocklist ×
Add
×
Wizard
Raw TOML
Agent Manifest (TOML) Spawn AgentSpawning...
Agent Name
Emoji
Color
ArchetypeChoose...
ProviderLoading providers…No providers available
Model
System Prompt
Personality
Soul / Persona (editable)
Tool ProfileMinimal — Read-only file accessCoding — Files + shell + web fetchResearch — Web search + file read/writeMessaging — Agents + memory accessAutomation — All tools except customFull — All 35+ toolsCustom (manual capabilities)
Tools included
...
Capabilities Memory Read Memory Write Network Shell Agent Spawn
Provider
Model
Profile
Personality
Back
NextSpawn AgentSpawning...
Refresh
Loading...
!
Retry
AllPendingApprovedRejectedExpired
When agents request permission for sensitive actions, they'll appear here.
Agent: ·
ApproveReject
ListVisual Builder
Loading workflows...
!
Retry
What are Workflows?
Workflows chain multiple agents into automated pipelines. Each step runs an agent with a prompt template, passing output from one step as input to the next. Steps can run sequentially, fan out in parallel, loop, or branch conditionally.
Try the Visual Builder to drag and drop workflow steps.
| Name | Steps | Created | Actions |
|---|---|---|---|
| RunEditHistoryDelete |
Chain multiple agents into automated pipelines with branching, fan-out, and loops.
Create Workflow
×
Name
Description
Steps
Each step runs an agent. Use {{input}} in prompts to pass the previous step's output.
SequentialFan OutConditionalLoop
Input ExecuteRunning...
Result
Name
Description
Steps
Each step runs an agent. Use {{input}} in prompts to pass the previous step's output.
SequentialFan OutConditionalLoop
Node Palette
Drag nodes onto the canvas
Workflow
Export TOMLSave WorkflowAuto LayoutClear
-+Fit
Drag nodes from the palette onto the canvas. Connect output ports (bottom) to input ports (top). Double-click to edit.
Label
AgentSelect agent...
Prompt Template
Model (optional)
Expression
Top port = true, bottom port = false
Max Iterations
Until (stop condition)
Fan-out Count
StrategyWait for allFirst to finishMajority vote
DuplicateDelete
Connection selectedDelete Connection
Copy to Clipboard
Name
Description
Save
Scheduled Jobs
Event Triggers
Run History
Loading scheduled jobs...
!
Retry
Scheduled Jobs
Create cron-based scheduled jobs that send messages to agents on a recurring schedule. Use cron expressions like */5 * * * * (every 5 min) or 0 9 * * 1-5 (weekdays at 9am). You can also run any job manually with the "Run Now" button.
| Name | Schedule | Agent | Status | Delivery | Last Run | Next Run | Actions |
|---|---|---|---|---|---|---|---|
Delivery Log
Loading delivery log...
Configured targets ():
No fan-out targets configured.
Recent deliveries ():
Delivery history will appear here after the next run. Per-run results are not yet persisted — the fan-out engine emits tracing events you can view under Logs.
| ``
| | |
(none) | | | Run...TargetsDel |
Create a cron job to run agents on a recurring schedule. Jobs are stored persistently and survive restarts.
Job Name
Cron Expression
Format: minute hour day-of-month month day-of-week
Quick Presets
Target AgentAny available agent No agents running. Spawn one first.
Message to Send The message sent to the agent each time this job runs.
Delivery Targets+ Add target
The job output is delivered to the agent's last channel by default. Add one or more fan-out destinations — channels, webhooks, local files, or email — to copy the output to extra destinations each run.
Remove
New Delivery Target
TypeChannelWebhookLocal FileEmail
Channel type-- pick --
Recipient
URL
Authorization header (optional)
Path
To
Subject template (optional)
Placeholders: {job}
AddCancel
Create ScheduleCreating...
x
Targets are replaced on save. Leave empty to remove all fan-out destinations.
No targets configured.
Remove
New Delivery Target
TypeChannelWebhookLocal FileEmail
Channel type-- pick --
Recipient
URL
Authorization header (optional)
Path
To
Subject template (optional)
Placeholders: {job}
AddCancel
SaveSaving...Cancel
Loading triggers...
!
Retry
Event Triggers
Event triggers fire agents in response to system events (agent lifecycle, memory updates, custom events). Create and manage triggers on the Workflows page. This view shows all active triggers for monitoring.
| Agent | Pattern | Prompt | Fires | Enabled | Created | Actions |
|---|---|---|---|---|---|---|
| | Delete |
Create event triggers on the Workflows page to fire agents in response to system events.
Loading run history...
Run History
Recent executions of scheduled jobs and event trigger fires. History is aggregated from schedule run counts and trigger fire counts.
| Time | Name | Type | Status | Total Runs |
|---|---|---|---|---|
Run history will appear here after scheduled jobs or triggers execute.
Loading channels...
!
Retry
No channels match your search.
1 Configure
2 Verify
3 Ready
Your channel is configured and verified. It will activate automatically.
Edit ConfigDone
Connecting to WhatsApp Web gateway...
!WhatsApp QR Code
Generate New QR
Channel will activate automatically.
📱
Or use the Business API with a Meta developer account.
Have a Meta Business account? Use Business API instead
Refresh QRRemove
← Back to QR scan
Configure via WhatsApp Cloud API (requires a Meta Business developer account).
Remove
Skills extend your agents with new capabilities. OpenFang supports the OpenClaw/ClawHub ecosystem (3,000+ community skills) plus local skills.
Loading skills...
!
Retry
Installed
ClawHub
MCP Servers
Quick Start
(prompt context)
⚙ ConfigureUninstall
Skills add new capabilities to your agents. Browse ClawHub for 3,000+ community skills or create your own.
Browse ClawHubQuick Start
TrendingMost DownloadedMost StarredRecently Updated
CATEGORIES
!
ClawHub may be temporarily unavailable. The OpenClaw ecosystem is hosted at clawhub.ai.
Retry
Clear search
ClawHub
ClawHub
Load More
No skills found for ""
Try a different search term or browse by category.
Back to browse
MCP servers provide external tools to your agents — GitHub, filesystem, databases, APIs, and more. OpenFang is compatible with all OpenClaw MCP servers.
Configure MCP servers in your config.toml under [mcp_servers].
Loading MCP servers...
CONNECTED SERVERS
Connected
Tools:
``
CONFIGURED SERVERS
``
``
MCP servers extend your agents with external tools. Add servers to your config.toml:
[[mcp_servers]]
name = "filesystem"
timeout_secs = 30
[mcp_servers.transport]
type = "stdio"
command = "npx"
args = ["-y", "@modelcontextprotocol/server-filesystem", "/path"]
OpenFang supports all OpenClaw-compatible MCP servers.
Create prompt-only skills with one click. These inject context into your agent's system prompt — no code required. Perfect for adding domain expertise or workflow guidelines.
PROMPT
Loading skill details...
ClawHub
Security Warnings
Skills are security-scanned before installation. Prompt injection and malware patterns are blocked.
Loading configuration…
!
This skill does not declare any runtime config variables.
``required user override env: default unresolved ⚠
Leaving blank and saving keeps existing override. Use Reset to remove it. Reset to env/default
Values are stored in ~/.openfang/config.toml under [skills.]. Secrets are redacted in this view.
Cancel
Hands are pre-configured AI agents that autonomously handle specific tasks. Each hand includes a tuned system prompt, required tools, and a dashboard for tracking work.
Loading hands...
!
Retry
Available
Active
REQUIREMENTS
Details
Hands are curated AI capability packages. They will appear once the kernel loads bundled hands.
Loading active hands...
StatsDashboardView BrowserPauseResumeError — deactivate and reactivateDeactivate
Activate a hand from the Available tab to get started. Each hand spawns a dedicated agent.
Browse Hands
AGENT CONFIG
Provider
Model
REQUIREMENTS
``
TOOLS
DASHBOARD METRICS
``
Activate
Dependencies
Configure
Launch
Detected on your system
macOSWindowsLinuxpip
``
Token entered
``
Get API Key →Docs
Manual download →
Installing dependencies...
Installation complete!
Waiting...
Instance name (optional)
Leave empty for a single instance of this hand. Set a name to run multiple instances in parallel.
No configuration needed for this hand. Click Next to continue.
Dependencies
Model
CancelBack
Next Next
RefreshClose
Loading browser state...
!
!Browser screenshot
Title:
📈
Live Trading Dashboard
Refresh
Loading dashboard data...
Portfolio Value
Total P&L
Win Rate
Sharpe Ratio
Max Drawdown
Trades
Equity Curve
No equity data yet
Daily P&L
No P&L data yet
Signal Radar
No signal data yet
Watchlist Heatmap
| Ticker | Change | Signal | Confidence |
|---|---|---|---|
|
No watchlist data yet
Recent Trades
| Date | Ticker | Side | Price | Qty | P&L |
|---|---|---|---|---|---|
No trades yet
📈
Could not load dashboard data. Retry
\u2713
Loading settings...
!
Retry
Providers
Models
Config
Tools
Security
Network
Budget
System
Migration
OpenFang supports 12 LLM providers out of the box. Configure API keys to unlock models from each provider. Set environment variables and restart, or use the form below to save keys directly.
Save
Or set `` in your environment and restart
Login with GitHub
Visit and enter:
Waiting for authorization...
Install: npm install -g @anthropic-ai/claude-code
TestRemove Key
No API key needed — runs locally or is free
Base URL
Save
Connect any OpenAI-compatible API (vLLM, LiteLLM, LocalAI, etc.)
Provider Name
Base URL (required)
API Key (optional) Add Provider
Provider information could not be loaded. Check that the API is running.
Browse all available models across providers. Models marked "Available" have their provider configured and ready to use.
All ProvidersAll Tiers
Model ID (required)
Provider
Context Window
Max Output Tokens
Add Model
🤖
Clear Filters
| Model | Provider | Tier | Context | Input Cost | Output Cost | Status | |
|---|---|---|---|---|---|---|---|
| | | | | | | ✕ |
🔧
Clear Search
| Tool | Description |
|---|---|
Version
Platform
Uptime
Agents
Default Model
View and edit the active configuration. Changes are applied immediately. For advanced edits, modify config.toml in your OpenFang data directory.
Save
Raw Config JSON (click to toggle)
Loading security data...
Defense in Depth
OpenFang implements 15 layered security features across the entire stack — from network ingress to agent sandboxing to cryptographic audit trails. Core protections cannot be disabled.
Core Protections
Always active. Cannot be disabled.
ALWAYS ON
Protects against:
Configurable Controls
Active with tunable parameters.
CONFIGURABLE
Monitoring & Analysis
Active monitoring systems.
MONITORING
Audit Chain Integrity Verify Now
Run cryptographic verification of the entire SHA-256 Merkle hash chain.
Security Dependencies
sha2 SHA-256 hmac HMAC-SHA256 subtle constant-time ed25519-dalek signing zeroize secret wiping rand randomness governor rate limiting
Link multiple OpenFang instances into a mesh via the OFP wire protocol.
Node: Listening on
Loading peers...
!
Retry
Connected
Total Peers
| Node | Address | State | Agents | Protocol |
|---|---|---|---|---|
Add a [network] section to config.toml with shared_secret and peer addresses.
Discovered agents on other OpenFang/A2A-compatible instances that this node can communicate with.
Discover...
| Name | URL | Description |
|---|---|---|
No external agents discovered yet. Enter a URL above to discover one.
Monitor and control spending across all agents.
Loading budget...
Hourly
Daily
Monthly
Alert threshold: of any limit
Hourly token limit (per agent):
Hourly Limit ($)
Daily Limit ($)
Monthly Limit ($)
Alert (%)
Hourly Token Limit (per agent, 0 = use per-agent values)
Set to 0 for unlimited/per-agent default. Changes apply immediately (in-memory, not persisted to config.toml). Cancel
| Agent | Today | Hourly Limit | Daily Limit | Monthly Limit | Token Limit/hr |
|---|---|---|---|---|---|
No spending recorded today.
Migrate from OpenClaw
Seamlessly transfer your agents, memory, workspace files, and channel configurations from OpenClaw to OpenFang.
Auto-Detect OpenClawScanning...Enter Path Manually
Specify OpenClaw Path
OpenClaw Home Directory
OpenFang Target Directory
Scan DirectoryScanning...Back
OpenClaw Workspace Found Ready to Migrate
Agents
Channels
Skills
Migrate NowMigrating...Dry RunStart Over
Run Migration for RealStart New Migration
OpenClaw Not Found
Could not auto-detect an OpenClaw installation.
Enter Path ManuallyBack
Loading usage data...
!
Retry
Total Tokens
Estimated Cost
API Calls
Tool Calls
Summary
By Model
By Agent
Costs
Token Breakdown
Input Tokens
Output Tokens
Total Cost
API Calls
Tool Calls
| Model | Calls | Input Tokens | Output Tokens | Cost | Usage |
|---|---|---|---|---|---|
|
No model usage data yet.
| Agent | Total Tokens | Tool Calls |
|---|---|---|
No agent usage data yet.
Total Spend
Today's Spend
Projected Monthly
Avg Cost / Message
Cost by Provider
No cost data yet.
TOTAL
Daily Cost (Last 7 Days)
No daily data yet.
Cost by Model
| Model | Provider | Tier | Input Tokens | Output Tokens | Calls | Cost | Cost Share |
|---|---|---|---|---|---|---|---|
|
No model cost data yet.
Sessions
Memory
Loading sessions...
!
Retry
Conversation Sessions
Each conversation with an agent creates a session. Sessions store the full message history so you can resume conversations later, or review past interactions.
| Session | Agent | Messages | Created | Actions |
|---|---|---|---|---|
| ChatDelete |
Sessions are created when you chat with agents. Start a conversation to see session history here.
Start Chatting
No sessions match your filter.
Each agent has its own key-value memory store. Agents use memory to persist preferences, notes, and context between conversations.
Select agent...
Loading memory...
!
Retry
| Key | Value | Actions |
|---|---|---|
SaveCancel
| EditDelete |
This agent has no memory entries yet. Agents create memory entries automatically during conversations, or you can add them manually.
Key
Value (JSON) Save
Choose an agent from the dropdown above to browse and edit its memory store.
AllINFOWARNERRORClearExport
Verify Chain
Live
Audit Trail
Connecting to log stream...
!
Retry
Activity will appear here as agents run.
Loading audit log...
!
Retry
Tamper-Evident Audit Trail
Every agent action is logged with a cryptographic hash chain. Use "Verify Chain" to confirm no entries have been altered or deleted.
All ActionsAgent CreatedAgent StoppedMessageTool UsedNetwork AccessShell CommandFile AccessMemory AccessLogin Attempt
| # | Timestamp | Agent | Action | Detail | Outcome |
|---|---|---|---|---|---|
Activity will appear here as agents operate.
Send Message Post Task
Retry
Agent Topology
No agents running
Live Event Feed
LIVE
No inter-agent events yet
Send Agent Message
From AgentSelect agent...
To AgentSelect agent...
Message
CancelSending...Send
Post Task
Title
Description
Assign To (optional)Unassigned
CancelPosting...Post Task
Skip Setup
Loading...
!
Retry
OpenFang is an open-source Agent Operating System. It lets you run AI agents that can chat, use tools, access memory, and connect to messaging channels — all from a single dashboard.
This wizard will help you:
1Connect an LLM provider (Anthropic, OpenAI, Gemini, etc.)
2Create your first AI agent from 10 templates
3Try it out with a quick test message
4Optionally connect a messaging channel (Telegram, Discord, Slack)
Takes about 2 minutes. You can skip any step and configure later.
Get Started
OpenFang needs at least one LLM provider to power your agents. Select a provider and enter your API key.
You already have at least one provider set up. You can continue to the next step or configure additional providers.
Popular Providers
READY
Other Providers
READY
Configure Claude Code
Claude Code uses its own CLI authentication — no API key needed.
Install: npm install -g @anthropic-ai/claude-code
Authenticate: claude auth
Click Detect below to verify
Detect Claude Code
Claude Code detected
Claude Code CLI not detected. Make sure you’ve run: npm install -g @anthropic-ai/claude-code && claude auth
Environment variable: ``
API Key Save & Test
Connected successfully
You can test the connection or continue to the next step.
Test Connection
Connected
Back
Pick a template to get started quickly. You can customize the agent later or create more from the Agents page.
Agent Name
Create Agent
Agent "" created successfully
Back
Send a quick message to test your new agent. Try one of the suggestions below or type your own.
Thinking...
Send
BackContinue
Channels let your agent communicate via messaging platforms. This is optional — you can always use the built-in web chat.
Save
configured and activated.
You can skip this step. The built-in web chat is always available from the Agents page. Add channels any time from Settings → Channels.
Back
OpenFang is configured and ready to go. Here is a summary of what was set up:
LLM Provider Pre-configured Skipped
First Agent Skipped
Channel None (web chat available)
Next Steps
• Open Agents to start talking to your agent
• Go to Agents to create your first agent
• Browse Skills to add capabilities (web search, code execution, etc.)
• Check Settings for advanced configuration
• Visit Channels to connect messaging platforms
Back
Loading runtime info...
Uptime
Agents
Version
Default Model
System
| Platform | | | Architecture | | | API Listen | | | Home Directory | | | Log Level | | | Network | |
Providers
| Provider | Status | Models | Latency |
|---|---|---|---|
Refresh