This repository was archived by the owner on Jun 10, 2026. It is now read-only.
Repository navigation
Expand file tree
/
Copy pathconfig.yml
More file actions
100 lines (88 loc) · 4.09 KB
/
Copy pathconfig.yml
File metadata and controls
100 lines (88 loc) · 4.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# ============================================
# MarinAI Configuration
# ============================================
# LLM Model Settings
# Controls how the language model generates responses
model_settings:
temperature: 1 # Creativity/randomness (0.0 = deterministic, 2.0 = very random)
top_p: 1 # Nucleus sampling threshold (1.0 = consider all tokens)
# Response Delays
# Timing controls for message processing
delays:
message_processing: 1.5 # Seconds to wait before processing a message (anti-spam)
# Memory System Settings
# Controls how Marin remembers facts about users
memory:
fact_aging_days: 7 # Days before old facts are considered for cleanup
fact_summarization_threshold: 20 # Number of facts before triggering summarization
maintenance_interval_hours: 24 # Hours between memory maintenance runs
# Typing Simulation Settings
# Makes Marin appear more human-like when typing
typing:
base_chars_per_second: 25.0 # Base typing speed (humans average ~40 WPM ≈ 3.3 CPS)
min_duration_ms: 800 # Minimum typing indicator duration in milliseconds
max_duration_ms: 4000 # Maximum typing indicator duration in milliseconds
variation: 0.3 # Random variation factor (0.3 = ±30% randomness)
# Loneliness / Boredom DM Settings
# Controls when Marin reaches out to inactive users
loneliness:
inactivity_threshold_hours: 24 # Hours of user inactivity before eligible for DM
loneliness_threshold_hours: 4 # Hours of global bot inactivity before checking users
max_dm_attempts: 4 # Maximum DMs to send before giving up on a user
check_interval_minutes: 60 # Minutes between loneliness checks
# Affection System Settings
# Controls the relationship/XP progression system
affection:
max_affection: 25000 # Maximum affection points (XP cap) - ~1 week casual progression
jealousy_threshold_days: 3 # Days of seeing user active elsewhere to trigger jealousy
jealousy_penalty: -100 # Daily affection loss when feeling jealous
random_event_chance: 0.05 # Chance of random affection events (0.05 = 5%)
late_night_start_hour: 23 # Hour when late night bonus starts (23 = 11 PM)
late_night_end_hour: 4 # Hour when late night bonus ends (4 = 4 AM)
max_streak_days: 30 # Days to reach maximum streak multiplier (2x)
streak_break_penalty_per_day: 50 # XP lost per day of previous streak when broken
max_streak_break_penalty: 2500 # Maximum XP penalty for breaking a streak
# Message Handling Settings
# Controls how messages are processed and filtered
messages:
max_message_length: 280 # Maximum message length to process (longer = ignored)
reply_score_threshold: 0.6 # Confidence score needed to auto-reply (0.0-1.0)
cleanup_interval_hours: 1 # Hours between old reminder cleanup runs
# Storage / Database Settings
# Controls memory caching and similarity detection
storage:
recent_messages_limit: 60 # Maximum recent messages to fetch per user for context
recent_messages_keep: 30 # Number of messages to keep after cleanup runs
duplicate_threshold: 0.8 # Similarity score to consider a memory as duplicate (0.0-1.0)
similarity_threshold: 0.6 # Minimum similarity for memory search results (0.0-1.0)
cleanup_probability: 0.1 # Probability of running cleanup per message (0.1 = 10%)
# Tools Configuration
# Controls how Marin uses external tools
tools:
enabled:
- web_search
- web_scrape
- youtube_transcript
- pdf_extract
- image_compress
- audio_transcribe
web_search:
backend: duckduckgo
max_results: 10
timeout_seconds: 30
web_scrape:
max_body_bytes: 52428800 # 50MB
timeout_seconds: 30
user_agent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
media:
image:
compression_threshold: 1048576 # 1MB
quality: 75
max_width: 1920
max_height: 1080
audio:
docker_image: "ghcr.io/ggerganov/whisper.cpp:main"
language: en
memory_limit_mb: 2048
pdf:
max_pages: 100