SYMBOL INDEX (99 symbols across 18 files) FILE: chat_loop.go function chatLoop (line 17) | func chatLoop(cfg config.Config) { FILE: command.go type slashCommandResult (line 10) | type slashCommandResult struct type slashCommand (line 28) | type slashCommand struct function helpCommand (line 79) | func helpCommand(string) (bool, *slashCommandResult) { function parseSlashCommand (line 90) | func parseSlashCommand(input string) (ok bool, result *slashCommandResul... type example (line 117) | type example struct function exampleCommand (line 144) | func exampleCommand(args string) (bool, *slashCommandResult) { FILE: config/config.go type Config (line 3) | type Config struct method OpenAIAPIModel (line 20) | func (c Config) OpenAIAPIModel() string { method OpenAIAPIKey (line 24) | func (c Config) OpenAIAPIKey() string { method IsSupervisedMode (line 28) | func (c Config) IsSupervisedMode() bool { method IsDebugMode (line 32) | func (c Config) IsDebugMode() bool { method WithOpenAIAPIKey (line 36) | func (c Config) WithOpenAIAPIKey(apiKey string) Config { method WithSupervisedMode (line 41) | func (c Config) WithSupervisedMode(supervisedMode bool) Config { method WithDebugMode (line 46) | func (c Config) WithDebugMode(debugMode bool) Config { method WithOpenAIAPIModel (line 51) | func (c Config) WithOpenAIAPIModel(apiModel string) Config { function New (line 11) | func New() Config { FILE: conversation.go constant openingPrompt (line 44) | openingPrompt = `Hello! Please familiarise yourself with the commands yo... function intervalPrompt (line 48) | func intervalPrompt() string { function appendMessage (line 56) | func appendMessage(role string, message string) { function resetConversation (line 63) | func resetConversation() { FILE: main.go function init (line 20) | func init() { function main (line 83) | func main() { FILE: module/memory/memory.go type memory (line 12) | type memory struct type Module (line 17) | type Module struct method ID (line 23) | func (m *Module) ID() string { method Load (line 27) | func (m *Module) Load(cfg config.Config, client *openai.Client) error { method UpdateConfig (line 33) | func (m *Module) UpdateConfig(cfg config.Config) { method Execute (line 37) | func (m *Module) Execute(args, body string) (string, error) { method Prompt (line 48) | func (m *Module) Prompt() string { constant memoryPrompt (line 52) | memoryPrompt = `You also have a working long term memory. FILE: module/memory/recall.go method Recall (line 11) | func (m *Module) Recall(input string) (string, error) { FILE: module/memory/storage.go method loadFromFile (line 9) | func (m *Module) loadFromFile() error { method writeToFile (line 28) | func (m *Module) writeToFile() error { method appendMemory (line 41) | func (m *Module) appendMemory(mem memory) error { FILE: module/memory/store.go method Store (line 8) | func (m *Module) Store(input string) (string, error) { FILE: module/module.go type Module (line 12) | type Module interface type IntervalPrompt (line 21) | type IntervalPrompt interface function Load (line 27) | func Load(cfg config.Config, client *openai.Client, modules ...Module) e... function UpdateConfig (line 41) | func UpdateConfig(cfg config.Config) { function IsLoaded (line 53) | func IsLoaded(id string) bool { function LoadPlugin (line 58) | func LoadPlugin(m Module) error { type CommandResult (line 66) | type CommandResult struct function HelpCommand (line 71) | func HelpCommand() (bool, *CommandResult) { function ExecuteCommand (line 86) | func ExecuteCommand(command, args, body string) (bool, *CommandResult) { FILE: module/plugin.go type Plugin (line 15) | type Plugin interface type pluginLoader (line 21) | type pluginLoader struct method Load (line 25) | func (p pluginLoader) Load(config.Config, *openai.Client) error { method UpdateConfig (line 28) | func (p pluginLoader) UpdateConfig(config.Config) {} method ID (line 29) | func (p pluginLoader) ID() string { method Prompt (line 32) | func (p pluginLoader) Prompt() string { method Execute (line 35) | func (p pluginLoader) Execute(args, body string) (string, error) { function GetModuleForPlugin (line 57) | func GetModuleForPlugin(p Plugin) Module { function LoadCompiledPlugins (line 61) | func LoadCompiledPlugins() error { function OpenPlugin (line 95) | func OpenPlugin(path string) (Plugin, error) { FILE: module/plugin/create.go function CheckPaths (line 27) | func CheckPaths() error { type Module (line 47) | type Module struct method Load (line 52) | func (m *Module) Load(cfg config.Config, client *openai.Client) error { method UpdateConfig (line 63) | func (m *Module) UpdateConfig(cfg config.Config) { method Prompt (line 67) | func (m *Module) Prompt() string { method ID (line 71) | func (m *Module) ID() string { method Execute (line 75) | func (m *Module) Execute(args, body string) (string, error) { method createPlugin (line 90) | func (m *Module) createPlugin(id, body string) (string, error) { FILE: parser/cmd/main.go function main (line 9) | func main() { function indent (line 43) | func indent(input string, prefix string) string { FILE: parser/parser.go type ParseResult (line 5) | type ParseResult struct type ParseCommand (line 10) | type ParseCommand struct method String (line 16) | func (p ParseCommand) String() string { function Parse (line 27) | func Parse(input string) ParseResult { type TokenType (line 32) | type TokenType constant Plaintext (line 35) | Plaintext TokenType = "Plaintext" constant Newline (line 36) | Newline = "Newline" constant Command (line 37) | Command = "Command" constant Body (line 38) | Body = "Body" type Token (line 41) | type Token struct function ParseTokens (line 46) | func ParseTokens(tokens []Token) ParseResult { function Lex (line 109) | func Lex(input string) []Token { FILE: parser/parser_test.go function TestParse (line 8) | func TestParse(t *testing.T) { FILE: ui/theme.go function init (line 12) | func init() { type Theme (line 20) | type Theme struct FILE: ui/ui.go constant User (line 11) | User = "USER" constant AI (line 12) | AI = "AI" constant System (line 13) | System = "SYSTEM" constant Tool (line 14) | Tool = "TOOL" constant API (line 15) | API = "API" constant Module (line 16) | Module = "MODULE" constant App (line 17) | App = "APP" function Error (line 20) | func Error(message string, err error) { function Warn (line 25) | func Warn(message string) { function Info (line 30) | func Info(message string) { function Welcome (line 35) | func Welcome(title, message string) { function PrintChatDebug (line 40) | func PrintChatDebug(name, message string) { function PrintChat (line 45) | func PrintChat(name, message string) { function PromptChatInput (line 70) | func PromptChatInput() string { function PromptConfirm (line 80) | func PromptConfirm(prompt string) bool { function PromptInput (line 90) | func PromptInput(prompt string) string { function indent (line 98) | func indent(input string) string { FILE: util/strings.go constant SingleQuote (line 3) | SingleQuote = "`" constant TripleQuote (line 4) | TripleQuote = "```"