Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/agenticpawan/fullstack-pilot/angular-zoneless-migrationnpx skills add AgenticPawan/FullStack-Pilot --skill angular-zoneless-migrationgit clone --depth 1 https://github.com/AgenticPawan/FullStack-PilotWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00093 | $0.00900 |
| Opus 5 | $0.00046 | $0.00450 |
| Sonnet 5 | $0.00019 | $0.00180 |
| Haiku 4.5 | $0.00009 | $0.00090 |
Grade A, and why
angular-zoneless-migration scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 110 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Standard IDs
| ID | Severity | What it checks |
|---|---|---|
| ZNL-001 | P1 | zone.js still imported in polyfills after zoneless provider is added |
| ZNL-002 | P1 | Component uses ChangeDetectorRef.detectChanges() or markForCheck() without signal/OnPush strategy |
| ZNL-003 | P1 | Component injects NgZone and calls run() or runOutsideAngular() — incompatible with zoneless |
| ZNL-004 | P2 | Component uses setInterval/setTimeout directly (should use RxJS timer or signal-based equivalent) |
| ZNL-005 | P2 | async pipe used with an Observable that never completes — acceptable, but flag for review |
Migration steps
Step 1 — Add the zoneless provider
Angular 17.1–17.x (experimental)
// main.ts
import { provideExperimentalZonelessChangeDetection } from '@angular/core';
bootstrapApplication(AppComponent, {
providers: [
provideExperimentalZonelessChangeDetection(),
// ... other providers
]
});
Angular 18+ (stable)
import { provideZonelessChangeDetection } from '@angular/core';
bootstrapApplication(AppComponent, {
providers: [provideZonelessChangeDetection()]
});
Step 2 — Remove zone.js import
In angular.json, remove zone.js from polyfills:
// BEFORE
"polyfills": ["zone.js"]
// AFTER
"polyfills": []
Also remove from package.json dependencies if no other consumer requires it.
Step 3 — Audit NgZone usages (ZNL-003)
Search: grep -r "NgZone\|runOutsideAngular\|run(" src/
For each hit, refactor to use signals or RxJS operators that do not require zone patching:
// BAD — NgZone.run to re-enter Angular
constructor(private ngZone: NgZone) {}
someCallback() { this.ngZone.run(() => this.data.set(value)); }
// GOOD — signal mutation is always zone-aware
data = signal<string>('');
someCallback() { this.data.set(value); }
Step 4 — Audit manual CD calls (ZNL-002)
Prefer signals over markForCheck(). With zoneless + signals, Angular schedules CD
automatically on signal writes.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 110 lines · 93 tokens per session scan A 1940d4c8f4ee
angular-zoneless-migration is a skill published in the GitHub repository AgenticPawan/FullStack-Pilot (2 stars, last pushed 1mo ago), licensed MIT. It adds 93 tokens to every session and 900 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
reference-signal-forms
Explains the mental model and architecture of the code under packages/forms/signals. You MUST use this skill any time you plan to work with code in packages/forms/signals.
roll-dice
Roll dice using a random number generator. Use when asked to roll a die (d6, d20, etc.), roll dice, or generate a random dice roll.
azure-mgmt-botservice-dotnet
Azure Resource Manager SDK for Bot Service in .NET. Management plane operations for creating and managing Azure Bot resources, channels (Teams, DirectLine, Slack), and connection settings. Triggers: "Bot Service", "BotResource", "Azure Bot", "DirectLine channel", "Teams channel", "bot management .NET", "create bot".
refresh-arm-sdk-release
WORKFLOW SKILL — Prepares Azure.ResourceManager SDK refresh pull requests in azure-sdk-for-net. WHEN: "prepare sdk refresh", "refresh Azure.ResourceManager package", "update ARM SDK from autorest tag", "refresh changelog dependencies". INVOKES: git and GitHub pull request tools for branch, commit, push, and PR…
azsdk-common-pipeline-analysis
Analyze Azure SDK CI/CD pipeline failures into a structured diagnosis, and define the required output format. Load this skill before calling azsdkanalyzepipeline, which returns raw failure data that this skill interprets and formats. USE FOR: "pipeline failed", "build failure", "CI check failing", "tests failing in…
run-tests
Run project tests using Maven (mvn). Use when the user asks to run tests.