Repository indicators summarize maintenance, CI, runtime, ASR, UI, and license status.
Project AURA is a local desktop audio assistant for professional meetings, lectures, and review-intensive transcription workflows. It brings recording, RTX/CUDA speech recognition, Traditional Chinese transcript preparation, human review, local structured summaries, and evidence export into one recoverable workflow.
Figure 1. The transcription workspace keeps capture controls, CUDA readiness, waveform feedback, Traditional Chinese transcript review, output actions, and the local activity log in one operator view.
AURA turns audio into a durable, reviewable meeting record. The application keeps audio, transcript states, summary claims, and review events connected through one session identity so operators can move from capture to confirmed actions with a visible evidence path.
The active product flow is:
Live capture or media import
|
v
Breeze ASR on RTX/CUDA
|
v
Traditional Chinese punctuation and glossary correction
|
v
Timestamped human review
|
v
Local Gemma 4 structured summary
|
v
Source-linked claims, exports, and evidence search
Use this repository for:
- the maintained PyQt6 desktop application;
- reusable audio, ASR, review, summary, diagnostics, and evidence services;
- regression tests and platform smoke checks;
- release packaging and semantic version automation;
- public runtime evidence with source manifests and measured event traces;
- architecture, product strategy, governance, and platform documentation.
| Field | Value |
|---|---|
| Project Name | Project AURA / Ultimate Audio Assistant |
| Refactor Version | 1.15.0 |
| Latest Published Tag | v1.14.0 |
| Next Release Candidate | v1.15.0 |
| Release State | v1.15.0 source candidate is published on main; the annotated tag and GitHub Release form the next release gate |
| Primary Platform | Ubuntu 22.04 / 24.04 desktop |
| Python Runtime | Python 3.10+ |
| ASR Model | SoybeanMilk/faster-whisper-Breeze-ASR-25 |
| ASR Runtime | NVIDIA RTX/CUDA with int8 compute |
| Summary Runtime | Local Ollama gemma4:e4b-it-qat with reasoning enabled |
| Desktop UI | PyQt6 |
| Project Lead | Jason Chia-Sheng Lin, National Yang Ming Chiao Tung University |
| License | MIT |
| Release | Contribution |
|---|---|
v1.15.0 candidate |
Durable meeting sessions, crash recovery, timestamped transcript review, source-linked summary claims, and rebuildable local evidence search |
v1.14.0 |
Operator-focused workspace, content-free local audit events, runtime diagnostics, integrity checks, and synchronized version automation |
v1.13.0 |
Windows onboarding, portable packaging, RTX diagnostics, output policy, scheduling, and broader artifact visibility |
v1.12.0 |
Structured transcript artifacts, progress telemetry, audio-quality controls, and modular transcription services |
GitHub Releases owns the durable release chronology. The sections below describe the current product contract and link each capability to its canonical design or evidence source.
Project AURA v1.15.0 establishes an evidence-first local meeting workflow. Each recording or import creates one canonical session that connects audio, transcript revisions, structured summary claims, and human review.
- Multi-source capture writes mixed, system, and microphone PCM journals as sources become available.
- Capture journals flush every second and reach an
fsynccheckpoint every five seconds. - Atomic
session.jsonupdates preserve meeting identity, runtime state, artifact locators, and recovery guidance. - Startup discovery presents recoverable sessions to the operator.
- Recovery reconstructs review-ready WAV evidence from the durable PCM journal and records the recovery acknowledgement.
- Recording and media import share the same transcript preparation and evidence model.
- Live ASR provides provisional feedback while durable audio remains the source for the final timestamped pass.
- Transcript segments progress through
provisional,final, andconfirmedstates. - Operators can edit text, rename speakers across the meeting, navigate review signals, and open the matching audio span.
- Transcript edits append review events and activate summary invalidation before the revised canonical transcript is saved.
- Decisions and action items retain stable claim identity, source segment IDs, support status, and review status.
- Confirmed actions emerge from current source evidence and human review.
- Summary generation receives the prepared corrected transcript from the current session.
- Nine field extractors run as one parallel application batch:
meeting_topic,participants,executive_summary,key_points,decisions,action_items,open_questions,risks, andnext_steps. - Each field uses a dedicated prompt, an explicit JSON shape, Python validation, and one format-repair path.
- Python merges the validated fields and renders deterministic Markdown.
- The supported runner is local Ollama
gemma4:e4b-it-qatthrough/api/chat, withthink=true,format=json,num_ctx=32768,num_predict=1536, andtemperature=0. - Reasoning remains ephemeral runtime data; validated final content becomes the summary artifact.
- The local server starts with loopback binding, cloud access inactive, one server-side parallel sequence, Flash Attention, and q8 KV cache.
The v1.15.0 runtime correction passes 398 regression tests. The live local
LLM packet records 12 real model calls, including one complete nine-field
product pipeline. All nine final fields passed schema validation while AURA
ASR remained resident on the same 16 GB GPU.
The next validation layer uses a paired reviewed meeting corpus to measure
summary quality, source support, human correction time, queue time, and peak
VRAM. The complete product direction and activation gates live in
docs/aura-llm-agent-product-strategy.md.
| Capability | Current operating scope |
|---|---|
| Live recording | Captures system audio, microphone audio, or a balanced mixed stream through PulseAudio/PipeWire sources |
| Durable capture | Writes append-only PCM journals and atomic session state for recovery and final audio reconstruction |
| Scheduled recording | Arms a wall-clock start time and an optional wall-clock stop time through the standard recording path |
| Media import | Processes common FFmpeg audio and video containers through a visible, cancellable queue |
| GPU-only ASR | Runs Breeze ASR 25 through faster-whisper on the activated RTX/CUDA runtime |
| Traditional Chinese punctuation | Applies local model-backed punctuation when activated and deterministic full-width cleanup as the always-available preparation layer |
| Domain glossary correction | Uses conservative RapidFuzz thresholds and records each accepted correction |
| Transcript review | Supports timestamped edits, speaker renaming, review signals, audio-span playback, and revision-aware confirmation |
| Speaker diarization | Adds optional imported-file speaker labels through pyannote.audio |
| Local summary | Extracts nine structured meeting fields with local Gemma 4 and renders stable JSON and Markdown |
| Claim review | Connects decisions and actions to source segments, support status, review status, and append-only review events |
| Evidence search | Rebuilds a local SQLite FTS5 index for meetings, segments, and confirmed actions |
| Audio preparation | Provides FFmpeg normalization, bounded denoise presets, level protection, and progress telemetry |
| Meeting-distance modes | Offers off, normal, far-speaker, and rescue-offline policies with explicit activation paths |
| Track Splitter | Finds natural pause points around a target duration and exports ordered media chunks |
| Runtime Diagnostics | Reports GPU, CUDA, ASR model, FFmpeg, audio device, disk capacity, and output-path readiness |
| First Launch Check | Presents readiness gates and direct setup actions in the desktop UI |
| Local audit trail | Records content-free app and workflow events with redaction, retention, owner permissions, and hash-chain integrity |
| Windows onboarding | Provides check/start wrappers, diagnostic reports, hosted CI, RTX smoke scripts, and portable release packaging |
The codebase keeps testable product logic outside Qt widgets and gives each runtime concern one clear owner.
project_aura/
├── pyproject.toml # package and dependency contract
├── Makefile # setup, check, build, and version commands
├── Start-AURA.* / Check-AURA.* # Windows onboarding entry points
├── config/
│ └── domain_glossary.yaml # conservative ASR correction terms
├── src/
│ ├── aura/
│ │ ├── asr/ # transcription and punctuation services
│ │ ├── audio/ # capture, denoise, export, and splitting
│ │ ├── diarization/ # optional speaker labeling
│ │ ├── llm/ # local summary runtime integration
│ │ ├── system/ # CUDA, paths, diagnostics, and updates
│ │ ├── ui/ # PyQt6 widgets and interaction wiring
│ │ ├── audit.py # content-free local audit events
│ │ ├── evidence_search.py # rebuildable SQLite FTS5 index
│ │ ├── review.py # transcript review and revision state
│ │ └── scheduling.py # wall-clock scheduling rules
│ ├── asr_postprocess/ # glossary correction package
│ └── summary/ # schemas, prompts, validation, rendering
├── scripts/ # diagnostics, evaluation, and release tools
├── tests/ # standard-library regression suite
├── docs/ # design, setup, strategy, and roadmaps
├── artifacts/ # measured public runtime evidence
└── img/ # semantic product screenshots
src/aura/settings.pyowns inspectable runtime defaults.src/aura/asr/owns file and live transcription behavior.src/aura/audio/owns source discovery, capture, mixing, denoise, export, recording durability, and media splitting.src/aura/diarization/owns speaker-model activation and timestamp overlap assignment.src/aura/llm/andsrc/summary/own local summary runtime, field schemas, validation, and deterministic rendering.src/aura/review.pyowns transcript states, revisions, review events, and summary invalidation.src/aura/evidence_search.pyowns rebuildable cross-meeting retrieval.src/aura/system/owns platform facts and readiness checks shared by the UI and command-line diagnostics.src/aura/ui/owns presentation, signals, and operator interaction.
The architecture rule is simple: behavior that can be verified independently from Qt belongs in a service module with a focused regression check.
Every recording or import receives one meeting_id. The corresponding
session.json acts as the artifact locator for audio, transcript segments,
summary claims, review events, and exported files. Each downstream stage reuses
the same identity.
The capture loop appends PCM frames to .capture/ journals for the mixed
stream and each active source. Final WAV files are reconstructed from these
journals. Delivery formats such as M4A and MP3 are produced from the preserved
audio source, while the mixed WAV anchors transcript review and timestamp
playback.
Live recognition supports operator awareness through provisional text. The durable audio pass creates final timestamped segments. Human edits and confirmation create revision-aware review events. Confidence, speaker assignment, and overlap signals help operators prioritize attention.
The structured summary records decisions and action items as claims with source segment IDs. Each claim carries support and review state. Transcript revisions activate a fresh summary evidence identity so confirmation always maps to the current source.
Canonical session artifacts remain the source of truth. aura-evidence rebuild
creates an atomic SQLite FTS5 derivative for fast local search. Query commands
open the index in read-only mode, and index replacement begins after schema and
version validation.
The current tool surface focuses on review and retrieval:
- meeting search;
- segment search;
- audio-span lookup;
- confirmed action retrieval.
External action connectors form a separately activated work package after a real consumer, repeated operational demand, item-level approval, and audit evidence establish the value.
- Open Settings and select the capture source, output policy, meeting distance mode, denoise profile, speaker labeling, and summary options.
- Run First Launch Check to confirm GPU, CUDA, FFmpeg, audio devices, output capacity, ASR model, and local summary readiness.
- Complete the meeting notice and consent confirmation.
- Select Start Recording for live capture or Import Media for file transcription.
- Follow waveform, status, transcript, progress, and activity feedback in the primary workspace.
- Review timestamped segments, correct text, rename speakers, and open source audio spans.
- Select Summarize Transcript or activate the post-ASR summary option.
- Review source-linked decisions and actions, then export the required transcript and evidence formats.
- Select Open Output Folder to inspect the complete session package.
Figure 2. The Settings panel groups audio preparation, capture policy, scheduling, local summary, output location, model controls, and Runtime Diagnostics so operators can activate each capability from one workspace.
Runtime Diagnostics reports:
- GPU identity and CUDA runtime readiness;
- ASR model load state and compute type;
- FFmpeg availability;
- input and output audio devices;
- selected output path and available disk capacity;
- local Ollama command, server, and model-tag readiness;
- speaker-diarization token readiness when that feature is selected.
The First Launch Check pairs each activation gate with focused setup guidance, report copy, setup-folder access, and retry actions.
Figure 3. Track Splitter presents the complete source-to-output sequence and keeps duration targets, tolerance, progress, and processing details visible during long media jobs.
The Track Splitter workflow:
- Select an audio or video source.
- Select the output directory.
- Set the target segment length and tolerance.
- Start processing.
- Review ordered chunks created near natural pauses.
- Ubuntu 22.04 or 24.04 desktop
- Python 3.10 or newer
- NVIDIA RTX GPU with an activated CUDA runtime
- PulseAudio or PipeWire with PulseAudio compatibility
- FFmpeg, PortAudio development headers, and Python development headers
uvfor the repository Make targets
Install system packages:
sudo apt-get update
sudo apt-get install -y ffmpeg portaudio19-dev python3-devThe standard profile includes the application and the model-backed Traditional Chinese punctuation path:
make setup-app
uv run aurapyproject.toml and uv.lock form the dependency contract for local setup,
CI, and release builds.
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e ".[punctuation]"
auraThe package exposes three entry points:
auraproject-auraaura-evidence
make setup-devThis profile installs every declared optional dependency group for development, testing, evaluation, diarization, punctuation, and model research.
Install Ollama, activate the local service, and pull the supported model:
ollama pull gemma4:e4b-it-qatAURA verifies http://localhost:11434/api/tags, starts the local service when
the command is available, checks the exact model tag, and presents model-pull
actions through the desktop UI.
python -m pip install -e ".[diarization]"
export HUGGINGFACE_TOKEN=hf_your_token_hereAccept the Hugging Face terms for
pyannote/speaker-diarization-community-1, then provide
HUGGINGFACE_TOKEN, HF_TOKEN, or an AURA_HF_TOKEN_FILE path through the
local secret environment.
| Setting | Default |
|---|---|
| Sample rate | 16000 Hz |
| Audio frame | 30 ms / 480 samples |
| WebRTC VAD level | 3 |
| ASR model | SoybeanMilk/faster-whisper-Breeze-ASR-25 |
| ASR device | cuda |
| ASR compute type | int8 |
| ASR beam size | 5 |
| Language | zh |
| Target volume | -20 dBFS |
| Live capture source | System audio and microphone |
| Live maximum segment | 16.0 seconds |
| Live energy gate | 1000.0 RMS |
| Recording delivery format | M4A / AAC-LC 96k |
| Meeting distance mode | off |
| Denoise preset | off |
| Speaker diarization | Operator-activated; imported media; 2-6 speakers |
| Traditional Chinese punctuation | Active |
| Local summary | Operator-activated |
| Splitter target | 40 minutes |
| Splitter tolerance | 5 minutes |
| Variable | Purpose |
|---|---|
AURA_RUNTIME_DIR |
Location for transient normalized WAV files and live transcript backup |
AURA_AUDIT_DIR |
Local audit-event directory |
AURA_AUDIT_ENABLED |
Audit-event activation control |
AURA_AUDIT_RETENTION_DAYS |
Local audit retention period; default 90 days |
HUGGINGFACE_TOKEN / HF_TOKEN |
Speaker-diarization model access |
AURA_HF_TOKEN_FILE |
Local file path that supplies the diarization token |
AURA_CLEARVOICE_PYTHON |
Python runtime for the separately activated ClearVoice evaluation path |
The default transient runtime directory is:
/tmp/project_aura/
Set a dedicated path when the runtime needs a different temporary storage location:
export AURA_RUNTIME_DIR=/path/to/runtimeAURA ASR runs on the CUDA execution contract. The settings layer, model loader, file pipeline, live queue, runtime report, and smoke scripts share the same device requirement. Runtime activation stops at a clear product-facing gate when CUDA libraries or the ASR model require attention.
The file-transcription prompt guides the recognizer toward a professional Traditional Chinese meeting record with full-width punctuation that follows the speaker's tone. The Settings panel provides an editable prompt for each workflow.
- Capture source choices include system audio, microphone, and a mixed stream.
- PulseAudio/PipeWire discovery resolves the default sink monitor and microphone source.
- Active-source RMS balancing applies bounded gain and mix headroom.
- The live queue records segment duration, ASR elapsed time, real-time factor, queue size, and backlog.
- The inactivity safeguard closes a live recording after 20 continuous minutes of speech inactivity and trims the trailing inactive frames.
- Recorded delivery audio uses M4A/AAC by default, with MP3 as an available compatibility format.
The punctuation layer recognizes Traditional Chinese transcript content and
applies readable full-width punctuation. The model-backed path uses
p208p2002/zh-wiki-punctuation-restore. The deterministic preparation path
normalizes punctuation width, spacing, duplicates, and sentence endings.
Glossary correction runs after ASR and before summary generation. RapidFuzz
matches terms against config/domain_glossary.yaml with category-specific
confidence thresholds. Each accepted change appears in the correction log,
while raw ASR text remains available for comparison.
Speaker diarization is an imported-media capability. The pipeline:
- prepares the source audio;
- runs Breeze ASR;
- runs
pyannote/speaker-diarization-community-1; - maps each transcript segment to the speaker turn with the greatest timestamp overlap;
- emits labels such as
SPEAKER_00andSPEAKER_01; - presents speaker labels for operator review and meeting-wide renaming.
Equal minimum and maximum speaker counts activate an exact speaker count. Different values activate the configured speaker range.
The summary pipeline receives the corrected transcript associated with the current session. Its source of truth is structured JSON. Deterministic Markdown rendering creates stable meeting notes for review, GitHub, Notion, Google Docs, and email handoff.
The direct script path supports repeatable summary generation:
PYTHONPATH=src uv run python scripts/generate_meeting_summary.py \
--transcript path/to/meeting_corrected.txt \
--output-md reports/meeting_summary.md \
--output-json reports/meeting_summary.jsonThe validated generation contract is:
| Parameter | Value |
|---|---|
| Base model | google/gemma-4-E4B-it |
| Ollama model tag | gemma4:e4b-it-qat |
| Endpoint | Local /api/chat |
| Reasoning | think=true |
| Context window | 32768 |
| Generation budget | 1536 |
| Temperature | 0 |
| Server parallelism | 1 |
vLLM is the next throughput candidate. Its implementation gate opens when paired measurements demonstrate sustained concurrent demand or an agreed queue-time, latency, throughput, or VRAM advantage.
The desktop UI offers four meeting-distance policies:
off: direct capture and preparation;normal: lightweight meeting-room preparation;far-speaker: stronger VAD bridging, bounded segment gain, and the medium preparation floor;rescue-offline: an imported-media evaluation path for ClearVoice or ClearerVoice.
The built-in denoise presets are off, light, and medium. Short buffers use
adaptive FFT and hop sizes. Silent buffers remain intact. DeepFilterNet3 and
ClearVoice stay in separate environments so the primary NumPy 2 application
contract remains stable.
Promotion of a new default begins with a fixed, reference-backed far-field
corpus and measured transcript quality. See
docs/denoise_upgrade_plan.md.
The runtime report centralizes platform facts for command-line tools, ASR activation guidance, and the desktop UI. The local audit system records content-free lifecycle, UI, model, recording, import, summary, splitter, and diagnostic events.
Audit stewardship includes:
- transcript, summary, audio, prompt, credential, and path redaction;
- stable lowercase event identifiers;
- per-session sequence numbers;
- SHA-256 hash-chain integrity;
- owner-focused local permissions;
- configurable retention;
- Markdown and JSON analysis reports;
- workflow completion, latency, repeated-action, and anomaly review signals.
Canonical design:
docs/audit-event-system-design.md.
Track Splitter decodes the source through FFmpeg/pydub, locates silence near the configured target duration, exports ordered chunks, and reports progress. MP3 exports reuse the source bitrate when the media metadata provides it.
Settings provides three output policies:
- Same folder as source/recording keeps artifacts beside the selected source or recording package.
- Project outputs/transcripts folder stores artifacts under
outputs/transcripts/. - Custom folder sends session artifacts to an operator-selected location.
A completed workflow can contain a canonical session directory:
{base}_session/
├── session.json
├── .capture/
│ ├── mixed.pcm
│ ├── system.pcm
│ └── microphone.pcm
├── {recording}.wav
├── {recording}_system.wav
├── {recording}_microphone.wav
├── prepared_transcript.json
├── segments.json
├── summary.json
└── review_events.jsonl
Operator-facing transcript and telemetry artifacts remain beside the session directory under the selected output policy:
{base}_raw.txt
{base}_corrected.txt
{base}_summary.txt
{base}_final.txt
{base}_correction_log.json
{base}_processing_metrics.json
{base}_event_log.json
{base}_runtime.log
review exports in JSON, Markdown, SRT, or VTT
The exact set reflects the selected capture sources and activated processing
features. session.json records the authoritative artifact locators.
aura-evidence rebuild outputs/transcripts outputs/aura-evidence.sqlite3
aura-evidence search-meetings outputs/aura-evidence.sqlite3 "acceptance"
aura-evidence search-segments outputs/aura-evidence.sqlite3 "organization name"
aura-evidence confirmed-actions outputs/aura-evidence.sqlite3The rebuild command writes an atomic derivative from canonical session artifacts. Meeting, segment, and confirmed-action queries use read-only index connections.
| Evidence layer | Result |
|---|---|
| Regression suite | 398 tests pass for the v1.15.0 runtime correction |
| AURA ASR live minimum | 10 real CUDA/int8 transcriptions over five public Common Voice 24 zh-TW clips |
| Paired ASR runtime | AURA Breeze ASR 25 and Meetily Breeze ASR 26 each classify as valid_target_runtime |
| Local LLM live minimum | 12 real calls, including one complete nine-field product pipeline |
| LLM schema validity | 9 of 9 final product fields pass schema validation |
| CI | Ubuntu compile/unit checks and Windows hosted smoke and packaging checks |
artifacts/asr-benchmark/2026-07-13-common-voice24-minimum/
contains:
- five public Common Voice 24 zh-TW clips with reference text;
- 20 real transcriptions across the paired AURA and Meetily paths;
- request summaries and run configuration;
- event traces and error logs;
- GPU telemetry;
- latency analysis;
- runtime validity classification;
- source manifest and final decision report.
The clean-speech minimum validates the paired GPU execution contract. Long-form, far-field, overlapping, and noisy meeting speech form the next comparison layer.
Audit event:
docs/audit-events/2026-07-14-gpu-only-asr-live-benchmark/audit-event.md.
artifacts/llm-runtime/2026-07-23-ollama-gemma4-e4b-qat-minimum/
contains:
- the exact Ollama and model configuration;
- 12 real model requests;
- a complete nine-field AURA summary run;
- request summaries and event traces;
- GPU telemetry with AURA ASR resident;
- schema and runtime validity reports;
- latency, analysis, source manifest, and final product decision.
This packet validates local execution, reasoning/content separation, structured completion, and shared-GPU operation. The paired reviewed corpus adds product-quality and human-effort evidence.
make checkThis command compiles source and tests, then runs the standard-library regression suite.
Equivalent commands:
PYTHONPATH=src python -m unittest discover -s tests
python -m compileall src testsPYTHONPATH=src python -m unittest -q \
tests.test_versioning \
tests.test_bump_versionThe regression suite covers:
- file import preparation, formatting, cleanup, queueing, and cancellation;
- durable recording journals, checkpoints, recovery, and partial audio preservation;
- session identity, transcript revisions, review events, and stale-summary invalidation;
- source-linked decisions, actions, claim review, and confirmed-action search;
- SQLite schema validation, atomic rebuild, read-only queries, and path containment;
- CUDA activation, model loading, runtime diagnostics, and report formatting;
- live capture source discovery, RMS mixing, VAD, inactivity safeguards, and telemetry;
- M4A and MP3 export, normalization, limiter behavior, and FFmpeg progress;
- punctuation, glossary correction, correction logs, and artifact naming;
- speaker diarization timestamps and speaker-count policy;
- local Gemma prompts, schemas, reasoning contract, output validation, and UI runtime integration;
- denoise presets, meeting-distance modes, and evaluation gates;
- scheduled recording calculations;
- Track Splitter selection, ordering, export, and progress;
- audit redaction, integrity, retention, reporting, and workflow analysis;
- Windows-hosted setup, packaging layout, and RTX smoke contracts.
make buildThe build uses uv build to produce a source distribution and wheel from the
package metadata.
- Install or update the NVIDIA driver.
- Extract
aura-windows-portable-v<version>.zip. - Run
Check-AURA.bat. - Review
diagnostic_report.txt. - Run
Start-AURA.bat.
The wrappers prepare .venv, install dependencies, verify FFmpeg and NVIDIA
visibility, run the shared RTX/CUDA diagnostics, and launch the same PyQt6
application used by Linux.
nvidia-smi
python scripts/runtime_report.py
python scripts/windows_gpu_smoke.py
python scripts/windows_asr_artifact_smoke.pyThe Windows path includes:
- hosted GitHub Actions for compile, unit, PyQt import, runtime report, and portable packaging;
- a gated self-hosted RTX lane for real model-load and ASR artifact smoke;
- root-level PowerShell and batch entry points;
- a versioned portable ZIP builder;
- platform-specific setup and activation guidance.
Detailed guides:
Project AURA uses semantic versioning. Package versions use
MAJOR.MINOR.PATCH; Git tags and GitHub Releases use vMAJOR.MINOR.PATCH.
Prepare a version:
make bump-version BUMP=patch RELEASE_DATE=YYYY-MM-DD
make check
make buildThe version helper synchronizes:
pyproject.toml;src/aura/metadata.py;uv.lock;- the README
Refactor Versionrow; - the README
Next Release Candidaterow; - the README
Latest Updateheading.
Latest Published Tag records the release tag that currently exists. The
candidate row records the package version preparing for its next annotated tag
and GitHub Release.
The complete release contract is documented in
docs/versioning.md.
- Keep ASR compute type at
int8. - Close other GPU-intensive applications before long recordings.
- Use Runtime Diagnostics to review device state and model readiness.
- AURA releases model references and clears available CUDA cache during lifecycle cleanup.
- Run
nvidia-smi. - Run
python scripts/runtime_report.py. - Confirm CUDA, cuBLAS, cuDNN,
ctranslate2, andfaster-whisperreadiness. - Refresh the environment with
uv syncafter dependency updates.
- Confirm microphone and output devices in system settings.
- Confirm the PulseAudio/PipeWire compatibility service.
- Inspect sources with:
pactl info
pactl list short sources- Runtime status and event logs record the selected source and active capture path.
- Confirm
ollamais available onPATH. - Confirm the loopback service at
http://localhost:11434. - Confirm the exact model tag:
ollama list
ollama pull gemma4:e4b-it-qat- Retry First Launch Check after the service and model become ready.
- Install the
diarizationextra. - Accept the model terms for
pyannote/speaker-diarization-community-1. - Provide
HUGGINGFACE_TOKEN,HF_TOKEN, orAURA_HF_TOKEN_FILE. - Run Runtime Diagnostics to confirm token and model readiness.
- Keep FFmpeg visible on
PATH. - Select an output location with at least 1 GiB of available capacity.
- Use Track Splitter for delivery-sized media chunks.
- Review processing metrics for normalization stages, elapsed time, and export paths.
| Document | Purpose |
|---|---|
docs/architecture_decisions.md |
Module ownership, GPU execution, session identity, evidence, output, and platform decisions |
docs/aura-llm-agent-product-strategy.md |
Product positioning, public pain evidence, local summary strategy, and Agent activation gates |
docs/audit-event-system-design.md |
Audit schema, privacy, integrity, retention, analysis, and operator controls |
docs/asr_postprocess_fuzzy_glossary.md |
Glossary correction thresholds, artifacts, and validation path |
docs/denoise_upgrade_plan.md |
Far-field corpus, denoise candidates, evaluation metrics, and promotion gate |
docs/first-principles-aura-meetily-review.md |
Cross-repository product ownership and capability migration evidence |
docs/refactor_plan.md |
Refactor phases, module boundaries, and acceptance checks |
docs/versioning.md |
Semantic version synchronization, checks, builds, tags, and releases |
docs/windows_setup.md |
Windows environment preparation and RTX validation |
docs/windows_native_roadmap.md |
Windows runtime and portable release direction |
docs/windows_known_issues.md |
Platform activation guidance and tracked validation layers |
- Application source, tests, small stable fixtures, documentation, and public evidence packets belong in version control.
- Private recordings and transcripts belong in the operator-selected output
location,
outputs/, or a dedicated data repository. tests/fixtures/carries small, stable samples that directly support regression checks.artifacts/carries public, source-described, reproducible runtime evidence..record/, local virtual environments, build products, transient runtime files, and private operator data stay within their designated local storage.- Audit events remain content-free and apply redaction, local permissions, retention, and integrity controls.
- Credentials remain in local environment or secret-store paths.
Project AURA is available under the MIT License.
Copyright (c) 2026 Jason Chia-Sheng Lin.


