DEV Community

Jay Dosi
Jay Dosi

Posted on

SlothScribe: Channeling My Inner Sloth with a Slow, Steady, Offline Document Diges

Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady Submission 🦥

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady

What I Built

In celebration of International Sloth Day, I built SlothScribe—a local, energy-conserving, open-weight document digest engine engineered to reward laziness.

Almost every developer and student has that dreaded desktop clutter: an ever-expanding graveyard of unread meeting notes, whitepapers, lecture PDFs, architecture drafts, and reading lists that we promise ourselves we’ll sort through "when we have time." Manually opening, reading, and organizing dozens of files is exhausting. Meanwhile, pushing these documents to cloud LLMs incurs monthly subscription costs, burns through rate limits, and compromises private data.

SlothScribe channels the metabolic wisdom of the three-toed sloth (Folivora).

Instead of red-lining CPU cores or firing off dozens of concurrent cloud requests, SlothScribe quietly plods through unorganized local folders at a deliberate, throttled pace. It introduces micro-pauses between document chunks and files so your laptop stays cool, fans stay silent, and battery life is conserved.

When it finishes, it generates a clean, executive Markdown Digest (digest.md) featuring high-level conclusions and document-by-document bullet points—so you can stay relaxed and never manually sift through clutter again.

Best of all, SlothScribe is 100% resumable: an atomic, crash-resilient JSON store tracks completed files. You can shut your laptop lid or put your machine to sleep at any time; SlothScribe picks up right where it left off without duplicating compute.


Demo

GitHub Repository & Quickstart Demo:
https://github.com/Jay-Dosi/DEV-Challenge-4

Terminal Walkthrough

        \__
        /  \__
       /   /  \__   🦥 SlothScribe
     _/_  /   /  \  Slow & Steady Open-Source AI Digest
    (  _)/   /   /  Conserving battery. Keeping data private.
     `--'   /_  /
              `'

🧠 Local Engine: TinyLlama-1.1B (Local CPU inference)
📂 Scanning directory: sample_docs
⏳ Sloth Pacing: 1.0s between docs, 0.05s between chunks

🦥 [1/3] Plodding through: 01_weekly_team_sync.md ...
   ... chunk 1/1 summarized.
   ✓ Finished 01_weekly_team_sync.md (1 chunks). Taking a gentle rest...

🦥 [2/3] Plodding through: 02_sloth_energy_conservation_principles.txt ...
   ... chunk 1/1 summarized.
   ✓ Finished 02_sloth_energy_conservation_principles.txt (1 chunks). Taking a gentle rest...

🦥 [3/3] Plodding through: 03_system_architecture_backlog.json ...
   ... chunk 1/1 summarized.
   ✓ Finished 03_system_architecture_backlog.json (1 chunks). Taking a gentle rest...

============================================================
✨ SLOTH RUN COMPLETE ✨
• Total files scanned: 3
• Files processed:     3
• Files skipped (done):0
• Master Digest saved: sample_docs/digest.md
============================================================
😴 SlothScribe is going back to sleep. You're welcome to relax too.
Enter fullscreen mode Exit fullscreen mode

Code

🦥 SlothScribe: Slow & Steady Local Document Digest

“Why rush your CPU and boil your battery when you can plod along quietly?”

Hacktoberfest Challenge License: MIT Python Privacy: 100% Offline Inference: Local GGUF


🌟 What is SlothScribe?

SlothScribe is an open-source, local AI document synthesizer built specifically for International Sloth Day and the Slow and Steady challenge.

Instead of burning laptop batteries and redlining CPU cores with aggressive, concurrent API requests or GPU spikes, SlothScribe channels the metabolic wisdom of the three-toed sloth (Folivora). It quietly plods through unorganized folders of reading lists, PDFs, meeting transcripts, research papers, markdown notes, and JSON backlogs at a deliberate, energy-conserving pace.

When it finishes, it leaves behind an executive Markdown Digest (digest.md) with high-level takeaways and document-by-document bullet points—so you can stay relaxed and never manually sift through clutter again.


🌿 Highlights & Sloth Superpowers

  • 🦥 Sloth Pacing (Energy Throttling): Deliberate micro-naps between document chunks and files prevent thermal throttling…

Full source repository: https://github.com/Jay-Dosi/DEV-Challenge-4

Key Modules:

  • slothscribe/model.py: Local GGUF open-weight model loader (llama-cpp-python) paired with a zero-dependency deterministic fallback ranker.
  • slothscribe/summarizer.py: Context-aware chunking, micro-rest throttling, and unified Markdown synthesis.
  • slothscribe/store.py: Atomic JSON progress tracker enabling pause-and-resume execution.
  • slothscribe/reader.py: Multi-format text extractor supporting .md, .txt, .pdf, .docx, .json, .yaml, .csv, and .html.
  • slothscribe/cli.py: Interactive CLI with commands for run, status, show, init, and reset.

How I Built It

SlothScribe is constructed entirely around open-weight models and local inference:

  1. Local GGUF Open-Weight Inference: SlothScribe uses llama-cpp-python to run quantized open-weight instruction models (such as TinyLlama-1.1B, SmolLM-360M, or Phi-3-mini) entirely on device. Thread count and batch size are constrained (n_threads=2, n_batch=8) to prevent CPU thermal throttling.
  2. Zero-Dependency Extractive Fallback: If no GGUF weight file is provided or C++ build tools are missing, SlothScribe seamlessly switches to a pure Python extractive summarizer based on word salience and sentence scoring. It guarantees 100% offline functionality right out of the box with zero external downloads.
  3. The Sloth Pacer (sloth_pause): Modern cloud tools rush to complete requests at maximum speed. SlothScribe embraces slow computing by inserting deliberate pauses (50ms between chunks, 1.0s to 2.0s between files) to maintain hardware equilibrium, zero fan noise, and minimal battery consumption.
  4. Universal Document Adapters: The modular reader pipeline ingests diverse formats (.md, .txt, .pdf, .docx, .json, .yaml, .csv, .html) with lazy dependency loading, ensuring uninstalled optional format parsers never crash the tool.

Why Does Open Innovation Matter?

Open innovation is what makes SlothScribe feasible and practical:

  • 100% Air-Gapped Privacy: Confidential meeting notes, personal finance records, proprietary system architecture docs, and personal reading lists remain strictly on your machine. No telemetry or logs are ever transmitted to third-party cloud servers.
  • Zero Ongoing Costs: Open-weight models incur no recurring API billing or token metering. You can let SlothScribe plod through 5,000 files in the background without spending a dime.
  • Autonomy Over Execution & Pacing: Closed APIs do not allow you to throttle inference rates or run on low-power efficiency cores. Open-weight inference grants full control over thread counts, context sizes, and temperature.
  • Offline Reliability: Whether you are traveling on an airplane, working in a remote cabin with no internet, or facing power outages, SlothScribe runs uninterrupted without external network dependencies.

My Agent Session

This project was planned, designed, and coded using an agentic AI pairing workflow. Architecture decisions, file parsing routines, and test cases were organized and generated iteratively.


The Lazy Payoff

This week, SlothScribe eliminated the friction of sifting through 24 unorganized documents and research papers:

  • Time saved: ~2.5 hours of tedious manual reading and folder organizing reduced to a 2-minute review of digest.md.
  • Zero Guilt: No more anxiety about letting desktop reading lists pile up—you can let your inner sloth take over and leave the digestion to SlothScribe.

Prize Categories

  • Hacktoberfest Open-Source AI Challenge: Slow and Steady

Top comments (0)