跳至主要内容
小龙虾小龙虾AI
🤖

Async Task

Run and manage long tasks exceeding HTTP timeouts by starting, updating, and completing them asynchronously with immediate responses.

下载2.1k
星标0
版本0.1.0
开发工具
安全通过

技能说明

OpenClaw Async Task

Description

Execute long-running tasks without HTTP timeouts. Use when you need to:

  • Run commands that may take more than 5 seconds
  • Analyze large files or codebases
  • Perform multi-step operations
  • Call external APIs with unpredictable latency

IMPORTANT: When a task might timeout, you MUST use this skill to avoid empty response from server errors.

Triggers: "async task", "long running", "timeout", "background task", "push result"

Installation

# Clone and link globally
git clone https://github.com/Enderfga/openclaw-async-task.git
cd openclaw-async-task
npm link

# Or just copy async-task.js to your PATH
chmod +x async-task.js
cp async-task.js /usr/local/bin/async-task

Commands

async-task start "<description>"  # Start task, returns immediately
async-task done "<result>"        # Complete task, push result to user
async-task fail "<error>"         # Task failed, push error message
async-task push "<message>"       # Push message directly (no start needed)
async-task status                 # Show current task status

Usage Flow (MUST follow strictly)

  1. Start: async-task start "Scanning files..."
  2. Execute: Run your actual commands
  3. Push result: async-task done "Found 42 files"

Example

User asks: "Count all TypeScript files in this project"

# Step 1: Acknowledge immediately
async-task start "Counting TypeScript files..."

# Step 2: Do the actual work
count=$(find . -name "*.ts" | wc -l)

# Step 3: Push the result
async-task done "Found $count TypeScript files"

How It Works

  1. start saves task state and returns confirmation immediately
  2. You execute whatever commands needed
  3. done/fail uses OpenClaw/Clawdbot CLI to push result to the active session

Zero configuration required - automatically detects active session via openclaw sessions or clawdbot sessions.

Advanced: Custom Push Endpoint

For custom webchat or notification systems:

export ASYNC_TASK_PUSH_URL="https://your-server.com/api/push"
export ASYNC_TASK_AUTH_TOKEN="your-token"

The endpoint receives:

{
  "sessionId": "session-id",
  "content": "message",
  "role": "assistant"
}

Environment Variables

VariableRequiredDescription
OPENCLAW_SESSIONNoTarget session (auto-detected)
ASYNC_TASK_PUSH_URLNoCustom HTTP push endpoint
ASYNC_TASK_AUTH_TOKENNoAuth token for custom endpoint

Requirements

  • Node.js 16+
  • OpenClaw or Clawdbot CLI installed

Critical Rules

  • MUST pair start with done or fail
  • NEVER start without completing
  • NEVER say "will push later" then forget

Links

如何使用「Async Task」?

  1. 打开小龙虾AI(Web 或 iOS App)
  2. 点击上方「立即使用」按钮,或在对话框中输入任务描述
  3. 小龙虾AI 会自动匹配并调用「Async Task技能完成任务
  4. 结果即时呈现,支持继续对话优化

相关技能