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.1.0.tar.gz (8.9 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.1.0-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: agente_calendario-2.1.0.tar.gz
  • Upload date:
  • Size: 8.9 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.1.0.tar.gz
Algorithm Hash digest
SHA256 6952fd7ae8abfc026f2e23c32c7b6bcc0f825f692719c74fbbeb5a877a9900fc
MD5 7a68f2e9bb48b62ab9ab63c2a4a02630
BLAKE2b-256 112981e37c8721d27ad9cff4674569a9efb3af10896b2838bdd3baa00035bfaa

See more details on using hashes here.

Provenance

The following attestation bundles were made for agente_calendario-2.1.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.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for agente_calendario-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 609a71efeebed3d3ea176b18c94b475543cecad7794cbc156918eaccf4478371
MD5 57646663e342b57dd31fda513e150d45
BLAKE2b-256 c52d99caf001eef9d4332d55511c09382816a0c1e80588fc0933a7555567d47d

See more details on using hashes here.

Provenance

The following attestation bundles were made for agente_calendario-2.1.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