Skip to main content

CLI tool for interacting with Indico event management systems

Project description

indico-cli

Command line interface for interacting with Indico event management systems.

Installation

# Run directly with uvx (recommended)
uvx indico-cli --help

# Or install with pip
pip install indico-cli

Configuration

Set environment variables:

export INDICO_BASE_URL="https://indico.cern.ch"
export INDICO_API_TOKEN="indp_..."  # Bearer token from Indico preferences

Or use the configure command to save credentials:

indico-cli configure --base-url https://indico.cern.ch --token indp_...

API tokens can be generated at <your-indico-url>/user/preferences/api. Required scopes: read:legacy_api, write:legacy_api (for create operations), read:user (optional).

Usage

Search

# Full-text search across all content types
indico-cli search-by-term --term "machine learning"

# Full-text search with date range
indico-cli search-by-term --term "Smith" --type contribution --from-date 2025-01-01 --to-date 2025-03-31

# Search events in a category
indico-cli search-events --category-id 4648 --from-date 2025-01-01

# Browse categories
indico-cli search-categories --category-id 0

Event Details

# Get event info with contributions and sessions
indico-cli event-details --event-id 137346 --contributions --sessions

# List contributions/talks
indico-cli contributions --event-id 137346 --subcontributions

Files

# List and download all event files
indico-cli files --event-id 137346

# List files without downloading
indico-cli files --event-id 137346 --no-download

# Download a single attachment
indico-cli download --url "https://indico.cern.ch/event/.../file.pdf"

The files command covers every file source attached to an event:

  • Event materials — legacy event.material[] entries.
  • Event folder attachments — generic files uploaded directly to the event page (not under any contribution). Typical for short meetings like the LHC morning meeting, where a single slide deck is attached to the event itself.
  • Contribution attachments — files attached to individual contributions/talks.

Create Events

# Create a simple meeting
indico-cli create-event --title "Team Meeting" --category-id 4648 --type meeting \
  --start 2025-06-15T09:00:00 --end 2025-06-15T10:00:00

# Create event with full agenda from JSON file
indico-cli create-event-with-agenda --title "Workshop" --category-id 4648 \
  --type meeting --start 2025-06-15T09:00:00 --end 2025-06-15T17:00:00 \
  --agenda-file agenda.json

All Commands

Command Description
configure Save Indico base URL and API token, and verify the connection.
user-info Show the current user's name, email, and admin status.
search-events List events in a category, with optional date range and public-only filter.
search-by-term Full-text search across categories, events, contributions, attachments, and notes.
search-categories Browse sub-categories of a given category.
event-details Show event metadata, optionally with contributions and sessions.
contributions List contributions (and optionally subcontributions) of an event.
files List and download all files attached to an event — event-level materials, event-page folder attachments, and contribution attachments.
download Download a single attachment by its URL.
create-event Create a new event (lecture, meeting, or conference).
create-session Create a session inside an event.
create-contribution Create a contribution inside an event, optionally in a given session.
add-timetable-entry Add a session block or contribution entry to the event timetable.
delete-timetable-entry Remove an entry from the event timetable.
create-event-with-agenda Create an event and populate its timetable from a JSON agenda file.

Run indico-cli --help for the same list, or indico-cli <command> --help for command-specific options.

Claude Code Skill

A Claude Code skill is included for AI-assisted Indico workflows. It provides a single consolidated skill covering all CLI commands: searching events, browsing categories, creating events/sessions/contributions, managing timetables, downloading files, and configuring credentials.

The skill also includes guidance for multi-step workflows such as:

  • Recovering from missing or deleted events by searching for alternatives
  • Chaining search, download, and content extraction to answer questions from slides
  • Paginating through large categories (works around the 10-event display limit)

Install the skill

npx skills add https://gitlab.cern.ch/cern-agent-skills/indico-cli.git

Once installed, Claude Code will automatically use the skill whenever you ask about Indico events, conferences, meetings, or agendas. You can also invoke it directly with /indico-skill.

Documentation

Project details


Download files

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

Source Distribution

indico_cli-0.4.3.tar.gz (40.8 kB view details)

Uploaded Source

Built Distribution

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

indico_cli-0.4.3-py3-none-any.whl (25.8 kB view details)

Uploaded Python 3

File details

Details for the file indico_cli-0.4.3.tar.gz.

File metadata

  • Download URL: indico_cli-0.4.3.tar.gz
  • Upload date:
  • Size: 40.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for indico_cli-0.4.3.tar.gz
Algorithm Hash digest
SHA256 b5a4ec4a992cb6445ba3e12ba4117506937139612d2c91324f079e9fd03d80bf
MD5 bda00ddf3bc2099fe1fbfdd80f0e7ccb
BLAKE2b-256 c13de168152e8211b76ce9a380575c8c7d8d59f8116ae483e804ac4ddeb05099

See more details on using hashes here.

File details

Details for the file indico_cli-0.4.3-py3-none-any.whl.

File metadata

  • Download URL: indico_cli-0.4.3-py3-none-any.whl
  • Upload date:
  • Size: 25.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for indico_cli-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2cb749fa6c838a47f486ec68d22e0f9a01669ad6522f9439487fbe79c70452b4
MD5 23aea513bc8dd7cc0139ee6dff3385be
BLAKE2b-256 e0443c6028537fd3d2f499b7b10ab71e17b6c17a61cc5c59e69c24103e62c55f

See more details on using hashes here.

Supported by

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