Key facts
| Agent runtime | Function calling loop on /v1/chat/completions (live) |
| Tools | Policy search, case lookup, entitlement checks and draft creation |
| Model routing | plugsky-micro and plugsky-lite for triage; larger models for sensitive drafting |
| Models | 30+ models behind one OpenAI-compatible endpoint |
| Access control | Scoped API keys, RBAC and SSO/SCIM for HR system identity |
| Audit | Tool calls and inference metadata exportable to SIEM |
| Deployment | Region-locked planes, VPC, on-prem and air-gapped options |
| Roadmap endpoints | Assistants-style managed endpoints are coming soon; build the tool loop today |
TL;DR
- Let the agent search and draft; never let it decide anything with legal effect on an employee.
- Enforce employee and manager scopes inside tools, not in prompts.
- Keep personal data out of tool arguments unless the step truly needs it.
- Route routine policy questions to small models and sensitive drafts to stronger ones.
- Log every tool call so HR can reconstruct how any answer was produced.
How it works, step by step
- Choose a first workflow — policy Q&A, onboarding checklists or case-status summaries — and write down what the agent may and may not do.
- Expose policy search, case lookup and form generation as narrow tools with typed schemas and server-side permission checks.
- Implement the loop: send the employee question with a tools array, execute each tool_call, append results, and stop when the model drafts an answer.
- Redact or avoid personal data in prompts; retrieve only the fields the current step needs.
- Add a draft-then-review step for anything a person would normally sign — offers, warnings, accommodations and terminations.
- Log tool arguments, result counts and model metadata, and keep transcripts for the retention period HR policy requires.
- Pilot with the HR service desk, measure deflection and escalation accuracy, then expand to a second workflow.
Try it yourself
Open the AI agent prompt generator →
Tools for policy, cases and onboarding
An HR copilot is only as good as its tools. Give it a small set: search the policy corpus, fetch case status from the HRIS, check an entitlement, and create a draft task or reply. Each tool takes typed arguments, applies the requesting employee's scope server-side, and returns the minimum data needed. The model plans and phrases; the tools decide what is visible.
Plugsky's live function calling makes this a standard loop on /v1/chat/completions: pass a tools array, execute returned tool_calls, append results and call again. Because the API is OpenAI-compatible, the same loop runs from your existing SDK and stays inside your security boundary.
PII, permissions and high-risk decisions
Employment decisions carry legal weight, and in the EU many HR uses fall into high-risk categories under the AI Act. Keep the agent on the assistive side of that line: it retrieves, summarises and drafts; humans decide. Never let a tool automate rejection, ranking or discipline.
- Data minimisation: pass employee IDs, not full profiles; omit health, family or compensation details unless the task requires them.
- Scope: managers see their teams, employees see themselves, HR business partners see their populations — enforced in tool code.
- Transparency: tell employees when they are talking to an assistant and how to reach a person.
- Records: log tool calls and model metadata so any answer can be reconstructed months later.
Routing, tone and evaluation
HR questions split cleanly by difficulty. Password resets, leave balances and policy lookups suit plugsky-micro or plugsky-lite, which keeps latency and capacity predictable. Sensitive drafting — accommodations, investigations, restructuring communication — deserves the strongest models with careful review. With 30+ models behind one endpoint, routing is a model-string change per workflow.
Evaluate with a set of real questions and expected answers: policy accuracy, citation to the correct clause, escalation behaviour, and refusal when the request crosses into advice the organisation does not provide. Track how often employees ask for a human and how often drafts are edited. Those two numbers tell you whether the agent is helping or adding review work.
Honest comparison
| Concern | Plugsky-based agent | HR helpdesk queue | Managed HR chatbot |
|---|---|---|---|
| Coverage | Policy, cases and onboarding through tools | Human triage | Vendor-defined flows |
| Model choice | 30+ models, route per sensitivity | None | Vendor catalogue |
| Permissions | Enforced in tool code per employee scope | Agent judgement | Vendor connectors |
| Decisions | Human review by design | Human by nature | Varies; audit carefully |
| Audit | Tool and model logs exportable to SIEM | Ticket history | Vendor-controlled logs |
Frequently asked questions
Can the agent make hiring or firing decisions?
No. It should retrieve, summarise and draft; employment decisions stay with people. Automating those decisions also raises high-risk obligations under rules such as the EU AI Act.
How do we protect employee data?
Pass the minimum fields per step, enforce scopes in tool code, keep your HRIS as the system of record, and set prompt retention to match HR policy.
Which questions can it answer safely?
Policy lookups, leave and entitlement questions, onboarding steps, case status and draft replies. Escalate anything involving conflict, health or legal exposure to a person.
Is function calling live?
Yes. OpenAI-style function calling and streaming are live on the chat completions endpoint, which is all the loop needs.
Can it run inside our network?
Yes. Plugsky supports region-locked cloud planes plus VPC, on-prem and air-gapped deployments, so HR data can stay where policy requires.
How do we start without procurement?
Create a free workspace with plugsky-micro and plugsky-lite and no card, build against a small policy corpus, then move to a paid plan or the 14-day full-access trial.
What should we measure?
Deflection rate, escalation accuracy, citation correctness and how often HR edits the drafts. Rising edits mean the retrieval or the tooling needs work.