Repository navigation
Commands ai
Reviewed against Mediabot 3.6dev-20261006_084503 (snapshot of 6 October 2026). This is the development-line reference; consult the tagged source for stable-release behaviour.
Examples use !; replace it with the configured trigger (m, #, etc.). See notation, transport and permissions. Each entry names its registered IRC surfaces; a handler accepting a private context does not itself make a name callable by PM. Plugin and dynamic-command policy may add restrictions.
ai · chatgpt · claude · gemini · hailo · hailo_chatter · hailo_ignore · hailo_status · hailo_unignore · openai · recap · tellme
Ask Claude in at most two IRC-rendered lines. Subcommands: [#channel] summary (Administrator+; Master+ to publish another channel here) [periode] [N] [Nl] [public] [en/fr/es] [nick] (details: ai summary help), pin, relay, forget, models, stats, reset, history, ai persona.
Access: Master+. IRC surfaces: channel + private message.
!ai <prompt...>
!ai forget
!ai reset
!ai history
!ai quota
!ai stats
!ai model
!ai models
!ai persona [show|clear|text...]
!ai pin [clear|text...]
!ai relay <#channel> <prompt...>
!ai [#channel] summary [options...]
Channel prompts require +Claude and configured [anthropic]; PM is also registered. Ordinary generated responses are capped at two IRC-rendered lines. Personal state is per nick and channel/PM context. persona text is truncated to 400 characters; pin to 300. reset clears conversation history; forget clears history, persona, pin and activity context. history shows at most six recent context entries privately; quota reports the configured rate window. model reads the current model; models lists models without changing one. relay selects a known destination channel and uses its normal provider/channel policy. The privileged summary parser is detailed below.
Alias of tellme; the same options, defaults and checks apply.
Access: public. IRC surfaces: channel.
!chatgpt <prompt>
Alias of ai; the same options, defaults and checks apply.
Access: Master+. IRC surfaces: channel + private message.
!claude <prompt...>
!claude forget
!claude reset
!claude history
!claude quota
!claude stats
!claude model
!claude models
!claude persona [show|clear|text...]
!claude pin [clear|text...]
!claude relay <#channel> <prompt...>
!claude [#channel] summary [options...]
Ask Google Gemini in at most two IRC-rendered lines. Requires the per-channel +Gemini chanset.
Access: public. IRC surfaces: channel.
!gemini <prompt>
Uses [gemini] and channel +Gemini. Remaining text is the prompt; at most two IRC-rendered output lines. It is not registered as a built-in PM command.
Inspect Hailo policy, brain and private edit counters; save requires Owner.
Access: Master+; savebrain Owner. IRC surfaces: channel.
!hailo help
!hailo braininfo [#channel]
!hailo edits <#channel>
!hailo check <#channel> <ambient|mention|chatter> <text...>
!hailo savebrain <#channel>
braininfo may omit channel only in that channel; same-channel reports are public, cross-channel reports private. Counters describe the Hailo model, not archived original phrases. edits reads transient post-editor outcomes privately. check accepts 1–600 characters without controls and privately rehearses learn/reply exclusions and policy; it never learns, calls a provider or sends a reply. savebrain saves an existing brain and requires Owner. Selective forget/forgetword are design/rehearsal work and not implemented commands. The unrelated factoid forget command does not delete Hailo training.
Control Hailo chatter behavior.
Access: Master+. IRC surfaces: channel.
!hailo_chatter [#channel] [0..100]
Reads the ratio when omitted; writes the numeric ratio when present. It does not accept on/off. Enable/disable with chanset ±HailoChatter. The ratio is base percent and remains subject to Hailo policy, activity scaling and pacing.
Ignore a nick for Hailo learning or replies.
Access: Master+. IRC surfaces: channel.
!hailo_ignore <nick>
Changes Hailo nick exclusions through the legacy helper. It is separate from global/hostmask ignore, and does not selectively erase previously learned text.
Show channel-specific Hailo brain counters.
Access: Master+. IRC surfaces: channel.
!hailo_status [#channel]
Compact per-channel counters. In PM a target would be needed by the handler, but this name is only registered on the public surface in this snapshot.
Remove a nick from the Hailo ignore list.
Access: Master+. IRC surfaces: channel.
!hailo_unignore <nick>
Changes Hailo nick exclusions through the legacy helper. It is separate from global/hostmask ignore, and does not selectively erase previously learned text.
Show and change safe OpenAI/tellme runtime settings.
Access: Owner. IRC surfaces: channel.
!openai [status|config|help|defaults|profiles]
!openai <test|ping|diagnose> [prompt...]
!openai <models|model_list> [filter...]
!openai <profile|preset> <dev|compact|safe|default>
!openai explain <parameter>
!openai set <parameter> <value...>
!openai reset <parameter>
Default action is status. These safe parameter changes are runtime configuration; persist intended values in the private config for reload/restart. The API key is deliberately not changeable from IRC. The complete allowlist, bounds and parameter aliases are below. Model names/defaults here describe the supplied bot implementation, not a promise of provider availability.
Summarize what you missed on this channel (stats, or AI summary with 'ai'; the AI summary follows the channel language unless forced).
Access: public. IRC surfaces: channel.
!recap [<N>m|<N>h] [ai] [en|fr|es|lang=fr]
Options may be combined; unknown/duplicate options are refused. Without a window the handler uses your latest activity or the configured default (6h fallback), capped by RECAP_MAX_H (24h fallback). ai requests synthesis; otherwise statistics. The language option controls synthesis. This differs from Administrator-only ai summary and never invents a missing chat history.
Ask the configured ChatGPT/OpenAI integration; output is rendered for IRC in at most two lines.
Access: public. IRC surfaces: channel.
!tellme <prompt>
Uses [openai] and channel +chatGPT; chatgpt is the alias. All remaining text is the prompt. Ordinary output is at most two IRC-rendered lines. Model and generation settings are changed through Owner-only openai, not by an argument here.
Complete index · Command notation
!ai summary
!ai summary 25 4l fr
!ai summary yesterday nick=Alice 3l
!ai #other-channel summary 2h 3l en
!ai summary today public
Administrator+ is required. Put an explicit source channel before summary. Options after summary are order-independent; conflicting/invalid tokens are refused.
| Option | Accepted values | Meaning/default |
|---|---|---|
| Message count | Bare integer 5–50 | Default 10 recent messages when no period is selected. |
| Period |
today, yesterday, week, last, 1d–30d, 1h–72h
|
Calendar/sliding selection; last selects messages since the previous summary for that source channel, or today when none exists. |
| Output length |
1l–10l
|
Requested summary length; IRC rendering/flood bounds still apply. |
| Language |
en, fr, es; lang=en, lang:fr, etc. |
Source-channel language/config fallback if omitted. |
| Nick filter |
nick=Alice, nick:Alice, or an unambiguous bare nick |
Explicit form distinguishes a nick from reserved option words. |
| Public output |
public, pub
|
Default private NOTICE; public output goes to the issuing channel. Cross-channel public summary requires Master+. |
Selecting #other-channel reads that channel; it does not broadcast the result there. This parser differs from Partyline .ai summary [N], which selects the first joined channel. recap is a separate public recap command with its own time-window and ai options.
These values describe the reviewed bot code, not current provider pricing/model availability. explain reads the field’s help; set validates a value; reset restores its built-in default. Runtime changes do not rewrite mediabot.conf.
| Parameter | Aliases | Values / bounds | Built-in default |
|---|---|---|---|
api_url |
url, apiurl, endpoint
|
HTTPS URL, max 250 characters | https://api.openai.com/v1/chat/completions |
model |
— | 1–80 letters/digits/./_/:/-
|
gpt-4o-mini |
fallback_model |
fallback, fallbackmodel
|
Same model validator; empty set is refused, reset disables fallback |
Empty |
system_prompt |
prompt, system, systemprompt
|
10–800 normalized characters | Built-in helpful/serious/precise tone prompt |
temperature |
temp |
Decimal 0–2 | 0.7 |
max_tokens |
tokens, max_token
|
Integer 1–4000 | 400 |
max_privmsg |
privmsg, lines
|
Integer 1–2 IRC lines | 2 |
wrap_bytes |
wrap |
Integer 120–400 UTF-8 bytes | 400 |
sleep_us |
sleep, delay
|
Integer 0–2000000 microseconds | 750000 |
timeout |
http_timeout |
Integer 5–60 seconds | 20 |
Parameter names are case-normalized; -/. are normalized to _ before alias lookup. profile/preset choices are dev, compact, safe, default; inspect profiles for their runtime bundle. models/model_list [filter] lists available IDs without changing the current model. test/ping/diagnose [prompt] runs a bounded provider check; API keys are never accepted as command parameters.
Mediabot v3 documentation · Home · Installation · Commands · Troubleshooting · GitHub
- Start: notation and parameters
- Public commands
- Complete command reference
- Private and admin commands
- News and RSS
- Quotes and automatic quotes
- Dynamic commands
- AI and Hailo
- Access levels
- Chansets