MCPcopy Index your code
hub / github.com/8go/matrix-commander-rs

github.com/8go/matrix-commander-rs @v1.0.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0.1 ↗ · + Follow
210 symbols 462 edges 5 files 153 documented · 73%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

crates.io - Version crates.io - Downloads

MC logo

matrix-commander-rs

simple but convenient CLI-based Matrix client app for sending, receiving, and much more

Help create this Rust program

This Rust project is currently bare essentials. A more feature-rich Python package matrix-commander exists. See matrix-commander. The vision is to have a compatible program in Rust. This project depends on you. The project will only advance if you provide some code. Have a look at the repo matrix-commander-rs. Please help! :pray: Please contribute code to enhance this matrix-commander crate. Safe!

:heart: :clap: :pray:

What works so far

  • Login with password
  • Login with access token (restore login)
  • Encryption
  • Manual and Emoji verification
  • Sending one or multiple text message to one or multiple rooms
  • Sending one or multiple text message to one or multiple rooms
  • Listening for new and incoming messages on one or multiple rooms
  • Getting and printing old messages
  • Listing devices
  • Creating, leaving and forgetting rooms
  • Kicking, banning, etc. on rooms
  • Getting, setting and removing user avatar
  • Getting room info
  • Logout and removal of device
  • Things like argument parsing, logging, output in JSON format, etc.
  • Creating a brand new client, sending a message and destroying the client all in a single command. This send-and-forget command is: matrix-commander-rs --login password --user-login @john:some.homeserver.org --homeserver https://some.homeserver.org --password secret --device matrix-commander-rs --room-default \!someRoomId:some.homeserver.org --message Hello --logout me.

What you can do

  • Give a :star: on GitHub. The more stars on GitHub, the more people will see the project. Do it now, thanks. :clap:
  • Talk about it to your friends, post it in chatrooms, Hacker News, etc. This will give exposure and help find people willing to provide code, contributions, and PRs.
  • Write code yourself. :rocket: Features that you might want to code:
  • implement login via SSO
  • add --proxy (see Python documentation)
  • add --nossl (see Python documentation)
  • add --event (see Python documentation and JSON config file in Python repo)
  • add --download-media (see Python documentation)
  • add other features found in the Python version to the Rust version
  • ...

Contributors :clap:

  • These are the first contributors: https://github.com/sasa-tomic, https://github.com/jknedlik, https://github.com/dwattttt,
  • Who will be next?
  • Add your name here.

Manual

See help/manual.txt.

Core symbols most depended-on inside this repo

as_ref
called by 20
src/main.rs
is_none
called by 18
src/main.rs
replace_minus_with_default_room
called by 12
src/main.rs
convert_to_full_room_ids
called by 12
src/mclient.rs
print_json
called by 10
src/mclient.rs
whoami
called by 5
src/main.rs
is_all
called by 4
src/main.rs
is_text
called by 4
src/main.rs

Shape

Function 170
Method 25
Enum 9
Class 6

Languages

Rust100%

Modules by API surface

src/main.rs124 symbols
src/mclient.rs65 symbols
src/listen.rs14 symbols
src/emoji_verify.rs7 symbols

For agents

$ claude mcp add matrix-commander-rs \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page