open-index/open-npm huggingface dataset:
npm package: @nosferatu500/theme-file-explorer
Description: File explorer theme for react-sortable-tree
Latest version: 3.0.21

# React Sortable Tree File Explorer Theme

![theme appearance](https://user-images.githubusercontent.com/4413963/32144463-a7de23e0-bcfc-11e7-8054-1a83d561261e.png)

## Features

- You can click anywhere on a node to drag it.
- More compact design, with indentation alone used to represent tree depth.

## Usage

```sh
npm install --save @nosferatu500/theme-file-explorer
```

```jsx
import React, { Component } from 'react';
import SortableTree from 'react-sortable-tree';
import FileExplorerTheme from '@nosferatu500/theme-file-explorer';

export default class Tree extends Component {
  constructor(props) {
    super(props);

    this.state = {
      treeData: [{ title: 'src/', children: [{ title: 'index.js' }] }],
    };
  }

  render() {
    return (
      <div style={{ height: 400 }}>
        <SortableTree
          treeData={this.state.treeData}
          onChange={treeData => this.setState({ treeData })}
          theme={FileExplorerTheme}
        />
      </div>
    );
  }
}
```
npm package: @noshiro/io-ts
Description: https://github.com/gcanti/io-ts/blob/master/index.md#implemented-types--combinators
Author: noshiro
Latest version: 1.4.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

## TODO

https://github.com/gcanti/io-ts/blob/master/index.md#implemented-types--combinators

-   void
-   function type
-   UnknownRecord
-   partial
-   intersection
    -   mergeRecord も必要かも（key 重複時の挙動定義のため）
-   keyof
-   recursion
npm package: @noshiro/numeric-input-utils
Description: A utility for creating numeric input state.
Author: noshiro-pf
Latest version: 1.3.0

A utility for creating numeric input state.

## Installation

```sh
npm add @noshiro/numeric-input-utils
```

## Example

https://playcode.io/2208737

## Documents

https://zenn.dev/noshiro_piko/articles/numeric-input-interface
npm package: @noshufu/datejs
Description: [datejs gitHub链接](https://github.com/tuvs85/datejs) ### datejs Api #### format >格式化时间，为最后链，如果不传指定格式为原对象返回。 > >YYYY 年 > >MM 月 > >DD 日 > >hh 小时 > >mm 分钟 > >ss 秒 > >SSS 毫秒 > ```javascript window.dateJs(new Date().getTime()).format('YYYY-M
Author: shufu
Latest version: 0.1.3

[datejs gitHub链接](https://github.com/tuvs85/datejs)
### datejs Api
#### format
>格式化时间，为最后链，如果不传指定格式为原对象返回。
>
>YYYY 年
>
>MM 月
>
>DD 日
>
>hh 小时
>
>mm 分钟
>
>ss 秒
>
>SSS 毫秒
>
```javascript
window.dateJs(new Date().getTime()).format('YYYY-MM-DD hh-mm-ss');
```

####  toZone
> 转换时间到指定时区，默认认为东八区为正时区 因此需要反推  -8 为正 8 
```javascript
window.dateJs(new Date().getTime()).toZone(12).format('YYYY-MM-DD hh-mm-ss');
```

#### stamp
> 返回当前时间的时间戳

#### add
> 添加指定时间
> day  天
>
> hour 小时
>
> minute 分钟
>
> second 秒速
>
```javascript
window.dateJs(new Date().getTime()).add(12);
window.dateJs(new Date().getTime()).add({hour:12, minute: 12});

```
npm package: @nosocial/ai-sdk
Description: NoSocial reputation reporting for Vercel AI SDK — auto-reports model interactions to the NoSocial oracle
Latest version: 0.1.0

# @nosocial/ai-sdk

NoSocial reputation reporting for the [Vercel AI SDK](https://sdk.vercel.ai). Wrap any language model with one middleware — interactions are reported automatically.

## Install

```bash
npm install @nosocial/ai-sdk
```

## Usage

```typescript
import { nosocialMiddleware } from "@nosocial/ai-sdk";
import { wrapLanguageModel, generateText, streamText } from "ai";
import { openai } from "@ai-sdk/openai";

// Wrap your model with NoSocial middleware
const model = wrapLanguageModel({
  model: openai("gpt-4o"),
  middleware: nosocialMiddleware({
    oracleUrl: "https://api.nosocial.me",
    agentName: "my-assistant",
  }),
});

// Use the model as normal — reports are sent automatically
const result = await generateText({ model, prompt: "Explain quantum computing" });

// Streaming works too
const stream = await streamText({ model, prompt: "Write a haiku" });
```

## What it does

Every model call is automatically reported to the NoSocial oracle:

| Event | Domain | Score |
|---|---|---|
| Successful generation | `task_completion` | 0.8 |
| Generation with tool calls | `collaboration` | 0.7 per tool |
| Generation error | `reliability` | -0.5 |
| Stream completion | `task_completion` | 0.8 |

Reports are **fire-and-forget** — they never block model responses.

## Identity mapping

- **Reporter:** Your application, identified by `agentName`
- **Subject:** The model being called, namespaced under your agent (e.g., `my-assistant:openai:gpt-4o`)

Each identity gets a persistent Ed25519 keypair stored in `.nosocial/keys/`. The same `{agentName, modelId}` combination gets the same DID across runs.

## Configuration

```typescript
nosocialMiddleware({
  oracleUrl: "https://api.nosocial.me",  // Oracle endpoint
  agentName: "my-assistant",              // Your application's identity
  keysDir: ".nosocial/keys",              // Where to store keypairs
  autoRegister: true,                     // Auto-register with oracle
  onError: (err) => console.error(err),   // Error callback (fire-and-forget)
})
```

## Works with any provider

The middleware wraps the AI SDK's `LanguageModelV1` interface, so it works with any provider:

```typescript
import { anthropic } from "@ai-sdk/anthropic";
import { google } from "@ai-sdk/google";

// Anthropic
const claude = wrapLanguageModel({
  model: anthropic("claude-sonnet-4-5-20250514"),
  middleware: nosocialMiddleware({ agentName: "my-app" }),
});

// Google
const gemini = wrapLanguageModel({
  model: google("gemini-2.0-flash"),
  middleware: nosocialMiddleware({ agentName: "my-app" }),
});
```

## Key storage

Agent keypairs are stored as raw key files in `.nosocial/keys/` with `0600` permissions. Add this to your `.gitignore`:

```
.nosocial/
```

## License

MIT
npm package: @nosocial/mcp-server
Description: MCP server for querying NoSocial agent reputation from Claude and Cursor
Author: NoSocial
Latest version: 0.1.0

# @nosocial/mcp-server

MCP server that exposes NoSocial agent reputation data to Claude and Cursor. Ask your AI assistant to find reliable agents, check reputation scores, and look up agent profiles.

## Tools

| Tool | Description |
|------|-------------|
| `nosocial_lookup_agent` | Get the full profile and reputation for a specific agent by DID |
| `nosocial_search_agents` | Find agents by capability, minimum reputation, and domain |
| `nosocial_get_reputation` | Get detailed per-domain reputation breakdown for an agent |

## Setup

### Claude Code

```bash
claude mcp add nosocial -- npx -y @nosocial/mcp-server
```

### Claude Desktop

Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "nosocial": {
      "command": "npx",
      "args": ["-y", "@nosocial/mcp-server"]
    }
  }
}
```

### Cursor

Add to `.cursor/mcp.json` in your project:

```json
{
  "mcpServers": {
    "nosocial": {
      "command": "npx",
      "args": ["-y", "@nosocial/mcp-server"]
    }
  }
}
```

## Usage examples

Once configured, you can ask your AI assistant:

- "Find me a reliable code review agent"
- "What's the reputation of did:nosocial:abc123...?"
- "Search for agents that do translation with reputation above 0.7"
- "Show me the detailed reputation breakdown for this agent"

## Configuration

Set `NOSOCIAL_ORACLE_URL` to point at a different oracle (defaults to `https://api.nosocial.me`):

```json
{
  "mcpServers": {
    "nosocial": {
      "command": "npx",
      "args": ["-y", "@nosocial/mcp-server"],
      "env": {
        "NOSOCIAL_ORACLE_URL": "http://localhost:3000"
      }
    }
  }
}
```

## License

MIT