open-index/open-npm huggingface dataset:
npm package: @hairy/core
Description: Utilities core for Mr.Mao
Author: Anthony Fu
Latest version: 1.0.13

# @hairy/core

通用的 api 逻辑。

## Install

`yarn add @hairy/core`

## Usage apis

- removeStringCode:  去除字符串中的 html 字段
- filterPrice:       过滤为价格(两位小数点)
- filterInteger:     过滤为正整数
- formatUnix:        时间戳格式化(秒)
- analyzeUnit:         如果有单位，如百分比，px单位等，直接返回，如果是纯粹的数值，则加上单位
- analyzeSize:         将 size 转换为宽高
- urlParamsAnalyze:    urlParams 对象解析器
- awaitPromise:      自定义等待时长的 promise
- generateArray:     生成递进数组
- pickByParams:      根据数组过滤对象或数组
- formDataToObject:  将 formData 转换为 object
- objectToFormData:  将 object 转换为 formData
- objectFlat:        对象的扁平化处理
- checkedTypeof:     返回类型字符串
- assert:            不符合预期则弹出警告
- isClient:          是否是客户端环境(浏览器)
- isFormData:        是否是 formData
- isWindow:          值是否是 window

## Usage typescript

- AnyObject:    值是 any 的对象
- Key:          number 与 string
- DeepReadonly: 深层转换只读
- DeepRequired: 深层转换必有
- DeepPartial:  深层转换非必有
- DeepKeyof:    深层读取对象中所有的 key 值
- DeepReplace:  深层更改对应 key 的 value 类型
npm package: @hairy/reactivity
Description: Library for react reactivity
Author: Hairyf
Latest version: 1.28.0

# @hairy/react-lib

[![npm version][npm-version-src]][npm-version-href]
[![npm downloads][npm-downloads-src]][npm-downloads-href]
[![bundle][bundle-src]][bundle-href]
[![JSDocs][jsdocs-src]][jsdocs-href]
[![License][license-src]][license-href]

## Install

```
ni @hairy/react-lib
```

## CDN

```html
<script src="https://unpkg.com/@hairy/react-lib"></script>
```

## License

[MIT](./LICENSE) License © [Hairyf](https://github.com/hairyf)

<!-- Badges -->

[npm-version-src]: https://img.shields.io/npm/v/@hairy/react-lib?style=flat&colorA=080f12&colorB=1fa669
[npm-version-href]: https://npmjs.com/package/@hairy/react-lib
[npm-downloads-src]: https://img.shields.io/npm/dm/@hairy/react-lib?style=flat&colorA=080f12&colorB=1fa669
[npm-downloads-href]: https://npmjs.com/package/@hairy/react-lib
[bundle-src]: https://img.shields.io/bundlephobia/minzip/@hairy/react-lib?style=flat&colorA=080f12&colorB=1fa669&label=minzip
[bundle-href]: https://bundlephobia.com/result?p=@hairy/react-lib
[license-src]: https://img.shields.io/github/license/hairyf/hairylib.svg?style=flat&colorA=080f12&colorB=1fa669
[license-href]: https://github.com/hairyf/hairylib/blob/main/LICENSE
[jsdocs-src]: https://img.shields.io/badge/jsdocs-reference-080f12?style=flat&colorA=080f12&colorB=1fa669
[jsdocs-href]: https://www.jsdocs.io/package/@hairy/react-lib
npm package: @hais-hbh/zeroui
Description: 这是一个UI框架
Author: hais-hbh
Latest version: 0.0.1

# 零度 - 一个Vue UI 组件库

作者：hais-hbh

## 安装

使用本框架前，请在CSS中开启 border-box

```angular2css
*{
   box-sizing: border-box;
}
```
npm package: @haispeed/pi-deck
Description: A theme and footer enhancement pack for pi
Author: hai
Latest version: 0.1.5

# pi-deck

A custom two-line footer extension for [pi](https://github.com/badlogic/pi-mono/tree/main/packages/coding-agent). · [GitHub](https://github.com/hisea/pi-deck)

## Install

```bash
pi install npm:@haispeed/pi-deck
```

## What it shows

**Line 1**
- Active model (muted mint)
- Current directory (muted green)
- Git branch (muted pink)
- Git worktree (muted purple, only when in a worktree)
- Context progress bar `[━━━─────────]` with percentage (right-aligned)
- Thinking level indicator `◐ medium` (right-aligned)

**Line 2**
- Token stats: `↑input ↓output R cache-read W cache-write $cost context%/window` (right-aligned)

## Icons

Requires a [Nerd Font](https://www.nerdfonts.com/) in your terminal.

| Part       | Codepoint  |
|------------|------------|
| Model      | `\uee0d`   |
| Directory  | `\uf4d3`   |
| Branch     | `\uf126`   |
| Worktree   | `\uf1bb`   |
| Context    | `\uf2db`   |

## Themes

This package includes:

### Kanagawa
- `kanagawa-wave`
- `kanagawa-dragon`
- `kanagawa-lotus`

Palette source: [rebelot/kanagawa.nvim](https://github.com/rebelot/kanagawa.nvim/blob/master/lua/kanagawa/colors.lua)

### Kanso
- `kanso-ink`
- `kanso-zen`
- `kanso-mist`
- `kanso-pearl`

Palette source: [webhooked/kanso.nvim](https://github.com/webhooked/kanso.nvim/blob/main/lua/kanso/colors.lua)

After install, pick a theme in `pi` via `/settings` → `theme`.

## License

[MIT](LICENSE)
npm package: @haispeed/pi-obsidian
Description: Pi extension + skill for managing Obsidian vaults via Obsidian CLI
Latest version: 0.1.1

# @haispeed/pi-obsidian

Shareable Pi package for Obsidian CLI workflows.

## Includes

- `extensions/obsidian-cli.ts` — registers tool `obsidian_cli`
- `skills/obsidian-cli/SKILL.md` — usage guidance for Obsidian CLI workflows
- `skills/obsidian-markdown/SKILL.md` — Obsidian Flavored Markdown authoring guidance (wikilinks, embeds, callouts, properties)
  - `skills/obsidian-markdown/references/PROPERTIES.md`
  - `skills/obsidian-markdown/references/EMBEDS.md`
  - `skills/obsidian-markdown/references/CALLOUTS.md`

## Install in Pi

From npm:

```bash
pi install npm:@haispeed/pi-obsidian
```

## Use

Start Pi, then ask for Obsidian operations (search, create, tasks, properties, plugins, etc.).

The extension tool accepts:

- `command` (required)
- `params` (key/value)
- `flags` (boolean switches)
- `vault` (vault name)
- `allowDangerous` (required for `eval`, `dev:cdp`, `dev:debug`, `restart`)

## Publish

```bash
npm publish --access public
```

## Requirements

- Obsidian desktop app running
- Obsidian CLI available (`obsidian`)
npm package: @haitai-social/pit
Description: A CLI tool for managing conversation history and chat records
Latest version: 1.0.10

# Pit - AI Conversation History Management Tool

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Node Version](https://img.shields.io/node/v/@haitai-social/pit)](https://nodejs.org/)
[![NPM Version](https://img.shields.io/npm/v/@haitai-social/pit)](https://www.npmjs.com/package/@haitai-social/pit)

💡`pit` stand for `prompt git`.

🕳️ A command-line tool for managing conversation history and chat logs.

## 🚀 MCP Server Support

**NEW!** Pit now supports running as an MCP (Model Context Protocol) Server, allowing seamless integration with Claude Desktop and other AI assistants for automatic conversation recording.

### Quick MCP Setup

1. Install Pit globally: `npm install -g @haitai-social/pit`
2. Add to Claude Desktop config:
   ```json
   {
     "mcpServers": {
       "pit": {
         "command": "pit",
         "args": ["mcp"]
       }
     }
   }
   ```
3. Restart Claude Desktop

See [MCP_INSTALL.md](./MCP_INSTALL.md) for detailed setup instructions.

## Installation

```bash
npm install -g @haitai-social/pit
```

## Usage

### CLI Usage

#### Add Chat Record

Add a single chat record to conversation history:

```bash
pit add user "Hello, how are you?"
pit add assistant "I'm doing well, thank you!"
pit add --conversation my-chat tool "Function executed successfully"
```

#### View Help

```bash
pit help
```

### MCP Server Usage

When running as an MCP server, Pit provides the `pit_record_chat_history` tool that can be called by AI assistants to automatically record conversations.

See [MCP_INSTALL.md](./MCP_INSTALL.md) for MCP server setup and usage details.

## JSON File Format

The input JSON file should have the following structure:

```json
{
  "chat_list": [
    {
      "role": "user",
      "content": "Hello, how are you?"
    },
    {
      "role": "assistant", 
      "content": "I'm doing well, thank you!"
    },
    {
      "role": "tool",
      "content": "Function executed successfully"
    }
  ]
}
```

### Supported Role Types

- `user`: User message
- `assistant`: Assistant reply
- `tool`: Tool execution result

## Storage Structure

Data is stored in the `.pit/` folder under the user's home directory:

```
~/.pit/
├── meta.json              # Metadata file
├── conversation1.json     # Conversation file 1
├── conversation2.json     # Conversation file 2
└── ...
```

### meta.json Structure

```json
{
  "conversation_queue": ["conversation1.json", "conversation2.json"]
}
```

### conversation.json Structure

```json
{
  "version": "v0",
  "content": {
    "chat_list": [
      {
        "role": "user",
        "content": "Message content"
      }
    ]
  }
}
```

## Contributing

Issues and Pull Requests are welcome at the [GitHub repository](https://github.com/haitai-social/pit).