koishi-plugin-my-pig-group-friends 1.1.1 → 1.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +89 -25
- package/lib/config.d.ts +6 -1
- package/lib/database.d.ts +3 -0
- package/lib/index.js +908 -43
- package/lib/services/pexels.d.ts +7 -0
- package/lib/services/summary.d.ts +38 -0
- package/lib/services/unsplash.d.ts +2 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,15 +2,33 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/koishi-plugin-my-pig-group-friends)
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
**猪醒** - 虚拟旅行打卡插件,让你的猪猪群友环游世界。
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
> 你群里有没有那种作息混乱、日夜颠倒的猪猪朋友?现在,每当他们在奇怪的时间冒泡,就送他们去世界各地"旅行"吧!
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
-
|
|
9
|
+
## 功能亮点
|
|
10
|
+
|
|
11
|
+
- **虚拟旅行打卡** - 生成精美毛玻璃效果足迹卡片,记录猪猪的环球之旅
|
|
12
|
+
- **智能日出选点** - LLM 会根据当前时间,选择正在迎接日出的地区作为目的地(毕竟是"猪醒"嘛)
|
|
13
|
+
- **高质量风景图** - 集成 Unsplash / Pexels API,获取目的地真实风景照片
|
|
14
|
+
- **AI 生图支持** - 可选生成小猪在当地旅行的 AI 插画
|
|
15
|
+
- **作息异常检测(实验性)** - 自动检测用户每日首条消息时间,判断作息是否异常
|
|
16
|
+
|
|
17
|
+
## 效果预览
|
|
18
|
+
|
|
19
|
+
当触发旅行时,会生成类似这样的卡片:
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
┌─────────────────────────────┐
|
|
23
|
+
│ [目的地风景照片背景] │
|
|
24
|
+
│ │
|
|
25
|
+
│ 🐷 xxx 猪醒! │
|
|
26
|
+
│ │
|
|
27
|
+
│ 去了 冰岛蓝湖温泉,冰岛! │
|
|
28
|
+
│ │
|
|
29
|
+
│ 2024-01-15 06:32 │
|
|
30
|
+
└─────────────────────────────┘
|
|
31
|
+
```
|
|
14
32
|
|
|
15
33
|
## 安装
|
|
16
34
|
|
|
@@ -22,40 +40,86 @@ npm install koishi-plugin-my-pig-group-friends
|
|
|
22
40
|
|
|
23
41
|
### 必需
|
|
24
42
|
- `database` - 存储用户状态和旅行日志
|
|
25
|
-
- `cron` -
|
|
26
|
-
- `puppeteer` -
|
|
43
|
+
- `cron` - 定时清理任务
|
|
44
|
+
- `puppeteer` - 渲染精美卡片
|
|
27
45
|
|
|
28
46
|
### 可选
|
|
29
|
-
- `chatluna` -
|
|
30
|
-
- `chatluna_storage` -
|
|
31
|
-
- `media-luna` -
|
|
47
|
+
- `chatluna` - LLM 动态生成旅行地点(推荐)
|
|
48
|
+
- `chatluna_storage` - 高效管理图片缓存
|
|
49
|
+
- `media-luna` - AI 绘图功能
|
|
32
50
|
|
|
33
51
|
## 使用方法
|
|
34
52
|
|
|
35
53
|
### 指令
|
|
36
54
|
|
|
37
|
-
|
|
38
|
-
|
|
55
|
+
| 指令 | 说明 |
|
|
56
|
+
|------|------|
|
|
57
|
+
| `pig` | 送自己去旅行 |
|
|
58
|
+
| `pig @某人` | 送指定用户去旅行 |
|
|
59
|
+
| `猪醒` | `pig` 的别名 |
|
|
60
|
+
|
|
61
|
+
### 示例
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
> 猪醒 @张三
|
|
65
|
+
🐷 张三 猪醒!去了 挪威罗弗敦群岛,挪威!
|
|
66
|
+
[精美卡片图片]
|
|
67
|
+
```
|
|
39
68
|
|
|
40
|
-
##
|
|
69
|
+
## 配置说明
|
|
41
70
|
|
|
42
71
|
### 基础设置
|
|
43
|
-
|
|
44
|
-
|
|
72
|
+
|
|
73
|
+
| 配置项 | 默认值 | 说明 |
|
|
74
|
+
|--------|--------|------|
|
|
75
|
+
| `outputMode` | `image` | 输出模式:`image` 生成卡片,`text` 纯文本 |
|
|
76
|
+
| `travelMessageTemplate` | `去了 {landmark},{country}!` | 旅行消息模板 |
|
|
45
77
|
|
|
46
78
|
### 地点与图片
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
79
|
+
|
|
80
|
+
| 配置项 | 默认值 | 说明 |
|
|
81
|
+
|--------|--------|------|
|
|
82
|
+
| `llmLocationEnabled` | `false` | 启用 LLM 动态生成地点 |
|
|
83
|
+
| `llmLocationModel` | - | LLM 模型(推荐 gemini-flash 等快速模型) |
|
|
84
|
+
| `llmLocationCustomContext` | - | 自定义偏好(如:北欧风格、赛博朋克建筑等) |
|
|
85
|
+
| `imageSearchPrompt` | `{landmark} {country} landscape` | 图片搜索关键词模板 |
|
|
86
|
+
| `unsplashAccessKey` | - | Unsplash API 密钥 |
|
|
87
|
+
| `pexelsApiKey` | - | Pexels API 密钥(备用图源) |
|
|
50
88
|
|
|
51
89
|
### AI 生图(可选)
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
90
|
+
|
|
91
|
+
| 配置项 | 默认值 | 说明 |
|
|
92
|
+
|--------|--------|------|
|
|
93
|
+
| `aigcEnabled` | `false` | 启用 AI 绘图 |
|
|
94
|
+
| `aigcChannel` | - | media-luna 绘图渠道 |
|
|
95
|
+
| `aigcPrompt` | `一个可爱的卡通小猪正在...` | 绘图提示词模板 |
|
|
55
96
|
|
|
56
97
|
### 自动检测(实验性)
|
|
57
|
-
|
|
58
|
-
|
|
98
|
+
|
|
99
|
+
| 配置项 | 默认值 | 说明 |
|
|
100
|
+
|--------|--------|------|
|
|
101
|
+
| `experimentalAutoDetect` | `false` | 自动检测作息异常 |
|
|
102
|
+
| `abnormalThreshold` | `3` | 异常判定阈值(小时) |
|
|
103
|
+
|
|
104
|
+
### 存储设置
|
|
105
|
+
|
|
106
|
+
| 配置项 | 默认值 | 说明 |
|
|
107
|
+
|--------|--------|------|
|
|
108
|
+
| `useStorageService` | `true` | 使用存储服务缓存图片 |
|
|
109
|
+
| `storageCacheHours` | `24` | 图片缓存时间(小时) |
|
|
110
|
+
| `logRetentionDays` | `45` | 旅行记录保留天数 |
|
|
111
|
+
|
|
112
|
+
## 获取 API 密钥
|
|
113
|
+
|
|
114
|
+
### Unsplash(推荐)
|
|
115
|
+
1. 访问 [Unsplash Developers](https://unsplash.com/developers)
|
|
116
|
+
2. 创建应用,获取 Access Key
|
|
117
|
+
3. 免费额度:50 次/小时
|
|
118
|
+
|
|
119
|
+
### Pexels(备用)
|
|
120
|
+
1. 访问 [Pexels API](https://www.pexels.com/api/)
|
|
121
|
+
2. 注册并获取 API Key
|
|
122
|
+
3. 免费额度:200 次/小时
|
|
59
123
|
|
|
60
124
|
## License
|
|
61
125
|
|
package/lib/config.d.ts
CHANGED
|
@@ -14,10 +14,15 @@ export interface Config {
|
|
|
14
14
|
logPath: string;
|
|
15
15
|
llmLocationEnabled: boolean;
|
|
16
16
|
llmLocationModel: string;
|
|
17
|
+
llmLocationCustomContext: string;
|
|
18
|
+
imageSearchPrompt: string;
|
|
17
19
|
unsplashAccessKey: string;
|
|
20
|
+
pexelsApiKey: string;
|
|
21
|
+
backgroundFetchMode: 'auto' | 'always' | 'never';
|
|
22
|
+
backgroundFetchTimeoutMs: number;
|
|
18
23
|
logRetentionDays: number;
|
|
24
|
+
monthlySummaryEnabled: boolean;
|
|
19
25
|
experimentalAutoDetect: boolean;
|
|
20
26
|
debug: boolean;
|
|
21
|
-
emojiFont: 'Noto Color Emoji' | 'Twemoji' | 'System';
|
|
22
27
|
}
|
|
23
28
|
export declare const Config: Schema<Config>;
|
package/lib/database.d.ts
CHANGED