Agent guide
A compact reference for AI assistants and automation, covering every app route, the role each task needs, the order of operations, task recipes with exact UI labels, and the data model.
This page is written for AI assistants that answer questions about SecureForce or help a user operate it. It condenses the rest of the docs into lookups. Fetch the full docs as plain text from /llms-full.txt, or one page at /docs/md/<slug>.md.
Ground rules
- All data belongs to a workspace; a user acts in their current workspace (top-bar switcher).
- What a user can do depends on their role and data scope. If a page or button is missing for them, it's a role or scope issue, not a bug. See Roles and access.
- UI labels below are exact. Buttons are in bold.
- Setup has a strict order. When a user is stuck, walk back up the dependency chain in Core concepts before suggesting anything else.
App routes
| Route | Page | Needs |
|---|---|---|
/auth | Sign in (email or mobile number + password), sign up, Google | Public |
/accept-invite | Accept an email invitation | Public (invite link) |
/docs, /docs/<slug> | These docs | Public |
/approval-pending | Status of an org admin's workspace registration (pending / rejected) | Signed in, workspace not yet approved |
/super-admin | Super Admin Console: approve / reject workspace registrations | SecureForce super admins (public.platform_admins) |
/dashboard | Dashboard | Any member |
/company-overview | Company Overview | tenant.manage (Admin, IT Admin) |
/employees | Employee directory, document types, Import CSV | employees (view/manage) |
/employees/bulk-onboarding | Bulk onboarding from CSV | employees.manage, onboarding.manage |
/employees/<id> | Employee profile | employees view |
/employees/<id>/onboarding | Six-step onboarding wizard | onboarding.manage |
/kyc | KYC case list | kyc view |
/kyc/<caseId> | One KYC case | kyc.manage to change |
/onboarding | Onboarding tracker | onboarding view |
/document-rules | Staff categories, designations and mandatory document rules | documents.manage for rules; master_data.manage or documents.manage for categories |
/deployment | Deployments | deployments view/manage |
/field-attendance | My shift, Today, Muster, Performance, Setup | Linked employee (My shift); attendance view (others); attendance.manage or deployments.manage (Setup) |
/attendance | Shifts, roster assignments, attendance records | rosters.manage, attendance.manage |
/leave-management | Leave requests and balances | leave view/manage |
/clients-sites | Customer groups, clients, contracts and sites | master_data.manage to change |
/hr-approval | HR approval board and settings; /hr-approval/<employee id> to approve and Approve & Deploy | onboarding.manage or deployments.manage |
/salary-structures | The pre-approved salary table | payroll.manage to change |
/sign/<agreement id> | Read and e-sign a contract or client NDA | onboarding.manage / deployments.manage, or the worker |
/employees/<id>/id-card | Printable ID card | employee view |
/customer-setup | Wizard: group, companies, contracts, sites, headcount in one transaction | master_data.manage (+ deployments.manage for headcount) |
/daily-report | Daily Report (DMR) | headcount view (incl. Client) |
/client-portal | Client Portal | Client or staff |
/payroll-prep | Payroll Prep | payroll.manage |
/billing-prep | Billing Prep | billing.manage |
/reports | Reports | View access to attendance, payroll, billing or compliance |
/compliance | Compliance tasks | compliance view/manage |
/notifications | Notifications | Any member |
/activity-tracking, /devices/<id> | Activity tracking | tenant.manage (Admin, IT Admin) |
/security-alerts | Software Security | software.manage |
/organization | Companies, branches, departments, service lines, grades | master_data.manage |
/administration | Members, invitations, scopes, numbering, audit | tenant.manage or audit.read |
/profile | Own profile | Any member |
Order of operations (new workspace → first check-in)
- Sign up (
/auth→ Sign up: Full name, Organisation name, Work email, Password → Create workspace admin). The workspace is Approval Pending (/approval-pending) until a super admin approves it at/super-admin(users inpublic.platform_admins). /organization: company, branch, department, service line, grade./clients-sites: Add client, then Add site with Latitude, Longitude, Geofence radius. The Site location box above them fills latitude/longitude from a place search, Use current location, or a tap on the map./employees: Add employee with Email = their future login email. Optional Document Types./kyc: Start a KYC case → Open case → open the card → set each check Verified/Waived (Aadhaar and PAN need the number typed) → Clear for deployment → Clear candidate./employees/<id>→ Start onboarding → six steps → step 6 Add deployment (Client, Site, Role title, Pay rate, Bill rate) → Create deployment./attendance: Add shift (status Published); Add roster assignment (Employee, Deployment, Shift, Site, Roster Date = today, Published)./administration→ Add member (same email, role Field Employee, Generate) → confirm "Linked to their employee record"./field-attendance→ Setup: Location check Enforce, photo on, Save; Approved headcount: pick the Site, Add designation = role title, number, save.- The guard, on the phone:
/field-attendance→ Check in → Take photo → Use photo.
Task recipes
| Goal | Steps |
|---|---|
| Give an employee a login | /administration → Add member → email = employee's email → role → Generate → Add member → check "Linked to their employee record" → Copy sign-in details. |
| Limit a supervisor to one site | /administration → Data Scopes → Member = supervisor, Scope type = site, Scope target = the site → Assign. |
| Give a customer their daily report | Add member with role Client → scope type client → their client. They open /daily-report. |
| Fix "not linked to an employee record" | Make the employee's email exactly the login email (unique) → Add member again with that email. |
| Fix "No shift rostered" | /attendance → Add roster assignment for today. |
| Mark several people absent | /field-attendance → Muster → tick them → Mark as… → Absent. |
| Check in a guard with no smartphone | /field-attendance → Muster → Check in a guard → guard's mobile number → Find → Check in (same again for Check out). Needs Supervisor, Operations Manager or Admin; own sites only. |
| Correct a missed check-out | Muster → click the person → Correct the times → enter the time and a reason → save. |
| Approve a day | Muster → Approve day (or per person). |
| Move a guard to another site | /deployment → edit the old deployment: End Date, status completed → Add deployment at the new site → roster them there. |
| Run monthly payroll | /payroll-prep → Period start/end → Generate → check the summary → Approve drafts → Export → Mark exported → Lock exported. |
| Import staff from a spreadsheet | /employees/bulk-onboarding → Get the template → fill → upload → Import & onboard → verify documents → Deploy all verified. |
| Add a deadline | /compliance → Add compliance task (Title, Category, Due date, links). |
Data model (main records and links)
| Record | Key fields | Links to |
|---|---|---|
| tenant (workspace) | name, country_code | everything |
| tenant_membership | user, role, status | tenant, login |
| data_scope | scope_type (all/branch/client/site/employee), scope_id | membership |
| employee | employee_code, first_name, last_name, email, phone, status, user_id | company, branch, department, grade, login (user_id) |
| client / client_site | name, code; site: geo_lat, geo_lng, geofence_radius_m | branch |
| deployment | role_title, starts_on, ends_on, status, pay_rate, bill_rate | employee, client, site, service line |
| shift | name, starts_at, ends_at, crosses_midnight, break_minutes, status | site (optional) |
| roster_assignment | roster_date, status | employee, deployment, shift, site |
| attendance_record | attendance_date, status, check_in_at, check_out_at, check-in geo and photo | employee, roster_assignment, shift, site |
| attendance_policy | geofence_mode (off/warn/block), late grace, half-day, radius, time zone, photo, self-service, require checkout | workspace |
| site_headcount_requirement | designation, required_count | site |
| leave_request / leave_balance | type, dates, days, status / opening, accrued, used, adjusted, closing | employee |
| kyc_case / kyc_check / kyc_employment_record | status, valid_until / title, status, reference / company, dates, status | employee, documents |
| payroll_input / billing_input | period, days, OT hours, gross, deductions, net, status / units, amounts, status | employee / client, site |
| compliance_task | title, category, status, due_date | employee, client, site (optional) |
Status vocabularies
attendance: present, late, half_day, absent, leave, holiday, weekly_off, exception · deployment: planned, active, completed, cancelled · shift: draft, published, locked, cancelled · leave: requested, approved, rejected, cancelled · payroll: draft, approved, exported, locked · billing: draft, approved, invoiced, locked · KYC case: draft, in_review, on_hold, cleared, rejected · KYC check: pending, in_progress, passed (shown as Verified), failed, waived · compliance: open, in_progress, completed, overdue, waived.