A corporation HR management plugin for SeAT 5.x. Manage recruitment applications, assess members with cross-plugin data, and streamline your corporation's hiring process.
- Application Forms -- Customizable form templates with 7 question types (text, textarea, select, checkbox, radio, number, URL), default template included with standard recruitment questions
- Application Workflow -- Full state machine: Applied > Under Review > Interview > Accepted / Rejected / Withdrawn, with audit trail for every status change
- Recruiter Notes -- Private (author-only) and public notes on applications and member profiles, with privacy enforced at database query level
- Member Assessment -- Aggregated member profiles with mining stats, ratting income, tax compliance, ore preferences, and activity history
- Character Checks -- ESI-based checks: employment history, security status, skill points, current corporation/alliance, SeAT registration status
- Cross-Plugin Integration -- Mining Manager data (mining value, tax payments, ore breakdown) and Corp Wallet Manager data (ratting bounties, mission rewards) via Manager Core Plugin Bridge
- Dashboard -- Pending applications overview, status distribution, recent activity feed, quick actions
- Webhooks -- Discord and Slack notifications for application events (submitted, accepted, rejected, status changes) with per-webhook event toggles
- Settings -- Configurable stale application days, max pending applications, feature toggles for cross-plugin integrations
- SeAT 5.x
- PHP 8.1+
- MariaDB / MySQL
- Manager Core ^1.0
- Mining Manager -- Mining activity, tax payments, ore preferences on member profiles
- Corp Wallet Manager -- Per-character ratting income via Plugin Bridge capabilities
composer require mattfalahe/hr-manager
php artisan migrate
php artisan db:seed --class=HrManager\\Database\\Seeders\\ScheduleSeederAfter installation:
- Open SeAT and navigate to HR Manager > Help to verify the plugin loaded
- Assign permissions to users via SeAT's Access Management
- Navigate to HR Manager > Templates to review or customize the default application form
- Configure webhooks in HR Manager > Settings > Webhooks for Discord/Slack notifications
4-tier permission model -- higher tiers inherit all lower tier access.
| Permission | Tier | Description |
|---|---|---|
hr-manager.view |
View | Help page access |
hr-manager.recruiter |
Recruiter | View applications, member profiles, manage own notes, character checks |
hr-manager.director |
Director | Manage templates, assign recruiters, accept/reject applications, refresh assessments |
hr-manager.admin |
Admin | Full control: settings, webhooks, delete applications and templates |
Private notes are visible only to their author. This is enforced at the database query level -- not even directors or admins can see other users' private notes.
applied --> under_review --> interview --> accepted
| |
rejected rejected
| |
withdrawn withdrawn
| Transition | Who Can Do It |
|---|---|
| applied > under_review | Recruiter, Director |
| under_review > interview | Recruiter, Director |
| interview > under_review (send back) | Director |
| any > accepted | Director |
| any > rejected | Director |
| any > withdrawn | Admin |
Every status change is logged with the user who made the change, timestamp, and optional comment.
Directors can create custom application form templates with:
- 7 question types: Text, Textarea, Dropdown, Checkbox, Radio, Number, URL
- Required/optional flags per question
- Help text and placeholder support
- Drag-and-drop question ordering
- Multiple templates (e.g., different forms for PvP vs. industry recruits)
- One default template per corporation
A Standard Application template is seeded on install with 8 common recruitment questions.
When Mining Manager and/or Corp Wallet Manager are installed, member profiles display:
| Data | Source | Details |
|---|---|---|
| Total mining value | Mining Manager | Sum of ore values over configurable period |
| Mining tax paid | Mining Manager | Tax payments and compliance percentage |
| Ore preferences | Mining Manager | Breakdown of ore types mined |
| Ratting income | Corp Wallet Manager | Bounty prizes and mission rewards via Plugin Bridge |
| Active months | Mining Manager | Months with recorded mining activity |
Data is cached in hr_manager_member_assessments and refreshed every 2 hours (configurable).
| Command | Description |
|---|---|
hr-manager:cache-assessments |
Refresh stale member assessment caches |
hr-manager:cleanup |
Permanently delete soft-deleted applications older than N days |
hr-manager:diagnose |
Run diagnostics: table health, bridge status, quick stats |
All tables prefixed with hr_manager_:
| Table | Purpose |
|---|---|
settings |
Key-value configuration (multi-corp aware) |
webhook_configurations |
Discord/Slack webhook configs with delivery stats |
form_templates |
Application form templates (soft deletes) |
form_template_questions |
Questions within templates (7 types) |
applications |
Submitted applications with status workflow |
application_answers |
Form answers with snapshotted question text |
application_status_history |
Audit trail for all status transitions |
notes |
Polymorphic notes for applications and members |
member_assessments |
Cached cross-plugin assessment data |
This package is open-sourced software licensed under the GPL-2.0.