Developers are responsible for configuring, extending, and maintaining C3 AI Reliability to ensure it reflects real-world operations that adapt over time. If you are here, it means you’re interested in development work. This guide will help you understand:
  • How the Reliability application is structured
  • What it means to configure, extend, and maintain it
  • How your work connects to operator workflows
Developer responsibilities do not overlap with operators (end-users), who monitor asset health, respond to alerts, and manage work orders. Information on how to operate the C3 AI Reliability application can be found in the User Guide.

What Development Means in Reliability

Reliability development falls into three major categories. Below, we describe the process of configuring, extending, and maintaining the application and provide an example of how each could apply to a wind farm predictive maintenance application.
AreaDescriptionExample (Wind Farm)
ConfigureSet up core features using out-of-the-box capabilities configured to your use-case.Define turbine hierarchies, connect sensor telemetry, select standard risk models for failure mechanisms.
ExtendCustomize or expand Reliability to fit specialized operational needs beyond the defaults.Build a custom “blade icing” risk model, or create a new health indicator based on vibration harmonics.
MaintainKeep your Reliability instance aligned with changes in the real world over time.Retrain models after seasonal shifts, update turbine metadata after maintenance retrofits, adjust alert thresholds as operating conditions evolve.
After understanding the configuration, you can extend Reliability to meet specific needs. And once your application is up and running, you will need to maintain it as operations evolve. To learn about the out-of-the-box capabilities that Reliability provides, take a look at the Reliability Architecture Overview. By understanding the architecture, you will:
  • Identify the components that require configuration
  • Recognize when custom development (extension) is necessary
  • Prepare for long-term maintenance as operations evolve
Once you understand the structure, the next step is knowing the tools you’ll use for development.

Development Tools You Will Use

Unlike the user guide, developers will not be using the application UI for the majority of their work. Instead, you will be using a combination of tools to develop and maintain the application. Here’s a quick overview of when and why to use C3 AI development tools:
ToolWhen to UseWhy to Use
VSCode ExtensionWhen building application code that needs to be versioned, deployed, and maintained.Use VSCode for any change that should persist over time, be tracked through source control, and follow a formal build and deployment cycle.

For users coding in this environment, it helps to have preliminary knowledge in C3 package structure, which automates aspects of application development
JupyterLabWhen experimenting with data, models, or logic before formalizing changes.Use JupyterLab for rapid prototyping and testing. It’s ideal for exploring ideas that may later be promoted into artifact code.

We also have Jupyter Notebook tutorials that guide you through Reliability usage and data analysis.
C3 ConsoleWhen executing single methods, inspecting data, or manipulating objects live.Use Console for quick operational tasks and small adjustments that don’t yet need full application packaging or deployment.
Reliability Application UIWhen managing assets, models, telemetry, and alerts using guided workflows.Use the application UI for structured operational updates that are supported out of the box — no coding or backend object manipulation required.
Each tool supports different aspects of your development lifecycle. We’ll introduce when and how to use them as we go.

Where to Start