Personal attendance, payslip, salary, and related self-service tasks on the user's own Hilan account. Trigger on shaon, attendance, clock in/out, payslip, salary slip, work hours, תלוש, תלוש שכר, משכורת, דוח נוכחות, corrections log, forgot to clock in, forgot to report, or any request about the user's own Israeli employer self-service portal.
Claude Code skill for the shaon repo and binary.
auth, payroll payslip view, reports show, cache refresh attendance-types,
serve, and completions.All write commands (attendance report today/day/range, attendance auto-fill, attendance resolve) submit under the user's identity against their real employer's system. When driving these, ALWAYS:
--dry-run (the default) first.--executeNever autonomously rerun a write with --execute. Writes must be treated as user-authorized actions and must not be submitted without explicit user confirmation.
If working from a repo checkout, prefer:
scripts/run.sh <command> [args]
If installed globally:
shaon <command> [args]
Create ~/.shaon/config.toml:
subdomain = "mycompany"
username = "123456789"
payslip_folder = "/path/to/payslips" # optional
payslip_format = "%Y-%m.pdf" # optional
Then authenticate:
shaon auth
If stored credentials are stale and you want a deterministic refresh prompt:
shaon auth --force-prompt
| User intent | Use |
|---|---|
| "what's my current month state?" | shaon attendance overview --json |
| "show me the raw calendar / what did Hilan record per day?" | shaon attendance status --month YYYY-MM |
| "what errors do I need to fix?" | shaon attendance errors --month YYYY-MM |
| "what attendance types can I report?" | shaon attendance types |
| "what absence symbols mean?" | shaon attendance absences |
| "show the analyzed hours sheet" | shaon reports sheet |
| "show the manual correction log / audit trail" | shaon reports corrections |
| "show a named Hilan report page" | shaon reports show <name> |
| "download my payslip" | shaon payroll payslip download --month YYYY-MM |
| "open my payslip locally" | shaon payroll payslip view --month YYYY-MM |
| "how much did I earn recently?" | shaon payroll salary --months N |
attendance overview is usually the best first move for an agent because it bundles identity, summary, errors, missing days, and suggested actions.
JSON contract notes:
attendance status --json returns { month, employee_id, days[] } with day_name, entry_time, exit_time, attendance_type, total_hours, has_error, error_message, and source.attendance overview --json returns missing_days as { date, day_name } objects.suggested_actions is keyed by kind; fields are top-level, not nested inside a generic params object.attendance overview --json --detailed adds a days[] array using the same schema as attendance status --json.| Intent | Command |
|---|---|
| clock in now | shaon attendance report today --in |
| clock out now | shaon attendance report today --out |
| report one explicit day | shaon attendance report day YYYY-MM-DD --type "regular" --hours 09:00-18:00 |
| report a range | shaon attendance report range --from YYYY-MM-DD --to YYYY-MM-DD --type "regular" --hours 09:00-18:00 |
| auto-fill missing days in a month | shaon attendance auto-fill --month YYYY-MM --type "regular" --hours 09:00-18:00 |
| resolve an existing error day | shaon attendance resolve YYYY-MM-DD --type "regular" --hours 09:00-18:00 |
--execute or execute: true.attendance report range and attendance auto-fill skip Fri/Sat unless explicitly overridden.attendance auto-fill is capped at --max-days 10 by default to prevent accidental bulk edits.Current MCP tools cover:
shaon_statusshaon_errorsshaon_typesshaon_clock_inshaon_clock_outshaon_fillshaon_auto_fillshaon_resolveshaon_payslip_downloadshaon_salaryshaon_sheetshaon_correctionsshaon_absencesshaon_overviewCLI-only features:
shaon authshaon payroll payslip viewshaon reports show <name>shaon cache refresh attendance-typesshaon serveshaon completionsshaon attendance overview --json
shaon attendance errors --month 2026-04 --json
shaon attendance resolve 2026-04-09 --type "regular" --hours 09:00-18:00
# After explicit user confirmation:
shaon attendance resolve 2026-04-09 --type "regular" --hours 09:00-18:00 --execute
shaon attendance report range --from 2026-04-01 --to 2026-04-05 --type "regular" --hours 09:00-18:00
# After explicit user confirmation:
shaon attendance report range --from 2026-04-01 --to 2026-04-05 --type "regular" --hours 09:00-18:00 --execute
shaon payroll payslip download --month 2026-03
shaon payroll payslip view --month 2026-03
shaon payroll payslip password --force-sensitive-output prints the current Hilan account password in plaintext to standard output. It does not recover historical passwords used for PDFs encrypted before a password change. Output may be captured by shells, terminals, logs, remote sessions, screenshots, and agent transcripts. Run it only on a private interactive terminal you control.
shaon cache refresh attendance-types or pass the numeric type code directly.shaon auth --force-prompt to verify and replace the stored password.