{"id":31830811,"url":"https://github.com/gemini-cli-extensions/postgres","last_synced_at":"2026-03-07T02:03:08.299Z","repository":{"id":316296908,"uuid":"1055660831","full_name":"gemini-cli-extensions/postgres","owner":"gemini-cli-extensions","description":null,"archived":false,"fork":false,"pushed_at":"2026-02-26T04:36:47.000Z","size":175,"stargazers_count":73,"open_issues_count":7,"forks_count":10,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-26T08:46:49.799Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gemini-cli-extensions.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-12T15:47:23.000Z","updated_at":"2026-02-25T11:26:20.000Z","dependencies_parsed_at":"2025-10-31T08:02:47.361Z","dependency_job_id":"952e0482-05cd-4eec-a56c-6d826d7718c8","html_url":"https://github.com/gemini-cli-extensions/postgres","commit_stats":null,"previous_names":["gemini-cli-extensions/postgres"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/gemini-cli-extensions/postgres","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemini-cli-extensions%2Fpostgres","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemini-cli-extensions%2Fpostgres/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemini-cli-extensions%2Fpostgres/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemini-cli-extensions%2Fpostgres/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gemini-cli-extensions","download_url":"https://codeload.github.com/gemini-cli-extensions/postgres/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemini-cli-extensions%2Fpostgres/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30205893,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-06T19:07:06.838Z","status":"online","status_checked_at":"2026-03-07T02:00:06.765Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-11T21:26:07.264Z","updated_at":"2026-03-07T02:03:08.253Z","avatar_url":"https://github.com/gemini-cli-extensions.png","language":null,"funding_links":[],"categories":["Databases","Databases and Data","Others"],"sub_categories":[],"readme":"# Gemini CLI Extension - PostgreSQL\n\n\u003e [!NOTE]\n\u003e This extension is currently in beta (pre-v1.0), and may see breaking changes until the first stable release (v1.0).\n\nThis Gemini CLI extension provides a set of tools to interact with [PostgreSQL](https://www.postgresql.org/docs/) instances. It allows you to manage your databases, execute queries, and explore schemas directly from the [Gemini CLI](https://google-gemini.github.io/gemini-cli/), using natural language prompts.\n\nLearn more about [Gemini CLI Extensions](https://github.com/google-gemini/gemini-cli/blob/main/docs/extensions/index.md).\n\u003e [!IMPORTANT]\n\u003e **We Want Your Feedback!**\n\u003e Please share your thoughts with us by filling out our feedback [form][form]. \n\u003e Your input is invaluable and helps us improve the project for everyone.\n\n[form]: https://docs.google.com/forms/d/e/1FAIpQLSfEGmLR46iipyNTgwTmIDJqzkAwDPXxbocpXpUbHXydiN1RTw/viewform?usp=pp_url\u0026entry.157487=postgres\n\n## Why Use the Postgres Extension?\n\n* **Natural Language Management:** Stop wrestling with complex commands. Explore schemas and query data by describing what you want in plain English.\n* **Seamless Workflow:** Stay in your CLI. No need to constantly switch contexts to the GCP console for common database tasks.\n* **Code Generation:** Accelerate development by asking Gemini to generate data classes and other code snippets based on your table schemas.\n\n\n## Prerequisites\n\nBefore you begin, ensure you have the following:\n\n* [Gemini CLI](https://github.com/google-gemini/gemini-cli) installed with version **+v0.6.0**.\n* Setup Gemini CLI [Authentication](https://github.com/google-gemini/gemini-cli/tree/main?tab=readme-ov-file#-authentication-options).\n* A running PostgreSQL instance.\n* Users are granted database-level permissions to execute queries.\n\n## Getting Started\n\n### Installation\n\nTo install the extension, use the command:\n\n```bash\ngemini extensions install https://github.com/gemini-cli-extensions/postgres\n```\n\n### Configuration\n\nYou will be prompted to configure the following settings during installation. These settings are saved in an `.env` file within the extension's directory.\n\n*   `POSTGRES_HOST`: (Optional) The Postgres host. Defaults to `localhost`.\n*   `POSTGRES_PORT`: (Optional) The Postgres port. Defaults to `5432`.\n*   `POSTGRES_DATABASE`: The name of the database to connect to.\n*   `POSTGRES_USER`: The database username.\n*   `POSTGRES_PASSWORD`: The password for the database user.\n\nTo view or update your configuration:\n\n**List Settings:**\n*   Terminal: `gemini extensions list`\n*   Gemini CLI: `/extensions list`\n\n**Update Settings:**\n*   Terminal: `gemini extensions config postgres [setting name] [--scope \u003cscope\u003e]`\n    *   `setting name`: (Optional) The single setting to configure.\n    *   `scope`: (Optional) The scope of the setting in (`user` or `workspace`). Defaults to `user`.\n*   Currently, you must restart the Gemini CLI for changes to take effect. We recommend using `gemini --resume` to resume your session.\n\nAlternatively, you can manually set these environment variables before starting the Gemini CLI:\n\n```bash\nexport POSTGRES_HOST=\"\u003cyour-postgres-host\u003e\" # Optional: defaults to localhost\nexport POSTGRES_PORT=\"\u003cyour-postgres-port\u003e\" # Optional: defaults to 5432\nexport POSTGRES_DATABASE=\"\u003cyour-database-name\u003e\"\nexport POSTGRES_USER=\"\u003cyour-database-user\u003e\"\nexport POSTGRES_PASSWORD=\"\u003cyour-database-password\u003e\"\n```\n\n\u003e [!NOTE]\n\u003e See [Troubleshooting](#troubleshooting) for debugging your configuration.\n\n### Start Gemini CLI\n\nTo start the Gemini CLI, use the following command:\n\n```bash\ngemini\n```\n\n\u003e [!WARNING]\n\u003e **Changing Instance \u0026 Database Connections**\n\u003e Currently, the database connection must be configured before starting the Gemini CLI and can not be changed during a session.\n\u003e To save and resume conversation history use command: `/chat save \u003ctag\u003e` and `/chat resume \u003ctag\u003e`.\n\n## Usage Examples\n\nInteract with Postgres using natural language right from your IDE:\n\n* **Explore Schemas and Data:**\n    * \"Show me all tables in the 'orders' database.\"\n    * \"What are the columns in the 'products' table?\"\n    * \"How many orders were placed in the last 30 days, and what were the top 5 most purchased items?\"\n\n* **Generate Code:**\n    * \"Generate a Python dataclass to represent the 'customers' table.\"\n\n## Supported Tools\n\n * `list_tables`: Use this tool to list tables in the database.\n * `database_overview`: Use this tool to fetches the current state of the PostgreSQL server.\n * `execute_sql`: Use this tool to execute a SQL query.\n * `list_active_queries`: Use this tool to list currently running queries.\n * `list_available_extensions`: Use this tool to list available extensions for installation.\n * `list_installed_extensions`: Use this tool to list installed extensions.\n * `get_query_plan`: Use this tool to get query plan.\n * `list_autovacuum_configurations`: Use this tool to list autovacuum configurations and its value.\n * `list_database_stats`: Use this tool to lists the key performance and activity statistics for each database in the PostgreSQL server.\n * `list_indexes`: Use this tool to list available user indexes in a PostgreSQL database.\n * `list_memory_configurations`: Use this tool to list memory configurations and its value.\n * `list_pg_settings`: Use this tool to list configuration parameters for the PostgreSQL server.\n * `list_publication_tables`: Use this tool to list publication tables in a PostgreSQL database.\n * `list_replication_slots`: Use this tool to list replication slots.\n * `list_roles`: Use this tool to lists all the user-created roles in PostgreSQL database.\n * `list_schemas`: Use this tool to lists schemas in the database.\n * `list_sequences`: Use this tool to list sequences in a PostgreSQL database.\n * `list_tablespaces`: Use this tool to lists tablespaces in the database.\n * `list_top_bloated_tables`: Use this tool to list top bloated tables.\n * `list_triggers`: Use this tool to lists triggers in the database.\n * `list_views`: Use this tool to lists views in the database from pg_views with a default limit of 50 rows.\n * `list_invalid_indexes`: Use this tool to list invalid indexes.\n\n## Additional Extensions\n\nFind additional extensions to support your entire software development lifecycle at [github.com/gemini-cli-extensions](https://github.com/gemini-cli-extensions), including:\n* [Cloud SQL for PostgreSQL extension](https://github.com/gemini-cli-extensions/cloud-sql-postgresql)\n* and more!\n\n## Troubleshooting\n\nUse `gemini --debug` to enable debugging.\n\nCommon issues:\n\n* \"✖ Error during discovery for server: MCP error -32000: Connection closed\": The database connection has not been established. Ensure your configuration is set via environment variables.\n* \"✖ MCP ERROR: Error: spawn /Users/USER/.gemini/extensions/postgres/toolbox ENOENT\": The Toolbox binary did not download correctly. Ensure you are using Gemini CLI v0.6.0+.\n* \"cannot execute binary file\": The Toolbox binary did not download correctly. Ensure the correct binary for your OS/Architecture has been downloaded. See [Installing the server](https://googleapis.github.io/genai-toolbox/getting-started/introduction/#installing-the-server) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgemini-cli-extensions%2Fpostgres","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgemini-cli-extensions%2Fpostgres","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgemini-cli-extensions%2Fpostgres/lists"}