Files
instagram-bot/test_config.yml
Marc Mintel 30724d3c03 chore: FSD stabilization, strict TDD enforcement, and unlearn mechanism
- implemented self-healing unlearn for Qdrant false positives
- centralized testing logic in conftest
- documented core rules, ai standards, and goap philosophy
- purged old dev scratchpads
2026-04-24 13:28:32 +02:00

125 lines
6.2 KiB
YAML

# ════════════════════════════════════════════════════════════════════════════
# 🤖 AUTONOMOUS AGENT CONFIGURATION (Full Options Reference)
# ════════════════════════════════════════════════════════════════════════════
# Das ist das "Brain" deines Bots. Keine abstrakten Klick-Raten oder
# Prozentwerte mehr. Sag dem Bot einfach, wer er ist und was er tun soll.
identity:
# Unter welchem Account operiert der Bot?
username: "marisaundmarc"
# Wer ist der Bot? (Wichtig für die KI-Kommentare und Profil-Analyse)
persona: "Travel blogger, landscape photographer, and outdoors enthusiast"
vibe: "friendly, authentic, helpful, and appreciative of good art"
mission:
# Wie soll sich der Bot generell verhalten?
# - aggressive_growth: Sucht permanent nach neuen Profilen (Explore/Reels)
# - community_builder: Fokussiert sich stark auf den eigenen Feed und Home-Tab
# - stealth_lurker: Liest viel, interagiert aber nur bei extrem hoher Relevanz
# - passive_learning: "Dry-Run" Modus. Bot navigiert und lernt, führt aber NIE Aktionen aus.
strategy: "aggressive_growth"
# Wie kritisch ist der Bot bei fremden Posts? (Hoch = nur Meisterwerke, Niedrig = fast alles)
selectivity_threshold: "high"
# Wen sucht der Bot? (Alias für target-audience)
target_audience: "travel, landscape, nature, mountain photography, wanderlust"
# persona_interests: "travel, landscape, nature" # Alternative zu target_audience
# Was hasst der Bot absolut? (Sofortiger Skip)
blacklist_topics: "onlyfans, nsfw, sale, discount, promo, 18+, giveaway, crypto"
# ── Core Actions / Jobs (Welche Bereiche sollen besucht werden) ──
# actions:
# feed: "5-10" # Anzahl der Posts im Home-Feed
# explore: "5-10" # Anzahl der Posts im Explore-Grid
# reels: "5-10" # Anzahl der Reels im nativen Reels-Tab
# stories: "3-5" # Anzahl der Story-Loops, die nativ geschaut werden
# search: "landscape" # Komma-getrennte Suchbegriffe für die Suchleiste
# repeat: 1 # Wie oft soll die komplette Schleife wiederholt werden
interactions:
# Grund-Wahrscheinlichkeit für Aktionen (unabhängig von der strict Resonance)
interact_percentage: 100 # Globale Chance, ob überhaupt interagiert wird
likes_percentage: 100
comment_percentage: 40 # Moderater Wert, da Kommentare "dry" sind
follow_percentage: 100 # IMMER folgen, wenn das Profil als relevant bewertet wurde
stories_percentage: 100 # IMMER Stories schauen, um menschlich zu wirken
# Detail-Limits pro Profil/Post
likes_count: "2-3" # 2-3 schnelle Likes auf dem Profil hinterlassen (sehr starkes Signal)
stories_count: "1-2" # 1-2 Stories anschauen (sehr menschliches Verhalten)
# Comment Dry Run: Wenn true, überlegt sich die AI geniale Kommentare, postet sie aber nicht in echt.
dry_run_comments: true
# Wahrscheinlichkeit (in Prozent), fremde Profile VOR dem Kommentieren tiefgründig zu analysieren
profile_learning_percentage: 100 # IMMER Profile analysieren -> Trigger für den Follow/Like Flow
# Wahrscheinlichkeit (in Prozent), das Bild visuell zu analysieren (Screenshot -> LLM), bevor interagiert wird
visual_vibe_check_percentage: 100
# ── AI Learning & Perception ──
ai_learning:
# Soll der Bot zum Start der Session sein eigenes Profil lesen und Persona/Vibe anpassen?
ai_learn_own_profile: true
# ai_learn_comments: false # Kommentare extrahieren und in die Qdrant DB aufnehmen
# ai_learn_niche_posts: false # Nischen-spezifische Texte und Posts in die DB lernen
# ai_learn_only: false # Nur umherwandern und Content absaugen/lernen (kein Posten)
# ai_quality_filter: false # Rigorose AI-Prüfung aller Posts vor Interaktion
# ai_vision_navigation: false # Nutze VLM, um UI Buttons auf dem Bildschirm zu finden (teuer!)
# ai_vision_context: false # Nutze VLM, um DMs und Posts semantisch in voller Tiefe zu begreifen
limits:
# Wie viele Stunden am Tag darf der Bot maximal arbeiten?
daily_budget_hours: 2.5
# working_hours: "09:00-21:00" # In welchem Fenster der Bot laufen darf
# time_delta_session: "60-120" # Minuten Pause zwischen Sessions
# Absolute Sicherheitsnetze pro Tag/Lauf
max_comments_per_day: 40
# total_likes_limit: 300
# total_follows_limit: 50
# total_unfollows_limit: 50
# total_pm_limit: 10
# total_watches_limit: 50
# total_successful_interactions_limit: 100
# total_interactions_limit: 1000
# total_scraped_limit: 200
# total_crashes_limit: 5
# total_sessions: -1
# ── CRM & Advanced Features ──
# features:
# scrape_profiles: false # Extrahiere Profil-Bio und speichere im CRM
# smart_unfollow: false # AI-Agentic Unfollow von Leuten, die nicht zurückfolgen
ignore_close_friends: true # Ignoriere alles (Posts/Stories) von "Enge Freunde"
# ── Infrastructure & System (Nur für Entwickler) ──
device: 192.168.1.206:34201
app-id: com.instagram.android
debug: true
speed-multiplier: 1.0 # >1.0 macht den Bot schneller (Achtung: unnatürlich)
# handedness: "right" # "right" oder "left", beeinflusst die Krümmung des Swipes
# restart_atx_agent: false # UIA2 Server auf dem Handy neu starten bei Problemen
# allow_untested_ig_version: false
blank_start: true # ACHTUNG: Löscht die komplette Qdrant Navigations-Memory beim Start!
# ── AI Model Endpoints (Explicit configuration, no defaults) ──
ai-model: qwen3.5:latest
ai-model-url: http://localhost:11434/api/generate
ai-telepathic-model: llama3.2-vision
ai-telepathic-url: http://localhost:11434/api/generate
ai-condenser-model: qwen3.5:latest
ai-condenser-url: http://localhost:11434/api/generate
ai-embedding-model: nomic-embed-text
ai-embedding-url: http://localhost:11434/api/embeddings
ai-fallback-model: qwen3.5:latest
ai-fallback-url: http://localhost:11434/api/generate