A
android-local-persistence-datastore
About android-local-persistence-datastore
An Android development skill for persisting lightweight app and user preferences with DataStore. It guides typed models, safe defaults, migration planning, and validation of offline and process-death behavior.
Key features
- 01Persist typed preference models
- 02Plan migration-safe defaults
- 03Replace SharedPreferences use cases
- 04Validate offline and retry behavior
- 05Keep storage details out of presentation code
Use cases
- 01Store reminder and filter preferences
- 02Migrate existing preference keys
- 03Choose DataStore for lightweight settings
- 04Check persistence behavior after process death
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ krutikjain/ android-agent-skills --skill android-local-persistence-datastoreAfter installing, type/android-local-persistence-datastorein Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
agents/openai.yamlreferences/official-links.mdpatterns.mdscenarios.mdscripts/run_examples.shDetails
From the project READMEAndroid Local Persistence DataStore
When To Use
- Use this skill when the request is about: android datastore setup, replace sharedpreferences android, typed local preferences android.
- Primary outcome: Persist lightweight user and app preferences with DataStore, schema-safe models, and migration-aware defaults.
- Handoff skills when the scope expands:
android-room-databaseandroid-modernization-upgrade
Workflow
- Confirm the data source, persistence boundary, sync model, and device capability involved.
- Model contracts explicitly before wiring network, storage, media, or background APIs.
- Apply the recommended AndroidX or platform pattern with migration-safe defaults.
- Validate offline, retry, and process death behavior against the sample apps and scenarios.
- Escalate security, performance, or release risk to the linked supporting skills when needed.
Guardrails
- Prefer typed models and explicit serializers over ad-hoc maps or bundles.
- Keep background work idempotent and cancellation-aware.
- Do not leak storage, media, or networking details into presentation code.
- Treat user data durability, privacy, and migration paths as part of the implementation.
Anti-Patterns
- Blocking the main thread with disk or network calls.
- Treating retryable sync failures as terminal user-facing errors.
- Mixing cache models and wire models without a mapping layer.
- Requesting broad storage or notification capabilities when a narrower API exists.
Examples
Happy path
- Scenario: Store reminder and filter preferences for OrbitTasks safely.
- Command:
cd examples/orbittasks-compose && ./gradlew :app:testDebugUnitTest
Edge case
- Scenario: Migrate old preference keys without breaking the XML fixture.
- Command:
cd examples/orbittasks-xml && ./gradlew :app:testDebugUnitTest
Failure recovery
- Scenario: Avoid mixing lightweight preference storage requests with Room persistence work.
- Command:
python3 scripts/eval_triggers.py --skill android-local-persistence-datastore
Done Checklist
- The implementation path is explicit, minimal, and tied to the right Android surface.
- Relevant example commands and benchmark prompts have been exercised or updated.
- Handoffs to adjacent skills are documented when the request crosses boundaries.
- Official references cover the chosen pattern and the main migration or troubleshooting path.
Official References
Comments
Markdown supported