New Pre-execution monitoring for AI coding assistants

Know when your AI is guessing.

HalluciGuard reads every reply from Claude Code, Gemini CLI and GitHub Copilot. It flags doubt, backtracking and admitted mistakes in under a millisecond, before you run a single line.

No model access needed Runs fully on-premise Every alert shows the exact phrase
halluciguard · live analysis
Assistant replyEditable
Detection0.00 ms
— 0 patterns matched 0.00 ms in your browser

The demo runs a small subset of the pattern library locally in your browser. Nothing you type leaves this page.

Dedicated pattern sets for

Claude Code 17 patterns Gemini CLI 16 patterns GitHub Copilot 19 patterns

0.32 msPer message, measured on a 900+ message session
52Curated patterns across three assistant platforms
6Interception points, from log files to in-process
<5%False positive rate measured on production sessions
How it works

Your linter checks the code. We check the confidence.

Code can compile perfectly and still come from an assistant that was guessing. HalluciGuard reads the prose around the code and runs the same five-step pass on every reply.

  1. Intercept

    Capture the reply at the session file, API, network or library call.

  2. Extract

    Separate the assistant's prose from code blocks and user prompts.

  3. Match

    Run compiled patterns in linear time on the Rust regex engine.

  4. Score

    Group matches by type and rank severity from Low to Critical.

  5. Alert

    Notify by desktop, terminal, log or CLI exit code, with the exact phrase.

Deployment

Six ways in. One engine.

Pick the interception point that suits your security policy. Every mode shares the same pattern library and severity rules, so results stay consistent.

Mode 06 · In-processReal time

Embeddable library

A native Node.js module built with NAPI-RS. Your agent checks its own reply and receives a halt or continue signal before it writes files or retries, which stops token-wasting loops at the source.

agent reply→detectPatterns()→halt / continue
Mode 02 · HTTP APIReal time

Server-side proxy

An OpenAI-compatible endpoint that forwards each request, checks the reply and prepends a warning before it reaches the client. Streaming supported.

OPENAI_API_BASE=http://localhost:8000/v1
Mode 03 · NetworkReal time

HTTPS proxy

Inspects TLS traffic and reassembles streamed SSE chunks. No code changes.

Mode 01 · FilesystemPost-session

Session monitor

Reads JSONL logs, rebuilds the message tree and splits chats at each /clear. Air-gap friendly.

Mode 04 · BatchRetrospective

Batch analyser

Scans months of history into CSV reports per file and chat for audits and trend tracking.

Mode 05 · TelemetryVendor dependent

OpenTelemetry receiver

An OTLP gRPC receiver that plugs into your existing observability stack, ready wherever an assistant exports conversation content through telemetry.

Pattern library

Learned from real sessions, not guesswork.

Every pattern comes from manual review of 306+ production Claude Code sessions, Gemini CLI transcripts and Copilot community reports. Teams can extend the YAML library with their own phrases.

Error acknowledgement

The assistant admits an earlier answer was wrong.

Sorry for the confusionMy mistakeI was wrong aboutI apologize for
Critical

Test manipulation

Tests are edited or skipped instead of fixing code.

skip this testcomment out the assertionupdate the expected value
Critical

Backtracking

An earlier recommendation is reversed mid-conversation.

Actually, let me tryWait, I need to reconsiderLet me correct that
High

Repeated failure

The same fix keeps failing in a costly loop.

still doesn't workerror persistsattempt failed
High

Context exhaustion

The conversation is long and details are slipping.

I need to be brieflet me summarizetoken usage warning
High

Uncertainty and hedging

The assistant is unsure of its own answer.

I thinkmight workI'm not entirely surehopefully
Medium
Low

Borderline match. Logged quietly for review.

Medium

One uncertainty or hedging phrase in a reply.

High

Two or more doubts, or any backtracking, failure loop or context warning.

Critical

Any error acknowledgement or test manipulation. Review before running.

Where it fits

Built to sit beside your linter, not replace it.

AspectHalluciGuardLinters and compilersML-based classifiers
Looks atThe assistant's languageCode syntax and typesGenerated text, scored by a model
MethodDeterministic patternsStatic and dynamic analysisNeural classification
LatencyUnder 1 ms per messageVaries by toolTypically tens to hundreds of ms
ExplanationThe exact phrase matchedRule ID and line numberA probability score
NeedsA curated pattern libraryLanguage configModel weights, often a GPU
# Developer: How do I parse JSON in Python?

Actually, let me reconsider. I think you should use
json.loads(), but I'm not entirely sure it handles
all edge cases. This might work:

import json
data = json.loads(json_string)

Sorry for any confusion - JSON parsing can be tricky.
LinterSyntax is valid
Pass
Type checkerNo type errors
Pass
HalluciGuardBacktracking, uncertainty, hedging, apology
Critical

The code here happens to be correct. The alert asks you to verify it before running, it does not claim the code is wrong.

Integration

Minutes to your first alert.

  • Works with closed modelsTreats every assistant as a black box and reads only its output.
  • Detects the platform for youLoads the right pattern set from the session file path.
  • No retrainingNew model versions work without an engine update.
  • Light footprintAbout 30 MB of memory for multi-chat sessions. No GPU.
FAQ

Questions, answered.

Still curious? Ask us anything in the pilot form below.

Does an alert mean the code is wrong?

No. An alert means the assistant showed signs of doubt or confusion in that reply. It is a prompt to review before you run. Confident replies can still be wrong, and hesitant ones can be right.

Will it flag normal polite phrasing?

A single mild phrase scores Medium at most and is logged without interrupting you. Alerts escalate only when phrases stack up or the assistant admits an error. On production sessions the measured false positive rate was below 5%.

Does my code leave our network?

No. Detection runs locally or inside your own infrastructure. The file, batch and library modes need no network access at all.

Which assistants are supported?

Claude Code, Google Gemini CLI and GitHub Copilot have dedicated pattern sets. The API and network proxies can monitor any OpenAI-compatible service using the shared patterns.

Why patterns instead of another AI model?

Patterns are fast, repeatable and transparent. You see the exact phrase behind every alert, results are identical on every run, and there is no API key, GPU or model download.

Can we add our own patterns?

Yes. Patterns live in YAML files, so your team can add phrases, tune severities and version the library alongside your code.

Pilot programme

See your team's alert profile first.

We run a batch report on your existing session history so you know exactly what HalluciGuard would flag before you switch on live monitoring.

  1. Share how your developers use AI assistants.
  2. We recommend a deployment mode for your setup.
  3. You receive a retrospective report on your own sessions.