Skip to content
cccskills
FreePublished on GitHub

voice-note-ingest

Save voice notes as organized knowledge pages while preserving the speaker's exact wording, including hesitations. Store the original audio, file the note by subject, add separate analysis, and link mentions to relevant person and company pages.

OriginalShow the original description

Ingest a voice note with exact-phrasing preservation (never paraphrased). Routes content to originals/, concepts/, people/, companies/, ideas/, personal/, or voice-notes/ based on a decision tree. The user's exact words are the signal.

See how to install

Good for

  • Capturing ideas in their original spoken wording
  • Filing voice notes by subject
  • Recording spoken observations about people or companies
  • Saving personal reflections with their original audio

Files included (2)

  • SKILL.md7.2 KB
  • routing-eval.jsonl820 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

voice-note-ingest — Exact-Phrasing Voice Capture

Convention: see conventions/quality.md for citation rules, back-link enforcement, and exact-phrasing requirements.

Convention: see _brain-filing-rules.md for the filing decision protocol.

Iron Law

The user's exact words are the insight. Never paraphrase. Never clean up. The vivid, unpolished, stream-of-consciousness phrasing captures something that cleaned-up prose does not. Preserve it in block quotes. The Analysis section can interpret; the transcript section is sacred.

  • ✅ "The ambition-to-lifespan ratio has never been more fucked"
  • ❌ User noted the tension between ambition and mortality

When to invoke

The user sends an audio or voice message via any channel (Telegram, voice memo upload, openclaw audio attachment). The host agent typically provides the transcript text. If not, transcribe it with your host's transcription tool (Groq Whisper is fast and cheap; OpenAI Whisper works too — segment audio > 25MB via ffmpeg first).

The pipeline

1. STORE       → Upload original audio to gbrain storage backend
                 (S3 / Supabase Storage / local — pluggable per
                 src/core/storage.ts).
2. TRANSCRIBE  → Use the agent-provided transcript verbatim, OR
                 transcribe the audio yourself (see "When to invoke")
                 if no transcript was supplied.
3. ROUTE       → Apply the decision tree (below) to find the right
                 destination directory.
4. WRITE       → Create / update the destination brain page; preserve the
                 verbatim transcript in a block-quoted "User's Words"
                 section.
5. CROSS-LINK  → For every entity mentioned (person, company), add a
                 timeline back-link from THEIR brain page to THIS one
                 (Iron Law per conventions/quality.md).

Decision tree (where the content goes)

Apply in order. First match wins. If multiple categories apply, file to the primary directory and cross-link to the others.

  1. Original idea, observation, or thesis — the user is expressing a novel thought, framework, or connection THEY generated. → originals/<slug>.md. Use the user's vivid language for the slug.

  2. About a world concept they encountered — a framework or model someone else created that the user is referencing. → concepts/<slug>.md.

  3. About a specific person — new information, opinion, or observation about someone. → Update people/<person>.md timeline.

  4. About a specific company — new info about a company. → Update companies/<company>.md timeline.

  5. A product or business idea — something that could be built. → ideas/<slug>.md.

  6. A personal reflection — therapy-adjacent, emotional, identity. → Append to appropriate personal/<slug>.md.

  7. None of the above / random thought / doesn't fit cleanly — → voice-notes/YYYY-MM-DD-<slug>.md (catch-all).

Multiple categories? Create the primary page, then cross-link to all others. If the voice note covers a person AND a novel idea, create the originals/ page AND update the person's timeline.

Brain page format

For ALL voice-note-derived pages, include this skeleton:

---
title: "[Title derived from content]"
type: [original | concept | voice-note | ...]
created: YYYY-MM-DD
updated: YYYY-MM-DD
tags: [voice-note, relevant-tags]
sources:
  voice-note:
    type: voice_note
    storage_path: "[gbrain storage URL or relative path]"
    acquired: YYYY-MM-DD
    acquired_via: "voice note from <channel>"
---

# Title

> Executive summary of what was said and why it matters.

## User's Words

> "Exact transcript, verbatim, preserving every word, hesitation, and verbal
> tic. This is the primary source material. Do not edit."

🔊 [Audio]([gbrain storage URL or relative path])

## Analysis

[What this means, why it matters, connections to other thinking. The
analysis is the agent's interpretation; the transcript above is sacred.]

## See Also

- [Related brain pages with relative links]

---

## Timeline

- **YYYY-MM-DD** | voice note from <channel> — [Brief description]

Citation format

[Source: voice note, <channel>, YYYY-MM-DD]

Include timestamps when available:

[Source: voice note, <channel>, YYYY-MM-DD HH:MM PT]

Naming convention

  • Audio files: YYYY-MM-DD-<brief-slug>.<ext> (e.g., 2026-04-13-rick-rubin-creative-philosophy.ogg)
  • Brain pages: match the slug of the destination directory.

Bulk vs. single

This skill handles ONE voice note at a time. Each is its own ingest cycle. No batching.

When it fails

Follow the agent operator protocol for any gbrain error code, exit code, [AGENT] block or notice block. Specific to this skill:

  • Transcription is unavailable or the storage backend refuses the audio (gbrain storage shows no backend): file the note text you have and tell the user the audio was not stored.
  • The routed page write returns revision_conflict or write_pending: re-read and merge, or poll gbrain write-request <request_id>; never paraphrase to resolve a conflict.

Anti-Patterns

  • ❌ Paraphrasing the transcript. The exact words are the signal.
  • ❌ Cleaning up hesitations or filler words ("um", "like", "you know"). The texture matters.
  • ❌ Creating a page with no entity cross-links when people/companies were mentioned. Iron Law fail.
  • ❌ Skipping the audio storage step. Always upload the original; the brain page has a 🔊 [Audio] link back to it.

Related skills

  • skills/signal-detector/SKILL.md — same exact-phrasing pattern for text-channel idea capture
  • skills/idea-ingest/SKILL.md — for typed-text idea ingestion
  • skills/conventions/quality.md — citation + back-link rules

Contract

This skill guarantees:

  • Routing matches the canonical triggers in the frontmatter.
  • Output written under the directories listed in writes_to: (when applicable).
  • Conventions referenced (quality.md, brain-first.md, _brain-filing-rules.md) are followed.
  • Privacy contract preserved: no real names, no fork-specific filesystem path literals, no upstream-fork references.

The full behavior contract is documented in the body sections above; this section exists for the conformance test.

Output Format

The skill's output shape is documented inline in the body sections above (see "Output", "Brain page format", or equivalent). The literal section header here exists for the conformance test (test/skills-conformance.test.ts).

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

academic-verify

FreeSummary

Check research claims cited in books, articles, or conversations by tracing the original paper, methods, underlying data, and independent replication. Save a sourced assessment explaining whether the claim holds up and what remains uncertain.

  • Check a study cited in a book
  • Trace a numerical claim in an article to its source data
  • Verify research evidence before using it in writing
garrytan/gbrain31KUpdated Oct 19, 2026

archive-crawler

FreeSummary

Explore old files and email archives to rediscover personal writing, ideas, and meaningful conversations. Review selected items one at a time, save worthwhile material as organized notes, and track progress within explicitly permitted folders.

  • Rediscover old journals and creative writing
  • Find meaningful letters and email conversations
  • Recover past product and business ideas
garrytan/gbrain31KUpdated Oct 19, 2026

Restructure raw article text stored in gbrain into summaries, exact quotes, key insights, and links to related pages. Preserve the original text and connect the article's significance to projects and interests already recorded in gbrain.

  • Organizing saved articles into readable notes
  • Collecting exact quotes for essays
  • Connecting articles to current projects
garrytan/gbrain31KUpdated Oct 19, 2026

ask-user

FreeSummary

Present clear choices when a task needs a human decision, then pause execution until the user replies. This reusable interaction pattern supports filing decisions, priority selection, and confirmation before destructive actions, with an option to decline.

  • Clarifying requests with several possible meanings
  • Confirming before bulk deletion or overwriting
  • Choosing where to file meeting notes
garrytan/gbrain31KUpdated Oct 19, 2026

blog-ingest

FreeSummary

Collect public posts across a blog, newsletter, or feed archive and save clean Markdown pages for each article. The workflow avoids duplicates, supports resumed runs, repairs empty results, and hands articles to a separate enrichment skill.

  • Importing a blog's public article archive
  • Organizing public newsletter posts as knowledge pages
  • Rerunning a feed import without duplicates
garrytan/gbrain31KUpdated Oct 19, 2026

book-mirror

FreeSummary

Create a detailed chapter-by-chapter reading companion from an EPUB or PDF, connecting the book’s ideas to experiences and words saved in your personal knowledge store. The result highlights parallels without prescribing actions.

  • Connect a book’s ideas to personal experiences
  • Review detailed chapter summaries alongside personal reflections
  • Create a parent’s guide for reading a children’s book aloud
garrytan/gbrain31KUpdated Oct 19, 2026

See all skills by garrytan

Report a problem with this skill