Skip to content

Commands ai

Teuk edited this page Oct 6, 2026 · 1 revision

AI and Hailo

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.

On this page

ai · chatgpt · claude · gemini · hailo · hailo_chatter · hailo_ignore · hailo_status · hailo_unignore · openai · recap · tellme

ai

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.

chatgpt

Alias of tellme; the same options, defaults and checks apply.

Access: public. IRC surfaces: channel.

!chatgpt <prompt>

claude

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...]

gemini

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.

hailo

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.

hailo_chatter

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.

hailo_ignore

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.

hailo_status

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.

hailo_unignore

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.

openai

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.

recap

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.

tellme

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 option reference

!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.

Owner OpenAI setting allowlist

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.

Clone this wiki locally