{"id":54596,"plugin_id":"plugin_asdk_app_6ad3395c4f288191b1a6fb148bd8aec3","kind":"skill","collection_source":"plugin_package","comparison_source":null,"observed_at":"2026-10-25T00:05:25.972Z","digest":"4e8f792807ba9a1a704d213d332981b5a9e70e3b09a304db3ca3939f378149f4","against":null,"payload":{"description":"Use when someone asks for a chart, graph, spreadsheet, report, summary page, infographic or export of their Gyroscope history, or wants their data in a file or a custom format.","included_files":[],"name":"reports","skill_md_contents":"---\nname: reports\ndescription: Use when someone asks for a chart, graph, spreadsheet, report, summary page, infographic or export of their Gyroscope history, or wants their data in a file or a custom format.\n---\n\n# Charts, spreadsheets, reports and infographics from Gyroscope history\n\nThe Gyroscope tools provide the data. ChatGPT makes the chart, the file or\nthe page from it. If no Gyroscope tools are available, follow the\nconnect-gyroscope skill instead.\n\n## 1. Agree the shape\n\n- Settle three things before loading anything: the date range, the kinds\n  of data (sleep, meals, workouts, steps, weight, heart rate, computer time,\n  places), and the output (a chart, a spreadsheet, a one-page report, an\n  infographic, a CSV). Default to the last 30 days and one page when they\n  have not said.\n- Call `gyroscope_status` once for the member's timezone, then use explicit\n  YYYY-MM-DD dates.\n\n## 2. Load the data\n\n- Weekly or monthly numbers for a chart or a summary: `load_trend` with one\n  metric (steps, sleep, calories, protein, weight, workouts, rhr, hrv) over\n  up to a year. One call per metric.\n- Rows for a spreadsheet or a detailed chart: `load_history` with one kind\n  or a bundle (fitness, nutrition, sleep_all, places) for one month, or a\n  start and end date. Walk a longer span month by month, and keep calling\n  with `page = next_page` while `has_more` is true. The rows come as CSV\n  text under a `columns` header.\n- A short period in full: `load_day` (7 days per call) or the single-topic\n  reads for the same dates.\n- Places need the Places permission. On `insufficient_scope`, give them the\n  link and leave places out until they allow it.\n- Load what the output needs and no more. A one-page review of a month does\n  not need a year of heart rate samples.\n\n## 3. Build the output in ChatGPT\n\n- Chart or infographic: use ChatGPT's own data analysis and image tools on\n  the loaded rows. One chart per question, labelled axes, the unit in the\n  label, the date range in the title.\n- Spreadsheet or CSV: write the rows as loaded, one sheet or file per kind,\n  with the `columns` header as the first row and the member's local times\n  as given.\n- Report or summary page: lead with the two or three numbers that changed\n  most, then one short section per kind, each resting on the loaded data.\n  Say how many days each figure covers.\n- Durations of an hour or more in decimal hours, shorter ones in minutes.\n  Weight in the units the member uses.\n- Every number in the output comes from a tool answer. Never fill a gap with\n  an estimate. Say which days have no data instead.\n\n## 4. Hand it over\n\n- Give the file or image, name the date range and the kinds it covers, and\n  offer one follow-up, such as the same report for the month before.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}