open-index/open-npm huggingface dataset:
npm package: @henryqrm/rxjs-array
Description: Operators for RxJS for filtering with boolean logic
Author: Tane Piper
Latest version: 1.1.0

# RxJS Primitives - Array Operators

This library is for [RxJS Primitives](https://github.com/tanepiper/rxjs-primitives) and provides some convenience
operators for [RxJS](https://rxjs-dev.firebaseapp.com/) around querying array values.

- [Github](https://github.com/tanepiper/rxjs-primitives)
- Full [API Documentation](https://tanepiper.github.io/rxjs-primitives/) is available with examples.

## How to install

> `npm install @henryqrm/rxjs-array`
npm package: @henryqrm/rxjs-boolean
Description: Operators for RxJS for filtering with boolean logic
Author: Tane Piper
Latest version: 1.1.0

# RxJS Primitives - Boolean Operators

This library is for [RxJS Primitives](https://github.com/tanepiper/rxjs-primitives) and provides some convenience
operators for [RxJS](https://rxjs-dev.firebaseapp.com/) around filtering values from Observables using boolean logic.

- [Github](https://github.com/tanepiper/rxjs-primitives)
- Full [API Documentation](https://tanepiper.github.io/rxjs-primitives/) is available with examples.


## How to install

> `npm install @henryqrm/rxjs-boolean`
npm package: @henryqrm/semantic-release-commit-filter
Description: semantic-release plugin that filters git commits based on the current working directory
Author: henryqrm henryqrm@gmail.com
Latest version: 1.0.2

# :rocket: :female_detective: Semantic-Release Commit Filter

This package is a [shareable configuration](https://github.com/semantic-release/semantic-release/blob/master/docs/usage/shareable-configurations.md) for [semantic-release](https://github.com/semantic-release/semantic-release) that:

- configures `tagFormat` to use the package name from the current directory `${package.name}-v${version}`
- uses `commits` only applicable to the current directory

## :question: Why

Suppose you have a monorepo with two packages:

```
$ tree -P "package.json|release.config.js" -I node_modules mono-semver
mono-semver
├── package.json
├── packages
│   ├── pkg1
│   │   ├── package.json
│   │   └── release.config.js
│   └── pkg2
│       ├── package.json
│       └── release.config.js
└── release.config.js

3 directories, 6 files
```

Now we can run `semantic-release` in any of the package directories and/or in the top-level directory.

`CHANGELOG.md` files and `package.json` versions will be maintained in every directory.

## :package: Installation

Make sure that if you have `semantic-version` installed globally, also install `semantic-version-commit-filter` globally. Same with local install.

```console
$ npm install --dev semantic-version-commit-filter

$ yarn install --dev semantic-version-commit-filter
```

> **!!** make sure you make `semantic-release` available in every `package.json` file. Additionally, every package directory needs its own semantic release configuration file.

## :gear: Configuration

You can either specify this packages in your [release config file](https://github.com/semantic-release/semantic-release/blob/master/docs/usage/configuration.md#extends):

```json
{
  "extends": ["semantic-release-commit-filter"]
}
```

or specify it as a paramater to the `semantic-release` cli

```shell
$ npx semantic-release -e semantic-release-commit-filter
```
npm package: @henryv0/grafitti
Description: Stencil Component Starter
Latest version: 0.0.1

# Grafitti - Built with Stencil

This project is build with StencilJS and aims to generate a component library of Web Components. You can find my writeup of this proof of concept in [this file](explanation.md).

## Installation

```bash
$ npm install
$ npm run build
$ npm run storybook
```

Running the above commands will give access to Grafitti's Storybook documentation.

Tests can be run with
```bash
npm run test
```

![Built With Stencil](https://img.shields.io/badge/-Built%20With%20Stencil-16161d.svg?logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MTIgNTEyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI%2BCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI%2BCgkuc3Qwe2ZpbGw6I0ZGRkZGRjt9Cjwvc3R5bGU%2BCjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00MjQuNywzNzMuOWMwLDM3LjYtNTUuMSw2OC42LTkyLjcsNjguNkgxODAuNGMtMzcuOSwwLTkyLjctMzAuNy05Mi43LTY4LjZ2LTMuNmgzMzYuOVYzNzMuOXoiLz4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTQyNC43LDI5Mi4xSDE4MC40Yy0zNy42LDAtOTIuNy0zMS05Mi43LTY4LjZ2LTMuNkgzMzJjMzcuNiwwLDkyLjcsMzEsOTIuNyw2OC42VjI5Mi4xeiIvPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNDI0LjcsMTQxLjdIODcuN3YtMy42YzAtMzcuNiw1NC44LTY4LjYsOTIuNy02OC42SDMzMmMzNy45LDAsOTIuNywzMC43LDkyLjcsNjguNlYxNDEuN3oiLz4KPC9zdmc%2BCg%3D%3D&colorA=16161d&style=flat-square)
npm package: @henrywang/homebridge-yalesyncalarm
Description: Homebridge plugin for the Yale Sync Alarm
Author: HenryQW
Latest version: 1.2.9

# homebridge-yalesyncalarm - Homebridge support for Yale Sync Alarms

![npm](https://img.shields.io/npm/v/homebridge-yalesyncalarm)
[![Known Vulnerabilities](https://snyk.io//test/github/jonathandann/homebridge-yalesyncalarm/badge.svg?targetFile=package.json)](https://snyk.io//test/github/jonathandann/homebridge-yalesyncalarm/badge.svg?targetFile=package.json)
[![npm](https://img.shields.io/npm/l/blink.svg 'license')](https://github.com/jonathandann/homebridge-yalesyncalarm/blob/master/LICENSE)

Homebridge plugin for the [Yale Sync Smart Home Alarm](https://www.yale.co.uk/en/yale/couk/products/smart-living/smart-home-alarms/sync-smart-alarm/) and [Yale Smart Home Alarm](https://www.yale.co.uk/en/yale/couk/products/smart-living/smart-home-alarms/smart-home-alarm-starter-kit/).

# Features

- Exposes the alarm system as a Home.app security system. You can set it to "Home", "Away", "Night" and "Off" modes. Yale alarms only have 3 modes. So both "Home" and "Night" will "part-arm" the system.
- Contact and motion sensors are exposed in Home.app

# Please Note

There's currently no way to hook into Yale's push service. It's not possible to get truly realtime updates.

The `refreshInterval` parameter in config.json is experimental. It causes the plugin to call the Yale API every `refreshInterval` seconds to get the current state of the alarm and sensors.

If you set `refreshInterval` to a value less than `1`. The automatic update is disabled. In this case switching away from, and back to Home.app will refresh the state of the system in Home.app.

# Installation

`npm install -g homebridge-blink`

## Configuration

```json
"platforms": [
    {
        "platform": "YaleSyncAlarm",
        "name": "Burglar Alarm",
        "username": "username@mail.com",
        "password": "password",
        "refreshInterval": 10
    }
]
```

# Building from Source

```bash
git clone https://github.com/jonathandann/homebridge-yalesyncalarm.git && cd homebridge-yalesyncalarm && npm install
```

After running `npm install`, `npm` should automatically run `npm run build`, which runs `node_modules/typescript/bin/tsc` to compile the typescript files. If it doesn't then you can run either `node_modules/typescript/bin/tsc` or `npm run build`.

There are useful configs already included for [prettier](https://prettier.io) and [Visual Studio Code](https://code.visualstudio.com).

Visual Studio Code is configured to use the version of typescript installed as a development dependency in the npm package.
npm package: @henryxiaoyang/wechat-openclaw-channel
Description: OpenClaw 微信通路插件 — 支持 QClaw 和 WorkBuddy 双模式
Author: HenryXiaoYang
Latest version: 1.1.0

# wechat-openclaw-channel

> **v1.1.0 — 现已支持 WorkBuddy 模式！** 无需内测码，通过 WorkBuddy 账号即可登录使用。

OpenClaw 微信通路插件 — 支持 QClaw 和 WorkBuddy 双模式。

## 安装

```bash
openclaw plugins install @henryxiaoyang/wechat-openclaw-channel
```

## 快速开始

### 1. 登录

```bash
openclaw wechat login
```

交互式选择登录模式：

- **QClaw** — 微信扫码登录 **目前需要内测码。**
- **WorkBuddy** — CodeBuddy OAuth 登录

### 2. 启动 Gateway

```bash
openclaw gateway restart
```

### 3. 设备绑定（首次使用）

```bash
openclaw wechat bind
```

在微信中打开返回的链接完成绑定，绑定后即可通过微信对话。

## 登录模式

### QClaw 模式

通过微信平台 OAuth 获取 token，连接 WebSocket 网关。**目前需要内测码。**

### WorkBuddy 模式 （推荐）

通过 CodeBuddy OAuth 获取 token，连接 WebSocket 网关。不需要内测码。

## CLI 命令

| 命令 | 说明 |
|------|------|
| `openclaw wechat login` | 交互式登录（选择 QClaw 或 WorkBuddy） |
| `openclaw wechat logout` | 清除登录态 |
| `openclaw wechat bind` | 获取设备绑定链接 |

## 配置

凭证统一存储在 `~/.openclaw/openclaw.json` 的 `channels.wechat-openclaw-channel` 下：

```json
{
  "channels": {
    "wechat-openclaw-channel": {
      "loginMode": "workbuddy",
      "environment": "production",
      "qclaw": {
        "jwtToken": "...",
        "channelToken": "...",
        "apiKey": "...",
        "guid": "...",
        "userId": "...",
        "wsUrl": "...",
        "userInfo": {}
      },
      "workbuddy": {
        "accessToken": "...",
        "refreshToken": "...",
        "userId": "...",
        "hostId": "...",
        "baseUrl": "https://copilot.tencent.com",
        "userInfo": {}
      }
    }
  }
}
```

| 字段 | 说明 |
|------|------|
| `loginMode` | 当前登录模式：`qclaw` 或 `workbuddy` |
| `environment` | 环境：`production`（默认）或 `test` |
| `qclaw` | QClaw 模式凭证（登录后自动写入） |
| `workbuddy` | WorkBuddy 模式凭证（登录后自动写入） |

## 项目结构

```
index.ts                    # 插件入口，注册渠道、CLI、启停 WebSocket
auth/
  types.ts                  # 认证相关类型（LoginMode, QClawCredentials, WorkBuddyCredentials）
  environments.ts           # 生产/测试环境配置
  device-guid.ts            # 设备 GUID 生成
  qclaw-api.ts              # QClaw JPRX 网关 API 客户端
  codebuddy-api.ts          # CodeBuddy (copilot.tencent.com) API 客户端
  wechat-login.ts           # QClaw 扫码登录流程（交互式）
  wechat-qr-poll.ts         # QR 码 URL 生成
  device-bind.ts            # 设备绑定流程
websocket/
  types.ts                  # AGP 协议类型
  websocket-client.ts       # QClaw WebSocket 客户端
  centrifuge-client.ts      # WorkBuddy Centrifuge WebSocket 客户端
  message-handler.ts        # 消息处理（调用 Agent）
  message-adapter.ts        # AGP ↔ OpenClaw 消息适配
common/
  runtime.ts                # OpenClaw 运行时单例
  agent-events.ts           # Agent 事件订阅
  message-context.ts        # 消息上下文构建
```

## License

MIT