Charger

Verified

by borahm

Higher-level EV charger checker built on Google Places (New) EV charge data. This skill includes a `bin/charger` CLI (Node.js) for checking charger availability. - Requirements: - Node.js 18+ (Clawdbot already has Node) - `GOOGLE_PLACES_API_KEY` (recommended in `~/.clawdbot/.env`) - Put the CLI on your PATH (example): - `ln -sf "$(pwd)"/bin/charger /home/claw/clawd/bin/charger` - Add a favorite: - `charger favorites add home --place-id <placeId>` - Check a favorite / place id / query: - `charger

View on GitHub

charger

Higher-level EV charger checker built on Google Places (New) EV charge data.

This skill includes a bin/charger CLI (Node.js) for checking charger availability.

Setup

  • Requirements:

- Node.js 18+ (Clawdbot already has Node)

- GOOGLE_PLACES_API_KEY (recommended in ~/.clawdbot/.env)

  • Put the CLI on your PATH (example):

- ln -sf "$(pwd)"/bin/charger /home/claw/clawd/bin/charger

  • Add a favorite:

- charger favorites add home --place-id <placeId>

Commands

  • Check a favorite / place id / query:

- charger check home

- charger check "Wien Energie Charging Station Liniengasse 2 1060 Wien"

  • Find nearby:

- charger nearby --lat 48.188472 --lng 16.348854 --radius 2000 --max 10

Notifications

The recommended pattern is:

1) charger (this skill) produces a clear Any free: YES|NO result.

2) A scheduled job (Gateway cron) runs a small helper that only prints output when it should notify.

Helper script (what actually decides to notify)

This bundle includes scripts/charger-notify.sh.

What it does:

  • Runs charger check <target>
  • If Any free: YES and the last run was not YES, it prints a single notification line.
  • Otherwise it prints nothing.

So: no output = no notification.

State:

  • Stores last state in ~/.cache/charger-notify/<target>.state so it only notifies on the change NO/UNKNOWN → YES.

Usage:

  • bash scripts/charger-notify.sh home

Example notification output:

  • EV charger available: Tanke Wien Energie Charging Station — Amtshausgasse 9, 1050 Wien, Austria — 1/2 available (OOS 0) (updated 2026-01-21T21:05:00Z)

Typical cron schedule (how you actually get Telegram pings)

Cron is the scheduler. It runs the helper script on a timer and sends you whatever the script prints.

Because the helper prints only when it becomes available, you only get messages when it matters.

Check every 10 minutes:

  • */10 * * * *

If you want me to wire this into Clawdbot Gateway cron (so you get Telegram pings), tell me:

  • target (home)
  • interval (every 5/10/20 min)
  • quiet hours (optional)