chore(claude): add .claude/ tree and Obsidian vault template
Summary
Part of the global Ildam Claude Code setup rebuild (2026-04-15). Adds a grounded `.claude/` tree for yalla-sdk based on an audit of the live repo state.
Key facts verified against the repo
- Unified version: `yalla.sdk.version` in `gradle.properties` (e.g. `0.0.8-alpha03`). No per-module versions
- BOM: `bom/` is a pure `java-platform` with no `src/` directory; `dependencies { constraints { ... } }` pins every module to the unified version
- Convention plugins: `yalla.sdk.kmp` and `yalla.sdk.kmp.compose`, applied as `id("yalla.sdk.kmp")`, not `libs.plugins.*`
- Publish: CI only, via `.github/workflows/publish.yml` on push to main. `./gradlew publish` is explicitly forbidden locally per `docs/04-PUBLISHING.md`
- Single publish URL: `maven.pkg.github.com/RoyalTaxi/yalla-sdk` (not one per module). Group ID: `uz.yalla.sdk`
- No `binary-compatibility-validator` plugin: `apiCheck` and `apiDump` do not exist; the `audit-api` skill provides a manual-diff fallback
What's added
``` .claude/ ├── CLAUDE.md # Project overview, real module list, publish flow ├── settings.json # ktlint format-on-save hook ├── rules/ │ ├── library-api.md # Public API stability, KDoc, @RequiresOptIn │ └── publishing.md # Version source, BOM, convention plugins, CI ├── skills/ │ ├── bump-version/SKILL.md # Bumps yalla.sdk.version, CI publishes │ ├── audit-api/SKILL.md # Manual public-API diff fallback │ ├── publish-module/SKILL.md # Docs + emergency local-publish override │ └── add-module/SKILL.md # Scaffold new module per COMPONENT_STANDARD.md └── agents/ └── kmp-library-author/ # Opus subagent for library API review
docs/obsidian/ # Per-project sub-vault template ├── README, 00-overview ├── 01-architecture/, 02-patterns/, 03-decisions/, 04-features/, 05-operations/, 06-sessions/ └── .gitignore # excludes per-user .obsidian/ config ```
Test Plan
-
All rules / skills ground against real repo state (verified via parallel audit) -
Symlink from `~/Ildam-Brain/projects/yalla-sdk` resolves -
Start a new Claude Code session and ask `/bump-version 0.0.8-alpha04` — should update `gradle.properties`, commit, and prompt for push -
Ask `/audit-api` — should produce a manual diff report (not call `apiCheck`)
Notes
Paired with sibling PRs in YallaClient (#303) and yalla-sip-phone.