Skip to main content

Sysaidmin

Sysaidmin is an LLM-powered sysadmin for your machine. You can ask it to solve a problem, and it will run commands on your system (with your permission) to debug what's going on.

Installation

Using uv (recommended):

$ uv tool install sysaidmin

Or, to run directly:

$ uvx sysaidmin

Using pip (less recommended, but still good):

$ pip install sysaidmin

Specify your OpenAI API key:

$ export SYSAIDMIN_API_KEY=sk-youropenaiapikeygoeshere

Then run Sysaidmin with your issue:

$ sysaidmin "The foo process is emailing me and I don't know why."

Using other models

Any model that supports the OpenAI Chat Completions API can be used. For example, to use Google Gemini:

> sysaidmin --api-key=$GEMINI_API_KEY -m gemini-2.5-flash-preview-04-17 \
  -b "https://generativelanguage.googleapis.com/v1beta/openai" \
  "How do I list files?"

Environment variables

You can use the following environment variables in place of parameters:

  • SYSAIDMIN_BASE_URL: The base URL for the service.
  • SYSAIDMIN_API_KEY: The API key.
  • SYSAIDMIN_MODEL: The model to use.

Sample run:

$ sysaidmin "Whenever I try to SSH to localhost on port 22, it doesn't work. Can you fix it?"

==============================
Running command: ssh localhost
==============================
Press any key to continue, Ctrl-C to terminate...

ssh: connect to host localhost port 22: Connection refused


==============================
Running command: systemctl status sshd
==============================
Press any key to continue, Ctrl-C to terminate...

● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2023-11-26 18:40:45 EET; 25s ago
       Docs: man:sshd(8)
             man:sshd_config(5)
    Process: 92469 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
   Main PID: 92471 (sshd)
      Tasks: 1 (limit: 18824)
     Memory: 1.7M
        CPU: 9ms
     CGroup: /system.slice/ssh.service
             └─92471 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups"

Νοε 26 18:40:45 zeus systemd[1]: Starting OpenBSD Secure Shell server...
Νοε 26 18:40:45 zeus sshd[92471]: Server listening on 0.0.0.0 port 8122.
Νοε 26 18:40:45 zeus sshd[92471]: Server listening on :: port 8122.
Νοε 26 18:40:45 zeus systemd[1]: Started OpenBSD Secure Shell server.


==============================
It appears that your SSH server is running, but it is not listening on the default SSH
port 22. Instead, it is listening on port 8122 for both IPv4 and IPv6 connections, as
indicated by the line "Server listening on 0.0.0.0 port 8122" and "Server listening on
:: port 8122."

To connect via SSH to localhost, you need to specify port 8122. You can do that by using
the following command:

```bash
ssh -p 8122 localhost
```

Try running this command, and it should allow you to connect to the SSH server running
on your local machine.
==============================

Your response: No, please change the port

==============================
Running command: sudo sed -i 's/#Port 22/Port 22/' /etc/ssh/sshd_config && sudo systemctl restart ssh
==============================
Press any key to continue, Ctrl-C to terminate...
^C

Release files for sysaidmin 0.2.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sysaidmin 0.2.5
File Size Uploaded
sysaidmin-0.2.5.tar.gz 138.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sysaidmin 0.2.5
File Interpreter ABI Platform
sysaidmin-0.2.5-py3-none-any.whl Python 3 none any Details

Total release size: 155.7 kB

Release files / sysaidmin-0.2.5.tar.gz

Download URL sysaidmin-0.2.5.tar.gz
Size 138.6 kB
Tags Source
SHA-256 checksum
How to use checksums
77c40710cead7bdcc6cb98b38d74dd05e1e1c24dbc450e3b983869a7c06da91f
BLAKE2b-256 checksum
How to use checksums
01d8f2b32cc85a544d1487bbdda7ec48d214c0e551d2d0ae6bbbb49d707fe297
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.12

Release files / sysaidmin-0.2.5-py3-none-any.whl

Download URL sysaidmin-0.2.5-py3-none-any.whl
Size 17.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f82026d920092f6bc093c12229ce5f56b6085304119236b32f90cf28c94ae257
BLAKE2b-256 checksum
How to use checksums
8d49b551690e7edfba4a1cb492ef8bfe45ad73efd46cf48d858ec16cfee26213
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.12

Release history Release notifications | RSS feed

This release

0.2.5 This release

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page