Angular HttpClient Standards
HoangNguyen0403/agent-skills-standard
Sets rules for Angular HTTP code: functional interceptors, typed requests, services that own every call, and httpResource for reactive data loading in Angular 17+.
Enables or builds CometChat features such as polls, reactions, smart replies and pinned messages in an Angular app, first classifying how much client code each one needs.
$ npx skills add cometchat/cometchat-skills --skill cometchat-angular-v5-features -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install cometchat/cometchat-skills cometchat-angular-v5-features --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/cometchat/cometchat-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/cometchat-angular-v5-features .claude/skills/cometchat-angular-v5-features && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "cometchat-angular-v5-features" agent skill from https://github.com/cometchat/cometchat-skills/tree/main/skills/cometchat-angular-v5-features into .claude/skills/cometchat-angular-v5-features/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cometchat-angular-v5-features", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/cometchat/cometchat-skills/tree/main/skills/cometchat-angular-v5-featuresType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add cometchat/cometchat-skills --skill cometchat-angular-v5-features -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install cometchat/cometchat-skills cometchat-angular-v5-features --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cometchat/cometchat-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/cometchat-angular-v5-features .agents/skills/cometchat-angular-v5-features && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "cometchat-angular-v5-features" agent skill from https://github.com/cometchat/cometchat-skills/tree/main/skills/cometchat-angular-v5-features into .agents/skills/cometchat-angular-v5-features/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cometchat-angular-v5-features", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cometchat/cometchat-skills --skill cometchat-angular-v5-features -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install cometchat/cometchat-skills cometchat-angular-v5-features --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cometchat/cometchat-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/cometchat-angular-v5-features .cursor/skills/cometchat-angular-v5-features && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "cometchat-angular-v5-features" agent skill from https://github.com/cometchat/cometchat-skills/tree/main/skills/cometchat-angular-v5-features into .cursor/skills/cometchat-angular-v5-features/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cometchat-angular-v5-features", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/cometchat/cometchat-skills.git --path skills/cometchat-angular-v5-features--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add cometchat/cometchat-skills --skill cometchat-angular-v5-features -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install cometchat/cometchat-skills cometchat-angular-v5-features --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cometchat/cometchat-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/cometchat-angular-v5-features .gemini/skills/cometchat-angular-v5-features && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "cometchat-angular-v5-features" agent skill from https://github.com/cometchat/cometchat-skills/tree/main/skills/cometchat-angular-v5-features into .gemini/skills/cometchat-angular-v5-features/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cometchat-angular-v5-features", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install cometchat/cometchat-skills cometchat-angular-v5-featuresInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add cometchat/cometchat-skills --skill cometchat-angular-v5-features -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/cometchat/cometchat-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/cometchat-angular-v5-features .github/skills/cometchat-angular-v5-features && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "cometchat-angular-v5-features" agent skill from https://github.com/cometchat/cometchat-skills/tree/main/skills/cometchat-angular-v5-features into .github/skills/cometchat-angular-v5-features/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cometchat-angular-v5-features", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cometchat/cometchat-skills --skill cometchat-angular-v5-features -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install cometchat/cometchat-skills cometchat-angular-v5-features --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cometchat/cometchat-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/cometchat-angular-v5-features .opencode/skills/cometchat-angular-v5-features && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "cometchat-angular-v5-features" agent skill from https://github.com/cometchat/cometchat-skills/tree/main/skills/cometchat-angular-v5-features into .opencode/skills/cometchat-angular-v5-features/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cometchat-angular-v5-features", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
cometchat-angular-v5-featuresEnables or builds CometChat features such as polls, reactions, smart replies and pinned messages in an Angular app, first classifying how much client code each one needs.
Before touching code, the agent classifies the request, because most CometChat features need none. Some are already on, such as reactions, mentions, receipts and typing indicators. Dashboard extensions like polls, stickers, translation and link preview only need enabling in the dashboard. Host-composed features, such as pinned messages or reminders, need the extension enabled and then your own UI built with callExtension to send and fetch. AI features like smart replies need dashboard enablement and an optional component, and threads, search, custom message types, text formatters and calls take real client code.
A features file in the pack root is the ground truth for what exists, so a feature that is not listed there is never invented, and exact enablement steps are fetched from the documentation topic on each entry. The skill assumes companion skills for installation, credentials and component names. It targets the @cometchat/chat-uikit-angular package at version 5 on Angular 17 to 21.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 911b108. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript and html).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
cometchat.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
@cometchat/chat-uikit-angular ^5 (5.1.0–5.2.0 verified); Angular 17-21
From compatibility in the SKILL.md frontmatter.
CometChat Angular Features loads about 2.6k tokens when it runs, and up to ~7.2k if it reads all its reference files. Until then it costs about 259 tokens; SKILL.md has 1,141 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from cometchat/cometchat-skills at commit 911b108, republished under its MIT licence (© cometchat). 1,141 words, ~2,630 tokens.
.claude/skills/cometchat-angular-v5-features/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Ground truth: the feature existence oracle is
features.angular-v5.json(pack root). A feature a user asks for MUST be anidthere — if it is not listed it does not exist; do not invent it. Exact enablement steps and payloads are FETCHED from each entry'sdocs_topic(a PATH — resolve it againstDOCS_BASEincometchat-angular-v5-core/references/docs-map.md). UI component names come from theangular-v5catalog.
cometchat-angular-v5-core — install, credentials, init→login→render. Assumed, never restated.cometchat-angular-v5-components — component names, inputs/outputs, slots.Someone asks to add or enable a capability: "add polls", "enable reactions", "turn on smart replies".
Most features need no client code at all. Writing some is the most common mistake here.
| Class | What you do | Examples |
|---|---|---|
| Already on | Nothing. Confirm and show where it appears. | reactions, mentions, receipts, typing, media attachments, voice notes |
| Dashboard extension — zero code | Enable in the dashboard. Nothing else — the kit either mounts a dedicated bubble component or renders it inline automatically. | polls, stickers, collaborative whiteboard, collaborative document, message translation, link preview, thumbnail generation |
| Dashboard extension — HOST-COMPOSED | Enable in the dashboard, then you build the UI: CometChat.callExtension() to send/fetch, your own component to render. The dashboard toggle alone does nothing visible. | pin message, save message, message shortcuts, voice transcription, rich media preview, GIFs, reminders, URL shortener, disappearing messages, support integrations |
| Dashboard + AI | Enable in the dashboard, then optionally place a component. | smart replies, conversation starter, conversation summary, AI assistant |
| Client code | Real wiring. | threads, search, custom message types, text formatters, rich text, calls |
10 of the 17 extensions are host-composed — nearly two-thirds. needs_stitching: true in features.angular-v5.json is the authoritative signal (not ui_components: three zero-code entries — message translation, link preview, thumbnail generation — legitimately have ui_components: [] because they render inline into an existing bubble/menu rather than through a separately-importable component). Verify against needs_stitching before answering, never from memory or from this table's examples alone.
Ask which app in the dashboard before telling someone to toggle something.
reactions · mentions · delivery/read receipts · typing indicators · media & file attachments · voice notes.
These are core in v5, not extensions. Angular's extensions page does not list reactions or mentions, which confirms it. If one is not visible the cause is a missing @Input() or an unsized container — not a missing feature. Never write a reaction picker or typing indicator by hand.
Dashboard → your app → Extensions → enable. Then check the running app, because there are two kinds:
Auto-rendered — emit nothing. The kit surfaces these itself once enabled: polls, stickers, collaborative document/whiteboard (bubbles in the message list), link preview and thumbnails (inside the bubble), message translation (an entry in the message menu).
Host-composed — the kit renders NO affordance. Enabling them changes nothing visible; you must call the extension and render your own control:
import { CometChat } from '@cometchat/chat-sdk-javascript';
// SEND — exact slug, endpoint and payload are on the extension's own docs page
await CometChat.callExtension('pin-message', 'POST', 'v1/pin', { msgId, receiverType });Send is only a third of the job. You also need to FETCH the pinned/saved list back and RENDER it — full pattern, incl. the type-safe way to turn a fetched entry into displayable text: references/host-composed-extensions.md.
Currently host-composed in Angular (10): pin message · save message · message shortcuts · voice transcription · rich media preview · GIFs · reminders · URL shortener · disappearing messages · support integrations. needs_stitching: true in features.angular-v5.json is the authoritative signal — not ui_components, see the table above.
Do not conclude a feature "does not exist" because the kit has no component and the SDK has no named method for it. Extensions are reached through the generic
CometChat.callExtension()— there is nopinMessage()to grep for. Searchingnode_modulesfor the SEND/FETCH calls will find nothing and that is expected.
docs_topicis a PATH, not a URL. Prefix it withDOCS_BASEfromcometchat-angular-v5-core/references/docs-map.md, then append.md:{DOCS_BASE}+/fundamentals/pin-message+.mdDo not hardcodehttps://www.cometchat.com/docs/....DOCS_BASEmay point at a docs preview while a docs change is in flight, and a hardcoded production URL silently reads the pre-change page — so you would fetch a page that is missing the very detail you were sent to find.
Available (from Angular's extensions page): Bitly · Link Preview · Message Shortcuts · Pin Message · Rich Media Preview · Save Message · Thumbnail Generation · TinyURL · Voice Transcription · Giphy · Message Translation · Polls · Reminders · Stickers · Stipop · Tenor · Collaborative Document · Collaborative Whiteboard · Disappearing Messages · Chatwoot · Intercom.
Two have a bubble you may reference when customizing, but you still do not mount them yourself: CometChatPollBubbleComponent, CometChatStickerBubbleComponent.
Not available for Angular: end-to-end encryption, live streaming, email replies. They exist for other platforms. Say so plainly rather than improvising.
Enable in the dashboard (AI section), then place the component you need:
<cometchat-smart-replies></cometchat-smart-replies>
<cometchat-conversation-starter></cometchat-conversation-starter>
<cometchat-conversation-summary></cometchat-conversation-summary><cometchat-message-list> also emits smartReplyClick and conversationStarterClick when those are enabled, so the built-in surfaces work without extra components. The AI assistant is CometChatAIAssistantChat — no Component suffix.
| Feature | Where |
|---|---|
| Threaded replies | cometchat-angular-v5-placement — thread panel |
| Search | cometchat-angular-v5-placement — search column |
| Custom message types | references/custom-messages.md |
| Text formatters / rich text | references/formatters.md |
| Voice & video calls | cometchat-angular-v5-calls |
| Push notifications | cometchat-angular-v5-push |
CometChat.callExtension(). Equally, do not write code for the auto-rendered ones.node_modules has no method for it — extensions have no named SDK method; they go through the generic callExtension(). Check the extension's docs page before saying it is unsupported.localStorage, an in-memory Map, or a local BehaviorSubject where an extension exists. Saved/pinned messages, reminders and shortcuts are stored server-side and are per-user across devices; a browser-local copy does not sync to the user's phone and dies with the cache. If a request is about remembering something about a message, check features.angular-v5.json before writing storage of your own.The feature appears in a real conversation · you wrote no code for a dashboard-only feature · the dashboard toggle is on for the app the credentials point at.
Tell the developer what changed, naming the files: the feature you just enabled (and whether it needed a dashboard toggle). Flag anything dev-only as dev-only, and say what you did not touch — this is additive.
Then offer these THREE options as a SELECTABLE choice and WAIT for the pick — never auto-continue (RULES.md §19):
features.angular-v5.json that is NEITHER wired NOR already enabled — ASK about dashboard state rather than assuming. Never offer an auto entry (reactions, mentions, receipts, typing, media) — those are core in v5 and already on.cometchat-angular-v5-customization.© cometchat, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (references) in skills/cometchat-angular-v5-features of cometchat/cometchat-skills.
Open the folder on GitHubat commit 911b108
CometChat Angular Features next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| CometChat Angular Features this skillcometchat/cometchat-skills | 129 | — | ~2.6k | Automated safety check: Pass | MIT | |
| Angular HttpClient StandardsHoangNguyen0403/agent-skills-standard | 570 | — | ~652 | Automated safety check: Pass | MIT | |
| Phase 6 UI Integrationww-w-ai/bkit-claude-code | 600 | — | ~4.3k | Automated safety check: Notes | Apache-2.0 | |
| Spartan UI Angular Componentsspartan-ng/spartan | 2.9k | — | ~2.4k | Automated safety check: Pass | MIT | |
| Angular Idioms and Patternsirahardianto/awesome-agv | 157 | — | ~3.8k | Automated safety check: Pass | MIT | |
| Angular ArchitectJeffallan/claude-skills | 12k | — | ~1.5k | Automated safety check: Pass | MIT |
HoangNguyen0403/agent-skills-standard
Sets rules for Angular HTTP code: functional interceptors, typed requests, services that own every call, and httpResource for reactive data loading in Angular 17+.
ww-w-ai/bkit-claude-code
Implement frontend UI and integrate with backend APIs — state management and API clients.
spartan-ng/spartan
Helps add, compose, debug and style spartan/ui components in Angular projects, using its Brain headless primitives and Helm styled layer through the @spartan-ng/cli generators.
irahardianto/awesome-agv
Coding conventions for Angular 19 and later: standalone components, signals, OnPush change detection, lazy routes and where RxJS still belongs.
Jeffallan/claude-skills
Builds Angular 17+ features with standalone components, signals, NgRx state, RxJS patterns and lazy-loaded routing, then checks bundle size and test coverage.
first-fluke/oh-my-agent
Implement or modify web UI in React, Next.js, or Angular. An agent skill from first-fluke/oh-my-agent.
cometchat/cometchat-skills
Adds voice and video calling to an Android app in Kotlin with the headless CometChat Calls SDK v5, covering meeting-style rooms, 1:1 ringing calls, call logs and recording.
cometchat/cometchat-skills
Builds chat on Android with your own UI against the headless CometChat Chat SDK v5, covering install, Jetifier conflicts, credentials and init-before-login ordering.
cometchat/cometchat-skills
Picks and customizes CometChat's Angular UI Kit components by their verified component list, exact input and output event names, and the surfaces that have no kit component at all.
cometchat/cometchat-skills
Decides where CometChat chat UI goes in an Angular app: a dedicated route, a dashboard panel, a support widget or the full multi-pane app, with thread and search panels.
cometchat/cometchat-skills
Add voice & video calling to any iOS app FROM SCRATCH with the headless CometChat Calls SDK v5 (CometChatCallsSDK, via Swift Package Manager) — no UI Kit.
cometchat/cometchat-skills
Add voice & video calling to any web app FROM SCRATCH with the headless CometChat Calls SDK v5 (@cometchat/calls-sdk-javascript@5) — no prebuilt UI Kit.
Categories
Enables or builds CometChat features such as polls, reactions, smart replies and pinned messages in an Angular app, first classifying how much client code each one needs. Before touching code, the agent classifies the request, because most CometChat features need none. Some are already on, such as reactions, mentions, receipts and typing indicators.
CometChat Angular Features fits situations like: enabling a CometChat feature such as polls or reactions in an Angular app; finding out whether a chat feature needs any client code at all; building the UI for a host-composed extension like pinned or saved messages; adding smart replies, translation or stickers to an existing chat screen.
Run `npx skills add cometchat/cometchat-skills --skill cometchat-angular-v5-features -a claude-code`. Or copy the skill folder (skills/cometchat-angular-v5-features in cometchat/cometchat-skills) into .claude/skills/cometchat-angular-v5-features in your project. Claude Code loads it when a task matches its description.
Run `npx skills add cometchat/cometchat-skills --skill cometchat-angular-v5-features -a codex`. Or copy the skill folder (skills/cometchat-angular-v5-features in cometchat/cometchat-skills) into .agents/skills/cometchat-angular-v5-features in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add cometchat/cometchat-skills --skill cometchat-angular-v5-features -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cometchat-angular-v5-features, .gemini/skills/cometchat-angular-v5-features, .github/skills/cometchat-angular-v5-features and .opencode/skills/cometchat-angular-v5-features in your project.
SKILL.md names no scripts, command-line tools or credentials: CometChat Angular Features is instructions for the agent only. Our summary lists: @cometchat/chat-uikit-angular version 5 in an Angular 17 to 21 app; A CometChat dashboard account to enable extensions; The companion cometchat-angular-v5-core skill. Compatibility (from SKILL.md): @cometchat/chat-uikit-angular ^5 (5.1.0–5.2.0 verified); Angular 17-21.
SKILL.md names 1 domain. In commands or code: cometchat.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
CometChat Angular Features is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.6k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.6k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with CometChat Angular Features: Angular HttpClient Standards (HoangNguyen0403/agent-skills-standard, 570 stars), Phase 6 UI Integration (ww-w-ai/bkit-claude-code, 600 stars), Spartan UI Angular Components (spartan-ng/spartan, 2.9k stars) and Angular Idioms and Patterns (irahardianto/awesome-agv, 157 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
cometchat (a GitHub organization) maintains it in cometchat/cometchat-skills, which has 129 GitHub stars. The repository holds 97 skills in this directory. The repository was last updated on October 5, 2026.
Source: cometchat/cometchat-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.