Your agent reads our docs, signs up, creates Pulses, and gets structured data back. Zero human configuration.
One prompt. Agent installs the skill, installs the CLI, signs you up, creates your first Pulse.
Zero setup on your end. The agent does signup, verification, CLI install, skill install, and builds your Pulse with clarifying questions. Your only job is reading a 6-digit code from your inbox.
I want to try Unformal — a platform that replaces forms with AI conversations. Product docs: https://unformal.ai and https://unformal.ai/agents. Full API + skill reference: https://unformal.ai/SKILL.md. Fetch these if you need context.
Please do all of the following:
1. Install the Unformal skill so you know the full API and when to use it:
mkdir -p ~/.claude/skills/unformal && curl -fsS https://unformal.ai/SKILL.md > ~/.claude/skills/unformal/SKILL.md
2. Install the CLI globally:
npm i -g @unformal/cli
3. Ask me for my email, then try to sign me up:
unformal signup --email YOUR@EMAIL
If the API returns 409 ("Email already registered"), I already have an account — fall back to the login flow instead:
unformal login --email YOUR@EMAIL
4. I'll read the 6-digit code from my inbox and paste it back. Then for signup:
unformal verify --email YOUR@EMAIL --code <code>
unformal init --key <api-key-from-step-3>
…or for login:
unformal login --email YOUR@EMAIL --code <code> --save
5. Ask me clarifying questions (what I'm trying to learn, who will receive the link, tone, how many questions max, which structured fields to extract), then create a Pulse:
unformal create --intention "<my goal>" --tone <conversational|professional> --max-questions <N> --fields "field1:string:desc,field2:number:desc"
6. Give me the shareable https://unformal.ai/p/<slug> link.
7. Once responses start coming in, offer to run 'unformal resonance <pulse-id>' to show me themes and aggregate insights.The skill install in step 1 is the key bit — without it, the agent won't know whento reach for Unformal on future requests. With it installed, you can just say "send this to my customers" or "collect feedback from my team" and the agent picks Unformal automatically.
For Claude Code, Cursor, Windsurf — one command, then just ask in natural language
# Claude Code mkdir -p ~/.claude/skills/unformal curl -s https://unformal.ai/SKILL.md > ~/.claude/skills/unformal/SKILL.md # Cursor / Windsurf / any coding assistant curl -o UNFORMAL.md https://unformal.ai/UNFORMAL.md
After install, just say:
"Create an onboarding Pulse for my consulting business"
Or:
"Qualify my inbound leads with a Pulse and send me results via webhook"
The skill file teaches your agent the full API — no other configuration needed. Works with Claude Code, Cursor, Windsurf, and any coding assistant that reads context files.
Three steps from zero to your first Pulse
Sign up — get your API key + 50 free credits
No credit card required. API key returned immediately.
curl -X POST "https://unformal.ai/api/v1/signup" \
-H "Content-Type: application/json" \
-d '{"email": "you@example.com"}'
# → {"data": {"api_key": "unf_xxx", "credits": 50, "status": "pending_verification"}}Verify your email
Check inbox for the 6-digit code, then POST it back.
# Check your inbox for a 6-digit code, then:
curl -X POST "https://unformal.ai/api/v1/verify" \
-H "Content-Type: application/json" \
-d '{"email": "you@example.com", "code": "123456"}'
# → {"data": {"status": "verified", "message": "Your API key is now active."}}Create your first Pulse
One POST with an intention — you get a shareable URL back.
curl -X POST "https://unformal.ai/api/v1/pulses" \
-H "Authorization: Bearer $UNFORMAL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"intention": "Understand what a new client needs before our first meeting",
"tone": "conversational",
"maxQuestions": 5
}'
# → {"data": {"url": "https://unformal.ai/p/your-slug", "id": "...", "status": "active"}}That's it. Share the URL with respondents. Each person gets an AI-powered conversation. You get structured data (Echo) for every completed response. No form builder, no question writing.
One-liner install from ClawHub
npx clawhub install unformal-api
After install, your OpenClaw agent has full access to the Unformal API — creating Pulses, sharing links, and retrieving structured conversation data. No additional configuration needed.
Everything the API can do, from your terminal or a shell script
The @unformal/cli npm package exposes every endpoint as a subcommand. Useful for quick ops, shell scripts, CI pipelines, and piping structured output to other agents via --json.
Install
# Install globally (recommended) npm i -g @unformal/cli # Or run without installing npx @unformal/cli <command> # Authenticate once unformal init --key unf_YOUR_KEY # ...or export UNFORMAL_API_KEY=unf_... in your shell
Common commands
# Create a Pulse
unformal create --intention "Qualify leads for our enterprise plan" --mode interview
# List and inspect
unformal list
unformal get PULSE_ID
# Read responses
unformal conversations PULSE_ID # summary table
unformal conversation CONV_ID # one full transcript
unformal export PULSE_ID --format csv --output all.csv
# Aggregate insights
unformal resonance PULSE_ID # themes, NPS, per-question stats
unformal analytics PULSE_ID # completion rate, duration, coverage
# Account
unformal usage # credit balance
# Pipe structured output to another agent
unformal list --json | jq '.data[] | {id, slug, totalConversations}'Package
@unformal/cli
Runtime
Node 18+
Source
github.com/Spark-Collective/unformal-skills
Server-Sent Events stream — get notified the moment a conversation completes
For agents that need to react in real-time (rather than polling or waiting for a webhook), connect to the SSE stream. Your agent stays connected and receives events as they happen.
Connect to the stream
curl -N \
-H "Authorization: Bearer $UNFORMAL_API_KEY" \
"https://unformal.ai/api/v1/pulses/{pulse_id}/stream"
# Events you'll receive:
# event: connected
# event: conversation.completed → includes full echo data
# event: ping → keepalive every 15sExample event payload
event: conversation.completed
data: {
"conversationId": "abc123",
"pulseId": "xyz",
"echo": {
"fields": {"budget_range": "$10k-20k", "timeline": "Q3"},
"summary": "Strong fit. Budget aligned.",
"keyQuotes": ["We spend 3 hours weekly on reports"],
"sentimentScore": 7
},
"completedAt": "2026-03-29T10:00:00Z"
}Max connections
5 per API key
Keepalive
Ping every 15s
Timeout
30 min (reconnect)
Recurring digest that appears in your Claude Code sidebar alongside other routines
The easiest way to get notified. Ask Claude Code to create a desktop routine — it gets added to your sidebar as a proper routine, runs locally on your machine with access to your secrets and files, and you pick the schedule visually in the desktop UI.
Just ask Claude Code
Create a Claude Code desktop routine called "unformal-new-responses". It should check for new completed responses on my Unformal Pulse <YOUR_PULSE_ID> using API key <YOUR_API_KEY>. Track the last-seen timestamp in ~/.unformal/last-seen, only fetch new responses since that marker, and give me a concise digest (sentiment + summary + key quotes) or say "No new responses" if there are none.
Claude will create a SKILL.md file at ~/.claude/scheduled-tasks/<name>/. After that, open Claude Code desktop, find the routine in the sidebar, and set its schedule (Daily / Weekdays / Custom).
Runs on
Your local machine
Schedule
Set in desktop UI
Appears in
Claude Code sidebar
Real-time macOS toasts — runs on your machine, reacts the moment a response lands
A tiny shell script that connects to the SSE stream, pops a native notification on every completion, and writes each event to ~/.unformal/inbox/ so your Claude Code session can read it on demand.
Install and run
# Install once mkdir -p ~/bin curl -s https://unformal.ai/unformal-listen.sh > ~/bin/unformal-listen chmod +x ~/bin/unformal-listen # Run (leave in a spare terminal tab) export UNFORMAL_API_KEY=unf_xxx unformal-listen # lists your Pulses unformal-listen <pulse_id> # start listening for completions
What you'll see
🎧 Listening for new responses on pulse k57... Events saved to: ~/.unformal/inbox/ Press Ctrl+C to stop. ✓ 14:32:01 connected ✨ 14:47:23 Strong fit. Mid-size agency, budget aligned for Q3 launch. ✨ 15:04:11 Enthusiastic about AI but unsure about team buy-in. ✨ 15:19:44 Ready to pilot. Asked for a follow-up call next week.
Platform
macOS (native), Linux (notify-send)
Inbox
~/.unformal/inbox/*.json
Script
unformal.ai/unformal-listen.sh
Complete endpoint documentation and schema