Xiaomi Air Purifier
Monitor and control Xiaomi Air Purifier 4 Lite via Mi Cloud. Use when asked to check air quality, humidity, purifier status, turn on/off the air purifier, or... Skill: Xiaomi Air Purifier Owner: radyakaze Summary: Monitor and control Xiaomi Air Purifier 4 Lite via Mi Cloud. Use when asked to check air quality, humidity, purifier status, turn on/off the air purifier, or... Tags: latest:1.1.2 Version history: v1.1.2 | 2026-02-17T09:42:27.131Z | user Security: Exclude config.json from package v1.1.1 | 2026-02-17T09:38:13.170Z | user Fix property write access for xmihome 1.4.0+
Rank
62
Safety
84
Downloads
1.9k
Updated
Oct 9, 2026
Version
1.1.2
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1.9K downloads reported by the source. Last updated 10/9/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 9, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 9, 2026
- Adoption signal
- 1.9K downloadsadoption · observed Oct 9, 2026
- Latest release
- 1.1.2release · observed Feb 17, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s175pdj1bsadzyn8xwd16ecqn58850pk:xiaomi-air-purifier- Node.js workspace detected. Install dependencies securely: run `npm ci --ignore-scripts` to prevent post-install lifecycle triggers from running arbitrary code, then selectively audit the dependency tree.
- Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-radyakaze-xiaomi-air-purifier/snapshot"
Documentation
CLAWHUB
142,695 characters of source documentation, loaded on request.
Extracted files
4 files captured from the source.
SKILL.md
--- name: xiaomi-air-purifier description: Monitor and control Xiaomi Air Purifier 4 Lite via Mi Cloud. Use when asked to check air quality, humidity, purifier status, turn on/off the air purifier, or change fan mode/level. Supports multi-room setups. --- # Xiaomi Air Purifier Control Control and monitor Xiaomi Air Purifier 4 Lite (`zhimi.airp.rmb1`) via Xiaomi Cloud API. Supports multiple devices and room-based targeting. ## Setup 1. Install dependencies: ```bash cd xiaomi-air-purifier && pnpm install ``` 2. Login to Mi Cloud (OTP will be sent via SMS/Email): ```bash pnpm exec xmihome login -u <email/phone> -p <password> -c <country> ``` Supported countries: `sg`, `ru`, `us`, `cn` 3. List devices to verify discovery: ```bash node scripts/purifier.js devices ``` ## Usage Commands can be targeted by **Room Name**, **Device Name**, or **DID**. If no target is provided, it uses the selected default or the only available device. ```bash node scripts/purifier.js status [room] # Check status (e.g., status Bedroom) node scripts/purifier.js status-full [room] # Show full status (incl. filter) node scripts/purifier.js on [room] # Power on node scripts/purifier.js off [room] # Power off node scripts/purifier.js mode <0-2> [room] # 0=Auto, 1=Sleep, 2=Favorite node scripts/purifier.js level <0-14> [room]# Fan speed (Favorite mode) node scripts/purifier.js brightness <0-2> [room] node scripts/purifier.js buzzer <on|off> [room] node scripts/purifier.js lock <on|off> [room] ``` ## Quick Reference | Property | siid | piid | Type | Description | |----------|------|------|------|-------------| | Power | 2 | 1 | bool | On/Off | | Mode | 2 | 4 | int | 0=Auto, 1=Sleep, 2=Favorite | | Humidity | 3 | 1 | int | Relative humidity (%) | | PM2.5 | 3 | 4 | int | Air quality (μg/m³) | | Temperature | 3 | 7 | float | Temperature (°C) | | Filter Life | 4 | 1 | int | Filter remaining (%) | | Buzzer | 6 | 1 | bool | Notification sound on/off | | Child Lock | 8 | 1 | bool | Physical button lock | | Fan Level | 9 | 11 | int | 0-14 (Favorite mode) | | Brightness | 13 | 2 | int | 0=Off, 1=Dim, 2=On |
_meta.json
{
"ownerId": "kn74vgx2pwyf7sazbq47byzxgx80mejy",
"slug": "xiaomi-air-purifier",
"version": "1.1.2",
"publishedAt": 1771321347131
}package.json
{
"name": "xiaomi-air-purifier",
"version": "1.0.0",
"description": "Xiaomi Air Purifier control skill for OpenClaw",
"main": "scripts/purifier.js",
"scripts": {
"status": "node scripts/purifier.js status",
"on": "node scripts/purifier.js on",
"off": "node scripts/purifier.js off"
},
"dependencies": {
"xmihome": "^1.4.0"
}
}pnpm-lock.yaml
lockfileVersion: '9.0'
settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
importers:
.:
dependencies:
xmihome:
specifier: ^1.4.0
version: 1.4.0
packages:
'@inquirer/[email protected]':
resolution: {integrity: sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==}
engines: {node: '>=18'}
'@inquirer/[email protected]':
resolution: {integrity: sha512-VXukHf0RR1doGe6Sm4F0Em7SWYLTHSsbGfJdS9Ja2bX5/D5uwVOEjr07cncLROdBvmnvCATYEWlHqYmXv2IlQA==}
engines: {node: '>=18'}
peerDependencies:
'@types/node': '>=18'
peerDependenciesMeta:
'@types/node':
optional: true
'@inquirer/[email protected]':
resolution: {integrity: sha512-KR8edRkIsUayMXV+o3Gv+q4jlhENF9nMYUZs9PA2HzrXeHI8M5uDag70U7RJn9yyiMZSbtF5/UexBtAVtZGSbQ==}
engines: {node: '>=18'}
peerDependencies:
'@types/node': '>=18'
peerDependenciesMeta:
'@types/node':
optional: true
'@inquirer/[email protected]':
resolution: {integrity: sha512-43RTuEbfP8MbKzedNqBrlhhNKVwoK//vUFNW3Q3vZ88BLcrs4kYpGg+B2mm5p2K/HfygoCxuKwJJiv8PbGmE0A==}
engines: {node: '>=18'}
peerDependencies:
'@types/node': '>=18'
peerDependenciesMeta:
'@types/node':
optional: true
'@inquirer/[email protected]':
resolution: {integrity: sha512-aLSROkEwirotxZ1pBaP8tugXRFCxW94gwrQLxXfrZsKkfjOYC1aRvAZuhpJOb5cu4IBTJdsCigUlf2iCOu4ZDQ==}
engines: {node: '>=18'}
peerDependencies:
'@types/node': '>=18'
peerDependenciesMeta:
'@types/node':
optional: true
'@inquirer/[email protected]':
resolution: {integrity: sha512-nRzdOyFYnpeYTTR2qFwEVmIWypzdAx/sIkCMeTNTcflFOovfqUk+HcFhQQVBftAh9gmGrpFj6QcGEqrDMDOiew==}
engines: {node: '>=18'}
peerDependencies:
'@types/node': '>=18'
peerDependenciesMeta:
'@types/node':
optional: true
'@inquirer/[email protected]':
resolution: {integrity: sha512-RWbSrDiYmO4LbejWY7ttpxczuwQyZLBUyygsA9Nsv95hpzUWwnNTVQmAq3xuh7vNwCp07UTmE5i11XAEExx4RA==}
engines: {node: '>=18'}
peerDependencies:
'@types/node': '>=18'
peerDependenciesMeta:
'@types/node':
optional: true
'@inquirer/[email protected]':
resolution: {integrity: sha512-t2IEY+unGHOzAaVM5Xx6DEWKeXlDDcNPeDyUpsRc6CUhBfU3VQOEl+Vssh7VNp1dR8MdUJBWhuObjXCsVpjN5g==}
engines: {node: '>=18'}
'@inquirer/[email protected]':
resolution: {integrity: sha512-kN0pAM4yPrLjJ1XJBjDxyfDduXOuQHrBB8aLDMueuwUGn+vNpF7Gq7TvyVxx8u4SHlFFj4trmj+a2cbpG4Jn1g==}
engines: {node: '>=18'}
peerDependencies:
'@types/node': '>=18'
peerDependenciesMeta:
'@types/node':
optional: true
'@inquirer/[email protected]':
resolution: {integrity: sha512-5Smv0OK7K0KUzUfYUXDXQc9jrf8OHo4ktlEayFlelCjwMXz0299Y8OrI+lj7i4gCBY15UObk76q0QtxjzFcFcg==}
engines: {node: '>=18'}
peerDependencies:
'@types/node': '>=18'
peerDependenciesMeta:
'@types/node':
optional: true
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/radyakaze/skills/xiaomi-air-purifier",
"sourceUrl": "https://clawhub.ai/radyakaze/skills/xiaomi-air-purifier",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T23:16:13.664Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-radyakaze-xiaomi-air-purifier/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-radyakaze-xiaomi-air-purifier/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-09T23:16:13.664Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1.9K downloads",
"href": "https://clawhub.ai/radyakaze/xiaomi-air-purifier",
"sourceUrl": "https://clawhub.ai/radyakaze/xiaomi-air-purifier",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T23:16:13.664Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "1.1.2",
"href": "https://clawhub.ai/radyakaze/xiaomi-air-purifier",
"sourceUrl": "https://clawhub.ai/radyakaze/xiaomi-air-purifier",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-02-17T09:42:27.131Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-radyakaze-xiaomi-air-purifier/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-radyakaze-xiaomi-air-purifier/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 1.1.2",
"description": "Security: Exclude config.json from package",
"href": "https://clawhub.ai/radyakaze/xiaomi-air-purifier",
"sourceUrl": "https://clawhub.ai/radyakaze/xiaomi-air-purifier",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-02-17T09:42:27.131Z",
"isPublic": true
}
]
}Record generated Oct 10, 2026.
