muxmait


Namemuxmait JSON
Version 0.1.4 PyPI version JSON
download
home_pageNone
SummaryAI-powered shell assistant that uses tmux
upload_time2024-12-19 21:32:53
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/c7/54/0d99979a012b74b40a3c2b14fb4faaa58e48d9414b4c76dd8888eb2490c9/muxmait-0.1.4.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.4",
    "project_urls": {
        "Homepage": "https://github.com/elijahknaperek/muxmait"
    },
    "split_keywords": [
        "ai",
        " shell",
        " tmux",
        " assistant",
        " terminal",
        " muxmait",
        " mait"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b2fb1e1b2c6127056d1bb502730c4c9b714c2329e14f30475bb81f02c75d93cc",
                "md5": "d96ff027619a07a2213559993086aea5",
                "sha256": "0f54cd961d95dc0d957fb7dacb4e86c21ac0608a885767fa67bebc16abe1e4d3"
            },
            "downloads": -1,
            "filename": "muxmait-0.1.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d96ff027619a07a2213559993086aea5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 20471,
            "upload_time": "2024-12-19T21:32:50",
            "upload_time_iso_8601": "2024-12-19T21:32:50.988254Z",
            "url": "https://files.pythonhosted.org/packages/b2/fb/1e1b2c6127056d1bb502730c4c9b714c2329e14f30475bb81f02c75d93cc/muxmait-0.1.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c7540d99979a012b74b40a3c2b14fb4faaa58e48d9414b4c76dd8888eb2490c9",
                "md5": "59a53ca2888eef201e9cfa1dd3615abb",
                "sha256": "9f7ce5745bd8c99e7f0e6c53affbdc8cf64b3c782818a921f7125c6eef12e87f"
            },
            "downloads": -1,
            "filename": "muxmait-0.1.4.tar.gz",
            "has_sig": false,
            "md5_digest": "59a53ca2888eef201e9cfa1dd3615abb",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 19950,
            "upload_time": "2024-12-19T21:32:53",
            "upload_time_iso_8601": "2024-12-19T21:32:53.391192Z",
            "url": "https://files.pythonhosted.org/packages/c7/54/0d99979a012b74b40a3c2b14fb4faaa58e48d9414b4c76dd8888eb2490c9/muxmait-0.1.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-19 21:32:53",
    "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.41193s