Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "get_pto_balance", "description": "Look up remaining paid-time-off balance for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "as_of_date": {"type": "string", "description": "YYYY-MM-DD"}}, "required": ["employee_id"]}}, {"name": "update_employee_record", "description": "Update a field on an employee's HR record.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "field": {"type": "string", "enum": ["legal_name", "preferred_name", "address", "phone", "emergency_contact", "bank_account"]}, "value": {"type": "string"}, "effective_date": {"type": "string"}}, "required": ["employee_id", "field", "value"]}}, {"name": "book_training", "description": "Register an employee for a training course.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "course_id": {"type": "string"}, "session_date": {"type": "string"}}, "required": ["employee_id", "course_id"]}}, {"name": "submit_timesheet", "description": "Submit hours worked for a pay period.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "period_start": {"type": "string"}, "period_end": {"type": "string"}, "hours": {"type": "number"}, "project_code": {"type": "string"}}, "required": ["employee_id", "period_start", "period_end", "hours"]}}, {"name": "schedule_interview", "description": "Schedule an interview between a candidate and an interviewer panel.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "role_id": {"type": "string"}, "start_time": {"type": "string", "description": "ISO 8601"}, "duration_minutes": {"type": "integer"}, "interviewer_ids": {"type": "array"}, "stage": {"type": "string", "enum": ["screen", "technical", "onsite", "final"]}}, "required": ["candidate_id", "role_id", "start_time", "duration_minutes"]}}]

Request: Log the hours for the period for employee id EMP-5595, period start 2026-05-12, period end 2026-07-06, hours 38.5 and project code PRJ-122.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "call", "tool": "submit_timesheet", "arguments": {"employee_id": "EMP-5595", "period_start": "2026-05-12", "period_end": "2026-07-06", "hours": 38.5, "project_code": "PRJ-122"}}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "request_leave", "description": "Submit a time-off request for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string", "description": "employee identifier"}, "leave_type": {"type": "string", "enum": ["vacation", "sick", "parental", "bereavement", "unpaid"]}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "end_date": {"type": "string", "description": "YYYY-MM-DD"}, "note": {"type": "string"}}, "required": ["employee_id", "leave_type", "start_date", "end_date"]}}, {"name": "start_onboarding", "description": "Kick off the onboarding workflow for a new hire.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "manager_id": {"type": "string"}, "equipment_bundle": {"type": "string", "enum": ["laptop_standard", "laptop_dev", "none"]}}, "required": ["candidate_id", "start_date", "manager_id"]}}, {"name": "book_training", "description": "Register an employee for a training course.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "course_id": {"type": "string"}, "session_date": {"type": "string"}}, "required": ["employee_id", "course_id"]}}, {"name": "get_pto_balance", "description": "Look up remaining paid-time-off balance for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "as_of_date": {"type": "string", "description": "YYYY-MM-DD"}}, "required": ["employee_id"]}}, {"name": "submit_timesheet", "description": "Submit hours worked for a pay period.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "period_start": {"type": "string"}, "period_end": {"type": "string"}, "hours": {"type": "number"}, "project_code": {"type": "string"}}, "required": ["employee_id", "period_start", "period_end", "hours"]}}, {"name": "file_expense", "description": "File an expense claim for reimbursement.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "amount": {"type": "number"}, "currency": {"type": "string"}, "category": {"type": "string", "enum": ["travel", "meals", "equipment", "training", "other"]}, "incurred_date": {"type": "string", "description": "YYYY-MM-DD"}, "receipt_id": {"type": "string"}}, "required": ["employee_id", "amount", "currency", "category", "incurred_date"]}}]

Request: Register for a training course for employee id EMP-8544 and course id AI-120.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "call", "tool": "book_training", "arguments": {"employee_id": "EMP-8544", "course_id": "AI-120"}}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "get_org_chart", "description": "Return the reporting chain or direct reports for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "direction": {"type": "string", "enum": ["reports_to", "direct_reports"]}, "depth": {"type": "integer"}}, "required": ["employee_id", "direction"]}}, {"name": "file_expense", "description": "File an expense claim for reimbursement.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "amount": {"type": "number"}, "currency": {"type": "string"}, "category": {"type": "string", "enum": ["travel", "meals", "equipment", "training", "other"]}, "incurred_date": {"type": "string", "description": "YYYY-MM-DD"}, "receipt_id": {"type": "string"}}, "required": ["employee_id", "amount", "currency", "category", "incurred_date"]}}, {"name": "request_leave", "description": "Submit a time-off request for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string", "description": "employee identifier"}, "leave_type": {"type": "string", "enum": ["vacation", "sick", "parental", "bereavement", "unpaid"]}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "end_date": {"type": "string", "description": "YYYY-MM-DD"}, "note": {"type": "string"}}, "required": ["employee_id", "leave_type", "start_date", "end_date"]}}, {"name": "enroll_benefits", "description": "Enroll an employee in a benefits plan during an eligible window.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "plan_id": {"type": "string"}, "coverage_level": {"type": "string", "enum": ["employee", "employee_spouse", "family"]}, "dependents": {"type": "array"}}, "required": ["employee_id", "plan_id", "coverage_level"]}}, {"name": "get_pto_balance", "description": "Look up remaining paid-time-off balance for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "as_of_date": {"type": "string", "description": "YYYY-MM-DD"}}, "required": ["employee_id"]}}, {"name": "submit_timesheet", "description": "Submit hours worked for a pay period.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "period_start": {"type": "string"}, "period_end": {"type": "string"}, "hours": {"type": "number"}, "project_code": {"type": "string"}}, "required": ["employee_id", "period_start", "period_end", "hours"]}}]

Request: Log the hours for the period for employee id EMP-8194, period start 2026-01-18, period end 2026-02-26 and hours 12.1.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "call", "tool": "submit_timesheet", "arguments": {"employee_id": "EMP-8194", "period_start": "2026-01-18", "period_end": "2026-02-26", "hours": 12.1}}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "get_org_chart", "description": "Return the reporting chain or direct reports for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "direction": {"type": "string", "enum": ["reports_to", "direct_reports"]}, "depth": {"type": "integer"}}, "required": ["employee_id", "direction"]}}, {"name": "book_training", "description": "Register an employee for a training course.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "course_id": {"type": "string"}, "session_date": {"type": "string"}}, "required": ["employee_id", "course_id"]}}, {"name": "start_onboarding", "description": "Kick off the onboarding workflow for a new hire.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "manager_id": {"type": "string"}, "equipment_bundle": {"type": "string", "enum": ["laptop_standard", "laptop_dev", "none"]}}, "required": ["candidate_id", "start_date", "manager_id"]}}, {"name": "enroll_benefits", "description": "Enroll an employee in a benefits plan during an eligible window.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "plan_id": {"type": "string"}, "coverage_level": {"type": "string", "enum": ["employee", "employee_spouse", "family"]}, "dependents": {"type": "array"}}, "required": ["employee_id", "plan_id", "coverage_level"]}}, {"name": "schedule_interview", "description": "Schedule an interview between a candidate and an interviewer panel.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "role_id": {"type": "string"}, "start_time": {"type": "string", "description": "ISO 8601"}, "duration_minutes": {"type": "integer"}, "interviewer_ids": {"type": "array"}, "stage": {"type": "string", "enum": ["screen", "technical", "onsite", "final"]}}, "required": ["candidate_id", "role_id", "start_time", "duration_minutes"]}}]

Request: Add benefits enrolment for employee id EMP-7362 and plan id VISION-1.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "clarify", "missing": ["coverage_level"], "question": "Which coverage level should I use?"}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "enroll_benefits", "description": "Enroll an employee in a benefits plan during an eligible window.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "plan_id": {"type": "string"}, "coverage_level": {"type": "string", "enum": ["employee", "employee_spouse", "family"]}, "dependents": {"type": "array"}}, "required": ["employee_id", "plan_id", "coverage_level"]}}, {"name": "search_open_roles", "description": "Search currently open requisitions.", "parameters": {"type": "object", "properties": {"department": {"type": "string"}, "location": {"type": "string"}, "seniority": {"type": "string", "enum": ["junior", "mid", "senior", "lead"]}}, "required": []}}, {"name": "schedule_interview", "description": "Schedule an interview between a candidate and an interviewer panel.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "role_id": {"type": "string"}, "start_time": {"type": "string", "description": "ISO 8601"}, "duration_minutes": {"type": "integer"}, "interviewer_ids": {"type": "array"}, "stage": {"type": "string", "enum": ["screen", "technical", "onsite", "final"]}}, "required": ["candidate_id", "role_id", "start_time", "duration_minutes"]}}, {"name": "request_leave", "description": "Submit a time-off request for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string", "description": "employee identifier"}, "leave_type": {"type": "string", "enum": ["vacation", "sick", "parental", "bereavement", "unpaid"]}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "end_date": {"type": "string", "description": "YYYY-MM-DD"}, "note": {"type": "string"}}, "required": ["employee_id", "leave_type", "start_date", "end_date"]}}, {"name": "start_onboarding", "description": "Kick off the onboarding workflow for a new hire.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "manager_id": {"type": "string"}, "equipment_bundle": {"type": "string", "enum": ["laptop_standard", "laptop_dev", "none"]}}, "required": ["candidate_id", "start_date", "manager_id"]}}, {"name": "update_employee_record", "description": "Update a field on an employee's HR record.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "field": {"type": "string", "enum": ["legal_name", "preferred_name", "address", "phone", "emergency_contact", "bank_account"]}, "value": {"type": "string"}, "effective_date": {"type": "string"}}, "required": ["employee_id", "field", "value"]}}, {"name": "lookup_policy", "description": "Retrieve the text of an internal HR policy by topic.", "parameters": {"type": "object", "properties": {"topic": {"type": "string", "description": "e.g. remote_work, expenses, parental_leave"}, "region": {"type": "string", "description": "country or state code"}}, "required": ["topic"]}}]

Request: Change the legal name for employee id EMP-4475 and value Yuki Haddad.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "call", "tool": "update_employee_record", "arguments": {"employee_id": "EMP-4475", "field": "legal_name", "value": "Yuki Haddad"}}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "submit_timesheet", "description": "Submit hours worked for a pay period.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "period_start": {"type": "string"}, "period_end": {"type": "string"}, "hours": {"type": "number"}, "project_code": {"type": "string"}}, "required": ["employee_id", "period_start", "period_end", "hours"]}}, {"name": "file_expense", "description": "File an expense claim for reimbursement.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "amount": {"type": "number"}, "currency": {"type": "string"}, "category": {"type": "string", "enum": ["travel", "meals", "equipment", "training", "other"]}, "incurred_date": {"type": "string", "description": "YYYY-MM-DD"}, "receipt_id": {"type": "string"}}, "required": ["employee_id", "amount", "currency", "category", "incurred_date"]}}, {"name": "search_open_roles", "description": "Search currently open requisitions.", "parameters": {"type": "object", "properties": {"department": {"type": "string"}, "location": {"type": "string"}, "seniority": {"type": "string", "enum": ["junior", "mid", "senior", "lead"]}}, "required": []}}, {"name": "schedule_interview", "description": "Schedule an interview between a candidate and an interviewer panel.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "role_id": {"type": "string"}, "start_time": {"type": "string", "description": "ISO 8601"}, "duration_minutes": {"type": "integer"}, "interviewer_ids": {"type": "array"}, "stage": {"type": "string", "enum": ["screen", "technical", "onsite", "final"]}}, "required": ["candidate_id", "role_id", "start_time", "duration_minutes"]}}]

Request: Set up an interview for role id REQ-657, start time 2026-11-20 at 13:00 and duration minutes 30.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "clarify", "missing": ["candidate_id"], "question": "Which candidate id should I use?"}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "request_leave", "description": "Submit a time-off request for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string", "description": "employee identifier"}, "leave_type": {"type": "string", "enum": ["vacation", "sick", "parental", "bereavement", "unpaid"]}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "end_date": {"type": "string", "description": "YYYY-MM-DD"}, "note": {"type": "string"}}, "required": ["employee_id", "leave_type", "start_date", "end_date"]}}, {"name": "enroll_benefits", "description": "Enroll an employee in a benefits plan during an eligible window.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "plan_id": {"type": "string"}, "coverage_level": {"type": "string", "enum": ["employee", "employee_spouse", "family"]}, "dependents": {"type": "array"}}, "required": ["employee_id", "plan_id", "coverage_level"]}}, {"name": "file_expense", "description": "File an expense claim for reimbursement.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "amount": {"type": "number"}, "currency": {"type": "string"}, "category": {"type": "string", "enum": ["travel", "meals", "equipment", "training", "other"]}, "incurred_date": {"type": "string", "description": "YYYY-MM-DD"}, "receipt_id": {"type": "string"}}, "required": ["employee_id", "amount", "currency", "category", "incurred_date"]}}, {"name": "search_open_roles", "description": "Search currently open requisitions.", "parameters": {"type": "object", "properties": {"department": {"type": "string"}, "location": {"type": "string"}, "seniority": {"type": "string", "enum": ["junior", "mid", "senior", "lead"]}}, "required": []}}, {"name": "get_pto_balance", "description": "Look up remaining paid-time-off balance for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "as_of_date": {"type": "string", "description": "YYYY-MM-DD"}}, "required": ["employee_id"]}}]

Request: Check the remaining vacation balance for employee id EMP-8958.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "call", "tool": "get_pto_balance", "arguments": {"employee_id": "EMP-8958"}}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "lookup_policy", "description": "Retrieve the text of an internal HR policy by topic.", "parameters": {"type": "object", "properties": {"topic": {"type": "string", "description": "e.g. remote_work, expenses, parental_leave"}, "region": {"type": "string", "description": "country or state code"}}, "required": ["topic"]}}, {"name": "update_employee_record", "description": "Update a field on an employee's HR record.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "field": {"type": "string", "enum": ["legal_name", "preferred_name", "address", "phone", "emergency_contact", "bank_account"]}, "value": {"type": "string"}, "effective_date": {"type": "string"}}, "required": ["employee_id", "field", "value"]}}, {"name": "start_onboarding", "description": "Kick off the onboarding workflow for a new hire.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "manager_id": {"type": "string"}, "equipment_bundle": {"type": "string", "enum": ["laptop_standard", "laptop_dev", "none"]}}, "required": ["candidate_id", "start_date", "manager_id"]}}, {"name": "submit_timesheet", "description": "Submit hours worked for a pay period.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "period_start": {"type": "string"}, "period_end": {"type": "string"}, "hours": {"type": "number"}, "project_code": {"type": "string"}}, "required": ["employee_id", "period_start", "period_end", "hours"]}}, {"name": "file_expense", "description": "File an expense claim for reimbursement.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "amount": {"type": "number"}, "currency": {"type": "string"}, "category": {"type": "string", "enum": ["travel", "meals", "equipment", "training", "other"]}, "incurred_date": {"type": "string", "description": "YYYY-MM-DD"}, "receipt_id": {"type": "string"}}, "required": ["employee_id", "amount", "currency", "category", "incurred_date"]}}]

Request: Pull up the parental leave policy.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "call", "tool": "lookup_policy", "arguments": {"topic": "parental_leave"}}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "request_leave", "description": "Submit a time-off request for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string", "description": "employee identifier"}, "leave_type": {"type": "string", "enum": ["vacation", "sick", "parental", "bereavement", "unpaid"]}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "end_date": {"type": "string", "description": "YYYY-MM-DD"}, "note": {"type": "string"}}, "required": ["employee_id", "leave_type", "start_date", "end_date"]}}, {"name": "update_employee_record", "description": "Update a field on an employee's HR record.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "field": {"type": "string", "enum": ["legal_name", "preferred_name", "address", "phone", "emergency_contact", "bank_account"]}, "value": {"type": "string"}, "effective_date": {"type": "string"}}, "required": ["employee_id", "field", "value"]}}, {"name": "search_open_roles", "description": "Search currently open requisitions.", "parameters": {"type": "object", "properties": {"department": {"type": "string"}, "location": {"type": "string"}, "seniority": {"type": "string", "enum": ["junior", "mid", "senior", "lead"]}}, "required": []}}, {"name": "lookup_policy", "description": "Retrieve the text of an internal HR policy by topic.", "parameters": {"type": "object", "properties": {"topic": {"type": "string", "description": "e.g. remote_work, expenses, parental_leave"}, "region": {"type": "string", "description": "country or state code"}}, "required": ["topic"]}}, {"name": "schedule_interview", "description": "Schedule an interview between a candidate and an interviewer panel.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "role_id": {"type": "string"}, "start_time": {"type": "string", "description": "ISO 8601"}, "duration_minutes": {"type": "integer"}, "interviewer_ids": {"type": "array"}, "stage": {"type": "string", "enum": ["screen", "technical", "onsite", "final"]}}, "required": ["candidate_id", "role_id", "start_time", "duration_minutes"]}}]

Request: Set up an interview for candidate id CAND-5389, role id REQ-647, start time 2026-10-20 at 13:00 and duration minutes 30.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "call", "tool": "schedule_interview", "arguments": {"candidate_id": "CAND-5389", "role_id": "REQ-647", "start_time": "2026-10-20T13:00:00", "duration_minutes": 30}}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "file_expense", "description": "File an expense claim for reimbursement.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "amount": {"type": "number"}, "currency": {"type": "string"}, "category": {"type": "string", "enum": ["travel", "meals", "equipment", "training", "other"]}, "incurred_date": {"type": "string", "description": "YYYY-MM-DD"}, "receipt_id": {"type": "string"}}, "required": ["employee_id", "amount", "currency", "category", "incurred_date"]}}, {"name": "schedule_interview", "description": "Schedule an interview between a candidate and an interviewer panel.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "role_id": {"type": "string"}, "start_time": {"type": "string", "description": "ISO 8601"}, "duration_minutes": {"type": "integer"}, "interviewer_ids": {"type": "array"}, "stage": {"type": "string", "enum": ["screen", "technical", "onsite", "final"]}}, "required": ["candidate_id", "role_id", "start_time", "duration_minutes"]}}, {"name": "get_org_chart", "description": "Return the reporting chain or direct reports for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "direction": {"type": "string", "enum": ["reports_to", "direct_reports"]}, "depth": {"type": "integer"}}, "required": ["employee_id", "direction"]}}, {"name": "enroll_benefits", "description": "Enroll an employee in a benefits plan during an eligible window.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "plan_id": {"type": "string"}, "coverage_level": {"type": "string", "enum": ["employee", "employee_spouse", "family"]}, "dependents": {"type": "array"}}, "required": ["employee_id", "plan_id", "coverage_level"]}}, {"name": "start_onboarding", "description": "Kick off the onboarding workflow for a new hire.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "manager_id": {"type": "string"}, "equipment_bundle": {"type": "string", "enum": ["laptop_standard", "laptop_dev", "none"]}}, "required": ["candidate_id", "start_date", "manager_id"]}}]

Request: Put through an expense for employee id EMP-7254, currency CAD, category meals and incurred date 2026-01-08.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "clarify", "missing": ["amount"], "question": "Which amount should I use?"}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "schedule_interview", "description": "Schedule an interview between a candidate and an interviewer panel.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "role_id": {"type": "string"}, "start_time": {"type": "string", "description": "ISO 8601"}, "duration_minutes": {"type": "integer"}, "interviewer_ids": {"type": "array"}, "stage": {"type": "string", "enum": ["screen", "technical", "onsite", "final"]}}, "required": ["candidate_id", "role_id", "start_time", "duration_minutes"]}}, {"name": "lookup_policy", "description": "Retrieve the text of an internal HR policy by topic.", "parameters": {"type": "object", "properties": {"topic": {"type": "string", "description": "e.g. remote_work, expenses, parental_leave"}, "region": {"type": "string", "description": "country or state code"}}, "required": ["topic"]}}, {"name": "request_leave", "description": "Submit a time-off request for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string", "description": "employee identifier"}, "leave_type": {"type": "string", "enum": ["vacation", "sick", "parental", "bereavement", "unpaid"]}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "end_date": {"type": "string", "description": "YYYY-MM-DD"}, "note": {"type": "string"}}, "required": ["employee_id", "leave_type", "start_date", "end_date"]}}, {"name": "get_pto_balance", "description": "Look up remaining paid-time-off balance for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "as_of_date": {"type": "string", "description": "YYYY-MM-DD"}}, "required": ["employee_id"]}}, {"name": "submit_timesheet", "description": "Submit hours worked for a pay period.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "period_start": {"type": "string"}, "period_end": {"type": "string"}, "hours": {"type": "number"}, "project_code": {"type": "string"}}, "required": ["employee_id", "period_start", "period_end", "hours"]}}]

Request: Please run payroll for the whole company this month.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "refuse", "reason": "No available tool supports this request."}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "lookup_policy", "description": "Retrieve the text of an internal HR policy by topic.", "parameters": {"type": "object", "properties": {"topic": {"type": "string", "description": "e.g. remote_work, expenses, parental_leave"}, "region": {"type": "string", "description": "country or state code"}}, "required": ["topic"]}}, {"name": "search_open_roles", "description": "Search currently open requisitions.", "parameters": {"type": "object", "properties": {"department": {"type": "string"}, "location": {"type": "string"}, "seniority": {"type": "string", "enum": ["junior", "mid", "senior", "lead"]}}, "required": []}}, {"name": "submit_timesheet", "description": "Submit hours worked for a pay period.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "period_start": {"type": "string"}, "period_end": {"type": "string"}, "hours": {"type": "number"}, "project_code": {"type": "string"}}, "required": ["employee_id", "period_start", "period_end", "hours"]}}, {"name": "start_onboarding", "description": "Kick off the onboarding workflow for a new hire.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "manager_id": {"type": "string"}, "equipment_bundle": {"type": "string", "enum": ["laptop_standard", "laptop_dev", "none"]}}, "required": ["candidate_id", "start_date", "manager_id"]}}, {"name": "update_employee_record", "description": "Update a field on an employee's HR record.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "field": {"type": "string", "enum": ["legal_name", "preferred_name", "address", "phone", "emergency_contact", "bank_account"]}, "value": {"type": "string"}, "effective_date": {"type": "string"}}, "required": ["employee_id", "field", "value"]}}, {"name": "schedule_interview", "description": "Schedule an interview between a candidate and an interviewer panel.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "role_id": {"type": "string"}, "start_time": {"type": "string", "description": "ISO 8601"}, "duration_minutes": {"type": "integer"}, "interviewer_ids": {"type": "array"}, "stage": {"type": "string", "enum": ["screen", "technical", "onsite", "final"]}}, "required": ["candidate_id", "role_id", "start_time", "duration_minutes"]}}, {"name": "get_pto_balance", "description": "Look up remaining paid-time-off balance for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "as_of_date": {"type": "string", "description": "YYYY-MM-DD"}}, "required": ["employee_id"]}}]

Request: Delete all records for a former employee permanently.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "refuse", "reason": "No available tool supports this request."}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "book_training", "description": "Register an employee for a training course.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "course_id": {"type": "string"}, "session_date": {"type": "string"}}, "required": ["employee_id", "course_id"]}}, {"name": "search_open_roles", "description": "Search currently open requisitions.", "parameters": {"type": "object", "properties": {"department": {"type": "string"}, "location": {"type": "string"}, "seniority": {"type": "string", "enum": ["junior", "mid", "senior", "lead"]}}, "required": []}}, {"name": "start_onboarding", "description": "Kick off the onboarding workflow for a new hire.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "manager_id": {"type": "string"}, "equipment_bundle": {"type": "string", "enum": ["laptop_standard", "laptop_dev", "none"]}}, "required": ["candidate_id", "start_date", "manager_id"]}}, {"name": "get_pto_balance", "description": "Look up remaining paid-time-off balance for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "as_of_date": {"type": "string", "description": "YYYY-MM-DD"}}, "required": ["employee_id"]}}, {"name": "schedule_interview", "description": "Schedule an interview between a candidate and an interviewer panel.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "role_id": {"type": "string"}, "start_time": {"type": "string", "description": "ISO 8601"}, "duration_minutes": {"type": "integer"}, "interviewer_ids": {"type": "array"}, "stage": {"type": "string", "enum": ["screen", "technical", "onsite", "final"]}}, "required": ["candidate_id", "role_id", "start_time", "duration_minutes"]}}, {"name": "update_employee_record", "description": "Update a field on an employee's HR record.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "field": {"type": "string", "enum": ["legal_name", "preferred_name", "address", "phone", "emergency_contact", "bank_account"]}, "value": {"type": "string"}, "effective_date": {"type": "string"}}, "required": ["employee_id", "field", "value"]}}]

Request: Kick off the onboarding workflow for candidate id CAND-9296, start date 2026-06-27, manager id EMP-3449 and equipment bundle laptop standard.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "call", "tool": "start_onboarding", "arguments": {"candidate_id": "CAND-9296", "start_date": "2026-06-27", "manager_id": "EMP-3449", "equipment_bundle": "laptop_standard"}}


Prompt:
You are an HR operations assistant with access to the following tools:
[{"name": "schedule_interview", "description": "Schedule an interview between a candidate and an interviewer panel.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "role_id": {"type": "string"}, "start_time": {"type": "string", "description": "ISO 8601"}, "duration_minutes": {"type": "integer"}, "interviewer_ids": {"type": "array"}, "stage": {"type": "string", "enum": ["screen", "technical", "onsite", "final"]}}, "required": ["candidate_id", "role_id", "start_time", "duration_minutes"]}}, {"name": "submit_timesheet", "description": "Submit hours worked for a pay period.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "period_start": {"type": "string"}, "period_end": {"type": "string"}, "hours": {"type": "number"}, "project_code": {"type": "string"}}, "required": ["employee_id", "period_start", "period_end", "hours"]}}, {"name": "get_org_chart", "description": "Return the reporting chain or direct reports for an employee.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "direction": {"type": "string", "enum": ["reports_to", "direct_reports"]}, "depth": {"type": "integer"}}, "required": ["employee_id", "direction"]}}, {"name": "update_employee_record", "description": "Update a field on an employee's HR record.", "parameters": {"type": "object", "properties": {"employee_id": {"type": "string"}, "field": {"type": "string", "enum": ["legal_name", "preferred_name", "address", "phone", "emergency_contact", "bank_account"]}, "value": {"type": "string"}, "effective_date": {"type": "string"}}, "required": ["employee_id", "field", "value"]}}, {"name": "start_onboarding", "description": "Kick off the onboarding workflow for a new hire.", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string"}, "start_date": {"type": "string", "description": "YYYY-MM-DD"}, "manager_id": {"type": "string"}, "equipment_bundle": {"type": "string", "enum": ["laptop_standard", "laptop_dev", "none"]}}, "required": ["candidate_id", "start_date", "manager_id"]}}]

Request: Correct the legal name record for employee id EMP-2649 and value Diego Andersen.

Reply with exactly one JSON object and nothing else. Use {"action":"call","tool":<name>,"arguments":{...}} when a tool applies, {"action":"clarify","missing":[<parameter>],"question":<question>} when a required parameter was not provided, or {"action":"refuse","reason":<reason>} when no tool supports the request.

Response: {"action": "call", "tool": "update_employee_record", "arguments": {"employee_id": "EMP-2649", "field": "legal_name", "value": "Diego Andersen"}}