Inspiration

A calendar can contain non-overlapping appointments and still be impossible. Travel, preparation and the time needed between activities can be missing. Calm Evening makes those gaps visible while respecting commitments that cannot move.

What it does

The English/Polish interface accepts activity times, transition minutes, fixed commitments and explicitly allowed flexibility windows. A local AI agent chooses bounded read-only planning tools. Verified calculations identify timing conflicts and compute possible alternatives. A proposed plan remains a draft until the person chooses it. Choosing a draft changes the local form only.

The demonstrated example is fictional: a fixed session from 17:30 to 18:30 needs a twenty-minute transition, while a routine starts at 18:30. Two fixed activities produce a twenty-minute shortfall and a need for coordination. If the person explicitly permits the routine to fit within 18:30–19:30, a draft can place it at 18:50–19:20 without moving the fixed session.

How it was built

The application uses JavaScript and Node.js, HTML/CSS, Qwen3-1.7B Q8_0 and a pinned llama.cpp runtime. The local model chooses workflow actions; the constraint engine determines all displayed times. The same tool registry is available through a local MCP 2025-11-25 Streamable HTTP endpoint. In-app agent calls invoke the registry directly; generic HTTP/MCP interoperability was checked separately. The project is a local simulated planning assistant, not an Alexa-connected product.

AI assistance

An AI coding assistant helped implement and document the project. The participant provided the scheduling problem, design preferences and feedback, and tested the application. This description does not claim independent authorship of every line of code.

Challenges

The small model required explicit permitted-action checks and the schema format supported by the pinned runtime. Model-generated timing claims are not trusted. Tool inputs are bound to the submitted schedule, verified results determine the presentation, and stale responses are discarded after the form changes. A classic browser bundle repaired the preview opened directly as a local file.

Validation

Twenty-five automated checks passed across constraints, MCP handling, agent boundaries, the local model adapter, web handling and simulated UI behavior. Three genuine model/HTTP cases and a generic MCP lifecycle passed. A separate real Chrome walkthrough verified the fixed conflict, an explicitly allowed flexible draft, and choosing that draft in the form. Test evidence distinguishes genuine inference from historical synthetic smoke checks.

Current limits and future work

The interface currently edits two activities. Planning is within one day, with one movable activity searched at a time. There is no connected calendar, booking system, external AI service or Alexa device. Mobile layout, keyboard coverage and official MCP SDK interoperability need further checking. Future work could broaden the interface and support more planning constraints while preserving explicit consent for any change.

Demo presentation

The English demo is a labeled edited montage of authentic captures from the verified local AI walkthrough. It shows actual computed results, with static frames held for readability and synthetic English narration. It is not presented as a continuous screen recording.

Built With

Share this project:

Updates

Submission history