1. 介绍
在这篇教程中,我们将学习如何创建一个简单的插件。我们将创建一个”Hello World”插件,这个插件只有一个功能:当用户输入”Hello World Say Hello”时,插件会回复”Hello, world!”。
2. 创建你的第一个插件2.1 使用构建API
是一个基于Node.js的web应用框架,它提供了一种简单而灵活的方式来创建web应用,包括API。我们选择使用,是因为它的简单性和灵活性,以及它强大的功能,如路由、中间件、模板引擎等。
例如,我们可以使用Node.js和来创建一个简单的API。首先,我们需要在一个新的文件(例如,.js)中编写以下代码:
const express = require('express');
const app = express();
const port = 3000;
app.use(express.static('public'));
app.get('/hello', (req, res) => {
res.json({ message: 'Hello World!' });
}); // 构建一个/hello的get方法
app.listen(port, () => {
console.log(`Server is running at :${port}`);
});
我们需要在根目录创建一个名为”的文件夹,用于存放后续需要用到的静态文件。
2.2 创建
接下来,我们需要创建一个插件清单( )。
插件清单( )是一个描述我们插件基本信息的JSON文件。它包括了插件的名称、描述、API URL等信息。这些信息对于来说是非常重要的,因为它们告诉插件是什么,它能做什么,以及如何与它进行交互。因此,创建一个准确且完整的插件清单是非常重要的。
我们可以在项目的//.well-known目录下创建一个新的文件ai-.json,并在这个文件中定义插件清单( ):
{
"schema_version": "v1",
"name_for_human": "Hello World Plugin",
"name_for_model": "hello_world",
"description_for_human": "A simple plugin that says hello to the world.",
"description_for_model": "A simple plugin that says hello to the world.",
"auth": {
"type": "none"
},
"api": {
"type": "openapi",
"url": "",
"is_user_authenticated": false
},
"logo_url": "",
"contact_email": "support@example.com",
"legal_info_url": ""
}
在这个文件中,我们定义了插件的名称、描述、API URL等信息。我们的API URL是:3000/.yaml,这是我们即将创建的插件描述文件的URL。
2.3 创建插件描述文件
插件描述文件是一个用于描述API的规范。通过使用插件描述文件,我们可以清晰地描述API的行为,包括我们的API有哪些,这些接受什么样的请求,以及这些端点会返回什么样的响应。这对于我们来说是非常有用的,因为它可以帮助我们更好地理解和设计我们的API。
我们可以在项目的/目录下创建一个名为.yaml的新文件,并在其中定义描述:
openapi: 3.0.0
info:
title: Hello World
version: 1.0.0
paths:
/hello:
get:
operationId: hello
summary: Returns a hello world message
responses:
'200':
description: A JSON object containing a hello world message
content:
application/json:
schema:
$ref: '#/components/schemas/HelloResponse'
components:
schemas:
HelloResponse:
type: object
properties:
message:
type: string
在这个文件中,定义了一个GET方法的/。当这个被访问时,它会返回一个状态码为200的响应,响应的是”Hello, world!”。
2.4 在本地运行你的插件
现在,插件已经准备好了,我们可以在本地运行它,看看它是否能够正确工作。
首先,需要启动应用。可以使用以下命令来启动应用:
node server.js
然后,我们可以在浏览器中访问:3000/hello,看看插件是否能够正确返回{“”:”Hello World!”}。
如果一切顺利,我们就可以开始在中安装和测试我们的插件了。
2.5 使用ngrok内网穿透
由于我们的应用运行在本地服务器上,这意味着它默认情况下只能在我们的计算机上访问。然而,为了让能够访问插件,我们需要使插件在互联网上可访问。这就是我们需要使用ngrok的原因。ngrok是一个能够将本地服务器映射到公网的工具,使我们的插件能够在互联网上被访问。
首先,我们需要下载并安装ngrok。我们可以在ngrok的官网上找到下载链接和安装说明。
然后,我们可以使用以下命令来启动ngrok:
ngrok http 3000
这个命令会启动ngrok,并将它映射到本地服务器的3000端口。ngrok会显示一个公网URL,我们可以使用这个URL来访问本地服务器。
最后,我们需要在插件清单( )文件中更新API URL,将其更改为我们的ngrok URL。例如,如果ngrok URL是,那么API URL应该是。请在ai-.json文件中进行相应的更改。
3. 在中安装和测试插件
现在,我们的插件已经准备好了,我们可以在中安装和测试它。
首先,我们需要登录到,然后点击右上角的””按钮,然后点击” your own “按钮。
在弹出的对话框中,我们需要输入我们的链接,然后点击”Find file”按钮。如果一切顺利,插件就会被安装到中。
然后,可以在中输入”Hello World Say Hello”,看看插件是否能够正确回复”Hello, world!”。
4. 总结
在这篇教程中,我们学习了如何创建一个简单的插件。我们创建了一个”Hello World”插件,这个插件只有一个功能:当用户输入”Hello World Say Hello”时,插件会回复”Hello, world!”。
我们还学习了如何在应用中提供静态文件服务,如何使用ngrok映射本地服务器,以及如何在中安装和测试插件。
在下一篇教程中,我们将学习如何使用提供的工具,快速开发和部署一个插件。
5. 源码
//E…