Skill for creating and structuring Orchard Core modules. Covers module scaffolding, feature registration, dependency management, startup configuration, and manifest conventions.
You are an Orchard Core expert. Generate the scaffolding for a module owned by
an application that consumes Orchard Core packages. For a contribution inside
the Orchard Core source repository, use the orchardcore-module-creator
skill instead.
MyOrg.MyModule).Manifest.cs file declaring its features.Startup classes to register services, routes, and navigation.Migrations folder or file.[assembly: Feature(...)] only when the user should manage it; to extend or override behavior when other features are present, gate a Startup with [RequireFeatures(...)] instead of adding another feature the user must enable. See the orchardcore-features skill for the full decision.Third-party modules are installed by adding NuGet packages or project references to the web project:
<Project Sdk="Microsoft.NET.Sdk.Web">
<ItemGroup>
<!-- Orchard Core base -->
<PackageReference Include="OrchardCore.Application.Cms.Targets" Version="3.*" />
<!-- Third-party modules must be in the web project -->
<PackageReference Include="Lombiq.HelpfulExtensions.OrchardCore" Version="1.*" />
</ItemGroup>
</Project>
For local module projects:
<ItemGroup>
<ProjectReference Include="../ThirdParty.Module/ThirdParty.Module.csproj" />
</ItemGroup>
using OrchardCore.Modules.Manifest;
[assembly: Module(
Name = "{{ModuleName}}",
Author = "{{Author}}",
Website = "{{Website}}",
Version = "1.0.0",
Description = "{{Description}}",
Category = "{{Category}}"
)]
[assembly: Feature(
Id = "{{ModuleName}}",
Name = "{{FeatureName}}",
Description = "{{FeatureDescription}}",
Dependencies = new[]
{
"OrchardCore.ContentManagement"
},
Category = "{{Category}}"
)]
using Microsoft.Extensions.DependencyInjection;
using OrchardCore.Modules;
namespace {{ModuleName}}
{
public sealed class Startup : StartupBase
{
public override void ConfigureServices(IServiceCollection services)
{
// Register services here
}
}
}
<Project Sdk="Microsoft.NET.Sdk.Razor">
<PropertyGroup>
<TargetFramework>net10.0</TargetFramework>
<AddRazorSupportForMvc>true</AddRazorSupportForMvc>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="OrchardCore.Module.Targets" Version="3.*" />
</ItemGroup>
</Project>
MyModule/
├── Manifest.cs
├── Startup.cs
├── MyModule.csproj
├── Controllers/
├── Drivers/
├── Handlers/
├── Migrations/
├── Models/
├── Services/
├── ViewModels/
├── Views/
└── wwwroot/
npx skills add CrestApps/orchardcore-modules下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer