#
服务器插件
服务器插件是一种扩展 SillyTavern 服务器功能的方式。它们可以添加新的 API 端点、处理程序和其他功能。
#
创建插件
- 在
plugins
目录中创建一个新目录。目录名称将成为插件的名称。 - 在插件目录中创建一个
index.js
文件。这是插件的入口点。 - 在
index.js
中导出一个包含以下方法的对象:
module.exports = {
// 在服务器启动时调用
async init(app) {
// app 是 Express 应用程序实例
// 在这里添加您的路由和中间件
},
// 在服务器关闭时调用
async stop() {
// 在这里清理资源
}
}
#
示例插件
const express = require('express');
module.exports = {
async init(app) {
// 创建一个新的路由器
const router = express.Router();
// 添加一个新的 API 端点
router.get('/hello', (req, res) => {
res.json({ message: 'Hello from plugin!' });
});
// 将路由器挂载到 /api/plugins/[plugin-name]
app.use('/api/plugins/example', router);
},
async stop() {
// 清理代码
}
}
#
启用插件
要启用插件,请在 config.yaml
中添加以下内容:
plugins:
# 插件目录的名称
- example
#
插件 API
插件可以访问以下 API:
app
- Express 应用程序实例express
- Express 模块config
- 服务器配置对象jsonwebtoken
- JWT 模块,用于身份验证path
- Node.js path 模块fs
- Node.js fs 模块logger
- Winston 日志记录器实例