ii-IRC

Polar Sponsor
爱发电 赞助
.NET 9.0

使用 ii(极简基于文件的 IRC 客户端)持久化 IRC 在线状态,支持事件驱动提及检测。适用于在 IRC 部署 AI 代理、监控频道、发送消息或通过 ii集成 OpenClaw。涵盖 ii 配置、提及监视器、systemd 服务以及消息收发。

ii- IRC: Evolution- Driven IRC for AI Agents. ii 将所有频道活动写入普通文件. 是一个用于引用和触发 OpenC

功能概述

ii- IRC: Evolution- Driven IRC for AI Agents. ii 将所有频道活动写入普通文件. 是一个用于引用和触发 OpenC是一项面向实际任务的技能,主要用于Respons通过写入发送 t。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。

核心要点

  • 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
  • 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
  • 从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。

使用与执行

实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。

结果检查与注意事项

执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

ii-IRC:面向 AI 代理的事件驱动型 IRC 客户端

ii 将所有频道活动写入纯文本文件。一个监听脚本持续监控消息中是否提及 Bot,并据此触发 OpenClaw 系统事件;Bot 的响应则通过向 FIFO 文件写入完成。

架构

~/irc/
├── irc.sh              # 管理脚本(启动/停止/状态查询/发送消息)
├── watch-daemon.sh     # 提及监听器 → 触发 openclaw 系统事件
└── /
    └── /
        ├── in          # FIFO 文件 — 向此写入可发送消息
        └── out         # 所有频道消息的仅追加日志

快速配置

1. 安装 ii

ii 已收录于多数包管理器中。Arch Linux 用户执行:pacman -S ii;Debian/Ubuntu 用户执行:apt install ii;也可从 suckless.org 源码构建。

2. 创建脚本

运行随附的配置脚本(将生成 ~/irc/irc.sh 和 ~/irc/watch-daemon.sh):

bash scripts/setup.sh --server irc.example.org --port 6667 --nick MyBot --channel "#mychannel"

或手动创建 — 参见 scripts/irc.sh.template 和 scripts/watch-daemon.sh.template。

3. 创建 systemd 用户服务(推荐)

实现开机自动启动:

mkdir -p ~/.config/systemd/user

# IRC 连接服务
cat > ~/.config/systemd/user/irc-bot.service << 'EOF'
[Unit]
Description=IRC connection (ii)
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
ExecStart=/usr/bin/ii -s SERVER -p PORT -n NICK -i %h/irc
ExecStartPost=/bin/bash -c 'sleep 3 && echo "/j CHANNEL" > %h/irc/SERVER/in'
Restart=always
RestartSec=10

[Install]
WantedBy=default.target
EOF

# 提及监听服务
cat > ~/.config/systemd/user/irc-watcher.service << 'EOF'
[Unit]
Description=IRC mention watcher
After=irc-bot.service
Wants=irc-bot.service

[Service]
Type=simple
ExecStart=%h/irc/watch-daemon.sh
Restart=always
RestartSec=5

[Install]
WantedBy=default.target
EOF

# 替换服务文件中的 SERVER、PORT、NICK、CHANNEL,然后执行:
systemctl --user daemon-reload
systemctl --user enable --now irc-bot.service irc-watcher.service

发送消息

# 通过管理脚本发送
~/irc/irc.sh send "Hello, world!"

# 或直接写入 FIFO
echo "Hello, world!" > ~/irc///in

重要提示:ii 在字节边界处截断长消息,可能导致单词或 UTF-8 字符被中途截断。请将单条消息控制在约 400 字符以内;如需发送更长内容,请拆分为多条消息,并在各条之间加入短暂延迟。

读取上下文

# 获取最近 N 条消息(对 token 使用高效)
tail -n 20 ~/irc///out

# 快速查看状态(最近 5 条消息)
~/irc/irc.sh status

切勿读取整个 out 文件 —— 其大小会无限增长。务必始终配合限制参数使用 tail。

提及检测原理

  1. watch-daemon.sh 对频道的 out 文件运行 tail -F
  2. 逐行检查新到达的消息(不区分大小写),判断是否包含 Bot 的昵称(nick)
  3. 跳过 Bot 自己发送的消息,以及用户加入/离开频道的通知
  4. 匹配成功时,执行:openclaw system event --text "IRC mention: " --mode now
  5. OpenClaw 被唤醒后,可通过 in FIFO 发送响应

该机制为事件驱动型 —— 无轮询、响应即时、资源开销极低。

加入多个频道

ii 支持在同一服务器上加入多个频道。每增加一个频道,请执行:

echo "/j #other-channel" > ~/irc//in

若需监听多个频道,可选择:为每个频道单独运行一个监听器实例,或修改 watch-daemon.sh 以同时监控多个 out 文件。

故障排查

  • 无法连接:确认 ii 正在运行(pgrep -f "ii -s"),并核对服务器地址与端口
  • 未成功加入频道:确保 in FIFO 已存在;检查 ExecStartPost 中的延时是否足够(必要时增大 sleep 时间)
  • 提及未触发响应:确认监听器正在运行(pgrep -f watch-daemon),并核实昵称拼写完全一致
  • 消息异常截断:缩短消息长度;ii 遵循 IRC 协议限制,单条消息上限约为 512 字节
  • 断线重连:由 systemd 的 Restart=always 自动处理;ii 在断连时退出,systemd 将立即重启它

相关专题

更多
Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

2026.11.06

0

12

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

2026.11.06

0

13

Postman接口请求发送教程
Postman接口请求发送教程

详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。

2026.11.06

0

10

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

0

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

0

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

0

16

XORM框架结构体映射与表结构同步
XORM框架结构体映射与表结构同步

本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 134.1万人学习