SuperAPI AI Directory

dingtalk-attendance

Office & productivity

View repository

Updated 10-15 21:10

About this skill

DingTalk Attendance Skill

🧪 EXPERIMENTAL · Experimental version / Preview — multi mode currently does not meet the stable standard. All dingtalk-* skills have passed the dispatch verifier, but interfaces, naming, and cross-skill references may be adjusted later; for production / shared environments, please prefer mono mode (dws skill setup --mode mono). Please file an issue for feedback on problems.

PREREQUISITE: Read the dws-shared skill first for auth, global flags, product routing, URL preflight, error codes, and safety rules. The dws binary must be on PATH.

⚠️ Command availability is subject to the current dws binary. Service discovery has been taken offline; this document is released with the built-in skill; if dws <cmd> --help does not exist, it means the current version does not expose this command. If the command exists but the call fails, please follow the endpoint or tool hints in the error to confirm the static endpoint catalog and backend tool registration. Before actual invocation, you can use dws <cmd> --help or --dry-run to verify.

Command reference:attendance.md。

Shortcuts (preferred when there is no dedicated script/recipe)

The following shortcuts come from a public catalog independent of the Runtime Schema. First route by this skill's intent table, scripts, and recipes: when a dedicated script/recipe that precisely covers the scenario exists, execute according to it; otherwise, when the user's intent matches, shortcuts take precedence over handwritten atomic commands. Use dws shortcut list --service attendance --format json to read parameters, constraints, risks, and examples, and use dws attendance <shortcut> --help to check the current Cobra flags; do not call + on the dws schema。

Shortcut Risk Applicable scenario
dws attendance +check-record read Query a user's clock-in records (clock-in time/location/location method)
dws attendance +check-result read Query a user's clock-in results (late/early leave/missing clock-in, etc.)
dws attendance +get-adjustment-rule read Query missed clock-in correction rule details by the correction rule primary key ID
dws attendance +get-approve-template read Query the approval submission links for missed clock-in correction/leave/overtime/outing/business trip
dws attendance +get-checkin-record read Query the check-in records of a specified employee over a period of time
dws attendance +get-leave-records read Query the leave balance change records of a specified employee
dws attendance +get-overtime-rule read Query overtime rule details by the overtime rule primary key ID
dws attendance +get-schedule read Get the scheduling records of a specified user over a period of time
dws attendance +get-self-setting read Query personal rule settings (clock-in reminder/quick clock-in/missing clock-in reminder, etc.)
dws attendance +get-summary read Query a person's attendance statistics summary (weekly/monthly)
dws attendance +list-approve read Query a user's attendance approval forms (missed clock-in correction/overtime/leave/business trip outing)
dws attendance +list-leave-types read Query the list of leave rules available to the current user
dws attendance +my-attendance read Check my clock-in records for today (clock-in records, automatically resolving the current user)
dws attendance +query-report-data read Query attendance report data by fields (administrators only)
dws attendance +search-adjustment-rule read Query the list of missed clock-in correction rules that the current user can manage
dws attendance +search-class read Query the list of shift details that the current user can manage
dws attendance +search-group read Query the list of attendance groups that the current user can manage
dws attendance +search-overtime-rule read Query the list of overtime rules that the current user can manage
dws attendance +this-month read Check my clock-in records for this month (clock-in records, automatically resolving the current user)

Intent table

User says Command
"Check my / someone's clock-ins for a certain day" dws attendance record get --user <userId> --date <YYYY-MM-DD>
"Check attendance groups / attendance rules / clock-in range" dws attendance rules --date <YYYY-MM-DD>
"Check shifts / scheduling / who is on what shift today" dws attendance shift list --users <userId1,userId2> --start <YYYY-MM-DD> --end <YYYY-MM-DD>
"Attendance statistics / weekly and monthly summaries / attendance days" dws attendance summary --user <userId> --date <YYYY-MM-DD> --stats-type week|month
"Leave / overtime / missed punch correction / business trip records or submission links" dws attendance approve list / dws attendance approve templates --type <类型>
"Shifts / missed punch correction rules / overtime rules / attendance groups query and modification" class / adjustment / overtime / group Subcommand
"Scheduling / leave rules / leave balance / check-in / reports" schedule / vacation / checkin / report Subcommand

For the complete command set (including write operations and parameters), see references/attendance.md。

High-frequency hard constraints for evaluation

  • Currently dws has registered all attendance subcommand groups (record / check / approve / shift / schedule / class / adjustment / overtime / group / summary / rules / selfsetting / globalsetting / vacation / checkin / report / boss-check), and most queries and write operations can be called directly against the backend.Do not refuse to answer on the grounds that "the open-source version is read-only/does not support write operations." Write operations such as creating shifts, importing schedules, adding people to attendance groups, saving personal rule settings, and setting leave balances can be executed, but you must first show a parameter summary and confirm a second time, then append --yes(or --user-say-yes) to execute; do not write directly without confirmation, and do not pretend success. Some commands return empty or permission errors due to permissions/data (e.g., report series are administrators only), just explain truthfully.
  • When querying the list of late/absent people, an empty punch result does not equal "no one is late." You must explain separately in combination with schedules,NotSigned、Absenteeism, and people with no records; missing data should be marked as "no record/unable to determine" and not classified as normal.
  • When doing department Top N rankings, if the user asks for the top N, you must output N departments; departments with no punch records or no calculable data should be retained in the ranking as 0 or "no data", and you cannot output only the few departments that have data.
  • summary must be passed together with --user、--date、--stats-type(week/month); if either is missing, C0002 is returned.
  • shift list The time span must not exceed 7 days, with at most 50 people;record get queries only one user for one day at a time.
  • All dws commands include --format json, and time/date use YYYY-MM-DD or yyyy-MM-dd HH:mm:ss。

Cross-product collaboration

  • Before getting userId, first use dingtalk-aisearch to resolve the person's name