Integrating GitHub Copilot CLI with Elasticsearch data via CData CLI

Justin Floyd
Justin Floyd
Product Business Analyst
CData CLI gives AI coding agents direct, command-line-native access to CData Drivers across hundreds of data sources, allowing agents to manage licenses, configure connections, run SQL queries, and explore schema metadata, all without leaving the terminal.

GitHub Copilot CLI is the terminal interface for GitHub Copilot, giving developers direct access to an AI agent without leaving the command line. It can autonomously complete multi-step tasks driven by natural language instructions, including reading and modifying files, running shell commands, managing pull requests on GitHub, and delegating work to specialized custom agents. Its support for agent skills and custom instructions makes it well-suited for structured, tool-driven workflows, making it a natural fit for connecting to external data sources through CData CLI.

By describing your data goals in plain language, GitHub Copilot CLI can handle the full setup process, from driver configuration and license activation to connection creation and query execution, without manual intervention at each step.

This article details step-by-step directions for how to connect Elasticsearch data to GitHub Copilot CLI through CData CLI.

Prerequisites

  1. GitHub Copilot CLI installed
  2. CData CLI installed
  3. Access to Elasticsearch

About Elasticsearch Data Integration

Accessing and integrating live data from Elasticsearch has never been easier with CData. Customers rely on CData connectivity to:

  • Access both the SQL endpoints and REST endpoints, optimizing connectivity and offering more options when it comes to reading and writing Elasticsearch data.
  • Connect to virtually every Elasticsearch instance starting with v2.2 and Open Source Elasticsearch subscriptions.
  • Always receive a relevance score for the query results without explicitly requiring the SCORE() function, simplifying access from 3rd party tools and easily seeing how the query results rank in text relevance.
  • Search through multiple indices, relying on Elasticsearch to manage and process the query and results instead of the client machine.

Users frequently integrate Elasticsearch data with analytics tools such as Crystal Reports, Power BI, and Excel, and leverage our tools to enable a single, federated access layer to all of their data sources, including Elasticsearch.

For more information on CData's Elasticsearch solutions, check out our Knowledge Base article: CData Elasticsearch Driver Features & Differentiators.


Getting Started


Step 1: Download the skill (one-time setup)

Always use CData CLI with the official skill.

  1. The official CData CLI Skill is available on GitHub and installs through npx skills in the terminal:

    npx skills add CDataSoftware/cli-skills

  2. Follow the prompts in the terminal to install for GitHub Copilot.

Step 2: Set up the project directory

Create a project directory to contain all project files.

  1. Navigate to the directory within the terminal and start a session with the copilot command:

Step 3: Establish the driver and connection

Describe what you want to accomplish in this session with the CLI and Elasticsearch data.

I would like to build a command line app that connects to Elasticsearch data and checks for updates from Orders. Make sure to include data from important columns like OrderName and Freight.

This prompt automatically loads the skill and kicks off the following process. You can always manually prompt the agent for each of the following steps.

  1. Driver setup: GitHub Copilot CLI checks for an existing CData Elasticsearch driver, or searches and downloads a new one:
    • cdatacli drivers list
    • cdatacli drivers search Elasticsearch
    • cdatacli drivers download --artifact-id 
  2. Activation: Activate the Elasticsearch driver with a single command for a trial or full license:
    • cdatacli drivers activate Elasticsearch --name "" --email "" --trial
    • cdatacli drivers activate Elasticsearch --name "" --email "" --key ""
  3. Establish the Elasticsearch connection: Check for existing Elasticsearch connections or create a new one:
    • cdatacli connection list
    • cdatacli connection create --driver Elasticsearch --name  --connectionstring 
  4. Create a Elasticsearch skill (if applicable): CData provides driver instructions for popular sources. You can use these to generate a source-specific skill file that guides the agent through best practices for the driver.
    • Run the following command and save the output to your skills directory, either at the project level or globally. (Note: If you receive a "No instructions available for Elasticsearch" message, no driver instructions exist for this source. You can continue using the main driver skill.)
      cdatacli drivers skill Elasticsearch > ~/skills/cdata-Elasticsearch/SKILL.md

Step 4: Query Elasticsearch data

With the CData driver fully configured, your agent can now execute queries and write code against live Elasticsearch data:

cdatacli query sql --connection  --sql 


Query Elasticsearch data directly from your terminal with CData CLI

GitHub Copilot CLI and CData CLI together give your AI coding agent a direct path to live Elasticsearch data without custom middleware, scheduled syncs, or manual setup at each step. Describe your goal in plain language, and the agent handles driver configuration, connection setup, and query execution from start to finish in the terminal.

Download the free CData CLI and start a free, 30-day trial of the CData JDBC Driver for Elasticsearch today.

Ready to get started?

Download a free trial of the Elasticsearch Driver to get started:

 Download Now

Learn more:

Elasticsearch Icon Elasticsearch JDBC Driver

Rapidly create and deploy powerful Java applications that integrate with Elasticsearch.