Skip to main content

agente_calendario

Agente conversacional para gestionar eventos del calendario. Conversational agent to manage calendar events.

Utiliza un modelo de lenguaje (LLM) para interpretar instrucciones en lenguaje natural, It uses a language model (LLM) to interpret natural language instructions,

genera un JSON con la acción y los parámetros, y ejecuta la operación correspondiente generates a JSON with the action and parameters, and executes the corresponding operation

sobre el archivo ICS del calendario a través del módulo calendario_ics (su backend). on the calendar ICS file through the calendario_ics module (its backend).

Plataformas Soportadas (Probado con:) / Supported Platforms (Tested with:)

Esta herramienta ha sido probada oficialmente con los siguientes calendarios locales: This tool has been officially tested with the following local calendars:

Sistema Operativo Aplicación Estado
Linux KOrganizer (KDE Plasma 6) ✅ Probado
Windows Rainlendar Lite 2.24.1 (Windows 10/11) ✅ Probado
macOS No soportado actualmente ❌ Pendiente

Instalación / Installation

pip install agente_calendario

Con script / With script

# Para Linux / For Linux
# Copiar el script al directorio donde están los .py
chmod +x install.sh
./install.sh
# Para Windows / For Windows
# Abrir PowerShell
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\install.ps1

Configuración avanzada / Advanced configuration

Puedes especificar una ruta personalizada para los archivos .ics usando la variable de entorno CALENDARIO_ICS_DIR.
You can specify a custom path for the .ics files using the CALENDARIO_ICS_DIR environment variable.

# Linux / macOS
export CALENDARIO_ICS_DIR="/ruta/a/tus/calendarios"
# Windows (PowerShell)
$env:CALENDARIO_ICS_DIR="C:\ruta\a\tus\calendarios"
# Windows (CMD)
set CALENDARIO_ICS_DIR=C:\ruta\a\tus\calendarios

Si no se define, el agente intentará detectar automáticamente la ruta según tu sistema operativo:

Linux: ~/.local/share/apps/korganizer/

Windows:  %USERPROFILE%\.rainlendar2\ (o su subcarpeta Calendar)

macOS: No hay una ruta estándar para archivos ICS sueltos; usa la variable de entorno.

If not set, the agent will try to auto-detect the path based on your OS:

Linux: ~/.local/share/apps/korganizer/

Windows: %USERPROFILE%\.rainlendar2\ 

macOS: No standard path for loose ICS files; use the environment variable.

Dependencias / Dependencies

calendario_ics (se instala automáticamente / installed automatically)

Servidor llama.cpp en ejecución / llama.cpp server running

Uso / Usage

Iniciar el agente / Start the agent

# Usando la dirección y puerto por defecto (127.0.0.1:8082)
calendario-agent
# Especificando host y puerto / Specifying host and port
calendario-agent --host 192.168.1.10 --port 8080

Ejemplo de sesión interactiva / Interactive session example

$ calendario-agent --host 127.0.0.1 --port 8082
======================================================================
AGENTE CONVERSACIONAL PARA EL CALENDARIO (con LLM)
======================================================================
Servidor LLM: 127.0.0.1:8082
Escribe instrucciones en lenguaje natural.
Ejemplos:
  - 'Lista los eventos de hoy'
  - 'Agrega una reunión mañana desde las 10:00 hasta las 12:45'
  - 'Elimina el evento con UID agente-123'
  - 'Muestra el evento con UID agente-456'
  - 'Modifica el evento con UID agente-789...'

Escribe 'salir' para terminar.

>>> Lista los eventos de hoy
[*] Enviando petición al LLM...
[*] JSON recibido:
{
  "accion": "list",
  "parametros": {
    "start": "2026-08-05",
    "end": "2026-08-05"
  }
}
[*] Comando equivalente: python calendario_ics.py list --start 2026-08-05 --end 2026-08-05
Eventos en Calendario personal:
  UID: agente-1785259076207415.149974 | Reunión con equipo | 2026-08-05 15:00 -> 2026-08-05 18:43

>>> Agrega una reunión mañana a las 10:00 hasta las 11:30 en la oficina
[*] Enviando petición al LLM...
[*] JSON recibido:
{
  "accion": "add",
  "parametros": {
    "summary": "Reunión en oficina",
    "dtstart": "2026-08-06 10:00",
    "dtend": "2026-08-06 11:30",
    "location": "oficina"
  }
}
[*] Comando equivalente: python calendario_ics.py add --summary "Reunión en oficina" --dtstart "2026-08-06 10:00" --dtend "2026-08-06 11:30" --location "oficina"
Evento agregado con UID: agente-1785259076207415.149974

LICENSE

MIT License

Copyright (c) 2026 Reinel G. Paredes

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agente_calendario-2.0.0.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agente_calendario-2.0.0-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file agente_calendario-2.0.0.tar.gz.

File metadata

  • Download URL: agente_calendario-2.0.0.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for agente_calendario-2.0.0.tar.gz
Algorithm Hash digest
SHA256 20b8812546cca5670dfee3151c22acc5629103853888aaada3d86f1513f0da8c
MD5 61d8885194581ad4dc6e25d3dd2b415b
BLAKE2b-256 813e280186a02378a158b2005f74da182ac297a673ddf376951cdbfb21eb2d60

See more details on using hashes here.

Provenance

The following attestation bundles were made for agente_calendario-2.0.0.tar.gz:

Publisher: publish.yml on rgparedess/agente_calendario

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agente_calendario-2.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for agente_calendario-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b10920079f864b0a37909757d0844bdc7d354f773570e00d6ad813571a82ba3a
MD5 65aa0158abaa64f420cdf63377369e23
BLAKE2b-256 a02023ba86b5ce4ca7a23e0fdf28b612f38057ef3d56486dbf3c35433115c5dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for agente_calendario-2.0.0-py3-none-any.whl:

Publisher: publish.yml on rgparedess/agente_calendario

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page