Limnoria Documentation

repository·master·Indexed 20 days ago

https://github.com/progval/limnoria

Limnoria is a multipurpose, flexible, and robust Python-based IRC bot designed to replace bots like Supybot. It features a powerful ACL system, a customizable configuration system, and a large ecosystem of built-in and third-party plugins. The documentation covers installation via pip, initial setup using supybot-wizard, and various CLI utilities for user management (limnoria-adduser, limnoria-reset-password), automation (limnoria-botchk), and plugin development (limnoria-plugin-create, limnoria-plugin-doc, limnoria-test).

Tokens
51.1K
Snippets
140
Records
264
Agent score
68%

What's inside Limnoria

  1. Overview of the User plugin

    master
    The User plugin is a core plugin for Limnoria (Supybot) that is loaded by default. It provides essential functionality for user management, including registration, authentication, and hostmask management. Because it handles core identity and permissions, it should not be removed.
  2. Overview of the Network plugin

    master
    The Network plugin provides tools for managing multiple IRC network connections. It allows the bot to connect, disconnect, and reconnect to various networks, as well as monitor connection health through latency and uptime metrics. It also supports executing commands across all connected networks simultaneously.
  3. Overview of the Success plugin

    master
    The Success plugin allows you to replace the default 'The operation succeeded.' message with custom, personable responses stored in a database. It is designed to provide more varied feedback for successful bot operations, similar to how the Dunno plugin handles 'no such command' replies.
  4. Overview of the Channel plugin

    master

    The Channel plugin is a core component of Limnoria (Supybot) that provides essential channel management capabilities. It is loaded by default and should not be removed, as it enables fundamental commands for managing IRC channels.

    Key features include:

    • Setting channel modes.
    • Managing channel-wide bans, ignores, and capabilities.
    • General channel administration.

    Note on Permissions: Many commands provided by this plugin require the caller to possess the #channel and op capabilities within the specific IRC channel.

  5. Overview of the AutoMode plugin

    master
    The AutoMode plugin automatically manages user modes (op, halfop, voice) or bans users when they join an IRC channel based on their predefined capabilities. It is useful for ensuring that trusted users receive appropriate permissions immediately upon joining a channel.
  6. Overview of the ChannelLogger plugin

    master
    The ChannelLogger plugin allows the Limnoria/Supybot bot to log conversations from individual IRC channels to separate logfiles on disk. It provides granular control over directory structures, log rotation, and how specific message types (like joins, parts, or away notifications) are recorded.
  7. Overview of the Lart plugin

    master

    The Lart (Luser Attitude Readjustment Tool) plugin maintains a database of 'larts'—predefined responses used to react to specific users or triggers. When a trigger is matched, the bot executes the associated response.

    Example Workflow:

    1. Define a lart: add slaps $who
    2. Trigger the lart: A user says @lart ChanServ
    3. Bot response: * bot slaps ChanServ
  8. Overview of the Protector plugin

    master
    The Protector plugin is a security layer for Supybot that defends IRC channels against unauthorized actions. It works by intercepting actions and preventing users from performing tasks they are not supposed to do, even if those users possess IRC operator status (+o) or half-op status (+h).
  9. Use the Math plugin for calculations and conversions

    master
    The Math plugin provides a suite of tools for performing arithmetic, base conversions, and unit conversions within IRC. It includes support for standard Python math syntax, Reverse Polish Notation (RPN), and integer-specific math for trusted users.