Individual skill

aai-openpanel

Use aai-cli to read OpenPanel projects, raw event exports, aggregated insights (metrics, pages, referrers, devices, geo), and user profiles.

api/domains/agents/aai_cli_skills/bundled/skills/aai-openpanel/SKILL.md

Read pinned source

Source commit 724a8ace26035d19f64cc707fbc0b4ba110cbc95

What was checked

Matches the observed repository HEAD
Yes
Scanner rules are current
No
Repository scan complete
No
Skill scan complete
Yes
Observed behavior
Not checked yet
Last checked
Nov 5, 2026

These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.

Install this skill

Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.

An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.

Repository context

Repository stars (not skill ratings)
111
Repository last updated
Nov 7, 2026
License
Apache-2.0

Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.

Files and excerpt

File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.

Browse files
Read excerpt

# aai-cli OpenPanel

Use this skill when working with OpenPanel analytics through `aai-cli openpanel`.

This is a **read-only** integration — there are no write endpoints (no `identify`/`track` calls, no project or client management). Always pass the intended profile with `--profile` unless the active default profile is already known.

OpenPanel clients are typed `write`, `read`, or `root` server-side, and this matters for which commands work with a given profile:
- `projects list` / `projects get` (the Manage API) require a `root` client.
- `events export`, all `insights *` commands, and `profiles *` commands require a `read` or `root` client.
- A project's default `write` client fails every command here with `401`/`403`.

`insights *` and `profiles *` commands need a project ID in the URL — pass `--project-id` or set `profile.project_id` to avoid repeating it. `events export`'s `--project-id` is optional: omit it when the profile's client is already scoped to a single project.

`insights pages`/`referrers`/`devices`/`geo` accept `--limit`/`--cursor` but the provider ignores them — those four always return every breakdown row for the date range, unsorted. To answer a "top N" question, fetch all rows, then sort and slice client-side. Only `events export` really paginates, and a `{ "name": null, ... }` breakdown row is the "no value for this dimension" bucket, not an error.