stefano 33c898ff9a fix: use companion watcher process for async job completion
The async startJob previously relied on Node.js event listeners in the
CLI process to capture child output and finalize the job file. But the
CLI process exits immediately after returning the job ID, killing the
event loop before the close handler fires — leaving jobs stuck at
'running' forever.

Fix: startJob now spawns a companion watcher process (job-watcher.ts)
that is itself detached and outlives the CLI. The watcher:
- Spawns the actual client (codex/claude/opencode)
- Captures stdout/stderr
- Writes the final job record to disk on child exit
- Has its own 10-minute timeout safety net

The CLI returns the job ID immediately. The watcher independently
finalizes the job. The CLI no longer needs to stay alive.

Also updates tests to mock the watcher spawn via injectable
spawnWatcher option.
2026-05-20 14:08:44 -05:00
2026-05-18 18:51:32 -05:00

stef-openclaw-skills

A curated collection of practical OpenClaw skills by Stefano.

This repository contains practical OpenClaw skills and companion integrations. Install the repo (or a single path), then use each skill through OpenClaw and each integration as a local helper CLI.

Where to get information

  • Skill docs index: docs/README.md
  • Skill implementation files: skills/<skill-name>/
  • Per-skill runtime instructions: skills/<skill-name>/SKILL.md
  • Integration implementation files: integrations/<integration-name>/
  • Integration docs: docs/*.md
  • Tool implementation files: tools/<tool-name>/
  • Tool docs: docs/*.md

Skills

Skill What it does Path
amazon-shopping Search Amazon.com product results with bounded web-automation, price/unit-price/width/Prime/delivery filters, specs, ratings, review metadata, and chat-safe result blocks with direct links. skills/amazon-shopping
flight-finder Collect structured flight-search inputs, run bounded multi-source travel searches, rank results in USD, and gate fixed-template PDF/email delivery through Lukes sender path. skills/flight-finder
gitea-api Interact with Gitea via REST API (repos, issues, PRs, releases, branches, user info). skills/gitea-api
nordvpn-client Install, log in to, connect, disconnect, and verify NordVPN sessions across Linux CLI and macOS NordLynx/WireGuard backends. skills/nordvpn-client
portainer Manage Portainer stacks via API (list, start/stop/restart, update, prune images). skills/portainer
property-assessor Assess a residential property from an address or listing URL with CAD/public-record enrichment, Zillow-first/HAR-fallback photo review, carry-cost/risk analysis, and fixed-template PDF output. skills/property-assessor
searxng Search through a local or self-hosted SearXNG instance for web, news, images, and more. skills/searxng
spotify Search Spotify tracks, manage playlists, and import songs from text files, M3U playlists, or music folders through the Spotify Web API. skills/spotify
us-cpa Federal individual 1040 workflow for tax questions, case intake, preparation, review, and draft e-file-ready export. skills/us-cpa
web-automation One-shot extraction plus broader browsing/scraping with CloakBrowser, including unit-aware Zillow/HAR discovery and dedicated listing-photo extractors. skills/web-automation

Integrations

Integration What it does Path
google-maps Traffic-aware ETA and leave-by calculations using Google Maps APIs. integrations/google-maps
google-workspace Gmail and Google Calendar helper CLI for profile, mail, attachment-capable send, calendar search, and event creation. integrations/google-workspace

Tools

Tool What it does Path
ai-cli-dispatch Dispatch AI CLI coding tasks to available clients (Codex, Claude Code, OpenCode) with automatic discovery, version checking, and execution. tools/ai-cli-dispatch

Operator docs

Doc What it covers
docs/openclaw-acp-orchestration.md ACP orchestration setup for Codex and Claude Code on the gateway host

Install ideas

  • Install the whole repo as a skill source.
  • Install a single skill by path (example: skills/gitea-api).

(Exact install command can vary by OpenClaw/ClawHub version.)

S
Description
Stef OpenClaw skill collection
Readme 16 MiB
Languages
TypeScript 58.1%
JavaScript 21.7%
Python 16%
Shell 4.2%