Self-hosted AI agent for terminal and Telegram, with Claude/Codex workers, live activity and a deterministic permission kernel.
Drift inferred · capture-to-capture
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
- HIGH code analysis flagged committed secret in talos-kernel/Talos
tool count over time
tools
-
agent_consult
bounded advice from a second, operator-configured agent — data, never permission
-
ask_operator
the one way it can ask you something on purpose
-
delegate
a sub-run that can only read
-
delegate_agy
the same confined worker's second backend (the agy CLI): same trust form and workspace, behind its own opt-in gates on agent and worker, no MCP
-
delegate_codex
bounded implementation and independent review with Codex: the same kernel and sandbox, isolated auth, verified stream completion and originating-chat notifications; [setup](docs/codex-worker.md)
-
delegate_steer
a course correction into a *running* /background task — a framed turn it reads at its next step, never a new right
-
entity_status
a known name resolved to an operator-configured fixed read-only probe
-
git
clone / fetch / pull / push with credentials — every op a human's yes, binding to exact op+repo+remote; local git work stays in the sandboxed shell
-
http_request
any REST API — read methods through the SSRF-hardened door, state-changing methods always a human's yes, binding to exact method+URL
-
remote_exec
a command on another machine over ssh — operator-allowlisted hosts, always a human's yes, standing rules bind to exact host+command
-
run_shell
a command, sandboxed, or refused where no sandbox exists
-
session_search
what was said in earlier turns
-
skill_write
a new skill, written exactly once — and never without a human's yes
analyzed commit 1c2b543 · analyzer v33 · 8m ago
skills & prompt files 1
- agent-rules talos-kernel-Talos-1c2b543/CLAUDE.md
danger signals13
- dynamic code execution __import__() talos-kernel-Talos-1c2b543/talos/conductor.py :211
background: object = field(default_factory=lambda: __import__( - dynamic code execution eval()/exec() talos-kernel-Talos-1c2b543/tests/test_custom_provider_routing.py :77
exec(compile(ast.Module(body=[node], type_ignores=[]), '<service-factory>', 'exec'), scope) - suspicious endpoint api.telegram.org talos-kernel-Talos-1c2b543/talos/doctor.py :317
antwort = get(f"https://api.telegram.org/bot{token}/getMe", timeout=20) - suspicious endpoint api.telegram.org talos-kernel-Talos-1c2b543/talos/setup_wizard.py :46
API_URL = "https://api.telegram.org/bot{token}/{method}" - suspicious endpoint api.telegram.org talos-kernel-Talos-1c2b543/talos/telegram.py :30
_BASE = "https://api.telegram.org/bot{token}/{method}" - suspicious endpoint 169.254.169.254 (cloud metadata) talos-kernel-Talos-1c2b543/tests/test_apiclient.py :174
_FakeResponse(302, headers={"Location": "http://169.254.169.254/latest"}), - suspicious endpoint api.telegram.org talos-kernel-Talos-1c2b543/tests/test_composition_wiring.py :101
f"https://api.telegram.org/bot{echt}/getUpdates" - suspicious endpoint 169.254.169.254 (cloud metadata) talos-kernel-Talos-1c2b543/tests/test_web.py :127
web.guard_url("https://169.254.169.254/latest/meta-data/", resolve=resolver()) - committed secret Anthropic key talos-kernel-Talos-1c2b543/redteam.py :1166
sk-ant…(44 chars, redacted) - committed secret Anthropic key talos-kernel-Talos-1c2b543/tests/test_api_reasoner.py :23
sk-ant…(35 chars, redacted) - committed secret Anthropic key talos-kernel-Talos-1c2b543/tests/test_crashreport.py :57
sk-ant…(35 chars, redacted) - committed secret Anthropic key talos-kernel-Talos-1c2b543/tests/test_credentials.py :29
sk-ant…(35 chars, redacted) - committed secret Anthropic key talos-kernel-Talos-1c2b543/tests/test_recall.py :299
sk-ant…(49 chars, redacted)
code files: 295
filesystem 184
- fs talos-kernel-Talos-1c2b543/deploy/computer-setup.py :7
from pathlib import Path - fs talos-kernel-Talos-1c2b543/e2e.py :21
from pathlib import Path - fs (weak) talos-kernel-Talos-1c2b543/macos/Tests/test_desktop_runtime.py :6
from pathlib import Path - fs (weak) talos-kernel-Talos-1c2b543/macos/Tests/test_desktop_state.py :3
from pathlib import Path - fs talos-kernel-Talos-1c2b543/macos/build_app.py :11
from pathlib import Path - fs talos-kernel-Talos-1c2b543/macos/desktop_connections.py :4
from pathlib import Path - fs talos-kernel-Talos-1c2b543/macos/desktop_runtime.py :12
from pathlib import Path - fs talos-kernel-Talos-1c2b543/macos/desktop_state.py :3
from pathlib import Path - fs talos-kernel-Talos-1c2b543/redteam.py :15
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/__main__.py :23
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/anchor.py :32
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/approval.py :57
with open(path, "rb") as handle:
show 28 more
- fs talos-kernel-Talos-1c2b543/talos/attachment.py :40
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/autonomy.py :44
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/blueprints.py :39
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/briefing.py :42
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/browser.py :36
import shutil - fs talos-kernel-Talos-1c2b543/talos/claudeworker.py :81
import shutil - fs talos-kernel-Talos-1c2b543/talos/cli.py :32
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/codexworker.py :10
import shutil - fs talos-kernel-Talos-1c2b543/talos/commands.py :27
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/computer/browser.py :7
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/computer/cli.py :3
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/computer/contract.py :3
from pathlib import PurePosixPath - fs talos-kernel-Talos-1c2b543/talos/computer/egress.py :141
os.unlink(endpoint) - fs talos-kernel-Talos-1c2b543/talos/computer/guest.py :6
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/computer/observation.py :3
from pathlib import PurePosixPath - fs talos-kernel-Talos-1c2b543/talos/computer/presentation.py :4
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/computer/service.py :6
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/computer/state.py :7
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/computer/web.py :8
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/conductor.py :31
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/config.py :9
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/configcli.py :35
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/customproviders.py :36
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/dag.py :42
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/dashboard.py :44
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/distill.py :42
from pathlib import Path - fs talos-kernel-Talos-1c2b543/talos/doctor.py :31
import shutil - fs talos-kernel-Talos-1c2b543/talos/documents.py :42
from pathlib import Path
144 more not shown — this panel samples each group; the count above is the real total.
shell / exec 32
- shell talos-kernel-Talos-1c2b543/deploy/computer-setup.py :12
import subprocess - shell (weak) talos-kernel-Talos-1c2b543/examples/status-source/status-server.py :18
import subprocess - shell talos-kernel-Talos-1c2b543/macos/build_app.py :14
import subprocess - shell talos-kernel-Talos-1c2b543/macos/desktop_connections.py :7
import subprocess - shell talos-kernel-Talos-1c2b543/macos/desktop_hermes.py :3
import subprocess - shell talos-kernel-Talos-1c2b543/macos/desktop_runtime.py :15
import subprocess - shell talos-kernel-Talos-1c2b543/talos/browser.py :38
import subprocess - shell talos-kernel-Talos-1c2b543/talos/claudeworker.py :84
import subprocess - shell talos-kernel-Talos-1c2b543/talos/commands.py :24
import subprocess - shell talos-kernel-Talos-1c2b543/talos/computer/guest.py :8
import subprocess - shell talos-kernel-Talos-1c2b543/talos/computer/ready.py :2
import subprocess - shell talos-kernel-Talos-1c2b543/talos/computer/service.py :11
import subprocess
show 20 more
- shell talos-kernel-Talos-1c2b543/talos/frames.py :29
import subprocess - shell talos-kernel-Talos-1c2b543/talos/hearing.py :24
import subprocess - shell talos-kernel-Talos-1c2b543/talos/intelligence.py :14
import subprocess - shell talos-kernel-Talos-1c2b543/talos/reasoner.py :20
import subprocess - shell talos-kernel-Talos-1c2b543/talos/sandbox.py :44
import subprocess - shell talos-kernel-Talos-1c2b543/talos/speech.py :23
import subprocess - shell talos-kernel-Talos-1c2b543/talos/tools.py :13
import subprocess - shell talos-kernel-Talos-1c2b543/talos/updater.py :111
import subprocess - shell talos-kernel-Talos-1c2b543/talos/vault.py :13
import subprocess - shell talos-kernel-Talos-1c2b543/talos/vision.py :33
import subprocess - shell talos-kernel-Talos-1c2b543/talos/wabroker.py :40
import subprocess - shell (weak) talos-kernel-Talos-1c2b543/tests/computer_browser_e2e.py :10
import subprocess - shell (weak) talos-kernel-Talos-1c2b543/tests/test_cli_onboarding.py :186
import subprocess - shell (weak) talos-kernel-Talos-1c2b543/tests/test_computer_service.py :26
import subprocess - shell (weak) talos-kernel-Talos-1c2b543/tests/test_credentials.py :276
import subprocess - shell (weak) talos-kernel-Talos-1c2b543/tests/test_intelligence.py :4
import subprocess - shell (weak) talos-kernel-Talos-1c2b543/tests/test_policy.py :142
import subprocess - shell (weak) talos-kernel-Talos-1c2b543/tests/test_provider_resilience.py :72
import subprocess - shell (weak) talos-kernel-Talos-1c2b543/tests/test_site_claims.py :58
import subprocess - shell (weak) talos-kernel-Talos-1c2b543/tests/test_vault_tools.py :6
import subprocess
network 45
- net talos-kernel-Talos-1c2b543/deploy/computer-setup.py :13
import urllib.request - net (weak) talos-kernel-Talos-1c2b543/macos/Tests/test_desktop_state.py :49
import requests - net talos-kernel-Talos-1c2b543/macos/desktop_connections.py :59
import requests - net talos-kernel-Talos-1c2b543/talos/__main__.py :26
import requests - net talos-kernel-Talos-1c2b543/talos/api_reasoner.py :63
import socket - net talos-kernel-Talos-1c2b543/talos/claudejobs.py :12
import socket - net talos-kernel-Talos-1c2b543/talos/claudeworker.py :82
import socket - net talos-kernel-Talos-1c2b543/talos/computer/bridge.py :4
import socket - net talos-kernel-Talos-1c2b543/talos/computer/browser.py :10
from urllib.parse import urlsplit, urlunsplit - net talos-kernel-Talos-1c2b543/talos/computer/client.py :5
import socket - net talos-kernel-Talos-1c2b543/talos/computer/contract.py :31
from urllib.parse import urlsplit - net talos-kernel-Talos-1c2b543/talos/computer/egress.py :10
import socket
show 28 more
- net talos-kernel-Talos-1c2b543/talos/computer/presentation.py :5
from urllib.parse import urlsplit - net talos-kernel-Talos-1c2b543/talos/computer/service.py :8
import socket - net talos-kernel-Talos-1c2b543/talos/computer/web.py :10
import socket - net talos-kernel-Talos-1c2b543/talos/consult.py :13
from urllib.parse import urlsplit - net talos-kernel-Talos-1c2b543/talos/crashreport.py :176
import requests - net talos-kernel-Talos-1c2b543/talos/customproviders.py :37
from urllib.parse import urlsplit - net talos-kernel-Talos-1c2b543/talos/doctor.py :313
import requests - net talos-kernel-Talos-1c2b543/talos/intelligence.py :21
from urllib.parse import urlsplit - net talos-kernel-Talos-1c2b543/talos/models.py :119
import requests - net talos-kernel-Talos-1c2b543/talos/modelworker.py :36
import socket - net talos-kernel-Talos-1c2b543/talos/oauth.py :48
import requests - net talos-kernel-Talos-1c2b543/talos/setup_wizard.py :39
import requests - net talos-kernel-Talos-1c2b543/talos/telegram.py :21
import requests - net talos-kernel-Talos-1c2b543/talos/updater.py :119
from urllib.request import urlopen - net talos-kernel-Talos-1c2b543/talos/vault.py :17
from urllib.parse import unquote, urlsplit - net talos-kernel-Talos-1c2b543/talos/web.py :73
import socket - net talos-kernel-Talos-1c2b543/talos/whatsapp.py :34
import requests - net (weak) talos-kernel-Talos-1c2b543/tests/computer_browser_e2e.py :15
from urllib.parse import parse_qs - net (weak) talos-kernel-Talos-1c2b543/tests/test_agent_consult.py :202
import socket - net (weak) talos-kernel-Talos-1c2b543/tests/test_background_telegram_e2e.py :11
from urllib.parse import parse_qs - net (weak) talos-kernel-Talos-1c2b543/tests/test_catalog.py :275
for forbidden in ("import requests", "import os", "open(", "urllib", "subprocess"): - net (weak) talos-kernel-Talos-1c2b543/tests/test_claudeworker.py :15
import socket - net (weak) talos-kernel-Talos-1c2b543/tests/test_computer.py :4
import socket - net (weak) talos-kernel-Talos-1c2b543/tests/test_ephemeral_telegram.py :29
from urllib.parse import parse_qs - net (weak) talos-kernel-Talos-1c2b543/tests/test_modelworker.py :13
import socket - net (weak) talos-kernel-Talos-1c2b543/tests/test_operator_recovery_integration.py :11
from urllib.parse import parse_qs - net (weak) talos-kernel-Talos-1c2b543/tests/test_sandbox.py :13
import socket - net (weak) talos-kernel-Talos-1c2b543/tests/test_site_claims.py :199
from urllib.parse import unquote
5 more not shown — this panel samples each group; the count above is the real total.
secrets 4
- secrets talos-kernel-Talos-1c2b543/redteam.py :3733
os.environ["TALOS_AGENT_CONSULT_TOKEN"] = "rt-geheim-1" - secrets talos-kernel-Talos-1c2b543/talos/config.py :311
token = os.environ.get("TELEGRAM_BOT_TOKEN") or secrets.get("TELEGRAM_BOT_TOKEN", "") - secrets talos-kernel-Talos-1c2b543/talos/setup_wizard.py :28
import getpass - secrets (weak) talos-kernel-Talos-1c2b543/tests/test_agent_consult.py :197
assert os.environ.get("TALOS_AGENT_CONSULT_TOKEN") == "env-token"
database 26
- db talos-kernel-Talos-1c2b543/e2e.py :17
import sqlite3 - db talos-kernel-Talos-1c2b543/macos/desktop_state.py :4
import sqlite3 - db talos-kernel-Talos-1c2b543/redteam.py :3652
import sqlite3 as _hc_sqlite - db talos-kernel-Talos-1c2b543/talos/anchor.py :29
import sqlite3 - db talos-kernel-Talos-1c2b543/talos/briefing.py :39
import sqlite3 - db talos-kernel-Talos-1c2b543/talos/computer/state.py :4
import sqlite3 - db talos-kernel-Talos-1c2b543/talos/computer/web.py :11
import sqlite3 - db talos-kernel-Talos-1c2b543/talos/dashboard.py :40
import sqlite3 - db talos-kernel-Talos-1c2b543/talos/eventlog.py :16
import sqlite3 - db talos-kernel-Talos-1c2b543/talos/health.py :22
import sqlite3 - db talos-kernel-Talos-1c2b543/talos/recall.py :51
import sqlite3 - db talos-kernel-Talos-1c2b543/talos/report.py :34
import sqlite3
show 14 more
- db talos-kernel-Talos-1c2b543/talos/schedule.py :37
import sqlite3 - db talos-kernel-Talos-1c2b543/talos/transcript.py :40
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_anchor.py :11
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_background_telegram_e2e.py :9
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_briefing.py :11
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_continuity.py :17
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_cron.py :127
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_dashboard.py :13
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_ephemeral_telegram.py :27
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_eventlog.py :1
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_health.py :12
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_report.py :10
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_task_approval_telegram_e2e.py :10
import sqlite3 - db (weak) talos-kernel-Talos-1c2b543/tests/test_transcript.py :10
import sqlite3
declared dependencies 6
- requests@>=2.34.2
- ddgs@>=9.0
- faster-whisper@>=1.0
- cryptography@>=50.0.1
- pypdf@>=6.16.1
- github.com/migueldeicaza/SwiftTerm@1.19.0