Repository Analysis

666ghj/MiroFish

A Simple and Universal Swarm Intelligence Engine, Predicting Anything. 简洁通用的群体智能引擎,预测万物

8.5 Low AI signal View on GitHub
8.5
Adjusted Score
8.5
Raw Score
100%
Time Factor
2026-05-24
Last Push
63,299
Stars
Python
Language
46,542
Lines of Code
74
Files
363
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 14MEDIUM 12LOW 337

Pattern Findings

363 matches across 12 categories. Click a row to expand file-level details.

Excessive Try-Catch Wrapping162 hits · 142 pts
SeverityFileLineSnippet
LOWbackend/app/utils/file_parser.py42 except Exception:
LOWbackend/app/utils/file_parser.py51 except Exception:
LOWbackend/app/utils/file_parser.py155 except Exception as e:
LOWbackend/app/utils/retry.py226 except Exception as e:
LOWbackend/app/api/simulation.py84 except Exception as e:
LOWbackend/app/api/simulation.py117 except Exception as e:
LOWbackend/app/api/simulation.py154 except Exception as e:
LOWbackend/app/api/simulation.py231 except Exception as e:
LOWbackend/app/api/simulation.py333 except Exception as e:
LOWbackend/app/api/simulation.py355 except Exception as e:
LOWbackend/app/api/simulation.py486 except Exception as e:
LOWbackend/app/api/simulation.py599 except Exception as e:
LOWbackend/app/api/simulation.py633 except Exception as e:
LOWbackend/app/api/simulation.py747 except Exception as e:
LOWbackend/app/api/simulation.py779 except Exception as e:
LOWbackend/app/api/simulation.py808 except Exception as e:
LOWbackend/app/api/simulation.py861 except Exception:
LOWbackend/app/api/simulation.py871 except Exception as e:
LOWbackend/app/api/simulation.py981 except Exception as e:
LOWbackend/app/api/simulation.py1019 except Exception as e:
LOWbackend/app/api/simulation.py1112 except Exception:
LOWbackend/app/api/simulation.py1129 except Exception as e:
LOWbackend/app/api/simulation.py1217 except Exception:
LOWbackend/app/api/simulation.py1249 except Exception as e:
LOWbackend/app/api/simulation.py1285 except Exception as e:
LOWbackend/app/api/simulation.py1314 except Exception as e:
LOWbackend/app/api/simulation.py1366 except Exception as e:
LOWbackend/app/api/simulation.py1440 except Exception as e:
LOWbackend/app/api/simulation.py1557 except Exception as e:
LOWbackend/app/api/simulation.py1635 except Exception as e:
LOWbackend/app/api/simulation.py1694 except Exception as e:
LOWbackend/app/api/simulation.py1754 except Exception as e:
LOWbackend/app/api/simulation.py1855 except Exception as e:
LOWbackend/app/api/simulation.py1909 except Exception as e:
LOWbackend/app/api/simulation.py1949 except Exception as e:
LOWbackend/app/api/simulation.py1976 except Exception as e:
LOWbackend/app/api/simulation.py2056 except Exception as e:
LOWbackend/app/api/simulation.py2131 except Exception as e:
LOWbackend/app/api/simulation.py2262 except Exception as e:
LOWbackend/app/api/simulation.py2400 except Exception as e:
LOWbackend/app/api/simulation.py2503 except Exception as e:
LOWbackend/app/api/simulation.py2575 except Exception as e:
LOWbackend/app/api/simulation.py2640 except Exception as e:
LOWbackend/app/api/simulation.py2710 except Exception as e:
LOWbackend/app/api/graph.py250 except Exception as e:
LOWbackend/app/api/graph.py495 except Exception as e:
LOWbackend/app/api/graph.py524 except Exception as e:
LOWbackend/app/api/graph.py589 except Exception as e:
LOWbackend/app/api/graph.py617 except Exception as e:
LOWbackend/app/api/report.py174 except Exception as e:
LOWbackend/app/api/report.py194 except Exception as e:
LOWbackend/app/api/report.py267 except Exception as e:
LOWbackend/app/api/report.py310 except Exception as e:
LOWbackend/app/api/report.py349 except Exception as e:
LOWbackend/app/api/report.py389 except Exception as e:
LOWbackend/app/api/report.py435 except Exception as e:
LOWbackend/app/api/report.py461 except Exception as e:
LOWbackend/app/api/report.py558 except Exception as e:
LOWbackend/app/api/report.py601 except Exception as e:
LOWbackend/app/api/report.py652 except Exception as e:
102 more matches not shown…
Unused Imports78 hits · 68 pts
SeverityFileLineSnippet
LOWbackend/app/utils/file_parser.py6
LOWbackend/app/utils/file_parser.py8
LOWbackend/app/utils/__init__.py5
LOWbackend/app/utils/__init__.py6
LOWbackend/app/utils/__init__.py7
LOWbackend/app/utils/__init__.py7
LOWbackend/app/utils/__init__.py7
LOWbackend/app/utils/__init__.py7
LOWbackend/app/utils/zep_paging.py7
LOWbackend/app/models/__init__.py5
LOWbackend/app/models/__init__.py5
LOWbackend/app/models/__init__.py6
LOWbackend/app/models/__init__.py6
LOWbackend/app/models/__init__.py6
LOWbackend/app/models/project.py13
LOWbackend/app/api/simulation.py15
LOWbackend/app/api/__init__.py11
LOWbackend/app/api/__init__.py12
LOWbackend/app/api/__init__.py13
LOWbackend/app/api/report.py12
LOWbackend/app/services/report_agent.py14
LOWbackend/app/services/report_agent.py17
LOWbackend/app/services/report_agent.py25
LOWbackend/app/services/report_agent.py25
LOWbackend/app/services/report_agent.py25
LOWbackend/app/services/report_agent.py25
LOWbackend/app/services/simulation_runner.py10
LOWbackend/app/services/simulation_runner.py15
LOWbackend/app/services/simulation_runner.py21
LOWbackend/app/services/simulation_runner.py25
LOWbackend/app/services/simulation_runner.py25
LOWbackend/app/services/simulation_runner.py1125
LOWbackend/app/services/text_processor.py5
LOWbackend/app/services/__init__.py5
LOWbackend/app/services/__init__.py6
LOWbackend/app/services/__init__.py7
LOWbackend/app/services/__init__.py8
LOWbackend/app/services/__init__.py8
LOWbackend/app/services/__init__.py8
LOWbackend/app/services/__init__.py9
LOWbackend/app/services/__init__.py9
LOWbackend/app/services/__init__.py10
LOWbackend/app/services/__init__.py10
LOWbackend/app/services/__init__.py10
LOWbackend/app/services/__init__.py11
LOWbackend/app/services/__init__.py11
LOWbackend/app/services/__init__.py11
LOWbackend/app/services/__init__.py11
LOWbackend/app/services/__init__.py11
LOWbackend/app/services/__init__.py11
LOWbackend/app/services/__init__.py19
LOWbackend/app/services/__init__.py19
LOWbackend/app/services/__init__.py19
LOWbackend/app/services/__init__.py19
LOWbackend/app/services/__init__.py19
LOWbackend/app/services/__init__.py26
LOWbackend/app/services/__init__.py26
LOWbackend/app/services/__init__.py26
LOWbackend/app/services/__init__.py31
LOWbackend/app/services/__init__.py31
18 more matches not shown…
Deep Nesting54 hits · 40 pts
SeverityFileLineSnippet
LOWbackend/app/utils/file_parser.py161
LOWbackend/app/api/simulation.py240
LOWbackend/app/api/simulation.py643
LOWbackend/app/api/simulation.py817
LOWbackend/app/api/simulation.py1029
LOWbackend/app/api/simulation.py1139
LOWbackend/app/api/simulation.py1452
LOWbackend/app/services/report_agent.py956
LOWbackend/app/services/report_agent.py1221
LOWbackend/app/services/report_agent.py2019
LOWbackend/app/services/report_agent.py2132
LOWbackend/app/services/report_agent.py2301
LOWbackend/app/services/report_agent.py2500
LOWbackend/app/services/report_agent.py2521
LOWbackend/app/services/simulation_runner.py482
LOWbackend/app/services/simulation_runner.py584
LOWbackend/app/services/simulation_runner.py825
LOWbackend/app/services/simulation_runner.py1103
LOWbackend/app/services/simulation_runner.py1187
LOWbackend/app/services/simulation_runner.py1288
LOWbackend/app/services/simulation_runner.py1319
LOWbackend/app/services/zep_tools.py304
LOWbackend/app/services/zep_tools.py464
LOWbackend/app/services/zep_tools.py546
LOWbackend/app/services/zep_tools.py1485
LOWbackend/app/services/zep_tools.py1505
LOWbackend/app/services/oasis_profile_generator.py286
LOWbackend/app/services/oasis_profile_generator.py414
LOWbackend/app/services/oasis_profile_generator.py497
LOWbackend/app/services/oasis_profile_generator.py774
LOWbackend/app/services/oasis_profile_generator.py851
LOWbackend/app/services/oasis_profile_generator.py889
LOWbackend/app/services/simulation_manager.py463
LOWbackend/app/services/simulation_ipc.py117
LOWbackend/app/services/zep_entity_reader.py215
LOWbackend/app/services/graph_builder.py294
LOWbackend/app/services/graph_builder.py347
LOWbackend/app/services/graph_builder.py403
LOWbackend/app/services/zep_graph_memory_updater.py137
LOWbackend/app/services/zep_graph_memory_updater.py364
LOWbackend/app/services/zep_graph_memory_updater.py435
LOWbackend/app/services/zep_graph_memory_updater.py531
LOWbackend/app/services/simulation_config_generator.py434
LOWbackend/app/services/simulation_config_generator.py728
LOWbackend/app/services/simulation_config_generator.py908
LOWbackend/scripts/run_reddit_simulation.py523
LOWbackend/scripts/run_parallel_simulation.py749
LOWbackend/scripts/run_parallel_simulation.py857
LOWbackend/scripts/run_parallel_simulation.py938
LOWbackend/scripts/run_parallel_simulation.py1101
LOWbackend/scripts/run_parallel_simulation.py1293
LOWbackend/scripts/run_parallel_simulation.py1492
LOWbackend/scripts/run_parallel_simulation.py416
LOWbackend/scripts/run_twitter_simulation.py531
Decorative Section Separators9 hits · 32 pts
SeverityFileLineSnippet
MEDIUMbackend/requirements.txt1# ===========================================
MEDIUMbackend/requirements.txt3# ===========================================
MEDIUMbackend/requirements.txt6# ===========================================
MEDIUMbackend/app/services/report_agent.py470# ═══════════════════════════════════════════════════════════════
MEDIUMbackend/app/services/report_agent.py472# ═══════════════════════════════════════════════════════════════
MEDIUMbackend/app/services/report_agent.py860# ═══════════════════════════════════════════════════════════════
MEDIUMbackend/app/services/report_agent.py862# ═══════════════════════════════════════════════════════════════
MEDIUMbackend/scripts/run_parallel_simulation.py28# ============================================================
MEDIUMbackend/scripts/run_parallel_simulation.py31# ============================================================
Cross-File Repetition6 hits · 30 pts
SeverityFileLineSnippet
HIGHbackend/scripts/run_reddit_simulation.py0过滤掉 camel-ai 关于 max_tokens 的警告(我们故意不设置 max_tokens,让模型自行决定)
HIGHbackend/scripts/run_parallel_simulation.py0过滤掉 camel-ai 关于 max_tokens 的警告(我们故意不设置 max_tokens,让模型自行决定)
HIGHbackend/scripts/run_twitter_simulation.py0过滤掉 camel-ai 关于 max_tokens 的警告(我们故意不设置 max_tokens,让模型自行决定)
HIGHbackend/scripts/run_reddit_simulation.py0select user_id, info, created_at from trace where action = ? and user_id = ? order by created_at desc limit 1
HIGHbackend/scripts/run_parallel_simulation.py0select user_id, info, created_at from trace where action = ? and user_id = ? order by created_at desc limit 1
HIGHbackend/scripts/run_twitter_simulation.py0select user_id, info, created_at from trace where action = ? and user_id = ? order by created_at desc limit 1
Hyper-Verbose Identifiers34 hits · 28 pts
SeverityFileLineSnippet
LOWbackend/app/api/simulation.py28def optimize_interview_prompt(prompt: str) -> str:
LOWbackend/app/api/simulation.py240def _check_simulation_prepared(simulation_id: str) -> tuple:
LOWbackend/app/api/simulation.py817def _get_report_id_for_simulation(simulation_id: str) -> str:
LOWbackend/app/api/simulation.py1029def get_simulation_profiles_realtime(simulation_id: str):
LOWbackend/app/api/simulation.py1139def get_simulation_config_realtime(simulation_id: str):
LOWbackend/app/api/simulation.py1295def download_simulation_config(simulation_id: str):
LOWbackend/app/api/simulation.py1324def download_simulation_script(script_name: str):
LOWbackend/app/api/report.py984def get_graph_statistics_tool():
LOWbackend/app/services/report_agent.py258 def log_section_full_complete(
LOWbackend/app/services/report_agent.py1928 def _get_report_markdown_path(cls, report_id: str) -> str:
LOWbackend/app/services/simulation_runner.py694 def _check_all_platforms_completed(cls, state: SimulationRunState) -> bool:
LOWbackend/app/services/simulation_runner.py1659 def _get_interview_history_from_db(
LOWbackend/app/services/zep_tools.py1485 def _clean_tool_call_response(response: str) -> str:
LOWbackend/app/services/zep_tools.py1551 def _select_agents_for_interview(
LOWbackend/app/services/zep_tools.py1634 def _generate_interview_questions(
LOWbackend/app/services/zep_tools.py1683 def _generate_interview_summary(
LOWbackend/app/services/oasis_profile_generator.py212 def generate_profile_from_entity(
LOWbackend/app/services/oasis_profile_generator.py497 def _generate_profile_with_llm(
LOWbackend/app/services/oasis_profile_generator.py677 def _build_individual_persona_prompt(
LOWbackend/app/services/oasis_profile_generator.py774 def _generate_profile_rule_based(
LOWbackend/app/services/oasis_profile_generator.py851 def generate_profiles_from_entities(
LOWbackend/app/services/oasis_profile_generator.py726 def _build_group_persona_prompt(
LOWbackend/app/services/zep_graph_memory_updater.py166 def _describe_dislike_comment(self) -> str:
LOWbackend/app/services/zep_graph_memory_updater.py271 def _get_platform_display_name(self, platform: str) -> str:
LOWbackend/app/services/simulation_config_generator.py728 def _assign_initial_post_agents(
LOWbackend/app/services/simulation_config_generator.py813 def _generate_agent_configs_batch(
LOWbackend/app/services/simulation_config_generator.py908 def _generate_agent_config_by_rule(self, entity: EntityNode) -> Dict[str, Any]:
LOWbackend/scripts/run_reddit_simulation.py469 def _get_active_agents_for_round(
LOWbackend/scripts/run_parallel_simulation.py141def init_logging_for_simulation(simulation_dir: str):
LOWbackend/scripts/run_parallel_simulation.py317 async def _interview_single_platform(self, agent_id: int, prompt: str, platform: str) -> Dict[str, Any]:
LOWbackend/scripts/run_parallel_simulation.py633def get_agent_names_from_config(config: Dict[str, Any]) -> Dict[int, str]:
LOWbackend/scripts/run_parallel_simulation.py657def fetch_new_actions_from_db(
LOWbackend/scripts/run_parallel_simulation.py1040def get_active_agents_for_round(
LOWbackend/scripts/run_twitter_simulation.py462 def _get_active_agents_for_round(
Docstring Block Structure5 hits · 25 pts
SeverityFileLineSnippet
HIGHbackend/app/services/report_agent.py957 执行工具调用 Args: tool_name: 工具名称 parameters: 工具参数 report_conte
HIGHbackend/app/services/simulation_runner.py1436 采访单个Agent Args: simulation_id: 模拟ID agent_id: Agent ID prompt: 采访问
HIGHbackend/app/services/simulation_runner.py1499 批量采访多个Agent Args: simulation_id: 模拟ID interviews: 采访列表,每个元素包含 {"agent_id": int
HIGHbackend/app/services/simulation_ipc.py124 发送命令并等待响应 Args: command_type: 命令类型 args: 命令参数 timeout: 超时时
HIGHbackend/app/services/simulation_config_generator.py255 智能生成完整的模拟配置(分步生成) Args: simulation_id: 模拟ID project_id: 项目ID
Verbosity Indicators10 hits · 15 pts
SeverityFileLineSnippet
LOWbackend/app/services/zep_tools.py981 # Step 1: 使用LLM生成子问题
LOWbackend/app/services/zep_tools.py991 # Step 2: 对每个子问题进行语义搜索
LOWbackend/app/services/zep_tools.py1026 # Step 3: 从边中提取相关实体UUID,只获取这些实体的信息(不获取全部节点)
LOWbackend/app/services/zep_tools.py1071 # Step 4: 构建所有关系链(不限制数量)
LOWbackend/app/services/zep_tools.py1316 # Step 1: 读取人设文件
LOWbackend/app/services/zep_tools.py1327 # Step 2: 使用LLM选择要采访的Agent(返回agent_id列表)
LOWbackend/app/services/zep_tools.py1339 # Step 3: 生成采访问题(如果没有提供)
LOWbackend/app/services/zep_tools.py1365 # Step 4: 调用真实的采访API(不指定platform,默认双平台同时采访)
LOWbackend/app/services/zep_tools.py1395 # Step 5: 解析API返回结果,构建AgentInterview对象
LOWbackend/app/services/zep_tools.py1474 # Step 6: 生成采访摘要
Magic Placeholder Names2 hits · 10 pts
SeverityFileLineSnippet
HIGHREADME.md121LLM_API_KEY=your_api_key
HIGHREADME-ZH.md121LLM_API_KEY=your_api_key
Cross-Language Confusion1 hit · 2 pts
SeverityFileLineSnippet
HIGHbackend/app/api/simulation.py1790 "result": null,
AI Slop Vocabulary1 hit · 2 pts
SeverityFileLineSnippet
MEDIUMfrontend/package-lock.json1963 "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz",
Over-Commented Block1 hit · 1 pts
SeverityFileLineSnippet
LOWbackend/requirements.txt1# ===========================================