muxmait


Namemuxmait JSON
Version 0.1.3 PyPI version JSON
download
home_pageNone
SummaryAI-powered shell assistant that uses tmux
upload_time2024-11-05 21:54:42
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseGPLv3
keywords ai shell tmux assistant terminal muxmait mait
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # muxmait

A command-line tool that works with your tmux scrollback. It reads your tmux pane content and provides contextually aware command suggestions using various AI models through litellm.

## Features

- Reads your tmux pane content and sends it to your choice of AI model
- Automatically parses commands from AI responses and puts them into your prompt
- Optional Stack Exchange integration to provide additional context from relevant stack exchange google search.
- Terrible and poorly thought out features like auto-execution and recursive mode for automated system destruction.

## Installation

0. Make sure you have tmux.

1. Install required Python packages:
   ```bash
   pip install muxmait
   ```
2. Set up your API key for your chosen provider as an environment variable:
   The tool looks for API keys in environment variables based on the chosen model:
   ```bash
   # Example API key setup
   export OPENROUTER_API_KEY="your-key-here"
   export ANTHROPIC_API_KEY="your-key-here"
   export GEMINI_API_KEY="your-key-here"
   export TOGETHER_API_KEY="your-key-here"
   export XAI_API_KEY="your-key-here"
   ```
   - And any others supported by litellm

## Usage

Basic usage:
```bash
mait [options] [input]
```

### Options

- `-A`, `--auto`: Automatically execute the suggested command (use with caution)
- `-r`, `--recursive`: Add `;mait` to the end of suggested commands for continuous operation
- `-m MODEL`, `--model MODEL`: Choose AI model (Can select by shorthand for some models eg.'cs' for claude-3-5-sonnet-latest or 'gf' for gemini/gemini-1.5-flash-latest  )
- `-q`, `--quiet`: Only output the command without explanation
- `-v`, `--verbose`: Enable verbose mode with detailed output
- `--debug`: Run in debug mode (skips API request)
- `-t TARGET`, `--target TARGET`: Specify target TMux pane (default: current pane)
- `--log FILE`: Log all output to specified file
- `--log-commands FILE`: Log only commands to specified file
- `--file FILE`: Read additional input from specified file
- `-S LINES`, `--scrollback LINES`: Number of scrollback lines to include from tmux (default: 0)
- `--system-prompt FILE`: Use custom system prompt from file
- `--delay SECONDS`: Set delay before auto-execution (default: 2.0 seconds)
- `-c`, `--add-stackexchange`: Add relevant context from Stack Exchange
- `-M MODEL`, `--model-stackexchange MODEL`: Specify model for Stack Exchange search query generation (default: gemini/gemini-1.5-flash-latest)

### Examples

1. Basic command suggestion based on visible terminal content:
   ```bash
   mait
   ```

2. Get a suggestion for a specific task:
   ```bash
   mait how to find large files
   ```

3. Use a specific model by name or shorthand:
   ```bash
   mait -m cs how do I automate these commands
   # or
   mait -m anthropic/claude-3-5-sonnet-latest how do I automate these commands
   ```

4. Include Stack Exchange context with custom model:
   ```bash
   mait -c -M gemini/gemini-1.5-pro-latest how to compress images in bulk
   ```

5. Auto-execute commands with auto and recursive mode(or don't):
   ```bash
   mait -A -r process these files  # DO NOT DO THIS
   ```

6. Include more context from terminal history:
   ```bash
   mait -S 100 why wont this compile
   ```

## Security Considerations

- **Review commands before execution**: Always review suggested commands before running them
- **Auto-execution risks**: The `-A` flag will execute commands without confirmation
- **Data privacy**: Be mindful that terminal content is sent to AI providers
- **API credentials**: Secure your API keys and avoid exposing them in scripts or logs
- **Recursive mode**: Use `-r` flag with extreme caution as it can create command loops

## Troubleshooting

- Enable verbose mode (-v) for detailed operation information
- Check API key environment variables if model requests fail

## Contributing

Contributions are welcome! Please feel free to submit issues and enhancement requests.

## License

GPL 3

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "muxmait",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "ai, shell, tmux, assistant, terminal, muxmait, mait",
    "author": null,
    "author_email": "Elijah Knaperek <elijahknaperek@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/37/9e/5470d2155104835d9bbf692890a54930964bd1a1d9246809a1c5c13d390b/muxmait-0.1.3.tar.gz",
    "platform": null,
    "description": "# muxmait\n\nA command-line tool that works with your tmux scrollback. It reads your tmux pane content and provides contextually aware command suggestions using various AI models through litellm.\n\n## Features\n\n- Reads your tmux pane content and sends it to your choice of AI model\n- Automatically parses commands from AI responses and puts them into your prompt\n- Optional Stack Exchange integration to provide additional context from relevant stack exchange google search.\n- Terrible and poorly thought out features like auto-execution and recursive mode for automated system destruction.\n\n## Installation\n\n0. Make sure you have tmux.\n\n1. Install required Python packages:\n   ```bash\n   pip install muxmait\n   ```\n2. Set up your API key for your chosen provider as an environment variable:\n   The tool looks for API keys in environment variables based on the chosen model:\n   ```bash\n   # Example API key setup\n   export OPENROUTER_API_KEY=\"your-key-here\"\n   export ANTHROPIC_API_KEY=\"your-key-here\"\n   export GEMINI_API_KEY=\"your-key-here\"\n   export TOGETHER_API_KEY=\"your-key-here\"\n   export XAI_API_KEY=\"your-key-here\"\n   ```\n   - And any others supported by litellm\n\n## Usage\n\nBasic usage:\n```bash\nmait [options] [input]\n```\n\n### Options\n\n- `-A`, `--auto`: Automatically execute the suggested command (use with caution)\n- `-r`, `--recursive`: Add `;mait` to the end of suggested commands for continuous operation\n- `-m MODEL`, `--model MODEL`: Choose AI model (Can select by shorthand for some models eg.'cs' for claude-3-5-sonnet-latest or 'gf' for gemini/gemini-1.5-flash-latest  )\n- `-q`, `--quiet`: Only output the command without explanation\n- `-v`, `--verbose`: Enable verbose mode with detailed output\n- `--debug`: Run in debug mode (skips API request)\n- `-t TARGET`, `--target TARGET`: Specify target TMux pane (default: current pane)\n- `--log FILE`: Log all output to specified file\n- `--log-commands FILE`: Log only commands to specified file\n- `--file FILE`: Read additional input from specified file\n- `-S LINES`, `--scrollback LINES`: Number of scrollback lines to include from tmux (default: 0)\n- `--system-prompt FILE`: Use custom system prompt from file\n- `--delay SECONDS`: Set delay before auto-execution (default: 2.0 seconds)\n- `-c`, `--add-stackexchange`: Add relevant context from Stack Exchange\n- `-M MODEL`, `--model-stackexchange MODEL`: Specify model for Stack Exchange search query generation (default: gemini/gemini-1.5-flash-latest)\n\n### Examples\n\n1. Basic command suggestion based on visible terminal content:\n   ```bash\n   mait\n   ```\n\n2. Get a suggestion for a specific task:\n   ```bash\n   mait how to find large files\n   ```\n\n3. Use a specific model by name or shorthand:\n   ```bash\n   mait -m cs how do I automate these commands\n   # or\n   mait -m anthropic/claude-3-5-sonnet-latest how do I automate these commands\n   ```\n\n4. Include Stack Exchange context with custom model:\n   ```bash\n   mait -c -M gemini/gemini-1.5-pro-latest how to compress images in bulk\n   ```\n\n5. Auto-execute commands with auto and recursive mode(or don't):\n   ```bash\n   mait -A -r process these files  # DO NOT DO THIS\n   ```\n\n6. Include more context from terminal history:\n   ```bash\n   mait -S 100 why wont this compile\n   ```\n\n## Security Considerations\n\n- **Review commands before execution**: Always review suggested commands before running them\n- **Auto-execution risks**: The `-A` flag will execute commands without confirmation\n- **Data privacy**: Be mindful that terminal content is sent to AI providers\n- **API credentials**: Secure your API keys and avoid exposing them in scripts or logs\n- **Recursive mode**: Use `-r` flag with extreme caution as it can create command loops\n\n## Troubleshooting\n\n- Enable verbose mode (-v) for detailed operation information\n- Check API key environment variables if model requests fail\n\n## Contributing\n\nContributions are welcome! Please feel free to submit issues and enhancement requests.\n\n## License\n\nGPL 3\n",
    "bugtrack_url": null,
    "license": "GPLv3",
    "summary": "AI-powered shell assistant that uses tmux",
    "version": "0.1.3",
    "project_urls": {
        "Homepage": "https://github.com/elijahknaperek/muxmait"
    },
    "split_keywords": [
        "ai",
        " shell",
        " tmux",
        " assistant",
        " terminal",
        " muxmait",
        " mait"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8b478c0d22977c6fc314bfeacf02bdd6a882b3799e5ea2a0319e97974ccfd52b",
                "md5": "1dc18de812280cdd282ee9a711a3f93d",
                "sha256": "7bada9a07ce9e1b86c47748571d0a4e9c2fba5a874e9ebf2789ac5a99ddcf505"
            },
            "downloads": -1,
            "filename": "muxmait-0.1.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1dc18de812280cdd282ee9a711a3f93d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 20432,
            "upload_time": "2024-11-05T21:54:41",
            "upload_time_iso_8601": "2024-11-05T21:54:41.164170Z",
            "url": "https://files.pythonhosted.org/packages/8b/47/8c0d22977c6fc314bfeacf02bdd6a882b3799e5ea2a0319e97974ccfd52b/muxmait-0.1.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "379e5470d2155104835d9bbf692890a54930964bd1a1d9246809a1c5c13d390b",
                "md5": "98ac53e3ca694d39ffc81b74206ed60b",
                "sha256": "a47fe3e13d24553cb6b7e6a0cb93db1f82bfae2f5d4e027a27fc0a9c7bae1a6d"
            },
            "downloads": -1,
            "filename": "muxmait-0.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "98ac53e3ca694d39ffc81b74206ed60b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 19901,
            "upload_time": "2024-11-05T21:54:42",
            "upload_time_iso_8601": "2024-11-05T21:54:42.705736Z",
            "url": "https://files.pythonhosted.org/packages/37/9e/5470d2155104835d9bbf692890a54930964bd1a1d9246809a1c5c13d390b/muxmait-0.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-05 21:54:42",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "elijahknaperek",
    "github_project": "muxmait",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "muxmait"
}
        
Elapsed time: 0.54245s