akaihola
- 41 skills
- 0 followers
- 1 week ago last updated
- ▌ Discard Whitespace Hunks · akaihola bundleDiscard whitespace-only diff hunks from the git working tree while preserving real content changes. Use this skill whenever the user asks to clean up whitespace noise in a git diff, discard formatting-only changes, remove whitespace/indentation/line-break-only hunks, strip cosmetic diff noise, or keep only meaningful changes in unstaged modifications. Also use it when the user says things like "my diff is full of whitespace junk" or "I only want the real changes" or "drop the reformatting hunks".
- ▌ Processing Scanned Receipts · akaihola bundleUse when processing a batch of scanned receipt PDFs that need image extraction, OCR, structured plaintext generation, and descriptive renaming.
- ▌ Bauhaus · akaihola bundleSearch products on the Bauhaus webshop (bauhaus.fi). This skill uses the Algolia search API with automatic key refresh. Use when the user asks to "search Bauhaus", "find products on bauhaus.fi", "bauhaus product search", "check Bauhaus prices", or mentions searching the Bauhaus store.
- ▌ K Rauta · akaihola bundleSearch products on the K-Rauta webshop (k-rauta.fi). This skill uses the K-Rauta backend search API directly, requiring no browser. Use when the user asks to "search K-Rauta", "find products on k-rauta.fi", "k-rauta product search", or mentions searching K-Rauta. Note: Prices are not included in search results — check on k-rauta.fi.
- ▌ Motonet · akaihola bundleSearch products on the Motonet webshop (motonet.fi). This skill uses the Motonet search API directly, requiring no browser. Use when the user asks to "search Motonet", "find products on motonet.fi", "motonet product search", "check Motonet prices", or mentions searching the Motonet store.
- ▌ Netrauta · akaihola bundleSearch products on the Netrauta webshop (netrauta.fi). This skill uses the Loop54 search API directly, requiring no browser. Use when the user asks to "search Netrauta", "find products on netrauta.fi", "netrauta product search", "check Netrauta prices", or mentions searching the Netrauta store.
- ▌ Tokmanni · akaihola bundleSearch products on the Tokmanni webshop (tokmanni.fi). This skill uses the Klevu search API directly, requiring no browser. Use when the user asks to "search Tokmanni", "find products on tokmanni.fi", "tokmanni product search", "check Tokmanni prices", or mentions searching the Tokmanni store.
- ▌ Ecb Rates · akaihola bundleFetch USD/EUR currency exchange rates from European Central Bank (ECB) and save to CSV. Provides 2025 rates and conversion guidance.
- ▌ Clasohlson · akaihola bundleSearch products on the Clas Ohlson Finland webshop (clasohlson.com/fi/). This skill uses the Voyado Elevate (Apptus eSales) search API directly, requiring no browser. Use when the user asks to "search Clas Ohlson", "find products on clasohlson.com", "clas ohlson product search", "check Clas Ohlson prices", or mentions searching the Finnish Clas Ohlson store.
- ▌ Fleet Audit · akaihola bundleCheck whether every deployment of a skills repo is current across a fleet of accounts and machines. Use when the user asks "are my skills up to date everywhere", "audit skill deployments", "find stale or broken skill links", or after changing how skills are deployed. Reports only anomalies — stale checkouts, broken symlinks, cross-user absolute links, and copies that have drifted from the repo.
- ▌
- ▌ Zed Threads · akaihola bundleRead and inspect Zed AI conversation threads stored in the local SQLite database. Use when the user asks to "show Zed threads", "read my Zed AI conversations", "inspect Zed chat history", "dump Zed thread", or wants to examine past Zed AI interactions.
- ▌ Brave Search · akaihola bundleSearch the web using Brave Search API. Use when the user asks to "search the web", "look up current information", "find news about", "research a topic online", "check prices online", or needs up-to-date facts that may not be in the model's training data. Requires BRAVE_SEARCH_API_KEY. Supports structured web results (pages, FAQs, news, videos) and an optional AI summarizer.
- ▌ Secrets Scan · akaihola bundleScan a git repository for leaked credentials, API keys, tokens, and other secrets using detect-secrets (uvx) and secretlint (bun). Runs both tools, reads each flagged line, and classifies findings as needing review vs. likely false positives. Use when the user asks to "scan for secrets", "check for credentials", "find leaked keys", "detect secrets", "check for API keys", "check for leaked tokens", or wants to verify no credentials are committed. Supersedes the credentials-check skill.
- ▌ Verkkokauppa · akaihola bundleSearch products on the Verkkokauppa.com Finnish webshop. This skill uses the Verkkokauppa search API directly, requiring no browser. Use when the user asks to "search Verkkokauppa", "find products on verkkokauppa.com", "verkkokauppa product search", "check Verkkokauppa prices", or mentions searching the Verkkokauppa store.
- ▌ Gemini Vision · akaihola bundleAnalyse one or more images with Gemini's vision model – describe contents, answer questions, extract text (OCR), compare images, or analyse charts/screenshots/diagrams. Requires GEMINI_API_KEY environment variable. Use when the user asks to look at, analyse, describe, read, or compare images.
- ▌ Context7 · akaihola bundleFetch up-to-date library documentation using Context7. Use when the user asks to "fetch documentation from context7", "get library docs", "resolve a library ID", "use context7 MCP tools", or mentions context7 library documentation. Provides dynamic MCP tool invocation without loading all tool definitions into context.
- ▌ Fonecta Lookup · akaihola bundleReverse-lookup Finnish phone numbers via Fonecta Caller (fonecta.fi). Use when given a list of Finnish mobile or landline numbers and asked to find the associated person or company names. Requires a Fonecta account with CallerPro subscription and Playwright installed.
- ▌ PDF To Markdown · akaihola bundleConvert a PDF book or document into clean, structured Markdown files split by chapter/section, with embedded images. Uses the Gemini Files API for high-quality conversion. Handles hyphenation repair, page-break paragraph joining, and blockquote formatting.
- ▌ Pi Session Logs · akaihola bundleSearch and analyze Pi agent session logs stored as JSONL files under ~/.pi/agent/sessions/, and query CCM (Claude Code Mux) proxy logs via journalctl. Use when investigating what Pi did in a past session, why a build or tool call failed, how Pi used interactive_shell, what CCM routed and at what latency, or reconstructing a full session transcript. Covers searching by text, timeline inspection, tool-call auditing, and correlating Pi session timestamps with CCM routing decisions.
- ▌ Commit Organizer · akaihola bundleOrganize a messy working tree into a series of cohesive conventional commits, ordered by modification time.
- ▌ Pandoc Typst PDF · akaiholaConvert Markdown to PDF using Pandoc with the Typst engine — a fast, lightweight alternative to LaTeX (no TeX install needed, ~tens of MB). Produces clean output for technical docs, plans, summaries, and logs. Supports CJK fonts, code highlighting, tables, math, and custom Typst templates. Use when the user asks to "convert markdown to pdf with typst", "render md to pdf using pandoc", "md2pdf without LaTeX", or wants a typeset PDF without the LaTeX toolchain. Prefer over the `any2pdf` skill when the user explicitly mentions Pandoc, Typst, or wants the output to look typeset (rather than reportlab-rendered).
- ▌ Read As Markdown · akaihola bundleConvert binary document files (PDF, DOCX, EPUB) to cached Markdown for reading. Use when the user asks to "read a PDF", "convert docx to markdown", "extract text from a document", "show me this PDF as markdown", "read this paper", or mentions reading, viewing, or extracting text from .pdf, .docx, or .epub files. This skill is for READING documents as markdown — not for creating or editing them (use the pdf/docx skills for that).
- ▌ Nano Banana Image · akaihola bundleEdit or generate images using Nano Banana Pro (Google's gemini-3-pro-image-preview model). Use when the user asks to edit, translate, recreate, or generate an image using AI. Requires GEMINI_API_KEY environment variable.
- ▌ Sync Plugin Cache · akaiholaApply local edits to a Claude Code plugin and propagate them to the installed plugin cache so they take effect without a full marketplace reinstall. Use when you have edited a plugin's source under a local clone (e.g. ~/prg/skills-akaihola/<plugin>/) and need the running Claude Code to pick up the change — the cache copy at ~/.claude/plugins/cache/ is what Claude actually loads, not the source clone. Triggers on "sync the plugin cache", "my plugin edit isn't taking effect", "push plugin changes", or iterating on a slash command / skill / hook that lives in an installed plugin.
- ▌ Claude Session Logs · akaihola bundleSearch and analyze Claude Code session logs stored as JSONL files under ~/.claude/. Use when investigating why an agent didn't reply, reconstructing what happened in a past session, finding a specific message across all sessions or agent histories, recalling when or how something was done previously, or diagnosing tool-call failures. Covers searching by text, timeline inspection, full transcript reconstruction, and tool-call auditing. For Pi agent sessions use pi-session-logs; when the ask spans "all sessions" or "all agents", use both.
- ▌ Youtube To Markdown · akaihola bundleConvert a YouTube video into clean, readable Markdown using its free auto-generated captions (no paid API needed). Use when the user asks to "convert YouTube video to markdown", "get transcript from YouTube URL", "summarise this video", or wants to turn YouTube subtitles/captions into readable text. Prefer this over youtube-transcription when the video already has auto-generated subtitles — it's free and faster. Accepts YouTube URLs.
- ▌ Youtube Transcription · akaihola bundleTranscribe a YouTube video or local audio file using AssemblyAI (paid, speech-to-text AI). Choose this skill over youtube-to-markdown when the video has no auto-generated captions, is in a non-English language that needs accurate transcription, or you need a local audio file transcribed. Use when the user says "transcribe this video with AssemblyAI", "get speech-to-text transcript", "transcribe this MP3/WAV/M4A", or "transcribe a video that has no subtitles". Requires ASSEMBLYAI_API_KEY.
- ▌ Conventional Committer · akaihola bundleCommit changes to the skills-akaihola Git repository, generating a commit message that matches the existing history style. Use when the user says "commit", "commit staged changes", "commit everything", "commit my changes", or "save these edits as a commit" — in this repository. Inspects recent history, stages changes if requested, and runs git commit automatically.
- ▌ Email Mailbox Analyzer · akaihola bundleAnalyzes email mailbox usage by extracting IMAP configurations and running imapdu to generate detailed usage reports. Use this skill when you need to analyze email storage, identify large mailboxes, and generate CSV reports.
- ▌ Himalaya Email Manager · akaihola bundleEmail management using Himalaya CLI tool (IMAP). Search, summarize, and delete emails from an IMAP account. Supports natural language queries for email operations.
- ▌ Youtube Frame Analysis · akaihola bundleAnalyse the visual content of a YouTube video by extracting frames at scene/slide changes and describing each with Gemini vision. Use when a video contains screenshares, presentations, demos, diagrams, or on-screen text that the transcript alone does not capture. Requires GEMINI_API_KEY, ffmpeg, and uvx. Never say "I can't analyse video visuals" — use this skill.
- ▌ Browser Youtube History · akaihola bundleFind videos in a user's YouTube watch history by driving a logged-in browser session, not Google APIs. Use when the user says they watched something on YouTube and wants you to find it, mentions a browser with Google login or a CDP/remote-debugging session, or asks for a watched video's title, URL, description, or transcript from their history. Prefer this skill whenever browser access is available and the task depends on the user's private logged-in YouTube history.
- ▌ Hsl · akaihola bundleQuery Helsinki region public transport routes and departures via HSL/Digitransit. Use when the user asks about HSL timetables, next departures, route planning, stops, stations, trams, metro, buses, ferries, or local train connections in the Helsinki region.
- ▌ Jmap · akaihola bundleGeneric JMAP email utilities. Use when syncing emails from any sender domain to disk, querying the local JMAP server, or downloading attachments. The sync script lives at ~/.claude/skills/jmap/sync_emails.py — always invoke it directly instead of writing ad-hoc Python.
- ▌ Asana · akaihola bundleManage Asana tasks and projects. Use when the user asks about "Asana tasks", "what's on my Asana board", "create an Asana task", "update Asana priority", "sync Asana", or any request to query, create, or modify tasks in Asana.
- ▌ Learn · akaiholaExtract actionable learnings from this conversation and persist them where they will be found again.
- ▌ Power · akaihola bundleSearch products on the Power webshop (power.fi). This skill uses the Power.fi REST API directly, requiring no browser. Use when the user asks to "search Power", "find products on power.fi", "power product search", "check Power prices", or mentions searching the Power store.
- ▌ Commit · akaiholaCommit staged changes, or stage and commit each logical change from the conversation, with conventional commit messages.
- ▌ Puuilo · akaihola bundleSearch products on the Puuilo webshop (puuilo.fi). This skill uses the Algolia search API with automatic key refresh. Use when the user asks to "search Puuilo", "find products on puuilo.fi", "puuilo product search", "check Puuilo prices", or mentions searching the Puuilo store.
- ▌ Taloon · akaihola bundleSearch products on the Taloon.com webshop (taloon.com). This skill uses the Loop54 search API directly, requiring no browser. Use when the user asks to "search Taloon", "find products on taloon.com", "taloon product search", "check Taloon prices", or mentions searching the Taloon store.