Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
smoke
command
|
|
|
internal
|
|
|
log
Package log handles the basics of configuring the global slog *Logger.
|
Package log handles the basics of configuring the global slog *Logger. |
|
pkg
|
|
|
commands
Package commands handles "/" commands entered by the user in the prompt box.
|
Package commands handles "/" commands entered by the user in the prompt box. |
|
commands/handlers/edit
Package edit contains a prompt command that opens all or part of the conversation history in $EDITOR
|
Package edit contains a prompt command that opens all or part of the conversation history in $EDITOR |
|
commands/handlers/exit
Package exit contains a prompt command that simply exits the program.
|
Package exit contains a prompt command that simply exits the program. |
|
commands/handlers/export
Package export contains a prompt command that saves the current session to a file in JSON format that can be used with the 'load' command.
|
Package export contains a prompt command that saves the current session to a file in JSON format that can be used with the 'load' command. |
|
commands/handlers/help
Package help contains a prompt command that displays help for all available commands.
|
Package help contains a prompt command that displays help for all available commands. |
|
commands/handlers/info
Package info contains a prompt command that displays information about the current session.
|
Package info contains a prompt command that displays information about the current session. |
|
commands/handlers/load
Package load contains a prompt command that loads a session from a JSON file and replaces the current session with it.
|
Package load contains a prompt command that loads a session from a JSON file and replaces the current session with it. |
|
commands/handlers/mode
Package review contains a prompt command that asks the model to review the code referenced by the user for red flags
|
Package review contains a prompt command that asks the model to review the code referenced by the user for red flags |
|
commands/handlers/rank
Package rank contains a prompt command to rank arbitrary large lists through iteration.
|
Package rank contains a prompt command to rank arbitrary large lists through iteration. |
|
commands/handlers/run
Package run contains a prompt command that runs a tool with user-specified arguments.
|
Package run contains a prompt command that runs a tool with user-specified arguments. |
|
commands/handlers/save
Package save contains a prompt command that saves the current session to a Markdown file
|
Package save contains a prompt command that saves the current session to a Markdown file |
|
commands/handlers/session
Package session contains a prompt command that allows the user to modify the current session: - with the argument "new", it will start a new session without wiping the visible history - with the argument "clear", it will start a new session and wipe the visible history
|
Package session contains a prompt command that allows the user to modify the current session: - with the argument "new", it will start a new session without wiping the visible history - with the argument "clear", it will start a new session and wipe the visible history |
|
commands/handlers/summarize
Package summarize contains a prompt command that asks the LLM to summarize all or a subset of the message history and causes the history to be updated in the UI
|
Package summarize contains a prompt command that asks the LLM to summarize all or a subset of the message history and causes the history to be updated in the UI |
|
llms
Package llms contains generalized functions and types for interacting with different LLM providers.
|
Package llms contains generalized functions and types for interacting with different LLM providers. |
|
models/banner
Package banner contains a Bubbletea model that renders an ASCII art banner for the application for use in the history viewport.
|
Package banner contains a Bubbletea model that renders an ASCII art banner for the application for use in the history viewport. |
|
models/history
Package history contains a Bubbletea model for holding onto LLM chat history and other items like errors, tool calls, prompt commands, etc.
|
Package history contains a Bubbletea model for holding onto LLM chat history and other items like errors, tool calls, prompt commands, etc. |
|
models/input
Package input contains a Bubbletea model to allow the user to enter 1) user messages for the LLM, and 2) prompt commands that may work with the session, exit the program, etc.
|
Package input contains a Bubbletea model to allow the user to enter 1) user messages for the LLM, and 2) prompt commands that may work with the session, exit the program, etc. |
|
models/ui
Package ui contains a Bubbletea model that wraps other models like history.Model and input.Model, as well as the *smoke.Smoke struct that contains and modifies application state.
|
Package ui contains a Bubbletea model that wraps other models like history.Model and input.Model, as well as the *smoke.Smoke struct that contains and modifies application state. |
|
prompts
Package prompts contains prompts used to interact with the LLMs, such as the overall system prompt that describes how the model should respond to questions or requests for code changes.
|
Package prompts contains prompts used to interact with the LLMs, such as the overall system prompt that describes how the model should respond to questions or requests for code changes. |
|
providers/chatgpt
Package chatgpt contains an implementation of llms.LLM for OpenAI's ChatGPT.
|
Package chatgpt contains an implementation of llms.LLM for OpenAI's ChatGPT. |
|
providers/claude
Package claude contains an implementation of llms.LLM for Anthropic's Claude.
|
Package claude contains an implementation of llms.LLM for Anthropic's Claude. |
|
smoke
Package smoke orchestrates the overall interactions with LLMs, session management, tool execution, prompt command execution, etc.
|
Package smoke orchestrates the overall interactions with LLMs, session management, tool execution, prompt command execution, etc. |
|
tools
Package tools contains the Tool interface definition, as well as individual Tool implementations such as [ReadFileTool].
|
Package tools contains the Tool interface definition, as well as individual Tool implementations such as [ReadFileTool]. |
Click to show internal directories.
Click to hide internal directories.