-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathexample.env
More file actions
73 lines (63 loc) · 3.27 KB
/
Copy pathexample.env
File metadata and controls
73 lines (63 loc) · 3.27 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
# ThreadKeeper environment template
#
# Replace every <placeholder> before use. ThreadKeeper does not automatically
# load this file; source it in your shell or configure these variables in your
# MCP client. Do not add passwords, API keys, tokens, or other secrets.
# Core
THREADKEEPER_DB="<absolute-path-to-threadkeeper.db>"
THREADKEEPER_TIME_ZONE="<iana-time-zone>"
THREADKEEPER_EXPORT_DIR="<absolute-path-to-export-directory>"
# Runtime and logging
THREADKEEPER_BACKUP_RETENTION="<positive-integer>"
THREADKEEPER_LOG_LEVEL="<debug-info-warn-or-error>"
THREADKEEPER_LOG_FILE="<absolute-path-to-log-file>"
THREADKEEPER_MAX_CONCURRENCY="<integer-from-1-to-64>"
# Comma-separated. Optional V2A profiles: reading,habits,checklists,shopping,
# locations,intelligence. Keep core-only for the smallest/default tool surface.
THREADKEEPER_PROFILES="core"
# Optional Ollama-compatible embeddings; configure all three or remove them.
THREADKEEPER_EMBED_ENDPOINT="<http-or-https-embedding-endpoint>"
THREADKEEPER_EMBED_MODEL="<embedding-model-id>"
THREADKEEPER_EMBED_DIMENSIONS="<positive-vector-dimension>"
# Optional manual candidate extraction. No request is made unless the
# extract-candidates command is run.
THREADKEEPER_CANDIDATE_ENDPOINT="<http-or-https-ollama-base-url>"
THREADKEEPER_CANDIDATE_MODEL="<candidate-extraction-model-id>"
THREADKEEPER_CANDIDATE_BATCH_SIZE="<integer-from-1-to-100>"
# Candidate scheduling remains off unless this is explicitly true.
THREADKEEPER_CANDIDATE_AUTO="false"
THREADKEEPER_CANDIDATE_INTERVAL_MINUTES="<integer-from-5-to-10080>"
# Local inspector and reminder daemon.
THREADKEEPER_DASHBOARD_PORT="0"
THREADKEEPER_DAEMON_POLL_SECONDS="30"
THREADKEEPER_DAEMON_GRACE_MINUTES="1440"
# Optional authenticated loopback MCP HTTP. The token itself belongs only in
# the user-only file created by `threadkeeper http init`, never in this file.
THREADKEEPER_HTTP_ADDRESS="127.0.0.1"
THREADKEEPER_HTTP_PORT="8787"
THREADKEEPER_HTTP_TOKEN_FILE="<absolute-path-to-user-only-http-token-file>"
THREADKEEPER_HTTP_MAX_CONNECTIONS="32"
THREADKEEPER_HTTP_RATE_PER_MINUTE="120"
THREADKEEPER_HTTP_BODY_BYTES="1048576"
THREADKEEPER_HTTP_SESSION_MINUTES="30"
# Optional V2C remote service. This is a protected resource, not an OAuth
# authorization server. TLS key material stays in a secret-mounted file.
THREADKEEPER_REMOTE_DATA_DIR="<absolute-managed-encrypted-data-directory>"
THREADKEEPER_AUTH_ISSUER="https://<trusted-issuer>"
THREADKEEPER_AUTH_AUDIENCE="<threadkeeper-api-audience>"
THREADKEEPER_AUTH_RESOURCE="https://<public-host>/mcp"
THREADKEEPER_AUTH_JWKS_URL="https://<trusted-issuer>/<jwks-path>"
THREADKEEPER_REMOTE_TLS_CERT="<absolute-tls-certificate-path>"
THREADKEEPER_REMOTE_TLS_KEY="<absolute-user-only-tls-private-key-path>"
# Content-retention windows in days. Execution still requires preview + confirm.
THREADKEEPER_PENDING_CANDIDATE_DAYS="90"
THREADKEEPER_REJECTED_CANDIDATE_DAYS="30"
THREADKEEPER_EXTRACTION_INPUT_DAYS="30"
THREADKEEPER_ACTIVITY_EVENT_DAYS="180"
THREADKEEPER_RETRIEVAL_DETAIL_DAYS="30"
# Retrieval weights must be non-negative and total 1.
THREADKEEPER_SCORE_SEMANTIC="<semantic-weight>"
THREADKEEPER_SCORE_KEYWORD="<keyword-weight>"
THREADKEEPER_SCORE_RECENCY="<recency-weight>"
THREADKEEPER_SCORE_IMPORTANCE="<importance-weight>"
THREADKEEPER_SCORE_CONFIDENCE="<confidence-weight>"