github Python analyzed 746f76b deep scan unknown

microsoft/ArgusAgent

github

A persistent, reviewed multi-agent runtime for long-horizon research and engineering.

maintainer
microsoft
licence
MIT
first seen
2026-08-19
last seen
2026-09-09
releases · 30d
0
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 7 tools
transport stdio · http counts 7 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • argus_artifacts
  • argus_doctor
  • argus_message
  • argus_project_create
  • argus_project_list
  • argus_status
  • argus_stop
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 746f76b · analyzer v33 · 1w ago

skills & prompt files 16

danger signals11

code evidence vHEAD · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 1702

filesystem 400

  • fs microsoft-ArgusAgent-746f76b/argus_doctor.py :8 import shutil
  • fs microsoft-ArgusAgent-746f76b/argus_skill/adapters/agent_cli_backend/_core.py :15 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/adapters/agent_cli_backend/_exec_context.py :13 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/adapters/agent_cli_backend/_io_log.py :18 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/_opencode_recovery.py :12 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/_process_control.py :9 import shutil
  • fs microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/_prompt_delivery.py :9 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/_run_exec.py :19 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/_sandbox_commands.py :15 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/agent_cli_runner.py :23 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/copilot_home.py :33 import shutil
  • fs microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/runner_backend.py :5 import shutil
show 28 more
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_inbox.py :18 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_init_identity.py :17 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_life_actions.py :9 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_runtime_backends.py :9 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_runtime_construction.py :19 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_runtime_execute.py :16 import shutil
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_runtime_helpers.py :13 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_runtime_planning_context.py :5 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_runtime_stage_transition.py :13 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_runtime_supervisor.py :19 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_self_reply.py :10 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_target_paths.py :5 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/_watch.py :27 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/cli/_core.py :27 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/cli/_follow.py :8 import shutil
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/cli/_parser.py :7 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/package_update.py :9 import shutil
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/tui_launcher.py :6 import shutil
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/update.py :5 import shutil
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/update_install.py :7 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/apps/update_launcher.py :17 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/cli/theme.py :11 import shutil
  • fs microsoft-ArgusAgent-746f76b/argus_skill/core/acceptance_dependencies.py :8 from pathlib import PurePosixPath
  • fs microsoft-ArgusAgent-746f76b/argus_skill/core/agent_probe.py :7 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/core/backend_readiness.py :9 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/core/campaign_workdir.py :16 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/core/config_snapshot.py :14 from pathlib import Path
  • fs microsoft-ArgusAgent-746f76b/argus_skill/core/cost_control.py :22 from pathlib import Path

360 more not shown — this panel samples each group; the count above is the real total.

shell / exec 159

  • shell microsoft-ArgusAgent-746f76b/argus_doctor.py :10 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/_opencode_recovery.py :11 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/_process_control.py :11 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/_prompt_delivery.py :6 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/_run_exec.py :14 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/agent_cli_runner.py :11 ``import os`` / ``import subprocess`` stay here (even though this module no
  • shell microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/copilot_acp.py :25 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/apps/cli/_core.py :2419 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/apps/cli/_follow.py :9 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/apps/tui_launcher.py :7 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/apps/update.py :6 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/core/agent_probe.py :4 import subprocess
show 28 more
  • shell microsoft-ArgusAgent-746f76b/argus_skill/core/backend_readiness.py :6 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/core/campaign_workdir.py :15 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/core/project.py :26 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/core/role_session.py :15 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/core/runtime_identity.py :7 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/core/sandbox.py :24 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/core/secret_guard.py :10 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/core/windows_job.py :11 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/daemon/_life_worker_admission.py :15 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/daemon/handoff.py :8 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/daemon/life_worker.py :31 import subprocess # noqa: F401 — re-exported: tests patch life_worker.subprocess.run
  • shell microsoft-ArgusAgent-746f76b/argus_skill/daemon/process.py :8 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/daemon/state.py :10 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/integrations/harbor.py :8 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/life/memory.py :32 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/life/supervisor/_mission_execution_runtime.py :18 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/life/supervisor/_mission_execution_settlement.py :15 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/life/supervisor/_planner_orchestration.py :7 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/life/terminal_state.py :13 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/maintenance/deploy_boundary.py :8 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/maintenance/doctor.py :10 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/maintenance/repair.py :7 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/manager/source_writeback.py :6 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/release.py :7 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/release_tools/build_release.py :9 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/release_tools/pr_gate/patch.py :5 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/release_tools/repository_parity.py :4 import subprocess
  • shell microsoft-ArgusAgent-746f76b/argus_skill/skills/round_checkpoint.py :6 import subprocess

119 more not shown — this panel samples each group; the count above is the real total.

network 41

  • net microsoft-ArgusAgent-746f76b/argus_doctor.py :9 import socket
  • net microsoft-ArgusAgent-746f76b/argus_skill/apps/cli/_follow.py :15 from urllib.parse import urlencode
  • net microsoft-ArgusAgent-746f76b/argus_skill/apps/package_update.py :16 from urllib.parse import quote, unquote, urlencode, urlsplit, urlunsplit
  • net microsoft-ArgusAgent-746f76b/argus_skill/apps/update.py :11 from urllib.parse import urlsplit
  • net microsoft-ArgusAgent-746f76b/argus_skill/core/vault_preflight.py :30 import urllib.error
  • net microsoft-ArgusAgent-746f76b/argus_skill/domains/chemistry/playground.py :15 from urllib.parse import unquote, urlparse
  • net microsoft-ArgusAgent-746f76b/argus_skill/life/delivery.py :17 from urllib.parse import unquote, urlsplit
  • net microsoft-ArgusAgent-746f76b/argus_skill/life/feishu_bot.py :46 import urllib.request
  • net microsoft-ArgusAgent-746f76b/argus_skill/life/telegram_bot.py :69 import urllib.request
  • net microsoft-ArgusAgent-746f76b/argus_skill/maintenance/doctor.py :9 import socket
  • net microsoft-ArgusAgent-746f76b/argus_skill/tools/image_api.py :24 import urllib.error
  • net microsoft-ArgusAgent-746f76b/argus_skill/tools/pdf_chat.py :36 import urllib.error
show 28 more
  • net microsoft-ArgusAgent-746f76b/argus_skill/tools/resource_ledger/ledger.py :8 import socket
  • net microsoft-ArgusAgent-746f76b/argus_skill/tools/setup.py :15 from urllib.parse import urlparse
  • net microsoft-ArgusAgent-746f76b/argus_skill/tools/subagent/_experiment_preflight.py :16 from urllib.parse import urlparse
  • net microsoft-ArgusAgent-746f76b/argus_skill/verticals/fiction_writing/evaluations/run_evals.py :33 import urllib.request
  • net microsoft-ArgusAgent-746f76b/argus_skill/verticals/math/citation_check.py :54 import urllib.error
  • net microsoft-ArgusAgent-746f76b/argus_skill/verticals/medical/connectors.py :10 from urllib.error import HTTPError, URLError
  • net microsoft-ArgusAgent-746f76b/argus_skill/verticals/research/literature_ledger.py :22 from urllib.parse import urlparse
  • net microsoft-ArgusAgent-746f76b/argus_skill/verticals/research/skills/engineer/research_visual_scripts/browser_render.py :11 from urllib.parse import urlparse
  • net microsoft-ArgusAgent-746f76b/argus_skill/verticals/research/source_evidence.py :11 from urllib.parse import urlparse
  • net microsoft-ArgusAgent-746f76b/argus_skill/webapi/artifact_preview.py :14 from urllib.parse import unquote, urlsplit
  • net microsoft-ArgusAgent-746f76b/argus_skill/webapi/pairing.py :30 import socket
  • net microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/api.py :15 from urllib.parse import urlsplit
  • net microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/flywheel_api.py :5 import urllib.error
  • net microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/integrations/argus_webapi.py :12 import urllib.error
  • net microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/integrations/release_stager.py :21 from urllib.parse import unquote, urlsplit
  • net microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/integrations/sources.py :9 import urllib.error
  • net microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/secrets.py :6 from urllib.parse import urlsplit, urlunsplit
  • net microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/services/viewer_queue.py :8 import socket
  • net (weak) microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/tests/test_argus_webapi_hardening.py :5 import urllib.parse
  • net (weak) microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/tests/test_integrations.py :6 import urllib.parse
  • net (weak) microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/tests/test_review_imports_hardening.py :6 from urllib.parse import parse_qs, urlsplit
  • net (weak) microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/scripts/audit_catalog.py :16 from urllib.parse import urlparse
  • net (weak) microsoft-ArgusAgent-746f76b/docs/evaluations/reviewer_specialist_ab.py :14 import urllib.request
  • net (weak) microsoft-ArgusAgent-746f76b/tests/deployment/test_multi_process_contract.py :6 import socket
  • net (weak) microsoft-ArgusAgent-746f76b/tests/domains/test_medical_connectors.py :4 from urllib.error import URLError
  • net (weak) microsoft-ArgusAgent-746f76b/tests/domains/test_medical_dossier.py :5 from urllib.error import URLError
  • net (weak) microsoft-ArgusAgent-746f76b/tests/maintenance/test_repair_pipeline.py :5 import socket
  • net (weak) microsoft-ArgusAgent-746f76b/tests/tools/test_image_api.py :13 from urllib.error import HTTPError

1 more not shown — this panel samples each group; the count above is the real total.

secrets 16

  • secrets microsoft-ArgusAgent-746f76b/argus_skill/apps/_runtime_construction.py :173 and os.environ.get("ANTHROPIC_API_KEY")
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/apps/cli/_core.py :2418 import getpass
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/apps/cli/_follow.py :57 token = str(os.environ.get("ARGUS_SKILL_WEB_TOKEN", "") or "").strip()
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/integrations/harbor.py :397 'os.environ["OPENAI_API_KEY"]}), encoding="utf-8")\n'
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/life/supervisor/pending_notify.py :233 token = (os.environ.get("ARGUS_SKILL_TELEGRAM_BOT_TOKEN") or "").strip()
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/life/telegram_bot.py :261 self.token = (token or os.environ.get("ARGUS_SKILL_TELEGRAM_BOT_TOKEN") or "").strip()
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/team/teammate_entry.py :288 verify_key = os.environ.get("ARGUS_TEAMMATE_RESULT_VERIFY_KEY", "").strip()
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/tools/resource_ledger/ledger.py :4 import getpass
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/tools/setup.py :386 key = str(api_key or os.environ.get("ARGUS_SETUP_API_KEY") or "").strip()
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/verticals/kernelbench/official_eval_server.py :98 signing_key = os.environ.get("ARGUS_EVAL_SIGNING_KEY", "").strip()
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/webapi/pairing.py :165 configured = (token if token is not None else os.environ.get("ARGUS_SKILL_WEB_TOKEN", "")) or ""
  • secrets microsoft-ArgusAgent-746f76b/argus_skill/webapi/server.py :539 token = auth_token if auth_token is not None else os.environ.get("ARGUS_SKILL_WEB_TOKEN")
show 4 more
  • secrets (weak) microsoft-ArgusAgent-746f76b/docs/evaluations/reviewer_specialist_ab.py :73 token = os.environ["ARGUS_AB_API_KEY"]
  • secrets (weak) microsoft-ArgusAgent-746f76b/tests/apps/test_cli_status.py :4 import getpass
  • secrets (weak) microsoft-ArgusAgent-746f76b/tests/test_agent_cli_backend.py :315 replay_tokens.append(os.environ["COPILOT_RELAY_TOKEN"])
  • secrets (weak) microsoft-ArgusAgent-746f76b/tests/webapi/test_pending_question_diagnostics.py :95 calls.append(os.environ["COPILOT_RELAY_TOKEN"])

database 15

  • db microsoft-ArgusAgent-746f76b/argus_skill/agent_cli/_opencode_recovery.py :10 import sqlite3
  • db microsoft-ArgusAgent-746f76b/argus_skill/provider_integrations/copilot_usage.py :5 import sqlite3
  • db microsoft-ArgusAgent-746f76b/argus_skill/webapi/map_history.py :6 import sqlite3
  • db microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/db.py :5 import sqlite3
  • db microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/services/argus_artifact_ingest.py :6 import sqlite3
  • db microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/services/coordinator.py :8 import sqlite3
  • db microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/src/foundry/services/flywheel_data.py :7 import sqlite3
  • db (weak) microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/tests/test_argus_artifact_episode_loop.py :5 import sqlite3
  • db (weak) microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/tests/test_flywheel_data.py :6 import sqlite3
  • db (weak) microsoft-ArgusAgent-746f76b/companions/FLYWHEEL/backend/tests/test_workflow_api.py :5 import sqlite3
  • db (weak) microsoft-ArgusAgent-746f76b/tests/core/test_cost_control_live.py :4 import sqlite3
  • db (weak) microsoft-ArgusAgent-746f76b/tests/core/test_usage.py :5 import sqlite3
show 3 more
  • db (weak) microsoft-ArgusAgent-746f76b/tests/provider_integrations/test_copilot_usage.py :3 import sqlite3
  • db (weak) microsoft-ArgusAgent-746f76b/tests/test_live_budget_monitor.py :5 import sqlite3
  • db (weak) microsoft-ArgusAgent-746f76b/tests/test_opencode_backend.py :4 import sqlite3

tool registrations 7

  • argus_project_create microsoft-ArgusAgent-746f76b/argus_skill/plugin/mcp_server.py :22
  • argus_project_list microsoft-ArgusAgent-746f76b/argus_skill/plugin/mcp_server.py :28
  • argus_message microsoft-ArgusAgent-746f76b/argus_skill/plugin/mcp_server.py :34
  • argus_status microsoft-ArgusAgent-746f76b/argus_skill/plugin/mcp_server.py :40
  • argus_doctor microsoft-ArgusAgent-746f76b/argus_skill/plugin/mcp_server.py :46
  • argus_stop microsoft-ArgusAgent-746f76b/argus_skill/plugin/mcp_server.py :52
  • argus_artifacts microsoft-ArgusAgent-746f76b/argus_skill/plugin/mcp_server.py :58

declared dependencies 54

  • mcp@>=1.20,<2
  • rich@>=13.7
  • PyYAML@>=6
  • portalocker@>=3
  • jsonschema@>=4
  • pypdf@>=5,<7
  • fastapi@>=0.110
  • python-multipart@>=0.0.9
  • uvicorn@>=0.29
  • websockets@>=12
  • pydantic-settings@>=2.5.2,<2.15
  • tzdata@>=2024.1; platform_system ==
show 28 more
  • matplotlib@>=3.8
  • seaborn@>=0.13
  • SciencePlots@>=2.1
  • numpy@>=1.26
  • pandas@>=2
  • scipy@>=1.11
  • scikit-learn@>=1.4
  • mplfinance@>=0.12.10b0
  • lightgbm@>=4
  • torch@>=2.2
  • playwright@>=1.50,<2
  • pymupdf@>=1.26,<2
  • cryptography@>=41
  • opencc@>=1.1
  • lark-oapi@>=1.5,<2
  • qrcode@>=7.4,<9
  • build@>=1
  • hatchling@>=1.27
  • harbor@>=0.21,<0.22; python_version >=
  • mypy@>=1.8,<2
  • pytest@>=7
  • ruff@>=0.4
  • httpx2@>=2.9,<3
  • tauri-build@2.5
  • anyhow@1.0
  • base64@0.22
  • chrono@0.4
  • rand@0.9

14 more not shown — this panel samples each group; the count above is the real total.

transport_posture 1

  • network-listening, binds all interfaces, no auth detected microsoft-ArgusAgent-746f76b/tests/webapi/test_pairing.py :25 def _plan(host="0.0.0.0", port=8799, **kwargs):