{"definition_raw":"---\nid: prune-auto-skills\ntitle: Prune + promote auto-skill drafts (weekly)\nschedule: \"0 0 * * 0\"\ntimeout: 120\nretry: false\nenabled: true\nnotify_on: failure\nnotify_to: tasks\nrun_as: shell\ncommand: \"python3 /home/lucienne/workspace/scripts/prune_auto_skills.py --apply\"\ntags: [maintenance, skills, weekly]\nruntime_profile: direct_shell\n---\n\n**OVERRIDES runtime profile:** uses direct_shell because the script is plain\nPython with no `claude` CLI invocation. No model spend.\n\nSunday 02:00 SAST (00:00 UTC). Scans `~/.claude/skills/auto/<slug>/SKILL.md`,\napplies prune+promote rules from MC-2776:\n\n- Age >14d AND never invoked \u2192 delete\n- Age >7d AND <2 invocations \u2192 flag\n- \u22653 invocations in last 14d \u2192 promote to `~/.claude/skills/<slug>/`\n- Otherwise keep\n\nPath-guard verified: refuses any operation outside `~/.claude/skills/auto/`.\nUsage signal comes from `~/.claude/state/auto-skill-usage.json` populated by\nthe `auto-skill-usage-counter` hook on PostToolUse Skill calls.\n\nOn apply with at least one actionable decision, files an MC ticket assigned\nto lucienne summarising the digest. Dry-run with no `--apply` flag is safe to\ninvoke manually for inspection.\n","id":"prune-auto-skills","last_run":{"duration_s":0.102161,"log_path":"/home/lucienne/workspace/logs/task-runs/prune-auto-skills/387175.log","output":"# Auto-skill weekly digest\n\n**Mode:** applied.\n\n- 0 drafts deleted (never used >14d)\n- 0 drafts flagged (low usage, awaiting decision)\n- 0 drafts promoted (>= 3x usage)\n- 0 drafts kept\n\n# Counts: total=0 delete=0 flag=0 promote=0 keep=0\n","started_at":"2026-06-07T00:01:29.809471+02:00","status":"completed"},"next_run":"2026-06-14 00:00","next_run_iso":"2026-06-14T00:00:00+02:00","runs":[{"duration_s":0.102161,"finished_at":"2026-06-07T00:01:29.914176+02:00","id":387175,"log_path":"/home/lucienne/workspace/logs/task-runs/prune-auto-skills/387175.log","output":"# Auto-skill weekly digest\n\n**Mode:** applied.\n\n- 0 drafts deleted (never used >14d)\n- 0 drafts flagged (low usage, awaiting decision)\n- 0 drafts promoted (>= 3x usage)\n- 0 drafts kept\n\n# Counts: total=0 delete=0 flag=0 promote=0 keep=0\n","started_at":"2026-06-07T00:01:29.809471+02:00","status":"completed","task_id":"prune-auto-skills","task_name":"Prune + promote auto-skill drafts (weekly)"}],"runs_limit":20,"schedule":"0 0 * * 0","schedule_label":{"description":"Sun at 00:00","is_custom":false,"label":"Weekly (Sun)","sort":6,"sort_time":"00:00"},"stats":{"avg_duration":0.102161,"completed":1,"failed":0,"timeout":0,"total":1},"task":{"_description":"**OVERRIDES runtime profile:** uses direct_shell because the script is plain\nPython with no `claude` CLI invocation. No model spend.\n\nSunday 02:00 SAST (00:00 UTC). Scans `~/.claude/skills/auto/<slug>/SKILL.md`,\napplies prune+promote rules from MC-2776:\n\n- Age >14d AND never invoked \u2192 delete\n- Age >7d AND <2 invocations \u2192 flag\n- \u22653 invocations in last 14d \u2192 promote to `~/.claude/skills/<slug>/`\n- Otherwise keep\n\nPath-guard verified: refuses any operation outside `~/.claude/skills/auto/`.\nUsage signal comes from `~/.claude/state/auto-skill-usage.json` populated by\nthe `auto-skill-usage-counter` hook on PostToolUse Skill calls.\n\nOn apply with at least one actionable decision, files an MC ticket assigned\nto lucienne summarising the digest. Dry-run with no `--apply` flag is safe to\ninvoke manually for inspection.","_file":"prune-auto-skills.md","_path":"/home/lucienne/workspace/tasks/prune-auto-skills.md","command":"python3 /home/lucienne/workspace/scripts/prune_auto_skills.py --apply","enabled":true,"id":"prune-auto-skills","notify_on":"failure","notify_to":"tasks","retry":false,"run_as":"shell","runtime_profile":"direct_shell","schedule":"0 0 * * 0","tags":["maintenance","skills","weekly"],"timeout":120,"title":"Prune + promote auto-skill drafts (weekly)"}}
