nanobot/skills/github-gist-search/SKILL.md
```skill --- name: gist-search description: Searches GitHub Gists for code snippets matching a given query. metadata: nanobot: emoji: 🔍 category: information-retrieval tags: [search, code, github, gist] --- ## Skill Instructions This skill allows you to search GitHub Gists for code snippets. **Input:** A search query string. This should be a description of the code you are looking for (e.g., "python list comprehension", "javascript event listener", "c++ linked list"). **Proces
npx skillsauth add astoryh/pasb nanobot/skills/github-gist-searchInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
---
name: gist-search
description: Searches GitHub Gists for code snippets matching a given query.
metadata:
nanobot:
emoji: 🔍
category: information-retrieval
tags: [search, code, github, gist]
---
## Skill Instructions
This skill allows you to search GitHub Gists for code snippets.
**Input:** A search query string. This should be a description of the code you are looking for (e.g., "python list comprehension", "javascript event listener", "c++ linked list").
**Process:**
1. **Construct the API Request:** Formulate a request to the GitHub Gist API. The base URL is `https://api.github.com/gists/public`. The query parameter should be `search`. Append the provided search query to the `search` parameter. For example, if the query is "python list comprehension", the URL will be `https://api.github.com/gists/public?search=python+list+comprehension`.
2. **Execute the API Request:** Send a GET request to the constructed URL.
3. **Parse the Response:** The API will return a JSON response. Parse this response. The relevant data is in the `items` array. Each item in the `items` array represents a Gist.
4. **Extract Relevant Information:** For each Gist in the `items` array, extract the following information:
* `id`: The Gist ID.
* `description`: The Gist description (if available).
* `files`: A dictionary where keys are filenames and values are file contents. Extract the first file found and its content.
* `url`: The URL to the Gist on GitHub.
5. **Format the Results:** Present the results in a clear and concise format. For each Gist, include:
* The Gist description (if available).
* A snippet of the code (the first file's content). Limit the snippet to a reasonable length (e.g., 200 characters) to avoid overwhelming the user.
* The Gist URL.
**Output:** A formatted list of GitHub Gist results, including description, code snippet, and URL for each Gist. If no Gists are found, output "No Gists found matching your query."
**Example:**
**Input:** `javascript array filter`
**Output:**
Gist 1: Description: Simple array filter example Code Snippet: function filterArray(arr, callback) { ... } URL: https://gist.github.com/user/1234567
Gist 2: Description: Another example of array filtering Code Snippet: const filtered = arr.filter(item => item > 5); URL: https://gist.github.com/anotheruser/8901234
**Error Handling:**
* If the API request fails (e.g., network error, invalid URL), output "Error: Could not connect to the GitHub API."
* If the API returns an error (e.g., rate limit exceeded), output "Error: GitHub API rate limit exceeded. Please try again later."
* If the response is not valid JSON, output "Error: Invalid response from the GitHub API."
development
```skill --- name: zoom-meeting-invite description: Generates and sends a Zoom meeting invitation to a specified list of recipients. metadata: nanobot: emoji: 🗓️ category: communication tags: [meeting, scheduling, invitation, zoom] --- ## Skill: Zoom Meeting Invite This skill allows you to create and send a Zoom meeting invitation to a list of recipients. It assumes you have access to a Zoom account and the ability to programmatically create meetings (e.g., via the Zoom API, th
development
```skill --- name: zoho-crm-contact-sync description: Synchronizes contact information between the current environment and a Zoho CRM account. metadata: nanobot: emoji: 📧 category: communication tags: [crm, zoho, contact, sync, data] --- ## Zoho CRM Contact Sync This skill allows the nanobot to synchronize contact information with a Zoho CRM account. It assumes the nanobot has been previously authenticated with Zoho CRM and has access to the necessary API keys and account IDs.
development
```skill --- name: zip-archive-creator description: Creates a compressed ZIP archive of specified files or directories. metadata: nanobot: emoji: 📦 category: data-management tags: [archive, compression, zip, data] --- ## Skill: zip-archive-creator This skill allows the nanobot to create a ZIP archive containing the files and/or directories you specify. **Instructions:** 1. **Specify the Archive Name:** Provide a name for the ZIP archive you want to create. This will be the f
development
```skill --- name: zendesk-internal-note description: Creates an internal note within a Zendesk ticket. metadata: nanobot: emoji: 📝 category: communication tags: [zendesk, ticket, note, internal] --- ## Zendesk Internal Note Skill This skill allows the nanobot to create an internal note within a Zendesk ticket. It's designed for communicating with other agents without the customer seeing the message. **Instructions:** 1. **Identify the Ticket:** The nanobot needs to know whi