ErisPulse 2.4.5.dev3__tar.gz → 2.4.6.dev0__tar.gz

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.
Files changed (127) hide show
  1. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/PKG-INFO +100 -53
  2. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/README.md +99 -52
  3. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/pyproject.toml +1 -1
  4. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/base.py +9 -9
  5. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/cli.py +61 -54
  6. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/cli.pyi +2 -0
  7. erispulse-2.4.6.dev0/src/ErisPulse/CLI/commands/init.py +389 -0
  8. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/init.pyi +7 -33
  9. erispulse-2.4.6.dev0/src/ErisPulse/CLI/commands/install.py +303 -0
  10. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/install.pyi +2 -2
  11. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/list.py +54 -60
  12. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/list.pyi +0 -13
  13. erispulse-2.4.6.dev0/src/ErisPulse/CLI/commands/list_remote.py +84 -0
  14. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/list_remote.pyi +2 -7
  15. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/run.py +45 -29
  16. erispulse-2.4.6.dev0/src/ErisPulse/CLI/commands/self_update.py +219 -0
  17. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/self_update.pyi +6 -15
  18. erispulse-2.4.6.dev0/src/ErisPulse/CLI/commands/uninstall.py +84 -0
  19. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/uninstall.pyi +2 -4
  20. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/upgrade.py +8 -20
  21. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/console.py +25 -23
  22. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/registry.py +17 -17
  23. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/utils/__init__.py +3 -1
  24. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/utils/__init__.pyi +1 -0
  25. erispulse-2.4.6.dev0/src/ErisPulse/CLI/utils/display.py +207 -0
  26. erispulse-2.4.6.dev0/src/ErisPulse/CLI/utils/display.pyi +45 -0
  27. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/utils/package_manager.py +226 -110
  28. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/utils/package_manager.pyi +1 -1
  29. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Bases/__init__.py +3 -3
  30. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Bases/__init__.pyi +1 -1
  31. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Bases/storage.py +5 -4
  32. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/__init__.py +4 -6
  33. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/base.py +5 -3
  34. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/command.py +17 -11
  35. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/meta.py +2 -2
  36. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/wrapper.py +25 -12
  37. erispulse-2.4.6.dev0/src/ErisPulse/Core/__init__.py +52 -0
  38. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/adapter.py +15 -4
  39. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/config.py +40 -29
  40. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/logger.py +54 -35
  41. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/logger.pyi +7 -6
  42. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/metrics.py +19 -5
  43. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/module.py +9 -3
  44. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/router.py +108 -44
  45. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/storage.py +4 -2
  46. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/__init__.py +2 -2
  47. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/__main__.py +5 -2
  48. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/finders/adapter.py +23 -26
  49. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/finders/bases/__init__.py +1 -3
  50. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/finders/bases/finder.py +10 -2
  51. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/finders/module.py +23 -26
  52. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/adapter.py +10 -2
  53. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/bases/__init__.py +1 -3
  54. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/module.py +33 -15
  55. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/runtime/__init__.py +15 -16
  56. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/runtime/exceptions.py +33 -20
  57. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/runtime/frame_config.py +65 -57
  58. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/sdk.py +269 -172
  59. erispulse-2.4.5.dev3/src/ErisPulse/CLI/commands/init.py +0 -493
  60. erispulse-2.4.5.dev3/src/ErisPulse/CLI/commands/install.py +0 -405
  61. erispulse-2.4.5.dev3/src/ErisPulse/CLI/commands/list_remote.py +0 -101
  62. erispulse-2.4.5.dev3/src/ErisPulse/CLI/commands/self_update.py +0 -227
  63. erispulse-2.4.5.dev3/src/ErisPulse/CLI/commands/uninstall.py +0 -120
  64. erispulse-2.4.5.dev3/src/ErisPulse/Core/__init__.py +0 -58
  65. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/.gitignore +0 -0
  66. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/LICENSE +0 -0
  67. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/__init__.py +0 -0
  68. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/__init__.pyi +0 -0
  69. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/base.pyi +0 -0
  70. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/__init__.py +0 -0
  71. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/__init__.pyi +0 -0
  72. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/run.pyi +0 -0
  73. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/commands/upgrade.pyi +0 -0
  74. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/console.pyi +0 -0
  75. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/CLI/registry.pyi +0 -0
  76. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Bases/adapter.py +0 -0
  77. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Bases/adapter.pyi +0 -0
  78. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Bases/manager.py +0 -0
  79. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Bases/manager.pyi +0 -0
  80. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Bases/module.py +0 -0
  81. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Bases/module.pyi +0 -0
  82. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Bases/storage.pyi +0 -0
  83. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/__init__.pyi +0 -0
  84. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/base.pyi +0 -0
  85. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/command.pyi +0 -0
  86. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/message.py +0 -0
  87. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/message.pyi +0 -0
  88. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/message_builder.py +0 -0
  89. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/message_builder.pyi +0 -0
  90. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/meta.pyi +0 -0
  91. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/notice.py +0 -0
  92. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/notice.pyi +0 -0
  93. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/request.py +0 -0
  94. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/request.pyi +0 -0
  95. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/session_type.py +0 -0
  96. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/session_type.pyi +0 -0
  97. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/Event/wrapper.pyi +0 -0
  98. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/__init__.pyi +0 -0
  99. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/adapter.pyi +0 -0
  100. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/config.pyi +0 -0
  101. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/lifecycle.py +0 -0
  102. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/lifecycle.pyi +0 -0
  103. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/metrics.pyi +0 -0
  104. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/module.pyi +0 -0
  105. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/router.pyi +0 -0
  106. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/Core/storage.pyi +0 -0
  107. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/__init__.pyi +0 -0
  108. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/__main__.pyi +0 -0
  109. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/finders/__init__.py +0 -0
  110. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/finders/__init__.pyi +0 -0
  111. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/finders/adapter.pyi +0 -0
  112. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/finders/bases/__init__.pyi +0 -0
  113. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/finders/bases/finder.pyi +0 -0
  114. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/finders/module.pyi +0 -0
  115. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/__init__.py +0 -0
  116. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/__init__.pyi +0 -0
  117. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/adapter.pyi +0 -0
  118. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/bases/__init__.pyi +0 -0
  119. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/bases/loader.py +0 -0
  120. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/bases/loader.pyi +0 -0
  121. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/module.pyi +0 -0
  122. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/strategy.py +0 -0
  123. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/loaders/strategy.pyi +0 -0
  124. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/runtime/__init__.pyi +0 -0
  125. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/runtime/exceptions.pyi +0 -0
  126. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/runtime/frame_config.pyi +0 -0
  127. {erispulse-2.4.5.dev3 → erispulse-2.4.6.dev0}/src/ErisPulse/sdk.pyi +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ErisPulse
3
- Version: 2.4.5.dev3
3
+ Version: 2.4.6.dev0
4
4
  Summary: ErisPulse 是一个模块化、可扩展的异步 Python SDK 框架,主要用于构建高效、可维护的机器人应用程序。
5
5
  Author-email: ErisDev <erisdev@88.com>
6
6
  Maintainer-email: "艾莉丝·格雷拉特(WSu2059)" <wsu2059@qq.com>
@@ -72,46 +72,89 @@ Description-Content-Type: text/markdown
72
72
 
73
73
  <div align="center">
74
74
 
75
- [English](README.en.md) | [简体中文](README.md) | [繁體中文](README.zh-TW.md)
75
+ [English](README.en.md) | **简体中文** | [繁體中文](README.zh-TW.md)
76
76
 
77
- </div>
77
+ <br/>
78
78
 
79
- <table>
80
- <tr>
81
- <td width="35%" valign="middle" align="center">
82
- <img src=".github/assets/erispulse_logo_hp.png" width="280" alt="ErisPulse" />
83
- </td>
84
- <td width="65%" valign="middle">
79
+ <img src=".github/assets/erispulse_logo_hp.png" width="160" alt="ErisPulse" />
80
+
81
+ <br/>
85
82
 
86
83
  # ErisPulse
87
84
 
88
85
  **事件驱动的多平台机器人开发框架**
89
86
 
87
+ > 知道吗?ErisPulse 支持完整的 Vibe Coding 工作流,让 AI 直接生成可用模块
88
+ > [查看](docs/zh-CN/ai-support/README.md)
89
+
90
+ <br/>
91
+
90
92
  [![PyPI](https://img.shields.io/pypi/v/ErisPulse?style=flat-square)](https://pypi.org/project/ErisPulse/)
91
93
  [![Docker](https://img.shields.io/badge/Docker-2496ED?style=flat-square&logo=docker&logoColor=white)](https://hub.docker.com/r/erispulse/erispulse)
92
94
  [![Python](https://img.shields.io/badge/Python-3.10+-3776AB?style=flat-square&logo=python&logoColor=white)](https://pypi.org/project/ErisPulse/)
93
95
  [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
94
96
  [![Socket Badge](https://socket.dev/api/badge/pypi/package/ErisPulse/latest)](https://socket.dev/pypi/package/ErisPulse)
95
97
 
98
+ </div>
99
+
100
+ <br/>
101
+
102
+ <div align="center">
103
+
104
+ 基于 OneBot12 标准接口,一次编写,多平台部署。灵活的插件系统、热重载支持和完整的开发者工具链,适用于从简单聊天机器人到复杂自动化系统的各种场景。
105
+
106
+ </div>
107
+
108
+ ---
109
+
110
+ <div align="center">
111
+
112
+ ### 核心特性
113
+
114
+ </div>
115
+
116
+ <table>
117
+ <tr>
118
+ <td width="50%" align="center" valign="top">
119
+ <br/>
120
+
121
+ ### 事件驱动架构
122
+
123
+ 基于 OneBot12 标准的清晰事件模型,让消息处理逻辑更加直观和高效
124
+
125
+ </td>
126
+ <td width="50%" align="center" valign="top">
127
+ <br/>
128
+
129
+ ### 跨平台兼容
130
+
131
+ 插件模块编写一次即可在所有平台使用,无需为不同平台重复开发
132
+
96
133
  </td>
97
134
  </tr>
98
- </table>
135
+ <tr>
136
+ <td width="50%" align="center" valign="top">
137
+ <br/>
99
138
 
100
- ---
139
+ ### 模块化设计
101
140
 
102
- ## 简介
141
+ 灵活的插件系统,易于扩展和集成,支持热插拔模块管理
103
142
 
104
- ErisPulse 是一个基于 Python 的事件驱动型多平台机器人开发框架。通过统一的 OneBot12 标准接口,您可以一次编写代码,同时在云湖、Telegram、OneBot 等多个平台部署相同功能的机器人。框架提供灵活的模块(`插件`)系统、热重载支持和完整的开发者工具链,适用于从简单聊天机器人到复杂自动化系统的各种场景。
143
+ </td>
144
+ <td width="50%" align="center" valign="top">
145
+ <br/>
105
146
 
106
- ## 核心特性
147
+ ### 热重载支持
107
148
 
108
- - **事件驱动架构** - 基于 OneBot12 标准的清晰事件模型
109
- - **跨平台兼容** - 插件模块编写一次即可在所有平台使用
110
- - **模块化设计** - 灵活的插件系统,易于扩展和集成
111
- - **热重载支持** - 开发时无需重启即可重新加载代码
112
- - **完整工具链** - 提供 CLI 工具、包管理和自动化脚本
149
+ 开发时无需重启即可重新加载代码,大幅提升开发迭代效率
113
150
 
114
- ## 支持的适配器
151
+ </td>
152
+ </tr>
153
+ </table>
154
+
155
+ ---
156
+
157
+ ### 支持的适配器
115
158
 
116
159
  欢迎您贡献适配器!
117
160
 
@@ -131,9 +174,11 @@ ErisPulse 是一个基于 Python 的事件驱动型多平台机器人开发框
131
174
 
132
175
  查看 [适配器详情介绍](docs/zh-CN/platform-guide/README.md)
133
176
 
134
- ## 快速开始
177
+ ---
135
178
 
136
- ### 使用 Docker (推荐)
179
+ ### 快速开始
180
+
181
+ #### 使用 Docker (推荐)
137
182
 
138
183
  ```bash
139
184
  docker pull erispulse/erispulse:latest
@@ -214,7 +259,7 @@ docker pull erispulse/erispulse:dev
214
259
 
215
260
  </details>
216
261
 
217
- ### 1Panel 应用商店
262
+ #### 1Panel 应用商店
218
263
 
219
264
  通过 [1Panel](https://1panel.cn) 应用商店一键安装 ErisPulse,详见 [ErisPulse-1Panel](https://github.com/ErisPulse/ErisPulse-1Panel)。
220
265
 
@@ -222,7 +267,7 @@ docker pull erispulse/erispulse:dev
222
267
  bash <(curl -sL https://get-1panel.erisdev.com/install.sh)
223
268
  ```
224
269
 
225
- ### 使用 pip 安装
270
+ #### 使用 pip 安装
226
271
 
227
272
  ```bash
228
273
  pip install ErisPulse
@@ -238,7 +283,7 @@ uv pip install ErisPulse
238
283
 
239
284
  > 如果您的 Python 版本低于 3.10,可以使用一键安装脚本自动配置环境。详见 [安装脚本说明](scripts/install/)。
240
285
 
241
- ### 初始化项目
286
+ #### 初始化项目
242
287
 
243
288
  ```bash
244
289
  # 交互式初始化
@@ -248,7 +293,7 @@ epsdk init
248
293
  epsdk init -q -n my_bot
249
294
  ```
250
295
 
251
- ### 创建第一个机器人
296
+ #### 创建第一个机器人
252
297
 
253
298
  创建 `main.py` 文件:
254
299
 
@@ -309,48 +354,50 @@ epsdk run main.py --reload
309
354
  - [快速开始指南](docs/zh-CN/quick-start.md)
310
355
  - [入门指南](docs/zh-CN/getting-started/)
311
356
 
312
- ## 应用场景
357
+ ---
313
358
 
314
- - **多平台机器人** - 在多个平台部署相同功能的机器人
315
- - **聊天助手** - 接入 AI 聊天模块,实现娱乐和交互
316
- - **自动化工具** - 消息通知、任务管理、数据收集
317
- - **消息转发** - 跨平台消息同步和转发
359
+ ### 应用场景
318
360
 
319
- ## 文档资源
361
+ <div align="center">
362
+
363
+ | 多平台机器人 | 聊天助手 | 自动化工具 | 消息转发 |
364
+ |:---:|:---:|:---:|:---:|
365
+ | 在多个平台部署<br>相同功能的机器人 | 接入 AI 聊天模块<br>实现娱乐和交互 | 消息通知、任务管理<br>数据收集 | 跨平台消息<br>同步和转发 |
366
+
367
+ </div>
368
+
369
+ ---
370
+
371
+ ### 文档与资源
320
372
 
321
373
  | 简体中文 | English | 繁體中文 |
322
- |----------------|----------------|----------------|
374
+ |:---:|:---:|:---:|
323
375
  | [文档入口](docs/zh-CN/README.md) | [Documentation](docs/en/README.md) | [文檔入口](docs/zh-TW/README.md) |
324
376
 
325
- ## 外部资源
326
-
327
377
  | 平台 | 主站点 | 备用站点 |
328
378
  |------|--------|---------|
329
- | 文档 | [erisdev.com](https://www.erisdev.com/#docs) | [Cloudflare](https://erispulse.pages.dev/#docs) [GitHub](https://erispulse.github.io/#docs) [Netlify](https://erispulse.netlify.app/#docs) |
330
- | 模块市场 | [erisdev.com](https://www.erisdev.com/#market) | [Cloudflare](https://erispulse.pages.dev/#market) [GitHub](https://erispulse.github.io/#market) [Netlify](https://erispulse.netlify.app/#market) |
379
+ | 文档 | [erisdev.com](https://www.erisdev.com/#docs) | [Cloudflare](https://erispulse.pages.dev/#docs) · [GitHub](https://erispulse.github.io/#docs) · [Netlify](https://erispulse.netlify.app/#docs) |
380
+ | 模块市场 | [erisdev.com](https://www.erisdev.com/#market) | [Cloudflare](https://erispulse.pages.dev/#market) · [GitHub](https://erispulse.github.io/#market) · [Netlify](https://erispulse.netlify.app/#market) |
331
381
 
332
- ## 贡献指南
333
-
334
- ErisPulse 项目的健全性还需要您的一份力!我们欢迎各种形式的贡献,包括但不限于:
335
-
336
- 1. **报告问题**
337
- 在 [GitHub Issues](https://github.com/ErisPulse/ErisPulse/issues) 提交 bug 报告
382
+ ---
338
383
 
339
- 2. **功能请求**
340
- 通过 [社区讨论](https://github.com/ErisPulse/ErisPulse/discussions) 提出新想法
384
+ ### 贡献指南
341
385
 
342
- 3. **代码贡献**
343
- 提交 Pull Request 前请阅读我们的 [代码风格](docs/zh-CN/styleguide/) 以及 [贡献指南](CONTRIBUTING.md)
386
+ ErisPulse 项目的健全性还需要您的一份力!我们欢迎各种形式的贡献:
344
387
 
345
- 4. **文档改进**
346
- 帮助完善文档和示例代码
388
+ 1. **报告问题** — 在 [GitHub Issues](https://github.com/ErisPulse/ErisPulse/issues) 提交 bug 报告
389
+ 2. **功能请求** — 通过 [社区讨论](https://github.com/ErisPulse/ErisPulse/discussions) 提出新想法
390
+ 3. **代码贡献** — 提交 PR 前请阅读 [代码风格](docs/zh-CN/styleguide/) 及 [贡献指南](CONTRIBUTING.md)
391
+ 4. **文档改进** — 帮助完善文档和示例代码
347
392
 
348
393
  [加入社区讨论](https://github.com/ErisPulse/ErisPulse/discussions)
349
394
 
350
395
  ---
351
396
 
352
- ## 致谢
397
+ <div align="center">
353
398
 
354
- - 本项目部分代码基于 [sdkFrame](https://github.com/runoneall/sdkFrame)
355
- - 核心适配器标准化层基于 [OneBot12 规范](https://12.onebot.dev/)
356
- - 感谢所有为开源社区做出贡献的开发者和作者
399
+ ### 致谢
400
+
401
+ 本项目部分代码基于 [sdkFrame](https://github.com/runoneall/sdkFrame) · 核心适配器标准化层基于 [OneBot12 规范](https://12.onebot.dev/) · 感谢所有为开源社区做出贡献的开发者和作者
402
+
403
+ </div>
@@ -1,45 +1,88 @@
1
1
  <div align="center">
2
2
 
3
- [English](README.en.md) | [简体中文](README.md) | [繁體中文](README.zh-TW.md)
3
+ [English](README.en.md) | **简体中文** | [繁體中文](README.zh-TW.md)
4
4
 
5
- </div>
5
+ <br/>
6
6
 
7
- <table>
8
- <tr>
9
- <td width="35%" valign="middle" align="center">
10
- <img src=".github/assets/erispulse_logo_hp.png" width="280" alt="ErisPulse" />
11
- </td>
12
- <td width="65%" valign="middle">
7
+ <img src=".github/assets/erispulse_logo_hp.png" width="160" alt="ErisPulse" />
8
+
9
+ <br/>
13
10
 
14
11
  # ErisPulse
15
12
 
16
13
  **事件驱动的多平台机器人开发框架**
17
14
 
15
+ > 知道吗?ErisPulse 支持完整的 Vibe Coding 工作流,让 AI 直接生成可用模块
16
+ > [查看](docs/zh-CN/ai-support/README.md)
17
+
18
+ <br/>
19
+
18
20
  [![PyPI](https://img.shields.io/pypi/v/ErisPulse?style=flat-square)](https://pypi.org/project/ErisPulse/)
19
21
  [![Docker](https://img.shields.io/badge/Docker-2496ED?style=flat-square&logo=docker&logoColor=white)](https://hub.docker.com/r/erispulse/erispulse)
20
22
  [![Python](https://img.shields.io/badge/Python-3.10+-3776AB?style=flat-square&logo=python&logoColor=white)](https://pypi.org/project/ErisPulse/)
21
23
  [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
22
24
  [![Socket Badge](https://socket.dev/api/badge/pypi/package/ErisPulse/latest)](https://socket.dev/pypi/package/ErisPulse)
23
25
 
26
+ </div>
27
+
28
+ <br/>
29
+
30
+ <div align="center">
31
+
32
+ 基于 OneBot12 标准接口,一次编写,多平台部署。灵活的插件系统、热重载支持和完整的开发者工具链,适用于从简单聊天机器人到复杂自动化系统的各种场景。
33
+
34
+ </div>
35
+
36
+ ---
37
+
38
+ <div align="center">
39
+
40
+ ### 核心特性
41
+
42
+ </div>
43
+
44
+ <table>
45
+ <tr>
46
+ <td width="50%" align="center" valign="top">
47
+ <br/>
48
+
49
+ ### 事件驱动架构
50
+
51
+ 基于 OneBot12 标准的清晰事件模型,让消息处理逻辑更加直观和高效
52
+
53
+ </td>
54
+ <td width="50%" align="center" valign="top">
55
+ <br/>
56
+
57
+ ### 跨平台兼容
58
+
59
+ 插件模块编写一次即可在所有平台使用,无需为不同平台重复开发
60
+
24
61
  </td>
25
62
  </tr>
26
- </table>
63
+ <tr>
64
+ <td width="50%" align="center" valign="top">
65
+ <br/>
27
66
 
28
- ---
67
+ ### 模块化设计
29
68
 
30
- ## 简介
69
+ 灵活的插件系统,易于扩展和集成,支持热插拔模块管理
31
70
 
32
- ErisPulse 是一个基于 Python 的事件驱动型多平台机器人开发框架。通过统一的 OneBot12 标准接口,您可以一次编写代码,同时在云湖、Telegram、OneBot 等多个平台部署相同功能的机器人。框架提供灵活的模块(`插件`)系统、热重载支持和完整的开发者工具链,适用于从简单聊天机器人到复杂自动化系统的各种场景。
71
+ </td>
72
+ <td width="50%" align="center" valign="top">
73
+ <br/>
33
74
 
34
- ## 核心特性
75
+ ### 热重载支持
35
76
 
36
- - **事件驱动架构** - 基于 OneBot12 标准的清晰事件模型
37
- - **跨平台兼容** - 插件模块编写一次即可在所有平台使用
38
- - **模块化设计** - 灵活的插件系统,易于扩展和集成
39
- - **热重载支持** - 开发时无需重启即可重新加载代码
40
- - **完整工具链** - 提供 CLI 工具、包管理和自动化脚本
77
+ 开发时无需重启即可重新加载代码,大幅提升开发迭代效率
41
78
 
42
- ## 支持的适配器
79
+ </td>
80
+ </tr>
81
+ </table>
82
+
83
+ ---
84
+
85
+ ### 支持的适配器
43
86
 
44
87
  欢迎您贡献适配器!
45
88
 
@@ -59,9 +102,11 @@ ErisPulse 是一个基于 Python 的事件驱动型多平台机器人开发框
59
102
 
60
103
  查看 [适配器详情介绍](docs/zh-CN/platform-guide/README.md)
61
104
 
62
- ## 快速开始
105
+ ---
63
106
 
64
- ### 使用 Docker (推荐)
107
+ ### 快速开始
108
+
109
+ #### 使用 Docker (推荐)
65
110
 
66
111
  ```bash
67
112
  docker pull erispulse/erispulse:latest
@@ -142,7 +187,7 @@ docker pull erispulse/erispulse:dev
142
187
 
143
188
  </details>
144
189
 
145
- ### 1Panel 应用商店
190
+ #### 1Panel 应用商店
146
191
 
147
192
  通过 [1Panel](https://1panel.cn) 应用商店一键安装 ErisPulse,详见 [ErisPulse-1Panel](https://github.com/ErisPulse/ErisPulse-1Panel)。
148
193
 
@@ -150,7 +195,7 @@ docker pull erispulse/erispulse:dev
150
195
  bash <(curl -sL https://get-1panel.erisdev.com/install.sh)
151
196
  ```
152
197
 
153
- ### 使用 pip 安装
198
+ #### 使用 pip 安装
154
199
 
155
200
  ```bash
156
201
  pip install ErisPulse
@@ -166,7 +211,7 @@ uv pip install ErisPulse
166
211
 
167
212
  > 如果您的 Python 版本低于 3.10,可以使用一键安装脚本自动配置环境。详见 [安装脚本说明](scripts/install/)。
168
213
 
169
- ### 初始化项目
214
+ #### 初始化项目
170
215
 
171
216
  ```bash
172
217
  # 交互式初始化
@@ -176,7 +221,7 @@ epsdk init
176
221
  epsdk init -q -n my_bot
177
222
  ```
178
223
 
179
- ### 创建第一个机器人
224
+ #### 创建第一个机器人
180
225
 
181
226
  创建 `main.py` 文件:
182
227
 
@@ -237,48 +282,50 @@ epsdk run main.py --reload
237
282
  - [快速开始指南](docs/zh-CN/quick-start.md)
238
283
  - [入门指南](docs/zh-CN/getting-started/)
239
284
 
240
- ## 应用场景
285
+ ---
241
286
 
242
- - **多平台机器人** - 在多个平台部署相同功能的机器人
243
- - **聊天助手** - 接入 AI 聊天模块,实现娱乐和交互
244
- - **自动化工具** - 消息通知、任务管理、数据收集
245
- - **消息转发** - 跨平台消息同步和转发
287
+ ### 应用场景
246
288
 
247
- ## 文档资源
289
+ <div align="center">
290
+
291
+ | 多平台机器人 | 聊天助手 | 自动化工具 | 消息转发 |
292
+ |:---:|:---:|:---:|:---:|
293
+ | 在多个平台部署<br>相同功能的机器人 | 接入 AI 聊天模块<br>实现娱乐和交互 | 消息通知、任务管理<br>数据收集 | 跨平台消息<br>同步和转发 |
294
+
295
+ </div>
296
+
297
+ ---
298
+
299
+ ### 文档与资源
248
300
 
249
301
  | 简体中文 | English | 繁體中文 |
250
- |----------------|----------------|----------------|
302
+ |:---:|:---:|:---:|
251
303
  | [文档入口](docs/zh-CN/README.md) | [Documentation](docs/en/README.md) | [文檔入口](docs/zh-TW/README.md) |
252
304
 
253
- ## 外部资源
254
-
255
305
  | 平台 | 主站点 | 备用站点 |
256
306
  |------|--------|---------|
257
- | 文档 | [erisdev.com](https://www.erisdev.com/#docs) | [Cloudflare](https://erispulse.pages.dev/#docs) [GitHub](https://erispulse.github.io/#docs) [Netlify](https://erispulse.netlify.app/#docs) |
258
- | 模块市场 | [erisdev.com](https://www.erisdev.com/#market) | [Cloudflare](https://erispulse.pages.dev/#market) [GitHub](https://erispulse.github.io/#market) [Netlify](https://erispulse.netlify.app/#market) |
307
+ | 文档 | [erisdev.com](https://www.erisdev.com/#docs) | [Cloudflare](https://erispulse.pages.dev/#docs) · [GitHub](https://erispulse.github.io/#docs) · [Netlify](https://erispulse.netlify.app/#docs) |
308
+ | 模块市场 | [erisdev.com](https://www.erisdev.com/#market) | [Cloudflare](https://erispulse.pages.dev/#market) · [GitHub](https://erispulse.github.io/#market) · [Netlify](https://erispulse.netlify.app/#market) |
259
309
 
260
- ## 贡献指南
261
-
262
- ErisPulse 项目的健全性还需要您的一份力!我们欢迎各种形式的贡献,包括但不限于:
263
-
264
- 1. **报告问题**
265
- 在 [GitHub Issues](https://github.com/ErisPulse/ErisPulse/issues) 提交 bug 报告
310
+ ---
266
311
 
267
- 2. **功能请求**
268
- 通过 [社区讨论](https://github.com/ErisPulse/ErisPulse/discussions) 提出新想法
312
+ ### 贡献指南
269
313
 
270
- 3. **代码贡献**
271
- 提交 Pull Request 前请阅读我们的 [代码风格](docs/zh-CN/styleguide/) 以及 [贡献指南](CONTRIBUTING.md)
314
+ ErisPulse 项目的健全性还需要您的一份力!我们欢迎各种形式的贡献:
272
315
 
273
- 4. **文档改进**
274
- 帮助完善文档和示例代码
316
+ 1. **报告问题** — 在 [GitHub Issues](https://github.com/ErisPulse/ErisPulse/issues) 提交 bug 报告
317
+ 2. **功能请求** — 通过 [社区讨论](https://github.com/ErisPulse/ErisPulse/discussions) 提出新想法
318
+ 3. **代码贡献** — 提交 PR 前请阅读 [代码风格](docs/zh-CN/styleguide/) 及 [贡献指南](CONTRIBUTING.md)
319
+ 4. **文档改进** — 帮助完善文档和示例代码
275
320
 
276
321
  [加入社区讨论](https://github.com/ErisPulse/ErisPulse/discussions)
277
322
 
278
323
  ---
279
324
 
280
- ## 致谢
325
+ <div align="center">
281
326
 
282
- - 本项目部分代码基于 [sdkFrame](https://github.com/runoneall/sdkFrame)
283
- - 核心适配器标准化层基于 [OneBot12 规范](https://12.onebot.dev/)
284
- - 感谢所有为开源社区做出贡献的开发者和作者
327
+ ### 致谢
328
+
329
+ 本项目部分代码基于 [sdkFrame](https://github.com/runoneall/sdkFrame) · 核心适配器标准化层基于 [OneBot12 规范](https://12.onebot.dev/) · 感谢所有为开源社区做出贡献的开发者和作者
330
+
331
+ </div>
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "ErisPulse"
7
- version = "2.4.5-dev.3"
7
+ version = "2.4.6-dev.0"
8
8
  description = "ErisPulse 是一个模块化、可扩展的异步 Python SDK 框架,主要用于构建高效、可维护的机器人应用程序。"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -11,42 +11,42 @@ from argparse import ArgumentParser
11
11
  class Command(ABC):
12
12
  """
13
13
  命令基类
14
-
14
+
15
15
  所有 CLI 命令都应继承此类并实现抽象方法
16
-
16
+
17
17
  {!--< tips >!--}
18
18
  1. 每个命令类必须实现 add_arguments 和 execute 方法
19
19
  2. name 和 description 为类属性,必须在子类中定义
20
20
  3. execute 方法接收解析后的 args 对象
21
21
  {!--< /tips >!--}
22
22
  """
23
-
23
+
24
24
  name: str = "" # 命令名称
25
25
  description: str = "" # 命令描述
26
-
26
+
27
27
  @abstractmethod
28
28
  def add_arguments(self, parser: ArgumentParser):
29
29
  """
30
30
  添加命令参数
31
-
31
+
32
32
  :param parser: ArgumentParser 实例
33
33
  """
34
34
  pass
35
-
35
+
36
36
  @abstractmethod
37
37
  def execute(self, args):
38
38
  """
39
39
  执行命令
40
-
40
+
41
41
  :param args: 解析后的参数对象
42
42
  """
43
43
  pass
44
-
44
+
45
45
  @property
46
46
  def help(self) -> str:
47
47
  """
48
48
  获取帮助信息
49
-
49
+
50
50
  :return: 命令描述
51
51
  """
52
52
  return self.description