Idle Butler: A Local-First Assistant That Works While You Are Away
Idle Butler: A Local-First Assistant That Works While You Are Away This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady. What I Built Idle Butler is a local-first desktop assistant
Idle Butler: A Local-First Assistant That Works While You Are Away
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady.
What I Built
Idle Butler is a local-first desktop assistant that runs user-defined workflows when a computer is idle.
Instead of asking users to stop what they are doing, Idle Butler waits until they are away and then performs safe, useful tasks such as:
- Summarizing text and Markdown files
- Extracting explicit action items and deadlines
- Preparing cleanup suggestions for a messy folder
- Generating a readable Markdown digest
- Applying reviewed file moves
- Undoing previous cleanup actions The first MVP uses a workflow builder where the user chooses the idle threshold, input folders, output path, model, and workflow steps.
The user stays in control. Idle Butler only suggests changes during idle mode. File moves require explicit approval and can be undone.
Demo
The project is available on GitHub:
https://github.com/aryash45/idle-butler
Run the local UI with:
python -m idle_butler ui
Then create a workflow such as:
When I am idle for 5 minutes:
- Summarize files in ./sample/inbox
- Extract action items
- Propose cleanup for ./sample/messy
- Write the result to digest.md The repository also includes a Windows PyInstaller build configuration. Code View the Idle Butler source on GitHub
The project is built with Python 3.9+ and uses the standard library at runtime.
How I Built It
Idle Butler uses Ollama for local inference with open-weight models such as llama3.2:3b.
The application has four main layers:
- Idle detection It detects idle time using native operating-system mechanisms where available.
- Workflow execution The user selects safe built-in actions from the local web UI. The runner executes only those selected actions.
- Local model calls Ollama is called through Pythonβs standard-library HTTP client. No cloud API key or external AI service is required.
- Safety and review Cleanup suggestions are written to a versioned JSON plan. Nothing moves until the user runs --apply or confirms it in the UI. Successful moves are recorded in a log so --undo can restore them. The local UI is served only on 127.0.0.1 and uses a random token for each session. Requests are protected by Host-header validation and a JSON body-size limit.
The project includes tests for:
- Filename sanitization
- Collision handling
- JSON fallback parsing
- Path containment
- Idle-output parsing
- Digest rendering
- HTTP token and Host protection
- Apply and undo behavior
- Workflow action validation Why Does Open Innovation Matter? Open innovation made it possible to build the assistant around local inference instead of sending personal files to a hosted AI provider.
That matters because Idle Butler is designed to work with folders that may contain private notes, receipts, project documents, or personal information.
Using Ollama also makes the model replaceable. Users can choose a smaller model for lower resource usage or a larger model for better results. The workflow engine does not depend on one closed API provider.
The project is also intentionally transparent. The prompts, safety checks, file boundaries, and workflow actions are visible in the repository and can be modified by contributors.
The Lazy Payoff
The payoff is simple: users describe the work once, then Idle Butler handles the repetitive parts while they are away.
Instead of manually opening every note, remembering every deadline, or organizing every download, users return to:
- A concise digest
- A list of action items
- A reviewable cleanup plan
- A clear record of what happened The project is designed to save attention and repeated context-switching rather than silently making irreversible decisions. What I Would Build Next The next improvements would be:
- Workflow history and run logs
- More built-in workflow templates
- A polished signed Windows installer
- Better model-quality evaluation fixtures
- Optional scheduled workflows
- A public demo video showing the full before-and-after flow My Agent Session This project was built iteratively with an AI coding assistant, with the implementation reviewed through tests and local smoke checks.
hf26challenge #devchallenge #ai #productivity
Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes β full credit and traffic to the original publisher.