forked from JSKitty/Vector-LLM
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
78 lines (70 loc) · 3.92 KB
/
Copy path.env.example
File metadata and controls
78 lines (70 loc) · 3.92 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
# Vector LLM Bot — environment configuration.
# Copy to `.env` and edit. Every value here is the default, so an empty `.env` works too.
# ============================================================================
# LLM endpoint (any OpenAI-compatible /chat/completions server)
# ============================================================================
# OpenAI, Groq, OpenRouter, llama.cpp, Ollama, etc.
LLM_BASE_URL=https://api.openai.com/v1
# API key (optional for local servers like llama.cpp).
LLM_API_KEY=sk-...
LLM_MODEL=gpt-4o-mini
# 0.0 = deterministic, 1.0 = creative.
LLM_TEMPERATURE=0.2
# ============================================================================
# Context window + storage
# ============================================================================
# Max user/assistant turns kept per channel for context.
HISTORY_LIMIT=16
# Holds the bot's identity (identity.nsec), its database, and per-channel memory (chats/).
DATA_DIR=data
# ============================================================================
# Identity
# ============================================================================
# Bot secret key: nsec, hex, or a BIP-39 mnemonic. If unset, a stable identity is created
# on first run and reused every run after (DATA_DIR/identity.nsec — back it up).
# VECTOR_NSEC=nsec1...
# Broadcast the bot's profile (kind:0) on startup so clients show its name/avatar + bot badge.
PUBLISH_PROFILE=true
BOT_NAME=Viktor
BOT_ABOUT=I'm Viktor, an AI assistant on Vector.\n\nBest employee at https://docs.vectorapp.io
BOT_AVATAR=https://jskitty.cat/vector/img/viktor.png
BOT_BANNER=https://jskitty.cat/vector/img/app-logo.jpg
# ============================================================================
# Behaviour
# ============================================================================
# Persona prompt, used for both DMs and group channels (a group roster is appended automatically).
SYSTEM_PROMPT=You are a helpful assistant. Keep responses concise and factual.
# Show a "typing…" indicator while generating.
TYPING_INDICATOR=true
# ============================================================================
# Modes
# ============================================================================
# Respond to direct messages.
DM_MODE=true
# Participate in Community group channels (only when @-mentioned or replied to).
GROUP_MODE=true
# ============================================================================
# Community invites (how the bot decides which communities to join)
# ============================================================================
# public — auto-accept invites from anyone (open; needed for any group to add the bot)
# whitelist — auto-accept only invites from INVITE_WHITELIST npubs
# manual — never auto-accept (invites are parked)
INVITE_POLICY=public
# Comma-separated npubs trusted to invite the bot (used when INVITE_POLICY=whitelist).
INVITE_WHITELIST=
# ============================================================================
# Public firehose mode (monitor the open Nostr kind:1 stream)
# ============================================================================
# This is separate from Vector DMs/groups: the bot watches public notes, judges relevance,
# and replies publicly. Off by default.
PUBLIC_MODE=false
# Persona + relevance prompt for public posts.
PUBLIC_SYSTEM_PROMPT=You are a friendly and knowledgeable participant in public discussions. Keep responses concise, relevant, and engaging. Be helpful but not intrusive. Match the tone of the conversation.
# Generate replies but don't post them (good for testing public mode).
PUBLIC_DRY_RUN=true
# Minimum seconds between replying to non-addressed posts (0 = no limit). Direct mentions bypass it.
PUBLIC_RATE_LIMIT_SECS=30
# Comma-separated npubs that bypass the rate limit + auto-blacklist.
PUBLIC_WHITELIST=
# Optional comma-separated keyword filter; if set, only posts containing one are considered.
PUBLIC_KEYWORDS=