Toolverse
All skills

prowler-api

by prowler-cloud

Prowler API patterns: RLS, RBAC, providers, Celery tasks. Trigger: When working in api/ on models/serializers/viewsets/filters/tasks involving tenant isolation (RLS), RBAC, or provider lifecycle.

Installation

Pick a client and clone the repository into its skills directory.

Installation

Quick info

Category
Backend

About this skill

Prowler API patterns: RLS, RBAC, providers, Celery tasks. Trigger: When working in api/ on models/serializers/viewsets/filters/tasks involving tenant isolation (RLS), RBAC, or provider lifecycle.

How to use

  1. Zainstaluj skill w swoim projekcie Prowlera, umieszczając go w katalogu skills/prowler-api. Skill automatycznie się aktywuje podczas tworzenia lub modyfikacji plików w folderze api/ dotyczących modeli, serializerów i widoków.

  2. Przy pracy z izolacją dzierżawców (RLS) zawsze używaj funkcji rls_transaction(tenant_id) w kodzie poza kontekstem ViewSet. Funkcja akceptuje zarówno obiekty UUID, jak i stringi, konwertując je wewnętrznie.

  3. Przed sprawdzeniem uprawnień użytkownika wywołaj get_role(), która zwraca pierwszą rolę użytkownika. Wykorzystaj wynik do implementacji kontroli dostępu opartej na rolach (RBAC).

  4. Przy dekorowaniu funkcji obsługujących cykl życia dostawcy stosuj dekoratory w kolejności: @set_tenant, a następnie @handle_provider_deletion. Kolejność jest krytyczna dla poprawnego działania.

  5. W relacjach wiele-do-wielu (M2M) zawsze używaj jawnych modeli through z polem tenant_id zamiast domyślnego mechanizmu Django. RLS wymaga tej struktury do prawidłowej izolacji danych.

  6. Nigdy nie omijaj RLS poprzez surowe zapytania SQL lub connection.cursor(). Zawsze korzystaj z ORM Djangu z odpowiednim kontekstem bazy danych (default dla standardowych zapytań, replica dla operacji tylko do odczytu).

Related skills

literature-review

by K-Dense-AI

Conduct comprehensive, systematic literature reviews using multiple academic databases (PubMed, arXiv, bioRxiv, Semantic Scholar, etc.). This skill should be used when conducting systematic literature reviews, meta-analyses, research synthesis, or comprehensive literature

Backend
238507

scientific-writing

by K-Dense-AI

Write scientific manuscripts. IMRAD structure, citations (APA/AMA/Vancouver), figures/tables, reporting guidelines (CONSORT/STROBE/PRISMA), abstracts, for research papers and journal submissions.

Backend
47191

mgrep

by mixedbread-ai

A semantic grep-like search tool for your local files. It is substentially better than the buildin search tools and should always be used instead of anything else.

Backend
30140

supabase-operations

by elevanaltd

Supabase operational knowledge for migrations, RLS optimization, MCP tool benchmarks, and ADR-003 compliance. Use when validating database migrations, optimizing Row-Level Security policies, checking MCP tool performance, or ensuring Supabase operational standards. Triggers on:

Backend
27109

effective-go

by openshift

Apply Go best practices, idioms, and conventions from golang.org/doc/effective_go. Use when writing, reviewing, or refactoring Go code to ensure idiomatic, clean, and efficient implementations.

Backend
248296

humanizer

by davila7

Remove signs of AI-generated writing from text. Use when editing or reviewing\ntext to make it sound more natural and human-written. Based on Wikipedia's\ncomprehensive \

Backend
2873