Integrating OpenCode Terminal with Elasticsearch Data via CData CLI
OpenCode is an open source AI coding agent from Anomaly that brings AI assistance directly to your terminal, desktop, or IDE without storing any of your code or context data. It supports over 75 LLM providers, including Claude, GPT, Gemini, and local models, and can run multiple agent sessions in parallel on the same project, each with its own context. Its support for integrations, AGENTS.md configuration files, and a TypeScript/JavaScript plugin system 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, OpenCode 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 OpenCode Terminal through CData CLI.
Prerequisites
- OpenCode Terminal installed
- CData CLI installed
- 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.
-
The official CData CLI Skill is available on GitHub and installs through npx skills in the terminal:
npx skills add CDataSoftware/cli-skills
-
Follow the prompts in the terminal to install for OpenCode.
Step 2: Set up the project directory
Create a project directory to contain all project files.
-
Navigate to directory within the terminal and start a session with the opencode 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 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.
- Driver setup: OpenCode 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 <artifact-id>
- Activation: Activate the Elasticsearch driver with a single command for a trial or full license:
cdatacli drivers activate Elasticsearch --name "<name>" --email "<email>" --trial
cdatacli drivers activate Elasticsearch --name "<name>" --email "<email>" --key "<product-key>"
- Establish the connection: Check for existing Elasticsearch connections or create a new one:
cdatacli connection list
cdatacli drivers activate Elasticsearch --name "<name>" --email "<email>" --trial
- 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 <my_Elasticsearch_connection> --sql <SELECT * FROM table>
Query Elasticsearch data directly from your terminal with CData CLI
OpenCode 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, 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.