Talk with your code.
Chunky is a .NET MAUI app with a Blazor UI for voice-first repository workflows. It connects to OpenAI Realtime, presents the experience through a TARS-inspired interface and personality, and can enrich prompts with live GitHub repository context such as recent commits, open pull requests, and pull request details.
- docs/README.md for the documentation index.
- docs/setup.md for local environment setup and first run.
- docs/architecture.md for service boundaries, runtime flows, and architecture diagrams.
- docs/knowledge/voice-assistant-personality.md for the TARS-style assistant behavior.
- docs/design/Design System.md for the visual system behind the current UI.
- Runs as a cross-platform .NET MAUI application with a Blazor WebView UI.
- Uses OpenAI Realtime as the only live voice backend.
- Lets you start a live conversation or send typed prompts from the home screen.
- Wraps the conversation experience in a TARS-inspired tone and industrial UI language.
- Pulls live GitHub repository context into prompts when the request looks like a PR, review, or commit question.
- Exposes GitHub tools to the OpenAI realtime agent so the model can fetch repository facts instead of guessing.
- Monitors GitHub pull requests in the background and raises native notifications when enabled.
Chunky sits between the developer, the OpenAI realtime agent, and GitHub repository data. The app handles the conversation experience, forwards requests to the realtime backend, and pulls in live repository context when needed.
flowchart TD
U[Developer] --> C[Chunky app]
C --> A[AI voice agent<br>OpenAI Realtime]
C --> G[GitHub repository context]
G --> GH[GitHub API]
C --> N[Optional PR notifications]
N --> U
- The user opens the home page and starts a session.
- The UI calls
IVoiceAgentService. VoiceAgentServiceconnects to OpenAI Realtime.- Audio and tool calls are handled locally in the app.
- Runtime state updates flow back to the UI for connection status, transcripts, and responses.
- The user asks about a PR, review, repo, or commit.
VoiceAgentServicedetects a GitHub-oriented request.GitHubRepositoryServicefetches live repository summary, commits, and PR data.- Chunky prepends that context to the user prompt, or exposes tools for the realtime agent to call directly.
- The agent answers using current repository data instead of static model knowledge.
- The user enables GitHub repository monitoring in Settings.
GitHubPullRequestMonitorruns as a hosted background service.- It polls the configured repository for new pull requests.
- New PRs are surfaced through
PlatformNotificationService.
Chunky/
Components/ Blazor pages and layout
Platforms/ Android, iOS, MacCatalyst, Windows platform heads
Services/ MAUI app services, OpenAI voice runtime, and platform integrations
Resources/ Fonts, images, splash screen, raw assets
wwwroot/ Blazor static assets
Chunky.Core/
Models/ Shared agent and GitHub models
Services/ Shared GitHub logic, monitoring, tool dispatch
Chunky reads settings from:
Chunky/appsettings.jsonChunky/appsettings.Local.jsonif present- MAUI
Preferencesfor user-saved settings from the UI
OpenAI Realtime configuration requires:
- API key
- Realtime model
- Voice
- Optional custom instructions
GitHub settings support:
- API base URL for GitHub.com or GitHub Enterprise
- Owner or organization
- Repository name
- Preferred branch override
- Optional personal access token
- Background PR notifications and polling interval
- .NET SDK
10.0.104as pinned inglobal.json - .NET MAUI workload
- A supported target platform toolchain
- OpenAI Realtime API key
dotnet workload install maui
dotnet restore Chunky.slnx
dotnet build Chunky.slnxdotnet build Chunky/Chunky.csproj -t:Run -f net10.0-windows10.0.19041.0- The Blazor home page is the conversation surface.
- The settings page manages OpenAI realtime and GitHub repository configuration.
- The voice runtime is single-provider: OpenAI Realtime only.
- OpenAI Realtime can call GitHub tools during a live session.
- Repository context is injected only when the prompt analysis indicates the user is asking about GitHub state.
- The app voice and visual presentation are both intentionally modeled on TARS.
Chunky is built around a simple idea: use voice as a practical interface for day-to-day repository awareness, especially around pull requests, commits, and next actions, without diluting the product behind multiple provider paths or a generic assistant persona.