# Alohire ATS — guide for computer-using agents (CUA) > Alohire is an Applicant Tracking System: job postings, candidates ("people"), > a per-job hiring pipeline (stages / kanban), AI resume review, AI candidate > search and chat, and background checks. This file tells an agent how to find > its way around the web app (SolidJS SPA) using stable DOM hooks instead of > pixel positions or translated text. ## How to locate things 1. Which page am I on? Exactly one `main[data-page]` exists per route. `document.querySelector("main[data-page]").dataset.page` → e.g. `job-view`. The landmark id is `#page-`; its heading is `#page-title`; page-level buttons sit in `#page-actions` (role=toolbar). 2. Prefer `#id` selectors. Ids are kebab-case and scoped by page/component (`job-list-search`, `job-form-title`). Ids for repeated entities end with the entity id (`job-row-17-edit`, `kanban-card-42`). 3. Repeated items: `[data-cua=]` with `data-id=`, inside a `[data-cua=-list]` container. Example: `[data-cua=job-row][data-id="17"]`. 4. Form fields have `id`, `name` (= the API/model field) and a `