Token导航 LogoToken导航

Agent Skill · 研究检索

angular-architect(Angular 架构师)

angular-architect 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

angular-architect 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为需要联网;许可证为 MIT,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 33,477。

总安装 2,351周安装 101GitHub Stars 76下载 824核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:angular-architect(Angular 架构师)
来源仓库:https://github.com/404kidwiz/claude-supercode-skills
仓库路径:skills/angular-architect
安装命令:
npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill angular-architect
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill angular-architect

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

angular-architect 提供 Angular 16+ 企业级应用架构支持,涵盖 Signals、Standalone Components 等现代特性。适用于大型单仓或多前端项目的状态管理、性能优化及 CI/CD 流水线搭建。

可协助迁移旧版 NgModule 至独立组件,并设计 NgRx Signal Store 复杂状态方案。支持 Zoneless 模式、OnPush 变更检测及 Hydration 优化等前沿性能实践。安装后可用于检索最佳实践案例,但需结合实际业务需求调整架构决策。

来源仓库内路径:skills/angular-architect

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill angu…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

angular-architect 怎么安装?

在终端执行 npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill angular-archit…。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

angular-architect 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

angular-architect 需要什么权限?

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

angular-architect 是免费的吗?

来源标注的许可证是 MIT。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

angular-architect 用的人多吗?

公开数据是累计安装 2,351 次,近一周安装 101 次,下载 824 次,GitHub 76 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

angular-architect 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 3 个目录同时收录,说明这个 Skill 流传比较广。
  • 许可证明确为 MIT,商用和分发边界好判断。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。
  • 需要许可证清楚、并且有第三方扫描结果的团队项目。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
angular-architect

Angular 架构师 · 本页

2,35176需要联网MIT通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Angular Architect

Purpose

Provides enterprise Angular development expertise specializing in Angular 16+ features (Signals, Standalone Components), RxJS reactive programming, and NgRx state management at scale. Designs large-scale Angular applications with performance optimization and modern architectural patterns.

When to Use

  • Architecting a large-scale Angular application (Monorepo, Micro-frontends)
  • Implementing Signals for fine-grained reactivity (Angular 16+)
  • Migrating legacy Modules (NgModule) to Standalone Components
  • Designing complex state management with NgRx or NgRx Signal Store
  • Optimizing performance (Zoneless, OnPush, Hydration)
  • Setting up enterprise CI/CD with Nx or Turborepo


2. Decision Framework

State Management Strategy

What is the complexity level?
│
├─ **Local State (Component)**
│  ├─ Simple? → **Signals (`signal`, `computed`)**
│  └─ Complex streams? → **RxJS (`BehaviorSubject`)**
│
├─ **Global Shared State**
│  ├─ Lightweight? → **NgRx Signal Store** (Modern, functional)
│  ├─ Enterprise/Complex? → **NgRx Store (Redux)** (Strict actions/reducers)
│  └─ Entity Collections? → **NgRx Entity**
│
└─ **Server State**
   └─ Caching/Deduplication? → **TanStack Query (Angular)** or **RxJS + Cache Operator**

Architecture Patterns

PatternUse CaseProsCons
StandaloneDefault for 15+Less boilerplate, tree-shakableLearning curve for legacy devs
Nx MonorepoMulti-app enterpriseShared libs, affected buildsTooling complexity
Micro-FrontendsDifferent teams/stacksIndependent deploymentRuntime complexity, shared deps hell
ZonelessHigh performanceNo Zone.js overheadRequires explicit Change Detection

Red Flags → Escalate to performance-engineer:

  • "ExpressionChangedAfterItHasBeenCheckedError" appearing frequently
  • Bundle size > 5MB initial load
  • Change detection cycles running constantly (Zone.js thrashing)
  • Memory leaks in RxJS subscriptions (forgotten takeUntilDestroyed)


Workflow 2: NgRx Signal Store (Modern State)

Goal: Manage feature state with less boilerplate than Redux.

Steps:

  1. Define Store import {signalStore, withState, withMethods, patchState} from '@ngrx/signals'; export const UserStore = signalStore({providedIn: 'root'}, withState({users: [], loading: false, query: ''}), withMethods((store) => ({setQuery(query: string) {patchState(store, {query});}, async loadUsers() {patchState(store, {loading: true}); const users = await fetchUsers(store.query()); patchState(store, {users, loading: false});}})));
  2. Use in Component export class UserListComponent {readonly store = inject(UserStore); constructor() {// Auto-load when query changes (Effect) effect(() => {this.store.loadUsers();});}}


Workflow 4: Zoneless Applications (Angular 18+)

Goal: Remove Zone.js for smaller bundles and better debugging.

Steps:

  1. Bootstrap Config // main.ts bootstrapApplication(AppComponent, {providers: [provideExperimentalZonelessChangeDetection()]});
  2. State Management (Signals Only)

- Do NOT use ApplicationRef.tick() manually. - Use signal() for all state. - Events automatically trigger change detection.

  1. Integrations

- RxJS: Use AsyncPipe (still works) or toSignal. - Timers: setInterval does NOT trigger CD automatically. Use signal updates inside the timer.



Core Capabilities

Enterprise Angular Architecture

  • Designs large-scale Angular application architectures
  • Implements modular design patterns (Nx monorepos, micro-frontends)
  • Establishes coding standards and best practices for teams
  • Creates scalable folder structures and module organization

Modern Angular Development

  • Implements Signals for fine-grained reactivity (Angular 16+)
  • Migrates legacy NgModule-based code to Standalone Components
  • Optimizes Change Detection with OnPush and Zoneless strategies
  • Leverages new Angular features (deferrable views, hydration)

State Management

  • Designs NgRx Store architectures for enterprise applications
  • Implements NgRx Signal Store for lightweight state management
  • Creates custom state management solutions for complex requirements
  • Integrates server state with TanStack Query or RxJS patterns

Performance Engineering

  • Optimizes bundle size with tree-shaking and lazy loading
  • Implements code splitting and differential loading
  • Creates performance monitoring and metrics collection
  • Develops optimization strategies for large Angular applications


5. Anti-Patterns & Gotchas

❌ Anti-Pattern 1: Nested Subscriptions ("Callback Hell")

What it looks like:

this.route.params.subscribe(params => {
  this.service.getData(params.id).subscribe(data => {
    this.data = data; // Manual assignment
  });
});

Why it fails:

  • Race conditions (if params change fast).
  • Memory leaks (if not unsubscribed).

Correct approach:

  • SwitchMap: this.data$ = this.route.params.pipe(switchMap(params => this.service.getData(params.id)));
  • Use AsyncPipe or toSignal in template.

❌ Anti-Pattern 2: Logic in Templates

What it looks like:

<div *ngIf="user.roles.includes('ADMIN') && user.active && !isLoading">

Why it fails:

  • Hard to test.
  • Runs on every change detection cycle.

Correct approach:

  • Computed Signal / Getter: isAdmin = computed(() => this.user().roles.includes('ADMIN')); <div *ngIf="isAdmin()">

❌ Anti-Pattern 3: Shared Module Bloat

What it looks like:

  • One massive SharedModule importing everything (Material, Utils, Components).

Why it fails:

  • Breaks tree-shaking.
  • Increases initial bundle size.

Correct approach:

  • Standalone Components: Import exactly what you need in the component's imports: [] array.


7. Quality Checklist

Architecture:

  • Standalone: No NgModules for new features.
  • Lazy Loading: All feature routes are lazy loaded (loadComponent).
  • State: Local state uses Signals, Shared state uses Store.

Performance:

  • Change Detection: OnPush enabled everywhere.
  • Bundle: Initial bundle < 200KB.
  • Defer: @defer used for heavy components below the fold.

Code Quality:

  • Strict Mode: strict: true in tsconfig.
  • No Subscriptions: AsyncPipe or toSignal used instead of .subscribe().
  • Security: Inputs verified, no innerHTML without sanitization.

Examples

Example 1: Enterprise E-Commerce Platform Architecture

Scenario: A retail company needs to architect a large-scale e-commerce platform handling 100K+ concurrent users, with separate modules for catalog, cart, checkout, and user management.

Architecture Decisions:

  1. Nx Monorepo Structure: Split into apps (storefront, admin, api) and shared libraries (ui, utilities, data-access)
  2. State Management: NgRx Signal Store for cart/user state, TanStack Query for server state
  3. Performance Strategy: Deferrable views for below-fold content, OnPush everywhere, lazy loading for feature modules
  4. Micro-frontend Ready: Module Federation configured for potential future separation

Key Implementation Details:

  • Cart Service using Signals with computed totals and persisted state
  • Product Catalog with TanStack Query caching and optimistic updates
  • Checkout flow with multi-step wizard and form validation
  • Admin panel with separate build and deployment pipeline

Example 2: Legacy NgModule to Standalone Migration

Scenario: A financial services company has a 5-year-old Angular application using NgModules and wants to modernize to Angular 18 with Standalone Components.

Migration Strategy:

  1. Incremental Approach: Migrate one feature module at a time, never breaking the app
  2. Dependency Analysis: Use ng-dompurify to find all module dependencies
  3. Component Conversion: Convert components to standalone with proper imports
  4. Service Refactoring: Remove module-level providedIn, use root or feature-level injection

Migration Results:

  • Reduced initial bundle size by 40% through tree-shaking
  • Eliminated 200+ lines of boilerplate NgModule code
  • Improved change detection performance by 60%
  • Enabled adoption of new Angular features (defer blocks, zoneless)

Example 3: Real-Time Dashboard with Signals

Scenario: A SaaS company needs a monitoring dashboard showing real-time metrics with 1-second updates, requiring fine-grained reactivity without Zone.js overhead.

Implementation Approach:

  1. Zoneless Bootstrap: Enable experimental zoneless change detection
  2. Signal-Based State: All dashboard state managed through Signals
  3. RxJS Interop: Use toSignal for converting Observables to Signals
  4. WebSocket Integration: Push updates directly to Signals

Performance Results:

  • 30% reduction in bundle size (no Zone.js)
  • 50% improvement in change detection cycles
  • Smooth 60fps updates with complex data visualizations
  • Improved debugging with clearer change detection logs

Best Practices

Architecture Design

  • Design for Scale: Plan folder structures and module boundaries before writing code
  • Embrace Standalone: Default to Standalone Components for all new development
  • Lazy Load Everything: Feature modules, routes, and heavy components
  • Separate Concerns: Smart containers vs. dumb presentational components
  • Define Boundaries: Clear interfaces between layers (data, domain, presentation)

State Management

  • Local State = Signals: Use signal() and computed() for component-level state
  • Global State = Signal Store: NgRx Signal Store for shared feature state
  • Server State = TanStack Query: Never manually manage server state caching
  • Avoid Subscriptions: Use AsyncPipe, toSignal, or takeUntilDestroyed pattern
  • Immutable Updates: Always create new references for state changes

Performance Engineering

  • OnPush Everywhere: Default ChangeDetectionStrategy.OnPush for all components
  • Defer Loading: Use @defer blocks for heavy components and dependencies
  • Optimize Images: Lazy load images, use modern formats (WebP, AVIF)
  • Bundle Analysis: Regular webpack bundle analysis to identify bloat
  • Preload Strategically: Preload critical routes, lazy load everything else

Code Quality

  • Strict Mode: Enable and maintain TypeScript strict mode
  • Strict Null Checks: Never allow undefined/null without explicit handling
  • Document APIs: Clear JSDoc for public methods and interfaces
  • Centralize Configuration: Feature flags, environment configs in one place
  • Automated Linting: ESLint with angular-specific rules and auto-fix

Testing Strategy

  • Unit Tests: Jest or Vitest for component and service testing
  • Integration Tests: Cypress or Playwright for critical user flows
  • Test Coverage: Target 80%+ coverage for business logic
  • Component Testing: Angular Testing Library for behavioral tests
  • E2E Smoke Tests: Automated smoke tests on every deployment

平台分布

Claude Code

28.23%
按下载量换算233

Codex

25.09%
按下载量换算207

OpenCode

19.81%
按下载量换算163

Cursor

12.23%
按下载量换算101

Gemini CLI

7.57%
按下载量换算62

windsurf

3.41%
按下载量换算28

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

继续浏览同类 Skills