Project system
LLMDog
Terminal UI for selecting code context and turning it into LLM-ready Markdown.
What it does
LLMDog uses Bubble Tea and Lip Gloss to browse project files, respect gitignore rules, preview content, and copy a structured Markdown bundle to the clipboard.
System map
- 1
Local Repo
Files, folders, .gitignore
- 2
Git Rules
Skip noise and ignored paths
- 3
Bubble Tea TUI
Navigate, filter, preview, select
- 4
Selection Model
Chosen files and folders
- 5
Markdown Pack
Tree plus code blocks
Local Repo
Files, folders, .gitignore
Codebase read
- The command enters a full-screen Bubble Tea model instead of dumping flags at the user.
- File selection understands directories, selected state, gitignored files, filtering, preview, and content matches.
- The output is intentionally Markdown-shaped so LLMs receive a tree plus file contents in a predictable format.
Key snippet
p := tea.NewProgram(model.New(), tea.WithAltScreen())
if err := p.Start(); err != nil {
log.Fatal("Error running program:", err)
}Tech used
GoBubble TeaLip GlossBubblesClipboardGitignore parsing
Source paths inspected
cmd/llmdog/main.gointernal/modelinternal/uiinternal/git