Agent 业务执行底座:受控工具调用、多应用 HTTP、可审计轨迹与回归闭环
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
No tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 41fbae5 · analyzer v33 · 2d ago
danger signals3
- dynamic code execution eval()/exec() weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/tools.py :173
exec(code, {"__builtins__": __builtins__}) - dynamic code execution __import__() weihuaguo270-ops-react-agent-41fbae5/react_cli.py :33
return getattr(__import__(mod, fromlist=[name]), name) - dynamic code execution eval()/exec() weihuaguo270-ops-react-agent-41fbae5/src/react_agent/tools/calculator.py :15
result = eval(code)
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 205
filesystem 81
- fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/demo_record_check.py :4
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/demos/demo_context.py :9
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/demos/demo_docs_troubleshoot.py :7
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/demos/demo_expense_workflow.py :14
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/demos/demo_mcp_mock.py :15
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/demos/demo_rag.py :12
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/demos/demo_workflow.py :7
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/demos/run_github_delivery.py :7
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/agent_to_eval.py :51
with open(trajectory_path, "r", encoding="utf-8") as f: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/harness_closed_loop.py :40
with open(path, encoding="utf-8") as f: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/publish_eval_snapshot.py :19
import shutil - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_daily_smoke.py :19
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_deploy_smoke.py :12
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_docs_troubleshoot_eval.py :8
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_execution_http_smoke.py :11
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_execution_suite.py :16
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_expense_business_eval.py :8
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_failure_flywheel.py :18
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_fault_eval.py :7
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_flywheel_closed_loop.py :16
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_git_docs_eval.py :6
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_github_business_tasks.py :8
import shutil - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_github_portfolio_dataset.py :10
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_http_reliability.py :12
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_production_eval.py :6
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_public_benchmark.py :22
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_public_rag_benchmark.py :21
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_reliability_harness.py :19
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_reliability_live.py :21
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_step_watcher_evidence.py :9
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/dashboard.py :65
with open(f, "r", encoding="utf-8") as fh: - fs weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/eval.py :126
with open(path, "w", encoding="utf-8") as f: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/harness/recorder.py :168
with open(filepath, "w", encoding="utf-8") as f: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/harness/replay.py :55
with open(f, encoding="utf-8") as fh: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/harness/sandbox.py :206
with open(_RUNNER_PATH, "w", encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/llm.py :27
with open(CONFIG_FILE, encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/memory.py :52
with open(self.save_path, "r", encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/rag.py :39
with open(_RAG_INDEX_PATH, encoding="utf-8") as f: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/fixtures/docs_troubleshoot/mcp_trace_server.py :7
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/react_cli.py :146
with open(path) as f: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/docs_troubleshoot/eval_fault.py :6
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/docs_troubleshoot/eval_git_docs.py :6
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/docs_troubleshoot/eval_golden.py :14
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/docs_troubleshoot/eval_production.py :6
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/docs_troubleshoot/index.py :7
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/docs_troubleshoot/ingest.py :9
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/docs_troubleshoot/trace_backend.py :8
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/expense/eval_business.py :8
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/expense/offline_answer.py :7
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/github_delivery.py :9
import shutil - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/dashboard/server.py :43
with open(f, encoding='utf-8') as fh: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/eval/dataset.py :161
with open(filepath, encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/eval/execution_scorer.py :49
with open(filepath, encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/eval/public_benchmark.py :36
with open(filepath, encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/eval/public_rag_benchmark.py :36
with open(filepath, encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/eval/report.py :205
with open(filepath, "w", encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/eval/runner.py :89
with open(latest_file, encoding="utf-8") as fh: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/src/react_agent/harness/recorder.py :219
with open(filepath, "w", encoding="utf-8") as f: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/src/react_agent/harness/replay.py :36
with open(f, encoding="utf-8") as fh: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/src/react_agent/harness/sandbox.py :13
import shutil - fs (weak) weihuaguo270-ops-react-agent-41fbae5/src/react_agent/harness/schema.py :38
with open(path, encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/llm.py :65
with open(path, encoding="utf-8-sig") as f: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/mcp_config.py :56
with open(path, encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/memory.py :17
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/paths.py :6
import shutil - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/rag.py :18
from pathlib import Path - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/react_loop.py :638
with open(config_path, encoding="utf-8") as f: - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/safety/permissions.py :157
("execute_python", _code_contains("shutil.rmtree"), PermissionLevel.DENY), - fs weihuaguo270-ops-react-agent-41fbae5/src/react_agent/tools/execute_python.py :75
os.unlink(tmp_path) - fs weihuaguo270-ops-react-agent-41fbae5/test_all.py :211
with open(path, encoding="utf-8") as f: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/_load_eval_script.py :5
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_docs_troubleshoot_p2.py :6
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_eval_engine_contract.py :71
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_github_delivery_workflow.py :3
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_harness_schema.py :24
with open(FIXTURE, encoding="utf-8") as f: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_portable_paths.py :1
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_rag_keyword.py :5
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_sandbox_security.py :7
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_step_watcher_bridge.py :52
with open(path, encoding="utf-8") as f: - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_step_watcher_golden_e2e.py :7
from pathlib import Path - fs (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_tdebug_eval_contract.py :6
from pathlib import Path
shell / exec 27
- shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/publish_eval_snapshot.py :20
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_daily_smoke.py :16
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_execution_suite.py :13
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_failure_flywheel.py :15
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_flywheel_closed_loop.py :13
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_github_business_tasks.py :9
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_public_benchmark.py :19
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_public_rag_benchmark.py :18
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_reliability_harness.py :15
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_reliability_live.py :18
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_step_watcher_evidence.py :6
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/harness/sandbox.py :16
import subprocess - shell weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/mcp.py :15
import subprocess - shell weihuaguo270-ops-react-agent-41fbae5/react_cli.py :127
if x == "/clear": os.system("cls" if os.name == "nt" else "clear") - shell weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/docs_troubleshoot/ingest.py :7
import subprocess - shell weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/github_delivery.py :10
import subprocess - shell weihuaguo270-ops-react-agent-41fbae5/src/react_agent/dashboard/kill_old.py :2
import subprocess - shell weihuaguo270-ops-react-agent-41fbae5/src/react_agent/dashboard/server.py :3
import subprocess - shell weihuaguo270-ops-react-agent-41fbae5/src/react_agent/eval.py :12
import subprocess, sys, re, json, os - shell weihuaguo270-ops-react-agent-41fbae5/src/react_agent/eval/runner.py :7
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/src/react_agent/harness/sandbox.py :14
import subprocess - shell weihuaguo270-ops-react-agent-41fbae5/src/react_agent/mcp_client.py :17
import subprocess - shell weihuaguo270-ops-react-agent-41fbae5/src/react_agent/tools/dashboard.py :3
import subprocess - shell weihuaguo270-ops-react-agent-41fbae5/src/react_agent/tools/execute_python.py :15
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_eval_engine_contract.py :70
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_github_delivery_workflow.py :2
import subprocess - shell (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_sandbox_security.py :6
import subprocess
network 17
- net (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_deploy_smoke.py :10
import urllib.error - net (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_github_business_tasks.py :11
import urllib.request - net (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_github_portfolio_dataset.py :8
import urllib.error - net (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_http_reliability.py :10
import urllib.error - net weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/rag.py :80
import urllib.request - net weihuaguo270-ops-react-agent-41fbae5/experiments/langgraph/graph/tools.py :68
import urllib.request - net weihuaguo270-ops-react-agent-41fbae5/src/react_agent/apps/docs_troubleshoot/evidence.py :7
import urllib.error - net weihuaguo270-ops-react-agent-41fbae5/src/react_agent/eval/http_execution.py :5
import urllib.error - net weihuaguo270-ops-react-agent-41fbae5/src/react_agent/llm.py :31
from urllib import request as req - net weihuaguo270-ops-react-agent-41fbae5/src/react_agent/orchestrator.py :6
import json, urllib.request, sys, os - net weihuaguo270-ops-react-agent-41fbae5/src/react_agent/react_loop.py :25
from urllib import request as req - net weihuaguo270-ops-react-agent-41fbae5/src/react_agent/server/app.py :14
from urllib.parse import urlparse - net weihuaguo270-ops-react-agent-41fbae5/src/react_agent/tools/fetch_page.py :4
from urllib import request as req - net weihuaguo270-ops-react-agent-41fbae5/src/react_agent/tools/web_search.py :3
from urllib import request as req - net (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_execution_http_smoke.py :8
import urllib.error - net (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_expense_app.py :33
import urllib.request - net (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_server_http.py :8
import urllib.error
secrets 10
- secrets (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/publish_eval_snapshot.py :135
os.environ.get("DEEPSEEK_API_KEY") - secrets (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_daily_smoke.py :208
os.environ.get("DEEPSEEK_API_KEY") or os.environ.get("OPENAI_API_KEY") - secrets (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_execution_suite.py :76
if not (os.environ.get("DEEPSEEK_API_KEY") or os.environ.get("OPENAI_API_KEY")): - secrets (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_github_business_tasks.py :19
token = os.environ.get("GITHUB_TOKEN") or os.environ.get("GH_TOKEN") - secrets (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_public_benchmark.py :83
if not (os.environ.get("DEEPSEEK_API_KEY") or os.environ.get("OPENAI_API_KEY")): - secrets (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_public_rag_benchmark.py :101
if not (os.environ.get("DEEPSEEK_API_KEY") or os.environ.get("OPENAI_API_KEY")): - secrets (weak) weihuaguo270-ops-react-agent-41fbae5/examples/eval/run_reliability_live.py :407
if not (os.environ.get("DEEPSEEK_API_KEY") or os.environ.get("OPENAI_API_KEY")): - secrets (weak) weihuaguo270-ops-react-agent-41fbae5/tests/ci_verify_integration.py :26
if os.environ.get("DEEPSEEK_API_KEY") or os.environ.get("JUDGE_API_KEY"): - secrets (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_real_llm.py :20
return bool(os.environ.get("DEEPSEEK_API_KEY")) - secrets (weak) weihuaguo270-ops-react-agent-41fbae5/tests/test_sandbox_security.py :71
"print(os.getenv('DEEPSEEK_API_KEY', 'secret-not-inherited'))"
declared dependencies 12
- numpy@>=1.24,<3
- scikit-learn@>=1.3,<2
- sentence-transformers@>=2.2,<4
- langgraph@>=0.2.28,<0.5
- langchain-core@>=0.3,<0.4
- langchain-openai@>=0.2,<0.4
- pytest@>=9.0.3,<10
- pytest-cov@>=4.0,<7
- flake8@>=6.0,<8
- react-agent@*
- mypy@>=1.8
- pip-audit@>=2.6