Agent skill

Time Series Analytics User

by open-edge-platform in open-edge-platform/edge-ai-libraries

Build a new time-series analytics use case on top of the deployed Time Series Analytics microservice — bring it up with Docker Compose (from a repo clone, or by fetching the compose files from…

Apache-2.0Auto-check passedData & Analytics

Install Time Series Analytics User

skills CLI
$ npx skills add open-edge-platform/edge-ai-libraries --skill time-series-analytics-user -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install open-edge-platform/edge-ai-libraries time-series-analytics-user --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/open-edge-platform/edge-ai-libraries.git skills-src && mkdir -p .claude/skills && cp -r skills-src/microservices/time-series-analytics/.github/skills/time-series-analytics-user .claude/skills/time-series-analytics-user && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
time-series-analytics-user
GitHub stars
169
Token cost
~3.1k tokens
SKILL.md length
1,071 words
Files
14 (incl. scripts, references, assets)
Skills in repo
29
Repo updated
First seen
Licence
Apache-2.0

At a glance

Build a new time-series analytics use case on top of the deployed Time Series Analytics microservice — bring it up with Docker Compose (from a repo clone, or by fetching the compose files from…

  • Works in 6 steps: Get the service running → Pick a pattern → Write the UDF and tick script → …
  • The user describes a sensor/metric monitoring
  • SKILL.md covers Capabilities Required, Overview, When to Use and Example Prompts, plus 10 more sections
  • Runs Python and Shell scripts from its folder; calls docker

What it does

Time Series Analytics User is an agent skill from open-edge-platform/edge-ai-libraries. Build a new time-series analytics use case on top of the deployed Time Series Analytics microservice — bring it up with Docker Compose (from a repo clone, or by fetching the compose files from GitHub when no clone exists) using the prebuilt intel/ia-time-series-analytics-microservice image, then author a UDF (Python) + TICKscript pair for the use case (threshold alerting, rate-of-change/spike detection, rolling-window anomaly detection, pretrained-model inference per point, or batch windowed inference over a time…

Its SKILL.md is about 3.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 19 other files, including scripts, reference files and assets (for example `assets/udf_stream_template.py`, `benchmark/benchmark.json` and `benchmark/benchmark.md`).

It sits in Data & Analytics, covering Forecasting and time series, Microservices and Anomaly detection. It works with Docker, GitHub, scikit-learn and Python. The repository describes itself as: Libraries, microservices, tools, and other reference software, supporting development of performance-optimized Edge AI applications. The licence is Apache-2.0.

When your agent uses it

  • The user describes a sensor/metric monitoring
  • Anomaly-detection scenario
  • Wants to plug their own analytics logic
  • A trained scikit-learn model into a streaming

Example prompts

  • “/time-series-analytics-user”

Requirements

  • Python 3
  • A Bash shell
  • Docker

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Get the service running
  2. Pick a pattern
  3. Write the UDF and tick script
  4. Package and deploy
  5. Feed data and verify
  6. Optional: alerting

What it can do on your machine

Read from SKILL.md and the folder at commit cdf860c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python and Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • docker

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use docker, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Time Series Analytics User loads about 3.1k tokens when it runs, and up to ~12k if it reads all its reference files. Until then it costs about 245 tokens; SKILL.md has 1,071 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~245
When it runs · the whole SKILL.md, loaded when a task matches
~3.1k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~12k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from open-edge-platform/edge-ai-libraries at commit cdf860c, republished under its Apache-2.0 licence (© open-edge-platform). 1,071 words, ~3,075 tokens.

Download SKILL.mdSave it as .claude/skills/time-series-analytics-user/SKILL.md (or your agent's skills folder). This skill also uses 13 other files; get the full folder from GitHub.
name
time-series-analytics-user
description
Build a new time-series analytics use case on top of the deployed Time Series Analytics microservice — bring it up with Docker Compose (from a repo clone, or by fetching the compose files from GitHub when no clone exists) using the prebuilt intel/ia-time-series-analytics-microservice image, then author a UDF (Python) + TICKscript pair for the use case (threshold alerting, rate-of-change/spike detection, rolling-window anomaly detection, pretrained-model inference per point, or batch windowed inference over a time window), package it as a tar, deploy it via the REST API, and feed it data. Use when the user describes a sensor/metric monitoring or anomaly-detection scenario, wants to plug their own analytics logic or a trained scikit-learn model into a streaming or windowed-batch pipeline, or asks to wire up MQTT/OPC UA alerting on top of this service. Not for modifying the microservice's own source code — that is time-series-analytics-dev.

Time Series Analytics — User

Capabilities Required

This skill runs shell commands (docker compose, curl, tar, scripts/package_udf.sh) and writes files to the working directory. The STANDALONE setup path fetches a public Docker Compose configuration from the official Intel GitHub repository. No credentials are transmitted; the fetched file is a public configuration template only.

Overview

Build new use cases on the deployed service: you write a small UDF and a TICKscript, package them, deploy them over REST, and feed data in. Run commands yourself and relay output. The service listens on host port 5000; Swagger UI is at http://localhost:5000/docs.

When to Use

  • Turn a monitoring/anomaly-detection description into a working UDF + TICKscript pair and deploy it
  • Plug a pretrained scikit-learn model into the streaming pipeline (per-point) or batch windowed pipeline (|window() + begin_batch/end_batch)
  • Wire up MQTT (native TICKscript alert node) or OPC UA (REST endpoint) alerting on flagged points
  • Debug why a deployed UDF isn't receiving data or a package upload fails

Example Prompts

Run these prompts to build a complete, working use case. Output is generated in examples/<use-case-name>/:

Example PromptUse CaseOutput Location
windturbine-anomaly-model.mdPretrained IsolationForest model inference (per-point)examples/<udf-name>/
pressure-threshold-alert.mdThreshold-based alertsexamples/<udf-name>/
vibration-spike-mqtt-alert.mdRate-of-change spike detection + MQTTexamples/<udf-name>/

Output Directory Layout

When you complete a prompt, the generated use case is placed in examples/<use-case-name>/ following this structure:

examples/<use-case-name>/
├── README.md                           ← Quick start + customization guide
├── deploy.sh                           ← Setup automation script
├── test.sh                             ← Validation script
├── test_data.json                      ← Sample input for testing
├── config.json                         ← UDF configuration (upload to microservice)
├── <use-case-name>.tar                 ← Packaged UDF (upload to microservice)
├── DEPLOYMENT_VALIDATION_REPORT.md     ← Test results and diagnostics
│
├── udfs/
│   └── <udf-name>.py                   ← Kapacitor Python UDF handler
├── tick_scripts/
│   └── <udf-name>.tick                 ← TICKscript wiring
└── models/
    └── <model-name>.pkl (or .xml/.bin) ← Pre-trained model file(s) (if applicable)

To run a generated example:

bash
cd examples/<use-case-name>
chmod +x deploy.sh test.sh
./deploy.sh    # prints next steps
./test.sh      # validates deployment

Evidence you must show in the final answer

For evals and any live deployment/validation request, do not just say the workflow succeeded — print concrete evidence gathered from the commands you ran so the grader can verify it from your response alone:

  • REST deployment proof
    • Print the exact response body from POST /udfs/package
    • Print the exact response body from POST /config (or POST /config?restart=true)
  • File proof
    • Name the exact generated files, including:
      • udfs/<name>.py
      • tick_scripts/<name>.tick
      • <name>.tar
    • Quote the specific TICKscript line invoking @<name>()
    • For alerting scripts, also quote the full alert chain line showing the UDF node reference and required alert methods (for example @<name>() |alert().crit(lambda: TRUE).mqtt('<topic>').brokerName('<broker>'))
    • Quote the exact field-access line from the UDF showing it reads the required input field (for example pressure_bar = point.fieldsDouble["pressure_bar"])
    • For pretrained-model UDFs, quote the __init__/startup line that loads the model once and the model.predict(...) line
  • Config proof
    • Quote the exact JSON payload posted to POST /config (or ?restart=true), so udfs.name, udfs.models, udfs.device, and alerts.mqtt settings are visible to the grader
  • Log proof
    • Quote the exact container log line showing a flagged anomaly
    • Quote the exact container log evidence for the non-flag case: show the input/received line for the non-anomalous point and explicitly say no matching Flagged anomalous point ... line appeared afterward
  • MQTT proof
    • Subscribe on the broker itself (for example with docker exec <broker> mosquitto_sub ...) and print the actual message captured from the broker
    • Also state explicitly that no second message arrived for the non-triggering point

If the user asked for live verification, your answer is incomplete unless it includes these concrete response/log/message snippets.

Reference Lookup

FileLoad when…
references/patterns.mdchoosing an approach — threshold, rate-of-change, rolling z-score, pretrained model (classification or regression-based anomaly detection), or batch inference — start here for any new UDF
references/udf-authoring.mdwriting the UDF's Handler methods, reading point fields, loading a model, logging best practices, point emission strategy
references/tickscript-basics.mdwriting the tick script, wiring MQTT alerting; basic form (recommended) is just stream → UDF (no explicit influxDBOut needed)
references/api-workflow.mdthe package's internal structure and a troubleshooting table for a failed upload or a silent pipeline (links out to the microservice's own docs for the deploy sequence and API reference)
Show full SKILL.md (493 more words)Show less

1. Get the service running

bash
[ -f docker/docker-compose.yml ] && echo REPO || echo STANDALONE
  • REPO (repo clone present) → cd docker && docker compose up -d
  • STANDALONE (no clone) → follow the Get Started guide to fetch the compose files and bring up the service (it covers the exact docker compose up sequence for the prebuilt image), then return here for step 2.
  • Already running → confirm with the health-check command from the Get Started guide then skip to step 2.
  • Host has no Intel iGPU? The compose file unconditionally mounts /dev/dri and adds it under devices:. If docker compose up fails on that device mount, comment out both the devices: entry and the /dev/dri line under volumes: in docker/docker-compose.yml — nothing else in this workflow needs a GPU unless you specifically set udfs.device: GPU in a UDF's config.

Wait for the REST API and Kapacitor to be reachable — use the wait commands shown in the Get Started guide (/docs first, then /health after the first POST /config).

2. Pick a pattern

Read references/patterns.md and match the user's description to a row in its table (threshold, rate-of-change, rolling z-score, or pretrained model). Confirm the specific parameters (field name, thresholds, window size, model file) before writing code.

3. Write the UDF and tick script

Copy the two templates and fill in the pattern-specific point() body from references/patterns.md:

bash
mkdir -p udfs tick_scripts   # standalone: these won't exist yet
cp .github/skills/time-series-analytics-user/assets/udf_stream_template.py udfs/<name>.py
cp .github/skills/time-series-analytics-user/assets/tick_template.tick tick_scripts/<name>.tick

(Standalone/no-clone: fetch these two template files from GitHub raw the same way as the compose files above, under .github/skills/time-series-analytics-user/assets/.)

Full method contract and gotchas: references/udf-authoring.md. Tick script details: references/tickscript-basics.md.

4. Package and deploy

bash
.github/skills/time-series-analytics-user/scripts/package_udf.sh <name> .

package_udf.sh validates file naming locally before tarring — read its warnings if it fails.

For the POST /udfs/package upload and POST /config calls, follow the exact request format and sequence from the Access Microservice API reference. Full config shape and a troubleshooting table: references/api-workflow.md.

When you deploy, capture and print the real response bodies from both REST calls — quote them verbatim in your answer so the grader can verify.

5. Feed data and verify

Send test points using the POST /input request format from the Access Microservice API reference, then tail the container log:

bash
docker logs -f ia-time-series-analytics-microservice

topic must equal the .measurement(...) value in the tick script. Anomalies your UDF flags (via write_response) show up in this log; for Kapacitor-internal errors, docker exec -it ia-time-series-analytics-microservice bash then cat /tmp/log/kapacitor/kapacitor.log | grep -i error.

For grading, do not stop at "I checked logs" — print the exact evidence. A good pattern is:

bash
docker logs ia-time-series-analytics-microservice 2>&1 | grep -F "Flagged anomalous point"
docker logs ia-time-series-analytics-microservice 2>&1 | grep -F "Converted line protocol"

In your answer, quote:

  • the exact flagged line for the anomalous point
  • the exact received/input line for the non-anomalous point
  • an explicit statement that no flagged line appeared for the non-anomalous point after that input

6. Optional: alerting

  • MQTT — set config.json's alerts.mqtt, chain |alert()...mqtt('<broker_name>') in the tick script. Native, automatic.
  • OPC UA — set config.json's alerts.opcua, then explicitly call POST /opcua_alerts (not automatic — see tickscript-basics.md for why).

For MQTT validation, capture broker-side proof, not just REST success or UDF logs. Example:

bash
docker exec <broker_container> sh -lc \
  "timeout 8 mosquitto_sub -h localhost -t '<topic>' -v"

Then print the exact subscribed output in your answer and state explicitly that no additional message arrived for the non-triggering point.

Stop / clean

bash
docker compose down -v   # from docker/

© open-edge-platform, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 13 other files (scripts, references, assets) in microservices/time-series-analytics/.github/skills/time-series-analytics-user of open-edge-platform/edge-ai-libraries.

  • SKILL.md
  • assets/tick_template.tick
  • assets/udf_stream_template.py
  • benchmark/benchmark.json
  • benchmark/benchmark.md
  • evals/evals.json
  • example-prompts/pressure-threshold-alert.md
  • example-prompts/vibration-spike-mqtt-alert.md
  • example-prompts/windturbine-anomaly-model.md
  • references/api-workflow.md
  • references/patterns.md
  • references/tickscript-basics.md
  • references/udf-authoring.md
  • scripts/package_udf.sh

Open the folder on GitHubat commit cdf860c

Compare with similar skills

Time Series Analytics User next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Time Series Analytics User compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Time Series Analytics User this skillopen-edge-platform/edge-ai-libraries169—~3.1kAutomated safety check: PassApache-2.0
Aeon Time Series Machine Learningdavila7/claude-code-templates32k13 repos~2.6kAutomated safety check: PassMIT
TimesFM Forecastinggoogle-research/timesfm34k—~4.7kAutomated safety check: PassApache-2.0
Senior Data ScientistRaidriar7170/hermes-skilleval1255 repos~1.4kAutomated safety check: PassMIT
Deploying Go SDK Bundlesastronomer/agents451—~1.8kAutomated safety check: NotesApache-2.0
Sync Reviewthun-res/vlink116—~290Automated safety check: PassApache-2.0

Similar skills

  • Aeon Time Series Machine Learning

    davila7/claude-code-templates

    Guides time series machine learning with the aeon toolkit: classification, regression, clustering, forecasting, anomaly detection, segmentation and similarity search.

    32k GitHub starsUsed in 13 repos~2.6k tokens
    Data & AnalyticsAuto-check passed
  • TimesFM Forecasting

    google-research/timesfm

    Forecasts any univariate time series zero-shot with Google's TimesFM model, returning point forecasts and calibrated prediction intervals without training.

    34k GitHub stars~4.7k tokensUpdated 9 days ago
    Data & AnalyticsAuto-check passed
  • Senior Data Scientist

    Raidriar7170/hermes-skilleval

    World-class data science skill for statistical modeling, experimentation, causal inference, and advanced analytics.

    125 GitHub starsUsed in 5 repos~1.4k tokens
    Data & AnalyticsAuto-check passed
  • Deploying Go SDK Bundles

    astronomer/agents

    Builds, packs, and deploys compiled Airflow Go SDK bundles so the ExecutableCoordinator can run them.

    451 GitHub stars~1.8k tokensUpdated yesterday
    Data & AnalyticsAuto-check: notes
  • Sync Review

    thun-res/vlink

    审计 VLink 代码、doc、Doxygen、Python/C API、测试、示例、版本、 CMake、conanfile.py、Android.bp、vcpkg、packup 构建打包面、Agent 索引以及 .github 的 workflows、scripts、Docker、模板、Wiki 与治理 文件同步关系,定位 API、功能或工程入口变化后的遗漏和过时描述。公开…

    116 GitHub stars~290 tokensUpdated today
    DevOps & CloudAuto-check passed
  • Scikit Learn

    zLanqing/codex-claude-academic-skills

    Machine learning in Python with scikit-learn. An agent skill from zLanqing/codex-claude-academic-skills.

    4.7k GitHub starsUsed in 16 repos~3.9k tokens
    Data & AnalyticsAuto-check passed

More from open-edge-platform/edge-ai-libraries

All 29 skills in this repo
  • Vss Add Nest Module

    open-edge-platform/edge-ai-libraries

    Scaffolds and wires a new NestJS service/module for the Video Search & Summarization sample app's pipeline-manager using the repo's real conventions.

    169 GitHub stars~2.5k tokensUpdated today
    Auto-check passed
  • Chatqna Helm Deploy

    open-edge-platform/edge-ai-libraries

    Deploy Chat Question-and-Answer Core to Kubernetes using Helm (OpenVINO CPU, OpenVINO GPU, or Ollama), including values.yaml configuration, helm install/upgrade, deployment verification, uninstall…

    169 GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Generate Changelog

    open-edge-platform/edge-ai-libraries

    Generates or updates CHANGELOG.md by analyzing git commit history between two branches, tags, or revisions in ANY git repository or folder.

    169 GitHub stars~3.1k tokensUpdated today
    Auto-check passed
  • Vss Deploy

    open-edge-platform/edge-ai-libraries

    Deploys and manages VSS through setup.sh and its Docker Compose overlays.

    169 GitHub stars~4.1k tokensUpdated today
    Auto-check passed
  • Vss Deploy Helm

    open-edge-platform/edge-ai-libraries

    A skill your agent uses whenever a developer needs to deploy VSS to Kubernetes, helm install VSS, configure values.yaml for VSS, or run VSS on k8s with GPU/vLLM for the…

    169 GitHub stars~3.8k tokensUpdated today
    Auto-check passed
  • Vss Dlstreamer Pipeline

    open-edge-platform/edge-ai-libraries

    Helps developers understand and safely modify the DLStreamer/GStreamer Pipeline Server (EVAM) video ingestion pipelines in the video-search-and-summarization sample app.

    169 GitHub stars~1.8k tokensUpdated today
    Auto-check passed

Questions about Time Series Analytics User

What does Time Series Analytics User do?

Build a new time-series analytics use case on top of the deployed Time Series Analytics microservice — bring it up with Docker Compose (from a repo clone, or by fetching the compose files from…. Time Series Analytics User is an agent skill from open-edge-platform/edge-ai-libraries.

When should I use Time Series Analytics User?

Time Series Analytics User fits situations like: the user describes a sensor/metric monitoring; anomaly-detection scenario; wants to plug their own analytics logic; A trained scikit-learn model into a streaming.

How do I install Time Series Analytics User in Claude Code?

Run `npx skills add open-edge-platform/edge-ai-libraries --skill time-series-analytics-user -a claude-code`. Or copy the skill folder (microservices/time-series-analytics/.github/skills/time-series-analytics-user in open-edge-platform/edge-ai-libraries) into .claude/skills/time-series-analytics-user in your project. Claude Code loads it when a task matches its description.

How do I install Time Series Analytics User in Codex?

Run `npx skills add open-edge-platform/edge-ai-libraries --skill time-series-analytics-user -a codex`. Or copy the skill folder (microservices/time-series-analytics/.github/skills/time-series-analytics-user in open-edge-platform/edge-ai-libraries) into .agents/skills/time-series-analytics-user in your project. Codex loads it when a task matches its description.

Can I use Time Series Analytics User in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add open-edge-platform/edge-ai-libraries --skill time-series-analytics-user -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/time-series-analytics-user, .gemini/skills/time-series-analytics-user, .github/skills/time-series-analytics-user and .opencode/skills/time-series-analytics-user in your project.

What does Time Series Analytics User need to run?

Going by SKILL.md and its folder, Time Series Analytics User needs Python and a shell for the scripts in its folder and the command-line tools its instructions call (docker). Our summary lists: Python 3; A Bash shell; Docker.

Does Time Series Analytics User access the network?

SKILL.md contains no URLs. Its commands use docker, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Time Series Analytics User safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Time Series Analytics User use?

Time Series Analytics User is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Time Series Analytics User use?

About 3.1k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 8.7k tokens, read only when the agent opens those files.

What are the alternatives to Time Series Analytics User?

Skills that share tags, products or a category with Time Series Analytics User: Aeon Time Series Machine Learning (davila7/claude-code-templates, 32k stars), TimesFM Forecasting (google-research/timesfm, 34k stars), Senior Data Scientist (Raidriar7170/hermes-skilleval, 125 stars) and Deploying Go SDK Bundles (astronomer/agents, 451 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Time Series Analytics User?

open-edge-platform (a GitHub organization) maintains it in open-edge-platform/edge-ai-libraries, which has 169 GitHub stars. The repository holds 29 skills in this directory. The repository was last updated on October 9, 2026.

Source: open-edge-platform/edge-ai-libraries on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.