22 Commits

Author SHA1 Message Date
Daniel Wagner
d0ccc96507 docs: simplify .env.example to show only required settings
Only include the 4 required environment variables:
- STEWARD__TELEGRAM__BOT_TOKEN
- STEWARD__OPENAI__API_KEY
- STEWARD__TELEGRAM__ALLOWED_USER_IDS
- STEWARD__TELEGRAM__GROUP_IDS

All other settings have sensible defaults in config_schema.yaml and can be
overridden if needed. This keeps the example file clean and focused.
2026-07-26 12:39:11 +10:00
Daniel Wagner
d5eac108f8 feat: implement OmegaConf-based configuration management with uv
Configuration changes:
- Replace pydantic-settings with OmegaConf for flexible config management
- Support YAML config files via CONFIG_FILE environment variable
- Support environment variables with STEWARD__SECTION__KEY format
- Add config_schema.yaml as default configuration schema
- Create pydantic models for each configuration section for type safety
- Maintain backward compatibility via properties on Settings class
- Add CONFIGURATION.md with comprehensive setup and usage guide
- Update pyproject.toml to include config_schema.yaml in package data

Build/deployment changes:
- Replace pip with uv in Dockerfile for faster dependency installation
- Create docker-compose.dev.yml for local development (build .)
- Keep docker-compose.yml for production (uses ghcr.io/djw4/steward:latest)
- Update .env.example with new STEWARD__* variable format

This setup is designed for Kubernetes deployment:
- Non-sensitive config goes in ConfigMap (config.yaml)
- Secrets go in Secret resources (environment variables)
- Single unified configuration system for all environments
2026-07-26 12:34:23 +10:00
Daniel Wagner
669b57a317 feat: add group/channel support for Telegram bot
- Add TELEGRAM_GROUP_IDS configuration setting to enable optional group/channel filtering
- Add _is_group_enabled() authorization check to all command handlers
- Add group/channel authorization check to message_handler
- All handlers now verify both user authorization and group authorization
- If TELEGRAM_GROUP_IDS is not configured, bot accepts messages from any group
- If TELEGRAM_GROUP_IDS is configured, bot only processes messages from those groups

This enables the bot to be used in group chats and channels with Topics/Threads support.
2026-07-26 12:26:57 +10:00
Daniel Wagner
a3ca696546 Merge pull request #6 from djw4/release-please--branches--main 2026-07-26 00:42:42 +10:00
github-actions[bot]
588da5725a chore(main): release 0.1.1 2026-07-25 14:40:35 +00:00
Daniel Wagner
c76969fe8b Merge pull request #5 from djw4/copilot/fix-runtime-error-starting-app 2026-07-26 00:40:20 +10:00
copilot-swe-agent[bot]
47bae80f47 fix: use PTB JobQueue instead of AsyncIOScheduler to fix startup RuntimeError 2026-07-25 14:31:51 +00:00
Daniel Wagner
744396919e Merge pull request #2 from djw4/release-please--branches--main 2026-07-25 23:22:07 +10:00
Daniel Wagner
3b2f8e6199 Merge pull request #3 from djw4/renovate/configure 2026-07-25 23:21:30 +10:00
copilot-swe-agent[bot]
ebcce9c5dc chore: update renovate config with automerge PR and batching for non-major updates 2026-07-25 13:17:34 +00:00
Renovate Bot
6dbfd9a332 Add renovate.json 2026-07-25 13:11:32 +00:00
github-actions[bot]
4466bbf3bb chore(main): release 0.1.0 2026-07-25 13:11:05 +00:00
Daniel Wagner
50d482d697 Merge pull request #1 from djw4/copilot/steward-concept-research 2026-07-25 23:05:05 +10:00
copilot-swe-agent[bot]
51188fe3bd refactor: address code review feedback on MCP tool calling 2026-07-25 12:52:42 +00:00
copilot-swe-agent[bot]
76c6086db3 feat: MCP/OpenAPI tool calling support 2026-07-25 12:50:39 +00:00
copilot-swe-agent[bot]
a5037aa808 fix: align tag slice limit with prompt upper bound (5-8 tags) 2026-07-25 12:30:49 +00:00
copilot-swe-agent[bot]
867542dd49 feat: knowledge-base memory, Dockerfile, docker-compose, CI/release workflows, PR template 2026-07-25 12:29:21 +00:00
copilot-swe-agent[bot]
c74c8b0d8b feat: thread-aware memory with /flush and /recall commands 2026-07-25 12:09:38 +00:00
copilot-swe-agent[bot]
8759bea963 fix: address code review and CodeQL feedback in tests 2026-07-25 11:49:23 +00:00
copilot-swe-agent[bot]
6862c7d0b8 feat: add NORTH_STAR.md and MVP core loop (Telegram bot + LLM + proposal generator) 2026-07-25 11:47:52 +00:00
copilot-swe-agent[bot]
c071fe6bf7 Initial plan 2026-07-25 11:40:23 +00:00
Daniel Wagner
3049a8ca23 Initial commit 2026-07-25 21:40:20 +10:00