One shared memory for every coding agent on your machine. It refuses to answer about work another agent has taken, and refuses the edit before the write lands.
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 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 8ef3b37 · analyzer v33 · 3d ago
skills & prompt files 1
- agent-rules drexthealpha-Knos-8ef3b37/CLAUDE.md
danger signals1
- dynamic code execution __import__ sink drexthealpha-Knos-8ef3b37/tests/test_guard.py :259
env={**__import__("os").environ, "KNOS_HOME": str(knos_home)},
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 100
filesystem 64
- fs drexthealpha-Knos-8ef3b37/action/knos_pr_check.py :28
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/scripts/ablation.py :40
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/scripts/budget.py :34
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/scripts/collide.py :37
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/scripts/concurrency.py :41
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/scripts/contention.py :28
import shutil - fs (weak) drexthealpha-Knos-8ef3b37/scripts/duplicated.py :45
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/scripts/live_gate.py :36
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/scripts/live_series.py :45
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/scripts/promotion_bench.py :41
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/scripts/refresh_citations.py :19
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/scripts/spend.py :46
from pathlib import Path
show 28 more
- fs (weak) drexthealpha-Knos-8ef3b37/scripts/verify_receipts.py :8
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/answer.py :15
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/builtin_reader.py :20
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/buy402.py :37
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/cli.py :13
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/code.py :18
import shutil - fs drexthealpha-Knos-8ef3b37/src/knos/core.py :44
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/src/knos/demo.py :20
import shutil - fs drexthealpha-Knos-8ef3b37/src/knos/errors.py :16
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/gate.py :45
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/git.py :11
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/guard.py :44
import shutil - fs drexthealpha-Knos-8ef3b37/src/knos/link.py :17
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/mcp.py :14
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/memory.py :22
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/paths.py :9
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/pay.py :19
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/private.py :14
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/receipts.py :83
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/rules.py :19
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/sessions.py :16
import shutil - fs drexthealpha-Knos-8ef3b37/src/knos/share.py :24
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/team.py :22
from pathlib import Path - fs drexthealpha-Knos-8ef3b37/src/knos/why.py :31
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/tests/conftest.py :6
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/tests/test_ablation.py :19
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/tests/test_bot.py :17
from pathlib import Path - fs (weak) drexthealpha-Knos-8ef3b37/tests/test_cap_share.py :23
from pathlib import Path
24 more not shown — this panel samples each group; the count above is the real total.
shell / exec 38
- shell (weak) drexthealpha-Knos-8ef3b37/scripts/ablation.py :36
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/scripts/budget.py :30
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/scripts/collide.py :32
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/scripts/contention.py :29
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/scripts/duplicated.py :40
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/scripts/live_gate.py :32
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/scripts/live_series.py :41
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/scripts/spend.py :42
import subprocess - shell drexthealpha-Knos-8ef3b37/src/knos/cli.py :289
import subprocess - shell drexthealpha-Knos-8ef3b37/src/knos/code.py :19
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/src/knos/demo.py :22
import subprocess - shell drexthealpha-Knos-8ef3b37/src/knos/git.py :9
import subprocess
show 26 more
- shell drexthealpha-Knos-8ef3b37/src/knos/guard.py :45
import subprocess - shell drexthealpha-Knos-8ef3b37/src/knos/paths.py :7
import subprocess - shell drexthealpha-Knos-8ef3b37/src/knos/rules.py :17
import subprocess - shell drexthealpha-Knos-8ef3b37/src/knos/team.py :20
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/conftest.py :5
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_ablation.py :16
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_cap_share.py :22
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_cli.py :6
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_collide.py :23
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_demo.py :17
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_failures.py :7
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_first_read.py :22
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_fresh_code.py :17
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_fresh_rules.py :21
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_guard.py :18
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_held_answers.py :21
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_intent.py :550
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_open_race.py :16
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_precision.py :13
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_recall.py :11
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_rename_bypass.py :19
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_rules.py :10
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_shared_repo.py :17
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_start_hook.py :22
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_twohop.py :6
import subprocess - shell (weak) drexthealpha-Knos-8ef3b37/tests/test_worktrees.py :11
import subprocess
network 6
- net drexthealpha-Knos-8ef3b37/action/knos_pr_check.py :26
import urllib.error - net drexthealpha-Knos-8ef3b37/src/knos/buy402.py :34
import httpx - net drexthealpha-Knos-8ef3b37/src/knos/receipts.py :30
import urllib.request - net drexthealpha-Knos-8ef3b37/src/knos/sessions.py :23
from urllib.parse import urlparse - net (weak) drexthealpha-Knos-8ef3b37/tests/test_no_network.py :21
import socket - net (weak) drexthealpha-Knos-8ef3b37/tests/test_receipts.py :61
monkeypatch.setattr(receipts.urllib.request, "urlopen", fake)
secrets 1
- secrets drexthealpha-Knos-8ef3b37/action/knos_pr_check.py :120
token = os.environ.get("GITHUB_TOKEN", "")
database 7
- db drexthealpha-Knos-8ef3b37/src/knos/memory.py :19
import sqlite3 - db drexthealpha-Knos-8ef3b37/src/knos/sessions.py :17
import sqlite3 - db (weak) drexthealpha-Knos-8ef3b37/tests/test_decide.py :101
import sqlite3 - db (weak) drexthealpha-Knos-8ef3b37/tests/test_memory.py :6
import sqlite3 - db (weak) drexthealpha-Knos-8ef3b37/tests/test_seal.py :17
import sqlite3 - db (weak) drexthealpha-Knos-8ef3b37/tests/test_sessions.py :7
import sqlite3 - db (weak) drexthealpha-Knos-8ef3b37/tests/test_sibyl_is_load_bearing.py :12
import sqlite3
declared dependencies 8
- mcp@>=2.0
- typer@>=0.12
- rich@>=13
- sibyl-memory-client@>=0.7.0
- pytest@>=7
- flask@>=3
- x402@>=2.21
- httpx@>=0.27