open-index/open-npm huggingface dataset:
npm package: @ntindle/linux-desktop-control
Description: Linux desktop automation client for OpenClaw - AT-SPI2 accessibility tree, input simulation, screen capture
Author: Nick Tindle
Latest version: 0.1.0

# @openclaw/linux-desktop-control

Linux desktop automation client for OpenClaw. Provides accessibility tree snapshots, input simulation, and screen capture via a local Unix socket daemon.

## Installation

```bash
npm install @openclaw/linux-desktop-control
```

**Prerequisite:** The `linux-desktop-control` daemon must be running on the Linux system. See [daemon setup](https://github.com/openclaw/linux-desktop-control).

## Usage

```typescript
import { DesktopControlClient } from '@openclaw/linux-desktop-control';

const client = new DesktopControlClient();

// Check if daemon is running
if (await client.ping()) {
  // Get accessibility tree snapshot
  const snapshot = await client.snapshot({ depth: 3 });
  console.log(`Found ${snapshot.meta.app_count} apps`);

  // Type text
  await client.type('Hello, World!');

  // Press key combination
  await client.press('ctrl+shift+t');

  // Mouse control
  await client.mouseMove(500, 300);
  await client.mouseClick('left');
}
```

## API

### `new DesktopControlClient(socketPath?)`

Create a client. Uses `/run/user/$UID/linux-desktop-control.sock` by default.

### Methods

| Method | Description |
|--------|-------------|
| `ping()` | Check if daemon is running |
| `status()` | Get daemon status (pid, uptime, version) |
| `snapshot(options?)` | Get accessibility tree (`app`, `depth` options) |
| `findElement(id)` | Find element by ID |
| `click(element)` | Click an element by reference |
| `type(text)` | Type text via keyboard |
| `press(keys)` | Press key combination (e.g., `ctrl+c`) |
| `mouseMove(x, y)` | Move mouse to coordinates |
| `mouseClick(button?)` | Click mouse button (`left`, `right`, `middle`) |

### Types

```typescript
interface Snapshot {
  timestamp: string;
  focused_app?: string;
  tree: DesktopElement;
  meta: {
    app_count: number;
    element_count: number;
    duration_ms: number;
  };
}

interface DesktopElement {
  id: string;
  role: string;
  name?: string;
  description?: string;
  bounds?: { x: number; y: number; width: number; height: number };
  states?: string[];
  actions?: string[];
  children?: DesktopElement[];
}

interface StatusInfo {
  pid: number;
  uptime_secs: number;
  connections: number;
  version: string;
}
```

## Daemon Setup

The daemon requires:
- AT-SPI2 accessibility enabled (`GTK_MODULES=gail:atk-bridge`)
- ydotool for input simulation
- GNOME/Wayland session

See the [daemon repository](https://github.com/openclaw/linux-desktop-control) for full setup instructions.

## License

MIT
npm package: @ntindle/openclaw-tasks
Description: Persistent task and plan tracking plugin for OpenClaw
Author: ntindle
Latest version: 0.1.1

# @ntindle/openclaw-tasks

Persistent task and plan tracking plugin for [OpenClaw](https://github.com/openclaw/openclaw).

## Features

- **Native tools**: `task_create`, `task_update`, `task_list`, `task_get`
- **File-based storage**: Tasks survive context compaction in `tasks/{project}.json`
- **Plan tracking**: Markdown plans in `plans/{project}.md`
- **Cascading unblocks**: When a blocker completes, blocked tasks auto-unblock
- **Auto-inject**: Active tasks summary injected into session context on startup

## Installation

```bash
# From npm
openclaw plugins install @ntindle/openclaw-tasks

# From GitHub
openclaw plugins install ntindle/openclaw-tasks
```

## Usage

Once installed, the plugin provides these tools to the agent:

### task_create

Create a new task in a project. Creates the project if it doesn't exist.

```
task_create(project: "my-project", subject: "Build the thing")
task_create(project: "my-project", subject: "Deploy", blockedBy: ["task-001"])
```

### task_update

Update a task's status or notes. Handles cascading unblocks automatically.

```
task_update(project: "my-project", taskId: "task-001", status: "completed")
task_update(project: "my-project", taskId: "task-002", notes: "In progress...")
```

### task_list

List tasks for a project or all active projects.

```
task_list()                           # All active projects
task_list(project: "my-project")      # Specific project
task_list(status: "pending")          # Filter by status
```

### task_get

Get details of a specific task.

```
task_get(project: "my-project", taskId: "task-001")
```

## File Format

Tasks are stored as JSON in `tasks/{project}.json`:

```json
{
  "project": "my-project",
  "created": "2026-02-19T20:00:00.000Z",
  "updated": "2026-02-19T21:00:00.000Z",
  "tasks": [
    {
      "id": "task-001",
      "subject": "Build the thing",
      "status": "completed",
      "created": "2026-02-19T20:00:00.000Z",
      "updated": "2026-02-19T21:00:00.000Z",
      "blockedBy": [],
      "notes": ""
    }
  ]
}
```

Plans are stored as Markdown in `plans/{project}.md`.

## Development

```bash
# Install dependencies
bun install

# Run tests
bun test

# Release (patch version)
npm run release

# Release minor/major
npm run release:minor
npm run release:major
```

See [docs/RELEASING.md](docs/RELEASING.md) for detailed release instructions.

## License

MIT
npm package: @ntis/ntislib
Description: Made with create-react-library
Latest version: 0.5.0

# Getting Started with Create React App

This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).

## Available Scripts

In the project directory, you can run:

### `npm start`

Runs the app in the development mode.\
Open [http://localhost:3000](http://localhost:3000) to view it in the browser.

The page will reload if you make edits.\
You will also see any lint errors in the console.

### `npm test`

Launches the test runner in the interactive watch mode.\
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.

### `npm run build`

Builds the app for production to the `build` folder.\
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.\
Your app is ready to be deployed!

See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.

### `npm run eject`

**Note: this is a one-way operation. Once you `eject`, you can’t go back!**

If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.

Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.

You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.

## Learn More

You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).

To learn React, check out the [React documentation](https://reactjs.org/).
npm package: @ntis/uilib
Description: Made with create-react-library
Latest version: 1.1.1

# @ntis/uilib

> Made with create-react-library

[![NPM](https://img.shields.io/npm/v/@ntis/uilib.svg)](https://www.npmjs.com/package/@ntis/uilib) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save @ntis/uilib
```

## Usage

```tsx
import React, { Component } from 'react'

import MyComponent from '@ntis/uilib'
import '@ntis/uilib/dist/index.css'

class Example extends Component {
  render() {
    return <MyComponent />
  }
}
```

## License

MIT © [](https://github.com/)
npm package: @ntix/validating
Description: a small validator
Author: Anthony Johnston
Latest version: 2.3.0

![build](https://github.com/ntix/validating/workflows/Build/badge.svg)
[![Known Vulnerabilities](https://snyk.io/test/github/ntix/validating/badge.svg)](https://snyk.io/test/github/ntix/validating)
[![npm version](https://badge.fury.io/js/%40ntix%2Fvalidating.svg)](https://badge.fury.io/js/%40ntix%2Fvalidating)

[Documentation](https://ntix.github.io/validating/)

For examples see the tests

this is a good start [/src/validator.spec.ts](https://github.com/ntix/validating/blob/master/src/validator.spec.ts)
npm package: @ntjhkj/official-mobile
Description: > 描述
Author: iamgx
Latest version: 1.0.1

# 教培助手微官网

> 描述

#### Installtion

```bash
npm i @ntjhkj/official-mobile
```

#### Usage

```js
import Vue from 'vue'
import Official from '@ntjhkj/official-mobile'

Vue.use(Official)

h(this.active, {
  on: {
    'nav-click': a => console.log('点击菜单', a),
    'activity-click': a => console.log('点击活动', a),
    'dynamic-click': a => console.log('点击动态', a),
    'teacher-click': a => console.log('点击师资力量', a),
    'student-click': a => console.log('点击优秀学员', a),
    'cloud-click': a => console.log('点击课程介绍', a),
    'friend-click': a => console.log('点击合作伙伴', a)
  },
  props: {
    options: this.tabs.find(t => t.name === this.active).data,
    renderSwiper: (images = []) => h('swiper', { props: { images } })
  }
})
```
npm package: @ntkog/koop-provider-csv
Description: Alternative csv koop provider
Author: Jorge Barrachina Gutiérrez
Latest version: 1.0.0

# koop-provider-csv-ntkog



## Additional Features

- Better support for NodeJS streams
- Improved Performance
- proper handling of base filepath (from **process.cwd()**) for local files
- proper parsing for geographic fields (**csv-reader** fails in some cases)
- Refactored


## Installation

with npm

```bash
npm install ntkog/koop-provider-csv
```

with [Koop CLI](https://github.com/koopjs/koop-cli) for your Koop app

`bash koop add koop-provider-csv-ntkog`

## Usage

Once installed, this provider enables routes like

```
/koop-provider-csv/:id/FeatureServer/*
```

where `id` is the unique ID for a source CSV defined in the configuration file.

For example, this route allows to query a CSV file with ID `my-csv`:

```
/koop-provider-csv/my-csv/FeatureServer/0/query
```

## Configuration

This provider is configured with [config](https://github.com/lorenwest/node-config) and all configuration files are in the `config` directory.

A configuration looks like this:

```javascript
{
  // configuration namespace for this provider plugin
  "koop-provider-csv": {
    // define one or multiple CSV sources
    "sources": {
      // a unique ID for each source, which is used in the query route
      "my-data": {
        // [required] a file path or a URL for the source CSV.
        // Path is relative to process.cwd() .
        "url": "path_to_csv",
        // [required] point coordinate columns
        "geometryColumns": {
          "longitude": "longitude_column_name",
          "latitude": "latitude_column_name"
        },
        // [optional] delimiter character
        "delimiter": ",",
        // [optional] ArcGIS service metadata
        "metadata": {
          "idField": "id_column_name"
        }
      }
    }
  }
}

```

See `config/example.json` for a full example.

## Development

### Run dev server

```bash
$ npm start
```

A dev server will be running at `http://localhost:8080`. By default, it will use with `NODE_ENV=dev` and the dev configuration `config/dev.json` should be created beforehand.

### Run tests

```bash
$ npm test
```

## License

MIT