From 3b7559b157071468acb9f998ebfad13cb78ff43d Mon Sep 17 00:00:00 2001 From: Flatlogic Bot Date: Thu, 20 Nov 2025 00:44:39 +0000 Subject: [PATCH] basic AI agent --- ai/__pycache__/local_ai_api.cpython-311.pyc | Bin 19874 -> 19593 bytes ai/local_ai_api.py | 10 +- assets/pasted-20251120-002324-c898244a.png | Bin 0 -> 183726 bytes config/__pycache__/settings.cpython-311.pyc | Bin 4210 -> 4426 bytes config/settings.py | 14 ++ core/__pycache__/models.cpython-311.pyc | Bin 3217 -> 3577 bytes core/__pycache__/urls.cpython-311.pyc | Bin 879 -> 1081 bytes core/__pycache__/views.cpython-311.pyc | Bin 7578 -> 16576 bytes ...ns_remove_message_is_from_user_and_more.py | 26 ++ ...sage_is_from_user_and_more.cpython-311.pyc | Bin 0 -> 1218 bytes core/models.py | 7 +- core/templates/core/chat.html | 20 +- core/templates/core/index.html | 13 +- core/templates/core/kanban.html | 4 + core/urls.py | 2 + core/views.py | 231 ++++++++++++++++-- static/css/custom.css | 29 +++ staticfiles/css/custom.css | 29 +++ 18 files changed, 350 insertions(+), 35 deletions(-) create mode 100644 assets/pasted-20251120-002324-c898244a.png create mode 100644 core/migrations/0005_alter_message_options_remove_message_is_from_user_and_more.py create mode 100644 core/migrations/__pycache__/0005_alter_message_options_remove_message_is_from_user_and_more.cpython-311.pyc diff --git a/ai/__pycache__/local_ai_api.cpython-311.pyc b/ai/__pycache__/local_ai_api.cpython-311.pyc index fa9977d8c7f6a3dd70fe97b8027d3793d79129e6..2d4a4fb42963895c45533b3f1c9e00433bb00855 100644 GIT binary patch delta 463 zcmZ29o3V2yBj0jfUM>b8(2SPLd~3Fm@4OP@%FXwb6xbLmHviYy%gR_ad9R)VW8>s| zdUi^!K!vwBlJj$uGV@YXZn0#Rq~;d2fdpBTa`Kb2i#jLU>C3QH07Z%_HYeyCvNF!u zJjq0ziLrk3F0)QXwknX!qRE~X(xMZAOikt@Cy;KoqT-UG%z~nZ&6O6ijBL}G85pKB zO#bL9zIn4{2D3PG4R;D(4PPTu4PPE(4NnUH9F|}PO@YaWY;75rPqNEl%LkbyI=Rb%7 delta 740 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

+~nV>WH%1R|tWcZ#bi@_%; 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

; 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%0DH)eTQfhlj|r7;V8h=~ZY7Fgtx}w2y*n^m&f3=9 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 StPRlFiTihyWeaW_`u;CH(aF{T literal 0 HcmV?d00001 diff --git a/config/__pycache__/settings.cpython-311.pyc b/config/__pycache__/settings.cpython-311.pyc index fd340978d626b061668c11767fdecc41064fad8f..bdf202334b0c77b09840d9a6ab2eb69cf15823e4 100644 GIT binary patch delta 302 zcmeyQa7u}9IWI340}xyem&@!Cn8+u=#KOE$<0+G}af(TbX^L5jc_w2fV~S}yV~RzJ ze2YCkJ|#bS^DpitjGVXFef-_sJ^kD# z&*PQiiUleIxvKc_=0m*8nOr`wF$f6WP*8oqA$WsF_=2d;2WBP_t`E#Cf@~jn7{uf! hc;65d|G>)3%l3f*L`;%wk=;4cye3IG5!a}zWG diff --git a/config/settings.py b/config/settings.py index 001b8c8..617e204 100644 --- a/config/settings.py +++ b/config/settings.py @@ -152,3 +152,17 @@ STATICFILES_DIRS = [ DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' X_FRAME_OPTIONS = 'ALLOWALL' + +LOGGING = { + 'version': 1, + 'disable_existing_loggers': False, + 'handlers': { + 'console': { + 'class': 'logging.StreamHandler', + }, + }, + 'root': { + 'handlers': ['console'], + 'level': 'INFO', + }, +} diff --git a/core/__pycache__/models.cpython-311.pyc b/core/__pycache__/models.cpython-311.pyc index f0c291942394c57d0f3b4c2ad6d5786b031a4243..cd02fcf3e1f978932085eb7e69461da4f4ee606f 100644 GIT binary patch delta 858 zcmZ`%&1(}u6rb5_Hk(a1sU_AdY0Ub88j*rXLKG28B_)L>g|>q6uq>Hvh~%Tp#zRA) zITXyH2W5~7MG(bku@~{;!9SqKwiGNm>3@)5F6zZMn|?s4Z}$D>eaxHr&D(jQ{SNy- zsH%cMUe28_YSL%_u823j{1mUcq&P%rocUz~$5}yfD<~Hr12ZV5vRmHKWg3H2OpFO_ z@u_Xmwm1g}o?sT+!dMzC$zHT;R=F+BI5R{PvuNb2<+52Jb!9BAkN0hQ7q+6;0cNQe zFb{ephwOd@A+&}pl*0t&gk^#YIOie)5OVz)n6hl!ELfvcR?Va%urd=9=~Ccl%-%Nj>xKd3*y*Od9_m!u$_$85nH4BZEF4H3MA z-hg#1>?R>s^2Vp(ls@(K>o9aR?V=j3Xn8N(OxK- zi*$sodbEka;q?r|u2I9d0Y}+a02*jNkbPDA9!=~<6Fbr5UNpHK$inxPe5>}YZ8_`k z&cp`Uq;dhCMoGD>(GXO_A97BkVQ`$T(G=@=LV+arIa~s@x7dzyC!t1~5BJo_$Ds~F ziAmuE&I&mm@;?^34)z>uq*&Car7w06cAtbUkM)id5_V5xzVI~ccRtA;`L6Y!d6GTz cMR1nA_icA2r^~h5!Hn delta 502 zcmew8T27Mftf3w^%}pQ;TjfIeJ#HC?u9BXfoa6$t;cs$;FofWr}1b_pnRa z^FuZ1#m5(y6vfAD0xc|70}>4kH~6Dhh+NUMx*+c|qijam0hSB=(Li)U<%~Xrb%7&# zavrPr|{q;PtHfM+!q`wz(xZACSZSp diff --git a/core/__pycache__/urls.cpython-311.pyc b/core/__pycache__/urls.cpython-311.pyc index ef076c175f4ebfd13ce6a76f24ea79b009719c4a..058071680764402a2e76a786da40e5779b6352ae 100644 GIT binary patch delta 318 zcmaFQwv$6+IWI340}zPE$z_%?F)%y^abSQ4%J}TYI8oy+H&`J^C`E8$gDAgHDsvV> zNEj%jDFPJYhUrcbUBkYNnSo(75JNyZM-)$rSTKX8_+%}{85&Y4sX3`7sqrO=#o78c znRz8vAXa>4ik6W_@clG-C;w)27A@ihT6K#v zIU}(ozAQ7fyhs4ZpX|xx%Owe9FamM$_sI*GrVC%-R9#SdMcraY?FAO!i!8oZSbQfN tG3#pFVBu(Rxxgto!}N-@-iG)KEUp(>T(7XWeh}p3XKLUE!6I>>F#ybBQdj^0 delta 154 zcmdnV@t#d%IWI340}yz7$YnlYWMFs<;=lk{2FUsRk71(5T~$t)c#7Z}_GQcr46A_{ z0@B%{xKf0I88n3_7ctJ5Y|LcF?5D{+xtqzE`xa+%Mq){PS!QbaD0N~^xL;wH) diff --git a/core/__pycache__/views.cpython-311.pyc b/core/__pycache__/views.cpython-311.pyc index 47221354aa2e21b7041fc54c4c2bee3d7a4671c0..2726ef65d74c84758f89458140a6ceb5f9f773ed 100644 GIT binary patch literal 16576 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 delta 2379 zcmaJ@S!^4}8Q$6D@;+9kB`Jf!Bl26r%Y^S2r3JiBGtxR%>*;O2? zq~#)hXbYpEF-@yB4r=7VZQ-DB;0EwRQ{*8{f}$u^E`bm%oH{7_Q1pd{Bftn+p#M-( zZ1thT-EaT-&)NC^{f8fZ5B+?9*DpODCkNxrQ*ElZmgD};CfkGGA|AhUy=!b$l&vX8 z+8KAIU2#|19e1ZaaS!5TQMRSLXi?V5H=h-Z=Whqdz!)?fCbPKkzrNO|SdIMSs|IhbtoQh}?~ef8-m3V5NHj zo?PL6b@<&Q_uTjUCa-WLMBVlt)Jyl+rx2!>?PpMk7VRspAr=KQ7^HI!ERF)%MlU;l z0`fZNU(r7L$Qcw50Jo0@T>DYz?yT!yXxH<=D2oaq8c_=fth?zcPop%(9El9ro|7oO zp4_F50%tYfs*mvn{#7x;h9iyE91k;^U8sDows18Z?oO54#d$v2m9#N z?*6)lou2Yi4v_$p4rh39BN_wSMi7>h8*@@lGzOpY3|2o|W2uq8;H#&X1>fGL8^X?z zQ1Q((L;}sSXsAX?S&?Rxi+DoIys8jAVW?UripVLt8XZ_22d&faWw?{iNXs^u8A`?| zyH$PuJkiqg%R1Cwn7Ontvg}Ccx~dzAj1lF_7NVsTa+*o4`X${^(ksO|Z5bzsf)jXA zNoCJ3r|{Pn_`F7dpC#H7t?Q9iv)PoItS)Oe1~Y=Q%OtDm3RZP&Xj^ueh1Kyz)mX&F zqM{OPB=ie9PGn@}=~Yz*{S0_cS3TjxE84QbG;!it|EG5{a5|BhOe`qihZt%y#Rzbi zfVlm#hEwp0yT3xt4v#I&0ja+XaD}UI!a)5~c-Vp~ z0@s*EYo~9-&4v_QcZNS3I(C2P*!s|k;?Rjro_RK2JUefmRn4Tj#c4=YgdMJ+LmeLJ zwv|OSlU+9Gmm~dk{=*quZ82C&CYK3O^~Ez)KI}Pk+Gwk&CChOkai_HA0u6GhKz8C@y6mDdcCNE-77 z5M{?VUP~%jR;lC|eQ%F{vWB#?7%wn5#bB1fiwu$gW!oa8N+XxbLRw!S-(oE9W+~36 z64fa9r-wtU@sMToXBvbc1`vvGaI}zyhy&;zlL=0~IZ#@0|-e2r4`TUQ# z9?#3@ffV?$?=z|MzSL_EJkv zsRjI4LQSy5wn)XsD8afPoLMnA11KEX@N(_ZV%x}_#r3w;Sg|cum@YMkDjcf&CMtzy z)@)CnJP2Tz*BpEbrM3g_PuxTAP5pMtY&!r~VfyLs35<#W`taPaay1P*b}w$KndY^w0*{h{n*aa+ diff --git a/core/migrations/0005_alter_message_options_remove_message_is_from_user_and_more.py b/core/migrations/0005_alter_message_options_remove_message_is_from_user_and_more.py new file mode 100644 index 0000000..53bb4c7 --- /dev/null +++ b/core/migrations/0005_alter_message_options_remove_message_is_from_user_and_more.py @@ -0,0 +1,26 @@ +# Generated by Django 5.2.7 on 2025-11-19 23:41 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('core', '0004_conversation_message'), + ] + + operations = [ + migrations.AlterModelOptions( + name='message', + options={'ordering': ['created_at']}, + ), + migrations.RemoveField( + model_name='message', + name='is_from_user', + ), + migrations.AddField( + model_name='message', + name='sender', + field=models.CharField(choices=[('user', 'User'), ('ai', 'AI'), ('system', 'System'), ('ai_command', 'AI Command')], default='user', max_length=20), + ), + ] diff --git a/core/migrations/__pycache__/0005_alter_message_options_remove_message_is_from_user_and_more.cpython-311.pyc b/core/migrations/__pycache__/0005_alter_message_options_remove_message_is_from_user_and_more.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d711cc1d68ff9310b8e15b00aaaa090c0fe57ca2 GIT binary patch literal 1218 zcmZuv%}>-o6rX8#yW8^R!Wx4bAOw-BVfUanVnRqX5J4ls!zN}douOOYw(GQu;6)A| zJaXeoJYWoa_V3`pVKW{*aVvonC*QPNgut}(oA>7Z=FR(g0Z_Y;{H((`YV-e z4gZh@l#$sHRZt;F_u+mRrw)f~zSwcd(1w`F#le0A@N8 zo|b9A)7pg_7==rWBAh9%>)DQjsQv>}gZ8w0uO`&)yQ({C&7l2|;(*W>v)mxjoE>l` zhO5=;Q(_1H2IFCpHt|>(S`HJ1OehANGVc10Fl^4Oh*4ri(t~e#Knt2_wR+u= zi!nPtHkZo01TK%u0H!Jmc0F)y7K#F8YgVffK^v`2(qO(5)lHQT04}aUAKHEn5L^qo08(EsZL5-!kq%?yf~Bg`Z<3DDux-p1Bg|OF{F>pLo{{$kF_$^ UVsssLjH6o|sgEhJLAN$=$Qvd(} literal 0 HcmV?d00001 diff --git a/core/models.py b/core/models.py index 424eaaf..b9cb4ae 100644 --- a/core/models.py +++ b/core/models.py @@ -35,8 +35,11 @@ class Conversation(models.Model): class Message(models.Model): conversation = models.ForeignKey(Conversation, on_delete=models.CASCADE, related_name='messages') content = models.TextField() - is_from_user = models.BooleanField(default=True) + sender = models.CharField(max_length=20, choices=[('user', 'User'), ('ai', 'AI'), ('system', 'System'), ('ai_command', 'AI Command')], default='user') created_at = models.DateTimeField(auto_now_add=True) + class Meta: + ordering = ['created_at'] + def __str__(self): - return f"Message from {'User' if self.is_from_user else 'AI'} at {self.created_at}" \ No newline at end of file + return f"Message from {self.get_sender_display()} at {self.created_at}" \ No newline at end of file diff --git a/core/templates/core/chat.html b/core/templates/core/chat.html index e75bdf1..f832463 100644 --- a/core/templates/core/chat.html +++ b/core/templates/core/chat.html @@ -33,10 +33,24 @@
{% for message in selected_conversation.messages.all %} -
+
-
{% if message.is_from_user %}You{% else %}AI{% endif %}
-

{{ message.content|linebreaksbr }}

+
+ {% if message.sender == 'user' %} + You + {% elif message.sender == 'ai' %} + AI + {% elif message.sender == 'system' %} + System + {% elif message.sender == 'ai_command' %} + AI Command + {% endif %} +
+ {% if message.sender == 'ai_command' %} +
{{ message.content|linebreaksbr }}
+ {% else %} +

{{ message.content|linebreaksbr }}

+ {% endif %}
{% endfor %} diff --git a/core/templates/core/index.html b/core/templates/core/index.html index ed0a715..4dd0437 100644 --- a/core/templates/core/index.html +++ b/core/templates/core/index.html @@ -38,8 +38,12 @@
-
+

Your To-Do List

+
+ {% csrf_token %} + +
@@ -50,6 +54,7 @@ + @@ -66,6 +71,12 @@ + {% empty %} diff --git a/core/templates/core/kanban.html b/core/templates/core/kanban.html index fb200fc..a8faacb 100644 --- a/core/templates/core/kanban.html +++ b/core/templates/core/kanban.html @@ -25,6 +25,10 @@ {% for item in tasks %}
+
+ {% csrf_token %} + +
{{ item.title }}

{{ item.description|default:""|truncatewords:15 }}

{% if item.tags %} diff --git a/core/urls.py b/core/urls.py index 515081a..1a7b1a1 100644 --- a/core/urls.py +++ b/core/urls.py @@ -8,6 +8,8 @@ urlpatterns = [ path('kanban/', views.kanban_board, name='kanban'), path('article//', views.article_detail, name='article_detail'), path('update_task_status/', views.update_task_status, name='update_task_status'), + path('delete_task//', views.delete_task, name='delete_task'), path('chat/', views.chat_view, name='chat'), path('chat//', views.chat_view, name='chat_detail'), + path('cleanup_tasks/', views.cleanup_tasks, name='cleanup_tasks'), ] \ No newline at end of file diff --git a/core/views.py b/core/views.py index 667fdc5..1bc3e9a 100644 --- a/core/views.py +++ b/core/views.py @@ -2,17 +2,21 @@ from django.shortcuts import render, redirect, get_object_or_404 from django.http import JsonResponse from django.views.decorators.http import require_POST import json +import logging from .models import Article, TodoItem, Conversation, Message from .forms import TodoItemForm import time from ai.local_ai_api import LocalAIApi +# Get an instance of a logger +logger = logging.getLogger(__name__) + def index(request): if request.method == 'POST': form = TodoItemForm(request.POST) if form.is_valid(): form.save() - return redirect('index') + return redirect('core:index') else: form = TodoItemForm() @@ -60,6 +64,87 @@ def update_task_status(request): except (json.JSONDecodeError, TypeError, ValueError) as e: return JsonResponse({'success': False, 'error': str(e)}, status=400) + +@require_POST +def delete_task(request, task_id): + task = get_object_or_404(TodoItem, id=task_id) + task.delete() + + # Redirect to the previous page or a default URL + referer = request.META.get('HTTP_REFERER') + if referer: + return redirect(referer) + return redirect('core:index') + +@require_POST +def cleanup_tasks(request): + TodoItem.objects.all().delete() + return redirect('core:index') + +def execute_command(command_data): + command_name = command_data.get('name') + args = command_data.get('args', {}) + logger.info(f"Executing command: {command_name} with args: {args}") + + try: + if command_name == 'send_message': + message = args.get('message') + if not message: + logger.error("Command 'send_message' failed: 'message' is a required argument.") + return "[SYSTEM] Error: 'message' is a required argument for send_message." + return message + + elif command_name == 'add_task': + title = args.get('title') + if not title: + logger.error("Command 'add_task' failed: 'title' is a required argument.") + return "[SYSTEM] Error: 'title' is a required argument for add_task." + + new_task = TodoItem.objects.create( + title=title, + description=args.get('description', ''), + status=args.get('status', 'todo') + ) + logger.info(f"Command 'add_task' executed successfully. New task ID: {new_task.id}") + return f"[SYSTEM] Command 'add_task' executed successfully. New task ID: {new_task.id}" + + elif command_name == 'edit_task': + task_id = args.get('task_id') + if not task_id: + logger.error("Command 'edit_task' failed: 'task_id' is a required argument.") + return "[SYSTEM] Error: 'task_id' is a required argument for edit_task." + + task = get_object_or_404(TodoItem, id=task_id) + + if 'title' in args: + task.title = args['title'] + if 'description' in args: + task.description = args['description'] + if 'status' in args: + task.status = args['status'] + + task.save() + logger.info(f"Command 'edit_task' for task ID {task_id} executed successfully.") + return f"[SYSTEM] Command 'edit_task' for task ID {task_id} executed successfully." + + elif command_name == 'delete_task': + task_id = args.get('task_id') + if not task_id: + logger.error("Command 'delete_task' failed: 'task_id' is a required argument.") + return "[SYSTEM] Error: 'task_id' is a required argument for delete_task." + + task = get_object_or_404(TodoItem, id=task_id) + task.delete() + logger.info(f"Command 'delete_task' for task ID {task_id} executed successfully.") + return f"[SYSTEM] Command 'delete_task' for task ID {task_id} executed successfully." + + else: + logger.warning(f"Unknown command received: '{command_name}'") + return f"[SYSTEM] Error: Unknown command '{command_name}'." + except Exception as e: + logger.error(f"Error executing command '{command_name}': {e}", exc_info=True) + return f"[SYSTEM] Error executing command '{command_name}': {e}" + def chat_view(request, conversation_id=None): if request.method == 'POST': if 'title' in request.POST: @@ -70,25 +155,103 @@ def chat_view(request, conversation_id=None): elif 'text' in request.POST and conversation_id: text = request.POST.get('text') selected_conversation = get_object_or_404(Conversation, id=conversation_id) + if text: - Message.objects.create(conversation=selected_conversation, content=text, is_from_user=True) + command_name = None # Initialize command_name + Message.objects.create(conversation=selected_conversation, content=text, sender='user') - # Construct the conversation history for the AI history = [] for msg in selected_conversation.messages.order_by('created_at'): - role = "user" if msg.is_from_user else "assistant" + role = msg.sender + if role == 'ai': + role = 'assistant' + elif role == 'system': + role = 'user' history.append({"role": role, "content": msg.content}) try: system_message = { "role": "system", - "content": "You are a helpful assistant for a project management application. Your purpose is to assist users with their tasks and provide information about the application. The application manages articles and a to-do list." + "content": '''You are a project management assistant. To communicate with the user, you MUST use the `send_message` command. + +**Commands must be in a specific JSON format.** Your response must be a JSON object with the following structure: + +```json +{ + "command": { + "name": "command_name", + "args": { + "arg1": "value1", + "arg2": "value2" + } + } +} +``` + +**Available Commands:** + +* `send_message`: Sends a message to the user. **USE THIS FOR ALL CONVERSATIONAL RESPONSES.** + * `args`: + * `message` (string, required): The message to send to the user. +* `add_task`: Adds a new task. + * `args`: + * `title` (string, required): The title of the task. + * `description` (string, optional): The description of the task. + * `status` (string, optional, default: 'todo'): The status of the task. Can be 'todo', 'inprogress', 'done', 'blocked'. +* `edit_task`: Edits an existing task. + * `args`: + * `task_id` (integer, required): The ID of the task to edit. + * `title` (string, optional): The new title. + * `description` (string, optional): The new description. + * `status` (string, optional): The new status. +* `delete_task`: Deletes a task. + * `args`: + * `task_id` (integer, required): The ID of the task to delete. + +**Execution Loop:** + +1. You issue a command. +2. The system executes it. +3. The system returns a result message to you, like `[SYSTEM] Command 'add_task' executed successfully. New task ID: 5`. +4. You can then issue another command. + +**VERY IMPORTANT:** +- To talk to the user, you MUST use the `send_message` command. +- ONLY use other commands if the user explicitly asks you to `add`, `edit`, or `delete` tasks. + +**Examples:** + +* **User:** "Hi, how are you?" + * **Correct AI Response:** + ```json + { + "command": { + "name": "send_message", + "args": { + "message": "I'm doing great, thanks for asking! How can I help you with your tasks today?" + } + } + } + ``` +* **User:** "add a new task to buy milk" + * **Correct AI Response:** + ```json + { + "command": { + "name": "add_task", + "args": { + "title": "buy milk" + } + } + } + ``` + +**IMPORTANT:** Do not wrap the JSON command in markdown backticks or any other text. The entire response must be the JSON object.''' } tasks = TodoItem.objects.all().order_by('created_at') task_list_str = "\n".join([ - f"- {task.title} (Status: {task.get_status_display()}, Tags: {task.tags or 'None'})" - for task in tasks + f"- ID {task.id}: {task.title} (Status: {task.get_status_display()}, Tags: {task.tags or 'None'})" for task in tasks ]) tasks_context = { @@ -96,29 +259,55 @@ def chat_view(request, conversation_id=None): "content": f"Here is the current list of tasks:\n{task_list_str}" } + logger.info("Sending request to AI...") response = LocalAIApi.create_response({ "input": [ system_message, tasks_context, - *history - ] + ] + history, + "text": {"format": {"type": "json_object"}}, }) - ai_text = LocalAIApi.extract_text(response) - if not ai_text: + + if not response.get("success"): + logger.error(f"AI API request failed with status {response.get('status')}. Full error: {response.get('response')}") ai_text = "I couldn't process that. Please try again." - except Exception as e: - ai_text = f"An error occurred: {str(e)}" + Message.objects.create(conversation=selected_conversation, content=ai_text, sender='ai') + else: + logger.info(f"AI raw response: {response}") + ai_text = LocalAIApi.extract_text(response) + logger.info(f"Extracted AI text: {ai_text}") - Message.objects.create(conversation=selected_conversation, content=ai_text, is_from_user=False) - - # Re-fetch the conversation to include the new messages for rendering - selected_conversation = get_object_or_404(Conversation, id=conversation_id) + if not ai_text: + logger.warning("AI response was empty.") + ai_text = "I couldn't process that. Please try again." + Message.objects.create(conversation=selected_conversation, content=ai_text, sender='ai') + else: + ai_message_content = ai_text + sender = 'ai' + + try: + command_json = json.loads(ai_text) + if 'command' in command_json: + command_name = command_json.get('command', {}).get('name') + command_result = execute_command(command_json['command']) + + ai_message_content = command_result + sender = 'ai' if command_name == 'send_message' else 'system' + except (json.JSONDecodeError, TypeError): + # Not a JSON command, treat as a raw message. + pass + + Message.objects.create(conversation=selected_conversation, content=ai_message_content, sender=sender) + + except Exception as e: + logger.error(f"An unexpected error occurred: {e}", exc_info=True) + ai_text = f"An error occurred: {str(e)}" + Message.objects.create(conversation=selected_conversation, content=ai_text, sender='ai') + + return redirect('core:chat_detail', conversation_id=conversation_id) conversations = Conversation.objects.order_by('-created_at') - if conversation_id: - selected_conversation = get_object_or_404(Conversation, id=conversation_id) - else: - selected_conversation = None + selected_conversation = get_object_or_404(Conversation, id=conversation_id) if conversation_id else None return render(request, 'core/chat.html', { 'conversation_list': conversations, diff --git a/static/css/custom.css b/static/css/custom.css index 742ef2f..551c68f 100644 --- a/static/css/custom.css +++ b/static/css/custom.css @@ -198,4 +198,33 @@ body { @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } +} + +/* System and AI Command Messages */ +.message.system .message-content { + background-color: #f8d7da; + color: #721c24; + border: 1px solid #f5c6cb; +} + +.message.ai_command .message-content { + background-color: #d1ecf1; + color: #0c5460; + border: 1px solid #bee5eb; +} + +.message.ai_command .message-content pre { + white-space: pre-wrap; + word-wrap: break-word; + margin: 0; +} + +.kanban-card .card-body { + position: relative; +} + +.delete-task-form { + position: absolute; + top: 10px; + right: 10px; } \ No newline at end of file diff --git a/staticfiles/css/custom.css b/staticfiles/css/custom.css index 742ef2f..551c68f 100644 --- a/staticfiles/css/custom.css +++ b/staticfiles/css/custom.css @@ -198,4 +198,33 @@ body { @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } +} + +/* System and AI Command Messages */ +.message.system .message-content { + background-color: #f8d7da; + color: #721c24; + border: 1px solid #f5c6cb; +} + +.message.ai_command .message-content { + background-color: #d1ecf1; + color: #0c5460; + border: 1px solid #bee5eb; +} + +.message.ai_command .message-content pre { + white-space: pre-wrap; + word-wrap: break-word; + margin: 0; +} + +.kanban-card .card-body { + position: relative; +} + +.delete-task-form { + position: absolute; + top: 10px; + right: 10px; } \ No newline at end of file
Tags Status CreatedActions
{{ item.get_status_display }} {{ item.created_at|date:"M d, Y" }} +
+ {% csrf_token %} + +
+