2.0 KiB
2.0 KiB
AGENTS.md
Project Mission
Build Steam Backlog Helper, a small cross-platform Tauri desktop app that helps Steam users with large backlogs pick a game to play now.
The MVP is a picker, not a full library manager.
Naming
- Official app name: Steam Backlog Helper.
- Repository name:
steam-backlog-helper. - Package ID:
com.boris.backloghelper. - Internal slug:
backlog-helper. - Avoid putting
steamin package IDs, bundle IDs, database names, or internal crate/package names unless an external integration specifically requires it.
Confirmed Stack
- Tauri
- Rust
- Svelte/SvelteKit
- TypeScript
- SQLite
Product Constraints
- Support Windows 10+, macOS 26+, and Linux AppImage.
- Keep all user data local.
- Use user-provided API keys.
- Include free-to-play games.
- Exclude demos, tools, soundtracks, and DLC from recommendations by default.
- Do not build private-profile fallback import for the MVP.
- Do not build import/export, recommendation history, accepted/rejected tracking, mood tagging, installed-game detection, or manual metadata editing for the MVP.
Development Rules
- Prefer small, direct changes over broad refactors.
- Keep recommendation logic testable outside UI components.
- Add tests for featureful scoring, parsing, persistence, and integration code.
- Do not chase coverage on empty scaffolding.
- Use strict TypeScript.
- Keep Rust commands narrow and typed.
- Never commit real Steam, HowLongToBeat, or other provider API keys.
- Do not log secrets.
- Make setup and recommendation flows keyboard accessible.
Documentation Rules
- Update
docs/implementation-plan.mdwhen milestone scope changes. - Update
docs/architecture-decisions.mdwhen a meaningful technical decision changes. - Update
SECURITY.mdwhen credential handling changes.
Release Assumptions
- Gitea is the primary forge.
- Gitea runners should handle x86 builds where practical.
- arm64 builds may be produced locally.
- GitHub publication may happen later, so avoid Gitea-only assumptions in application code.