-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathconfig.py
More file actions
54 lines (38 loc) · 1.36 KB
/
Copy pathconfig.py
File metadata and controls
54 lines (38 loc) · 1.36 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
"""
PyClaw Configuration
All the constants and settings in one place.
"""
import os
import re
from pathlib import Path
# === ASSISTANT SETTINGS ===
# The name of your assistant - used for triggers and response prefixes
ASSISTANT_NAME = os.getenv("ASSISTANT_NAME", "PyClaw")
# Pattern to detect when someone is talking to the assistant
# e.g., "@PyClaw what's the weather?" matches, "hello everyone" doesn't
TRIGGER_PATTERN = re.compile(rf"^@{ASSISTANT_NAME}\b", re.IGNORECASE)
# Command to clear conversation history
CLEAR_COMMAND = "/clear"
# Command to update personality/instructions
PERSONALITY_COMMAND = "/personality"
# === CLAUDE AGENT ===
# Model to use for the agent
CLAUDE_MODEL = "haiku"
# Tools the agent is allowed to use (no Bash for security)
ALLOWED_TOOLS = ["Read", "Write", "Edit", "Glob", "Grep", "WebSearch", "WebFetch"]
# === TIMING ===
# How often to check for new messages (in seconds)
POLL_INTERVAL = 2
# === PATHS ===
# Project root directory
PROJECT_ROOT = Path(__file__).parent
# Where we store persistent data
STORE_DIR = PROJECT_ROOT / "store"
DATA_DIR = PROJECT_ROOT / "data"
GROUPS_DIR = PROJECT_ROOT / "groups"
# Specific files
DATABASE_PATH = STORE_DIR / "messages.db"
AUTH_DIR = STORE_DIR / "auth"
SESSIONS_FILE = DATA_DIR / "sessions.json"
REGISTERED_GROUPS_FILE = DATA_DIR / "registered_groups.json"
STATE_FILE = DATA_DIR / "router_state.json"