From ticket to reviewed pull request. Free and open-source, on your machine.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · http
verified
reported
listed in the official MCP registry counts 2 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
task_add
-
task_status
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 36d7bf9 · analyzer v33 · 4h ago
skills & prompt files 3
danger signals18
- dynamic code execution pickle.loads() no-human-ai-no_human-36d7bf9/eval/commit0_corpus/vendor/cachetools-5.5.2/tests/__init__.py :272
cache = pickle.loads(pickle.dumps(source)) - dynamic code execution pickle.loads() no-human-ai-no_human-36d7bf9/eval/commit0_corpus/vendor/cachetools-5.5.2/tests/test_keys.py :89
pickled = pickle.loads(pickle.dumps(k)) - dynamic code execution __import__ sink no-human-ai-no_human-36d7bf9/tests/test_setup_mode_boot.py :302
assert "ANTHROPIC_AUTH_TOKEN" not in __import__("os").environ - dynamic code execution eval()/exec() no-human-ai-no_human-36d7bf9/tests/test_verifiers_gate.py :620
floored = eval(code, { # noqa: S307 - trusted source, own repo file - suspicious endpoint us-assets.i.posthog.com (telemetry) no-human-ai-no_human-36d7bf9/src/no_human/api/app.py :461
_POSTHOG_SCRIPT_HOST = "https://us-assets.i.posthog.com" - suspicious endpoint us.i.posthog.com (telemetry) no-human-ai-no_human-36d7bf9/src/no_human/api/app.py :462
_POSTHOG_CONNECT_HOSTS = "https://us.i.posthog.com https://us-assets.i.posthog.com" - suspicious endpoint us.i.posthog.com (telemetry) no-human-ai-no_human-36d7bf9/src/no_human/config.py :2425
"posthog_host": "https://us.i.posthog.com", - suspicious endpoint 8.8.8.8 no-human-ai-no_human-36d7bf9/tests/test_coder_backend_settings.py :190
{"backend": "local", "local_base_url": "http://8.8.8.8:8000", - suspicious endpoint 8.8.8.8 no-human-ai-no_human-36d7bf9/tests/test_config.py :850
"http://8.8.8.8:8000", - suspicious endpoint 1.1.1.1 no-human-ai-no_human-36d7bf9/tests/test_config.py :851
"http://1.1.1.1", - suspicious endpoint 169.254.169.254 (cloud metadata) no-human-ai-no_human-36d7bf9/tests/test_config.py :862
"http://169.254.169.254", - suspicious endpoint us.i.posthog.com (telemetry) no-human-ai-no_human-36d7bf9/tests/test_egress_allowlist.py :813
"https://us.i.posthog.com/batch/ (telemetry.posthog_host), or " - suspicious endpoint 8.8.8.8 no-human-ai-no_human-36d7bf9/tests/test_local_backend.py :178
{"local_model": "m", "local_base_url": "http://8.8.8.8"}, # public IP - suspicious endpoint us-assets.i.posthog.com (telemetry) no-human-ai-no_human-36d7bf9/tests/test_telemetry.py :348
"script-src 'self' https://us-assets.i.posthog.com; " - suspicious endpoint us.i.posthog.com (telemetry) no-human-ai-no_human-36d7bf9/tests/test_telemetry.py :352
"https://us.i.posthog.com https://us-assets.i.posthog.com; " - committed secret Anthropic key no-human-ai-no_human-36d7bf9/desktop/mainIpc.test.mjs :146
sk-ant…(32 chars, redacted) - committed secret Anthropic key no-human-ai-no_human-36d7bf9/tests/test_adoption_harness.py :235
sk-ant…(33 chars, redacted) - committed secret Anthropic key no-human-ai-no_human-36d7bf9/tests/test_init.py :441
sk-ant…(34 chars, redacted)
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 1338
filesystem 321
- fs (weak) no-human-ai-no_human-36d7bf9/e2e/adoption/adoption_run.py :76
import shutil - fs (weak) no-human-ai-no_human-36d7bf9/e2e/adoption/personas.py :36
import shutil - fs (weak) no-human-ai-no_human-36d7bf9/e2e/board_e2e.py :21
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/_freeze_probe.py :29
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/_probe_rects.py :14
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/captions.py :32
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/cli_frames.py :24
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/compose.py :46
import shutil - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/encode.py :28
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/gui_frames.py :31
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/record.py :20
import shutil - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/sprint_cli.py :30
from pathlib import Path
show 28 more
- fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/sprint_gui.py :38
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/verify_sync.py :111
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/voiceover.py :41
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/lane_model.py :25
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/e2e/serve_demo.py :18
from pathlib import Path - fs no-human-ai-no_human-36d7bf9/eval/commit0_corpus/build.py :55
import shutil - fs no-human-ai-no_human-36d7bf9/eval/commit0_corpus/report.py :20
from pathlib import Path - fs no-human-ai-no_human-36d7bf9/eval/parcelo_corpus/build.py :30
import shutil - fs no-human-ai-no_human-36d7bf9/eval/parcelo_corpus/build_large.py :34
import shutil - fs no-human-ai-no_human-36d7bf9/eval/parcelo_corpus/build_multirepo.py :26
import shutil - fs no-human-ai-no_human-36d7bf9/eval/parcelo_corpus/report.py :17
from pathlib import Path - fs no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-bench-baseline/base/src/no_human/api/app.py :27
from pathlib import Path - fs no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-bench-baseline/base/src/no_human/cli/commands.py :16
from pathlib import Path - fs no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-bench-baseline/base/src/no_human/eval/northstar_card.py :19
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-bench-baseline/base/tests/test_bench_publish.py :17
from pathlib import Path - fs no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-cli-budgets/base/src/no_human/cli/commands.py :16
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-cli-budgets/base/tests/test_task_lifecycle.py :9
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-demo-caption-anchor/base/tests/test_narrated_demo.py :25
import shutil - fs no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-gate-excerpts/base/src/no_human/core/orchestrator.py :24
import shutil - fs (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-gate-excerpts/base/src/no_human/testing/runner.py :17
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-gate-excerpts/base/tests/test_runner.py :3
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-gate-excerpts/base/tests/test_vcs.py :4
from pathlib import Path - fs (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-prbody-renderer-proof/base/tests/test_pr_body_truthfulness.py :14
import shutil - fs no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-split-generator/base/src/no_human/core/orchestrator.py :24
import shutil - fs no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-chip-claims-sync-parity/base/src/no_human/api/app.py :27
from pathlib import Path - fs no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-default-clobbers-explicit-cap/base/src/no_human/api/app.py :27
from pathlib import Path - fs no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-default-clobbers-explicit-cap/base/src/no_human/cli/commands.py :16
from pathlib import Path - fs no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-default-clobbers-explicit-cap/base/src/no_human/profile.py :17
from pathlib import Path
281 more not shown — this panel samples each group; the count above is the real total.
shell / exec 278
- shell (weak) no-human-ai-no_human-36d7bf9/e2e/adoption/adoption_run.py :77
import subprocess - shell (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/_freeze_probe.py :28
import subprocess - shell (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/compose.py :47
import subprocess - shell (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/encode.py :27
import subprocess - shell (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/verify_sync.py :108
import subprocess - shell (weak) no-human-ai-no_human-36d7bf9/e2e/demo_video/voiceover.py :39
import subprocess - shell (weak) no-human-ai-no_human-36d7bf9/e2e/serve_demo.py :15
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/commit0_corpus/build.py :56
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/parcelo_corpus/build.py :31
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/parcelo_corpus/build_large.py :35
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/parcelo_corpus/build_multirepo.py :27
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-bench-baseline/base/src/no_human/api/app.py :22
import subprocess
show 28 more
- shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-bench-baseline/base/src/no_human/cli/commands.py :1100
import subprocess as _sp - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-cli-budgets/base/src/no_human/cli/commands.py :1100
import subprocess as _sp - shell (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-demo-caption-anchor/base/tests/test_narrated_demo.py :26
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-gate-excerpts/base/src/no_human/core/orchestrator.py :1860
import subprocess as _sp_fetch - shell (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-gate-excerpts/base/src/no_human/testing/runner.py :14
import subprocess - shell (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-gate-excerpts/base/tests/test_vcs.py :3
import subprocess - shell (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-prbody-renderer-proof/base/tests/test_pr_body_truthfulness.py :15
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-split-generator/base/src/no_human/core/orchestrator.py :1763
import subprocess as _sp_fetch - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-chip-claims-sync-parity/base/src/no_human/api/app.py :22
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-default-clobbers-explicit-cap/base/src/no_human/api/app.py :22
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-default-clobbers-explicit-cap/base/src/no_human/cli/commands.py :1032
import subprocess as _sp - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-full-exc-logged/base/src/no_human/api/app.py :22
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-payload-logged/base/src/no_human/api/app.py :22
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-shell-interp-symlink/base/src/no_human/core/orchestrator.py :1763
import subprocess as _sp_fetch - shell (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-shell-interp-symlink/base/src/no_human/testing/runner.py :14
import subprocess - shell (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-shell-interp-symlink/base/tests/test_base_tree_gate.py :13
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/specmiss-advisory-not-persisted/base/src/no_human/core/orchestrator.py :1748
import subprocess as _sp_fetch - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/specmiss-credential-load-outside-gate/base/src/no_human/cli/commands.py :1100
import subprocess as _sp - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/specmiss-unclaimed-pulse/base/src/no_human/api/app.py :22
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/tamper-instrument-pin-tautology/base/src/no_human/cli/commands.py :1100
import subprocess as _sp - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/tamper-instrument-pin-tautology/base/src/no_human/eval/bench_task.py :21
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/tamper-unbounded-retry-assertion/base/src/no_human/core/orchestrator.py :1799
import subprocess as _sp_fetch - shell (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/tamper-unbounded-retry-assertion/base/src/no_human/testing/runner.py :14
import subprocess - shell (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/wiring-demo-verify-sync/base/e2e/demo_video/compose.py :37
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/materialize_base.py :43
import subprocess - shell no-human-ai-no_human-36d7bf9/eval/reviewer_recall/runner.py :24
import subprocess - shell no-human-ai-no_human-36d7bf9/hatch_build.py :30
import subprocess - shell no-human-ai-no_human-36d7bf9/packaging/mcp_handshake_probe.py :40
import subprocess
238 more not shown — this panel samples each group; the count above is the real total.
network 143
- net (weak) no-human-ai-no_human-36d7bf9/e2e/adoption/backlog.py :275
"All three call sites go through ApiClient; no direct httpx.get remains outside skyline/net/.", - net (weak) no-human-ai-no_human-36d7bf9/e2e/adoption/fakes.py :39
from urllib.parse import parse_qs, urlparse - net (weak) no-human-ai-no_human-36d7bf9/e2e/board_e2e.py :20
import urllib.request - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-bench-baseline/base/src/no_human/api/app.py :29
from urllib.parse import urlsplit - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-bench-baseline/base/src/no_human/cli/commands.py :51
import urllib.error - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-bench-baseline/base/tests/test_bench_api.py :16
from httpx import ASGITransport, AsyncClient - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-cli-budgets/base/src/no_human/cli/commands.py :51
import urllib.error - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-chip-claims-sync-parity/base/src/no_human/api/app.py :29
from urllib.parse import urlsplit - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-default-clobbers-explicit-cap/base/src/no_human/api/app.py :29
from urllib.parse import urlsplit - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-default-clobbers-explicit-cap/base/src/no_human/cli/commands.py :51
import urllib.error - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-default-clobbers-explicit-cap/base/tests/test_api.py :7
from httpx import AsyncClient, ASGITransport - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-default-clobbers-explicit-cap/base/tests/test_jira_intake.py :62
monkeypatch.setattr("no_human.intake.jira.httpx.get", fake_get)
show 28 more
- net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-full-exc-logged/base/src/no_human/api/app.py :29
from urllib.parse import urlsplit - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-full-exc-logged/base/src/no_human/intake/jira.py :27
import httpx - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-full-exc-logged/base/tests/test_jira_intake.py :63
monkeypatch.setattr("no_human.intake.jira.httpx.get", fake_get) - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-full-exc-logged/base/tests/test_jira_issues_endpoint.py :3
Mirrors tests/test_jira_intake.py's mocking style (httpx.get monkeypatched on - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-payload-logged/base/src/no_human/api/app.py :29
from urllib.parse import urlsplit - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-payload-logged/base/tests/test_api.py :7
from httpx import AsyncClient, ASGITransport - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-payload-logged/base/tests/test_jira_intake.py :62
monkeypatch.setattr("no_human.intake.jira.httpx.get", fake_get) - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-status-check-logs-exc/base/src/no_human/intake/jira.py :26
from urllib.parse import quote - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-status-check-logs-exc/base/tests/test_jira_intake.py :63
monkeypatch.setattr("no_human.intake.jira.httpx.get", fake_get) - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/specmiss-credential-load-outside-gate/base/src/no_human/cli/commands.py :51
import urllib.error - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/specmiss-fetch-error-skips-comment/base/src/no_human/intake/jira.py :26
from urllib.parse import quote - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/specmiss-fetch-error-skips-comment/base/tests/test_jira_intake.py :63
monkeypatch.setattr("no_human.intake.jira.httpx.get", fake_get) - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/specmiss-unclaimed-pulse/base/src/no_human/api/app.py :29
from urllib.parse import urlsplit - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/specmiss-unclaimed-pulse/base/tests/test_api.py :7
from httpx import AsyncClient, ASGITransport - net no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/tamper-instrument-pin-tautology/base/src/no_human/cli/commands.py :51
import urllib.error - net (weak) no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/tamper-relaxed-sync-assertions/base/tests/test_jira_intake.py :62
monkeypatch.setattr("no_human.intake.jira.httpx.get", fake_get) - net (weak) no-human-ai-no_human-36d7bf9/scripts/measure_worker_status.py :33
import urllib.error - net no-human-ai-no_human-36d7bf9/src/no_human/agent/guard.py :60
from urllib.parse import unquote - net no-human-ai-no_human-36d7bf9/src/no_human/api/app.py :36
import httpx - net no-human-ai-no_human-36d7bf9/src/no_human/api/local_boundary.py :41
from urllib.parse import urlsplit - net no-human-ai-no_human-36d7bf9/src/no_human/brain/client.py :87
from urllib.parse import urlsplit - net no-human-ai-no_human-36d7bf9/src/no_human/brain/credentials.py :53
import urllib.parse - net no-human-ai-no_human-36d7bf9/src/no_human/ci/circleci.py :19
from urllib.parse import quote - net no-human-ai-no_human-36d7bf9/src/no_human/ci/gitlab.py :26
import urllib.parse - net no-human-ai-no_human-36d7bf9/src/no_human/ci/jenkins_session.py :26
from urllib.parse import urlparse - net no-human-ai-no_human-36d7bf9/src/no_human/ci_action/github.py :28
import httpx - net no-human-ai-no_human-36d7bf9/src/no_human/cli/api_client.py :20
import httpx - net no-human-ai-no_human-36d7bf9/src/no_human/cli/commands.py :107
import urllib.error
103 more not shown — this panel samples each group; the count above is the real total.
secrets 22
- secrets (weak) no-human-ai-no_human-36d7bf9/e2e/adoption/adoption_run.py :507
os.environ["JENKINS_API_TOKEN"] = "fake-token" - secrets no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/control-bench-baseline/base/src/no_human/api/app.py :1225
os.environ.get("ANTHROPIC_API_KEY") - secrets no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-chip-claims-sync-parity/base/src/no_human/api/app.py :1226
os.environ.get("ANTHROPIC_API_KEY") - secrets no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/logic-default-clobbers-explicit-cap/base/src/no_human/api/app.py :1215
os.environ.get("ANTHROPIC_API_KEY") - secrets no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-full-exc-logged/base/src/no_human/api/app.py :1225
os.environ.get("ANTHROPIC_API_KEY") - secrets no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-full-exc-logged/base/src/no_human/intake/jira.py :83
self.token = os.environ.get("JIRA_API_TOKEN") - secrets no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-payload-logged/base/src/no_human/api/app.py :1205
os.environ.get("ANTHROPIC_API_KEY") - secrets no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/security-status-check-logs-exc/base/src/no_human/intake/jira.py :84
self.token = os.environ.get("JIRA_API_TOKEN") - secrets no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/specmiss-fetch-error-skips-comment/base/src/no_human/intake/jira.py :84
self.token = os.environ.get("JIRA_API_TOKEN") - secrets no-human-ai-no_human-36d7bf9/eval/reviewer_recall/cases/specmiss-unclaimed-pulse/base/src/no_human/api/app.py :1211
os.environ.get("ANTHROPIC_API_KEY") - secrets no-human-ai-no_human-36d7bf9/src/no_human/api/app.py :3002
os.environ.get("ANTHROPIC_API_KEY") - secrets no-human-ai-no_human-36d7bf9/src/no_human/ci/circleci.py :82
self.token = os.environ.get("CIRCLECI_TOKEN")
show 10 more
- secrets no-human-ai-no_human-36d7bf9/src/no_human/ci_action/run.py :540
github_token = _input("github_token") or os.environ.get("GITHUB_TOKEN", "") - secrets no-human-ai-no_human-36d7bf9/src/no_human/intake/jira.py :84
self.token = os.environ.get("JIRA_API_TOKEN") - secrets no-human-ai-no_human-36d7bf9/src/no_human/intake/linear.py :293
self.api_key = os.environ.get("LINEAR_API_KEY") - secrets no-human-ai-no_human-36d7bf9/src/no_human/intake/monday.py :292
self.api_token = os.environ.get("MONDAY_API_TOKEN") - secrets no-human-ai-no_human-36d7bf9/src/no_human/integrations/__init__.py :1229
token = os.environ.get("JIRA_API_TOKEN") - secrets (weak) no-human-ai-no_human-36d7bf9/tests/test_api_key_auth_mode.py :55
assert os.environ["ANTHROPIC_API_KEY"] == "sk-ant-friend-key" - secrets (weak) no-human-ai-no_human-36d7bf9/tests/test_auth_api.py :89
assert os.environ.get("ANTHROPIC_API_KEY") == "sk-ant-api03-whatever" - secrets (weak) no-human-ai-no_human-36d7bf9/tests/test_ci.py :1664
assert os.environ["GITLAB_TOKEN"] == "glpat-LIVE-from-the-shell" - secrets (weak) no-human-ai-no_human-36d7bf9/tests/test_codex_backend.py :1608
assert os.environ["OPENAI_API_KEY"] == "placeholder-not-a-real-key" - secrets (weak) no-human-ai-no_human-36d7bf9/tests/test_config.py :67
assert os.environ["CLAUDE_CODE_OAUTH_TOKEN"] == "file-token"
database 22
- db (weak) no-human-ai-no_human-36d7bf9/scripts/measure_cache_burn.py :42
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/scripts/memory_triage_runbook.py :95
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/scripts/navigation_value.py :198
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/scripts/recount_readme_metrics.py :135
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/scripts/review_round_value.py :82
import sqlite3 - db no-human-ai-no_human-36d7bf9/src/no_human/brain/store.py :37
import sqlite3 - db no-human-ai-no_human-36d7bf9/src/no_human/core/db.py :241
import sqlite3 - db no-human-ai-no_human-36d7bf9/src/no_human/core/scheduler.py :29
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/_memory_triage_fixture.py :60
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_brain_invariants.py :293
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_db_concurrency.py :757
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_first_run_does_not_hang.py :437
import sqlite3
show 10 more
- db (weak) no-human-ai-no_human-36d7bf9/tests/test_frozen_snapshot_guard.py :34
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_history_privacy.py :448
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_memory_triage_runbook.py :25
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_navigation_value.py :49
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_northstar.py :345
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_readme_claims.py :31
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_review_round_value.py :26
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_scheduler_lease_write_retry.py :59
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_task_show_preserves_brackets.py :77
import sqlite3 - db (weak) no-human-ai-no_human-36d7bf9/tests/test_token_split_schema.py :33
import sqlite3
tool registrations 2
- task_add no-human-ai-no_human-36d7bf9/src/no_human/intake/mcp_bridge.py :103
- task_status no-human-ai-no_human-36d7bf9/src/no_human/intake/mcp_bridge.py :126
declared dependencies 13
- mcp@>=2,<3
- aiosqlite@>=0.22.1
- claude-agent-sdk@>=0.2.120
- click@>=8.4.1
- fastapi@>=0.138.0
- httpx@>=0.28.1
- psutil@>=7.0.0
- pyyaml@>=6.0.3
- rich@>=15.0.0
- slack-sdk@>=3.43.0
- textual@>=8.2.7
- s@# live-update WS. Plain uvicorn can
show 1 more
- uvicorn@>=0.49.0