Commit Graph

40 Commits

Author SHA1 Message Date
220c5c7739 feat: send logs to UI
Added SSE endpoint `/logs/stream` for the UI to listen to logs.

ref: N25B-242
2025-11-05 13:57:51 +01:00
e49ccb213e Merge branch 'dev' into refactor/logging 2025-11-05 12:40:31 +01:00
Twirre Meulenbelt
f854a60e46 style: import order and lines too long
ref: N25B-217
2025-11-05 12:34:30 +01:00
Twirre Meulenbelt
a1918049e5 Merge remote-tracking branch 'origin/dev' into refactor/zmq-internal-socket-behaviour
# Conflicts:
#	src/control_backend/agents/ri_command_agent.py
#	src/control_backend/agents/ri_communication_agent.py
#	src/control_backend/api/v1/endpoints/command.py
#	src/control_backend/main.py
#	test/integration/api/endpoints/test_command_endpoint.py
2025-11-05 12:16:18 +01:00
c7bdb5aeda chore: run linter and formatter 2025-11-04 21:00:12 +01:00
48c9746417 style: apply ruff check and format
Made sure all ruff checks pass and formatted all files.

ref: N25B-224
2025-11-02 19:45:01 +01:00
d43cb9394a refactor: improve logging and module structure
Changed some folders to not be modules and organized some `__init__.py`
files.

ref: N25B-223
2025-11-02 11:32:21 +01:00
d5de644828 feat: add colored and formatted logging
Add a custom logging setup function to add custom levels and custom
formatters (partly for future use with extended logging functionality).
Also implemented a basic colored formatter to make our logs nicer.

Also improved the handling of logging in external libraries, so now we
should only get WARNings or above.

ref: N25B-233
2025-10-31 21:22:32 +01:00
20a49eb553 fix: endpoints don't create sockets
ref: N25B-217
2025-10-31 10:36:21 +01:00
10deb4bece fix: separate thread for proxy
ref: N25B-217
2025-10-30 12:52:18 +01:00
b92471ff1c refactor: ZMQ context and proxy
Use ZMQ's global context instance and setup an XPUB/XSUB proxy intermediary to allow for easier multi-pubs.

close: N25B-217
2025-10-30 11:40:14 +01:00
Twirre Meulenbelt
c56fe3e46d Merge remote-tracking branch 'origin/dev' into feat/belief-collector
# Conflicts:
#	src/control_backend/main.py
2025-10-29 15:37:55 +01:00
Twirre Meulenbelt
792d360fa4 chore: remove test agent again
ref: N25B-208
2025-10-29 15:30:53 +01:00
Twirre Meulenbelt
889ec1db51 chore: fix merge conflicts and small items
ref: N25B-208
2025-10-29 15:28:15 +01:00
Pim Hutting
3f7ec071b2 Merge remote-tracking branch 'origin/dev' into feat/belief-collector 2025-10-29 15:14:42 +01:00
Twirre Meulenbelt
7744852e88 Merge remote-tracking branch 'origin/dev' into feat/belief-from-text
# Conflicts:
#	src/control_backend/main.py
2025-10-29 15:12:18 +01:00
JobvAlewijk
af789bd459 feat: norms and goals to llm
base goals and norms can be defined in llm_instructions.py
cleaned the code

ref: N25B-215
2025-10-29 12:45:13 +01:00
JobvAlewijk
f163e0ee6c build: merge of VAD
ref: N25B-213
2025-10-29 10:32:43 +01:00
JobvAlewijk
6846a18b3b build: merge
merge with riAgent

ref: N25B-208
2025-10-28 15:03:47 +01:00
Twirre Meulenbelt
7a96920db5 Merge remote-tracking branch 'origin/dev' into feat/vad-agent 2025-10-28 14:55:10 +01:00
JobvAlewijk
f8d08ac7ca chore: moved behavoir
moved recieve llm behavoir into a the behavoir folder

ref: N25B-207
2025-10-28 13:44:28 +01:00
Storm
a43e5111db fix: quick first fix in preparation of merge
ref: N25B-208
2025-10-28 13:28:42 +01:00
Pim Hutting
1f34b14dfa Feat: Implement belief collector
[
    - Currently implements belief collection from text-based mock agent.
    - The beliefs communicated by this agent look like this:

        {
            "type": "belief_extraction_text",
            "beliefs": [
                {"user_said": [["hello"],["Can you help me?"],["stop talking to me"],["No"],["Pepper do a dance"]]}
            ]
        }
    * have yet to add tests (but we want to merge into Dev. asap)
]

[ref]: N25B-206
2025-10-28 13:07:49 +01:00
Björn Otgaar
47a87d0b4a fix: unit tests fixes and ruff formating
N25B-205
2025-10-28 11:31:05 +01:00
Björn Otgaar
52faa59184 Merge remote-tracking branch 'origin/dev' into feat/cb2ui-robot-connections 2025-10-28 11:09:23 +01:00
Twirre Meulenbelt
a44df4781b Merge remote-tracking branch 'origin/dev' into feat/vad-agent
# Conflicts:
#	pyproject.toml
#	src/control_backend/main.py
#	uv.lock
2025-10-28 10:44:03 +01:00
4859c3ac04 style: fix style 2025-10-27 15:10:31 +01:00
JobvAlewijk
c5b71450fc feat: LLM agent
body:   added the llmAgent class and made it run at the start.
        modified the bdi_core to send a test message and recieve an awnser from LLM agent
        Added a connection to a local llm via lmstudio.

        Tests are Tba.

ref: N25B-207
2025-10-27 14:21:18 +01:00
Storm
bece44bf7d feat: implemented basic belief-from-text extractor
The communication with other agents has been tested with mock data as the other agents (transcriber and belief collector) are not yet implemented.

ref: N25B-208
2025-10-24 17:25:25 +02:00
Björn Otgaar
31e77de26b chore: fix style guide max characters 2025-10-23 17:12:49 +02:00
Björn Otgaar
d599f71c8a Merge remote-tracking branch 'origin/dev' into feat/cb2ui-robot-connections 2025-10-23 16:48:04 +02:00
Twirre Meulenbelt
6391af883a feat: implement VAD agent
Listens to audio from the RI, does voice activity detection, sends voice fragments.

ref: N25B-213
2025-10-23 14:54:57 +02:00
e057cf3003 test: add unit tests to BeliefCollector
ref: N25B-197
2025-10-22 14:51:20 +02:00
Björn Otgaar
154719bf84 chore: add extra function description 2025-10-22 10:32:41 +02:00
Björn Otgaar
3d7ef2b874 feat: agent structure and implementation new
architecture with unit tests

ref: N25B-205
2025-10-22 10:28:48 +02:00
31882f8d63 feat: add BDI core agent
Main BDI brain structure implemented. Still some TODOs left, and very
basic implementation (only one belief "user_said(Message)" and every
message is sent straight to a function which is responsible for getting
an LLM response.

ref: N25B-197
2025-10-18 17:50:17 +02:00
1eb414ea0d feat: add agent that is able to receive messages from UI
Inside the `/message` enpoint we put a message onto the internal event
queue, which gets read by TestAgent. This agent, in turn, logs the
message (temporary behaviour until we implement RI integration).

The name TestAgent is of course temporary, this is just for exploratory
purposes.

ref: N25B-165
2025-10-08 18:27:24 +02:00
80d03de3c8 fix: correct cross-origin handling 2025-10-08 15:27:06 +02:00
1229df70b0 chore: filled in project structure
Added some example basic files containing a functioning /message
endpoint which logs the received message to INFO.

ref: N25B-144
2025-10-08 15:02:11 +02:00
7ba40b0bf8 chore: add basic project structure
Empty files everywhere, basic module structure created with __init__.py
files.

ref: N25B-144
2025-10-08 13:29:04 +02:00