npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

daikin-cli

v1.0.2

Published

OpenClaw plugin for Daikin One+ thermostats

Downloads

257

Readme

daikin-cli OpenClaw plugin

OpenClaw plugin that wraps the daikin-cli Go binary to read state and control Daikin One+ thermostats.

Install

  1. Install Go: https://golang.org/doc/install
  2. Install the CLI:
    go install github.com/omarshahine/daikin-cli@latest
  3. Create ~/.daikin/daikin.yaml with your Daikin One+ app credentials:
    email: [email protected]
    password: your-password
    temperatureUnit: F
  4. Confirm the CLI works:
    daikin-cli device ls

Configuration

| Field | Required | Description | |---|---|---| | cliPath | no | Path or command name for the daikin-cli binary. Defaults to PATH lookup. | | deviceId | no | Default device UUID. Leave blank to auto-discover the first device on the account. |

Environment variable DAIKIN_CLI_PATH can override cliPath at runtime.

Tools

| Tool | Purpose | |---|---| | daikin_list_devices | List thermostats on the account. | | daikin_info | Full raw device state (2000+ fields). For diagnostics. | | daikin_away_status | Curated Home/Away read. | | daikin_away_on | Set geofencingAway: true (app shows "Away"). | | daikin_away_off | Universal resume (cancel override + clear Away). | | daikin_resume | Same payload as daikin_away_off; standalone command. | | daikin_hold | Temp hold (--duration 2h) or permanent hold (--permanent). | | daikin_schedule_get | Read weekly schedule (7 days × 6 parts). | | daikin_schedule_set_part | Edit one schedule block. | | daikin_humidity | Set humidifier and/or dehumidifier targets. | | daikin_set_mode | Change mode (off / heat / cool / auto / em-heat). | | daikin_set_temp | Set cool and/or heat setpoints (Celsius). |

Full tool reference: skills/daikin/SKILL.md.

Architecture

The plugin shells out to the daikin-cli binary via child_process.execFile. All tools return parsed JSON.

Device ID resolution order:

  1. Explicit deviceId param on the tool call
  2. Plugin config deviceId
  3. Auto-discovered via daikin-cli device ls (cached for the plugin's lifetime)

Auth is handled by the CLI itself via ~/.daikin/daikin.yaml. The plugin verifies the file exists before invoking any tool and returns a structured error otherwise.

State model

Two orthogonal state axes:

  • Away flag (geofencingAway) — toggled by daikin_away_on/off. Mobile app shows "Away".
  • Schedule override (schedOverride) — engaged by daikin_hold or daikin_set_temp. Mobile app shows "Schedule overridden".

daikin_resume clears both axes in one call.

License

MIT