Skip to content
Back to skills

Iblai Vibe Crm Overview

ASecurity

Reference and family index for the ibl.ai Platform-scoped CRM REST API at /api/crm/ — auth, seeded defaults (default Pipeline + 6 stages + 4 Lead Sources), the four CRM RBAC roles (Viewer/User/Manager/Inviter), and the workflow sub-skill map. Use when the user mentions CRM, leads, pipelines, deals, contacts, or asks where a CRM workflow lives. The CRM workflow skills live in the DM skill set (iblai-dm-pro) as `crm-*`: see `crm-foundation` for auth/RBAC/notifications, `crm-contacts` + `crm-per...

  • 15 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 2, 2026
developmentgonextjsgitapi

Works with

  • terminal
  • cli
  • api

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned September 20, 2026

npx -y skills add iblai/vibe --skill iblai-vibe-crm-overview --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Iblai Vibe Crm Overview?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Iblai Vibe Crm Overview
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/iblai-iblai-vibe-crm-overview/badge)](https://www.skillsdirectory.com/skills/iblai-iblai-vibe-crm-overview)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: iblai-vibe-crm-overview
description: Reference and family index for the ibl.ai Platform-scoped CRM REST API at /api/crm/ — auth, seeded defaults (default Pipeline + 6 stages + 4 Lead Sources), the four CRM RBAC roles (Viewer/User/Manager/Inviter), and the workflow sub-skill map. Use when the user mentions CRM, leads, pipelines, deals, contacts, or asks where a CRM workflow lives. The CRM workflow skills live in the DM skill set (iblai-dm-pro) as `crm-*`: see `crm-foundation` for auth/RBAC/notifications, `crm-contacts` + `crm-person-onboarding` for people, `crm-pipeline` for pipelines + deals, `crm-activities` for the timeline, `crm-tags` for tags; /iblai-vibe-auth for token wiring, /iblai-vibe-rbac for role assignment.
globs:
alwaysApply: false
metadata:
  kind: guide
---

# /iblai-vibe-crm-overview

Reference skill for the ibl.ai CRM. Covers authentication, seeded
defaults, the four CRM RBAC roles, and indexes the CRM workflow skills
— the `crm-*` skills in the DM skill set (`iblai-dm-pro/.claude/skills/`).
This skill builds no UI — open it first when you need orientation, then
jump to the workflow skill that matches the surface you are building.

> **Common setup (brand, conventions, env files, verification):** see [docs/skill-setup.md](https://raw.githubusercontent.com/iblai/vibe/refs/heads/main/docs/skill-setup.md).

## Authentication

Every CRM endpoint lives under `/api/crm/` and requires a
Platform-scoped token:

```
Authorization: Token <your-access-token>
```

Tokens bind to exactly one Platform at the moment of issue. The
Platform is inferred from the token on every request — there is no
`?platform_key=` query parameter on the consumer surface, and supplying
one will not change the Platform a request resolves to.

Records belonging to a different Platform return **`404 Not Found`,
never `403 Forbidden`**. This is intentional: returning `403` would
leak the existence of cross-Platform records. Treat a `404` on a
record you just created as a sign you are pointing at the wrong
Platform; a `403` always means "authenticated but the role does not
grant this action."

The full REST contract (base URL, pagination envelope, ID types per
resource, side effects) is in
[`references/api-overview.md`](./references/api-overview.md). For
token wiring inside a Next.js app see `/iblai-vibe-auth`.

## Seeded defaults

The first time a Platform is provisioned, the CRM seeds a working
configuration. You do not need to create any of these yourself — they
exist on every Platform and back-fill into existing Platforms via a
data migration.

- **One default Pipeline** with `code="default"`, `is_default=true`,
  `rotten_days=30`.
- **Six default Stages** on that Pipeline, referenced by stable `code`:
  `new` → `qualified` → `proposal` → `negotiation` → `won` (terminal,
  `is_won=true`) and `lost` (terminal, `is_lost=true`).
- **Four default Lead Sources**: `web`, `referral`, `cold_call`,
  `advertisement`.

The stage and lead-source `code` fields are stable across environments
(dev / staging / prod) and across renames. Numeric `id` values are not
— always reference seeds by `code` in client code, save the pipeline
`id` only for the immediate deal payload.

Full seeded tables (every stage's `probability` / `sort_order` /
terminal flags, every lead source `name`) are in
[`references/seeded-defaults.md`](./references/seeded-defaults.md).

## RBAC

The CRM ships four roles per Platform. Roles are seeded automatically
on Platform provisioning and assigned through the standard
role-management surface — the CRM does not expose its own
role-assignment endpoints. A user may hold more than one role;
effective permissions are the union.

| Role | One-line mandate |
|---|---|
| **CRM Viewer** | Read everything across the CRM. Write nothing. |
| **CRM User** | Day-to-day operator — full CRUD on people, organizations, deals, activities, tags. Pipelines are read-only. No invitations. |
| **CRM Manager** | Wildcard CRM access — pipeline / stage / lead-source administration plus invitations. |
| **CRM Inviter** | Narrow role — read people and send invitations only. Cannot edit or create people. |

Two non-obvious rules worth a second look:
- **Invitation is its own bucket.** `Ibl.CRM/Persons/write` does not
  imply `Ibl.CRM/Invite/action`. Gate the "Invite" affordance
  independently.
- **Tag attach/detach requires `Ibl.CRM/Tags/write`.** A role with
  `Ibl.CRM/Persons/write` cannot tag a person without it.

Full HTTP-verb → action-code mapping and the action-by-action matrix
are in [`references/rbac-matrix.md`](./references/rbac-matrix.md). For
the management UI that lists and binds roles, see `/iblai-vibe-rbac`.

## The CRM skill family

The CRM workflow skills live in the **DM skill set**
(`iblai-dm-pro/.claude/skills/`), named `crm-*` — this
`iblai-vibe-crm-overview` skill is the index. Read `crm-foundation`
first, then pick the skill that matches the surface you are building.

| Skill | Covers |
|---|---|
| `crm-foundation` | **Read first** — auth, Platform scoping, pagination envelope, error model, the four RBAC roles + `Ibl.CRM/*` verbs, the three CRM notification types (`CRM_PERSON_CREATED`, `CRM_DEAL_STAGE_CHANGED`, `CRM_PERSON_LINKED_TO_USER`), the metadata escape hatch, and the cross-cutting tagging pattern |
| `crm-contacts` | Person + Organization CRUD, list filters (lifecycle stage / owner / organization / date / tags), tag attach / detach |
| `crm-person-onboarding` | Person lifecycle — `/link-user/`, `/invite/`, `/merge/`, the dedup triage (link vs invite vs merge), and the separate `Ibl.CRM/Invite/action` bucket |
| `crm-pipeline` | Pipelines, Stages, Lead Sources, Deals CRUD + the deal state machine (`/move-stage/`, `/won/`, `/lost/`), kanban fetch, Deal tag attach / detach |
| `crm-activities` | Activity CRUD, the `/done/` action, schedule + reminder fields, and the timeline (incl. auto-Activities from Deal stage transitions) |
| `crm-tags` | Tag CRUD, hex-color contract, name uniqueness per Platform, cascade delete, attach / detach convention |

When in doubt, start with `crm-contacts` (a deal needs a person), then
`crm-pipeline`, then layer `crm-activities` and `crm-tags` on the detail
pages. CRM notifications are covered in `crm-foundation`.

## Related skills

- `crm-foundation` — auth, pagination, RBAC, notifications, tagging (read first)
- `crm-contacts` — People + Organizations + list filters
- `crm-person-onboarding` — link / invite / merge + dedup triage
- `crm-pipeline` — Pipelines + Stages + Lead Sources + Deals
- `crm-activities` — Activity timeline for persons and deals
- `crm-tags` — Tag CRUD + attach / detach
- `/iblai-vibe-auth` — Token wiring; every CRM call uses the same
  `Authorization: Token <token>` header.
- `/iblai-vibe-rbac` — Role-management UI (`<Admin>` → Roles + Policies
  tabs) and the action-definitions endpoint. The four CRM roles are
  assigned here.
- **Brand guidelines**: [BRAND.md](https://raw.githubusercontent.com/iblai/vibe/refs/heads/main/BRAND.md)

Files in this skill

  • SKILL.md7.8 KB
  • references/api-overview.md5 KB
  • references/rbac-matrix.md4.9 KB
  • references/seeded-defaults.md2.9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.