-
Notifications
You must be signed in to change notification settings - Fork 3.6k
feat(schematics): add ai-config schematic for generating AI tool configurations #23910
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
Introduces a new 'ai-config' schematic that generates configuration files for various AI tools (Claude, Copilot, Cursor, Gemini, Junie, Windsurf) to guide code generation and best practices in Angular and ABP Framework projects. Includes schematic implementation, schema, templates for each tool, and updates to collection.json and build scripts.
Replaces individual AI-specific Angular and ABP Framework rules with a single, comprehensive set of full-stack development guidelines. The new rules emphasize modular architecture, strict typing, best practices for both .NET (ABP) and Angular, and ensure consistency, maintainability, and performance across backend and frontend. This change standardizes expectations and coding conventions for all AI assistants in the project.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @fahrigedik thank you for putting an effort to add such important feature 🙌🏻
We could consider the points I mention below before proceeding the tests:
-
We could introduce the customization points briefly as they are widely used and would make the prompt special to ABP Angular
https://abp.io/docs/latest/framework/ui/angular/customization-user-interface -
It seems working without any parameter set, however it gives such an error


- That would be the best if we could make the users select multiple options by using such commands. It works fine if we provide them one by one, however we can enhance the usage to be accepting an array if possible.

Updated the ai-config schematic to accept a comma-separated string for the 'tool' option instead of an array. Adjusted validation, parsing, and schema prompts accordingly for improved CLI usability and flexibility.
Expanded guidelines in multiple AI config instruction files to include details and examples for using ABP Angular's ReplaceableComponentsService. This addition covers key features, usage, important notes, and links to full documentation for customizing and replacing default components, layouts, and UI elements.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Resolves #23871
AI Configuration Schematic
Overview
The
ai-config
schematic automatically generates AI tool configuration files for ABP Framework Angular projects. These configurations help AI tools (Claude, Copilot, Cursor, etc.) follow Angular and ABP best practices.Quick Start
Supported AI Tools
.claude/CLAUDE.md
.github/copilot-instructions.md
.cursor/rules/cursor.mdc
.gemini/GEMINI.md
.junie/guidelines.md
.windsurf/rules/guidelines.md
Command Options
--tool
(required)AI tools to generate configuration for.
Values:
claude
,copilot
,cursor
,gemini
,junie
,windsurf
--targetProject
(optional)Target project name. Defaults to workspace root.
--overwrite
(optional)Overwrite existing files. Default:
false
--dry-run
(optional)Preview changes without creating files.
Usage Examples
First-Time Setup
Update Existing Configuration
Team Setup (package.json)
Generated Configuration Includes
All configuration files include guidelines for:
Troubleshooting
Configuration Not Recognized
Restart your IDE/editor to load the new configuration.
File Already Exists
Use
--overwrite
flag to replace existing files:Schematic Not Found
Update to the latest version:
FAQ
Q: Should I commit these files to Git?
A: Yes! This ensures team consistency and helps new members.
Q: Can I customize the generated files?
A: Yes, but use
--overwrite
carefully as it will replace customizations.Q: Does this affect build or runtime?
A: No. These are development-only files not included in the bundle.
Q: Can I use multiple AI tools?
A: Yes! Generate configurations for all tools you use.
Q: How often should I update?
A: After major ABP/Angular updates or when team standards change.