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_...
Saved credentials live in $XDG_CONFIG_HOME/indico-cli/config.json (or
~/.config/indico-cli/config.json when XDG_CONFIG_HOME is unset), written with
owner-only permissions (0600). Inspect or reset them with indico-cli config show, indico-cli config path, and indico-cli config clear.
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. |
config show |
Show the saved base URL and a masked token, plus the config file path. |
config path |
Print the path to the config file. |
config clear |
Delete the saved configuration (use --yes to skip the prompt). |
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file indico_cli-0.5.1.tar.gz.
File metadata
- Download URL: indico_cli-0.5.1.tar.gz
- Upload date:
- Size: 51.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
73766d2cb04197d4bfb4855efb0297521cbf85cd7a930e14d8a174eb2d3e482e
|
|
| MD5 |
4abd7c78f1c6078371c0c0033a2f8185
|
|
| BLAKE2b-256 |
3ef75be64b72ee1b0a554098717adf285360278e7b222ad70b0068d8d7cbdebf
|
File details
Details for the file indico_cli-0.5.1-py3-none-any.whl.
File metadata
- Download URL: indico_cli-0.5.1-py3-none-any.whl
- Upload date:
- Size: 28.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07653d6eaab1f81164ab7c243d3d280f33bbf5fa6c0374fcf69ba22fb9427e90
|
|
| MD5 |
04493131e459086f8bfc3c8156677fb5
|
|
| BLAKE2b-256 |
95d4db6109000a7e060aef8be82cf9de573b4394e8438c5c2bf7f34834e861e9
|