Candidate Availability Call
Use this skill when a recruiter, hiring coordinator, founder, or talent team has explicit authority to place one disclosed phone call to a candidate for interview availability. The call asks for available time windows, confirms timezone and constraints, and records whether the candidate consents to follow-up through phone, SMS, or email.
This skill does not book, reschedule, cancel, or confirm an interview. It returns a structured availability result for a human coordinator to review before any calendar invite or ATS update is sent.
When To Use
Use this skill for:
- confirming 2-3 candidate interview availability windows
- clarifying candidate timezone and scheduling constraints
- asking whether the candidate prefers phone, SMS, or email follow-up
- leaving a short voicemail that asks the candidate to reply through an approved channel
- creating an evidence-backed disposition for a recruiting coordinator
When Not To Use
Do not use this skill to:
- screen the candidate or ask interview questions
- discuss compensation, immigration, health, family status, disability, protected characteristics, or background-check topics
- make employment promises or imply that an interview is already scheduled
- call a candidate without authority from the recruiting team
- call a private number that the user did not provide or authorize
- place repeated retries, recurring calls, or hidden follow-ups
- update calendars, ATS records, or CRM records without human review
Required Inputs
request_id: stable local request identifiercandidate_name: candidate name as provided by the recruiterto_phone_e164: candidate phone number in E.164 formatrole_label: role or interview label the candidate already knowscompany_name: company or recruiting organization to disclosecoordinator_name: human coordinator responsible for the requestauthorized_contact_reason: why this call is authorizedinterview_duration_minutes: expected interview durationallowed_windows: list of candidate-selectable windows the coordinator can supporttimezone: IANA timezone to use when presenting windowsfollowup_channels: allowed follow-up channels, such asphone,sms, oremail
Optional inputs:
voicemail_allowedvoicemail_messagelanguageregioncandidate_contextdo_not_discuss
Preflight
Before planning a call:
- Confirm the user explicitly authorized this one candidate availability call.
- Confirm the phone number is E.164 and was supplied by the recruiting workflow or candidate.
- Confirm the call purpose is availability coordination only.
- Confirm
allowed_windowsare real coordinator-supported options. - Refuse compensation, screening, protected-class, legal, medical, or background-check questions.
- Prepare a dry-run preview before any CALL-E plan.
CALL-E Goal Template
Use this as the CALL-E --goal body after filling the inputs:
You are an AI phone assistant calling on behalf of {company_name}. Disclose that immediately and say that {coordinator_name} authorized this one scheduling-coordination call.
Purpose: ask {candidate_name} about availability for {role_label}. This call is only for scheduling coordination. Do not interview, screen, discuss compensation, make employment promises, or confirm that an interview is booked.
If the configured CALL-E workflow records or transcribes calls, disclose that before asking scheduling questions and say the transcript is used only to create a scheduling note for human review.
Interview duration: {interview_duration_minutes} minutes.
Timezone to use: {timezone}.
Coordinator-supported windows:
{allowed_windows}
Ask:
1. Which of these windows, if any, work for the candidate?
2. What timezone should the coordinator use?
3. Are there scheduling constraints the coordinator should know?
4. Which allowed follow-up channel does the candidate prefer: {followup_channels}?
5. Does the candidate consent to a follow-up through that channel about this interview scheduling request?
If voicemail answers and voicemail is authorized, leave the approved voicemail message. If the candidate declines, is uncertain, or asks a question outside scheduling, thank them and mark the result for human review.
Return a structured result with disposition, availability_windows, timezone_confirmed, constraints, preferred_followup_channel, consent_to_followup, voicemail_left, needs_human_review, and evidence. Do not infer availability or consent from silence.
Structured Result
{
"disposition": "available | unavailable | voicemail | no_answer | wrong_number | declined | needs_human_review",
"request_id": "string",
"candidate_name": "string",
"availability_windows": [
{
"start": "string",
"end": "string",
"timezone": "string",
"evidence": "string"
}
],
"timezone_confirmed": "string",
"constraints": [
"string"
],
"preferred_followup_channel": "phone | sms | email | none | unknown",
"consent_to_followup": "boolean; true only when the candidate explicitly consents",
"voicemail_left": false,
"needs_human_review": true,
"evidence": [
{
"claim": "string",
"transcript_span": "string"
}
],
"do_not_rely_on": [
"string"
],
"notes": "string"
}
Dry-Run Preview
Run the local preview script before any live CALL-E action:
node scripts/validate-candidate-input.mjs assets/sample-candidate-request.json
node scripts/preview-candidate-call.mjs assets/sample-candidate-request.json
The preview prints a masked phone number, a redacted CALL-E planning command, and the structured result schema. It does not place a call and does not contact CALL-E.
Live Planning
Only after explicit user authorization and CALL-E authentication, copy the generated goal into a CALL-E planning command:
calle call plan --to-phone <E164_PHONE> --goal "<reviewed goal text>" --timezone America/New_York --language English --region US
Planning is not execution. Do not run calle call start or calle call run unless the user separately confirms the provider's plan details and confirmation token.
Human Gate
A successful call result is not a scheduled interview. A human coordinator must review the transcript-backed availability windows, choose a time, send the calendar invite, and update any ATS or CRM system.
Cancellation And Idempotency
Derive an idempotency key from request_id, candidate, role, and allowed windows. If the user cancels, mark the local request stopped and do not retry. If a call outcome is ambiguous, route to human review rather than calling again automatically.
Safety Notes
Read references/safety.md before using live planning, and review references/examples.md for safe and unsafe examples.