open-index/open-npm huggingface dataset:
npm package: @robot-inventor/eslint-config
Description: My ESLint config preset
Author: Robot-Inventor
Latest version: 11.1.9

# eslint-config

[@Robot-Inventor](https://github.com/Robot-Inventor/)'s ESLint config preset.

## Installation

Then, install the package:

```bash
npm install --save-dev @robot-inventor/eslint-config
```

## Usage

Add the following to your ``eslint.config.js`` file:

```javascript
// ESModule
import { eslintConfig } from "@robot-inventor/eslint-config";

export default eslintConfig;
```

```javascript
// CommonJS
const { eslintConfig } = require("@robot-inventor/eslint-config");

module.exports = eslintConfig;
```

If you don't need JSDoc rules, you can use the ``eslintConfigNoJSDoc`` instead.

```javascript
// ESModule
import { eslintConfigNoJSDoc } from "@robot-inventor/eslint-config";

export default eslintConfigNoJSDoc;
```

```javascript
// CommonJS
const { eslintConfigNoJSDoc } = require("@robot-inventor/eslint-config");

module.exports = eslintConfigNoJSDoc;
```

You can extend or override the config as needed.

```javascript
// ESModule
import { eslintConfig } from "@robot-inventor/eslint-config";

export default [
    ...eslintConfig,
    {
        rules: {
            // Your rules here
        }
    }
];
```

```javascript
// CommonJS
const { eslintConfig } = require("@robot-inventor/eslint-config");

module.exports = [
    ...eslintConfig,
    {
        rules: {
            // Your rules here
        }
    }
];
```
npm package: @robot-inventor/regex-syntax
Description: Grammar files for syntax highlight of regex.
Author: Robot-Inventor
Latest version: 4.1.0

# regex-syntax

Grammar files for syntax highlight of regex. The grammar files are automatically generated from [Linguist](https://github.com/github-linguist/linguist/)'s regex grammars.

> [!NOTE]
> You may also be interested in [shell-session-syntax](https://github.com/Robot-Inventor/shell-session-syntax/) for syntax highlight of shell sessions.

|                  Before                  |              After              |
| :--------------------------------------: | :-----------------------------: |
| ![before](docs/without-regex-syntax.png) | ![after](docs/regex-syntax.png) |

## Usage

To use regex-syntax in [Shiki.js](https://shiki.style/), please download ``./syntaxes/regex.tmLanguage.json`` or install the package and load it as a custom language grammar. Language name is ``regex`` and ``regexp``.

```bash
npm install @robot-inventor/regex-syntax
```

```typescript
import { getHighlighter } from "shiki";
// Directly import the downloaded file.
import regex from "./regex.tmLanguage.json";
// Or import the package.
import regex from "@robot-inventor/regex-syntax";

const code = `
^[a-zA-Z0-9.!#$%&'*+/=?^_\`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$
`.trim();

const highlighter = await getHighlighter({
    langs: [regex],
    themes: ["vitesse-dark"]
});

const html = highlighter.codeToHtml(code, {
    lang: "regex",
    theme: "vitesse-dark"
});

console.log(html);
```

## Update Grammar

To update the grammar file, run the following command. It automatically downloads the latest upstream grammar files and applies patches.

```bash
npm run build
```

## Grammar Sources

regex-syntax is generated by automatically applying patches to the following grammar file.

- [Linguist](https://github.com/github-linguist/linguist/) ([MIT License](https://github.com/github-linguist/linguist/blob/master/LICENSE))
npm package: @robot-inventor/tsconfig-base
Description: Robot-Inventor's `tsconfig.json` base file.
Author: Robot-Inventor
Latest version: 7.1.0

# tsconfig-base

This is a base `tsconfig.json` file for [Robot-Inventor](https://github.com/Robot-Inventor)'s TypeScript projects.

## Usage

```bash
npm install --save-dev @robot-inventor/tsconfig-base
```

Then, in your `tsconfig.json` file:

```json5
{
    "extends": "@robot-inventor/tsconfig-base/tsc.json"
}
```

- `@robot-inventor/tsconfig-base/tsc.json`: For use with the TypeScript compiler (`tsc`).
- `@robot-inventor/tsconfig-base/bundler.json`: For use with a bundler like Webpack.
- `@robot-inventor/tsconfig-base/react-emotion.json`: For use with React and Emotion.
npm package: @robot-resources/router
Description: Intelligent LLM routing proxy — cost optimization per message. Automatically selects the cheapest model capable of each task.
Author: Robot Resources Team
Latest version: 2.1.6

# @robot-resources/router

> Intelligent LLM cost optimization via local proxy.

Automatically route each LLM request to the cheapest model that can handle it. **60-90% cost savings** with no quality loss.

## Quick Start

```bash
# Run directly (no install needed)
npx @robot-resources/router start

# Or install globally
npm install -g @robot-resources/router
rr-router start
```

Set your API keys and point your agent to `http://localhost:3838` with `model: "auto"`.

## Requirements

- **Node.js** >= 18.0.0
- **Python** >= 3.10 (auto-detected; used for the routing engine)

On first run, the package automatically creates an isolated Python environment in `~/.robot-resources/.venv/` and installs the Router engine. Subsequent runs start instantly.

## How It Works

```
Your Agent (Claude Code, Cursor, etc.)
    |
    | POST /v1/chat/completions  (OpenAI-compatible)
    | model: "auto"
    v
┌─────────────────────────────┐
│  Robot Resources Router     │
│  localhost:3838              │
│                             │
│  1. Detect task type        │
│  2. Find cheapest model     │
│  3. Forward to provider     │
│  4. Track cost savings      │
└─────────────────────────────┘
    |
    v
  Anthropic / OpenAI / Google
```

Each message is classified (coding, reasoning, simple_qa, etc.) and routed to the cheapest model with sufficient capability for that task.

## Example Savings

```
Turn 1: "hello"                    → gemini-2.0-flash-lite        $0.0000
Turn 2: "what's 2+2?"              → gemini-2.0-flash-lite        $0.0000
Turn 3: "refactor this React code" → gpt-4o-mini                  $0.0002
Turn 4: "thanks, looks good"       → gemini-2.0-flash-lite        $0.0000
─────────────────────────────────────────────────────────────────────────
Total with RR:       $0.0002
Without RR (gpt-4o): $0.0075
Savings:             97%
```

## Configuration

Set provider API keys as environment variables:

```bash
export ANTHROPIC_API_KEY="sk-ant-..."
export OPENAI_API_KEY="sk-..."
export GOOGLE_API_KEY="..."
```

## CLI Commands

```bash
rr-router start              # Start proxy on localhost:3838
rr-router start --port 4000  # Custom port
rr-router status             # Show status
rr-router report weekly      # Cost savings report (7 days)
rr-router report monthly     # Cost savings report (30 days)
```

## Agent Integration

Point any OpenAI-compatible agent to the proxy:

```json
{
  "baseUrl": "http://localhost:3838",
  "model": "auto"
}
```

The proxy handles routing transparently. Your agent doesn't need to know about model selection.

## License

MIT
npm package: @robot_newt/koishi-plugin-guardiantalesbot
Description: hello world
Latest version: 0.0.1

# @robot-newt/koishi-plugin-guardiantalesbot

[![npm](https://img.shields.io/npm/v/@robot-newt/koishi-plugin-guardiantalesbot?style=flat-square)](https://www.npmjs.com/package/@robot-newt/koishi-plugin-guardiantalesbot)

hello world
npm package: @robota-sdk/agent-transport-headless
Description: Headless transport adapter for non-interactive InteractiveSession execution
Latest version: 3.0.0-beta.53

# @robota-sdk/agent-transport-headless

Headless transport adapter for non-interactive `InteractiveSession` execution. Used by `@robota-sdk/agent-cli` print mode (`-p`) to run one-shot prompts with structured output.

## Installation

```bash
npm install @robota-sdk/agent-transport-headless
```

## Usage

The headless runner is invoked via the CLI's print mode flag (`-p`). Three output formats are supported:

### Text (default)

Plain text output, suitable for piping:

```bash
robota -p "Explain this error"
robota -p "List all TypeScript files" | head -20
```

### JSON

Single JSON object with result and session metadata:

```bash
robota -p "Summarize the project" --output-format json
```

Output:

```json
{ "type": "result", "result": "...", "session_id": "abc-123", "subtype": "success" }
```

### Stream JSON

Newline-delimited JSON with real-time `content_block_delta` events, followed by a final result:

```bash
robota -p "Write a function" --output-format stream-json
```

Each line is a JSON object:

```json
{
  "type": "stream_event",
  "event": { "type": "content_block_delta", "delta": { "type": "text_delta", "text": "..." } },
  "session_id": "abc-123",
  "uuid": "..."
}
```

### Stdin Pipe

When no positional argument follows `-p`, input is read from stdin:

```bash
echo "Explain this code" | robota -p
cat error.log | robota -p "What went wrong?"
git diff | robota -p "Review this diff" --output-format json
```

### System Prompt Flags

```bash
robota -p "query" --system-prompt "You are a code reviewer"
robota -p "query" --append-system-prompt "Focus on security issues"
```

## API

```typescript
import { createHeadlessRunner } from '@robota-sdk/agent-transport-headless';

const runner = createHeadlessRunner({
  session, // InteractiveSession from @robota-sdk/agent-sdk
  outputFormat, // 'text' | 'json' | 'stream-json'
});

const exitCode = await runner.run(prompt);
process.exit(exitCode);
```

## ITransportAdapter

The headless transport implements the `ITransportAdapter` interface from `@robota-sdk/agent-sdk`:

```typescript
import { createHeadlessTransport } from '@robota-sdk/agent-transport-headless';
import type { ITransportAdapter } from '@robota-sdk/agent-sdk';

const transport: ITransportAdapter = createHeadlessTransport({
  outputFormat: 'json',
  prompt: 'List all files',
});

transport.attach(interactiveSession);
await transport.start(); // Runs the prompt and writes output
const exitCode = transport.getExitCode();
```

## Exit Codes

| Code | Meaning |
| ---- | ------- |
| 0    | Success |
| 1    | Error   |

## Documentation

See [docs/SPEC.md](./docs/SPEC.md) for the full specification.

## License

MIT
npm package: @robota-sdk/agent-transport-mcp
Description: MCP transport adapter for exposing InteractiveSession as an MCP server
Latest version: 3.0.0-beta.53

# @robota-sdk/agent-transport-mcp

MCP transport adapter for exposing `InteractiveSession` as a Model Context Protocol server. Allows MCP-compatible clients (Claude, other agents) to interact with a Robota agent via the standard MCP tool protocol.

## Installation

```bash
pnpm add @robota-sdk/agent-transport-mcp
```

## Usage

```typescript
import { createAgentMcpServer } from '@robota-sdk/agent-transport-mcp';
import type { InteractiveSession } from '@robota-sdk/agent-sdk';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';

const mcpServer = createAgentMcpServer({
  name: 'robota-agent',
  version: '1.0.0',
  session: interactiveSession,
});

// Connect via stdio (subprocess / Claude Desktop)
await mcpServer.connect(new StdioServerTransport());
```

## MCP Tools

Each tool maps directly to an `InteractiveSession` operation or a system command.

| Tool Name         | Input                | Description                             |
| ----------------- | -------------------- | --------------------------------------- |
| `submit`          | `{ prompt: string }` | Submit a prompt, wait for full response |
| `command_help`    | `{ args?: string }`  | Show available commands                 |
| `command_clear`   | `{ args?: string }`  | Clear conversation history              |
| `command_compact` | `{ args?: string }`  | Compress the context window             |
| `command_mode`    | `{ args?: string }`  | Show or change permission mode          |
| `command_model`   | `{ args?: string }`  | Change the active AI model              |
| `command_context` | `{ args?: string }`  | Show context window info                |
| ...               | ...                  | One tool per registered system command  |

The `submit` tool waits for the session to reach `complete` or `interrupted` state before returning, so MCP clients receive a single text response rather than a stream.

## ITransportAdapter

The MCP transport implements the `ITransportAdapter` interface from `@robota-sdk/agent-sdk`:

```typescript
import { createMcpTransport } from '@robota-sdk/agent-transport-mcp';
import type { ITransportAdapter } from '@robota-sdk/agent-sdk';

const transport: ITransportAdapter = createMcpTransport({
  name: 'robota-agent',
  version: '1.0.0',
});

transport.attach(interactiveSession);
await transport.start();

// Access the underlying MCP server
const server = transport.getServer();
```

## Dependencies

- `@robota-sdk/agent-sdk` — `InteractiveSession`
- `@modelcontextprotocol/sdk` — MCP server implementation
- `zod` — input schema definitions
npm package: @robota-sdk/core
Description: ⚠️ DEPRECATED: This package has been deprecated. Please use @robota-sdk/agents instead.
Author: Robota SDK Team
Latest version: 2.0.3
Deprecated: This package has been deprecated. Please use @robota-sdk/agents instead.

# @robota-sdk/core

⚠️ **DEPRECATED - This package has been deprecated**

This package has been **deprecated** and is no longer maintained. All functionality has been moved to `@robota-sdk/agents`.

## Migration Guide

Please migrate to `@robota-sdk/agents` for the latest features and improvements:

### Before (deprecated)
```typescript
import { Robota, OpenAIProvider } from '@robota-sdk/core';

const robota = new Robota({
  provider: new OpenAIProvider({ apiKey: 'sk-...' }),
  model: 'gpt-4'
});
```

### After (recommended)
```typescript
import { Robota } from '@robota-sdk/agents';
import { OpenAIProvider } from '@robota-sdk/openai';

const robota = new Robota({
  name: 'MyAgent',
  aiProviders: [new OpenAIProvider({ apiKey: 'sk-...' })],
  defaultModel: {
    provider: 'openai',
    model: 'gpt-4'
  }
});
```

## What's Changed

- **Core Agent**: Moved to `@robota-sdk/agents`
- **AI Providers**: Moved to separate packages (`@robota-sdk/openai`, `@robota-sdk/anthropic`, `@robota-sdk/google`)
- **Tools**: Integrated into `@robota-sdk/agents`
- **Plugins**: Enhanced plugin system in `@robota-sdk/agents`

## Installation

**⚠️ Do not install this package for new projects**

For existing projects, migrate to:
```bash
npm install @robota-sdk/agents @robota-sdk/openai
```

## Documentation

- [Migration Guide](https://robota.io/migration)
- [New Documentation](https://robota.io/docs)
- [API Reference](https://robota.io/api)

## Support

This package will no longer receive updates. Please use `@robota-sdk/agents` instead.

## License

MIT
npm package: @robota-sdk/google
Description: Google AI integration for Robota SDK - Gemini Pro, Gemini Flash, function calling, and tool integration with Google's Generative AI
Author: Robota SDK Team
Latest version: 2.0.9

# @robota-sdk/google

Google AI integration for the Robota SDK, providing seamless access to Google's Gemini models.

## Features

- **Gemini Models**: Support for Gemini 1.5 Pro, Gemini 1.5 Flash, and other Google AI models
- **Streaming Support**: Real-time response streaming for enhanced user experience
- **Function Calling**: Full support for Google AI function calling capabilities
- **TypeScript**: Complete type safety with TypeScript support
- **Unified API**: Consistent interface across all Robota SDK providers

## Installation

```bash
npm install @robota-sdk/google @robota-sdk/agents
```

## Quick Start

```typescript
import { GoogleProvider } from '@robota-sdk/google';
import { Robota } from '@robota-sdk/agents';

// Initialize the Google provider
const provider = new GoogleProvider({
  apiKey: process.env.GOOGLE_AI_API_KEY
});

// Create a Robota instance
const robota = new Robota({
  name: 'GoogleAgent',
  aiProviders: [provider],
  defaultModel: {
    provider: 'google',
    model: 'gemini-1.5-pro',
    systemMessage: 'You are a helpful AI assistant.'
  }
});

// Start chatting
const response = await robota.run('Hello, how can you help me today?');
console.log(response);
```

## Configuration

```typescript
const provider = new GoogleProvider({
  apiKey: 'your-google-ai-api-key'
});

// Model configuration is set in Robota's defaultModel
const robota = new Robota({
  name: 'GoogleAgent',
  aiProviders: [provider],
  defaultModel: {
    provider: 'google',
    model: 'gemini-1.5-pro', // or 'gemini-1.5-flash'
    temperature: 0.7,
    maxTokens: 1000
  }
});
```

## Supported Models

- `gemini-1.5-pro` - Most capable model for complex tasks
- `gemini-1.5-flash` - Fast and efficient for simpler tasks
- `gemini-pro` - Previous generation model

## Environment Variables

```bash
GOOGLE_AI_API_KEY=your_google_ai_api_key_here
```

## Documentation

For complete documentation, examples, and API reference, visit:
- [Robota SDK Documentation](https://robota.io/)
- [Google AI Documentation](https://ai.google.dev/)

## License

MIT License - see LICENSE file for details.
npm package: @robota-sdk/tools
Description: ⚠️ DEPRECATED: This package has been deprecated. Please use @robota-sdk/agents instead.
Author: Robota SDK Team
Latest version: 2.0.3
Deprecated: This package has been deprecated. Please use @robota-sdk/agents instead.

# @robota-sdk/tools

⚠️ **DEPRECATED - This package has been deprecated**

This package has been **deprecated** and is no longer maintained. All tool functionality has been integrated into `@robota-sdk/agents`.

## Migration Guide

Please migrate to `@robota-sdk/agents` for the latest tool management features:

### Before (deprecated)
```typescript
import { createZodFunctionToolProvider } from '@robota-sdk/tools';
import { Robota } from '@robota-sdk/core';

const toolProvider = createZodFunctionToolProvider({
  tools: {
    getWeather: {
      schema: weatherSchema,
      handler: weatherHandler
    }
  }
});

const robota = new Robota({ provider: toolProvider });
```

### After (recommended)
```typescript
import { createZodFunctionTool, Robota } from '@robota-sdk/agents';
import { OpenAIProvider } from '@robota-sdk/openai';

const weatherTool = createZodFunctionTool(
  'getWeather',
  'Get weather information',
  weatherSchema,
  weatherHandler
);

const robota = new Robota({
  name: 'MyAgent',
  aiProviders: [new OpenAIProvider({ apiKey: 'sk-...' })],
  defaultModel: {
    provider: 'openai',
    model: 'gpt-4'
  },
  tools: [weatherTool]
});
```

## What's Changed

- **Function Tools**: Now `createZodFunctionTool` in `@robota-sdk/agents`
- **Tool Registry**: Integrated into agent system
- **Tool Validation**: Enhanced with better error handling
- **Tool Execution**: Improved performance and reliability
- **MCP Tools**: Available through `@robota-sdk/agents`

## Installation

**⚠️ Do not install this package for new projects**

For existing projects, migrate to:
```bash
npm install @robota-sdk/agents
```

## Key Migration Changes

| Old (@robota-sdk/tools) | New (@robota-sdk/agents) |
|-------------------------|--------------------------|
| `createZodFunctionToolProvider` | `createZodFunctionTool` |
| `createMcpToolProvider` | `createMcpToolProvider` |
| Tool providers | Individual tools |
| Separate package | Integrated into agents |

## Documentation

- [Tool Migration Guide](https://robota.io/migration/tools)
- [Tool Documentation](https://robota.io/docs/tools)
- [API Reference](https://robota.io/api/agents/tools)

## Support

This package will no longer receive updates. Please use `@robota-sdk/agents` instead.

## License

MIT
npm package: @robotalienunicorn/mui-formik
Description: Bleeding edge Formik Material-UI Bindings. `material-ui@next` and Formik name only binds. Check out the storybook.
Author: robotalienunicorn
Latest version: 2.0.1

# mui-formik

> Bleeding edge Formik Material-UI Bindings. `material-ui@next` and Formik name only binds. [Check out the storybook](https://robotalienunicorn.github.io/mui-formik/). Purely functional with react hook bindings to formik

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

```bash
yarn add @robotalienunicorn/mui-formik
```

## Usage

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

import { DateTimePicker } from 'mui-formik'
import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';
import { LocalizationProvider } from '@mui/x-date-pickers';
import { Formik, Form } from 'formik'

function Example() {
  return (
    <LocalizationProvider dateAdapter={AdapterDateFns}>
      <Formik
        onSubmit={(values) => {
          console.log(values.date)
        }}
      >
        <Form>
          <DateTimePicker name='date' />
        </Form>
      </Formik>
    </LocalizationProvider>
  )
}
```

## License

MIT © [robotalienunicorn](https://github.com/robotalienunicorn)