CLI for managing your Discord server via the guild-scoped API
Project description
antonio-cli
A command-line tool for managing your Discord server remotely — ban, kick, and send messages from your terminal, authenticated with a per-server API key.
Installation
pip install antonio-cli
Setup
Before using the CLI, generate an API key for your server by running a.api create in Discord. The key will be sent to you via DM — save it, it won't be shown again.
Then configure the CLI:
antonio configure
You'll be asked for:
- Your API key
- Your server (guild) ID
- The base URL for the API (has a default — just press enter if you're not sure)
This is a one-time setup per machine. The first request from a new device requires approval from the key owner (they'll get a DM with instructions) — after that, the device is trusted.
Usage
Look up a user's ID by username:
antonio lookup --user someuser
Ban a user:
antonio ban --user someuser --reason "spamming"
Kick a user:
antonio kick --user someuser --reason "rule violation"
You can also skip the username lookup if you already have the user's ID:
antonio ban --user-id 123456789012345678 --reason "spamming"
Send a message to a channel:
antonio msg --channel 111222333444555 --text "hello from the CLI"
Notes
- Each API key is scoped to a single server — a key generated for one server cannot be used against another.
- If a command returns a "waiting for approval" message, ask whoever holds the key to approve your device before retrying.
- Config is stored locally at
~/.antonio/config.jsonwith restricted file permissions.
Requirements
- Python 3.9+
- A valid API key generated by the bot for the server you want to manage
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file antonio_cli-0.1.0.tar.gz.
File metadata
- Download URL: antonio_cli-0.1.0.tar.gz
- Upload date:
- Size: 3.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30a17a2dc8549386ccf552a3129000dd0c49e5ad57877f44b44a968b4aa04dd7
|
|
| MD5 |
0f9c3a96a1308ce02ff096a9e9562e98
|
|
| BLAKE2b-256 |
03f73fe3017212b647966771c015e2ba48ec9d8e004381719855077cf37a4101
|
File details
Details for the file antonio_cli-0.1.0-py3-none-any.whl.
File metadata
- Download URL: antonio_cli-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6c543d1baa56998d94e4f69e1c2f333ec42f4085235e6b10bb1620b084b3195b
|
|
| MD5 |
3c19f4f0f5024a310276ec453c9b2225
|
|
| BLAKE2b-256 |
bcc77cb5fcaf2a006276b94344a084faadf24c59f3104d710d7fbc361026599b
|