open-index/open-npm huggingface dataset:
npm package: @ji-constructs/ecs-jwt-keypair
Description: This is an [AWS CDK](https://aws.amazon.com/cdk/) L3 Construct for creating PEM format keypairs in [AWS Secrets Manager](https://aws.amazon.com/secrets-manager/) which can be used for RS256 JWT signing/verification.
Latest version: 0.1.10

# ecs-jwt-keypair

This is an [AWS CDK](https://aws.amazon.com/cdk/) L3 Construct for creating PEM format keypairs in [AWS Secrets Manager](https://aws.amazon.com/secrets-manager/) which can be used for RS256 JWT signing/verification.

## Usage in Stack

```typescript
class MyStack extends Construct {
  constructor() {
    const jwtKeys = new EcsJwtKeyPair(this, 'JwtKeys');

    const apiContainer = taskDefinition.addContainer('api', {
      secrets: {
        JWT_PRIVATE_KEY: jwtKeys.ecsSecrets.privateKey,
        JWT_PUBLIC_KEY: jwtKeys.ecsSecrets.publicKey,
      },
    });
  }
}
```

## Usage in Application

```typescript
import { sign as signToken } from 'jsonwebtoken';

const { JWT_PRIVATE_KEY } = process.env;

signToken({ sub: 'abc123' }, JWT_PRIVATE_KEY, { algorithm: 'RS256' });
```

```typescript
import { verify as verifyToken } from 'jsonwebtoken';

const { JWT_PUBLIC_KEY } = process.env;

verifyToken(token, JWT_PUBLIC_KEY, { algorithms: ['RS256'] });
```

This library was generated with [Nx](https://nx.dev).

## Running unit tests

Run `nx test ecs-jwt-keypair` to execute the unit tests via [Jest](https://jestjs.io).

## Running lint

Run `nx lint ecs-jwt-keypair` to execute the lint via [ESLint](https://eslint.org/).
npm package: @ji-constructs/loadbalanced-ecs-service
Description: ## Example
Latest version: 0.7.10

# loadbalanced-ecs-service

## Example

```typescript
import {
  LoadBalancedService,
  LoadBalancedServiceListenerLookup,
} from '@ji-constructs/loadbalanced-ecs-service';

const lookup = new LoadBalancedServiceListenerLookup(
  this,
  'LBLookup',
  props.listener
);
const { vpc } = lookup;

const service = new LoadBalancedService(this, 'Service', {
  cluster: props.cluster,
  domainName: props.apiHostname,
  listener: lookup,
  targetGroupProps: {
    healthCheck: {
      path: '/api',
    },
  },
  serviceFactory: (scope, cluster) => {
    return new Ec2Service(scope, 'Service', {
      cluster,
      taskDefinition: caliobase.taskDefinition,
      circuitBreaker: {
        rollback: true,
      },
    });
  },
});
```

## Running unit tests

Run `nx test loadbalanced-ecs-service` to execute the unit tests via [Jest](https://jestjs.io).

## Running lint

Run `nx lint loadbalanced-ecs-service` to execute the lint via [ESLint](https://eslint.org/).
npm package: @ji-constructs/start-localstack-docker
Description: This library was generated with [Nx](https://nx.dev).
Latest version: 0.4.3

# start-localstack-docker

This library was generated with [Nx](https://nx.dev).

## Running unit tests

Run `nx test start-localstack-docker` to execute the unit tests via [Jest](https://jestjs.io).

## Running lint

Run `nx lint start-localstack-docker` to execute the lint via [ESLint](https://eslint.org/).
npm package: @jiabintang/mochat
Description: OpenClaw Mochat (Claw IM) channel plugin
Latest version: 2026.2.6

# Mochat 插件（OpenClaw）

这是一个 OpenClaw 的渠道插件，用于对接 Mochat/Tailchat（Claw IM）。

## 打包/分发方式

插件目录需要包含：

- `openclaw.plugin.json`
- `package.json`（含 `openclaw.extensions`）
- 入口文件（如 `index.ts` 或 `dist/index.js`）

常见分发方式：

1) **本地目录/压缩包**
- 直接把插件目录发送给用户。
- 用户用 `openclaw plugins install /path/to/mochat` 安装。

2) **发布到 npm（推荐）**
- `package.json` 中配置：
  - `openclaw.extensions` 指向入口（`./index.ts` 或 `./dist/index.js`）
- 运行依赖放在插件自身 `dependencies`。
- 发布后，用户可用：
  - `openclaw plugins install openclaw-mochat`

## 用户标准安装流程

1) **安装插件**

```bash
# npm 安装
openclaw plugins install openclaw-mochat

# 或本地目录安装
openclaw plugins install /path/to/mochat

# 开发联调（软链接，不复制）
openclaw plugins install -l /path/to/mochat
```

2) **启用插件**

```bash
openclaw plugins enable mochat
# 或
openclaw config set plugins.entries.mochat.enabled true
```

3) **配置渠道参数**

```bash
openclaw config set channels.mochat.baseUrl "http://localhost:11000"
openclaw config set channels.mochat.socketUrl "http://localhost:11000"
openclaw config set channels.mochat.clawToken "claw_ef06c64c7589bb36d27e16ab8e337dded50529cfc3982d88"
openclaw config set channels.mochat.agentUserId "69820107a785110aea8b1069"
openclaw config set channels.mochat.sessions '["*"]'
openclaw config set channels.mochat.panels '["*"]'
openclaw config set channels.mochat.refreshIntervalMs 30000
openclaw config set channels.mochat.replyDelayMode "non-mention"
openclaw config set channels.mochat.replyDelayMs 120000
```

`replyDelayMode=non-mention` 时：仅 **panel** 启用混合模式（被 @ 立即回复，未 @ 延迟合并）。Session 消息仍然立即回复，不受影响。

4) **重启网关**

```bash
openclaw gateway restart
```

5) **验证**

```bash
openclaw plugins list
openclaw channels status --probe
```

## 开发/调试建议

- 如果使用 `openclaw plugins install -l`，代码修改后无需重新安装。
- 依赖变更后需要在插件目录执行安装（例如 `pnpm install`）。
- 配置变更后需重启网关生效。