Mobilize
SkillProductivityLets your agent phone several people at once until enough confirm they'll help meet an urgent request.
Use Mobilize in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Mobilize and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the Mobilize skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
About this skill
Get a required number of confirmed responses from a consented pool of people within a deadline by calling multiple candidates in parallel waves via CALL-E, stopping as soon as the need is met. Use for urgent mobilization tasks like "find 3 donors in the next hour" or "get 2 volunteers by 5pm" from a
What this skill tells your AI
The instructions your AI receives, as published by calle-ai/awesome-phone-call-agents in skills/mobilize/SKILL.md and read by Ahel’s review.
Use this skill when the user needs a specific number of confirmed people from
an existing, consented pool, under a deadline -- not one call, and not a
cold-outreach campaign. mobilize wraps the mobilize/ engine in this
repository (parallel wave dispatch, commitment calibration, a crash-safe
ledger) so an agent can trigger a real mobilization without reimplementing
any of it.
When To Use
Use this skill for:
- "I need N people to do X by " from a registry, roster, or list of people who already agreed to be contacted for this purpose
- urgent staffing, donor, or volunteer mobilization
- any task where calling candidates one at a time is clearly too slow and the pool is large enough that parallel dispatch matters
When Not To Use
Do not use this skill to:
- cold-call people who have not consented to being contacted for this
purpose --
mobilizeassumes the pool is a consented registry; it is not a lead-generation or cold-outreach tool - place a single one-off call (use CALL-E directly for that)
- guess phone numbers, need counts, or deadlines the user did not provide
- run
mobilize_realcalls without the user's explicit confirmation that the phone numbers are real, owned, or authorized contacts
Core Workflow
- Confirm the pool is consented (the user should say so explicitly, e.g. "call our registered donors" or "text the on-call rotation").
- Extract required fields:
need_label(what you're asking),count(how many confirmations needed),deadline_minutes, and the phone numbers or pool source. - If no real phone numbers exist yet, or the user wants to see the engine
work first, run the simulated path (
mobilize_simulatedvia the MCP server, orpython -m mobilize.app.cli) -- zero cost, instant, safe to run freely. - Only call
mobilize_real(orpython -m mobilize.app.cli --real) when the user has explicitly confirmed the phone numbers and wants to spend real CALL-E call credits. Never pass more numbers than the user explicitly provided. - Report the result: filled or not, how many confirmed, how many calls used, and time to fill.
Why Wave Dispatch, Not "Cancel and Retry"
CALL-E's API has no operation to cancel an in-flight call (verified against
the CALL-E OpenAPI spec). mobilize therefore dispatches in waves: size
the first wave using each candidate's prior likelihood of confirming, wait
for results, and only dispatch a further wave if the need is still unmet.
Once the need is met, no further wave is ever dispatched -- calls already in
flight are allowed to finish, but nobody new is ever called. Do not describe
this as "cancelling calls."
Why a Stated "Yes" Is Not a Confirmation
People say yes to be agreeable and then don't follow through (acquiescence
bias). mobilize's reconciler scores commitment from the call's evidence
text -- firm language ("leaving now") scores higher than hedged language
("I'll try") -- blended with the candidate's historical show-up rate. Only
responses above the commitment threshold count toward the need. See
references/commitment-model.md for the scoring detail, and
mobilize/sim/harness.py in this repo for the measured accuracy gain over
treating every stated yes as confirmed.
Safety Rules
Read references/safety.md for the full safety contract used by the
governance module (mobilize/core/policy.py). Always follow these rules:
- Every call must disclose it is an AI at the start (enforced in the task prompt sent to CALL-E).
- Never call anyone on the do-not-call list, in cooldown, or over the contact-fatigue limit for the configured window -- the governance module enforces this before dispatch, not after.
- Respect configured calling-hour windows unless the need is explicitly marked as an emergency override, and log every override.
- Never dispatch to a larger pool than the user explicitly authorized.
- If CALLE_API_KEY is missing or the user has not confirmed real numbers, stop and use the simulated path instead of guessing.
Output Format
Report:
filled: whether the need was metconfirmed_count/countneededcalls_usedandwaves_dispatchedtime_to_fill_secondsif filled- for each confirmed candidate: outcome and commitment score
If not filled, report the blocker (pool exhausted, call budget hit, or
deadline) and never claim the need was met unless filled is true.
Signals
- GitHub stars
- 104
- Forks
- 528
- Last commit
- Sep 2026
Advanced
- Item type
- skill
- Key
mobilize- Source
- github.com/calle-ai/awesome-phone-call-agents
github.com/calle-ai/awesome-phone-call-agents
More in Productivity
Skill · coreyhaines31
More in Productivitygws-calendar
Skill · googleworkspace
More in Productivitylark-minutes
Skill · larksuite
More in Productivitylark-workflow-standup-report
Skill · larksuite
More in Productivityenergy-procurement
Skill · affaan-m
More in Productivityhomelab-pihole-dns
Skill · affaan-m
More in Productivity