CPQ DevKit™ for Oracle
CPQ DevKit™ for Oracle helps you develop, sync, validate, and back up work against Oracle CPQ Cloud (BigMachines), with BML/BMQL tooling, AI-assisted completions, and environment-aware workflows.

Quick Start
- Install the extension from the VS Code Marketplace
- Open a folder and run CPQ DevKit™ for Oracle: Set Up Project
- Create your local developer config with Create Developer Configuration File, or open both config files with Open Configuration Files
- Add your standalone
*.bigmachines.com or Fusion (*.fa.*) environments. Sign in to CPQ DevKit™ if you want AI and cloud-connected workflows
- Download files, functions, or tables and start editing locally
The setup commands create project.config.jsonc, .cpqdevkit/developer.config.jsonc, the usual project folders, and .gitignore entries. The status bar shows the active environment so you can switch without leaving the editor.
What's New in 2.7.1
- New Marketplace icon: the CPQ DevKit™ wordmark on the Oracle color plate
- Ask
@cpq-oracle in chat, or use #oracleEnv, to see the active environment
- Install Chat Skills adds a BML reviewer skill you can use in chat
- Requires VS Code 1.109 or later
See full release notes in the changelog.
How to use it
- Set up the project and add at least one Oracle CPQ environment.
- Use the status bar or Change Environment to pick
dev, test, uat, or prod.
- Download the artifacts you need (BML, tables, files, pricing, and so on).
- Edit locally with completions, Go to Definition, and impact search.
- Validate, test, and deploy functions back to the active environment.
- Optionally create a backup or site snapshot before a large change.
Open Open Actions any time you want the common workflows in one place.
Features
BML/BMQL authoring
- Autocomplete helpers and snippets for day-to-day BML/BMQL work
- Formatter support for
.bml, .json, and .xml
- Go to Definition for
util.* / commerce.* functions and BMQL Data Table references
- Create BML Function scaffolds a file in the correct project folder
Sync and environments
- Predictable project folders from
project.config.jsonc
- Fast environment switching for
dev, test, uat, and prod
- Downloads for files, assets, parts, products, BML, data tables, pricing, integrations, and admin resources
- Action palette, explorer view, walkthrough, and status bar environment switching
Workspace impact
- Find Workspace Impact traces the current selection, symbol, or file across downloaded artifacts
- Search Workspace Artifacts searches local BML, tables, pricing, integrations, metadata, and configuration in one report
Deploy, validate, and pricing
- Save, deploy, test, and validate BML functions from VS Code
- Calculate pricing against the active Oracle CPQ environment
- Diagnose Workspace when a connection or folder setup looks wrong
Backup and migration
- Create a full Oracle CPQ backup
- Capture a site snapshot for migration or recovery
- List available backups and export migration packages
AI completions
- Inline completions for BML and BMQL
- Choose
gpt-4o or claude-3-5-sonnet
- Only a small window around your cursor is sent when completions run
Tables and conversion
- Preview JSON, CSV, and XML as a searchable table
- Convert JSON, XML, and CSV without leaving VS Code
Commands
All commands are in the Command Palette (Ctrl+Shift+P / Cmd+Shift+P) under CPQ DevKit™ for Oracle.
Sign in
- Sign In — authenticate with CPQ DevKit™
- Sign Out — clear the current CPQ DevKit™ session
- Open Authentication Settings — open authentication settings
Setup
- Open Actions — common Oracle workflows in one palette
- Set Up Project — create project config, folders, and
.gitignore
- Create Developer Configuration File — create
.cpqdevkit/developer.config.jsonc
- Open Configuration Files — open both config files
- Change Environment — switch the active Oracle CPQ environment
- Diagnose Workspace — check configuration and the active environment
- Show Status Bar — show the environment status bar again
- Open CPQ DevKit Website — open the CPQ DevKit web app
Authoring
- Create BML Function — create a new
util.* or commerce.* BML file
- Find Workspace Impact — analyze the current selection, symbol, or file
- Search Workspace Artifacts — search downloaded artifacts and open a report
- View as Table — preview JSON/CSV/XML as a table
- Convert to JSON / Convert to XML / Convert to CSV
- Self-Test All Commands — check that commands are available
Downloads
- Core — Download Files, Download Assets, Download Parts, Download Products, Download BML Functions, Download Data Tables, Download Data and Metadata, Download Data Table
- Pricing and commerce — Download Pricing Rules, Download Pricing Options, Download Pricing Lookup Types, Download Pricing Attributes, Download Pricing Models, Download Pricing Charge Definitions, Download Pricing Charge Attributes, Download BOM Item Setups, Download Price Books
- Site and admin — shopping carts, accounts, groups, eligibility rules, SSO, document and email generators, RTE templates, branding, dictionary, integrations, and other admin resources
Deploy, validation, and backup
- Calculate Pricing — run pricing against Oracle CPQ
- Deploy Functions — deploy BML to the active environment
- Save Functions — save local BML changes to Oracle CPQ
- Test Functions — run BML tests on the server
- Validate Functions — validate BML before deploy
- Create Full Backup — back up the current environment
- Create Site Snapshot — capture a site-wide snapshot
- List Available Backups — browse and export backup packages
AI and chat
- Set AI API Key — store your API key for completions
- Toggle AI Completions — turn inline suggestions on or off
- Clear AI API Key — remove the stored key
- Install Chat Skills — add the BML reviewer skill for chat
Settings
Configure the extension under cpqdevkit.* in VS Code Settings.
| Setting |
Default |
Description |
cpqdevkit.debugMode |
false |
Enable detailed logging |
cpqdevkit.enableTelemetry |
false |
Anonymous product telemetry (never includes file contents or CPQ customer data) |
cpqdevkit.aiCompletionsEnabled |
true |
Enable AI completions for BML/BMQL (requires Pro) |
cpqdevkit.aiModel |
"gpt-4o" |
Completions model (gpt-4o or claude-3-5-sonnet) |
cpqdevkit.apiBaseUrl |
"https://app.cpqdevkit.com/api" |
CPQ DevKit API base URL |
cpqdevkit.requestTimeout |
30000 |
Timeout in ms for Oracle CPQ requests |
Requirements
- VS Code 1.109 or later
- An Oracle CPQ Cloud environment with REST API access (standalone BigMachines or Fusion Applications)
- A BigMachines user with:
FullAdmin
User Administrator enabled
- membership in the
All Access administrator group
- A CPQ DevKit™ account for AI-assisted features
Project configuration
Set Up Project and Create Developer Configuration File can create these files for you.
project.config.jsonc
Project-wide folder names and Oracle CPQ preferences:
{
"apiVersion": "v19", // any version after v15 is supported
// "restBasePath": "cpq/rest", // optional; Fusion hosts are detected from `*.fa.*`
"tableFormat": "json",
"folderSettings": {
"files": "_files",
"parts": "_parts",
"tables": "_tables",
"utilFunctions": "_utils",
"commerceFunctions": "_commerce",
"assets": "_assets",
"pricing": "_pricing",
"metadata": "_metadata",
"dictionary": "_dictionary",
"integrations": "_integrations"
},
"fileSettings": {
"bmlUtilPrefix": "util.",
"bmlCommercePrefix": "commerce.",
"bmlIncludeMetaTag": "true",
"bmlIncludeTestTag": "true",
"defaultDataFormat": "json"
}
}
apiVersion — Oracle CPQ API version such as v19, v17, or v15
restBasePath — optional REST prefix. Fusion *.fa.* hosts default to cpq/rest; standalone BigMachines hosts default to rest
tableFormat — downloaded table format (json or csv)
folderSettings — local folder names
fileSettings — BML prefixes, meta/test tags, and default data format
.cpqdevkit/developer.config.jsonc
Your environments and credentials. Keep this file out of source control.
{
"name": "CPQ DevKit™ for Oracle - developer's secret file",
"_git_auto_commit": false,
"_table_format": "json",
"_ocpq_environment_active": "dev",
"_ocpq_environments": [
{
"name": "dev",
"url": "https://<subdomain-dev>.bigmachines.com",
"username": "<username>",
"password": "<password>"
},
{
"name": "fusion",
"url": "https://<pod>.fa.<region>.oraclecloud.com",
"accessToken": "<oauth-access-token>"
}
]
}
Use username/password for standalone BigMachines sites. Use an OAuth access token for Fusion hosts.
Security & Privacy
- Browser sign-in to CPQ DevKit™ stores the session in VS Code secret storage
- Oracle CPQ URLs and credentials live in
.cpqdevkit/developer.config.jsonc — keep that file gitignored
- Telemetry is off by default and never includes file contents or CPQ customer data
- AI completions send only a small code window around your cursor
- Backup and other cloud-connected workflows use CPQ DevKit services
Support
License
See LICENSE.md for details.
Frequently Asked Questions
What is CPQ DevKit™ for Oracle?
A VS Code extension that speeds up Oracle CPQ work with BML/BMQL tooling, environment-aware sync, validation, backups, and AI-assisted completion.
Does it support multiple environments and backups?
Yes. Configure several Oracle CPQ environments, switch between them, and create full backups or site snapshots from VS Code.
Can I download and deploy Oracle CPQ artifacts?
Yes. The extension covers BML functions, files, assets, parts, products, data tables, pricing artifacts, integrations, dictionaries, and a wide range of admin resources.
Which operating systems are supported?
macOS, Windows, and Linux.
Legal
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
| |