open-index/open-npm huggingface dataset:
npm package: @hzyhhh/components
Description: components 组件集
Latest version: 1.0.4-alpha.0

# components

components 组件集

目录结构遵循 antd-design 目录标准

# Publish Issues

```
yarn
lerna publish
```

## 配置提醒

: spackles: **切记！** 在@hzyhhh/components 里，**仅需**导入@types/react 和 @types/react-dom 的类型的依赖，因为在正式环境中，多个 react 会导致依赖冲突，而正确让 react 运行的行为只能是依赖只能有一个 react！

否则，你将会收到以下报错信息：

> 触发这个警告有三种常见的原因：
>
> 1. 你的 React 和 React DOM 可能版本不匹配。
> 2. 你可能打破了 Hook 的规则。
> 3. 你可能在同一个应用中拥有多个 React 副本。

## 连接方式介绍

接下来介绍以下其他连接方式：

1. 对 myComponents 每次改动进行 publish，默认从 npm 获取最新的包进行调试
2. 对 myComponents 每次改动进行`yarn build`,手动替换到 myDemo 的*node_modules*中
3. **通过软连接的形式将目标文件夹的依赖对应起来**（推荐）

以下介绍以下软连接的方式的具体调试步骤

## 调试说明

例如有以下开发场景（以下开发场景均考虑在用 lerna 分包管理的情况下）

开发组件模块 myCompponents

目标调试模块 myDemo

1. 我们需要做的是首先在 myComponents 模块中安装正确依赖的 react，全局安装 parcel-bundler 进行实时开发调试
2. 开发完成在 myComponents 移除正式打包环境的 react 和 react-dom，仅保留各自对应的 type 类型。yarn/npm link 软链接到全局依赖
3. myDemo 中安装正式 react 依赖，引入 myComponents 包(例如@hzyhhh/myComponents),这时进行的是软连接，可以尽情的在两个模块中调试。
4. 一旦 myComponents 内部组件需要改动时，及时在 myComponents 运行`yarn build`,这时因为之前操作的软连接会使打包完的 dist 文件夹自动与调试库内的依赖的模块进行自动更新，HRL
npm package: @hzzlyxx/json2ts
Description: json转ts接口类型
Author: hzzly
Latest version: 1.0.2

## @hzzlyxx/json2ts

![NPM version](https://img.shields.io/npm/v/@hzzlyxx/json2ts)
![NPM download](https://img.shields.io/npm/dt/@hzzlyxx/json2ts)

### How to use

```
npm install @hzzlyxx/json2ts --save
// or
yarn add @hzzlyxx/json2ts
```

### Examples

```ts
import { json2ts } from '@hzzlyxx/json2ts';

const json = {
  Button: {
    description: '按钮组件',
    props: [
      {
        name: 'htmlType',
        type: '"button" | "submit" | "reset"',
        default: '',
        description: 'Button 类型',
        required: false,
      },
    ],
  },
};
const ts = json2ts(json);

// ts
export interface Props {
  name: string;
  type: string;
  default: string;
  description: string;
  required: boolean;
}

export interface Button {
  description: string;
  props: Props[];
}

export interface RootObject {
  button: Button;
}
```
npm package: @hzzlyxx/stylelint-config-scss
Description: stylelint config scss
Author: hjingren@aliyun.com
Latest version: 0.0.2

## @hzzlyxx/stylelint-config-scss

## Usage
```js
// .stylelintrc
{
  "extends": "@hzzlyxx/stylelint-config-scss"
  ...
}
```
npm package: @hzzlyxx/ts-docs
Description: TS接口类型转换为json对象
Author: hzzly
Latest version: 1.1.0

## @hzzlyxx/ts-docs

![NPM version](https://img.shields.io/npm/v/@hzzlyxx/ts-docs)
![NPM download](https://img.shields.io/npm/dt/@hzzlyxx/ts-docs)

### How to use

```
npm install @hzzlyxx/ts-docs --save
// or
yarn add @hzzlyxx/ts-docs
```

### Examples

```ts
import * as fs from "fs";
import { TsToJson, JsonToMarkdown } from "@hzzlyxx/ts-docs";

const ts2Json = new TsToJson();
const json2Markdown = new JsonToMarkdown();
const json = ts2Json.parse("./type.ts"); // fileName 文件路径
fs.writeFileSync(
  path.join(dir, `./index.md`),
  json2Markdown.commentToMarkDown(json)
);
```

### TypeScript 接口定义

```ts
// type.ts
/**
 * @name Button
 * @description 按钮组件
 */
export interface ButtonProps {
  /**
   * @description Button 类型
   */
  htmlType?: "button" | "submit" | "reset";
  ...
}
```

### 转换为 json 对象

```json
{
  "Button": {
    "description": "按钮组件",
    "props": [
      {
        "name": "htmlType",
        "type": "\"button\" | \"submit\" | \"reset\"",
        "default": "",
        "description": "Button 类型",
        "required": false
      }
      ...
    ]
  }
}
```

### 生成 MarkDown

| 属性     | 描述        | 类型                            | 默认值 | 必填 |
| -------- | ----------- | ------------------------------- | ------ | ---- |
| htmlType | Button 类型 | "button" \| "submit" \| "reset" | -      | -    |
npm package: @hzzt/umi-plugin-keep-alive
Description: <KeepAlive> for umi base on react-activation
Latest version: 0.0.5

# umi-plugin-keep-alive

[![NPM version](https://img.shields.io/npm/v/umi-plugin-keep-alive.svg?style=flat)](https://npmjs.org/package/umi-plugin-keep-alive)
[![NPM downloads](http://img.shields.io/npm/dm/umi-plugin-keep-alive.svg?style=flat)](https://npmjs.org/package/umi-plugin-keep-alive)

`<KeepAlive>` for umijs base on [react-activation](https://github.com/CJY0208/react-activation)

## Usage

1. Install

    ```bash
    npm install umi-plugin-keep-alive --save
    # or
    yarn add umi-plugin-keep-alive
    ```

2. export `KeepAlive` from umi and wrap any component you want to be keeped  

    ```javascript
    import { useState } from 'react'
    import { KeepAlive } from 'umi'

    function Counter() {
      const [count, setCount] = useState(0)

      return (
        <div>
          <p>count: {count}</p>
          <button onClick={() => setCount(count => count + 1)}>add</button>
        </div>
      )
    }

    export default function() {
      const [show, setShow] = useState(true)

      return (
        <div>
          <h1>Page index</h1>
          {show && (
            <KeepAlive>
              <Counter />
            </KeepAlive>
          )}
          <button onClick={() => setShow(show => !show)}>toggle</button>
        </div>
      )
    }
    ```

## Options

TODO

## Documentation

All function of react-activation can be completely imported from umi

```javascript
import {
  KeepAlive,
  useActivate, 
  useUnactivate, 
  withActivation,
  withAliveScope, 
  useAliveController
} from 'umi'
```

Visit [react-activation](https://github.com/CJY0208/react-activation) for full documentation

## LICENSE

MIT
npm package: @hzzzzzz/openclaw-easy
Description: One-command setup for OpenClaw with built-in API key
Author: 王子怡
Latest version: 0.2.4
Deprecated: 请使用新包@zi.yi/openclaw-easy

# @hzzzzzz/openclaw-easy

[![npm version](https://badge.fury.io/js/@hzzzzzz%2Fopenclaw-easy.svg)](https://www.npmjs.com/package/@hzzzzzz/openclaw-easy)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Install Size](https://packagephobia.com/badge?p=@hzzzzzz/openclaw-easy)](https://packagephobia.com/result?p=@hzzzzzz/openclaw-easy)

> **One-command setup for [OpenClaw](https://github.com/anthropics/openclaw) with built-in API key.**

OpenClaw 是一个自托管 AI 助手网关，可以连接 WhatsApp、Telegram、Discord 等聊天应用到 AI 编码助手。这个工具让你一键完成配置，内置 GLM-4-Flash 模型。

## 特点

- **零配置** - 内置免费 API key，开箱即用
- **灵活** - 可以选择使用自己的 API key
- **一键安装** - 一条命令完成所有配置
- **安全** - API key 加密存储

## 快速开始

### 安装

```bash
npm install -g @hzzzzzz/openclaw-easy
```

### 使用

**方式一：使用内置福利 API key（推荐）**

```bash
openclaw-easy
```

默认配置：
- 模型：`glm-4-flash`（通过 zai provider）

**方式二：使用自己的 API key**

```bash
# 命令行参数
openclaw-easy --openai-key sk-your-api-key-here

# 或环境变量
export OPENAI_API_KEY=sk-your-api-key-here
openclaw-easy
```

安装完成后，你可以通过以下方式与 OpenClaw 交互：

```bash
# 打开 Web 控制面板
npx openclaw dashboard

# 或使用终端界面
npx openclaw tui

# 或直接发送消息
npx openclaw agent --message "你好"
```

## 工作原理

1. 从内置配置或用户输入获取 API key
2. 将配置写入 `~/.openclaw/.env`（API key、模型）
3. 运行 OpenClaw 的 onboarding 流程
4. 安装并启动 OpenClaw 守护进程

## 常见问题

### Q: 内置的是什么模型？

A: 内置的是 GLM-4-Flash 模型（通过 zai provider），适合日常使用。

### Q: 如何更换模型？

A: 编辑 `~/.openclaw/.env`，修改 `OPENCLAW_MODEL` 环境变量。

### Q: 卸载怎么办？

```bash
npm uninstall -g @hzzzzzz/openclaw-easy
npx openclaw uninstall  # 完全卸载 OpenClaw
```

## 文档

详细使用指南请查看 [USER_GUIDE.md](USER_GUIDE.md)

## 开发

```bash
# 克隆仓库
git clone https://github.com/hzzzzz-1/openclaw-easy.git
cd openclaw-easy

# 安装依赖
npm install

# 本地测试
npm install -g .
openclaw-easy

# 发布到 npm（需要设置环境变量）
BUILTIN_API_KEY="your-api-key" BUILTIN_MODEL="glm-4.7-flash" npm publish --access public
```

## 致谢

- [OpenClaw](https://github.com/anthropics/openclaw) - 核心项目
- [GLM](https://open.bigmodel.cn/) - 提供内置 API 支持

## GitHub 仓库

https://github.com/hzzzzz-1/openclaw-easy

## License

[MIT](LICENSE) © 2026 王子怡 (Ziyi Wang)
npm package: @i-360/auth-ui
Description: i360 Auth UI
Author: lance.tipton@i-360.com
Latest version: 0.1.2

# i360 Auth UI

Package for authenticating a user using their Koch ID


## Setup

* Clone this repo locally => `git clone git@gitlab.com:i-360/dataops/auth-ui.git`
* Install dependencies => `pnpm install` *(from repo root directory)*
* Run the example app => `pnpm example`


## Use

The package is published to the [NPM registry](https://www.npmjs.com/package/@i-360/auth-ui) and can be installed with your preferred package manager:

  * NPM => `npm i @i-360/auth-ui`
  * Yarn => `yarn add @i-360/auth-ui` 
  * PNPM => `pnpm add @i-360/auth-ui` 


### AuthService

After installing, import the Auth class into the application and initialize it. Then call the login method.
* `user<Object|undefined>` => The user object or undefined when not logged in *(getter only, can not be set)*
* `token<string|undefined>` => The users token or undefined when not logged in *(getter only, can not be set)*
* `login<function>` => Start the login flow for the user
* `logout<function>` => Log a user out of the application
* `status<function>` => Check the login status of the User
* `expired<function>` => Validate if the user token is expired
* `onToken<function>` => Should be called with the idToken from within the pop-window when redirected
* `decode<function>` => Helper for decoding JWT tokens *(Not commonly used)*


**Example**
```ts

// Initialize the Auth class
const auth = new Auth({
  // URL used to login the user
  loginUrl: `https://example.i-360.com/kochid/login`,

  // URL used to logout the user
  logoutUrl: `https://example.i-360.com/kochid/logout`,

  // URL to redirect to once authenticated
  redirectUri: `my-application.com`,

  // Login callback called when the user is logged in
  onLogin: (user, token) => { /* Handle user and token */ },

  // Error callback called when the there is an error during authentication
  onError: (error) => { /* Handle authentication error */ },

  // Logout callback called when the user is logged out
  onLogout: () => { /* Handle User logout */ },
})

// Call the login method to log the user into the application
// Calls the passed in `onLogin` callback after logging in the user
await auth.login()

// Get the current user or token, both are undefined if not logged in
const user = auth.user
const token = auth.token

// Setting the user or token manually will NOT work. A warning will be printed to the console
auth.user = {}
auth.token = `custom-token`

// Check if the token is expired, returned false if no user or token, or the token is expired
const isExpired = auth.expired()


// Call the logout method to log the user out of the application
// Calls the passed in `onLogout` callback after logging out the user
auth.logout()

```
npm package: @i-am-bee/acp-sdk
Description: Agent Communication Protocol implementation for TypeScript
Author: IBM Corp.
Latest version: 0.0.6
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# Agent Communication Protocol TypeScript SDK

## Disclaimer

The current [MCP](https://modelcontextprotocol.io/) based implementation should be treated as temporary and exploratory. It's main purpose is to enable integration of various agents into the platform and to explore underlying protocols, transports and possible multi-agent patterns. In Q2 2025, we expect to rebuild the SDK from the ground up.

## Overview

The Agent Communication Protocol allows applications to use agents through a uniform interface. It is built on top of [Model Context Protocol](https://modelcontextprotocol.io/).