Skip to content

Bot-free meeting capture that feeds tasks and follow-ups #160

Open

Description

@itsskofficial

Meetings produce most commitments, and nobody wants a bot joining their call. Meetily shows the whole pipeline runs locally under MIT. Granola's bot-free approach is popular but gives little back if you don't type notes. OpenClaw added live meeting notes and searchable transcripts.

Idea: Capture system audio and the mic locally, with no bot joining the call. Transcribe with faster-whisper (or Parakeet), then summarize on the local model into decisions, action items and tasks, feeding the dropped-follow-up engine. Recording is visible and opt-in per meeting, and audio is deleted after transcription.

Status in Sentient today: New. Local STT exists in sentient/voice/stt.py.

Where: System-audio capture in desktop/electron/main/ and desktop/src/features/voice/audio/, upload and transcription in sentient/voice/ and sentient/gateway/routes/voice.py, summarizing into tasks via sentient/tasks/service.py and follow-ups in sentient/proactivity/followups.py, and docs/API.md.

Done when:

  • a recorded meeting yields a transcript, decisions and action items, with tasks proposed
  • a visible indicator shows while recording
  • audio is deleted after transcription
  • tests cover the pipeline with a fixture audio file and FakeProvider

Sources:

Roadmap ID: PRO-5 · Priority: P1 · Size: L

Activity

  1. added
    enhancementNew feature or request
    help wantedExtra attention is needed
    area: proactivitySuggestions, heartbeat, self-improving skills
    area: voiceSpeech, wake word, voice mode
    priority: P1Next: high-value feature
    size: LLarge: several weeks
    on Oct 9, 2026
  2. GianlucaBave commented on Nov 5, 2026

    @GianlucaBave

    Some macOS details from doing this with ScreenCaptureKit, in case they save you time:

    • In practice SCK wants a video stream even if you only need audio. What works: keep a display filter, ask for 2x2 px at 1 fps and drop the frames. About 1% CPU on an M5.
    • The permission belongs to the app that launches the capture (your app, or the terminal in dev), not the helper.
    • When the Mac is silent SCK sends no system-audio samples at all, so if you mix it with the mic you need to pad with silence.
    • The stream stops on sleep or display changes, so reattach on error.

    I wrote it up as a tiny CLI, one Swift file, as a reference: https://github.com/GianlucaBave/audiotap

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: desktopElectron app and UIarea: proactivitySuggestions, heartbeat, self-improving skillsarea: voiceSpeech, wake word, voice modeenhancementNew feature or requesthelp wantedExtra attention is neededpriority: P1Next: high-value featuresize: LLarge: several weeks

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions