Commit Graph

81 Commits

Author SHA1 Message Date
mudler
66cc5e7452 fix: improve templates
Signed-off-by: mudler <mudler@localai.io>
2025-04-10 20:20:41 +02:00
mudler
8e18df468b fix(pick_action): improve action pickup by using only the assistant thought process
Signed-off-by: mudler <mudler@localai.io>
2025-04-10 20:07:34 +02:00
Ettore Di Giacinto
c2ec333777 Enlarge timeout window 2025-04-09 21:59:18 +02:00
mudler
bc7f6f059c Reply when skipping loops 2025-04-09 19:49:39 +02:00
mudler
0eb68b6c20 feat: add loop detection
Signed-off-by: mudler <mudler@localai.io>
2025-04-09 19:13:41 +02:00
mudler
cb15f926e8 fix(tests): wait for API to be available
Signed-off-by: mudler <mudler@localai.io>
2025-04-09 15:26:53 +02:00
Ettore Di Giacinto
5111738b3b Wait for API to be ready 2025-04-08 22:45:15 +02:00
Ettore Di Giacinto
e7111c6554 Rename 2025-04-08 22:18:32 +02:00
Richard Palethorpe
ee77bba615 fix: Don't crash when some agents fail to start 2025-04-03 16:11:21 +01:00
Richard Palethorpe
5023bc77f4 feat(ui): Add custom action config meta data 2025-04-01 17:25:04 +01:00
Richard Palethorpe
4c40e47e8d chore(prompts): Rename Prompt blocks to Dynamic prompts 2025-04-01 14:36:33 +01:00
Ettore Di Giacinto
c1dcda42ae fix: re-enable nested plannings (#117)
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-30 22:18:15 +02:00
Ettore Di Giacinto
dff678fc4e feat(job): add finalizers and save conversation after job is result is released (#114)
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-30 18:43:28 +02:00
Ettore Di Giacinto
c940141e61 fix: make new_conversation to work (#112)
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-29 00:21:00 +01:00
Ettore Di Giacinto
5fdd464fad Improve plan description 2025-03-28 22:16:12 +01:00
Ettore Di Giacinto
906b4ebd76 feat: add retries to pickAction
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-28 22:04:04 +01:00
Ettore Di Giacinto
0644daa477 feat: retrials (#110)
* feat(jobs): rework next actions

Also attempt to retry when failing at generating parameters

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

* feat(retries): add retries for common operations

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

---------

Signed-off-by: mudler <mudler@localai.io>
2025-03-28 21:27:34 +01:00
mudler
8ac6f68568 fix(multi-agent): do not allow to call ourselves
Signed-off-by: mudler <mudler@localai.io>
2025-03-28 16:51:07 +01:00
mudler
05af5d9695 Use internal API for services/actions when using the pool
Signed-off-by: mudler <mudler@localai.io>
2025-03-28 16:12:42 +01:00
mudler
2c273392cd add debug messages 2025-03-28 15:31:26 +01:00
Ettore Di Giacinto
08f5417e96 go fmt 2025-03-27 23:06:33 +01:00
Ettore Di Giacinto
f67ebe8c7a Update agent.go 2025-03-27 00:15:52 +01:00
Ettore Di Giacinto
6ace4ab60d Expire jobs if context is canceled 2025-03-27 00:13:26 +01:00
Richard Palethorpe
319caf8e91 chore(ui): Move some field definitions server side 2025-03-26 22:56:29 +00:00
Ettore Di Giacinto
6e888f6008 Move action context to the job
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-26 22:37:25 +01:00
Ettore Di Giacinto
5cd0eaae3f fix: mixed fixups and enhancements (#107)
* chore(Makefile): build react dist if missing

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

* fix(planning): don't loose results

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

* fix(slack): track user messages when writing on channel

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

---------

Signed-off-by: mudler <mudler@localai.io>
2025-03-26 17:05:59 +01:00
Ettore Di Giacinto
fb20bbe5bf Allow slack bots to initiate conversations
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2025-03-25 22:58:59 +01:00
mudler
e26b55a6a8 Add tests 2025-03-25 17:58:59 +01:00
mudler
ca3420c791 fixup silly mistake
Signed-off-by: mudler <mudler@localai.io>
2025-03-25 17:25:59 +01:00
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
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
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
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
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
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
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