Configuration
Config lives at ~/.airupt/config.yml. You can also pass a custom path:
bash
airupt start --config /path/to/config.ymlFull Example
yaml
assistant:
name: Airupt
language: en
llm:
provider: openai # openai | anthropic | custom
model: gpt-4o
api_key: sk-...
base_url: ~ # only needed for custom/OpenAI-compatible endpoints
temperature: 0.7
max_tokens: 4096
channels:
telegram:
enabled: true
bot_token: 123456:ABC-DEF...
allowed_users:
- 987654321 # your Telegram user ID; omit to allow all
whatsapp:
enabled: false
phone_number_id: ~
access_token: ~
discord:
enabled: false
bot_token: ~
guild_id: ~
channel_id: ~
memory:
enabled: true
auto_extract: true # automatically extract facts from conversation
max_entries: 1000
skills:
web_browse: true
email: false
calendar: false
file_manager: true
custom_skills_dir: ~/my-skills # optional path to custom skill folder
costs:
daily_limit_usd: 2.00
monthly_limit_usd: 30.00
alert_threshold: 0.80 # alert at 80% of limit
scheduled_tasks:
enabled: true
timezone: America/New_York
logging:
level: info # debug | info | warn | error
file: ~/.airupt/airupt.logKey Fields
llm
| Field | Default | Description |
|---|---|---|
provider | openai | LLM backend |
model | gpt-4o | Model name |
temperature | 0.7 | Response randomness (0–1) |
base_url | ~ | Override API base URL |
channels
Each channel is independently toggled with enabled: true/false. See Channels for per-channel setup details.
costs
Set daily_limit_usd or monthly_limit_usd to ~ to disable that limit. Airupt will pause and notify you when a limit is reached.
skills
Set any skill to false to disable it. Custom skills in custom_skills_dir are loaded automatically on startup.
Environment Variables
Any config value can be overridden with an environment variable using the pattern AIRUPT_<SECTION>_<KEY>:
bash
AIRUPT_LLM_API_KEY=sk-... airupt start
AIRUPT_COSTS_DAILY_LIMIT_USD=5.00 airupt startThis is useful for Docker and CI deployments where you don't want secrets in files.