Agent skill

Cleared To Call

by CALLE-AI in CALLE-AI/awesome-phone-call-agents

Evaluate supplied account records against an experimental pre-call policy and flag literal opt-out phrases before integrating a CALL-E collection or account-servicing workflow.

MITAuto-check passedSales & Support

Install Cleared To Call

skills CLI
$ npx skills add CALLE-AI/awesome-phone-call-agents --skill cleared-to-call -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install CALLE-AI/awesome-phone-call-agents cleared-to-call --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/CALLE-AI/awesome-phone-call-agents.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/cleared-to-call .claude/skills/cleared-to-call && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
cleared-to-call
GitHub stars
107
Token cost
~2.6k tokens
SKILL.md length
1,387 words
Files
13 (incl. scripts, references, assets)
Skills in repo
101
Repo updated
First seen
Licence
MIT

At a glance

Evaluate supplied account records against an experimental pre-call policy and flag literal opt-out phrases before integrating a CALL-E collection or account-servicing workflow.

  • Works in 2 steps: The call task tells the agent to stop… → After the call, run the transcript…
  • Tasks that involve Sales call preparation
  • SKILL.md covers When To Use, When Not To Use, Required Inputs and Try It, plus 8 more sections
  • Runs JavaScript scripts from its folder; calls node

What it does

Cleared To Call is an agent skill from CALLE-AI/awesome-phone-call-agents. Evaluate supplied account records against an experimental pre-call policy and flag literal opt-out phrases before integrating a CALL-E collection or account-servicing workflow. Offline advisory helpers only; the host owns calling, suppression persistence, and audit records.

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 15 other files, including scripts, reference files and assets (for example `assets/example-accounts.json`, `assets/policy.json` and `references/examples.md`).

It sits in Sales & Support, covering Sales call preparation. The repository describes itself as: Portable phone-call Agent Skills, apps, examples, adapters, and scheduler recipes for AI agents. The licence is MIT.

When your agent uses it

  • Tasks that involve Sales call preparation

Example prompts

  • “/cleared-to-call”

Requirements

  • Node.js

Workflow steps

2 steps, taken from the first numbered list in SKILL.md.

  1. The call task tells the agent to stop the moment the recipient revokes
  2. After the call, run the transcript checker, then have the host persist any

What it can do on your machine

Read from SKILL.md and the folder at commit 38d4118. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 5 files in scripts/ (JavaScript), which the agent can run.

    Shell commands in SKILL.md call:

    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Cleared To Call loads about 2.6k tokens when it runs, and up to ~8k if it reads all its reference files. Until then it costs about 73 tokens; SKILL.md has 1,387 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~73
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from CALLE-AI/awesome-phone-call-agents at commit 38d4118, republished under its MIT licence (© CALLE-AI). 1,387 words, ~2,595 tokens.

Download SKILL.mdSave it as .claude/skills/cleared-to-call/SKILL.md (or your agent's skills folder). This skill also uses 12 other files; get the full folder from GitHub.
name
cleared-to-call
description
Evaluate supplied account records against an experimental pre-call policy and flag literal opt-out phrases before integrating a CALL-E collection or account-servicing workflow. Offline advisory helpers only; the host owns calling, suppression persistence, and audit records.
license
MIT

Cleared to Call

Use this skill when an agent is about to place an outbound call to a consumer about money: a past-due balance, a payment reminder, a collection follow-up, or any account-servicing call where the recipient did not initiate the contact.

cleared-to-call supplies offline advisory helpers, not a dialer or a legal compliance certification. They read supplied records, evaluate a declared policy, and print results. They do not place or end calls, write suppression entries, or create or verify an audit chain. The integration requirements below describe work a host must implement; they are not shipped runtime features. An ALLOW result is not proof that a call is lawful or authorized.

The rules are data, not prose. They live in assets/policy.json and are explained in references/policy.md.

When To Use

Use this skill for:

  • outbound collection, payment-reminder, or past-due account calls
  • any batch of consumer accounts where each row must be checked before dialing
  • workflows that must honor "stop calling me" during the call, not after it
  • workflows collecting evidence for a human compliance assessment
  • workflows explaining why the declared policy blocked a record

When Not To Use

Do not use this skill to:

  • place calls outside the United States, or under any rule set other than US federal TCPA, FDCPA, and Regulation F - the policy is single-jurisdiction and a different region needs a different policy file, not a workaround
  • decide anything for inbound calls the consumer initiated
  • override, soften, or "just this once" bypass a block reason
  • guess a missing timezone, consent record, or phone number
  • give the recipient financial, legal, credit, or settlement advice
  • negotiate, threaten, or discuss consequences of non-payment

If the caller wants a block overridden, the answer is to fix the underlying record, not the gate. A missing timezone is fixed by getting the timezone, not by assuming one.

Required Inputs

Each account must carry all of these. None of them may be inferred:

  • account_id
  • display_name
  • phone_e164 - E.164, for example +15550101234
  • timezone - IANA zone name, for example America/New_York
  • amount_due and currency
  • consent_on_file - true or false
  • consent_timestamp - required when consent_on_file is true

Check a batch before evaluating any of it:

bash
node scripts/validate-input.mjs --file accounts.json

A row that fails validation is reported and skipped. It is never dialed.

Never derive timezone from the phone number, the area code, the operator's locale, the server clock, or the country code. Rule 1 is a statement about the recipient's local time, so a guessed timezone is a guessed legal position. If the timezone is missing or unknown, the account is blocked.

Try It

The skill ships a fictional batch that hits every branch. Nothing dials:

bash
node scripts/validate-input.mjs --file assets/example-accounts.json
node scripts/evaluate-account.mjs \
  --file assets/example-accounts.json --account-id A-1002 \
  --suppression assets/example-suppression.jsonl --now 2026-08-28T13:30:00Z
node scripts/check-revocation.mjs --utterance "stop calling me"

At that instant A-1001 is clear, A-1002 is outside its local call window, A-1003 has no consent, and A-1004 is suppressed.

The Pre-Dial Gate

The host must run these four checks before dialing. Passing them is necessary for this sample policy, not sufficient authorization for a real call.

RuleRequirementBlock reason
R1 call_windowLocal time at the recipient is inside 08:00-21:00OUTSIDE_CALL_WINDOW
R2 consent_on_filePrior express consent is recorded, with a timestampNO_CONSENT
R3 not_suppressedThe number is not on the opt-out or DNC listON_SUPPRESSION_LIST
R4 disclosure_readyThe rendered script carries every required disclosure elementMISSING_DISCLOSURE

Run the gate on one account:

bash
node scripts/evaluate-account.mjs \
  --file accounts.json \
  --account-id A-1001 \
  --suppression suppression.jsonl

Exit code 0 is ALLOW, 2 is BLOCK, 1 is unusable input. The printed JSON holds every rule result, not only the failing one, so an audit reader can see the whole evaluation.

When several rules fail, the reported block_reason is the first failure in policy order. All four are still evaluated and printed for the host to retain.

Read references/policy.md for what each rule means, which authority it comes from, and the property it is meant to enforce.

The In-Call Revocation Handler

Rule 5 cannot be decided before dialing. A host integration has two duties; only the literal transcript checker is included here:

  1. The call task tells the agent to stop the moment the recipient revokes: acknowledge once, end the call, do not ask why, do not offer alternatives.
  2. After the call, run the transcript checker, then have the host persist any required suppression entry and record the outcome.

The checker prints a required action; it does not carry it out. If the agent talks past an opt-out, the host must still persist suppression and record opt_out. A post-call check cannot retrospectively stop a running call.

bash
node scripts/check-revocation.mjs --utterance "stop calling me"
node scripts/check-revocation.mjs --transcript transcript.json

Exit code 3 means the number must be suppressed. Only recipient turns count: the agent saying "if you would like us to stop calling" is a required disclosure, not an opt-out.

Once the host persists suppression and supplies the updated list, R3 blocks the number on later evaluations. The host must retain the opt-out unless the consumer asks for it to be reversed.

Show full SKILL.md (600 more words)Show less

How CALL-E Is Invoked

This skill does not place calls. Once an account is cleared, hand it to the existing CALL-E route - the CALL-E CLI, MCP plan_call / run_call / get_call_run, or whatever route the current client already uses:

text
gate -> ALLOW -> plan_call -> inspect plan -> run_call -> get_call_run -> transcript -> revocation re-check

Requirements on the call task handed to CALL-E:

  • the opening disclosure must be included verbatim and must be spoken first
  • the task must instruct the agent to end the call on any revocation
  • the task must restrict the agent to payment logistics
  • the task must ask for one outcome from promise_to_pay, dispute, refusal, no_answer, opt_out
  • the destination must be exactly the cleared account's number

Inspect the plan before running it. If the plan targets a different number than the cleared account, do not run it. Providers often echo the destination masked, for example ...9724: compare its last four digits with the cleared number. A plan that names no destination at all cannot be checked, and an unchecked plan is not a verified one - do not run it unless the operator explicitly accepts that. Match symbol masks only; the call script itself says "account ending 1001", and reading that as a destination would refuse every call.

Structured Result

Suggested host outcome shape, not an output implemented by the bundled helpers:

json
{
  "account_id": "A-1001",
  "call_placed": true,
  "block_reason": null,
  "disclosure_given": true,
  "outcome": "promise_to_pay",
  "promise_date": "2026-09-05",
  "opt_out": false,
  "audit_ref": "aud_0af29e7f"
}

outcome is one of promise_to_pay, dispute, refusal, no_answer, opt_out, not_called. A blocked account is always not_called with call_placed: false and a non-null block_reason.

The host must derive disclosure_given from what was actually said, not merely from the script. This package does not implement that post-call verification.

Audit Record

Optional host design: retain decisions in a hash-linked JSONL log. This package does not append entries or verify a chain. A hash chain alone is not proof of legal compliance or protection against rewriting the entire log.

Such an entry can hold the timestamp, the account id, the masked phone number, the decision, the block reason, every rule result, the outcome, the policy id and version, and prev_hash plus hash.

The host must mask phone numbers in audit output, for example +1******1234.

Dry Run

All bundled helpers are offline: they read input and print advisory results. There is no live adapter, simulated dialer, suppression writer, or audit-chain writer. Host integrations must provide and validate those features separately.

Never place a real call to test the helpers. Offline checks exercise the declared sample policy, not the legality of a real calling program.

Place a real call only when the operator has explicitly asked for one, on a number they are authorized to call.

Safety Rules

Read references/safety.md for the full contract. Always:

  • treat a phone call as a real-world side effect with legal consequences
  • refuse rather than guess when a required field is missing or ambiguous
  • mask phone numbers in every summary, log, and user-facing message
  • never expose API keys, tokens, callback URLs, or confirmation tokens
  • keep the call to payment logistics only, never advice or pressure
  • honor an opt-out immediately and permanently
  • never place a call for an account the gate blocked
  • never edit or rewrite an audit entry

Output Format

After a host-managed batch, report only actions the host actually performed:

  • how many accounts were cleared, blocked, and opted out
  • each blocked account with its block reason
  • each cleared account with its outcome and masked number
  • any opt-out, distinguishing suppression required from confirmed persistence
  • any implemented audit verification result, or state that it is not implemented

If the gate blocked everything, say so plainly and give the reasons. A run that places no calls because no account was clearable is a successful run, not a failure.

See references/examples.md for worked batches, including the refusal cases.

© CALLE-AI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 12 other files (scripts, references, assets) in skills/cleared-to-call of CALLE-AI/awesome-phone-call-agents.

  • SKILL.md
  • .gitattributes
  • assets/example-accounts.json
  • assets/example-suppression.jsonl
  • assets/policy.json
  • references/examples.md
  • references/policy.md
  • references/safety.md
  • scripts/check-revocation.mjs
  • scripts/check-revocation.test.mjs
  • scripts/evaluate-account.mjs
  • scripts/gate-core.mjs
  • scripts/validate-input.mjs

Open the folder on GitHubat commit 38d4118

Compare with similar skills

Cleared To Call next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Cleared To Call compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Cleared To Call this skillCALLE-AI/awesome-phone-call-agents107—~2.6kAutomated safety check: PassMIT
Luopan Company Researchzhangxiaoqiang1991/luopan389—~998Automated safety check: PassMIT
Company Researchstophobia/deerflow2.0-enhanced822—~845Automated safety check: PassMIT
Meeting Prep BriefBrianRWagner/ai-marketing-claude-code-skills441—~922Automated safety check: PassNone
SdtStopDisTrain/sdt-skills309—~535Automated safety check: PassMIT
Account Researchextruct-ai/gtm-skills109—~1.6kAutomated safety check: PassNone

Similar skills

  • Luopan Company Research

    zhangxiaoqiang1991/luopan

    罗盘的公司研究子模式。研究具体上市或非上市公司的财务增长、商业模式、 竞争生态位、治理与组织信号,并分别生成投资初筛和求职初筛。

    389 GitHub stars~998 tokensUpdated 2 mo ago
    Sales & SupportAuto-check passed
  • Company Research

    stophobia/deerflow2.0-enhanced

    综合企业背景调研技能,用于尽职调查、合作伙伴评估、投资分析、市场研究等场景。支持公司工商信息、财务数据、法律风险、舆情分析、竞品对比等多维度调研,自动生成Markdown和HTML格式的专业调研报告。触发条件:用户提及"企业调研"、"公司背景"、"尽职调查"、"合作伙伴评估"、"投资分析"、"市场研究"等关键词。

    822 GitHub stars~845 tokensUpdated 6 mo ago
    Sales & SupportAuto-check passed
  • Meeting Prep Brief

    BrianRWagner/ai-marketing-claude-code-skills

    Builds a pre-meeting brief from your Obsidian vault: participant research, past notes, open commitments, a prioritized agenda and sharp questions.

    441 GitHub stars~922 tokensUpdated 6 mo ago
    Sales & SupportAuto-check passed
  • Sdt

    StopDisTrain/sdt-skills

    SDT 内容生产工具箱的总入口:根据当前任务选择最合适的 sdt- 模块,既能完成标题、开头等单一步骤,也能组织从账号研究到发布的完整流程。用户不知道该用哪个 SDT Skill,或希望一站式完成内容生产时使用。

    309 GitHub stars~535 tokensUpdated 1 mo ago
    Sales & SupportAuto-check passed
  • Account Research

    extruct-ai/gtm-skills

    Deep-research a single target account into a decision-ready dossier: the entity tree, the buying units and decision-makers, live signals (open/closed roles, leadership moves, news, tech stack), and…

    109 GitHub stars~1.6k tokensUpdated 12 days ago
    Sales & SupportAuto-check passed
  • Call Prep

    breakstageaxe61/genspark-claw

    Prepare an AI phone call end-to-end — research the callee, set a concrete objective and fallback, draft a natural call script with branching, and produce a post-call summary template.

    169 GitHub stars~986 tokensUpdated 15 days ago
    Sales & SupportAuto-check passed

More from CALLE-AI/awesome-phone-call-agents

All 101 skills in this repo
  • Accessible Outing Verifier

    CALLE-AI/awesome-phone-call-agents

    Demonstrates advisory accessibility-planning checks with offline fixtures and a proposed bounded CALL-E workflow; use for exploring unknown or qualified venue claims without making calls.

    107 GitHub stars~1.4k tokensUpdated yesterday
    Auto-check passed
  • Ground Truth Gate

    CALLE-AI/awesome-phone-call-agents

    A skill your agent uses when an agent holds some evidence for a physical-world claim but the evidence is broader, narrower, or older than the exact question asked, and it must first decide whether a…

    107 GitHub stars~3.3k tokensUpdated yesterday
    Auto-check passed
  • Is It Accessible

    CALLE-AI/awesome-phone-call-agents

    Call a venue and ask the accessibility questions that matter to one specific person — step-free entry, hearing loop, guide dogs, quiet hours, changing places — then return a per-need verdict backed…

    107 GitHub stars~4.3k tokensUpdated yesterday
    Auto-check passed
  • Landmark Navigation Assist

    CALLE-AI/awesome-phone-call-agents

    Turns a pre-written, building-level location config into a CALL-E outbound phone-call task that guides a delivery driver through the last few hundred metres to a specific building using landmarks…

    107 GitHub stars~1.6k tokensUpdated yesterday
    Auto-check passed
  • Research Gap Call Verifier

    CALLE-AI/awesome-phone-call-agents

    Turn cited business research into a bounded, approval-gated phone-call plan that asks only unresolved factual questions, then reconcile CALL-E-compatible results without treating voicemail, refusal…

    107 GitHub stars~1.7k tokensUpdated yesterday
    Auto-check passed
  • Structured Outcome Followup Call

    CALLE-AI/awesome-phone-call-agents

    Place a goal-driven CALL-E call that collects specific structured answers, score those answers against a deterministic rubric you supply, and conditionally trigger a follow-up action — all runnable…

    107 GitHub stars~1.4k tokensUpdated yesterday
    Auto-check passed

Categories

Questions about Cleared To Call

What does Cleared To Call do?

Evaluate supplied account records against an experimental pre-call policy and flag literal opt-out phrases before integrating a CALL-E collection or account-servicing workflow. Cleared To Call is an agent skill from CALLE-AI/awesome-phone-call-agents. Evaluate supplied account records against an experimental pre-call policy and flag literal opt-out phrases before integrating a CALL-E collection or account-servicing workflow.

When should I use Cleared To Call?

Cleared To Call fits situations like: tasks that involve Sales call preparation.

How do I install Cleared To Call in Claude Code?

Run `npx skills add CALLE-AI/awesome-phone-call-agents --skill cleared-to-call -a claude-code`. Or copy the skill folder (skills/cleared-to-call in CALLE-AI/awesome-phone-call-agents) into .claude/skills/cleared-to-call in your project. Claude Code loads it when a task matches its description.

How do I install Cleared To Call in Codex?

Run `npx skills add CALLE-AI/awesome-phone-call-agents --skill cleared-to-call -a codex`. Or copy the skill folder (skills/cleared-to-call in CALLE-AI/awesome-phone-call-agents) into .agents/skills/cleared-to-call in your project. Codex loads it when a task matches its description.

Can I use Cleared To Call in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add CALLE-AI/awesome-phone-call-agents --skill cleared-to-call -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cleared-to-call, .gemini/skills/cleared-to-call, .github/skills/cleared-to-call and .opencode/skills/cleared-to-call in your project.

What does Cleared To Call need to run?

Going by SKILL.md and its folder, Cleared To Call needs JavaScript for the scripts in its folder and the command-line tools its instructions call (node). Our summary lists: Node.js.

Does Cleared To Call access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Cleared To Call safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Cleared To Call use?

Cleared To Call is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Cleared To Call use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 5.4k tokens, read only when the agent opens those files.

What are the alternatives to Cleared To Call?

Skills that share tags, products or a category with Cleared To Call: Luopan Company Research (zhangxiaoqiang1991/luopan, 389 stars), Company Research (stophobia/deerflow2.0-enhanced, 822 stars), Meeting Prep Brief (BrianRWagner/ai-marketing-claude-code-skills, 441 stars) and Sdt (StopDisTrain/sdt-skills, 309 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Cleared To Call?

CALLE-AI (a GitHub organization) maintains it in CALLE-AI/awesome-phone-call-agents, which has 107 GitHub stars. The repository holds 101 skills in this directory. The repository was last updated on October 10, 2026.

Source: CALLE-AI/awesome-phone-call-agents on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.