All skills

USE FOR: Drasi continuous-query solutions - real-time queries, change detection, reactive events, data-trigger pipelines on Drasi Server, Drasi for Kubernetes, or drasi-lib. Router: load bundle guides as needed. DO NOT USE for non-Drasi messaging (event-driven-messaging) or pure AKS/ACA hosting (aks-cluster-architecture, azure-container-apps).

Use this Skill: https://skilld.dev/gh/lukemurraynz/hve-agent-skills/drasi

This session only. Nothing lands on disk.

referencescurrent-sources.md

≈3.7k tokens on demand. Your agent reads this file only when SKILL.md points to it.

Current sources checked

Checked: 2026-08-23.

Use these as currency anchors only. Re-check before implementing version-sensitive details.

Drasi project and releases

  • CNCF project page and Drasi project materials identify Drasi as a CNCF Sandbox project.
  • drasi-project/drasi-platform GitHub releases showed 0.10.0 as the latest platform release checked, tagged Pre-release (re-checked unchanged 2026-08-23).
  • drasi-project/drasi-server GitHub releases page (https://github.com/drasi-project/drasi-server/releases) shows 0.2.2 (published 2026-08-21) as the current stable/Latest release, with full binary assets and Docker images at ghcr.io/drasi-project/drasi-server:0.2.2. The rolling Latest Release (0.2.2) entry tracks it. A preview line remains ahead (0.2.3-preview; superseded chain: v0.2.1 → 0.2.2-preview → 0.2.2). The authoritative drasi-context.yaml (0.7.0) still records 0.1.6 as the "latest GitHub release", so the context file lags the release page ; prefer the release page for the current stable tag. Do not use the floating latest tag in production. Production must resolve to an immutable @sha256: digest before pinning, and release notes should be checked for stability signals before promotion (do not pin a -preview tag for production).
  • drasi-lib: crates.io has advanced to 0.9.0 (checked 2026-08-23; prior sweep recorded 0.8.9 on Jul 8, 2026, which fixed FFI cross-cdylib heap corruption #602 and dashboard row dedup #605). The official Drasi AI context baseline remains 0.8.6, and the drasi-core models crate was 0.5.4 per that context file; both lag crates.io; prefer crates.io for the current embedded-runtime version.
  • New reaction plugins (MQTT, Shell/Command) are in flight via the CNCF LFX 2026 mentorship program but do not appear in the authoritative drasi-context.yaml (0.7.0), treat as not-yet-shipped; do not author against them until they land in the context file or a platform release.
  • For production, resolve image tags to immutable digests (@sha256:...) and capture the specific release-notes URL for the pinned line before promotion.

Drasi Server

  • Drasi Server REST API docs describe management endpoints for sources, queries, reactions, health, OpenAPI, and interactive docs.
  • The docs list /api/v1/docs/ for interactive documentation and /api/v1/openapi.json for the OpenAPI document.

Sources

  • PostgreSQL Source docs show database credential properties and schema-qualified tables.
  • PostgreSQL Source docs state existing Sources are not modified in place and should be deleted/recreated, with dependent queries recreated.
  • Kubernetes Source docs show kubeconfig stored through a Kubernetes Secret and state existing Sources are not modified in place.
  • SQL Server Source docs document Microsoft Entra Workload ID and state the Source can be modified by running drasi apply again with the same source name.
  • Dataverse Source docs document Microsoft Entra Workload ID.

Reactions and agents

  • Azure Event Grid and SignalR Reaction docs document Microsoft Entra Workload ID setup.
  • MCP Reaction docs describe Streamable HTTP transport with SSE fallback, query resources shaped as drasi://query/{queryId}, and notifications/resources/updated notifications.

URLs

Currency and AI context

  • Official Drasi docs include an AI Context page described as the source of truth for AI agents working with Drasi terminology, concepts, phrasing, components, features, and positioning.
  • The AI Context page links to drasi-context.yaml for AI prompts and RAG. The raw context result checked during this pass showed Version 0.7.0, Updated 2026-06-16, with drasi-lib current_stable_version: 0.8.6 and Drasi Server current_stable_version: 0.1.6.

Scaling and synthetic validation

  • Drasi for Kubernetes operations docs include scaling guidance across Sources, query containers, Reactions, HPA, KEDA, multi-cluster considerations, and a scaling checklist.
  • Microsoft Open Source published a 2026 post describing Drasi synthetic-user testing with GitHub Actions, Dev Containers, Playwright, and GitHub Copilot CLI. The pattern validates tutorials as a naive, literal, unforgiving user.

drasi-lib

  • Drasi docs describe drasi-lib as the Rust crate for in-process change detection, with Sources, Continuous Queries, Reactions, and API access running inside the application.
  • The drasi-lib crate is published from github.com/drasi-project/drasi-core; there is no standalone drasi-lib GitHub repo under the org.
  • Version pinning remains a deliberate conflict-resolution step: the official Drasi AI context now lists drasi-lib 0.8.6 (AI-context baseline), crates.io/docs.rs may publish a newer line, and drasi-core is mid-rewrite for "Replayable Sources / Resumable Reactions" (drasi-core issues #345, #369, #392, #393, #394), which can shift trait surfaces. See bundles/drasi-lib/guide.md for the detail and pin rationale.

Additional URLs

Developer experience

  • Drasi VS Code extension docs describe managing resources, watching live ContinuousQuery results, and debugging ContinuousQueries directly in the editor.
  • Drasi getting-started materials include GitHub Codespaces and Dev Container paths for developer onboarding.
  • The developer-experience bundle in this skill now defines local inner-loop latency targets (edit-to-result, new-source first-event, reaction-config replacement) framed as engineering targets the team measures locally, not Drasi-published SLAs.
  • The developer-experience bundle also defines a fresh-machine validation procedure (clone → devcontainer/Codespace → starter example → query result → reaction → cleanup) that a contributor must run on a clean checkout before signing off the dev setup, aligned with the synthetic-user-testing bundle's clean-environment pattern.

Additional developer-experience URLs

Custom plugins and engine internals

  • The drasi-plugin-sdk crate (currently 0.4.2 on crates.io / lib.rs, built 2026-03-17) ships the descriptor traits (SourcePluginDescriptor, ReactionPluginDescriptor, BootstrapPluginDescriptor), the ConfigValue<T> carrier + DtoMapper, the export_plugin! macro for cdylib packaging, and the FfiLogger shim. Plugin authors pin against this crate; the loader validates SDK major.minor at load time.
  • drasi-core (github.com/drasi-project/drasi-core) hosts the shared AST (drasi-query-ast), both parsers (query-cypher, query-gql), the function registries (functions-cypher, functions-gql), the evaluator (core/src/evaluation/), the built-in Sources (components/sources/), the built-in Reactions (components/reactions/), and the shared test scaffolding (shared-tests/, lib-integration-tests/, query-perf/).
  • The drasi-server repo's docs/plugin-architecture.md is the canonical description of dynamic (cdylib) plugin loading - dlopen sequence, SDK + target-triple validation, the per-plugin tokio runtime, and the FfiLogger/host_log_callback wiring.
  • The drasi.* namespace (temporal functions) is documented at docs/content/reference/query-language/drasi-custom-functions.md in the docs repo, and dispatched through FunctionExpression AST nodes against the same FunctionRegistry as Cypher built-ins.
  • Function/middleware audit 2026-08-24: official docs list 12 custom functions and 6 middleware components; both fully covered by this skill. Code-only deltas recorded in the guides: drasi.stdevp, drasi.last (aggregating), retainHistory (context mutator) in both function registries; seventh middleware kind: map in middleware/src/map/. Docs page may catch up; re-check before treating these as stable API.
  • Active rewrite issues: drasi-core #298 (Plugin API), #349 (Runtime plugins), #346/#362 (WAL plugin), #345/#369/#392/#393/#394 (Replayable Sources / Resumable Reactions / Durable Pipeline), #378 (cross-cdylib Box ownership), #217 (functions-cypher/functions-gql registry split), #423 (application-identity provider). Plugin authors targeting main must re-verify trait shapes before each merge.

Custom plugin URLs

langchain-drasi (Python agent-consumer reference)

  • github.com/drasi-project/langchain-drasi. Python library that demonstrates the consumer-side reference architecture documented in the agent-integration bundle. Provides a concrete implementation of MCP transport, notification routing, subscription lifecycle, and handler diversity patterns.
  • The patterns extracted from this repo (Notification Router, Handler Protocol, subscription lifecycle, reconnection policy, backpressure strategies) are SDK-agnostic and documented in the agent-integration bundle's consumer-side reference architecture section.
  • pip package: langchain-drasi v0.1.0, Apache-2.0 license, Python 3.11+, MCP SDK >=1.0.0.
  • Repository URL: https://github.com/drasi-project/langchain-drasi

drasi-python (Python in-process bindings; renamed from drasi-core-python)

  • github.com/drasi-project/drasi-python (formerly published as drasi-core-python; the old URL 404s as of 2026-08-25). PyO3 native bindings to the Drasi core engine for in-process change detection from Python. Python equivalent of the Rust drasi-lib crate.
  • Uses DrasiLibBuilder, Query, PyApplicationSource, PyApplicationReaction to build a complete Drasi pipeline inside the Python process without requiring Drasi Server or Drasi for Kubernetes.
  • Source packages include application, HTTP, gRPC, PostgreSQL, and mock; reaction packages include application, log, HTTP, gRPC, SSE, profiler, and stored procedures for MSSQL, MySQL, and PostgreSQL.
  • Repository URL: https://github.com/drasi-project/drasi-python

learning (tutorials and sample applications)

  • github.com/drasi-project/learning. Tutorials and sample apps demonstrating Drasi in real-world scenarios.
  • Tutorials: getting-started, building-comfort, curbside-pickup, absence-of-change (non-events pattern), dapr integration, github-bot, risky-containers.
  • Sample apps: fleet-poc (vehicle telemetry), non-events (absence-of-change detection), rag-chat-app (RAG with Drasi as real-time data ingestion), react (React frontend integration), trivia (real-time game).
  • The rag-chat-app demonstrates Drasi as the change-detection layer feeding an AI RAG pipeline, relevant to the agent-integration bundle's reference architecture.
  • The absence-of-change tutorial demonstrates the non-events query pattern documented in the continuous-queries bundle.
  • Repository URL: https://github.com/drasi-project/learning

grafana-signalr (SignalR consumer reference)

  • Operation type codes: i (insert), u (update), d (delete), x (control), note the asymmetry with MCP's added/updated/deleted strings.
  • Implements snapshot loading on initial connect (SignalR equivalent of MCP resources/read).
  • Repository URL: https://github.com/drasi-project/grafana-signalr

design-documents (architecture decisions)

  • github.com/drasi-project/design-documents. Architecture design documents for Drasi platform components.
  • Contains the design-doc-template/ reusable template for Drasi architecture decisions.
  • Contains drasi-lib architecture design doc and the Dataverse source rewrite design doc.
  • Repository URL: https://github.com/drasi-project/design-documents

In-process embedding SDKs (Node.js, Python)

  • github.com/drasi-project/drasi-nodejs — embeds the Drasi continuous-query engine in Node.js via napi-rs, with dynamic plugin loading and JavaScript-defined sources and reactions. npm package: @drasi/lib.
  • github.com/drasi-project/drasi-python — PyO3 bindings exposing drasi-lib to Python applications. PyPI package: drasi-lib.
  • Name-collision trap: crates.io drasi-lib is the Rust crate documented throughout this skill's drasi-lib bundle; PyPI drasi-lib is the separate Python binding over it. State which one you mean when pinning versions in mixed projects.
  • Descriptions verified from repo metadata 2026-08-24; check npm/PyPI for current versions before pinning.

Skill packaging sources

  • GitHub Copilot docs state that agent skills are folders containing SKILL.md plus optional resources, and project skills can live under .github/skills, .claude/skills, or .agents/skills.
  • VS Code Copilot docs describe Agent Skills as an open standard that works across Copilot in VS Code, Copilot CLI, and Copilot cloud agent.
  • MCP 2025-03-26 transport guidance describes Streamable HTTP, backwards compatibility with the 2024-11-05 HTTP+SSE transport, and security requirements including Origin validation, localhost binding for local servers, and authentication.

Source: SKILL.md on GitHub

1 warning8d3 checks · Risk SAFE
  • Gen Agent Trust Hub8d

    The Drasi skill package is a highly structured and security-conscious set of instructions for managing data change detection pipelines. It includes extensive documentation on threat modeling, workload identity setup on AKS, and specific guidance for preventing prompt injection when source data is fed into AI agents. All documented commands and scripts are legitimate operational tools for the Drasi platform, and no malicious patterns such as obfuscation, persistence, or data exfiltration were found.

  • Socket8d

    No alerts

  • Snyk8d

    Risk: MEDIUM · 1 issue

Signed by skilld at 2cc2455. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub last month.

Steadyupdated last month
metadata
{
  "last_verified": "2026-08-25"
}

README badge

README badge for lukemurraynz/hve-agent-skills/drasi