{
  "schemaVersion": "1.0",
  "item": {
    "slug": "task-runner",
    "name": "Task Runner",
    "source": "tencent",
    "type": "skill",
    "category": "其他",
    "sourceUrl": "https://clawhub.ai/johstracke/task-runner",
    "canonicalUrl": "https://clawhub.ai/johstracke/task-runner",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/task-runner",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=task-runner",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "scripts/task_runner.py"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "slug": "task-runner",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-29T12:03:18.298Z",
      "expiresAt": "2026-05-06T12:03:18.298Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=task-runner",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=task-runner",
        "contentDisposition": "attachment; filename=\"task-runner-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "task-runner"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/task-runner"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/task-runner",
    "agentPageUrl": "https://openagent3.xyz/skills/task-runner/agent",
    "manifestUrl": "https://openagent3.xyz/skills/task-runner/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/task-runner/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Task Runner",
        "body": "Manage tasks and projects across sessions with persistent tracking."
      },
      {
        "title": "Add a task",
        "body": "task_runner.py add \"<description>\" [project] [priority]"
      },
      {
        "title": "List all tasks",
        "body": "task_runner.py list"
      },
      {
        "title": "List tasks for a specific project",
        "body": "task_runner.py list \"<project>\""
      },
      {
        "title": "Complete a task",
        "body": "task_runner.py complete <task_id>"
      },
      {
        "title": "Change task priority",
        "body": "task_runner.py priority <task_id> <low|medium|high>"
      },
      {
        "title": "Export project to markdown",
        "body": "task_runner.py export \"<project>\" \"<output_file>\""
      },
      {
        "title": "Features",
        "body": "Persistent storage - Tasks survive session restarts (stored in ~/.openclaw/workspace/tasks_db.json)\nProject organization - Group tasks by project for better organization\nPriority levels - low, medium (default), high\nStatus tracking - pending vs completed with timestamps\nFlexible filtering - View all tasks or filter by project\nMarkdown export - Export projects to clean markdown for sharing"
      },
      {
        "title": "Path Validation (v1.0.1+)",
        "body": "The export function validates output paths to prevent malicious writes:\n\n✅ Allowed: ~/.openclaw/workspace/, /tmp/, and home directory\n❌ Blocked: System paths (/etc/, /usr/, /var/, etc.)\n❌ Blocked: Sensitive dotfiles (~/.bashrc, ~/.ssh, etc.)\n\nThis prevents prompt injection attacks that could attempt to write to system files for privilege escalation."
      },
      {
        "title": "Task Storage",
        "body": "The task storage is JSON-based and only writes to ~/.openclaw/workspace/tasks_db.json."
      },
      {
        "title": "For multi-session projects",
        "body": "# Add experiment tasks\ntask_runner.py add \"Setup development environment\" \"project-x\" \"high\"\ntask_runner.py add \"Write initial tests\" \"project-x\" \"medium\"\ntask_runner.py add \"Document API endpoints\" \"project-x\" \"low\"\n\n# List project progress\ntask_runner.py list \"project-x\"\n\n# Complete tasks as you go\ntask_runner.py complete 1\ntask_runner.py complete 2"
      },
      {
        "title": "For autonomous agent workflows",
        "body": "Track your own tasks across sessions:\n\n# Plan experiments\ntask_runner.py add \"Build and publish skill\" \"income-experiments\" \"high\"\ntask_runner.py add \"Test content pipeline\" \"income-experiments\" \"medium\"\n\n# Update priorities based on learning\ntask_runner.py priority 2 \"high\"\n\n# Export progress reports\ntask_runner.py export \"income-experiments\" \"./progress-report.md\""
      },
      {
        "title": "For sprint planning",
        "body": "# Plan week's work\ntask_runner.py.py add \"Build feature X\" \"sprint-5\" \"high\"\ntask_runner.py.py add \"Fix bug Y\" \"sprint-5\" \"high\"\ntask_runner.py.py add \"Update documentation\" \"sprint-5\" \"medium\"\n\n# Review progress\ntask_runner.py list \"sprint-5\"\n\n# Export for standup\ntask_runner.py export \"sprint-5\" \"./standup.md\""
      },
      {
        "title": "Task Priorities",
        "body": "PriorityEmojiWhen to Usehigh🔴Blocking issues, urgent, must do nowmedium🟡Normal work, do soonlow🟢Nice to have, backlog items"
      },
      {
        "title": "Output Format",
        "body": "Task listing shows:\n\nStatus icon (✅ completed, ⏳ pending)\nProject name\nTask ID number\nPriority emoji\nCreation date\nTask description\nCompletion date (if completed)"
      },
      {
        "title": "Export Format",
        "body": "Markdown export includes:\n\nProject title with task counts\nPending tasks section\nCompleted tasks section (most recent first)\nTask IDs, priorities, and timestamps"
      },
      {
        "title": "Managing a coding project",
        "body": "# Setup\ntask_runner.py add \"Clone repository\" \"my-project\" \"high\"\ntask_runner.py add \"Install dependencies\" \"my-project\" \"high\"\ntask_runner.py add \"Set up database\" \"my-project\" \"medium\"\n\n# Track progress\ntask_runner.py list \"my-project\"\ntask_runner.py complete 1\ntask_runner.py complete 2\n\n# Export for documentation\ntask_runner.py export \"my-project\" \"./my-project-tasks.md\""
      },
      {
        "title": "Tracking autonomous agent experiments",
        "body": "# Plan experiments\ntask_runner.py add \"Experiment 1: Publish skills\" \"autonomous-income\" \"high\"\ntask_runner.py add \"Experiment 2: Content automation\" \"autonomous-income\" \"medium\"\ntask_runner.py add \"Experiment 3: Service MVP\" \"autonomous-income\" \"low\"\n\n# Work through them\ntask_runner.py list \"autonomous-income\"\ntask_runner.py complete 1\n\n# Adjust based on learning\ntask_runner.py add \"Experiment 2a: Research tools without API keys\" \"autonomous-income\" \"high\"\ntask_runner.py priority 2 \"low\""
      },
      {
        "title": "Daily task management",
        "body": "# Plan the day\ntask_runner.py add \"Review pull requests\" \"daily\" \"high\"\ntask_runner.py add \"Write documentation\" \"daily\" \"medium\"\ntask_runner.py add \"Respond to emails\" \"daily\" \"low\"\n\n# End-of-day review\ntask_runner.py list\n\n# Archive completed work\ntask_runner.py export \"daily\" \"./$(date +%Y-%m-%d)-tasks.md\""
      },
      {
        "title": "Best Practices",
        "body": "Use meaningful project names - income-experiments not ideas\nSet priorities consistently - helps with focus\nMark tasks complete promptly - keeps list clean\nExport before major changes - backup progress\nReview and clean up - archive old projects regularly"
      },
      {
        "title": "Integration with Other Skills",
        "body": "Combine with research-assistant for complete project management:\n\nUse research-assistant for notes and knowledge\nUse task-runner for actionable tasks\nExport both to create comprehensive project docs"
      }
    ],
    "body": "Task Runner\n\nManage tasks and projects across sessions with persistent tracking.\n\nQuick Start\nAdd a task\ntask_runner.py add \"<description>\" [project] [priority]\n\nList all tasks\ntask_runner.py list\n\nList tasks for a specific project\ntask_runner.py list \"<project>\"\n\nComplete a task\ntask_runner.py complete <task_id>\n\nChange task priority\ntask_runner.py priority <task_id> <low|medium|high>\n\nExport project to markdown\ntask_runner.py export \"<project>\" \"<output_file>\"\n\nFeatures\nPersistent storage - Tasks survive session restarts (stored in ~/.openclaw/workspace/tasks_db.json)\nProject organization - Group tasks by project for better organization\nPriority levels - low, medium (default), high\nStatus tracking - pending vs completed with timestamps\nFlexible filtering - View all tasks or filter by project\nMarkdown export - Export projects to clean markdown for sharing\nSecurity\nPath Validation (v1.0.1+)\n\nThe export function validates output paths to prevent malicious writes:\n\n✅ Allowed: ~/.openclaw/workspace/, /tmp/, and home directory\n❌ Blocked: System paths (/etc/, /usr/, /var/, etc.)\n❌ Blocked: Sensitive dotfiles (~/.bashrc, ~/.ssh, etc.)\n\nThis prevents prompt injection attacks that could attempt to write to system files for privilege escalation.\n\nTask Storage\n\nThe task storage is JSON-based and only writes to ~/.openclaw/workspace/tasks_db.json.\n\nUsage Patterns\nFor multi-session projects\n# Add experiment tasks\ntask_runner.py add \"Setup development environment\" \"project-x\" \"high\"\ntask_runner.py add \"Write initial tests\" \"project-x\" \"medium\"\ntask_runner.py add \"Document API endpoints\" \"project-x\" \"low\"\n\n# List project progress\ntask_runner.py list \"project-x\"\n\n# Complete tasks as you go\ntask_runner.py complete 1\ntask_runner.py complete 2\n\nFor autonomous agent workflows\n\nTrack your own tasks across sessions:\n\n# Plan experiments\ntask_runner.py add \"Build and publish skill\" \"income-experiments\" \"high\"\ntask_runner.py add \"Test content pipeline\" \"income-experiments\" \"medium\"\n\n# Update priorities based on learning\ntask_runner.py priority 2 \"high\"\n\n# Export progress reports\ntask_runner.py export \"income-experiments\" \"./progress-report.md\"\n\nFor sprint planning\n# Plan week's work\ntask_runner.py.py add \"Build feature X\" \"sprint-5\" \"high\"\ntask_runner.py.py add \"Fix bug Y\" \"sprint-5\" \"high\"\ntask_runner.py.py add \"Update documentation\" \"sprint-5\" \"medium\"\n\n# Review progress\ntask_runner.py list \"sprint-5\"\n\n# Export for standup\ntask_runner.py export \"sprint-5\" \"./standup.md\"\n\nTask Priorities\nPriority\tEmoji\tWhen to Use\nhigh\t🔴\tBlocking issues, urgent, must do now\nmedium\t🟡\tNormal work, do soon\nlow\t🟢\tNice to have, backlog items\nOutput Format\n\nTask listing shows:\n\nStatus icon (✅ completed, ⏳ pending)\nProject name\nTask ID number\nPriority emoji\nCreation date\nTask description\nCompletion date (if completed)\nExport Format\n\nMarkdown export includes:\n\nProject title with task counts\nPending tasks section\nCompleted tasks section (most recent first)\nTask IDs, priorities, and timestamps\nExamples\nManaging a coding project\n# Setup\ntask_runner.py add \"Clone repository\" \"my-project\" \"high\"\ntask_runner.py add \"Install dependencies\" \"my-project\" \"high\"\ntask_runner.py add \"Set up database\" \"my-project\" \"medium\"\n\n# Track progress\ntask_runner.py list \"my-project\"\ntask_runner.py complete 1\ntask_runner.py complete 2\n\n# Export for documentation\ntask_runner.py export \"my-project\" \"./my-project-tasks.md\"\n\nTracking autonomous agent experiments\n# Plan experiments\ntask_runner.py add \"Experiment 1: Publish skills\" \"autonomous-income\" \"high\"\ntask_runner.py add \"Experiment 2: Content automation\" \"autonomous-income\" \"medium\"\ntask_runner.py add \"Experiment 3: Service MVP\" \"autonomous-income\" \"low\"\n\n# Work through them\ntask_runner.py list \"autonomous-income\"\ntask_runner.py complete 1\n\n# Adjust based on learning\ntask_runner.py add \"Experiment 2a: Research tools without API keys\" \"autonomous-income\" \"high\"\ntask_runner.py priority 2 \"low\"\n\nDaily task management\n# Plan the day\ntask_runner.py add \"Review pull requests\" \"daily\" \"high\"\ntask_runner.py add \"Write documentation\" \"daily\" \"medium\"\ntask_runner.py add \"Respond to emails\" \"daily\" \"low\"\n\n# End-of-day review\ntask_runner.py list\n\n# Archive completed work\ntask_runner.py export \"daily\" \"./$(date +%Y-%m-%d)-tasks.md\"\n\nBest Practices\nUse meaningful project names - income-experiments not ideas\nSet priorities consistently - helps with focus\nMark tasks complete promptly - keeps list clean\nExport before major changes - backup progress\nReview and clean up - archive old projects regularly\nIntegration with Other Skills\n\nCombine with research-assistant for complete project management:\n\nUse research-assistant for notes and knowledge\nUse task-runner for actionable tasks\nExport both to create comprehensive project docs"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/johstracke/task-runner",
    "publisherUrl": "https://clawhub.ai/johstracke/task-runner",
    "owner": "johstracke",
    "version": "1.0.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/task-runner",
    "downloadUrl": "https://openagent3.xyz/downloads/task-runner",
    "agentUrl": "https://openagent3.xyz/skills/task-runner/agent",
    "manifestUrl": "https://openagent3.xyz/skills/task-runner/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/task-runner/agent.md"
  }
}