---
title: "Swarm-wide skill usage and adoption"
method: GET
path: "/api/skills/usage"
tags: ["Skills"]
---

# Swarm-wide skill usage and adoption

`GET /api/skills/usage`

## Request

- Base URL: `http://localhost:3013`
- URL: `http://localhost:3013/api/skills/usage`
- Auth: HTTP bearer

Aggregates `skill_invocations` over a rolling window (7d, 30d or all; default 30d): totals, daily counts, per-harness and per-skill counts, task adoption, per-agent adoption, and installed skills with no use in the window.

## Query parameters

- `window` '7d' | '30d' | 'all'
- `tzOffset` integer, nullable

## Response `200`

Skill usage summary

- object
  - `window` '7d' | '30d' | 'all', required
  - `since` string, nullable, required
  - `trackingSince` string, nullable, required
  - `generatedAt` string, required
  - `totals` object, required
    - `invocations` number, required
    - `distinctSkills` number, required
    - `distinctAgents` number, required
    - `distinctTasks` number, required
    - `unresolved` number, required
    - `tokens` number, required
  - `taskAdoption` object, required
    - `tasks` number, required
    - `tasksWithSkill` number, required
    - `since` string, nullable, required
  - `daily` object[], required
    - `date` string, required: Local day (YYYY-MM-DD) after applying tzOffset
    - `invocations` number, required
    - `skills` number, required
    - `tasks` number, required
  - `byHarness` object[], required
    - `key` string, required
    - `invocations` number, required
  - `bySkill` object[], required
    - `skillId` string, nullable, required
    - `skillName` string, required
    - `invocations` number, required
    - `agents` number, required
    - `tokens` number, required
    - `lastInvokedAt` string, required
  - `agents` object[], required
    - `agentId` string, required
    - `agentName` string, required
    - `isLead` boolean, required
    - `installed` number, required
    - `installedUsed` number, required
    - `skillsUsed` number, required
    - `invocations` number, required
    - `lastInvokedAt` string, nullable, required
  - `unused` object[], required
    - `id` string, required
    - `name` string, required
    - `scope` string, required
    - `type` string, required
    - `systemDefault` boolean, required
    - `installedEverywhere` boolean, required
    - `installedAgents` number, required
    - `invocationCount` number, required
    - `lastInvokedAt` string, nullable, required

## Changes

- **2026-10-11** `6cca328972e4`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/desplega-ai/apis/agent-swarm-api/changes/api/skills/usage/get.md)

---

[API](https://skmtc.dev/desplega-ai/apis/agent-swarm-api.md) - [All operations](https://skmtc.dev/desplega-ai/apis/agent-swarm-api/llms.txt) - [OpenAPI document](https://skmtc.dev/desplega-ai/apis/agent-swarm-api/revisions/7e4c7198192a?raw)
