Commit Graph

622 Commits

Author SHA1 Message Date
mudler
abd6d1bbf7 Do not allow to recursively follow plan actions
Signed-off-by: mudler <mudler@localai.io>
2025-03-25 16:59:13 +01:00
Ettore Di Giacinto
d0cfc4c317 feat: track conversations inside connectors (#92)
* switch to observer pattern

Signed-off-by: mudler <mudler@localai.io>

* keep conversation history in telegram and slack

* generalize with conversation tracker

---------

Signed-off-by: mudler <mudler@localai.io>
2025-03-25 16:31:03 +01:00
Ettore Di Giacinto
53c1554d55 fix: do not track an internal currentConversation (#91)
It is prone to races, and does not really track all conversations for
each job

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-25 00:36:09 +01:00
Ettore Di Giacinto
b09749dddb try to resolve user IDs to enable bot to mention users (#89)
Signed-off-by: mudler <mudler@localai.io>
2025-03-24 22:20:25 +01:00
mudler
b199c10ab7 do not re-generate avatar if already existing
Signed-off-by: mudler <mudler@localai.io>
2025-03-24 19:46:56 +01:00
mudler
c8abc5f28f fix(slack): do not convert, mention user when summoned by mentions
Signed-off-by: mudler <mudler@localai.io>
2025-03-24 15:41:57 +01:00
mudler
14948c965d feat(slack): update, improve links and mentions
Signed-off-by: mudler <mudler@localai.io>
2025-03-24 11:11:31 +01:00
Ettore Di Giacinto
558306a841 Update README.md 2025-03-24 10:23:05 +01:00
Richard Palethorpe
fb41663330 fix(ui): Add connector templates to group-create 2025-03-24 08:54:36 +00:00
Richard Palethorpe
84836b8345 feat(ui): Add individual forms for each connector 2025-03-24 08:54:36 +00:00
Ettore Di Giacinto
5f2a2eaa24 feat(slack): show thought process (#83)
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-23 22:43:13 +01:00
mudler
75a8d63e83 Finish moving types 2025-03-23 21:57:09 +01:00
mudler
f0b8bfb4f4 no need to defer here
Signed-off-by: mudler <mudler@localai.io>
2025-03-23 11:57:01 +01:00
mudler
fa25e7c077 fixup: pass pointer to pool
Signed-off-by: mudler <mudler@localai.io>
2025-03-23 11:53:36 +01:00
Ettore Di Giacinto
3a9169bdbe feat(agents): Create group of agents (#82)
* feat(ui): add section to create agents in group

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>

* Enhance UX and do not display first form section

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>

* fixups

* Small fixups on avatar creation

---------

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-22 21:41:51 +01:00
Ettore Di Giacinto
3a921f6241 feat(ui): generate avatars (#80)
* feat(ui): generate avatars

Signed-off-by: mudler <mudler@localai.io>

* Show a placeholder if the image is not ready

Signed-off-by: mudler <mudler@localai.io>

* feat(avatar): generate prompt first

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>

---------

Signed-off-by: mudler <mudler@localai.io>
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-22 20:50:31 +01:00
Ettore Di Giacinto
c1ac7b675a feat(api): add endpoint to create group of dedicated agents (#79)
Signed-off-by: mudler <mudler@localai.io>
2025-03-22 18:44:22 +01:00
Ettore Di Giacinto
d689bb4331 feat(actions): add playground to test actions (#74)
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-21 23:51:55 +01:00
Ettore Di Giacinto
b42ef27641 feat: change default models (#73)
Signed-off-by: mudler <mudler@localai.io>
2025-03-21 21:44:06 +01:00
Ettore Di Giacinto
abb3ffc109 feat: track plan action when is being executed, also tests (#72)
* feat: track plan action when is being executed, also tests

* Update core/agent/agent_test.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update core/agent/actions.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-03-21 16:32:24 +01:00
Ettore Di Giacinto
e5e238efc0 fix(planning): correctly generate a valid JSON schema (#71)
Signed-off-by: mudler <mudler@localai.io>
2025-03-21 15:47:34 +01:00
Ettore Di Giacinto
33483ab4b9 feat(planning): enable agent planning (#68)
* feat(planning): Allow the agent to plan subtasks

Signed-off-by: mudler <mudler@localai.io>

* feat(planning): enable planning toggle in the webui

Signed-off-by: mudler <mudler@localai.io>

* feat(planning): take in consideration the overall goal

Signed-off-by: mudler <mudler@localai.io>

* Update core/action/plan.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Signed-off-by: mudler <mudler@localai.io>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-03-21 12:28:11 +01:00
Ettore Di Giacinto
638eedc2a0 fix: correctly stop agents
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-20 22:46:54 +01:00
Ettore Di Giacinto
86d3596f41 Add more logging 2025-03-20 22:35:55 +01:00
mudler
16288c0fc3 fix: correct model name in defaults 2025-03-20 19:18:14 +01:00
mudler
5d42ebbc71 chore: add docker-compose for gpu setup
Signed-off-by: mudler <mudler@localai.io>
2025-03-20 19:17:42 +01:00
mudler
0513a327f6 feat(ssh): allow to customize action name
Signed-off-by: mudler <mudler@localai.io>
2025-03-20 19:15:12 +01:00
mudler
c3d3bba32a feat(ssh): allow to specify a fixed host/user to run commands
Signed-off-by: mudler <mudler@localai.io>
2025-03-20 19:13:37 +01:00
Ettore Di Giacinto
1b187444fc feat: ssh as shell command (#67)
* feat(ssh): add action to run shell commands over a remote server

Signed-off-by: mudler <mudler@localai.io>

* fix(github): correctly get content

Signed-off-by: mudler <mudler@localai.io>

---------

Signed-off-by: mudler <mudler@localai.io>
2025-03-20 18:55:19 +01:00
Ettore Di Giacinto
d54abc3ed0 Revert "Generate connector form based on meta-data (#62)" (#65)
This reverts commit d7cfa7f0b2.
2025-03-20 18:21:19 +01:00
Ettore Di Giacinto
1e5b3f501f feat(github): add action to read github project's README (#64)
Signed-off-by: mudler <mudler@localai.io>
2025-03-20 17:43:15 +01:00
mudler
0e240077ab ci: setup go 2025-03-20 16:36:19 +01:00
mudler
401172631d ci: fixups 2025-03-20 16:09:24 +01:00
mudler
5b8ca0b756 ci: drop docker removal 2025-03-20 16:08:21 +01:00
mudler
8be14b7e3f ci: drop docker removal 2025-03-20 16:07:28 +01:00
mudler
96de3bdddd Relax errors 2025-03-20 16:05:43 +01:00
mudler
56d209f95d Fixups in ci 2025-03-20 16:04:57 +01:00
mudler
169c5e8aad Setup docker in ci 2025-03-20 16:02:55 +01:00
Richard Palethorpe
d7cfa7f0b2 Generate connector form based on meta-data (#62)
* Ignore volumes and exe

* Export form meta-data

* use dynamic metaform for connectors

* fix populating form
2025-03-20 16:00:37 +01:00
Ettore Di Giacinto
43a46ad1fb Update tests.yml 2025-03-20 13:05:29 +01:00
mudler
2de5152bfd ci: run on self-hosted
Signed-off-by: mudler <mudler@localai.io>
2025-03-20 10:30:16 +01:00
Ettore Di Giacinto
a83f4512b6 feat: allow to set LocalRAG API URL ad key (#61)
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-19 23:10:14 +01:00
Ettore Di Giacinto
08785e2908 feat: add action to call other agents (#60)
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-19 22:58:35 +01:00
Ettore Di Giacinto
8e694f70ec Add description field (#59) 2025-03-19 22:40:21 +01:00
Ettore Di Giacinto
f0bd184fbd feat: add twitter action and connector (#58)
* feat: add twitter post action

Signed-off-by: mudler <mudler@localai.io>

* feat: handle twitter post messages limits

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>

* feat: add twitter connector, unify client

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>

* make sure answers do not exceed twitter maximum

---------

Signed-off-by: mudler <mudler@localai.io>
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-19 22:14:32 +01:00
Ettore Di Giacinto
e32a569796 try to fixup tests, enable e2e (#53)
* try to fixup tests, enable e2e

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>

* Generate JSON character data with tools

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>

* Rework generation of character

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>

* Simplify text

Signed-off-by: mudler <mudler@localai.io>

* Relax some test constraints

Signed-off-by: mudler <mudler@localai.io>

* Fixups

* Properly fit schema generation

* Swap default model

* ci fixups

---------

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
Signed-off-by: mudler <mudler@localai.io>
2025-03-18 23:28:02 +01:00
Ettore Di Giacinto
31b5849d02 feat(api): add support to responses api (#52)
Signed-off-by: mudler <mudler@localai.io>
2025-03-17 18:42:33 +01:00
mudler
29a8713427 enhance update form
Signed-off-by: mudler <mudler@localai.io>
2025-03-17 16:13:03 +01:00
Ettore Di Giacinto
3c3b5a774c Fix race conditions 2025-03-16 22:59:59 +01:00
Ettore Di Giacinto
35c75b61d8 Refactor views 2025-03-16 22:59:48 +01:00