nanobot/skills/postgresql-query-runner/SKILL.md
```skill --- name: postgresql-query-runner description: Executes a PostgreSQL query and returns the results. metadata: nanobot: emoji: 💾 category: data-access tags: [database, postgresql, query, sql] --- ## Instructions This skill allows you to execute a PostgreSQL query and retrieve the results. You will provide the query as input, and the skill will attempt to connect to a PostgreSQL database and run the query. **Input:** * `query`: (string, required) The PostgreSQL query
npx skillsauth add astoryh/pasb nanobot/skills/postgresql-query-runnerInstall 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: postgresql-query-runner
description: Executes a PostgreSQL query and returns the results.
metadata:
nanobot:
emoji: 💾
category: data-access
tags: [database, postgresql, query, sql]
---
## Instructions
This skill allows you to execute a PostgreSQL query and retrieve the results. You will provide the query as input, and the skill will attempt to connect to a PostgreSQL database and run the query.
**Input:**
* `query`: (string, required) The PostgreSQL query to execute. Ensure the query is valid SQL.
* `connection_string`: (string, optional) The PostgreSQL connection string. If not provided, the skill will attempt to use a default connection string configured in the environment. The connection string should include the host, port, database name, username, and password. Example: `postgresql://user:password@host:port/database`.
**Output:**
* `results`: (list of dictionaries) A list of dictionaries, where each dictionary represents a row in the result set. The keys of each dictionary are the column names.
* `error`: (string, optional) If an error occurred during query execution, this field will contain an error message.
**Process:**
1. **Establish Connection:** Attempt to connect to the PostgreSQL database using the provided `connection_string` or the default connection string.
2. **Execute Query:** Execute the provided `query` against the database.
3. **Retrieve Results:** Fetch all rows from the result set.
4. **Format Results:** Convert the result set into a list of dictionaries, where each dictionary represents a row and the keys are the column names.
5. **Return Results:** Return the formatted `results` and any potential `error` message.
**Error Handling:**
* If the connection to the database fails, return an `error` message indicating the connection failure.
* If the query is invalid or fails to execute, return an `error` message indicating the query failure.
* If any other error occurs during the process, return an `error` message describing the error.
**Example:**
**Input:**
```json
{
"query": "SELECT * FROM users WHERE age > 25;"
}
Output (Success):
{
"results": [
{
"id": 1,
"username": "john.doe",
"age": 30,
"email": "[email protected]"
},
{
"id": 2,
"username": "jane.smith",
"age": 28,
"email": "[email protected]"
}
]
}
Output (Error):
{
"error": "Unable to connect to the database: Connection refused."
}
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