{"slug": "slothdesk-local-first-ai-downloads-organizer-less-sorting-more-living", "title": "SlothDesk — Local-First AI Downloads Organizer: Less sorting. More living.", "summary": "A developer built SlothDesk, a local-first desktop dashboard that uses Hugging Face smolagents and a locally hosted Qwen2.5-7B-Instruct model via LM Studio to propose an organization plan for a cluttered Downloads folder. The tool separates AI reasoning from filesystem mutation, requiring explicit user confirmation before any move and writing an immutable JSON audit manifest that supports one-click undo. The developer reports running the 7B model at Q4_K_M quantization on an 8 GB VRAM laptop GPU and says the app was built with pair-programming assistance from Google Antigravity.", "body_md": "*This is a submission for the [DEV Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady](https://dev.to/challenges).*\n\n**SlothDesk** is a local-first, desktop-style dashboard that rewards laziness by safely organizing your cluttered Downloads folder with minimal user effort.\n\n**Tagline:** Less sorting. More living.\n\nDownloads folders are notorious black holes where productivity goes to die. Files of every kind—invoices, design assets, archives, code scripts, and firmware—pile up in an unmanageable mess.\n\nExisting tools typically fall into two extremes:\n\nSlothDesk charts a different path: **Slow and Steady**. It runs completely offline using **Hugging Face `smolagents`** and **LM Studio** (` Qwen2.5-7B-Instruct`), treating the language model as an untrusted reasoning engine rather than a reckless file manipulator.\n\n```\nDownloads/\n├── Documents/\n├── Images/\n├── Videos/\n├── Audio/\n├── Archives/\n├── Code/\n└── Other/\n```\n\nMany AI file organizers give the model direct write tools or shell access (`CodeAgent`, `shutil.rmtree`, `os.rename`). If the model hallucinates or encounters ambiguous context, files can be permanently destroyed.\n\nIn SlothDesk, filesystem mutation is architecturally separated from AI reasoning:\n\n`get_file_metadata(filename)`` get_allowed_categories()``validate_category(category)`` SLOTHDESK_ROOT`. Any path containing `..`, absolute drive letters, or symbolic links is immediately rejected.`{name}_{counter}{ext}` (e.g. `invoice_october_1.pdf`). Inspect loose files in the Downloads folder, track storage volume, and verify the local inference engine status at a glance.\n\nClicking **Scan & Propose Plan** triggers `smolagents` via LM Studio. Every file receives a color-coded category badge, destination path preview, model rationale, and automatic collision resolution.\n\nZero files are altered until the user explicitly reviews the plan summary and safety checklist, confirming the moves in a dedicated modal dialog.\n\nInspect all top-level files with real-time size metrics, extension detection, and SHA-256 verification hashes.\n\nEvery move produces an immutable JSON audit manifest. Click **Undo Operation** to instantly restore files back to their exact original root locations.\n\n`smolagents` (`ToolCallingAgent`)` Qwen2.5-7B-Instruct` (GGUF `Q4_K_M`) on consumer hardware (NVIDIA RTX 5050 Laptop GPU / 8 GB VRAM).`#0a130e`) and soft lime accents (`#84cc16`).` infra/compose.yaml`).\nA key requirement of SlothDesk is honesty:\n\nThis application was designed, implemented, and hardened pair-programming with **Google Antigravity**.\n\n*In accordance with DEV community guidelines, `ai_disclosure_level: some_ai` is declared for this submission.*\n\n`_1.ext`) guaranteeing zero overwrites.` smolagents.ToolCallingAgent` over local LM Studio endpoints (`pytest`) and validated the production build.` docs/ARCHITECTURE.md``docs/SECURITY_TESTING.md`` docs/DEMO_SCRIPT.md`", "url": "https://wpnews.pro/news/slothdesk-local-first-ai-downloads-organizer-less-sorting-more-living", "canonical_source": "https://dev.to/ani0811/slothdesk-local-first-ai-downloads-organizer-less-sorting-more-living-398", "published_at": "2026-10-22 05:29:34+00:00", "updated_at": "2026-10-22 05:40:35.110700+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "large-language-models", "ai-safety"], "entities": ["SlothDesk", "Hugging Face", "smolagents", "LM Studio", "Qwen2.5-7B-Instruct", "Google Antigravity", "DEV Community", "NVIDIA"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/slothdesk-local-first-ai-downloads-organizer-less-sorting-more-living", "markdown": "https://wpnews.pro/news/slothdesk-local-first-ai-downloads-organizer-less-sorting-more-living.md", "text": "https://wpnews.pro/news/slothdesk-local-first-ai-downloads-organizer-less-sorting-more-living.txt", "jsonld": "https://wpnews.pro/news/slothdesk-local-first-ai-downloads-organizer-less-sorting-more-living.jsonld"}}