fr-cli 2.3.0__tar.gz → 2.3.2__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 (91) hide show
  1. {fr_cli-2.3.0/fr_cli.egg-info → fr_cli-2.3.2}/PKG-INFO +1 -1
  2. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/master.py +16 -0
  3. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/weapon/mcp.py +3 -1
  4. {fr_cli-2.3.0 → fr_cli-2.3.2/fr_cli.egg-info}/PKG-INFO +1 -1
  5. {fr_cli-2.3.0 → fr_cli-2.3.2}/pyproject.toml +1 -1
  6. {fr_cli-2.3.0 → fr_cli-2.3.2}/LICENSE +0 -0
  7. {fr_cli-2.3.0 → fr_cli-2.3.2}/MANIFEST.in +0 -0
  8. {fr_cli-2.3.0 → fr_cli-2.3.2}/README.md +0 -0
  9. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/README.md +0 -0
  10. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/WEAPON.MD +0 -0
  11. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/__init__.py +0 -0
  12. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/addon/plugin.py +0 -0
  13. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/__init__.py +0 -0
  14. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/a2a.py +0 -0
  15. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/acp.py +0 -0
  16. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/builtins/__init__.py +0 -0
  17. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/builtins/_utils.py +0 -0
  18. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/builtins/db.py +0 -0
  19. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/builtins/local.py +0 -0
  20. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/builtins/powerful_agent_template.py +0 -0
  21. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/builtins/rag.py +0 -0
  22. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/builtins/rag_watcher_daemon.py +0 -0
  23. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/builtins/remote.py +0 -0
  24. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/builtins/spider.py +0 -0
  25. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/client.py +0 -0
  26. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/coding_helper.py +0 -0
  27. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/context_files.py +0 -0
  28. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/executor.py +0 -0
  29. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/gateway.py +0 -0
  30. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/generator.py +0 -0
  31. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/hermes.py +0 -0
  32. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/image_and_parallel.py +0 -0
  33. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/manager.py +0 -0
  34. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/master_prompt.py +0 -0
  35. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/personality.py +0 -0
  36. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/plugin_system.py +0 -0
  37. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/remote.py +0 -0
  38. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/server.py +0 -0
  39. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/shell_mode.py +0 -0
  40. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/skills.py +0 -0
  41. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/workflow.py +0 -0
  42. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/agent/workflow_system.py +0 -0
  43. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/breakthrough/update.py +0 -0
  44. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/command/__init__.py +0 -0
  45. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/command/executor.py +0 -0
  46. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/command/registry.py +0 -0
  47. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/command/security.py +0 -0
  48. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/conf/config.py +0 -0
  49. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/conf/wizard.py +0 -0
  50. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/core/chat.py +0 -0
  51. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/core/core.py +0 -0
  52. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/core/intent.py +0 -0
  53. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/core/llm.py +0 -0
  54. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/core/model_factory.py +0 -0
  55. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/core/recommender.py +0 -0
  56. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/core/stream.py +0 -0
  57. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/core/sysmon.py +0 -0
  58. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/core/thinking.py +0 -0
  59. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/gatekeeper/__init__.py +0 -0
  60. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/gatekeeper/daemon.py +0 -0
  61. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/gatekeeper/manager.py +0 -0
  62. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/lang/i18n.py +0 -0
  63. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/main.py +0 -0
  64. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/memory/context.py +0 -0
  65. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/memory/history.py +0 -0
  66. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/memory/session.py +0 -0
  67. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/repl/__init__.py +0 -0
  68. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/repl/commands.py +0 -0
  69. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/security/security.py +0 -0
  70. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/ui/ui.py +0 -0
  71. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/weapon/cron.py +0 -0
  72. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/weapon/dataframe.py +0 -0
  73. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/weapon/disk.py +0 -0
  74. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/weapon/fs.py +0 -0
  75. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/weapon/launcher.py +0 -0
  76. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/weapon/loader.py +0 -0
  77. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/weapon/mail.py +0 -0
  78. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/weapon/vision.py +0 -0
  79. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli/weapon/web.py +0 -0
  80. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli.egg-info/SOURCES.txt +0 -0
  81. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli.egg-info/dependency_links.txt +0 -0
  82. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli.egg-info/entry_points.txt +0 -0
  83. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli.egg-info/requires.txt +0 -0
  84. {fr_cli-2.3.0 → fr_cli-2.3.2}/fr_cli.egg-info/top_level.txt +0 -0
  85. {fr_cli-2.3.0 → fr_cli-2.3.2}/setup.cfg +0 -0
  86. {fr_cli-2.3.0 → fr_cli-2.3.2}/tests/test_a2a_and_providers.py +0 -0
  87. {fr_cli-2.3.0 → fr_cli-2.3.2}/tests/test_integration_real.py +0 -0
  88. {fr_cli-2.3.0 → fr_cli-2.3.2}/tests/test_master_prompt_fix.py +0 -0
  89. {fr_cli-2.3.0 → fr_cli-2.3.2}/tests/test_model_config.py +0 -0
  90. {fr_cli-2.3.0 → fr_cli-2.3.2}/tests/test_new_features.py +0 -0
  91. {fr_cli-2.3.0 → fr_cli-2.3.2}/tests/test_new_providers.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fr-cli
3
- Version: 2.3.0
3
+ Version: 2.3.2
4
4
  Summary: 凡人打字机 - 支持多模型(Zhipu/DeepSeek/Kimi/Qwen/StepFun/MiniMax/Spark/Doubao/MiMo)的终极全能终端工具
5
5
  Author: FANREN CLI Author
6
6
  License-Expression: MIT
@@ -378,9 +378,25 @@ class MasterAgent:
378
378
  # 4. Hermes 自动学习更新
379
379
  try:
380
380
  from fr_cli.agent.hermes import get_analytics, get_task_manager
381
+ from fr_cli.agent.skills import get_skill_manager
382
+ from fr_cli.agent.personality import get_personality_manager
383
+
381
384
  analytics = get_analytics()
382
385
  task_mgr = get_task_manager()
386
+ skill_mgr = get_skill_manager()
387
+ personality_mgr = get_personality_manager()
388
+
383
389
  analytics.record_request(self.state.model_name, 100, 0.001)
390
+
391
+ if any(kw in user_input for kw in ["学习", "记住", "技能", "skill"]):
392
+ skill_mgr.learn_from_task(user_input, final_answer)
393
+
394
+ if any(kw in user_input for kw in ["切换", "模式", "角色", "个性"]):
395
+ for p in ["coder", "teacher", "creative", "expert"]:
396
+ if p in user_input.lower():
397
+ personality_mgr.set_personality(p)
398
+ break
399
+
384
400
  except Exception:
385
401
  pass
386
402
 
@@ -183,4 +183,6 @@ def get_mcp_manager() -> MCPServerManager:
183
183
 
184
184
  def load_from_config_file(config_file: str) -> MCPServerManager:
185
185
  """从配置文件加载 MCP 服务器"""
186
- return MCPServerManager.from_config_file(config_file)
186
+ return MCPServerManager.from_config_file(config_file)
187
+
188
+ MCPManager = MCPServerManager
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fr-cli
3
- Version: 2.3.0
3
+ Version: 2.3.2
4
4
  Summary: 凡人打字机 - 支持多模型(Zhipu/DeepSeek/Kimi/Qwen/StepFun/MiniMax/Spark/Doubao/MiMo)的终极全能终端工具
5
5
  Author: FANREN CLI Author
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "fr-cli"
7
- version = "2.3.0"
7
+ version = "2.3.2"
8
8
  description = "凡人打字机 - 支持多模型(Zhipu/DeepSeek/Kimi/Qwen/StepFun/MiniMax/Spark/Doubao/MiMo)的终极全能终端工具"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.8"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes