LLMConnect

Inspiration

AI-driven conversations happen across many browser tabs and API accounts. We wanted a local-first workspace that keeps sessions isolated, preserves structured chat history, and makes it easy to reuse and organize prompt-driven work without sending everything to a third-party server.

What it does

  • Runs multiple browser sessions in an integrated desktop dashboard.
  • Extracts and stores structured chat history in a local SQLite database.
  • Encrypts and manages API profiles locally so credentials stay on-device.
  • Provides lightweight browser tooling and persona prompts to standardize interactions.
  • Enables categorization and project tagging for later review and reuse.

How we built it

We built LLMConnect as a PyQt6 desktop application with a modular engine layer:

  • UI: PyQt6 for the main window, dashboard, and browser tab management.
  • Browser integration: in-process browser views with injected lightweight scripts for extraction and persona tooling.
  • Storage: SQLite for chat history and a small encrypted store for API profiles.
  • Modules: modular provider adapters so new LLM providers can be added by implementing provider interfaces in models/.
  • Security: local-first architecture and encrypted credential storage to keep sensitive data on-device.

Challenges we ran into

  • Keeping browser extraction robust against provider DOM changes.
  • Managing isolated sessions while providing a fluid UX for switching contexts.
  • Designing a small, usable encrypted profile store that is easy to configure.
  • Balancing modularity with simplicity so new providers are easy to add.

Accomplishments we're proud of

  • A working local-first desktop dashboard that brings browser chats into one place.
  • Reliable structured extraction that makes conversations searchable and reusable.
  • Secure, encrypted storage for API profiles and credentials.
  • A modular design that lets contributors add provider adapters and custom skills easily.

What we learned

  • Browser DOMs are a moving target — defensive extraction and graceful degradation are essential.
  • Local-first privacy matters: users appreciate tooling that keeps keys and sessions on-device.
  • Modular, well-documented interfaces dramatically lower the bar for community contributions.

What's next for LLMConnect

  • Add more provider adapters and make integrations pluggable via a clear plugin API.
  • Improve extraction resilience with heuristics and optional user-assisted selectors.
  • Add sync options for users who want encrypted cloud backups.
  • Build example workflows and templates for common roles (developer, researcher, product manager).

Built With

Share this project:

Updates