Skip to content

IRCX v1.10.0: .agent + .ircx command split, live ircx.env config

Choose a tag to compare

@computator1200 computator1200 released this 24 Jun 21:19
· 25 commits to main since this release

Two command namespaces

Control the bot from a PM or in-channel (authorized users only). The previous .ircx <command> bridge was misleadingly named, so it is now split in two:

.agent <command> - the agent/gateway brain

Bridges to the central gateway slash commands: .agent model <name>, .agent reset, .agent reasoning high, .agent whoami, .agent status, and so on. .agent help lists them. (This is the renamed former .ircx bridge; set the prefix with IRCX_COMMAND_PREFIX.)

.ircx <command> - live adapter configuration

Configures this IRC plugin itself, on the fly:

  • .ircx list - every non-secret setting and its current value
  • .ircx get <key>
  • .ircx set <key> <value> - covers all non-secret options
  • .ircx restart - restart the gateway to apply connection-level changes

Hot keys (observe mode, mention policy, blocked channels, raw guardrails, spontaneous %, allowed users, ...) apply instantly. Connection keys (server, port, nickname, channel, networks, sasl_*, log_dir, context_buffer) save and prompt for .ircx restart. It is multi-network aware: it acts on the network the message arrived on. Set the prefix with IRCX_ADMIN_PREFIX.

Dedicated config file: ircx.env

The plugin's many IRCX_* options can now live in a dedicated dotenv file pointed to by IRCX_CONFIG_FILE (e.g. <profile>/ircx.env), loaded on top of the environment at startup. This declutters the main profile .env, and .ircx set persists changes there.

Secrets stay safe: connection passwords (SASL / NickServ / server) remain in the main .env, are shown as *** by .ircx get, and cannot be set from chat (the agent reads untrusted channel input, so credentials are kept out of its reach).

Upgrade notes

  • If you used .ircx model ... before, that is now .agent model ....
  • To adopt the separate config file, set IRCX_CONFIG_FILE=<profile>/ircx.env and move your non-secret IRCX_* lines into it (passwords stay in .env).