Project context and conventions for AI coding assistants working on the telegram-bot library.
- Build:
./gradlew prepareReleasebefore committing (format, api validation, kdocs, api violations check) - Kotlin: Follow Kotlin coding conventions
- Target branch: dev for PRs
- Add tests for new code
- Run
./gradlew prepareReleaseto validate - Run
./gradlew apiDumpto generate api dump
telegram-bot/— main libraryktnip/— KSP processor for annotationsapi-sentinel/— API validation against Telegram spec
- Use
@TgAPIon Action classes and top-level API functions for validation - Required params must be non-null; optional params must be nullable
- Method names must match
@TgAPI.Nameannotation - For Activity, WizardActivity, functional DSL vs annotation approach, and ProcessingPipeline, see .cursor/rules/telegram-bot-handling.mdc
- Rules:
.cursor/rules/— API, handling, types, tests, KSP processor - Skills:
.cursor/skills/— organized by audience:library-dev/— for contributors extending the library (API actions, update fields, KSP collectors)bot-user/— for developers building bots (keyboards, handlers, wizards, callback queries)
- See .cursor/skills/README.md for the full skill index