fusionaly

Use when user asks about website analytics, traffic, visitors, page views, referrers, or mentions "fusionaly". Queries Fusionaly analytics via SQL API.

6 stars

Best use case

fusionaly is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Use when user asks about website analytics, traffic, visitors, page views, referrers, or mentions "fusionaly". Queries Fusionaly analytics via SQL API.

Teams using fusionaly should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/fusionaly/SKILL.md --create-dirs "https://raw.githubusercontent.com/karloscodes/fusionaly-oss/main/.claude/skills/fusionaly/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/fusionaly/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How fusionaly Compares

Feature / AgentfusionalyStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Use when user asks about website analytics, traffic, visitors, page views, referrers, or mentions "fusionaly". Queries Fusionaly analytics via SQL API.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Fusionaly Agent API

Query your Fusionaly analytics data using SQL.

**Your role:** The user will ask questions in plain English (e.g., "What were my top pages last week?" or "How many visitors did I get from Google?"). You translate these questions into SQL queries, execute them via the API, and present the results in the most readable format possible (tables, summaries, bullet points, or charts as appropriate).

## Environment Variables

Requires these environment variables to be set:
- `FUSIONALY_HOST` - Your Fusionaly instance URL (e.g., `https://analytics.example.com`)
- `FUSIONALY_API_KEY` - Your Agent API key from Administration → Agents

## Workflow

### Step 1: Fetch and Interpret the Schema

```bash
curl -s -H "Authorization: Bearer $FUSIONALY_API_KEY" "$FUSIONALY_HOST/z/api/v1/schema"
```

The response contains:
- **`schema`**: Raw SQLite CREATE TABLE statements showing all tables and columns
- **`concepts`**: Domain-specific explanations of what each table/column means

**How to use the schema:**
1. Parse the CREATE TABLE statements to learn exact table names and column names
2. Use the `concepts` section to understand what each column represents
3. Build your SQL queries using only the columns that exist in the schema
4. Always use the exact column names as shown (case-sensitive)

### Step 2: Execute SQL Queries

```bash
curl -s -X POST "$FUSIONALY_HOST/z/api/v1/sql" \
  -H "Authorization: Bearer $FUSIONALY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"sql": "SELECT ...", "website_id": 1}'
```

Build your SELECT queries based on:
- Table names from the schema (e.g., `events`, `sessions`, `visitors`)
- Column names exactly as defined in CREATE TABLE statements
- Relationships implied by foreign keys (e.g., `website_id`, `visitor_id`)

## Error Handling

**Be persistent.** If a query fails, analyze the error and retry with corrections. Try up to 3 times before giving up.

Common errors and fixes:
- `no such table: X` → Re-check schema for correct table name
- `no such column: X` → Re-check schema for correct column name (case-sensitive)
- `only SELECT queries allowed` → Remove any non-SELECT statements
- `comments not allowed` → Remove `--` or `/* */` from query
- `multiple statements not allowed` → Use only one SELECT statement
- `dangerous operation not allowed` → Remove blocked keywords, use only SELECT/WITH

**Always bias toward solving the problem.** Don't give up on first error - read the message, fix the query, retry.

## Constraints

- **Read-only**: Only SELECT/WITH queries are allowed
- **Rate limited**: 30 requests per minute
- **Query timeout**: 5 seconds
- **No comments**: SQL comments (`--` or `/**/`) are not allowed

## Domain Concepts

### Visitors vs Sessions
- **Visitor**: A unique user identified by a hash signature (no cookies, privacy-first)
- **Session**: A browsing session, expires after 30 minutes of inactivity

### Events
- **Pageview**: A page visit with path, referrer, UTM parameters
- **Custom Event**: User-defined events with optional properties

### Time-based Analysis
- Data is typically queried by date ranges
- Use `DATE(timestamp)` for daily aggregations
- Timestamps are stored in UTC

### Website Context
- All queries should filter by `website_id`
- Pass `website_id` in the request body alongside the SQL query

Related Skills

fusionaly-deploy

6
from karloscodes/fusionaly-oss

Use ONLY when explicitly invoked. Installs Fusionaly on a server you can reach over SSH with a key. Optionally provisions a new Hetzner server or sets up Cloudflare DNS.

tech

6
from karloscodes/fusionaly-oss

Use when writing or reviewing Go code in fusionaly-oss — adding routes, handlers, domain contexts, background jobs, the manager CLI, wiring the app, or writing tests. Covers the cartridge framework, matcha for the manager, Phoenix Contexts, lifecycle/shutdown, and the test conventions.

qa

6
from karloscodes/fusionaly-oss

Use after code changes, before releases, or when testing features - runs the right level of QA based on what changed

design

6
from karloscodes/fusionaly-oss

Use when styling Fusionaly UI components, pages, or charts - applies the Fusionaly design system with black/white palette and brand accents

workspace-surface-audit

144923
from affaan-m/everything-claude-code

Audit the active repo, MCP servers, plugins, connectors, env surfaces, and harness setup, then recommend the highest-value ECC-native skills, hooks, agents, and operator workflows. Use when the user wants help setting up Claude Code or understanding what capabilities are actually available in their environment.

DevelopmentClaude

ui-demo

144923
from affaan-m/everything-claude-code

Record polished UI demo videos using Playwright. Use when the user asks to create a demo, walkthrough, screen recording, or tutorial video of a web application. Produces WebM videos with visible cursor, natural pacing, and professional feel.

Developer ToolsClaude

token-budget-advisor

144923
from affaan-m/everything-claude-code

Offers the user an informed choice about how much response depth to consume before answering. Use this skill when the user explicitly wants to control response length, depth, or token budget. TRIGGER when: "token budget", "token count", "token usage", "token limit", "response length", "answer depth", "short version", "brief answer", "detailed answer", "exhaustive answer", "respuesta corta vs larga", "cuántos tokens", "ahorrar tokens", "responde al 50%", "dame la versión corta", "quiero controlar cuánto usas", or clear variants where the user is explicitly asking to control answer size or depth. DO NOT TRIGGER when: user has already specified a level in the current session (maintain it), the request is clearly a one-word answer, or "token" refers to auth/session/payment tokens rather than response size.

Productivity & Content CreationClaude

skill-comply

144923
from affaan-m/everything-claude-code

Visualize whether skills, rules, and agent definitions are actually followed — auto-generates scenarios at 3 prompt strictness levels, runs agents, classifies behavioral sequences, and reports compliance rates with full tool call timelines

DevelopmentClaude

santa-method

144923
from affaan-m/everything-claude-code

Multi-agent adversarial verification with convergence loop. Two independent review agents must both pass before output ships.

Quality AssuranceClaude

safety-guard

144923
from affaan-m/everything-claude-code

Use this skill to prevent destructive operations when working on production systems or running agents autonomously.

DevelopmentClaude

repo-scan

144923
from affaan-m/everything-claude-code

Cross-stack source code asset audit — classifies every file, detects embedded third-party libraries, and delivers actionable four-level verdicts per module with interactive HTML reports.

DevelopmentClaude

project-flow-ops

144923
from affaan-m/everything-claude-code

Operate execution flow across GitHub and Linear by triaging issues and pull requests, linking active work, and keeping GitHub public-facing while Linear remains the internal execution layer. Use when the user wants backlog control, PR triage, or GitHub-to-Linear coordination.

DevelopmentClaude