From studio-skills
Reviews scheduled tasks for structural validity (YAML frontmatter, cron, files, permissions) and quality (user intent) via parallel sub-agent checks.
npx claudepluginhub treasure-data/td-skills --plugin treasure-work-skillsThis skill uses the workspace's default tool permissions.
Review a scheduled task by running two parallel sub-agent checks using TaskCreate:
Reviews task plans for executability, verifiability, dependency ordering, spec/design coverage, and router readiness. Issues pass/fail verdict with human confirmation gate on approval.
Creates and configures scheduled tasks in Treasure Studio using TASK.md, schedule.yaml, scripts, with validation, review, testing, and cron enabling workflow.
Runs 3-agent verification loop on complete task lists to ensure PRD coverage, architecture adherence, and design system compliance before implementation.
Share bugs, ideas, or general feedback.
Review a scheduled task by running two parallel sub-agent checks using TaskCreate:
{workspace}/schedules/{task-name}/~/.tdx/schedule-tasks/{task-name}/schedule_get to find the task if the path is unclearRead {task-dir}/TASK.md
Read {task-dir}/schedule.yaml
List files in scripts/, reference/, data/
Use TaskCreate to spawn two sub-agents simultaneously.
TaskCreate with prompt:
"Review this scheduled task for structural correctness.
TASK.md content:
{paste TASK.md content}
schedule.yaml content:
{paste schedule.yaml content}
Files in task directory:
{list of files}
Check the following:
1. TASK.md has valid YAML frontmatter with `name` and `description`
2. schedule.yaml has required fields (name, schedule, enabled) and only valid optional fields (status, catch_up, skills, permissions, notify, context, goal, skill, output). Note: `skills` (list of capability packs/MCP tools) and `skill` (workspace skill to invoke) serve different purposes and can coexist.
2a. If status field is present, it must be either 'configured' or 'template'. Warn if missing (defaults to 'configured').
3. Task name in TASK.md matches schedule.yaml name
4. Cron expression is valid and not too frequent (minimum 5 minutes)
5. permissions.allow lists all tools referenced in TASK.md steps (Bash for scripts, Write for output, slack_* for notifications)
6. Scripts referenced in TASK.md steps exist in scripts/
7. Reference files mentioned in TASK.md exist in reference/
8. data/ files described in TASK.md exist if the task expects prior state
9. No Slack channels or notification targets hardcoded in TASK.md (should be in schedule.yaml notify section only)
10. output.md is mentioned as a required output in Steps
11. If `goal` is set, verify the goal file exists in the workspace (workspace tasks only)
12. If `output.note: true` is set, verify this is a workspace task (inside schedules/ directory)
Report: PASS/FAIL for each item, with specific fix instructions for failures."
TaskCreate with prompt:
"Review this scheduled task for quality and fitness for purpose.
TASK.md content:
{paste TASK.md content}
schedule.yaml content:
{paste schedule.yaml content}
The user's original request was: {describe what the user asked for}
Check the following:
1. Steps are clear and unambiguous — could another agent execute them without guessing?
2. Steps are in a logical order (fetch → process → analyze → output → notify)
3. Error handling is addressed (what to do if a script fails, API is down, etc.)
4. output.md requirements are clear (what should be in the summary?)
5. The schedule frequency matches the task's purpose (e.g., not checking hourly for a daily report)
6. Skills listed are appropriate for the task
7. If data/ is used, the update cycle is clear (when to save, when to compare)
8. The task is self-contained — no implicit dependencies on external state
9. For workspace tasks: does the goal/skill configuration make sense for the intended purpose?
Report: Rate each item as GOOD/NEEDS IMPROVEMENT/MISSING, with specific suggestions."
Wait for both tasks to complete using TaskGet, then present a unified report:
## Task Review: {task-name}
### Structure: {PASS/FAIL}
- [x] Valid TASK.md frontmatter
- [x] Valid schedule.yaml schema
- [ ] Missing permission: Bash (needed for scripts/fetch.sh)
...
### Quality: {GOOD/NEEDS IMPROVEMENT/MISSING}
- [x] Steps are clear
- [ ] No error handling for script failure
- [ ] output.md format not specified
...
### Recommended Fixes
1. Add `Bash` to permissions.allow
2. Add error handling step: "If fetch script fails, retry once..."
3. Specify output.md format in a `## Output Format` section