Connect
ComposioHQ/awesome-claude-skills
Connect Claude to any app. An agent skill from ComposioHQ/awesome-claude-skills.
Look up Elron train times, fares and connections between Estonian (and cross-border Latvian) stations, see live delays and positions of running trains on a map, and check Ühiskaart farecard…
$ npx skills add joe-bell/skills --skill elron -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install joe-bell/skills elron --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/joe-bell/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/elron .claude/skills/elron && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "elron" agent skill from https://github.com/joe-bell/skills/tree/main/skills/elron into .claude/skills/elron/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elron", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/joe-bell/skills/tree/main/skills/elronType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add joe-bell/skills --skill elron -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install joe-bell/skills elron --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joe-bell/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/elron .agents/skills/elron && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "elron" agent skill from https://github.com/joe-bell/skills/tree/main/skills/elron into .agents/skills/elron/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elron", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add joe-bell/skills --skill elron -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install joe-bell/skills elron --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joe-bell/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/elron .cursor/skills/elron && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "elron" agent skill from https://github.com/joe-bell/skills/tree/main/skills/elron into .cursor/skills/elron/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elron", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/joe-bell/skills.git --path skills/elron--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add joe-bell/skills --skill elron -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install joe-bell/skills elron --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joe-bell/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/elron .gemini/skills/elron && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "elron" agent skill from https://github.com/joe-bell/skills/tree/main/skills/elron into .gemini/skills/elron/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elron", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install joe-bell/skills elronInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add joe-bell/skills --skill elron -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/joe-bell/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/elron .github/skills/elron && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "elron" agent skill from https://github.com/joe-bell/skills/tree/main/skills/elron into .github/skills/elron/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elron", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add joe-bell/skills --skill elron -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install joe-bell/skills elron --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joe-bell/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/elron .opencode/skills/elron && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "elron" agent skill from https://github.com/joe-bell/skills/tree/main/skills/elron into .opencode/skills/elron/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "elron", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
elronLook up Elron train times, fares and connections between Estonian (and cross-border Latvian) stations, see live delays and positions of running trains on a map, and check Ühiskaart farecard…
Elron is an agent skill from joe-bell/skills. Look up Elron train times, fares and connections between Estonian (and cross-border Latvian) stations, see live delays and positions of running trains on a map, and check Ühiskaart farecard balances, remembering the user's home station and cards. Use when someone asks about trains in Estonia, Elron departures, the next or last train to or from a station, whether a train is late or where it is, which trains will pass through a station, ticket prices, or the balance on their Elron or Ühiskaart card.
Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts and reference files (for example `references/maintenance.md`, `references/sources.md` and `scripts/elron.py`).
The repository describes itself as: Skills for me (and you). The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 2eb6b5d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
python3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Elron loads about 2.1k tokens when it runs, and up to ~4.3k if it reads all its reference files. Until then it costs about 127 tokens; SKILL.md has 1,216 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from joe-bell/skills at commit 2eb6b5d, republished under its MIT licence (© joe-bell). 1,216 words, ~2,131 tokens.
.claude/skills/elron/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Elron runs Estonia's passenger trains. Timetables, fares and farecard balances
come from the public Ridango API at api.ridango.com; live running data comes
from the feed behind the live map on elron.ee. Neither needs a login.
Use the bundled script rather than calling either source by hand. It resolves stop names, sends requests in the shape the API expects, remembers the user's settings and prints compact results. It needs Python 3.9+ and nothing else.
python3 scripts/elron.py stops [QUERY]
python3 scripts/elron.py trips [FROM] TO [--date YYYY-MM-DD] [--all] [--connections]
python3 scripts/elron.py live [QUERY] [--map [PATH]] [--tiles] [--watch [SECONDS]]
python3 scripts/elron.py passing STATION
python3 scripts/elron.py balance [CARD_NUMBER]
python3 scripts/elron.py config [--home STOP] [--add-card N] [--remove-card N] [--clear]Run it from this skill's directory, or pass the script's full path.
The skill ships with no station and no card. Learn them from the user, once.
trips TO. If it reports that no
home station is saved, ask which station they usually travel from, save it
with config --home STOP, then answer. From then on trips TO starts there.
If they name a different origin, pass both stops and leave the saved one
alone unless they ask.balance. If no card is saved, ask for the number, save it with
config --add-card N, then answer. balance with no argument checks every
saved card. Use --remove-card when they ask you to forget one; it takes
the full number or the last four characters, which is all the output shows.config with no flags shows what's saved and where. Settings live in
~/.config/elron/config.json (or $ELRON_CONFIG), readable only by the
user. Where the filesystem doesn't persist between conversations, as in a
hosted chat's sandbox, keep the home station in the host's own memory as
well and pass it explicitly.Never write the user's station or card numbers into this skill's files. Installs are copied folders: anything stored here is lost on the next update and leaks if the install is shared. Don't repeat a card number back beyond what the answer needs.
Answer in a sentence or two, leading with what was asked. For "when's the next train to Tartu?":
The next one leaves at 16:21 and gets in at 18:20. After that: 17:37 and 19:02.
stops QUERY helps when
unsure what a station is called.--date, the script uses today in
Europe/Tallinn and hides trains that have already left, saying how many it
hid. --all shows the whole day; --date picks another (convert
"tomorrow" or "Saturday" to a date first, in Estonian time).trips and read the first or last row.
Rows are trains the user can still catch, allowing for a late train's delay.bikes ok when bikes are allowed, express,
Elron's notices, and live: for a train that is on its way right now.trips lists direct trains first. When none are left
it adds journeys with one change automatically; --connections adds them
anyway. Each says where and when to change.trips lists trains that have
left but not yet reached the user's stop under Already on the way, with
their live status, allowing for delays. live lists every running train
with its delay, last stop, speed and coordinates; filter it with a line or
stop name (live Tartu).passing STATION. "Next train" questions stay with trips, which lists
trains that stop. passing places each running train on its line from its
live position and speed, and says whether it stops there.All times are Estonian local time; say so only if the user may be elsewhere. If no journey turns up even with one change, say there's no Elron train for that trip, not that there's no way to get there.
live --map also writes a self-contained HTML map of the running trains: dots
over an embedded outline of Estonia and its neighbours, coloured green (on
time), orange (late) and red (5+ minutes late). It prints the file's path; the
file goes to the system temp folder unless you pass one. The page makes no
network requests, and its own security policy forbids them, so it works
offline and in sandboxed previews such as Claude's artifacts, which block every
outside request. If the host can show HTML to the user, show that file;
otherwise give the path or open it in their browser.
--tiles draws the trains over OpenFreeMap street tiles instead. Use it only
for a page the user opens in their own browser: a sandboxed preview can't load
the tiles, so there it falls back to the plain map. HTML shown inside Claude
must make no outside requests.
Elron's own map can't be embedded: elron.ee forbids framing. A page can't poll
the feed either, because it sends no CORS headers. For a map that follows the
trains, run live --map --watch in the background on the user's own machine.
It prints the map's path straight away, rewrites the file every 15 seconds and
the page reloads itself (with --tiles, keeping the user's pan and zoom); stop
it when they're done. In a hosted chat, run live --map again when they ask
for an update.
Live data covers only trains running right now, so passing can't see a
train that hasn't set off yet. Its times are rough estimates from distance
and current speed; give them as "about". A train whose stopping pattern
can't be confirmed shows neither "stops" nor "doesn't stop". A train that
hasn't set off has no delay forecast, so call it scheduled rather than
promising it's on time; "running to schedule" is Elron's own status. If
elron.ee can't be reached, the script says so and still lists the timetable.
Fares are the full single-ticket price: discounts, period tickets and first
class aren't covered.
"could not reach api.ridango.com", or "live running data unavailable", in a
sandboxed host (claude.ai, ChatGPT, a cloud agent) almost always means the
sandbox blocks the domain. Tell the user to allow api.ridango.com and
elron.ee in that environment's network settings, and don't retry in a loop.
A farecard Elron doesn't recognise is reported per card; ask the user to check
the number.
For changing this skill, see maintenance.
© joe-bell, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (scripts, references) in skills/elron of joe-bell/skills.
Open the folder on GitHubat commit 2eb6b5d
Elron next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Elron this skilljoe-bell/skills | 211 | — | ~2.1k | Automated safety check: Pass | MIT | |
| ConnectComposioHQ/awesome-claude-skills | 77k | 3 repos | ~987 | Automated safety check: Pass | None | |
| Ito Trainingaffaan-m/ECC | 276k | 1 repos | ~1.5k | Automated safety check: Pass | MIT | |
| Node Connectopenclaw/openclaw | 392k | — | ~1.6k | Automated safety check: Pass | MIT | |
| Time Trackingsickn33/agentic-awesome-skills | 47k | 1 repos | ~3.8k | Automated safety check: Pass | MIT | |
| Time Ledgersickn33/agentic-awesome-skills | 47k | 1 repos | ~1.8k | Automated safety check: Pass | MIT |
ComposioHQ/awesome-claude-skills
Connect Claude to any app. An agent skill from ComposioHQ/awesome-claude-skills.
affaan-m/ECC
Inspect the availability of ML training on a completed Itô compute booking and, when the canonical backend becomes available, hand off an explicitly confirmed training manifest.
openclaw/openclaw
Diagnose OpenClaw Control UI browser and native Android, iOS, or macOS node connection failures across route, auth, pairing, QR/setup-code, and reconnect states.
sickn33/agentic-awesome-skills
Time entry register: employee, project, client, task, hours, billable flag, rate and amount, invoice and approver.
sickn33/agentic-awesome-skills
Natural-language time tracking: parse what the user says they did into Activity/Minutes/Date rows in their own Notion database — asking instead of guessing when unsure.
Orchestra-Research/AI-Research-SKILLs
Scales PyTorch, TensorFlow and Hugging Face training from a single GPU to multi-node clusters with Ray Train, including Ray Tune sweeps and checkpoint recovery.
joe-bell/skills
Fetch recently watched films from a Letterboxd member's diary RSS feed and render them as a compact markdown list, with first-run setup for the username.
joe-bell/skills
A skill your agent uses when implementing, debugging, or auditing how any website or web app looks and behaves on iPhone and iPad — in Safari or added to the Home Screen — or added to the Mac Dock…
Look up Elron train times, fares and connections between Estonian (and cross-border Latvian) stations, see live delays and positions of running trains on a map, and check Ühiskaart farecard…. Elron is an agent skill from joe-bell/skills. Look up Elron train times, fares and connections between Estonian (and cross-border Latvian) stations, see live delays and positions of running trains on a map, and check Ühiskaart farecard balances, remembering the user's home station and cards.
Elron fits situations like: someone asks about trains in Estonia; elron departures; whether a train is late; which trains will pass through a station.
Run `npx skills add joe-bell/skills --skill elron -a claude-code`. Or copy the skill folder (skills/elron in joe-bell/skills) into .claude/skills/elron in your project. Claude Code loads it when a task matches its description.
Run `npx skills add joe-bell/skills --skill elron -a codex`. Or copy the skill folder (skills/elron in joe-bell/skills) into .agents/skills/elron in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add joe-bell/skills --skill elron -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/elron, .gemini/skills/elron, .github/skills/elron and .opencode/skills/elron in your project.
Going by SKILL.md and its folder, Elron needs Python for the scripts in its folder and the command-line tools its instructions call (python3). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Elron is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.1k tokens (SKILL.md is roughly 8.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Elron: Connect (ComposioHQ/awesome-claude-skills, 77k stars), Ito Training (affaan-m/ECC, 276k stars), Node Connect (openclaw/openclaw, 392k stars) and Time Tracking (sickn33/agentic-awesome-skills, 47k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
joe-bell (a GitHub user) maintains it in joe-bell/skills, which has 211 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 7, 2026.
Source: joe-bell/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.