Skip to main content

Configuration Examples

Examples below are aligned with the current config schema. For the exhaustive reference and per-field notes, see Configuration. The normal baseline for local and hosting profiles is loopback-first. Use these examples as starting points, then add Tailscale Serve, a tailnet bind, or a trusted proxy when you need remote access.

Quick start

Absolute minimum

Save to ~/.fased/fased.json and you can DM the bot from that number.

Expanded example (major options)

JSON5 lets you use comments and trailing commas. Regular JSON works too.

Common patterns

Multi-platform setup

Secure DM mode (shared inbox / multi-user DMs)

If more than one person can DM your bot, enable secure DM mode so different senders do not share one context by default. This applies when allowFrom contains multiple people, pairing approvals cover multiple people, or dmPolicy: "open" is enabled:
For Discord, Slack, Google Chat, MS Teams, Mattermost, and IRC, sender authorization is ID-first by default. Enable direct mutable name/email/nick matching with each channel’s dangerouslyAllowNameMatching: true only after reviewing the risk.

OAuth with API key failover

Anthropic subscription + API key, MiniMax fallback

Work bot (restricted access)

Local models only

Tips

  • If you set dmPolicy: "open", the matching allowFrom list must include "*".
  • Provider IDs differ (phone numbers, user IDs, channel IDs). Use the provider docs to confirm the format.
  • Optional sections to add later: web, browser, ui, discovery, canvasHost, talk, signal, imessage.
  • Use Agent > Models for provider setup. See Troubleshooting for deeper diagnostics.