github Python re-analysis due

babywyrm/stoneburner

github

Local-first LLM eval: cost, quality, and security suites. Install stoneburner-atomics; CLI is atomics.

maintainer
babywyrm
licence
MIT
first seen
2026-08-16
last seen
2026-09-19
releases · 30d
9
short id

Drift inferred · capture-to-capture

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

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

tools

  • compare
  • get_job
  • get_run
  • health
  • list_jobs
  • list_models
  • provider_test
  • recent_runs
  • submit_eval
  • submit_run
  • submit_soak
  • submit_stress
  • submit_sweep
  • trends
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit b5fc7d8 · analyzer v33 · 16h ago

skills & prompt files 4

danger signals4

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

code files: 408

filesystem 75

  • fs babywyrm-stoneburner-b5fc7d8/atomics/api/config.py :7 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/api/server.py :9 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/archreview/keygen.py :6 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/archreview/pack.py :13 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/auth/codex.py :16 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/auth/oauth.py :105 webbrowser.open(auth_url)
  • fs babywyrm-stoneburner-b5fc7d8/atomics/auth/store.py :10 from pathlib import Path
  • fs (weak) babywyrm-stoneburner-b5fc7d8/atomics/benchmark/qa_runner.py :35 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/agreement.py :6 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/api.py :5 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/benchmark.py :396 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/common.py :10 from pathlib import Path
show 28 more
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/distributed.py :6 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/eval.py :7 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/rag.py :7 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/security/cmd_adversarial.py :254 run.open()
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/security/cmd_codereview.py :6 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/security/cmd_multiturn.py :7 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/security/cmd_redblue.py :6 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/security/cmd_refusal.py :6 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/suite_run.py :20 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/toolcall.py :9 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/commands/worker_npm.py :8 import shutil
  • fs babywyrm-stoneburner-b5fc7d8/atomics/config.py :5 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/core/guard.py :39 return False, f"circuit breaker open ({self._consecutive_errors} consecutive errors)"
  • fs babywyrm-stoneburner-b5fc7d8/atomics/distributed/worker_runner.py :8 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/doctor.py :7 import shutil
  • fs (weak) babywyrm-stoneburner-b5fc7d8/atomics/eval/codereview/fixtures.py :89 "- return open(os.path.join(SAFE_DIR, os.path.basename(name))).read()\n"
  • fs babywyrm-stoneburner-b5fc7d8/atomics/eval/gauntlet.py :17 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/eval/rag/retrieval.py :9 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/inference.py :149 with open(found) as f:
  • fs babywyrm-stoneburner-b5fc7d8/atomics/load/profiles.py :16 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/load/scenario_models.py :145 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/load/scenario_prompts.py :9 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/load/stress.py :6 import shutil
  • fs babywyrm-stoneburner-b5fc7d8/atomics/paths.py :7 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/probe/config.py :23 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/probe/connectors.py :5 from pathlib import Path
  • fs babywyrm-stoneburner-b5fc7d8/atomics/reporting/hooks.py :7 import shutil
  • fs babywyrm-stoneburner-b5fc7d8/atomics/scheduler/cron.py :6 import shutil

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

shell / exec 15

  • shell babywyrm-stoneburner-b5fc7d8/atomics/eval/codegen/sandbox.py :20 import subprocess
  • shell (weak) babywyrm-stoneburner-b5fc7d8/atomics/eval/codereview/fixtures.py :69 code=("import os\ndef ping(host):\n os.system('ping -c 1 ' + host)\n"),
  • shell (weak) babywyrm-stoneburner-b5fc7d8/atomics/eval/redblue/fixtures.py :69 "import subprocess\n"
  • shell (weak) babywyrm-stoneburner-b5fc7d8/atomics/eval/refusal/fixtures.py :78 " import subprocess\n"
  • shell babywyrm-stoneburner-b5fc7d8/atomics/load/stress.py :7 import subprocess
  • shell babywyrm-stoneburner-b5fc7d8/atomics/reporting/hooks.py :8 import subprocess
  • shell babywyrm-stoneburner-b5fc7d8/atomics/scheduler/cron.py :7 import subprocess
  • shell (weak) babywyrm-stoneburner-b5fc7d8/scripts/smoke_fleet.py :32 import subprocess
  • shell (weak) babywyrm-stoneburner-b5fc7d8/scripts/sync_releases.py :20 import subprocess
  • shell (weak) babywyrm-stoneburner-b5fc7d8/scripts/test_dashboard_live.py :5 import subprocess
  • shell (weak) babywyrm-stoneburner-b5fc7d8/tests/test_changelog_section.py :10 import subprocess
  • shell (weak) babywyrm-stoneburner-b5fc7d8/tests/test_dashboard_script.py :12 import subprocess
show 3 more
  • shell (weak) babywyrm-stoneburner-b5fc7d8/tests/test_main.py :4 import subprocess
  • shell (weak) babywyrm-stoneburner-b5fc7d8/tests/test_repl_imports.py :5 import subprocess
  • shell (weak) babywyrm-stoneburner-b5fc7d8/tests/test_worker_npm.py :9 import subprocess

network 59

  • net babywyrm-stoneburner-b5fc7d8/atomics/auth/oauth.py :14 from urllib.parse import parse_qs, urlencode, urlparse
  • net (weak) babywyrm-stoneburner-b5fc7d8/atomics/benchmark/qa_runner.py :38 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/commands/benchmark.py :985 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/commands/distributed.py :9 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/distributed/worker_client.py :11 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/doctor.py :171 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/eval/codegen/sandbox.py :69 import socket
  • net babywyrm-stoneburner-b5fc7d8/atomics/eval/runner.py :248 # Some exceptions (e.g. httpx.ReadTimeout) have an empty str(), which
  • net babywyrm-stoneburner-b5fc7d8/atomics/inference.py :312 (httpx.AsyncClient for ollama/vllm, AsyncOpenAI for openai), so it is typed
  • net babywyrm-stoneburner-b5fc7d8/atomics/load/contention.py :16 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/load/profiles.py :18 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/load/scenario.py :15 import httpx
show 28 more
  • net babywyrm-stoneburner-b5fc7d8/atomics/load/soak.py :136 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/load/stress.py :12 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/mcp/client.py :23 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/probe/connectors.py :45 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/providers/_openai_compat.py :20 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/providers/brain_gateway.py :13 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/providers/gemini.py :14 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/providers/groq.py :11 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/providers/llamacpp.py :14 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/providers/ollama.py :9 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/providers/openai.py :126 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/providers/outcomes.py :18 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/providers/together.py :11 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/providers/vllm.py :16 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/reporting/webhooks.py :17 import httpx
  • net babywyrm-stoneburner-b5fc7d8/atomics/validation.py :6 from urllib.parse import urlparse
  • net (weak) babywyrm-stoneburner-b5fc7d8/scripts/smoke_fleet.py :31 import socket
  • net (weak) babywyrm-stoneburner-b5fc7d8/scripts/test_dashboard_live.py :8 import urllib.error
  • net (weak) babywyrm-stoneburner-b5fc7d8/tests/test_adversarial.py :130 import httpx
  • net (weak) babywyrm-stoneburner-b5fc7d8/tests/test_auth.py :529 with patch("httpx.AsyncClient", return_value=mock_client):
  • net (weak) babywyrm-stoneburner-b5fc7d8/tests/test_cli_adversarial_integrity.py :12 import httpx
  • net (weak) babywyrm-stoneburner-b5fc7d8/tests/test_codegen_sandbox.py :74 "import socket\n"
  • net (weak) babywyrm-stoneburner-b5fc7d8/tests/test_codereview.py :5 import httpx
  • net (weak) babywyrm-stoneburner-b5fc7d8/tests/test_codereview_scorer.py :5 import httpx
  • net (weak) babywyrm-stoneburner-b5fc7d8/tests/test_distributed_cli.py :51 monkeypatch.setattr("atomics.commands.distributed.httpx.get", fake_get)
  • net (weak) babywyrm-stoneburner-b5fc7d8/tests/test_distributed_worker_client.py :25 "atomics.distributed.worker_client.httpx.AsyncClient",
  • net (weak) babywyrm-stoneburner-b5fc7d8/tests/test_doctor.py :220 with patch("httpx.get", return_value=mock_response):
  • net (weak) babywyrm-stoneburner-b5fc7d8/tests/test_e2e_http.py :246 import httpx

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

secrets 2

  • secrets (weak) babywyrm-stoneburner-b5fc7d8/atomics/eval/codereview/fixtures.py :110 "-API_KEY = os.environ['API_KEY']\n"
  • secrets babywyrm-stoneburner-b5fc7d8/atomics/secrets.py :43 import keyring

database 16

  • db (weak) babywyrm-stoneburner-b5fc7d8/atomics/benchmark/advisor.py :10 import sqlite3
  • db babywyrm-stoneburner-b5fc7d8/atomics/distributed/coordinator.py :8 from sqlite3 import Connection
  • db babywyrm-stoneburner-b5fc7d8/atomics/doctor.py :8 import sqlite3
  • db (weak) babywyrm-stoneburner-b5fc7d8/atomics/eval/fixtures.py :314 "import sqlite3\n\n"
  • db babywyrm-stoneburner-b5fc7d8/atomics/eval/rag/retrieval.py :7 import sqlite3
  • db babywyrm-stoneburner-b5fc7d8/atomics/load/regression.py :10 import sqlite3
  • db babywyrm-stoneburner-b5fc7d8/atomics/storage/repository/_base.py :5 import sqlite3
  • db babywyrm-stoneburner-b5fc7d8/atomics/storage/schema.py :6 import sqlite3
  • db (weak) babywyrm-stoneburner-b5fc7d8/scripts/smoke_fleet.py :79 import sqlite3
  • db (weak) babywyrm-stoneburner-b5fc7d8/tests/conftest.py :5 import sqlite3
  • db (weak) babywyrm-stoneburner-b5fc7d8/tests/test_cli_adversarial_integrity.py :7 import sqlite3
  • db (weak) babywyrm-stoneburner-b5fc7d8/tests/test_cli_suite_persistence.py :14 import sqlite3
show 4 more
  • db (weak) babywyrm-stoneburner-b5fc7d8/tests/test_commands_suite_run.py :5 import sqlite3
  • db (weak) babywyrm-stoneburner-b5fc7d8/tests/test_regression.py :5 import sqlite3
  • db (weak) babywyrm-stoneburner-b5fc7d8/tests/test_storage.py :119 import sqlite3
  • db (weak) babywyrm-stoneburner-b5fc7d8/tests/test_storage_schema.py :12 import sqlite3

tool registrations 14

  • list_models babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :60
  • provider_test babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :69
  • health babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :94
  • submit_run babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :102
  • submit_eval babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :137
  • submit_sweep babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :186
  • submit_stress babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :223
  • submit_soak babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :249
  • get_job babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :277
  • list_jobs babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :288
  • get_run babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :293
  • trends babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :302
show 2 more
  • compare babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :307
  • recent_runs babywyrm-stoneburner-b5fc7d8/atomics/mcp/server.py :320

declared dependencies 20

  • mcp@>=2.0.0,<2.1
  • anthropic@>=0.39.0
  • click@>=8.1.0
  • httpx@>=0.27.0
  • pydantic@>=2.0.0
  • pydantic-settings@>=2.0.0
  • pyyaml@>=6.0.3
  • rich@>=13.0.0
  • keyring@>=25.0
  • boto3@>=1.35.0
  • openai@>=1.40.0
  • sqlite-vec@>=0.1.0
show 8 more
  • sentence-transformers@>=3.0.0
  • fastapi@>=0.100.0
  • uvicorn@>=0.23.0
  • pytest@>=8.0.0
  • pytest-asyncio@>=0.24.0
  • pytest-cov@>=5.0.0
  • ruff@>=0.8.0
  • mypy@>=1.13.0

cursor-plugin 1

  • opaque (low) babywyrm-stoneburner-b5fc7d8/.cursor/skills/stoneburner-inference-env/SKILL.md bundled .cursor/ plugin descriptor (babywyrm-stoneburner-b5fc7d8/.cursor/skills/stoneburner-inference-env/SKILL.md) — presence-detected; review the descriptor

transport_posture 1

  • binds all interfaces (0.0.0.0) babywyrm-stoneburner-b5fc7d8/tests/test_api_security.py :39 settings = ServerSettings(host="0.0.0.0", api_keys={"k"})