Skip to main content
← All work

agents / rag / energy / typed-tools

WaveAI — Renewable Energy Copilot

A bounded agentic copilot that investigates operational questions with evidence, explicit authority, and replayable runs.

Minutes

per site investigation, down from about an hour of manual cross-referencing

2×

weekly active users within a quarter

Every change

confirmed by a person before it executes

problem

Energy questions span assets, telemetry, events, workflows, and documents. An answer needs evidence—not unrestricted access or an unreviewed action.

approach

Built an evidence-guided investigation loop with typed tools, explicit budgets, application-enforced authorization, and user-confirmed changes.

impact

Investigations that took about an hour take minutes. Durable runs with tracing and replay show what was asked, which tools ran, and which evidence supported the answer.

Architecture study
  1. 01Scope & evidence
  2. 02Typed tools
  3. 03Reassess & replay
WaveAI / Bounded investigationApplication authority · User-confirmed changes · Explicit budgetsConceptual architecture · Not a product screenshot

Inspect a run

Every step leaves a record.

WaveAI keeps durable run records, so anyone can replay what was asked, which tools ran, what evidence supported the answer and what changed. Select a step to inspect it.

Run replay · illustrativepartial

“Why is Site B underperforming since Tuesday?”

telemetry.comparestep 4 of 7

Why this step

Compare actual output with the expected power curve for the turbines driving the loss.

Typed call

telemetry.compare(assets=["T-07", "T-11"],
                  signal="power_curve", window="7d")
  -> list[Deviation]

Evidence

  • power curve
  • wind speed
  • yaw position

Authority

Read · telemetry scope

Budget after step

steps4 / 8

tokens31%

WaveAI / Run replayEvery step keeps its reason, typed call, evidence, authority and budget.Example content, not client data · Mirrors the structure of durable run records

The problem

An operational question rarely lives in one table or one document. Finding a useful answer may require checking an asset, reviewing telemetry and events, consulting analysis history, and deciding whether the evidence is sufficient. A conversational interface is only useful if those steps remain bounded and inspectable.

What I architected

WaveAI turns a question into a scoped investigation on LangGraph and MCP: resolve the desired outcome, assess evidence gaps, select a typed tool, validate and authorize, then reassess. That loop operates within explicit step and token budgets rather than treating endless tool use as progress.

Architecture study · Bounded investigation loop
  1. Resolve the desired outcome
  2. Assess evidence gaps
  3. Select a typed tool
  4. Validate and authorize
  5. Reassess with the new evidence

While evidence gaps remain and budget is left, the loop returns to step 2.

Answer with its limits

  • complete
  • partial
  • clarification
  • blocked
Explicit step and token budgets · Conceptual architecture · Not a product screenshot

The tool surface covers assets, telemetry, events, workflows, analysis history, data pipelines, documents, and charts. Retrieval uses semantic chunking, hybrid search, and re-ranking. It provides bounded evidence access—not arbitrary database queries or code execution.

Authority is part of the architecture

The application supplies authorized records. The agent coordinates investigation. The user owns every consequential change:

  1. Preview the proposed change.
  2. Obtain explicit user confirmation.
  3. Revalidate authorization and the proposed operation.
  4. Execute the supported change.
  5. Persist a durable receipt.

These are deliberate boundaries between reasoning, permission, and execution. A model’s suggestion is not authorization.

Honest completion

Every run ends in one of four evidence-guided states. An exhausted budget must never be reported as success.

complete
The evidence answers the question within budget.
partial
A supported finding with its limits stated.
clarification
The question is ambiguous, so the agent asks instead of guessing.
blocked
Access or evidence is missing, and the run says what it needs.

How we know it works

Golden datasets come from real investigations. LLM-as-judge scoring, grounding and hallucination checks, and prompt regression tests run on every change, alongside prompt-injection defenses. Full run tracing and replay with Langfuse and Arize show what was asked, which tools ran, what evidence supported an answer, and what changed—so an investigation stays reviewable after the conversation ends.

Connected to operational priorities

WaveAI is also the investigation layer behind Smart Summary & Priority Tracker. A “Tell Me More” action supplies the site, period, and evidence already in context. The agent explains the ranking engine’s own criteria and continues into telemetry, event history, and root-cause investigation.

Explore fleet prioritization →

My contribution

I owned the agentic architecture, authority separation, typed tool surface, completion semantics, and the evaluation and observability layer as part of leading Narrativewave’s AI strategy, and I lead the team of five AI engineers and data scientists who build it. WaveAI cut site investigations from about an hour of manual cross-referencing to a few minutes, and weekly active users doubled within a quarter.

Architecture illustration and résumé-backed description; no client data, private code, or product screenshots are disclosed.

Working on a similar challenge?

Let’s talk about your team, your data, and what you want to achieve.

Discuss similar work →