Projektüberblick — Shell Sentinel
Mission
Ein terminalnativer KI-Copilot, der persistente SSH/SFTP-Sitzungen hält, natürliche Sprache versteht und menschenfreundliche Operationen auf kritischer Infrastruktur ermöglicht.
Technischer Stack
- Python 3.12, Textual 8.2.8 für die TUI, Strands Agents SDK 1.61.1 und Strands Agents Tools 0.8.9 für konversationelles Reasoning, MCP-Transporte auf Basis von
mcp2.x. - Reproduzierbare Installation mit
pyproject.tomlund pip-tools-Lockfiles (make lock,make install). - Provider: Bedrock, OpenAI, LM Studio, Cerebras, Mistral AI, Google Gemini und Ollama. OpenAI unterstützt Chat Completions und Responses; Token- und Reasoning-Parameter werden je Endpoint normalisiert, Responses erlaubt Function Tools mit aktivem Reasoning, Mistral AI nutzt sein offizielles SDK und Google Gemini läuft über Strands'
GeminiModelmit demgoogle-genai-SDK. - Prompt-Caching pro Provider (Block
cache) und ein Turn-Limit pro Anweisung (agent.max_turns, Standard 25) halten Kosten und Endlosschleifen unter Kontrolle. - Eigene Tools:
remote_ssh_command,remote_sftp_transfer,local_datetime. - Firecrawl-MCP-Tools für Recherche, Scraping und strukturierte Extraktion.
Kernverantwortlichkeiten
- Konfiguration zentral in
conf/; keine Hardcodes im Quellcode. - Übersetzungen, Handbücher und statische Website bei Verhaltensänderungen aktualisieren.
- Eigene Provider und Plugin-Regeln dokumentieren; jedes Plugin mit kurzer Operator-Doku.
- Sicherheitsrichtlinien einhalten (keine Klartext-Secrets, nur Umgebungsvariablen).
Workflow
- Virtualenv mit
python3.12 -m venv .venverstellen und aktivieren. - Abhängigkeiten mit
make installinstallieren. - Vor PRs:
make format,make lint,make test(Unit-Tests plus die Offline-End-to-End-Schicht intests/e2e, die die echte TUI gegen einen In-Process-SSH-Server fährt). - Bei Änderungen an TUI, Agent-Runtime oder einem Provider optional
make test-e2e-liveausführen (RUN_E2E=1plusOPENAI_API_KEY,MISTRAL_API_KEYoderGEMINI_API_KEY; die MCP-Szenarien brauchen zusätzlichFIRECRAWL_API_KEYundnpx); es verbraucht Tokens und läuft nie in CI. - TUI mit
make runund Website mitmake website-servevalidieren.
Vollständige Richtlinien im Beitragsleitfaden und in der Governance-Dokumentation. Die statische Website ist Teil des Produkt-Dokumentationsvertrags.