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/nicogenti/opencode-orchestrator-kit/angular-patternsnpx skills add NicoGenti/opencode-orchestrator-kit --skill angular-patternsgit clone --depth 1 https://github.com/NicoGenti/opencode-orchestrator-kitWhat 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.00033 | $0.00465 |
| Opus 5 | $0.00016 | $0.00233 |
| Sonnet 5 | $0.00007 | $0.00093 |
| Haiku 4.5 | $0.00003 | $0.00047 |
Grade A, and why
angular-patterns 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.
What it actually says
Angular Patterns
Components
- Default to standalone components; use NgModules only when shared configuration across many components genuinely requires it [web:70][web:59].
- One component (TS + template + style) per file trio, sharing the same base name (
[name].component.ts/.html/.css) [web:59]. - Limit files to ~400 lines; if a component grows past that, split responsibilities [web:59][web:68].
- Limit individual functions/methods to ~75 lines [web:68].
- Use the
OnPushchange detection strategy by default for performance; only fall back to default detection when the component genuinely needs it [web:67]. - Use
@deferblocks for lazy-loading heavy or below-the-fold components [web:67].
Naming
- kebab-case for file names,
feature.type.tspattern (e.g.,user-profile.component.ts) [web:68][web:70]. - PascalCase for classes/interfaces, camelCase for properties and methods [web:70].
- Use dashes to separate words in descriptive names, dots to separate the descriptive name from the type suffix [web:68].
Structure
- All UI code (TS, HTML, styles) lives under
src/; config and scripts live outsidesrc/[web:59]. - One empty line between third-party imports and application imports [web:68].
- Prefer feature-based folder structure over type-based (group by feature, not by "components/services/pipes" folders).
State Management
- Use signals or RxJS consistently within a given module — check the existing pattern in the codebase before introducing a new one.
- Avoid subscribing manually in components when the
asyncpipe or a signal-based approach suffices; manual subscriptions require explicit unsubscription (e.g.,takeUntilDestroyed).
When Reviewing
Flag standalone-vs-NgModule inconsistency, missing OnPush where clearly beneficial, and manual subscriptions without cleanup, ahead of pure naming nits.
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 · 39 lines · 33 tokens per session scan A 3e3a28ee5d9b
angular-patterns is a skill published in the GitHub repository NicoGenti/opencode-orchestrator-kit (5 stars, last pushed 2d ago), licensed MIT. It adds 33 tokens to every session and 465 once invoked, about $0.0002 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
cao-workflow
Author and run CAO Python workflow scripts — multi-step, parameterized, fan-out orchestrations executed by cao workflow run. Use when the user wants a repeatable multi-step job (e.g. data analysis over many files, a review pipeline, a parameterized batch). Authoring ends at a validated script file; running it is a…
aidlc-portfolio
Coordinate multiple AI-DLC workflows across repositories and Git worktrees using an evidence-backed portfolio catalog and deterministic workspace tooling. Use when initializing an AI-DLC portfolio workspace, discovering organization or business context, registering projects and dependencies, creating child intents and…
cao-plugin
Create a new CAO (CLI Agent Orchestrator) plugin. Use this skill whenever the user wants to add a plugin that reacts to CAO lifecycle or messaging events, scaffold a plugin package, understand plugin requirements, or integrate an external system (Discord, Slack, dashboards, logging, metrics) with CAO. Also use when…
agui-author
Author live dashboard UI from an agent via the emitui MCP tool. Emit one of six allow-listed components (approvalcard, choiceprompt, diffsummary, progress, metric, agentcard) with JSON props and it renders in any AG-UI client watching the fleet. Use when you want the operator to see a decision, a diff, or a status…
cao-mcp-apps
Enable, operate, and extend CAO's MCP Apps surface — the host-rendered fleet dashboard visible inside MCP App hosts (Claude Desktop, ChatGPT, VS Code Copilot, Goose, Postman). Use when the user says "enable MCP Apps in CAO", "the ui://cao views aren't rendering", "rebuild MCP Apps bundles", "add a new ui://cao/ view"…
cao-provider
Create a new CLI agent provider for CAO (CLI Agent Orchestrator). Use this skill whenever the user wants to add support for a new CLI-based AI agent (e.g., a new coding assistant CLI), integrate a new provider, or scaffold a provider implementation. Also use when the user asks about the provider architecture, what…