RedLotus 1.0.0__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 (172) hide show
  1. redlotus-1.0.0/MANIFEST.in +21 -0
  2. redlotus-1.0.0/PKG-INFO +116 -0
  3. redlotus-1.0.0/README.md +67 -0
  4. redlotus-1.0.0/pyproject.toml +67 -0
  5. redlotus-1.0.0/setup.cfg +4 -0
  6. redlotus-1.0.0/src/RedLotus.egg-info/PKG-INFO +116 -0
  7. redlotus-1.0.0/src/RedLotus.egg-info/SOURCES.txt +170 -0
  8. redlotus-1.0.0/src/RedLotus.egg-info/dependency_links.txt +1 -0
  9. redlotus-1.0.0/src/RedLotus.egg-info/entry_points.txt +2 -0
  10. redlotus-1.0.0/src/RedLotus.egg-info/requires.txt +48 -0
  11. redlotus-1.0.0/src/RedLotus.egg-info/top_level.txt +1 -0
  12. redlotus-1.0.0/src/redlotus/API/QQ.py +154 -0
  13. redlotus-1.0.0/src/redlotus/API/WeChat.py +94 -0
  14. redlotus-1.0.0/src/redlotus/API/__init__.py +0 -0
  15. redlotus-1.0.0/src/redlotus/API/base.py +631 -0
  16. redlotus-1.0.0/src/redlotus/API/config.yaml.example +25 -0
  17. redlotus-1.0.0/src/redlotus/API/qq_media_helpers.py +201 -0
  18. redlotus-1.0.0/src/redlotus/ModelGateway/ModelChecker.py +788 -0
  19. redlotus-1.0.0/src/redlotus/ModelGateway/__init__.py +0 -0
  20. redlotus-1.0.0/src/redlotus/ModelGateway/agent_factory.py +134 -0
  21. redlotus-1.0.0/src/redlotus/ModelGateway/model_factory.py +179 -0
  22. redlotus-1.0.0/src/redlotus/ModelGateway/usage_accounting.py +403 -0
  23. redlotus-1.0.0/src/redlotus/RAG/DataBase.py +296 -0
  24. redlotus-1.0.0/src/redlotus/RAG/RAG.py +181 -0
  25. redlotus-1.0.0/src/redlotus/RAG/__init__.py +3 -0
  26. redlotus-1.0.0/src/redlotus/RAG/embedding_function.py +115 -0
  27. redlotus-1.0.0/src/redlotus/RAG/storage_path.py +79 -0
  28. redlotus-1.0.0/src/redlotus/__init__.py +0 -0
  29. redlotus-1.0.0/src/redlotus/agent_core/__init__.py +1 -0
  30. redlotus-1.0.0/src/redlotus/agent_core/cli_controller.py +357 -0
  31. redlotus-1.0.0/src/redlotus/agent_core/entrypoint.py +38 -0
  32. redlotus-1.0.0/src/redlotus/agent_core/goal_mode.py +161 -0
  33. redlotus-1.0.0/src/redlotus/agent_core/input_messages.py +60 -0
  34. redlotus-1.0.0/src/redlotus/agent_core/memory_runtime.py +76 -0
  35. redlotus-1.0.0/src/redlotus/agent_core/roles.py +92 -0
  36. redlotus-1.0.0/src/redlotus/agent_core/system.py +827 -0
  37. redlotus-1.0.0/src/redlotus/cli/__init__.py +27 -0
  38. redlotus-1.0.0/src/redlotus/cli/cli_commands.py +840 -0
  39. redlotus-1.0.0/src/redlotus/cli/cli_ui.py +92 -0
  40. redlotus-1.0.0/src/redlotus/cli/completer.py +104 -0
  41. redlotus-1.0.0/src/redlotus/cli/completion.py +127 -0
  42. redlotus-1.0.0/src/redlotus/cli/diff_view.py +140 -0
  43. redlotus-1.0.0/src/redlotus/cli/file_ref.py +238 -0
  44. redlotus-1.0.0/src/redlotus/cli/output.py +149 -0
  45. redlotus-1.0.0/src/redlotus/cli/panel.py +446 -0
  46. redlotus-1.0.0/src/redlotus/cli/pending_review.py +128 -0
  47. redlotus-1.0.0/src/redlotus/cli/render.py +192 -0
  48. redlotus-1.0.0/src/redlotus/cli/repl.py +152 -0
  49. redlotus-1.0.0/src/redlotus/cli/tui.py +934 -0
  50. redlotus-1.0.0/src/redlotus/config/__init__.py +0 -0
  51. redlotus-1.0.0/src/redlotus/config/app_config.py +273 -0
  52. redlotus-1.0.0/src/redlotus/config.json +115 -0
  53. redlotus-1.0.0/src/redlotus/infra/__init__.py +0 -0
  54. redlotus-1.0.0/src/redlotus/infra/logger.py +187 -0
  55. redlotus-1.0.0/src/redlotus/infra/path_sandbox.py +74 -0
  56. redlotus-1.0.0/src/redlotus/infra/paths.py +85 -0
  57. redlotus-1.0.0/src/redlotus/infra/persist_utils.py +94 -0
  58. redlotus-1.0.0/src/redlotus/infra/shared_http.py +36 -0
  59. redlotus-1.0.0/src/redlotus/infra/subprocess_runner.py +73 -0
  60. redlotus-1.0.0/src/redlotus/prompt.py +125 -0
  61. redlotus-1.0.0/src/redlotus/prompts/LongTermMemory/MEMORY_GUIDANCE.md +19 -0
  62. redlotus-1.0.0/src/redlotus/prompts/LongTermMemory/soul_user_consolidation.md +60 -0
  63. redlotus-1.0.0/src/redlotus/prompts/common_conduct.md +28 -0
  64. redlotus-1.0.0/src/redlotus/prompts/context_compress_structured_system.md +49 -0
  65. redlotus-1.0.0/src/redlotus/prompts/coordinator_system.md +24 -0
  66. redlotus-1.0.0/src/redlotus/prompts/goal_iteration.md +34 -0
  67. redlotus-1.0.0/src/redlotus/prompts/manager_planning_continue.md +11 -0
  68. redlotus-1.0.0/src/redlotus/prompts/manager_planning_new.md +14 -0
  69. redlotus-1.0.0/src/redlotus/prompts/manager_summary.md +16 -0
  70. redlotus-1.0.0/src/redlotus/prompts/manager_system.md +44 -0
  71. redlotus-1.0.0/src/redlotus/prompts/skills_layout.md +11 -0
  72. redlotus-1.0.0/src/redlotus/prompts/worker_system.md +52 -0
  73. redlotus-1.0.0/src/redlotus/runtime/__init__.py +0 -0
  74. redlotus-1.0.0/src/redlotus/runtime/lifecycle.py +546 -0
  75. redlotus-1.0.0/src/redlotus/runtime/runtime_state.py +141 -0
  76. redlotus-1.0.0/src/redlotus/runtime/tool_telemetry.py +117 -0
  77. redlotus-1.0.0/src/redlotus/runtime/worker_result.py +71 -0
  78. redlotus-1.0.0/src/redlotus/skills/SkillsManager.py +252 -0
  79. redlotus-1.0.0/src/redlotus/skills/SkillsTools.py +156 -0
  80. redlotus-1.0.0/src/redlotus/skills/__init__.py +0 -0
  81. redlotus-1.0.0/src/redlotus/skills/agent-browser-clawdbot/.clawhub/origin.json +7 -0
  82. redlotus-1.0.0/src/redlotus/skills/agent-browser-clawdbot/SKILL.md +206 -0
  83. redlotus-1.0.0/src/redlotus/skills/agent-browser-clawdbot/_meta.json +6 -0
  84. redlotus-1.0.0/src/redlotus/skills/agentic-coding/SKILL.md +150 -0
  85. redlotus-1.0.0/src/redlotus/skills/agentic-coding/handoff.md +34 -0
  86. redlotus-1.0.0/src/redlotus/skills/agentic-coding/memory-template.md +86 -0
  87. redlotus-1.0.0/src/redlotus/skills/agentic-coding/prompt-contracts.md +69 -0
  88. redlotus-1.0.0/src/redlotus/skills/agentic-coding/protocol.md +65 -0
  89. redlotus-1.0.0/src/redlotus/skills/agentic-coding/setup.md +52 -0
  90. redlotus-1.0.0/src/redlotus/skills/bfl-api/SKILL.md +264 -0
  91. redlotus-1.0.0/src/redlotus/skills/bfl-api/references/api-key-setup.md +55 -0
  92. redlotus-1.0.0/src/redlotus/skills/bfl-api/references/code-examples/curl-examples.sh +160 -0
  93. redlotus-1.0.0/src/redlotus/skills/bfl-api/references/code-examples/python-client.py +476 -0
  94. redlotus-1.0.0/src/redlotus/skills/bfl-api/references/code-examples/typescript-client.ts +480 -0
  95. redlotus-1.0.0/src/redlotus/skills/bfl-api/references/endpoints.md +286 -0
  96. redlotus-1.0.0/src/redlotus/skills/bfl-api/references/error-handling.md +334 -0
  97. redlotus-1.0.0/src/redlotus/skills/bfl-api/references/polling-patterns.md +240 -0
  98. redlotus-1.0.0/src/redlotus/skills/bfl-api/references/rate-limiting.md +246 -0
  99. redlotus-1.0.0/src/redlotus/skills/bfl-api/references/webhook-integration.md +339 -0
  100. redlotus-1.0.0/src/redlotus/skills/ci-cd/.clawhub/origin.json +7 -0
  101. redlotus-1.0.0/src/redlotus/skills/ci-cd/SKILL.md +81 -0
  102. redlotus-1.0.0/src/redlotus/skills/ci-cd/_meta.json +6 -0
  103. redlotus-1.0.0/src/redlotus/skills/ci-cd/mobile.md +115 -0
  104. redlotus-1.0.0/src/redlotus/skills/ci-cd/templates.md +138 -0
  105. redlotus-1.0.0/src/redlotus/skills/ci-cd/web.md +123 -0
  106. redlotus-1.0.0/src/redlotus/skills/crypto-backtest/.clawhub/origin.json +7 -0
  107. redlotus-1.0.0/src/redlotus/skills/crypto-backtest/SKILL.md +63 -0
  108. redlotus-1.0.0/src/redlotus/skills/crypto-backtest/_meta.json +6 -0
  109. redlotus-1.0.0/src/redlotus/skills/crypto-backtest/references/custom_strategy.md +41 -0
  110. redlotus-1.0.0/src/redlotus/skills/crypto-backtest/references/strategy_notes.md +33 -0
  111. redlotus-1.0.0/src/redlotus/skills/crypto-backtest/scripts/backtest_engine.py +364 -0
  112. redlotus-1.0.0/src/redlotus/skills/crypto-backtest/scripts/sweep.py +94 -0
  113. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/SKILL.md +82 -0
  114. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/core-principles.md +138 -0
  115. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/flux1-models.md +176 -0
  116. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/flux2-models.md +202 -0
  117. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/hex-color-prompting.md +210 -0
  118. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/i2i-prompting.md +293 -0
  119. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/json-structured-prompting.md +241 -0
  120. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/model-selection-guide.md +246 -0
  121. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/multi-reference-editing.md +241 -0
  122. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/negative-prompt-alternatives.md +202 -0
  123. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/t2i-prompting.md +230 -0
  124. redlotus-1.0.0/src/redlotus/skills/flux-best-practices/rules/typography-text.md +241 -0
  125. redlotus-1.0.0/src/redlotus/skills/manage-skills/SKILL.md +124 -0
  126. redlotus-1.0.0/src/redlotus/skills/skill-creator-operator/SKILL.md +88 -0
  127. redlotus-1.0.0/src/redlotus/skills/skill-creator-operator/references/LINKS.md +11 -0
  128. redlotus-1.0.0/src/redlotus/skills/skill-creator-operator/references/OVERVIEW.md +11 -0
  129. redlotus-1.0.0/src/redlotus/skills/skill-creator-operator/references/PRINCIPLES.md +37 -0
  130. redlotus-1.0.0/src/redlotus/skills/skill-creator-operator/scripts/scaffold-skill.mjs +47 -0
  131. redlotus-1.0.0/src/redlotus/skills/skill-template/SKILL.md +119 -0
  132. redlotus-1.0.0/src/redlotus/skills/skill-template/scripts/script.sh +101 -0
  133. redlotus-1.0.0/src/redlotus/skills/skill-template/scripts/skill-tmpl.sh +427 -0
  134. redlotus-1.0.0/src/redlotus/skills/skill-template/tips.md +10 -0
  135. redlotus-1.0.0/src/redlotus/skills/skill-vetter-1.0.0/SKILL.md +138 -0
  136. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/.clawhub/origin.json +7 -0
  137. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/SKILL.md +81 -0
  138. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/_meta.json +6 -0
  139. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/human_summary.md +16 -0
  140. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/ANTI_PATTERNS.md +67 -0
  141. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/COMPONENTS.md +14 -0
  142. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/CONSTRAINTS.md +16 -0
  143. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/LOCKS.md +46 -0
  144. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/USE_CASES.md +8 -0
  145. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/WISDOM.md +48 -0
  146. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/components/abstract_api_-stateful.md +22 -0
  147. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/components/c_library_binding_layer.md +7 -0
  148. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/components/code_generation.md +13 -0
  149. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/components/function_api_-batch.md +13 -0
  150. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/components/series_support_layer.md +7 -0
  151. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/components/stream_api_-incremental.md +13 -0
  152. redlotus-1.0.0/src/redlotus/skills/talib-technical-analysis/references/seed.yaml +3134 -0
  153. redlotus-1.0.0/src/redlotus/skills/web-scraping/SKILL.md +75 -0
  154. redlotus-1.0.0/src/redlotus/tools/BasicTools.py +684 -0
  155. redlotus-1.0.0/src/redlotus/tools/ExtractFileContent.py +427 -0
  156. redlotus-1.0.0/src/redlotus/tools/ImageGeneration.py +114 -0
  157. redlotus-1.0.0/src/redlotus/tools/ManagementTools.py +301 -0
  158. redlotus-1.0.0/src/redlotus/tools/WorkerOrchestrator.py +437 -0
  159. redlotus-1.0.0/src/redlotus/tools/__init__.py +21 -0
  160. redlotus-1.0.0/src/redlotus/tools/browser_session.py +195 -0
  161. redlotus-1.0.0/src/redlotus/tools/conversation_log.py +297 -0
  162. redlotus-1.0.0/src/redlotus/tools/memory/__init__.py +21 -0
  163. redlotus-1.0.0/src/redlotus/tools/memory/chat_history.py +38 -0
  164. redlotus-1.0.0/src/redlotus/tools/memory/consolidation.py +53 -0
  165. redlotus-1.0.0/src/redlotus/tools/memory/hygiene.py +121 -0
  166. redlotus-1.0.0/src/redlotus/tools/memory/ltm.py +464 -0
  167. redlotus-1.0.0/src/redlotus/tools/memory/message_text.py +226 -0
  168. redlotus-1.0.0/src/redlotus/tools/memory/stm.py +553 -0
  169. redlotus-1.0.0/src/redlotus/workspace/__init__.py +0 -0
  170. redlotus-1.0.0/src/redlotus/workspace/workspace.py +146 -0
  171. redlotus-1.0.0/src/redlotus/workspace/workspace_load.py +118 -0
  172. redlotus-1.0.0/src/redlotus/workspace/workspace_picker.py +43 -0
@@ -0,0 +1,21 @@
1
+ include README.md
2
+ include src/redlotus/config.json
3
+
4
+ # 提示词模板(仅 .md;排除运行时 SOUL/USER 与 *.json 状态文件)
5
+ recursive-include src/redlotus/prompts *.md
6
+ exclude src/redlotus/prompts/LongTermMemory/SOUL.md
7
+ exclude src/redlotus/prompts/LongTermMemory/USER.md
8
+
9
+ # 随包基线技能(含 .clawhub 点目录、脚本与资源)
10
+ graft src/redlotus/skills
11
+
12
+ # QQ 机器人脱敏模板(绝不发布真实 config.yaml)
13
+ include src/redlotus/API/config.yaml.example
14
+
15
+ # 字节码 / 缓存 / 运行时日志 / 真实凭据 一律排除
16
+ global-exclude *.py[cod]
17
+ global-exclude __pycache__
18
+ global-exclude *.log
19
+ global-exclude *.log.*
20
+ exclude src/redlotus/API/config.yaml
21
+ recursive-exclude src/redlotus/skills __pycache__
@@ -0,0 +1,116 @@
1
+ Metadata-Version: 2.4
2
+ Name: RedLotus
3
+ Version: 1.0.0
4
+ Summary: 红莲极意 · 一个会自己长技能、记得住、能出门的终端 Agent
5
+ Requires-Python: >=3.12
6
+ Description-Content-Type: text/markdown
7
+ Requires-Dist: ddgs>=9.14.1
8
+ Requires-Dist: filelock>=3.29.0
9
+ Requires-Dist: genai-prices==0.0.57
10
+ Requires-Dist: httpx[http2]>=0.28.1
11
+ Requires-Dist: json-repair>=0.59.5
12
+ Requires-Dist: lancedb>=0.30.2
13
+ Requires-Dist: loguru>=0.7.0
14
+ Requires-Dist: numpy>=2.4.4
15
+ Requires-Dist: openai>=2.32.0
16
+ Requires-Dist: openpyxl>=3.1.5
17
+ Requires-Dist: pandas>=3.0.2
18
+ Requires-Dist: platformdirs>=4.9.0
19
+ Requires-Dist: prompt-toolkit>=3.0.0
20
+ Requires-Dist: pydantic-ai-slim[anthropic,google]==1.105.0
21
+ Requires-Dist: pymupdf>=1.27.2.3
22
+ Requires-Dist: python-docx>=1.2.0
23
+ Requires-Dist: python-dotenv>=1.2.2
24
+ Requires-Dist: pyyaml>=6.0.3
25
+ Requires-Dist: requests>=2.33.1
26
+ Requires-Dist: rich>=15.0.0
27
+ Requires-Dist: textual>=8.2.7
28
+ Provides-Extra: browser
29
+ Requires-Dist: playwright>=1.49.0; extra == "browser"
30
+ Provides-Extra: bots
31
+ Requires-Dist: ncatbot>=4.4.1.post1; extra == "bots"
32
+ Requires-Dist: wechatbot-sdk>=0.2.1; extra == "bots"
33
+ Provides-Extra: viz
34
+ Requires-Dist: matplotlib>=3.10.9; extra == "viz"
35
+ Requires-Dist: reportlab>=4.5.0; extra == "viz"
36
+ Requires-Dist: pillow>=12.2.0; extra == "viz"
37
+ Provides-Extra: build
38
+ Requires-Dist: pyinstaller>=6.20.0; extra == "build"
39
+ Provides-Extra: dev
40
+ Requires-Dist: pytest>=8.0.0; extra == "dev"
41
+ Requires-Dist: pytest-asyncio>=0.24.0; extra == "dev"
42
+ Provides-Extra: all
43
+ Requires-Dist: playwright>=1.49.0; extra == "all"
44
+ Requires-Dist: ncatbot>=4.4.1.post1; extra == "all"
45
+ Requires-Dist: wechatbot-sdk>=0.2.1; extra == "all"
46
+ Requires-Dist: matplotlib>=3.10.9; extra == "all"
47
+ Requires-Dist: reportlab>=4.5.0; extra == "all"
48
+ Requires-Dist: pillow>=12.2.0; extra == "all"
49
+
50
+ # ❦ 红莲极意 · RedLotus
51
+
52
+ > 一个好的 Agent 项目,从来不需要过度设计。
53
+ > 但它需要记得你说过的话、会叫帮手、还能在 QQ 里回你。
54
+
55
+ **红莲**是一朵会自己长技能的 AI:终端里和你对话,复杂事丢给 Worker,乱局交给 Coordinator 收拾;聊过的写进短时记忆,重要的烙进长期记忆;内置文件提取能读 PDF 的文本、表格、图片和页面结构,量化、回测、爬网页等领域能力则靠 `skills/` 现学现用,而不是堆一层又一层的框架。
56
+
57
+ ---
58
+
59
+ ## 它大概长什么样
60
+
61
+ ```
62
+ 你 ──► Manager(统筹)──► Worker × N(干活)
63
+
64
+ └── Coordinator(收尾、对齐上下文)
65
+ ```
66
+
67
+ - **记得住**:向量检索 + 长短时记忆,不是每次开机都失忆
68
+ - **会分工**:简单自己答,难了派工,不硬扛
69
+ - **能出门**:CLI 是主场,QQ / 微信机器人是副线(可选)
70
+ - **可武装**:`src/skills/` 即插即用,Agentic Coding、行情、回测都在里面
71
+
72
+ 底层:[Pydantic AI](https://ai.pydantic.dev/) · LanceDB · 你配置的任意 OpenAI 兼容 API
73
+
74
+ ---
75
+
76
+ ## 点火
77
+
78
+ **Python 3.12+** · Windows / Linux / macOS 均可
79
+
80
+ ```bash
81
+ pip install redlotus # 核心
82
+ pip install "redlotus[browser]" # 浏览器 Skill(装后再 playwright install chromium)
83
+ pip install "redlotus[bots]" # QQ / 微信 机器人
84
+ ```
85
+
86
+ 首次运行会在**用户配置目录**生成 `config.json`(Windows:`%LOCALAPPDATA%\RedLotus`;Linux:`~/.config/RedLotus`)。在其中填好 `BASE_URL`、`API_KEY`、`RAG_models` 与各角色模型;也可用环境变量或就近的 `.env` 覆盖同名项。日志 / 向量库(RAG)/ 长期记忆落在**用户数据目录**;Agent 工作产物 `WorkDatabase/` 与会话快照 `.redlotus/` 落在你**启动时的当前目录**。
87
+
88
+ ```bash
89
+ redlotus # 终端见真章
90
+ ```
91
+
92
+ 想让它在群里说话:
93
+
94
+ ```bash
95
+ python -m redlotus.API.QQ # 需配置 QQBOT 等环境变量
96
+ python -m redlotus.API.WeChat # 扫码登录
97
+ ```
98
+
99
+ QQ 机器人前置:先装好并运行 [NapCat](https://github.com/NapNeko/NapCatQQ)(提供 OneBot WebSocket 接口)。首次会在用户配置目录从随包模板生成 `config.yaml`,在其中填好 `bt_uin`(机器人 QQ 号,也可用环境变量 `QQBOT_ID` 覆盖)与 `napcat.webui_token`(需为强密码:至少 12 位且含数字、大小写字母与特殊符号)。配置缺失或无效时启动会直接报错退出,不会静默卡住。
100
+
101
+ ---
102
+
103
+ ## 给折腾的人
104
+
105
+ ```bash
106
+ pip install -e ".[dev]" # 开发安装(仓库根;之后 redlotus 命令直连源码)
107
+ python main.py # 等价于 redlotus,便于断点调试
108
+ pytest tests/ -q # 冒烟
109
+ pip install ".[build]" && pyinstaller build.spec # 打成可执行目录(可选)
110
+ ```
111
+
112
+ 代码在 `src/redlotus/`,命令入口 `redlotus`(= `redlotus.agent_core.entrypoint:main`)。随包默认配置 `src/redlotus/config.json` 仅作首次 seed 用,运行时实际读写**用户配置目录**里的 `config.json`。
113
+
114
+ ---
115
+
116
+ *启动后你会看到那行字:* **❦ ──── 红莲极意 · RedLotus Agent ──── ❦**
@@ -0,0 +1,67 @@
1
+ # ❦ 红莲极意 · RedLotus
2
+
3
+ > 一个好的 Agent 项目,从来不需要过度设计。
4
+ > 但它需要记得你说过的话、会叫帮手、还能在 QQ 里回你。
5
+
6
+ **红莲**是一朵会自己长技能的 AI:终端里和你对话,复杂事丢给 Worker,乱局交给 Coordinator 收拾;聊过的写进短时记忆,重要的烙进长期记忆;内置文件提取能读 PDF 的文本、表格、图片和页面结构,量化、回测、爬网页等领域能力则靠 `skills/` 现学现用,而不是堆一层又一层的框架。
7
+
8
+ ---
9
+
10
+ ## 它大概长什么样
11
+
12
+ ```
13
+ 你 ──► Manager(统筹)──► Worker × N(干活)
14
+
15
+ └── Coordinator(收尾、对齐上下文)
16
+ ```
17
+
18
+ - **记得住**:向量检索 + 长短时记忆,不是每次开机都失忆
19
+ - **会分工**:简单自己答,难了派工,不硬扛
20
+ - **能出门**:CLI 是主场,QQ / 微信机器人是副线(可选)
21
+ - **可武装**:`src/skills/` 即插即用,Agentic Coding、行情、回测都在里面
22
+
23
+ 底层:[Pydantic AI](https://ai.pydantic.dev/) · LanceDB · 你配置的任意 OpenAI 兼容 API
24
+
25
+ ---
26
+
27
+ ## 点火
28
+
29
+ **Python 3.12+** · Windows / Linux / macOS 均可
30
+
31
+ ```bash
32
+ pip install redlotus # 核心
33
+ pip install "redlotus[browser]" # 浏览器 Skill(装后再 playwright install chromium)
34
+ pip install "redlotus[bots]" # QQ / 微信 机器人
35
+ ```
36
+
37
+ 首次运行会在**用户配置目录**生成 `config.json`(Windows:`%LOCALAPPDATA%\RedLotus`;Linux:`~/.config/RedLotus`)。在其中填好 `BASE_URL`、`API_KEY`、`RAG_models` 与各角色模型;也可用环境变量或就近的 `.env` 覆盖同名项。日志 / 向量库(RAG)/ 长期记忆落在**用户数据目录**;Agent 工作产物 `WorkDatabase/` 与会话快照 `.redlotus/` 落在你**启动时的当前目录**。
38
+
39
+ ```bash
40
+ redlotus # 终端见真章
41
+ ```
42
+
43
+ 想让它在群里说话:
44
+
45
+ ```bash
46
+ python -m redlotus.API.QQ # 需配置 QQBOT 等环境变量
47
+ python -m redlotus.API.WeChat # 扫码登录
48
+ ```
49
+
50
+ QQ 机器人前置:先装好并运行 [NapCat](https://github.com/NapNeko/NapCatQQ)(提供 OneBot WebSocket 接口)。首次会在用户配置目录从随包模板生成 `config.yaml`,在其中填好 `bt_uin`(机器人 QQ 号,也可用环境变量 `QQBOT_ID` 覆盖)与 `napcat.webui_token`(需为强密码:至少 12 位且含数字、大小写字母与特殊符号)。配置缺失或无效时启动会直接报错退出,不会静默卡住。
51
+
52
+ ---
53
+
54
+ ## 给折腾的人
55
+
56
+ ```bash
57
+ pip install -e ".[dev]" # 开发安装(仓库根;之后 redlotus 命令直连源码)
58
+ python main.py # 等价于 redlotus,便于断点调试
59
+ pytest tests/ -q # 冒烟
60
+ pip install ".[build]" && pyinstaller build.spec # 打成可执行目录(可选)
61
+ ```
62
+
63
+ 代码在 `src/redlotus/`,命令入口 `redlotus`(= `redlotus.agent_core.entrypoint:main`)。随包默认配置 `src/redlotus/config.json` 仅作首次 seed 用,运行时实际读写**用户配置目录**里的 `config.json`。
64
+
65
+ ---
66
+
67
+ *启动后你会看到那行字:* **❦ ──── 红莲极意 · RedLotus Agent ──── ❦**
@@ -0,0 +1,67 @@
1
+ [build-system]
2
+ requires = ["setuptools>=68", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "RedLotus"
7
+ version = "1.0.0"
8
+ description = "红莲极意 · 一个会自己长技能、记得住、能出门的终端 Agent"
9
+ readme = "README.md"
10
+ requires-python = ">=3.12"
11
+ dependencies = [
12
+ "ddgs>=9.14.1",
13
+ "filelock>=3.29.0",
14
+ "genai-prices==0.0.57",
15
+ "httpx[http2]>=0.28.1",
16
+ "json-repair>=0.59.5",
17
+ "lancedb>=0.30.2",
18
+ "loguru>=0.7.0",
19
+ "numpy>=2.4.4",
20
+ "openai>=2.32.0",
21
+ "openpyxl>=3.1.5",
22
+ "pandas>=3.0.2",
23
+ "platformdirs>=4.9.0",
24
+ "prompt-toolkit>=3.0.0",
25
+ "pydantic-ai-slim[anthropic,google]==1.105.0",
26
+ "pymupdf>=1.27.2.3",
27
+ "python-docx>=1.2.0",
28
+ "python-dotenv>=1.2.2",
29
+ "pyyaml>=6.0.3",
30
+ "requests>=2.33.1",
31
+ "rich>=15.0.0",
32
+ "textual>=8.2.7",
33
+ ]
34
+
35
+ [project.optional-dependencies]
36
+ # 浏览器自动化(用后需 `playwright install chromium`)
37
+ browser = ["playwright>=1.49.0"]
38
+ # QQ / 微信 机器人
39
+ bots = ["ncatbot>=4.4.1.post1", "wechatbot-sdk>=0.2.1"]
40
+ # 绘图 / PDF 生成 / 图像(量化回测等技能用)
41
+ viz = ["matplotlib>=3.10.9", "reportlab>=4.5.0", "pillow>=12.2.0"]
42
+ # 打成可执行文件
43
+ build = ["pyinstaller>=6.20.0"]
44
+ dev = ["pytest>=8.0.0", "pytest-asyncio>=0.24.0"]
45
+ all = [
46
+ "playwright>=1.49.0",
47
+ "ncatbot>=4.4.1.post1",
48
+ "wechatbot-sdk>=0.2.1",
49
+ "matplotlib>=3.10.9",
50
+ "reportlab>=4.5.0",
51
+ "pillow>=12.2.0",
52
+ ]
53
+
54
+ [project.scripts]
55
+ redlotus = "redlotus.agent_core.entrypoint:main"
56
+
57
+ [tool.setuptools]
58
+ include-package-data = true
59
+
60
+ [tool.setuptools.packages.find]
61
+ where = ["src"]
62
+ include = ["redlotus*"]
63
+
64
+ [tool.pytest.ini_options]
65
+ testpaths = ["tests"]
66
+ pythonpath = ["src"]
67
+ asyncio_mode = "auto"
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,116 @@
1
+ Metadata-Version: 2.4
2
+ Name: RedLotus
3
+ Version: 1.0.0
4
+ Summary: 红莲极意 · 一个会自己长技能、记得住、能出门的终端 Agent
5
+ Requires-Python: >=3.12
6
+ Description-Content-Type: text/markdown
7
+ Requires-Dist: ddgs>=9.14.1
8
+ Requires-Dist: filelock>=3.29.0
9
+ Requires-Dist: genai-prices==0.0.57
10
+ Requires-Dist: httpx[http2]>=0.28.1
11
+ Requires-Dist: json-repair>=0.59.5
12
+ Requires-Dist: lancedb>=0.30.2
13
+ Requires-Dist: loguru>=0.7.0
14
+ Requires-Dist: numpy>=2.4.4
15
+ Requires-Dist: openai>=2.32.0
16
+ Requires-Dist: openpyxl>=3.1.5
17
+ Requires-Dist: pandas>=3.0.2
18
+ Requires-Dist: platformdirs>=4.9.0
19
+ Requires-Dist: prompt-toolkit>=3.0.0
20
+ Requires-Dist: pydantic-ai-slim[anthropic,google]==1.105.0
21
+ Requires-Dist: pymupdf>=1.27.2.3
22
+ Requires-Dist: python-docx>=1.2.0
23
+ Requires-Dist: python-dotenv>=1.2.2
24
+ Requires-Dist: pyyaml>=6.0.3
25
+ Requires-Dist: requests>=2.33.1
26
+ Requires-Dist: rich>=15.0.0
27
+ Requires-Dist: textual>=8.2.7
28
+ Provides-Extra: browser
29
+ Requires-Dist: playwright>=1.49.0; extra == "browser"
30
+ Provides-Extra: bots
31
+ Requires-Dist: ncatbot>=4.4.1.post1; extra == "bots"
32
+ Requires-Dist: wechatbot-sdk>=0.2.1; extra == "bots"
33
+ Provides-Extra: viz
34
+ Requires-Dist: matplotlib>=3.10.9; extra == "viz"
35
+ Requires-Dist: reportlab>=4.5.0; extra == "viz"
36
+ Requires-Dist: pillow>=12.2.0; extra == "viz"
37
+ Provides-Extra: build
38
+ Requires-Dist: pyinstaller>=6.20.0; extra == "build"
39
+ Provides-Extra: dev
40
+ Requires-Dist: pytest>=8.0.0; extra == "dev"
41
+ Requires-Dist: pytest-asyncio>=0.24.0; extra == "dev"
42
+ Provides-Extra: all
43
+ Requires-Dist: playwright>=1.49.0; extra == "all"
44
+ Requires-Dist: ncatbot>=4.4.1.post1; extra == "all"
45
+ Requires-Dist: wechatbot-sdk>=0.2.1; extra == "all"
46
+ Requires-Dist: matplotlib>=3.10.9; extra == "all"
47
+ Requires-Dist: reportlab>=4.5.0; extra == "all"
48
+ Requires-Dist: pillow>=12.2.0; extra == "all"
49
+
50
+ # ❦ 红莲极意 · RedLotus
51
+
52
+ > 一个好的 Agent 项目,从来不需要过度设计。
53
+ > 但它需要记得你说过的话、会叫帮手、还能在 QQ 里回你。
54
+
55
+ **红莲**是一朵会自己长技能的 AI:终端里和你对话,复杂事丢给 Worker,乱局交给 Coordinator 收拾;聊过的写进短时记忆,重要的烙进长期记忆;内置文件提取能读 PDF 的文本、表格、图片和页面结构,量化、回测、爬网页等领域能力则靠 `skills/` 现学现用,而不是堆一层又一层的框架。
56
+
57
+ ---
58
+
59
+ ## 它大概长什么样
60
+
61
+ ```
62
+ 你 ──► Manager(统筹)──► Worker × N(干活)
63
+
64
+ └── Coordinator(收尾、对齐上下文)
65
+ ```
66
+
67
+ - **记得住**:向量检索 + 长短时记忆,不是每次开机都失忆
68
+ - **会分工**:简单自己答,难了派工,不硬扛
69
+ - **能出门**:CLI 是主场,QQ / 微信机器人是副线(可选)
70
+ - **可武装**:`src/skills/` 即插即用,Agentic Coding、行情、回测都在里面
71
+
72
+ 底层:[Pydantic AI](https://ai.pydantic.dev/) · LanceDB · 你配置的任意 OpenAI 兼容 API
73
+
74
+ ---
75
+
76
+ ## 点火
77
+
78
+ **Python 3.12+** · Windows / Linux / macOS 均可
79
+
80
+ ```bash
81
+ pip install redlotus # 核心
82
+ pip install "redlotus[browser]" # 浏览器 Skill(装后再 playwright install chromium)
83
+ pip install "redlotus[bots]" # QQ / 微信 机器人
84
+ ```
85
+
86
+ 首次运行会在**用户配置目录**生成 `config.json`(Windows:`%LOCALAPPDATA%\RedLotus`;Linux:`~/.config/RedLotus`)。在其中填好 `BASE_URL`、`API_KEY`、`RAG_models` 与各角色模型;也可用环境变量或就近的 `.env` 覆盖同名项。日志 / 向量库(RAG)/ 长期记忆落在**用户数据目录**;Agent 工作产物 `WorkDatabase/` 与会话快照 `.redlotus/` 落在你**启动时的当前目录**。
87
+
88
+ ```bash
89
+ redlotus # 终端见真章
90
+ ```
91
+
92
+ 想让它在群里说话:
93
+
94
+ ```bash
95
+ python -m redlotus.API.QQ # 需配置 QQBOT 等环境变量
96
+ python -m redlotus.API.WeChat # 扫码登录
97
+ ```
98
+
99
+ QQ 机器人前置:先装好并运行 [NapCat](https://github.com/NapNeko/NapCatQQ)(提供 OneBot WebSocket 接口)。首次会在用户配置目录从随包模板生成 `config.yaml`,在其中填好 `bt_uin`(机器人 QQ 号,也可用环境变量 `QQBOT_ID` 覆盖)与 `napcat.webui_token`(需为强密码:至少 12 位且含数字、大小写字母与特殊符号)。配置缺失或无效时启动会直接报错退出,不会静默卡住。
100
+
101
+ ---
102
+
103
+ ## 给折腾的人
104
+
105
+ ```bash
106
+ pip install -e ".[dev]" # 开发安装(仓库根;之后 redlotus 命令直连源码)
107
+ python main.py # 等价于 redlotus,便于断点调试
108
+ pytest tests/ -q # 冒烟
109
+ pip install ".[build]" && pyinstaller build.spec # 打成可执行目录(可选)
110
+ ```
111
+
112
+ 代码在 `src/redlotus/`,命令入口 `redlotus`(= `redlotus.agent_core.entrypoint:main`)。随包默认配置 `src/redlotus/config.json` 仅作首次 seed 用,运行时实际读写**用户配置目录**里的 `config.json`。
113
+
114
+ ---
115
+
116
+ *启动后你会看到那行字:* **❦ ──── 红莲极意 · RedLotus Agent ──── ❦**
@@ -0,0 +1,170 @@
1
+ MANIFEST.in
2
+ README.md
3
+ pyproject.toml
4
+ src/RedLotus.egg-info/PKG-INFO
5
+ src/RedLotus.egg-info/SOURCES.txt
6
+ src/RedLotus.egg-info/dependency_links.txt
7
+ src/RedLotus.egg-info/entry_points.txt
8
+ src/RedLotus.egg-info/requires.txt
9
+ src/RedLotus.egg-info/top_level.txt
10
+ src/redlotus/__init__.py
11
+ src/redlotus/config.json
12
+ src/redlotus/prompt.py
13
+ src/redlotus/API/QQ.py
14
+ src/redlotus/API/WeChat.py
15
+ src/redlotus/API/__init__.py
16
+ src/redlotus/API/base.py
17
+ src/redlotus/API/config.yaml.example
18
+ src/redlotus/API/qq_media_helpers.py
19
+ src/redlotus/ModelGateway/ModelChecker.py
20
+ src/redlotus/ModelGateway/__init__.py
21
+ src/redlotus/ModelGateway/agent_factory.py
22
+ src/redlotus/ModelGateway/model_factory.py
23
+ src/redlotus/ModelGateway/usage_accounting.py
24
+ src/redlotus/RAG/DataBase.py
25
+ src/redlotus/RAG/RAG.py
26
+ src/redlotus/RAG/__init__.py
27
+ src/redlotus/RAG/embedding_function.py
28
+ src/redlotus/RAG/storage_path.py
29
+ src/redlotus/agent_core/__init__.py
30
+ src/redlotus/agent_core/cli_controller.py
31
+ src/redlotus/agent_core/entrypoint.py
32
+ src/redlotus/agent_core/goal_mode.py
33
+ src/redlotus/agent_core/input_messages.py
34
+ src/redlotus/agent_core/memory_runtime.py
35
+ src/redlotus/agent_core/roles.py
36
+ src/redlotus/agent_core/system.py
37
+ src/redlotus/cli/__init__.py
38
+ src/redlotus/cli/cli_commands.py
39
+ src/redlotus/cli/cli_ui.py
40
+ src/redlotus/cli/completer.py
41
+ src/redlotus/cli/completion.py
42
+ src/redlotus/cli/diff_view.py
43
+ src/redlotus/cli/file_ref.py
44
+ src/redlotus/cli/output.py
45
+ src/redlotus/cli/panel.py
46
+ src/redlotus/cli/pending_review.py
47
+ src/redlotus/cli/render.py
48
+ src/redlotus/cli/repl.py
49
+ src/redlotus/cli/tui.py
50
+ src/redlotus/config/__init__.py
51
+ src/redlotus/config/app_config.py
52
+ src/redlotus/infra/__init__.py
53
+ src/redlotus/infra/logger.py
54
+ src/redlotus/infra/path_sandbox.py
55
+ src/redlotus/infra/paths.py
56
+ src/redlotus/infra/persist_utils.py
57
+ src/redlotus/infra/shared_http.py
58
+ src/redlotus/infra/subprocess_runner.py
59
+ src/redlotus/prompts/common_conduct.md
60
+ src/redlotus/prompts/context_compress_structured_system.md
61
+ src/redlotus/prompts/coordinator_system.md
62
+ src/redlotus/prompts/goal_iteration.md
63
+ src/redlotus/prompts/manager_planning_continue.md
64
+ src/redlotus/prompts/manager_planning_new.md
65
+ src/redlotus/prompts/manager_summary.md
66
+ src/redlotus/prompts/manager_system.md
67
+ src/redlotus/prompts/skills_layout.md
68
+ src/redlotus/prompts/worker_system.md
69
+ src/redlotus/prompts/LongTermMemory/MEMORY_GUIDANCE.md
70
+ src/redlotus/prompts/LongTermMemory/soul_user_consolidation.md
71
+ src/redlotus/runtime/__init__.py
72
+ src/redlotus/runtime/lifecycle.py
73
+ src/redlotus/runtime/runtime_state.py
74
+ src/redlotus/runtime/tool_telemetry.py
75
+ src/redlotus/runtime/worker_result.py
76
+ src/redlotus/skills/SkillsManager.py
77
+ src/redlotus/skills/SkillsTools.py
78
+ src/redlotus/skills/__init__.py
79
+ src/redlotus/skills/agent-browser-clawdbot/SKILL.md
80
+ src/redlotus/skills/agent-browser-clawdbot/_meta.json
81
+ src/redlotus/skills/agent-browser-clawdbot/.clawhub/origin.json
82
+ src/redlotus/skills/agentic-coding/SKILL.md
83
+ src/redlotus/skills/agentic-coding/handoff.md
84
+ src/redlotus/skills/agentic-coding/memory-template.md
85
+ src/redlotus/skills/agentic-coding/prompt-contracts.md
86
+ src/redlotus/skills/agentic-coding/protocol.md
87
+ src/redlotus/skills/agentic-coding/setup.md
88
+ src/redlotus/skills/bfl-api/SKILL.md
89
+ src/redlotus/skills/bfl-api/references/api-key-setup.md
90
+ src/redlotus/skills/bfl-api/references/endpoints.md
91
+ src/redlotus/skills/bfl-api/references/error-handling.md
92
+ src/redlotus/skills/bfl-api/references/polling-patterns.md
93
+ src/redlotus/skills/bfl-api/references/rate-limiting.md
94
+ src/redlotus/skills/bfl-api/references/webhook-integration.md
95
+ src/redlotus/skills/bfl-api/references/code-examples/curl-examples.sh
96
+ src/redlotus/skills/bfl-api/references/code-examples/python-client.py
97
+ src/redlotus/skills/bfl-api/references/code-examples/typescript-client.ts
98
+ src/redlotus/skills/ci-cd/SKILL.md
99
+ src/redlotus/skills/ci-cd/_meta.json
100
+ src/redlotus/skills/ci-cd/mobile.md
101
+ src/redlotus/skills/ci-cd/templates.md
102
+ src/redlotus/skills/ci-cd/web.md
103
+ src/redlotus/skills/ci-cd/.clawhub/origin.json
104
+ src/redlotus/skills/crypto-backtest/SKILL.md
105
+ src/redlotus/skills/crypto-backtest/_meta.json
106
+ src/redlotus/skills/crypto-backtest/.clawhub/origin.json
107
+ src/redlotus/skills/crypto-backtest/references/custom_strategy.md
108
+ src/redlotus/skills/crypto-backtest/references/strategy_notes.md
109
+ src/redlotus/skills/crypto-backtest/scripts/backtest_engine.py
110
+ src/redlotus/skills/crypto-backtest/scripts/sweep.py
111
+ src/redlotus/skills/flux-best-practices/SKILL.md
112
+ src/redlotus/skills/flux-best-practices/rules/core-principles.md
113
+ src/redlotus/skills/flux-best-practices/rules/flux1-models.md
114
+ src/redlotus/skills/flux-best-practices/rules/flux2-models.md
115
+ src/redlotus/skills/flux-best-practices/rules/hex-color-prompting.md
116
+ src/redlotus/skills/flux-best-practices/rules/i2i-prompting.md
117
+ src/redlotus/skills/flux-best-practices/rules/json-structured-prompting.md
118
+ src/redlotus/skills/flux-best-practices/rules/model-selection-guide.md
119
+ src/redlotus/skills/flux-best-practices/rules/multi-reference-editing.md
120
+ src/redlotus/skills/flux-best-practices/rules/negative-prompt-alternatives.md
121
+ src/redlotus/skills/flux-best-practices/rules/t2i-prompting.md
122
+ src/redlotus/skills/flux-best-practices/rules/typography-text.md
123
+ src/redlotus/skills/manage-skills/SKILL.md
124
+ src/redlotus/skills/skill-creator-operator/SKILL.md
125
+ src/redlotus/skills/skill-creator-operator/references/LINKS.md
126
+ src/redlotus/skills/skill-creator-operator/references/OVERVIEW.md
127
+ src/redlotus/skills/skill-creator-operator/references/PRINCIPLES.md
128
+ src/redlotus/skills/skill-creator-operator/scripts/scaffold-skill.mjs
129
+ src/redlotus/skills/skill-template/SKILL.md
130
+ src/redlotus/skills/skill-template/tips.md
131
+ src/redlotus/skills/skill-template/scripts/script.sh
132
+ src/redlotus/skills/skill-template/scripts/skill-tmpl.sh
133
+ src/redlotus/skills/skill-vetter-1.0.0/SKILL.md
134
+ src/redlotus/skills/talib-technical-analysis/SKILL.md
135
+ src/redlotus/skills/talib-technical-analysis/_meta.json
136
+ src/redlotus/skills/talib-technical-analysis/human_summary.md
137
+ src/redlotus/skills/talib-technical-analysis/.clawhub/origin.json
138
+ src/redlotus/skills/talib-technical-analysis/references/ANTI_PATTERNS.md
139
+ src/redlotus/skills/talib-technical-analysis/references/COMPONENTS.md
140
+ src/redlotus/skills/talib-technical-analysis/references/CONSTRAINTS.md
141
+ src/redlotus/skills/talib-technical-analysis/references/LOCKS.md
142
+ src/redlotus/skills/talib-technical-analysis/references/USE_CASES.md
143
+ src/redlotus/skills/talib-technical-analysis/references/WISDOM.md
144
+ src/redlotus/skills/talib-technical-analysis/references/seed.yaml
145
+ src/redlotus/skills/talib-technical-analysis/references/components/abstract_api_-stateful.md
146
+ src/redlotus/skills/talib-technical-analysis/references/components/c_library_binding_layer.md
147
+ src/redlotus/skills/talib-technical-analysis/references/components/code_generation.md
148
+ src/redlotus/skills/talib-technical-analysis/references/components/function_api_-batch.md
149
+ src/redlotus/skills/talib-technical-analysis/references/components/series_support_layer.md
150
+ src/redlotus/skills/talib-technical-analysis/references/components/stream_api_-incremental.md
151
+ src/redlotus/skills/web-scraping/SKILL.md
152
+ src/redlotus/tools/BasicTools.py
153
+ src/redlotus/tools/ExtractFileContent.py
154
+ src/redlotus/tools/ImageGeneration.py
155
+ src/redlotus/tools/ManagementTools.py
156
+ src/redlotus/tools/WorkerOrchestrator.py
157
+ src/redlotus/tools/__init__.py
158
+ src/redlotus/tools/browser_session.py
159
+ src/redlotus/tools/conversation_log.py
160
+ src/redlotus/tools/memory/__init__.py
161
+ src/redlotus/tools/memory/chat_history.py
162
+ src/redlotus/tools/memory/consolidation.py
163
+ src/redlotus/tools/memory/hygiene.py
164
+ src/redlotus/tools/memory/ltm.py
165
+ src/redlotus/tools/memory/message_text.py
166
+ src/redlotus/tools/memory/stm.py
167
+ src/redlotus/workspace/__init__.py
168
+ src/redlotus/workspace/workspace.py
169
+ src/redlotus/workspace/workspace_load.py
170
+ src/redlotus/workspace/workspace_picker.py
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ redlotus = redlotus.agent_core.entrypoint:main
@@ -0,0 +1,48 @@
1
+ ddgs>=9.14.1
2
+ filelock>=3.29.0
3
+ genai-prices==0.0.57
4
+ httpx[http2]>=0.28.1
5
+ json-repair>=0.59.5
6
+ lancedb>=0.30.2
7
+ loguru>=0.7.0
8
+ numpy>=2.4.4
9
+ openai>=2.32.0
10
+ openpyxl>=3.1.5
11
+ pandas>=3.0.2
12
+ platformdirs>=4.9.0
13
+ prompt-toolkit>=3.0.0
14
+ pydantic-ai-slim[anthropic,google]==1.105.0
15
+ pymupdf>=1.27.2.3
16
+ python-docx>=1.2.0
17
+ python-dotenv>=1.2.2
18
+ pyyaml>=6.0.3
19
+ requests>=2.33.1
20
+ rich>=15.0.0
21
+ textual>=8.2.7
22
+
23
+ [all]
24
+ playwright>=1.49.0
25
+ ncatbot>=4.4.1.post1
26
+ wechatbot-sdk>=0.2.1
27
+ matplotlib>=3.10.9
28
+ reportlab>=4.5.0
29
+ pillow>=12.2.0
30
+
31
+ [bots]
32
+ ncatbot>=4.4.1.post1
33
+ wechatbot-sdk>=0.2.1
34
+
35
+ [browser]
36
+ playwright>=1.49.0
37
+
38
+ [build]
39
+ pyinstaller>=6.20.0
40
+
41
+ [dev]
42
+ pytest>=8.0.0
43
+ pytest-asyncio>=0.24.0
44
+
45
+ [viz]
46
+ matplotlib>=3.10.9
47
+ reportlab>=4.5.0
48
+ pillow>=12.2.0
@@ -0,0 +1 @@
1
+ redlotus