diff --git a/README.md b/README.md index c44fa99..4e7869e 100644 --- a/README.md +++ b/README.md @@ -86,7 +86,7 @@ Access your agents at `http://localhost:3000` | `LOCALAGENT_MODEL` | Your go-to model | | `LOCALAGENT_MULTIMODAL_MODEL` | Optional model for multimodal capabilities | | `LOCALAGENT_LLM_API_URL` | OpenAI-compatible API server URL | -| `LOCALAGENT_API_KEY` | API authentication | +| `LOCALAGENT_LLM_API_KEY` | API authentication | | `LOCALAGENT_TIMEOUT` | Request timeout settings | | `LOCALAGENT_STATE_DIR` | Where state gets stored | | `LOCALAGENT_LOCALRAG_URL` | LocalRAG connection | diff --git a/docker-compose.gpu.yaml b/docker-compose.gpu.yaml index 19769a3..6f3a3c2 100644 --- a/docker-compose.gpu.yaml +++ b/docker-compose.gpu.yaml @@ -67,7 +67,7 @@ services: environment: - LOCALAGENT_MODEL=mlabonne_gemma-3-27b-it-abliterated - LOCALAGENT_LLM_API_URL=http://localai:8080 - - LOCALAGENT_API_KEY=sk-1234567890 + - LOCALAGENT_LLM_API_KEY=sk-1234567890 - LOCALAGENT_LOCALRAG_URL=http://ragserver:8080 - LOCALAGENT_STATE_DIR=/pool - LOCALAGENT_TIMEOUT=5m diff --git a/docker-compose.yaml b/docker-compose.yaml index 9e9f181..1ff59e0 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -65,7 +65,7 @@ services: environment: - LOCALAGENT_MODEL=arcee-agent - LOCALAGENT_LLM_API_URL=http://localai:8080 - - LOCALAGENT_API_KEY=sk-1234567890 + - LOCALAGENT_LLM_API_KEY=sk-1234567890 - LOCALAGENT_LOCALRAG_URL=http://ragserver:8080 - LOCALAGENT_STATE_DIR=/pool - LOCALAGENT_TIMEOUT=5m diff --git a/main.go b/main.go index bb6412a..dcf59cf 100644 --- a/main.go +++ b/main.go @@ -14,7 +14,7 @@ import ( var testModel = os.Getenv("LOCALAGENT_MODEL") var multimodalModel = os.Getenv("LOCALAGENT_MULTIMODAL_MODEL") var apiURL = os.Getenv("LOCALAGENT_LLM_API_URL") -var apiKey = os.Getenv("LOCALAGENT_API_KEY") +var apiKey = os.Getenv("LOCALAGENT_LLM_API_KEY") var timeout = os.Getenv("LOCALAGENT_TIMEOUT") var stateDir = os.Getenv("LOCALAGENT_STATE_DIR") var localRAG = os.Getenv("LOCALAGENT_LOCALRAG_URL") diff --git a/services/actions/callagents.go b/services/actions/callagents.go index ed9ea97..97746d7 100644 --- a/services/actions/callagents.go +++ b/services/actions/callagents.go @@ -53,7 +53,34 @@ func (a *CallAgentAction) Run(ctx context.Context, params types.ActionParams) (t return types.ActionResult{}, err } - return types.ActionResult{Result: resp.Response}, nil + metadata := make(map[string]interface{}) + + for _, s := range resp.State { + for k, v := range s.Metadata { + if existingValue, ok := metadata[k]; ok { + switch existingValue := existingValue.(type) { + case []string: + switch v := v.(type) { + case []string: + metadata[k] = append(existingValue, v...) + case string: + metadata[k] = append(existingValue, v) + } + case string: + switch v := v.(type) { + case []string: + metadata[k] = append([]string{existingValue}, v...) + case string: + metadata[k] = []string{existingValue, v} + } + } + } else { + metadata[k] = v + } + } + } + + return types.ActionResult{Result: resp.Response, Metadata: metadata}, nil } func (a *CallAgentAction) Definition() types.ActionDefinition { diff --git a/services/connectors/slack.go b/services/connectors/slack.go index 8bfd22c..56afecd 100644 --- a/services/connectors/slack.go +++ b/services/connectors/slack.go @@ -45,7 +45,7 @@ type Slack struct { conversationTracker *ConversationTracker[string] } -const thinkingMessage = "thinking..." +const thinkingMessage = ":hourglass: thinking..." func NewSlack(config map[string]string) *Slack {