-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathjoe-links.yaml.example
More file actions
58 lines (48 loc) · 2.03 KB
/
Copy pathjoe-links.yaml.example
File metadata and controls
58 lines (48 loc) · 2.03 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
# Copy this to joe-links.yaml and fill in your values.
# joe-links.yaml is gitignored.
http:
addr: ":80"
db:
driver: sqlite3
dsn: ./joe-links.db
# --- Local dev with Dex (docker compose -f docker-compose.dev.yml up -d) ---
oidc:
issuer: http://localhost:5556/dex
client_id: joe-links-dev
client_secret: dev-secret-not-for-production
redirect_url: http://localhost/auth/callback
# Comma-separated OIDC group names that also grant the admin role.
# admin_groups: admins,sre
# OIDC claim to read group membership from (default: groups).
# groups_claim: groups
# Your email must match a staticPasswords entry in dev/dex.yaml to get admin role.
admin_email: admin@example.com
# Disable Secure flag on cookies so sessions work over plain HTTP locally.
insecure_cookies: true
# Session absolute expiry. NOTE: the key is nested (session.lifetime) —
# a flat session_lifetime does not bind.
session:
lifetime: 720h
# Short-link keyword prefix shown in the UI, e.g. "go".
# Defaults to the first DNS label of the request host.
# short_keyword: go
# Click retention horizon in days (JOE_CLICK_RETENTION). Unset/0 = retention
# off (the default): click history is kept forever. Minimum 90 when set.
# WARNING: pruned click rows are unrecoverable. Enable on at most one
# instance in multi-replica deployments.
# click_retention: 365
# --- LLM slug suggestions (optional — omit provider to disable) ---
# llm:
# provider: anthropic # "anthropic", "openai", or "openai-compatible"
# api_key: YOUR_API_KEY
# model: claude-haiku-4-5-20251001 # optional (defaults: claude-haiku-4-5-20251001 / gpt-4o-mini)
# base_url: https://api.openai.com # openai-compatible providers only
# prompt: "" # custom prompt template text (overrides built-in default)
# --- Production (Google OIDC) ---
# oidc:
# issuer: https://accounts.google.com
# client_id: YOUR_GOOGLE_CLIENT_ID
# client_secret: YOUR_GOOGLE_CLIENT_SECRET
# redirect_url: https://go.example.com/auth/callback
# admin_email: you@example.com
# insecure_cookies: false