GMap2ICal
Kotlin Compose for Desktop App. Convert Google Maps timeline to ICS for Calendar import
Install / Use
npx skills add ryanw-mobile/GMap2ICalInstalls into whichever agent you are using.
Amazon Q Rules
Amazon Q Developer rules
Quality Score
Category
AutomationSupported Platforms
Our assessment of GMap2ICal
GMap2ICal scores 56/100 on our quality scale, 1620th of 1,753 Automation skills we index.
Its Amazon Q Rules is 5.5 KB long, well organised into 10 sections and no code examples: a solid amount of guidance for an agent.
It has no GitHub stars yet, so there is no community track record; judge it on its content.
Maintenance, license and trust
- We could not determine when the repository was last updated.
- Our last check on 2026-09-27 found the source still online.
- No license is declared. By default that means all rights are reserved: you can read it, but reusing or redistributing it is not clearly permitted. Ask the author before building on it commercially.
- Its trust signals score 68/100, with 3 cautions from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
Safety scan
No issues foundOur scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands (1 minor note below). An AI review of the same text found nothing harmful.
- noteInstalls by piping a downloaded script into a shellline 15
### S1 — `curl | bash` in the Codacy coverage reporter step
AI review by kimi-k2.7-code on 2026-09-24. Automated pattern scan on 2026-09-24. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.
GMap2ICal compared with similar skills
All 4 of these similar skills score higher than GMap2ICal; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| GMap2ICal (this skill)by ryanw-mobile | 56 | 0 | — | Amazon Q Rules |
| Agent-Reachby Panniantong | 100 | 85.7k | 12d ago | CLAUDE.md |
| rufloby ruvnet | 100 | 73.4k | today | CLAUDE.md |
| Scraplingby D4Vinci | 100 | 84.0k | today | MCP Server |
| ui-ux-pro-maxby nextlevelbuilder | 100 | 130.2k | 6d ago | SKILL.md |
Frequently asked questions
- How do I install GMap2ICal?
- Run
npx skills add ryanw-mobile/GMap2ICal. The install tabs above show the steps for each supported agent. - Which AI agents does GMap2ICal work with?
- It is written for Amazon Q, as a Amazon Q Rules file. Other agents that read the same format can often use it too.
- Is GMap2ICal safe to use?
- Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands (1 minor note below). An AI review of the same text found nothing harmful. It declares no license and scores 68/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is GMap2ICal still maintained?
- We could not determine when the repository was last updated.
Skill content
View source on GitHubCode Review Standards
Persistent review instructions for automated reviewers on this repository. Findings matching a suppression rule below have already been evaluated and rejected; do not raise them again.
Project context
GMap2iCal is a public, open-source Kotlin Multiplatform desktop utility. It converts a user's own Google Maps Timeline JSON export into iCalendar files on their local machine. It has no server component, no production deployment, no commercial system, and handles no third-party user data. Assess the impact of any finding against that blast radius before assigning severity.
Suppression rules
S1 — curl | bash in the Codacy coverage reporter step
Do not report the bash <(curl -Ls https://coverage.codacy.com/get.sh) invocation in
.github/workflows/coverage_report.yml as a download-without-integrity-check issue (CWE-494) or as
a supply-chain vulnerability.
- It is not introduced by this repository.
codacy/codacy-coverage-reporter-actionexecutes the identical command internally; calling the CLI directly only makes the existing behaviour visible. The direct call is required because the action exposes nocommit-uuidinput. - The fetch is over HTTPS, and
get.shchecksum-verifies the reporter binary it downloads. - The only credential in scope is a project-scoped Codacy coverage-upload token. Worst-case impact is falsified coverage figures on a public repository, and the token is trivially rotatable.
This residual risk has been assessed and accepted.
S2 — Coverage gate status wording when the upstream build fails
Do not report the commit status posted by .github/workflows/coverage_report.yml as a logic error
on the grounds that it does not distinguish a build failure from an upload failure.
- The description is factually accurate on every path that reaches it: if the build failed, coverage genuinely was not uploaded.
- The build failure is separately reported by the required
buildcheck, so no information is lost. - Do not suggest skipping the status post when the build did not succeed.
coverage-reportis a required status check onmain; omitting it would leave the check permanently pending and block merges with no explanation. Failing closed is the intended contract.
This also covers the variant claiming steps.codacy.outcome is empty or undefined when an earlier
step fails. A step whose if: omits a status check function carries an implicit success(), so a
failed download or verification skips the reporter step and outcome is 'skipped' — a defined
value that correctly yields failure.
S4 — Action version availability
Do not report a pinned GitHub Action version as non-existent, unavailable, or newer than the latest release without first verifying against that action's published tags. Model training data lags behind action releases, and this repository tracks current majors via Renovate.
At the time of writing, actions/download-artifact is at v8, actions/upload-artifact at v7,
actions/checkout at v7 and actions/setup-java at v5. Claims that v4 is the latest available
version of download-artifact are incorrect. Note also that run-id and github-token, required to
read an artifact produced by a different workflow run, are supported in the version in use.
S5 — Implicit success() on workflow steps
Do not report a step as missing if: success(), and do not claim a step runs after an earlier step
has failed. A step with no if: condition already carries an implicit success() and is skipped
automatically once any earlier step in the job fails. Adding if: success() is a no-op.
This applies specifically to the artifact upload in main_build.yml: when the Gradle build fails the
upload is already skipped, if-no-files-found: error is never reached, and no build failure is
masked. The absence of if: always() there is equally deliberate — the commit is read from the
workflow_run event payload, not the artifact, so no artifact is needed on the failure path.
S6 — Coverage artifact path resolution
Do not report COVERAGE_REPORT in coverage_report.yml as a path mismatch without accounting for
both halves of how the path is produced:
upload-artifactis given a single explicit file path, so it roots the archive at that file's parent directory and the report sits at the artifact root.- The download step sets
path: coverage, so the contents are extracted intocoverage/rather than the workspace root.
The report therefore resolves at coverage/jacocoTestReport.xml. Suggesting a bare
jacocoTestReport.xml is incorrect and would break the verification step.
S3 — Scope of CI workflow findings
When reviewing .github/workflows/, report a finding only where there is a concrete exploitation or
failure path specific to this repository's configuration. Do not report:
- Generic hardening advice that applies equally to the code being replaced.
- Action versions pinned by tag rather than commit SHA, which is this repository's established convention.
- Fabricated coverage data submitted from a fork build. Coverage is generated by contributor code by design; the gate proves an upload occurred, not that the code is tested. This is understood.
General standards
- Report concrete bugs, genuine crash risks, and security issues with a specific reproduction path.
- Do not report theoretical risks, stylistic preferences, or architectural alternatives.
- Do not re-raise a finding that has been rejected in a previous round on the same pull request.
- Weigh severity against the project context above rather than against a generic threat model.
Related Skills
Agent-Reach
85.7kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
ruflo
73.4k🌊 The original agent harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, federation, vector RAG integration, and native Claude Code / Codex / Hermes and many more Integrated
Scrapling
84.0k🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
ui-ux-pro-max
130.2kUI/UX design intelligence for web, mobile, and desktop. This skill should be used when designing, building, reviewing, or fixing interfaces, including pages, components, design systems, accessibility, interaction, responsive layout, typography, color, charts, and stack-specific UI implementation.
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
