Custom Claude Code plugins
npx claudepluginhub antigenplus/claude-ef-core-pluginEntity Framework Core development support for Claude Code. Provides dotnet ef commands, migration workflows, and best practices enforcement.
A Claude Code plugin for .NET projects using Entity Framework Core. Provides structured access to dotnet ef commands, enforces best practices, and prevents accidental edits to auto-generated files.
Add the marketplace and install the plugin:
/plugin marketplace add AntigenPlus/claude-ef-core-plugin
/plugin install ef-core@samalone-plugins
Choose user, project, or local scope when prompted.
For development/testing (loads directly without caching):
claude --plugin-dir /path/to/claude-ef-core-plugin
Repository: github.com/AntigenPlus/claude-ef-core-plugin
| Command | Description |
|---|---|
/ef-core:migrate <Name> | Create a new migration (auto-detects projects, handles dummy connection strings) |
/ef-core:update-database [Migration] | Apply migrations to the database |
/ef-core:remove-migration | Remove the last unapplied migration |
/ef-core:migration-script [from] [to] | Generate a SQL deployment script |
/ef-core:migration-bundle | Create a standalone migration executable |
/ef-core:scaffold <conn> <provider> | Reverse-engineer entities from a database |
/ef-core:db-info | Show DbContext info, migrations, and status |
/ef-core:optimize | Generate a compiled model for faster startup |
/ef-core:review [MigrationName] | Review a migration for risks (data loss, missing defaults, snapshot drift) |
/ef-core:status | Check for pending model changes that need a migration |
/ef-core:list | List all migrations (works without a database connection) |
All commands auto-detect project structure, handle --project/--startup-project flags, and support multi-DbContext projects. The migrate command also handles the connection string problem by setting a dummy connection string when needed.
When Claude detects EF Core usage in your project, it automatically follows these rules:
*.Designer.cs or *ModelSnapshot.cs filesMicrosoft.EntityFrameworkCore.Design as a permanent dependencyA PreToolUse hook blocks any attempt to edit or write to:
*.Designer.cs — migration metadata files*ModelSnapshot.cs — model snapshot filesThese files must only be modified by dotnet ef tooling. The hook provides clear error messages explaining what to do instead.
claude-ef-core-plugin/
├── .claude-plugin/
│ ├── plugin.json # Plugin manifest
│ └── marketplace.json # Marketplace manifest
├── skills/
│ └── ef-core/
│ ├── SKILL.md # Core rules and best practices
│ └── commands-reference.md # Full dotnet ef command reference
├── commands/
│ ├── migrate.md # /ef-core:migrate
│ ├── update-database.md # /ef-core:update-database
│ ├── remove-migration.md # /ef-core:remove-migration
│ ├── migration-script.md # /ef-core:migration-script
│ ├── migration-bundle.md # /ef-core:migration-bundle
│ ├── scaffold.md # /ef-core:scaffold
│ ├── db-info.md # /ef-core:db-info
│ ├── optimize.md # /ef-core:optimize
│ ├── review.md # /ef-core:review
│ ├── status.md # /ef-core:status
│ └── list.md # /ef-core:list
├── hooks/
│ ├── hooks.json # Hook configuration
│ ├── protect-generated-files.sh # Bash hook script
│ └── protect-generated-files.ps1 # PowerShell hook script (reference)
└── README.md
dotnet tool install --global dotnet-efThe hook scripts use bash by default. On Windows, this works via Git Bash (included with Git for Windows). The protect-generated-files.ps1 PowerShell script is included as an alternative. To use it, update hooks/hooks.json:
{
"hooks": {
"PreToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "powershell -File \"${CLAUDE_PLUGIN_ROOT}/hooks/protect-generated-files.ps1\""
}
]
}
]
}
}
Open Design — local-first design app exposed to coding agents over MCP. Install once with your agent's plugin command and projects/files/skills are reachable through stdio.
Claude Code plugins for the Slidev presentation framework
Bundled plugins for actuating and debugging the Chrome browser.