Building you first AI Agent for a Task Organizer with Still.js and Groq

Backer posted 2 min read

AI is now widely used for solving various problems, especially in the tech industry and among software developers. This article explores a specific use case of AI, focusing on certain key aspects while keeping the end-user in mind.

In summary, the task organizer is a software tool designed to help users manage tasks over various timeframes. While powerful Project/Task Management solutions like Motion and ClickUp exist, here we’ll demonstrate the capabilities of Still.js by discussing and building a small PoC covering a specific and tiny aspect.

AI Agent vs Agentic AI

According to google AI Overview "AI agents are specialized tools designed for specific, well-defined tasks, while Agentic AI represents a broader concept of autonomous, goal-driven systems that adapt to changing situations, and coordinate actions with minimal human oversight"

From Generative AI to Generative UI

This concept involves generating UI dynamically based on user prompt. Different prompts produce different UI components. In our case, we’ll handle it using a client-side approach.

How our Agent will it work essentially?

  1. The user will write a text with the tasks he'll do, specifying what, how and when
  2. Content is submitted to the Agent/LLM, which generates task(s)
  3. UI parses LLM response and decides, how/what predefined component to render/present
  4. User can then ask the agent to mark tasks as completed.

Different points of the design systems are addressed in here, for the implementation there is a “hands-on youtube video” where a tiny implementation is built from scratch. Bellow is the design system depicting an overview of the solution.

We’ll consider essentially 3 main parts, the AI provider, a custom Backend API, and the UI which we describe as follow:

AI Provider supplies intelligent capabilities

Backend provides a robust and secure integration with the AI, also serves the Frontend

Frontend handles user input and displays the AI's results.

In this use case, Still.js features like runtime form generation and centralized form validation are leveraged to manage task completion. The structure includes three components:

  • Home (main component),

  • TaskDay (group of tasks),

  • Task (individual tasks).
Tasks report back to the Home component as form, enabling them to be marked as completed.

Groq infrastructure is what we'll use for LLM, however other AI providers like Google Gemini, ChatGPT, Copilot, LLaMa, or even offline/on-prem options like Ollama could also be used.

Prompts are sent from the Still.js enabled UI to the AI engine via chat, mainly as text, but it could support voice or audio.

In production, long-term memory for LLMs or agents often requires connecting to external sources like vector databases, highlighting the need for a strong backend. Our agent will have a short-term memory which will be handle as the bellow design:

Tool use and workflow management are key in Agentic AI, enabling both agency (thinking) and predictability (acting). For some tasks, a robust backend better supports these capabilities. The agent we'll build has moderate predictability.

In the demo, we’re connecting the UI straight to the AI engine for the sake of the size of the hands-on video tutorial, however this is also a valid scenario when using ephemeral API token.

Are you still here? Less talking, more doing, click here and follow the tutorial to build your first AI Agent.

See you there

If you read this far, tweet to the author to show them you care. Tweet a Thanks

Great work, Nakassony! Loved the hands-on approach. Quick question — how well does your agent handle vague or messy task inputs from users?

Hi James, thanks for the feedback, the accuracy on the response over the user inputs would depend more on how the agent is trained in the beginning and throughout the conversation flow, we need, for example, we can let it know that some weird inputs might happen, and in this case it can ask additional questions for more clarification thereby making it (agent) to provide with accurate response.

One example of vague inputs happens at the end of the youtube video (https://youtu.be/x_gTiJKemcA) as what I'm entering there does provides proper context to the agent, making it to generate inacurate response.

Great read! I'm curious, while you’ve outlined how the AI agent works with Still.js and Groq, how do you envision scaling the task organizer for larger teams or more complex projects? Would the AI's ability to generate dynamic UI components still be effective in such a context, or would you need to implement additional logic or tools to manage things like team collaboration or task dependencies?

Hi Clifford, yes, Dynamic UI component generation will still be effective, as the UI would not be recreated just new component would be added for the new tasks.

Definitely for scaling to a team collaboration kind of capabilities new logics would be implemented, and to some extent tools there by bringing some MCP for external resources and function call/usage.

Nice work! The combination of text and images in the article is very helpful for understanding!

Hi Horushe, thanks for the feedback, definitely those different aspects like image and animation helps to enrich the explanation and provide more understanding. I hope this brings a bit more understanding and clarity for the readers.

More Posts

Asynchronous AI Processing Architecture: Building Non-Blocking User Experiences for Long-Running AI

horushe - Sep 5

The Secret Weapon for Java Developers Building with AI

myfear - Mar 18

The first AI-native proxy designed specifically for agent communication joins Linux Foundation.

Tom Smith - Aug 25

Building Web Servers with Node.js and Bun – A Backend Developer’s First Step

Santwan pathak - Jul 28

Building a Poetry App with Google AI Studio: The Making of VerseForge

Lakshya Singh Chauhan - Aug 8
chevron_left