commit 7ff6e6d3f8027e34ff1bbceda0b388d03f45613b
Author: Barry Wang <33831597+GithuBarry@users.noreply.github.com>
Date: Mon Mar 25 22:25:28 2024 -0400
Initial commit
diff --git a/.github/ISSUE_TEMPLATE/1_bug_report.yml b/.github/ISSUE_TEMPLATE/1_bug_report.yml
new file mode 100644
index 0000000..d181c38
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/1_bug_report.yml
@@ -0,0 +1,45 @@
+name: '🐛 反馈缺陷 Bug Report'
+description: '反馈一个问题缺陷 | Report an bug'
+title: '[Bug] '
+labels: '🐛 Bug'
+body:
+ - type: dropdown
+ attributes:
+ label: '💻 系统环境 | Operating System'
+ options:
+ - Windows
+ - macOS
+ - Ubuntu
+ - Other Linux
+ - Other
+ validations:
+ required: true
+ - type: dropdown
+ attributes:
+ label: '🌐 浏览器 | Browser'
+ options:
+ - Chrome
+ - Edge
+ - Safari
+ - Firefox
+ - Other
+ validations:
+ required: true
+ - type: textarea
+ attributes:
+ label: '🐛 问题描述 | Bug Description'
+ description: A clear and concise description of the bug.
+ validations:
+ required: true
+ - type: textarea
+ attributes:
+ label: '🚦 期望结果 | Expected Behavior'
+ description: A clear and concise description of what you expected to happen.
+ - type: textarea
+ attributes:
+ label: '📷 复现步骤 | Recurrence Steps'
+ description: A clear and concise description of how to recurrence.
+ - type: textarea
+ attributes:
+ label: '📝 补充信息 | Additional Information'
+ description: If your problem needs further explanation, or if the issue you're seeing cannot be reproduced in a gist, please add more information here.
diff --git a/.github/ISSUE_TEMPLATE/2_feature_request.yml b/.github/ISSUE_TEMPLATE/2_feature_request.yml
new file mode 100644
index 0000000..edcf7d0
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/2_feature_request.yml
@@ -0,0 +1,21 @@
+name: '🌠 功能需求 Feature Request'
+description: '需求或建议 | Suggest an idea'
+title: '[Request] '
+labels: '🌠 Feature Request'
+body:
+ - type: textarea
+ attributes:
+ label: '🥰 需求描述 | Feature Description'
+ description: Please add a clear and concise description of the problem you are seeking to solve with this feature request.
+ validations:
+ required: true
+ - type: textarea
+ attributes:
+ label: '🧐 解决方案 | Proposed Solution'
+ description: Describe the solution you'd like in a clear and concise manner.
+ validations:
+ required: true
+ - type: textarea
+ attributes:
+ label: '📝 补充信息 | Additional Information'
+ description: Add any other context about the problem here.
diff --git a/.github/ISSUE_TEMPLATE/3_question.yml b/.github/ISSUE_TEMPLATE/3_question.yml
new file mode 100644
index 0000000..f989f7d
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/3_question.yml
@@ -0,0 +1,15 @@
+name: '😇 疑问或帮助 Help Wanted'
+description: '疑问或需要帮助 | Need help'
+title: '[Question] '
+labels: '😇 Help Wanted'
+body:
+ - type: textarea
+ attributes:
+ label: '🧐 问题描述 | Proposed Solution'
+ description: A clear and concise description of the proplem.
+ validations:
+ required: true
+ - type: textarea
+ attributes:
+ label: '📝 补充信息 | Additional Information'
+ description: Add any other context about the problem here.
diff --git a/.github/ISSUE_TEMPLATE/other.md b/.github/ISSUE_TEMPLATE/other.md
new file mode 100644
index 0000000..215dd1f
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/other.md
@@ -0,0 +1,7 @@
+---
+name: '📝 其他 Other'
+about: '其他问题 | Other issues'
+title: ''
+labels: ''
+assignees: ''
+---
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 0000000..ae2208c
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,18 @@
+#### 💻 变更类型 | Change Type
+
+
+
+- [ ] ✨ feat
+- [ ] 🐛 fix
+- [ ] ♻️ refactor
+- [ ] 💄 style
+- [ ] 🔨 chore
+- [ ] 📝 docs
+
+#### 🔀 变更说明 | Description of Change
+
+
+
+#### 📝 补充信息 | Additional Information
+
+
diff --git a/.github/workflows/issue-auto-comments.yml b/.github/workflows/issue-auto-comments.yml
new file mode 100644
index 0000000..65b3c98
--- /dev/null
+++ b/.github/workflows/issue-auto-comments.yml
@@ -0,0 +1,72 @@
+name: Issue Auto Comment
+on:
+ issues:
+ types:
+ - opened
+ - closed
+ - assigned
+ pull_request_target:
+ types:
+ - opened
+ - closed
+
+permissions:
+ contents: read
+
+jobs:
+ run:
+ permissions:
+ issues: write # for actions-cool/issues-helper to update issues
+ pull-requests: write # for actions-cool/issues-helper to update PRs
+ runs-on: ubuntu-latest
+ steps:
+ - name: Auto Comment on Issues Opened
+ uses: wow-actions/auto-comment@v1
+ with:
+ GITHUB_TOKEN: ${{ secrets.GH_TOKEN}}
+ issuesOpened: |
+ 👀 @{{ author }}
+ Thank you for raising an issue. We will investigate into the matter and get back to you as soon as possible.
+ Please make sure you have given us as much context as possible.\
+ 非常感谢您提交 issue。我们会尽快调查此事,并尽快回复您。 请确保您已经提供了尽可能多的背景信息。
+ - name: Auto Comment on Issues Closed
+ uses: wow-actions/auto-comment@v1
+ with:
+ GITHUB_TOKEN: ${{ secrets.GH_TOKEN}}
+ issuesClosed: |
+ ✅ @{{ author }}
+
+ This issue is closed, If you have any questions, you can comment and reply.\
+ 此问题已经关闭。如果您有任何问题,可以留言并回复。
+ - name: Auto Comment on Pull Request Opened
+ uses: wow-actions/auto-comment@v1
+ with:
+ GITHUB_TOKEN: ${{ secrets.GH_TOKEN}}
+ pullRequestOpened: |
+ 👍 @{{ author }}
+
+ Thank you for raising your pull request and contributing to our Community
+ Please make sure you have followed our contributing guidelines. We will review it as soon as possible.
+ If you encounter any problems, please feel free to connect with us.\
+ 非常感谢您提出拉取请求并为我们的社区做出贡献,请确保您已经遵循了我们的贡献指南,我们会尽快审查它。
+ 如果您遇到任何问题,请随时与我们联系。
+ - name: Auto Comment on Pull Request Merged
+ uses: actions-cool/pr-welcome@main
+ if: github.event.pull_request.merged == true
+ with:
+ token: ${{ secrets.GH_TOKEN }}
+ comment: |
+ ❤️ Great PR @${{ github.event.pull_request.user.login }} ❤️
+
+ The growth of project is inseparable from user feedback and contribution, thanks for your contribution!\
+ 项目的成长离不开用户反馈和贡献,感谢您的贡献!
+ emoji: 'hooray'
+ pr-emoji: '+1, heart'
+ - name: Remove inactive
+ if: github.event.issue.state == 'open' && github.actor == github.event.issue.user.login
+ uses: actions-cool/issues-helper@v3
+ with:
+ actions: 'remove-labels'
+ token: ${{ secrets.GH_TOKEN }}
+ issue-number: ${{ github.event.issue.number }}
+ labels: 'Inactive'
diff --git a/.github/workflows/issue-check-inactive.yml b/.github/workflows/issue-check-inactive.yml
new file mode 100644
index 0000000..a5ae1fb
--- /dev/null
+++ b/.github/workflows/issue-check-inactive.yml
@@ -0,0 +1,23 @@
+name: Issue Check Inactive
+
+on:
+ schedule:
+ - cron: '0 0 */15 * *'
+
+permissions:
+ contents: read
+
+jobs:
+ issue-check-inactive:
+ permissions:
+ issues: write # for actions-cool/issues-helper to update issues
+ pull-requests: write # for actions-cool/issues-helper to update PRs
+ runs-on: ubuntu-latest
+ steps:
+ - name: check-inactive
+ uses: actions-cool/issues-helper@v3
+ with:
+ actions: 'check-inactive'
+ token: ${{ secrets.GH_TOKEN }}
+ inactive-label: 'Inactive'
+ inactive-day: 30
diff --git a/.github/workflows/issue-close-require.yml b/.github/workflows/issue-close-require.yml
new file mode 100644
index 0000000..e64d0cd
--- /dev/null
+++ b/.github/workflows/issue-close-require.yml
@@ -0,0 +1,52 @@
+name: Issue Close Require
+
+on:
+ schedule:
+ - cron: '0 0 * * *'
+
+permissions:
+ contents: read
+
+jobs:
+ issue-close-require:
+ permissions:
+ issues: write # for actions-cool/issues-helper to update issues
+ pull-requests: write # for actions-cool/issues-helper to update PRs
+ runs-on: ubuntu-latest
+ steps:
+ - name: need reproduce
+ uses: actions-cool/issues-helper@v3
+ with:
+ actions: 'close-issues'
+ token: ${{ secrets.GH_TOKEN }}
+ labels: '✅ Fixed'
+ inactive-day: 3
+ body: |
+ 👋 @{{ github.event.issue.user.login }}
+
+ Since the issue was labeled with `✅ Fixed`, but no response in 3 days. This issue will be closed. If you have any questions, you can comment and reply.\
+ 由于该 issue 被标记为已修复,同时 3 天未收到回应。现关闭 issue,若有任何问题,可评论回复。
+ - name: need reproduce
+ uses: actions-cool/issues-helper@v3
+ with:
+ actions: 'close-issues'
+ token: ${{ secrets.GH_TOKEN }}
+ labels: '🤔 Need Reproduce'
+ inactive-day: 3
+ body: |
+ 👋 @{{ github.event.issue.user.login }}
+
+ Since the issue was labeled with `🤔 Need Reproduce`, but no response in 3 days. This issue will be closed. If you have any questions, you can comment and reply.\
+ 由于该 issue 被标记为需要更多信息,却 3 天未收到回应。现关闭 issue,若有任何问题,可评论回复。
+ - name: need reproduce
+ uses: actions-cool/issues-helper@v3
+ with:
+ actions: 'close-issues'
+ token: ${{ secrets.GH_TOKEN }}
+ labels: "🙅🏻♀️ WON'T DO"
+ inactive-day: 3
+ body: |
+ 👋 @{{ github.event.issue.user.login }}
+
+ Since the issue was labeled with `🙅🏻♀️ WON'T DO`, and no response in 3 days. This issue will be closed. If you have any questions, you can comment and reply.\
+ 由于该 issue 被标记为暂不处理,同时 3 天未收到回应。现关闭 issue,若有任何问题,可评论回复。
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..8235041
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,48 @@
+# Gitignore for LobeHub
+################################################################
+
+# general
+.DS_Store
+.idea
+.vscode
+.history
+.temp
+.env.local
+venv
+temp
+tmp
+
+# dependencies
+node_modules
+*.log
+*.lock
+package-lock.json
+
+# ci
+coverage
+.coverage
+.eslintcache
+.stylelintcache
+
+# production
+dist
+es
+lib
+logs
+test-output
+
+# umi
+.umi
+.umi-production
+.umi-test
+.dumi/tmp*
+
+# husky
+.husky/prepare-commit-msg
+
+# misc
+# add other ignore file below
+.vercel
+public/dist
+docs-dist
+bun.lockb
\ No newline at end of file
diff --git a/public/manifest.json b/public/manifest.json
new file mode 100644
index 0000000..b3432c2
--- /dev/null
+++ b/public/manifest.json
@@ -0,0 +1,15 @@
+{
+ "$schema": "../node_modules/@lobehub/chat-plugin-sdk/schema.json",
+ "api": [],
+ "author": "GithuBarry",
+ "homepage": "https://github.com/GithuBarry/chat-plugin-search-engine",
+ "identifier": "search-engine-serper",
+ "meta": {
+ "avatar": "🔍",
+ "tags": ["web", "search"],
+ "title": "Search Engine Serper",
+ "description": "Query search engine to get information"
+ },
+ "openapi": "https://raw.githubusercontent.com/GithuBarry/chat-plugin-search-engine/main/public/openapi.json",
+ "version": "1"
+}
diff --git a/public/openapi.json b/public/openapi.json
new file mode 100644
index 0000000..9cce6f0
--- /dev/null
+++ b/public/openapi.json
@@ -0,0 +1,90 @@
+{
+ "components": {
+ "securitySchemes": {
+ "apiAuth": {
+ "type": "apiKey",
+ "name": "X-API-KEY",
+ "in": "header"
+ }
+ }
+ },
+ "info": {
+ "title": "Web Search",
+ "version": "1.0.0"
+ },
+ "openapi": "3.0.0",
+ "paths": {
+ "/search": {
+ "post": {
+ "summary": "Search Google and return top 10 results",
+ "operationId": "searchGoogle",
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "required": [
+ "q"
+ ],
+ "properties": {
+ "q": {
+ "type": "string",
+ "example": "今天吃什么"
+ },
+ "gl": {
+ "type": "string",
+ "description": "Google Geo location parameter",
+ "example": "cn"
+ },
+ "hl": {
+ "type": "string",
+ "description": "Google Geo locale parameter",
+ "example": "zh-cn"
+ }
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "Successful search results",
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "required": [
+ "result"
+ ],
+ "properties": {
+ "result": {
+ "type": "string",
+ "description": "Top 10 search results",
+ "example": "\"title\": \"周末游推荐\",\n\"link\": \"https://www.example.com/destinations-for-weekends\",\n\"snippet\": \"周末去哪玩?周末旅游频道,精心推荐数百个周末游经典线路\",\n\"position\": 1"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "security": [
+ {
+ "apiAuth": []
+ }
+ ]
+ }
+ }
+ },
+ "security": [
+ {
+ "apiAuth": []
+ }
+ ],
+ "servers": [
+ {
+ "url": "https://google.serper.dev"
+ }
+ ]
+}