Code Monkey home page Code Monkey logo

koishi's Introduction

Koishi 是一个现代化跨平台机器人框架,目前可支持 QQTelegramDiscord 等多个平台。

这个项目的名字和图标来源于东方 Project 中的角色古明地恋 (Komeiji Koishi)。

快速上手

打开命令行,输入下面的指令,即可在当前目录下新建并启用一个带控制台的 Koishi 项目:

npm init koishi
# 或者
yarn create koishi

项目启动成功后,会自动为你打开一个浏览器界面,你可以使用界面中的控制台进行一系列操作,包括修改配置、安装插件和添加机器人。

特性

开箱即用的控制台

高度便利的控制台让你无需基础让你在几分钟之内搭建自己的聊天机器人。

  • 提供在线插件市场,即使没有 js 编程基础,也能轻松在控制台中下载安装插件
  • 支持 QQ,Telegram,Discord 等主流聊天平台,支持多账户和跨平台数据互通
  • 随时随机通过控制面板监控运行状态,控制机器人的行为,甚至上号聊天

参见:创建控制台项目

功能强大的 API

经过了几个版本的迭代,Koishi 已经发展出了丰富的 API,功能覆盖机器人领域的方方面面。从上层负责交互的指令、会话、中间件,再到中层负责控制的应用、上下文、插件,最后到底层的机器人和适配器,每一个部分都经过了精心的编写,可以让你轻松实现任何需求。如果担心在复杂的功能中迷失方向,我们也准备了细致的文档来提供帮助。

参见:API 文档

丰富的生态系统

官方提供了大量插件和解决方案,覆盖了绝大多数常见需求的同时,也为开发提供了绝佳的范例。

  • @koishijs/plugin-console:网页控制台
  • @koishijs/plugin-schedule:计划任务
  • @koishijs/plugin-teach:问答教学

除了这些官方插件以外,社区贡献者也编写了各种各样的第三方插件:

  • koishi-plugin-genshin:原神资料查询
  • koishi-plugin-ink:展示视觉小说
  • koishi-plugin-shell:执行终端命令

这些插件共同组成了 Koishi 如今的生态。

参见:官方插件

专为开发者打造

Koishi 更为开发者提供了众多专业功能,使开发者得以在各种复杂需求中构建规模化的解决方案。

类型支持

Koishi 完全基于 TypeScript 开发,拥有顶级的类型支持,丰富的代码提示让你在编写代码的时候甚至无需查看文档。

单元测试

所有核心功能均已经通过单元测试,既确保了可靠性,也为开发者提供了一套测试插件和定位问题的最佳实践。

模块热重载

开发 Koishi 插件时,只需轻点保存即可热重载,无需频繁重启机器人,如同前端开发一样丝滑顺畅。

官方插件

平台支持

静态资源存储

缓存支持

数据库支持

网页控制台

  • chat: 使用机器人账号聊天
  • console: 网页控制台
  • manager: 管理插件和机器人
  • status: 查看运行状态和统计数据

其他官方插件

  • admin: 操作用户数据和频道数据
  • common: 常用指令合集
  • eval: 对话机器人执行脚本
  • forward: 转发消息到其他频道
  • github: GitHub 相关功能
  • mock: 模拟消息、会话、网络请求
  • puppeteer: 网页截图和图片渲染
  • repeater: 复读机相关功能
  • schedule: 设置和执行计划任务
  • teach: 教学问答系统
  • verifier: 处理好友和群组请求

应用案例

欢迎向下面的列表中添加自己的插件或机器人。

社区插件

名称请链接到源码仓库,忽略前缀,按首字母排序。

名称 简介
adapter-minecraft Minecraft 适配器
assets-smms 使用 sm.ms 存储静态资源文件
chess 棋类游戏
dice 掷骰
image-search 图源搜索
pics 随机图片
rss RSS 订阅
srvpro-roomlist YGOPro 服务器房间列表查询
tabulate YGOCore 战队联盟友谊赛排表姬
tex TeX 渲染
thesaurus 基于 AnimeThesaurus 的机器人聊天插件
tools 小功能合集
ygocard YGOPro 卡查
ygotournament YGOPro 比赛主持辅助

社区项目

名称请链接到源码仓库,新项目请添加到列表结尾。

名称 简介
2bot 一个很 2 的 FFXIV bot
koishi-bootstrap Koishi 的 Docker 启动器
koishi-nestjs Nest.js 中使用 Koishi 开发规模化机器人应用
koishi-thirdeye 装饰器以及 DI 风格的 Koishi 插件开发框架
onebot-lb OneBot 负载均衡器
Afanyiyu/qa-bot 基于 plugin-teach 魔改的问答机器人,适用于客服 / 知识库等场景

使用协议

Koishi 完全使用 MIT 协议开源,维护良好的开源生态从我做起 (*>ω<)φ

Copyright © 2019-2022, Shigma

贡献指南

请看这里

联系方式

Discord

本群只交流程序开发,不欢迎伸手党,禁止谈论商业行为。

koishi's People

Contributors

shigma avatar undefined-moe avatar xxlittlecxx avatar simon300000 avatar anillc avatar purerosefallen avatar nwylzw avatar dragon-fish avatar ilharp avatar nn708 avatar idlist avatar thezzisu avatar wxh06 avatar h4m5ter avatar arily avatar mnixry avatar dgck81lnn avatar rakuzen25 avatar tsfreddie avatar freshylulu avatar mindxl avatar lolitaot avatar ddele avatar b11p avatar dynxer avatar jjyyxx avatar reikohaku avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.