abp-dev — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited abp-dev (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This skill works across all major AI coding assistants. Use the configuration file for your tool:
| Platform | Instructions file | Agent / workflow files |
|---|---|---|
| GitHub Copilot | abp-dev/SKILL.md (this file) + .github/copilot-instructions.md | .github/prompts/ — 15 reusable agent prompts (see table below) |
| Claude Code | CLAUDE.md | .claude/commands/ — 15 slash commands (see table below) |
| Windsurf | .windsurfrules | .windsurf/workflows/ — 15 Cascade workflows (see table below) |
| Continue.dev | .continue/config.yaml (systemMessage) | .continue/config.yaml (agents: block) — 14 specialized agents |
The `abp-super` agent is the top-level orchestrator. Give it a plain-language description of your feature and it will:
Phase 1 → Domain layer (entity, domain service, repository interface)
Phase 2 → App.Contracts (permissions, DTOs, app service interface)
Phase 3 → Application (app service impl, AutoMapper, specification, background worker, domain events)
Phase 4 → EF Core (EfCore repository, DbSet, model config, module registration)
Phase 5 → Database (migration commands)
Phase 6 → UI (Razor Pages — optional)
Phase 7 → Seed data (IDataSeedContributor — optional)For cross-cutting concerns, use the dedicated agents: `abp-multi-tenancy` (tenant isolation), `abp-settings` (setting definitions + read/write), `abp-caching` (distributed cache + Redis).
How to invoke:
| Platform | Command |
|---|---|
| GitHub Copilot | Attach #abp-super.prompt.md in Copilot Chat and describe your scenario |
| Claude Code | /project:abp-super Build a product catalog with category filter, nightly archiver, and Razor Pages UI |
| Windsurf | run workflow abp-super in Cascade |
| Continue.dev | Select "ABP Super Agent" from the agent picker |
Each platform also exposes focused single-responsibility agents for targeted scaffolding. All agents read the relevant reference file(s) and fetch official ABP docs before generating code.
| Agent / Command / Workflow | Copilot (#) | Claude (/project:) | Windsurf (run workflow) | What it does |
|---|---|---|---|---|
| ⭐ abp-super | #abp-super.prompt.md | /project:abp-super | abp-super | Orchestrator — parses scenario, runs all sub-agents in phase order, produces complete feature |
| abp-crud | #abp-crud.prompt.md | /project:abp-crud | abp-crud | Full CRUD — entity + domain service + repository + DTOs + app service + EF Core + optional Razor Pages (12 files) |
| abp-entity | #abp-entity.prompt.md | /project:abp-entity | abp-entity | Domain entity class + repository interface + domain service (domain layer only) |
| abp-domain-service | #abp-domain-service.prompt.md | /project:abp-domain-service | abp-domain-service | Manager class only — uniqueness enforcement, GuidGenerator.Create() |
| abp-repository | #abp-repository.prompt.md | /project:abp-repository | abp-repository | Repository interface (Domain) + EF Core implementation + model config + module registration snippets |
| abp-app-service | #abp-app-service.prompt.md | /project:abp-app-service | abp-app-service | DTOs + app service interface + implementation + AutoMapper entries |
| abp-permissions | #abp-permissions.prompt.md | /project:abp-permissions | abp-permissions | Permission constants + PermissionDefinitionProvider + localization keys |
| abp-specification | #abp-specification.prompt.md | /project:abp-specification | abp-specification | Specification<T> class for domain query filtering with .And()/.Or()/.Not() combinators |
| abp-background-worker | #abp-background-worker.prompt.md | /project:abp-background-worker | abp-background-worker | Background job (AsyncBackgroundJob<TArgs>) or periodic worker (AsyncPeriodicBackgroundWorkerBase) |
| abp-razor-page | #abp-razor-page.prompt.md | /project:abp-razor-page | abp-razor-page | Razor Pages UI — list page + JS DataTable + create/edit modals + menu registration |
| abp-data-seed | #abp-data-seed.prompt.md | /project:abp-data-seed | abp-data-seed | IDataSeedContributor with idempotent guard, IGuidGenerator, autoSave: true |
| abp-event-bus | #abp-event-bus.prompt.md | /project:abp-event-bus | abp-event-bus | ETO class + ILocalEventHandler<T> or IDistributedEventHandler<T> + event bus wiring |
| abp-multi-tenancy | #abp-multi-tenancy.prompt.md | /project:abp-multi-tenancy | abp-multi-tenancy | IMustHaveTenant/IMayHaveTenant on entities, ICurrentTenant, data filters, per-tenant databases |
| abp-settings | #abp-settings.prompt.md | /project:abp-settings | abp-settings | SettingDefinitionProvider + ISettingProvider (read) + ISettingManager (write) |
| abp-caching | #abp-caching.prompt.md | /project:abp-caching | abp-caching | IDistributedCache<TCacheItem>, GetOrAddAsync, cache invalidation, Redis setup |
You are an expert ABP Framework developer. Always follow ABP conventions precisely. The user's stack: Razor Pages / MVC UI + EF Core.
Follow these steps in order for every ABP-related question:
web_fetch (or a browser tool) to get the latest API details, version-specific notes, or anything the reference file may not cover.If a fetch fails (network unavailable), rely on the local reference file and note that the answer is based on cached documentation.
| Topic | Reference File | Official Documentation URL |
|---|---|---|
| Entities, AggregateRoot, Value Objects | references/ddd-domain.md | https://docs.abp.io/en/abp/latest/Entities |
| Domain Services | references/ddd-domain.md | https://docs.abp.io/en/abp/latest/Domain-Services |
| Value Objects | references/ddd-domain.md | https://docs.abp.io/en/abp/latest/Value-Objects |
| Repositories | references/ddd-domain.md | https://docs.abp.io/en/abp/latest/Repositories |
| Application Services, DTOs, CRUD patterns | references/ddd-application.md | https://docs.abp.io/en/abp/latest/Application-Services |
| Module system, DependsOn, ConfigureServices | references/modules.md | https://docs.abp.io/en/abp/latest/Module-Development-Basics |
| EF Core DbContext, repositories, migrations | references/efcore.md | https://docs.abp.io/en/abp/latest/Entity-Framework-Core |
| Data seeding (IDataSeedContributor) | references/efcore.md | https://docs.abp.io/en/abp/latest/Data-Seeding |
| Permissions, Authorization, [Authorize] | references/authorization.md | https://docs.abp.io/en/abp/latest/Authorization |
| Auto API Controllers, HTTP API | references/api.md | https://docs.abp.io/en/abp/latest/API/Auto-API-Controllers |
| Razor Pages UI, page models, tag helpers, JS API | references/ui-razorpages.md | https://docs.abp.io/en/abp/latest/UI/AspNetCore/Razor-Pages |
| ABP CLI, startup template, project structure | references/cli-structure.md | https://docs.abp.io/en/abp/latest/CLI |
| Background Jobs (IBackgroundJob) | references/background-jobs.md | https://docs.abp.io/en/abp/latest/Background-Jobs |
| Recurring background workers | references/background-jobs.md | https://docs.abp.io/en/abp/latest/Background-Workers |
| Local Event Bus, Domain Events | references/event-bus.md | https://docs.abp.io/en/abp/latest/Local-Event-Bus |
| Distributed Event Bus | references/event-bus.md | https://docs.abp.io/en/abp/latest/Distributed-Event-Bus |
| Multi-Tenancy | references/multi-tenancy.md | https://docs.abp.io/en/abp/latest/Multi-Tenancy |
| Settings | references/settings.md | https://docs.abp.io/en/abp/latest/Settings |
| Caching | references/caching.md | https://docs.abp.io/en/abp/latest/Caching |
| Testing (unit, integration, test data seed) | references/testing-troubleshooting.md | https://docs.abp.io/en/abp/latest/Testing |
| Troubleshooting (AutoMapper, permissions, migrations) | references/testing-troubleshooting.md | https://docs.abp.io/en/abp/latest/Customizing-Application-Modules-Guide |
For questions touching multiple areas (e.g. "build a full CRUD feature"), read all relevant files and fetch all relevant documentation pages.
Guid.NewGuid() directlyITransientDependency, ISingletonDependency, IScopedDependency automaticallyApplication.Contracts, checked in Application Services and Razor PagesAcme.MyApp/
├── Acme.MyApp.Domain.Shared/ ← Enums, consts, DTOs shared with clients
├── Acme.MyApp.Domain/ ← Entities, domain services, repo interfaces
├── Acme.MyApp.Application.Contracts/ ← App service interfaces, DTOs, permissions
├── Acme.MyApp.Application/ ← App service implementations
├── Acme.MyApp.EntityFrameworkCore/ ← DbContext, EF Core repo implementations
├── Acme.MyApp.DbMigrator/ ← CLI tool: migrate + seed
├── Acme.MyApp.HttpApi/ ← (optional) manual API controllers
└── Acme.MyApp.Web/ ← Razor Pages, menus, page models~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.