Model or dataset
vijaythecoder/clueless avatar
vijaythecoder/clueless

Clueless is a desktop meeting assistant that transcribes and summarises locally

Cluelessly - AI Meeting Assistant App

581 stars69 forksVueNOASSERTION

At a glance

What is it?
Clueless is a Vue and Laravel application packaged as a native desktop app through NativePHP, using the OpenAI Realtime API to transcribe meetings, summarise them and extract action items, with conversations kept in a local SQLite database. It suits a macOS user who wants a meeting recorder with analysis, and it requires an OpenAI API key and a licence that forbids reselling it as a service.
Who is it for?
Adopt Clueless if you want a meeting recorder that transcribes live, extracts action items and keeps every conversation in a local database you control, and if you are comfortable with an OpenAI API key and a macOS desktop build.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 85 days ago.
What is it written in?
Mainly Vue, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 22, 2026, and from our analysis. They are not legal advice.

Editorial analysis

A meeting recorder, a summariser and a local database

Clueless is described as an AI-powered meeting assistant for real-time transcription, conversation analysis and actionable insights, and the feature list sets out what that means in practice. Real-time transcription captures and transcribes conversations as they happen. Intelligent analysis surfaces key points and themes from the meeting content. Action item extraction identifies and pulls out action items automatically. Conversation storage keeps and organises all your meetings for future reference. Insights generation produces AI-generated summaries. Context preservation maintains conversation context across multiple sessions. And desktop integration is provided as a native desktop app. The primary language of the repository is Vue, and the homepage is cluelessly.ai. The interesting architectural point is the last feature, because it decides where the data lives: the conversations are stored locally rather than in a hosted account, and the tech stack lists SQLite for local conversation storage.

The stack: Laravel, Vue, NativePHP and the OpenAI Realtime API

The tech stack section is specific and it is where you can see what kind of application this is. The backend is Laravel 12.0 on PHP 8.2 or higher, which is why the repository contains an artisan file, a bootstrap/ directory, a config/ directory, a routes/ directory and a database/ directory alongside the PHP application code. The frontend is Vue 3.5.13 with TypeScript and Inertia.js, so the browser side is a normal Inertia application rather than a separate SPA talking to an API, with the Inertia Vue 3 adapter and Pinia for state. The desktop shell is NativePHP and Electron, which is what turns the Laravel application into something you launch from a desktop icon. The AI layer is the OpenAI Realtime API for transcription and analysis, with the @openai/agents and @openai/agents-realtime packages in the dependencies. Styling is Tailwind CSS 4.1.1, the build is Vite 6, and the frontend is built with vite build, with a separate build:ssr script for the server side rendering bundle. The audio path is not entirely browser-side, because electron-audio-loopback is a dependency, and there are dedicated documents in the tree for the audio loop, for macOS permissions and for the NativePHP build and extensibility work.

Installing the desktop app, and the API key requirement

There are two audiences in the documentation, and the app-first one comes first. If you just want to use the tool, there is a download for macOS and the stated requirements to run the app are macOS 10.15 or later and an OpenAI API key, which you add in the app settings. The documentation stresses that no development tools are needed, you just download, install and start transcribing. Only a macOS build is linked, which is the practical limit on who can use the packaged app today. For contributors, the developer requirements are PHP 8.2 or higher, Node.js 18 or higher, Composer, npm or yarn, and an OpenAI API key, and the installation from source is three steps.

bash
# Clone the repository
git clone https://github.com/vijaythecoder/clueless.git
cd clueless

# Install dependencies
composer install
npm install

# Run the desktop app
composer native:dev

The one line worth noticing is the last one. composer native:dev is what boots the NativePHP desktop shell in development, and the documentation notes that the app handles database setup automatically, so there is no migration step to run by hand before the first launch.

The five step usage loop

The usage section is short and describes a straightforward meeting workflow. You start a meeting by launching the app and beginning a new conversation session. The app then automatically transcribes all audio in real time, so there is no separate recording step. During or after the meeting you review the AI-generated insights and summaries, and you view the automatically identified action items and tasks. Finally, all meetings are stored locally for future reference and analysis. The distinction in step two is worth pausing on, because a meeting recorder that captures all audio in real time is capturing the room rather than a selected microphone, and the documentation does not describe a selection or push-to-talk model. That is a design consequence of building on the OpenAI Realtime API, and it also means the transcripts contain everything said in the room rather than only what was addressed to the application.

The environment file, and what the key configuration reveals

The .env.example file is worth reading because it shows the shape of a Laravel application and the AI wiring at the same time. The application defaults are standard, with APP_NAME set to Clueless, APP_ENV local, and a locale block for English including a fake locale. Sessions use the database driver with a lifetime of 120 and encryption off, and the cache store and the queue connection are both the database, which for this application means the same SQLite file holds the meetings and the framework's own tables. The database connection is sqlite with the other drivers left commented out. The AI provider keys are grouped together, with OPENAI_API_KEY, ANTHROPIC_API_KEY and GEMINI_API_KEY all present as empty values, and then a realtime configuration block with VITE_OPENAI_API_KEY mirroring the server side value through a variable expansion and a VITE_REALTIME_RELAY_URL pointing at wss://localhost:8080/realtime. That relay URL is the interesting one. It means the browser side does not hold a direct connection to the OpenAI Realtime endpoint but talks to a local relay, which is what makes the desktop audio capture and the key handling work without exposing the key in the frontend bundle. The Apple signing identifiers for NativePHP builds are also present, all empty, which is the part you must fill in yourself to produce a signed macOS build.

MIT plus the Commons Clause, and what it rules out

The licence is the MIT License with the Commons Clause, and the documentation spells out the permissions in plain terms rather than leaving you to read the clause. What you may do is use it for personal projects or within your company, modify it to fit your needs, and self-host it on your own infrastructure. What you may not do without a commercial agreement is sell it as a hosted service or SaaS product, or resell it. The project is described as personal and internal use being free, with SaaS or resale requiring contact. The repository carries both a LICENSE file and a COMMONS_CLAUSE.md, and the licence field is recorded as a custom one that GitHub cannot classify, which is what a Commons Clause add-on looks like from the platform's point of view. For commercial licensing inquiries the documentation points to the Discord community or an issue. The practical read is that the code is usable as a base for your own internal tool, and the commercial use that is restricted is the obvious one, offering the thing as a service to paying customers.

Where Clueless is the wrong tool

The boundaries are clear enough to state. The first is platform, since only a macOS desktop download is published and the app requirement is macOS 10.15 or later, so a Windows or Linux user is limited to running it from source, which means the PHP, Node and Composer toolchain rather than a double click. The second is the data path. Although the conversations are stored locally in SQLite, the audio and the transcription work go to the OpenAI Realtime API, so your meeting content leaves the machine and the cost lands on your API account, which makes it unsuitable for confidential conversations under an NDA that forbids third-party processing, whatever the storage story. The third is the release state. The last push to the repository was on 2026-07-30 and the only listed releases are v1.0.0 from 2025-08-05 and a beta before it, so the app you download is a stable release that is over a year old, while the code on main has moved on. The fourth is the live-relay dependency, because a local websocket relay on port 8080 is part of the audio path and is something you have to be able to run and secure. And the fifth is the practical one: a meeting assistant that transcribes everything in the room needs consent from everyone present, which is a process requirement rather than a technical one.

Editorial conclusion

Adopt Clueless if you want a meeting recorder that transcribes live, extracts action items and keeps every conversation in a local database you control, and if you are comfortable with an OpenAI API key and a macOS desktop build. Do not adopt it if you plan to offer it as a hosted service or resell it, because the licence is MIT with the Commons Clause, which permits personal, internal and self-hosted use and forbids selling it as a SaaS product without a commercial agreement. Verify two things before you rely on it: that your machine meets the stated macOS 10.15 requirement, since only a macOS download is published, and what your transcription volume costs, because the audio is sent to the OpenAI Realtime API and the bill is yours. The practical first step is to download the macOS build, add your OpenAI API key in the app settings, and record one short conversation to see how the transcription and insight output look before you use it in a meeting that matters.

Frequently asked questions

What does the Clueless app do?

It is an AI meeting assistant that captures and transcribes audio in real time, analyses the meeting content for key points and themes, extracts action items, generates summaries, and stores every conversation locally so you can refer back to it. Conversations are kept in a local SQLite database.

How do I run Clueless from source?

Clone the repository, run composer install and npm install in it, and start the desktop app with composer native:dev. You need PHP 8.2 or higher, Node.js 18 or higher, Composer, npm or yarn, and an OpenAI API key, and the app handles database setup automatically.

Does Clueless work on Windows or Linux?

The project publishes a macOS desktop download only, and the stated app requirements are macOS 10.15 or later with an OpenAI API key added in the app settings. Other platforms would mean running from source.

Can I use Clueless commercially or offer it as a service?

The licence is the MIT License with the Commons Clause. You may use it for personal projects or inside your company, modify it, and self-host it, but you may not sell it as a hosted service or SaaS product or resell it without a commercial agreement.

Where does Clueless send the meeting audio?

The tech stack lists the OpenAI Realtime API for transcription and analysis, and the environment configuration points the frontend at a local realtime relay URL, so the audio is processed by OpenAI rather than staying on your machine even though the resulting conversations are stored locally.

Official sources

  1. Issues
  2. Project website
  3. README
  4. Releases
  5. vijaythecoder/clueless on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/vijaythecoder-clueless.svg)](https://hysenlabs.com/projects/vijaythecoder-clueless)

Was this useful?