[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MF8ECC4CE54XH3M4VQ9VGS":3,"skill-same:01M6MF8ECC4CE54XH3M4VQ9VGS":74},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":40,"linkOnly":41,"markdownContent":42,"markdownBody":43,"frontMatter":44,"refName":50,"commitSha":51,"skillDirectory":52,"forksCount":53,"repositoryHtmlUrl":54,"repositoryHomepageUrl":55,"ownerHtmlUrl":56,"ownerBlogUrl":57,"ownerDescription":58,"updatedAt":59,"install":60,"resources":73},"01M6MF8ECC4CE54XH3M4VQ9VGS","cometchat-angular-v5-troubleshooting",null,"Diagnose a broken CometChat Angular integration — blank panes, silent no-render, empty lists, events that never fire, UI that does not update, memory leaks, install failures. Symptom to cause to fix. Triggers: 'chat not showing', 'blank screen', 'nothing renders', 'click handler not firing', 'messages not updating', 'ERESOLVE', 'cometchat not working'.","hashgraph-online\u002Fawesome-codex-plugins","hashgraph-online","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F160371962?v=4","01M6CNB6NRJVNNGN14TR01Q6D3","HOL (Hashgraph Online)","01M6JT1HSKKG9V68KQAQGBA7XP",1571,"MIT","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fcometchat\u002Fcometchat-skills\u002Fskills\u002Fcometchat-angular-v5-troubleshooting\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39],"cometchat angular v5 troubleshooting","cometchat","angular","troubleshooting","update","panes","diagnose","events","diagnostics","ui","handler","verified","install","screen","fix","render","messages","memory","never","click","broken","2026-11-10 10:12:30",false,"---\nname: cometchat-angular-v5-troubleshooting\ndescription: \"Diagnose a broken CometChat Angular integration — blank panes, silent no-render, empty lists, events that never fire, UI that does not update, memory leaks, install failures. Symptom to cause to fix. Triggers: 'chat not showing', 'blank screen', 'nothing renders', 'click handler not firing', 'messages not updating', 'ERESOLVE', 'cometchat not working'.\"\nlicense: \"MIT\"\ncompatibility: \"@cometchat\u002Fchat-uikit-angular ^5 (5.1.0–5.2.2 verified); Angular 17-21\"\nmetadata:\n  author: \"CometChat\"\n  version: \"1.0.0\"\n  tags: \"cometchat angular troubleshooting v5 debug blank-screen silent-failure diagnostics\"\n---\n\n> **Ground truth:** `@cometchat\u002Fchat-uikit-angular@5` (5.1.0–5.2.2 verified). Symptoms map to causes verified against the installed kit and the live `{DOCS_BASE}\u002Fui-kit\u002Fangular\u002Ftroubleshooting.md` page (base + paths in `cometchat-angular-v5-core\u002Freferences\u002Fdocs-map.md`). Every `CometChat*` symbol named here exists in the `angular-v5` catalog; a fix that requires a symbol not in the catalog is a bug in this file, not a missing export.\n\n## Companion skills (read first)\n- `cometchat-angular-v5-core` — `references\u002Fanti-patterns.md` and `references\u002Ftroubleshooting.md` carry the same table in more depth.\n\n## Use this skill when\nSomething is wrong and the error message is unhelpful or absent.\n\n## Start here — Angular fails SILENTLY\nFour of the five most common CometChat-Angular faults produce **no error at all**. Do not wait for a stack trace.\n\nRun these four checks in order before anything else:\n\n**1. Is the component in `imports: []`?**\nMissing → Angular treats `\u003Ccometchat-conversations>` as unknown HTML and renders nothing. No error, no warning, blank space. This is the single most common cause.\n\n**2. Does the container have height?**\n```css\nhtml, body { height: 100%; margin: 0; }\n```\nPlus a `100dvh` shell and `min-height: 0` on every flex column. An unsized ancestor collapses the list to 0px — markup correct, nothing visible.\n\n**3. Did `login()` resolve before render?**\nLists render empty with no error when there is no session. Check `CometChatUIKit.getLoggedInUser()` is non-null at the moment the component mounts.\n\n**4. Is the binding name real?**\n`(ccConversationClicked)` never fires — the real output is `(itemClick)`. Angular does not warn about unknown outputs. Verified names are in `cometchat-angular-v5-components`.\n\n## Symptom → cause → fix\n| Symptom | Cause | Fix |\n| --- | --- | --- |\n| Icons missing\u002Fblank across the kit | `assets` not registered in `angular.json` | add the `src\u002Flib\u002Fassets` glob → `output: assets`; the most commonly missed step |\n| Scrolling the list scrolls the WHOLE page | shell\u002Fcolumns missing `overflow: hidden` | `min-height: 0` lets it shrink; `overflow: hidden` keeps the scroll inside the pane — both are required |\n| List doesn't scroll at all — bottom items unreachable | `\u003Ccometchat-conversations>`\u002F`-users`\u002F`-groups`\u002F`-call-logs`\u002F`-search`\u002F`-message-list` has no `flex: 1; min-height: 0` of its OWN | add the `.cc-fill` class to the tag itself, not just its ancestors — the list resolves an internal `height: 100%` and does not size itself |\n| Whole surface runs past the viewport \u002F clipped, on a **routed** page only | `\u003Ccometchat-error-boundary>` is the template root and ships **no** `:host` sizing, so a `height: 100%` shell under it resolves against nothing | add `cometchat-error-boundary { display: flex; flex-direction: column; flex: 1; min-height: 0; overflow: hidden; }` — it is styled by ELEMENT, not by a class. Symptom hides when the shell uses `100dvh` (viewport-relative), appears the moment it becomes `100%` under a routed outlet |\n| `\u003Ccometchat-call-logs>` shows \"OOPS! Looks like something went wrong\" | KIT BUG (5.1.0, still in 5.2.2), not your code: `CallLogsService` builds `new CometChatUIKitCalls.CallLogRequestBuilder()` without awaiting the lazy calls-SDK load, so the accessor is still `null`. Zero network requests are made — it fails before fetching, and Retry does not recover | No host-side fix. Do not hand-roll around it; report it. Note `(error)` will NOT surface it — call-logs has no `error` output (it takes an `onError` INPUT) |\n| Blank space where chat should be | component not in `imports: []` | add the class to that component's `imports` |\n| Blank pane, markup correct | ancestor has no height | `html, body { height: 100% }` + `100dvh` + `min-height: 0` |\n| Lists render but always empty | rendered before `login()` resolved | init → login before bootstrap, or gate the route |\n| Click handler never fires | wrong output name | use the verified name; there is no `cc` prefix |\n| Selected row never highlights | `activeConversation` not bound | bind it to the same state as the message pane |\n| Messages arrive, UI does not update | async SDK callback doesn't repaint (Angular 21 is zoneless by default, so `NgZone.run()` won't help) | write to a signal or call `ChangeDetectorRef.markForCheck()` after the update (core `lifecycle.md`) |\n| Memory grows per route change | no teardown | `takeUntil(destroy$)` + `removeMessageListener(id)` in `ngOnDestroy` |\n| Duplicate messages after navigating | listener registered twice, never removed | register with a stable id; remove on destroy |\n| \"Please wait until the previous login request ends.\" | concurrent `login()` | cache the in-flight promise |\n| `npm install` fails `ERESOLVE` | project on Angular 22 | peer range is `\u003C22.0.0`; use `@angular\u002Fcli@21` |\n| Build error: path not exported by package | `@import` of the kit stylesheet | register the full `node_modules\u002F...` path in `angular.json` |\n| Config empty at runtime | credentials in `.env` | Angular reads `environment.ts`, not `.env` |\n| Import will not compile | bare class name used | use the exported `...Component` form |\n| Header shows one chat, messages another | `[user]`\u002F`[group]` mismatch | pass the same subject to header, list and composer |\n| Reply button does nothing | no thread surface rendered | wire a thread panel or hide the affordance |\n| Feature missing, no error | dashboard extension off | enable it for the app the credentials point at |\n| Call buttons render as empty zero-size elements | `uiKit.callsSDK` missing from `initFromSettings` | add `uiKit: { callsSDK: {} }`; installing the package does not enable calling. Check `CometChatUIKit.isCallingEnabled()` |\n| Lists show \"OOPS!\" on first load and Retry does nothing | first fetch raced login; ConversationsService caches the failure | bootstrap AFTER login resolves; give the user a retry that remounts the component |\n| Calls never ring | listener not at app root, or calls SDK absent | mount `\u003Ccometchat-incoming-call>` at root; install the calls SDK |\n| Calls fail on a LAN IP | `getUserMedia` needs a secure context | use HTTPS or localhost |\n| `window is not defined` | SSR running browser code | guard with `isPlatformBrowser` |\n| Dropdown clipped | ancestor `overflow: hidden` or `transform` | remove it from the chain |\n| Layout jumps when data loads | box sizes to content | pin the height so loading and loaded share one box |\n\n## Where the docs contradict this skill\nOne entry above still disagrees with `{DOCS_BASE}\u002Fui-kit\u002Fangular\u002Foverview.md`, and this skill is right because it is verified against the published package:\n- **Angular 22** — the docs list it as supported; the peer range excludes it and `npm install` hard-fails. Do not follow the docs here, and never `--force` past it.\n\nAlso verify against the installed package:\n- **`@cometchat\u002Fcards-angular`** — required since 5.1.0. (The overview's peer list now lists it — corrected upstream, verified against cometchat\u002Fdocs, 2026-09-09.)\n\nIf a fix in this table seems to contradict a guide, check the installed package before changing course.\n\n## When the table does not cover it\n1. **Confirm the symbol is real.** The exported class name, not the docs title.\n2. **Fetch the component's docs page** (`core\u002Freferences\u002Fdocs-map.md`) and compare every input you pass.\n3. **Check the browser console for a CometChat error code** before assuming it is a UI problem.\n4. **Raise the log level**: `CometChatUIKit.setLogLevel(...)`.\n5. **Reduce to the golden path** from `core`. If that works, the fault is in your composition; if it does not, it is setup.\n\n## Verify it works\nA fix is done when the symptom is gone **and** you can say which of the four silent-failure causes it was. If you cannot name the cause, the fix is a coincidence and it will come back.\n\nRe-check after any fix: chat renders with real data · clicking a conversation opens it · sending a message appears immediately · a second browser receives it live · no console errors · nothing collapsed to zero height.\n\n## What NOT to do\n- Do not `--force` or `--legacy-peer-deps` past an `ERESOLVE` — you install an untested combination and the failure moves somewhere harder to find.\n- Do not add `!important` to fight the kit's styles — a token is not applying because the stylesheet is not registered.\n- Do not rebuild a component by hand because an affordance looks broken. It is nearly always a missing input or an unsized container.\n","> **Ground truth:** `@cometchat\u002Fchat-uikit-angular@5` (5.1.0–5.2.2 verified). Symptoms map to causes verified against the installed kit and the live `{DOCS_BASE}\u002Fui-kit\u002Fangular\u002Ftroubleshooting.md` page (base + paths in `cometchat-angular-v5-core\u002Freferences\u002Fdocs-map.md`). Every `CometChat*` symbol named here exists in the `angular-v5` catalog; a fix that requires a symbol not in the catalog is a bug in this file, not a missing export.\n\n## Companion skills (read first)\n- `cometchat-angular-v5-core` — `references\u002Fanti-patterns.md` and `references\u002Ftroubleshooting.md` carry the same table in more depth.\n\n## Use this skill when\nSomething is wrong and the error message is unhelpful or absent.\n\n## Start here — Angular fails SILENTLY\nFour of the five most common CometChat-Angular faults produce **no error at all**. Do not wait for a stack trace.\n\nRun these four checks in order before anything else:\n\n**1. Is the component in `imports: []`?**\nMissing → Angular treats `\u003Ccometchat-conversations>` as unknown HTML and renders nothing. No error, no warning, blank space. This is the single most common cause.\n\n**2. Does the container have height?**\n```css\nhtml, body { height: 100%; margin: 0; }\n```\nPlus a `100dvh` shell and `min-height: 0` on every flex column. An unsized ancestor collapses the list to 0px — markup correct, nothing visible.\n\n**3. Did `login()` resolve before render?**\nLists render empty with no error when there is no session. Check `CometChatUIKit.getLoggedInUser()` is non-null at the moment the component mounts.\n\n**4. Is the binding name real?**\n`(ccConversationClicked)` never fires — the real output is `(itemClick)`. Angular does not warn about unknown outputs. Verified names are in `cometchat-angular-v5-components`.\n\n## Symptom → cause → fix\n| Symptom | Cause | Fix |\n| --- | --- | --- |\n| Icons missing\u002Fblank across the kit | `assets` not registered in `angular.json` | add the `src\u002Flib\u002Fassets` glob → `output: assets`; the most commonly missed step |\n| Scrolling the list scrolls the WHOLE page | shell\u002Fcolumns missing `overflow: hidden` | `min-height: 0` lets it shrink; `overflow: hidden` keeps the scroll inside the pane — both are required |\n| List doesn't scroll at all — bottom items unreachable | `\u003Ccometchat-conversations>`\u002F`-users`\u002F`-groups`\u002F`-call-logs`\u002F`-search`\u002F`-message-list` has no `flex: 1; min-height: 0` of its OWN | add the `.cc-fill` class to the tag itself, not just its ancestors — the list resolves an internal `height: 100%` and does not size itself |\n| Whole surface runs past the viewport \u002F clipped, on a **routed** page only | `\u003Ccometchat-error-boundary>` is the template root and ships **no** `:host` sizing, so a `height: 100%` shell under it resolves against nothing | add `cometchat-error-boundary { display: flex; flex-direction: column; flex: 1; min-height: 0; overflow: hidden; }` — it is styled by ELEMENT, not by a class. Symptom hides when the shell uses `100dvh` (viewport-relative), appears the moment it becomes `100%` under a routed outlet |\n| `\u003Ccometchat-call-logs>` shows \"OOPS! Looks like something went wrong\" | KIT BUG (5.1.0, still in 5.2.2), not your code: `CallLogsService` builds `new CometChatUIKitCalls.CallLogRequestBuilder()` without awaiting the lazy calls-SDK load, so the accessor is still `null`. Zero network requests are made — it fails before fetching, and Retry does not recover | No host-side fix. Do not hand-roll around it; report it. Note `(error)` will NOT surface it — call-logs has no `error` output (it takes an `onError` INPUT) |\n| Blank space where chat should be | component not in `imports: []` | add the class to that component's `imports` |\n| Blank pane, markup correct | ancestor has no height | `html, body { height: 100% }` + `100dvh` + `min-height: 0` |\n| Lists render but always empty | rendered before `login()` resolved | init → login before bootstrap, or gate the route |\n| Click handler never fires | wrong output name | use the verified name; there is no `cc` prefix |\n| Selected row never highlights | `activeConversation` not bound | bind it to the same state as the message pane |\n| Messages arrive, UI does not update | async SDK callback doesn't repaint (Angular 21 is zoneless by default, so `NgZone.run()` won't help) | write to a signal or call `ChangeDetectorRef.markForCheck()` after the update (core `lifecycle.md`) |\n| Memory grows per route change | no teardown | `takeUntil(destroy$)` + `removeMessageListener(id)` in `ngOnDestroy` |\n| Duplicate messages after navigating | listener registered twice, never removed | register with a stable id; remove on destroy |\n| \"Please wait until the previous login request ends.\" | concurrent `login()` | cache the in-flight promise |\n| `npm install` fails `ERESOLVE` | project on Angular 22 | peer range is `\u003C22.0.0`; use `@angular\u002Fcli@21` |\n| Build error: path not exported by package | `@import` of the kit stylesheet | register the full `node_modules\u002F...` path in `angular.json` |\n| Config empty at runtime | credentials in `.env` | Angular reads `environment.ts`, not `.env` |\n| Import will not compile | bare class name used | use the exported `...Component` form |\n| Header shows one chat, messages another | `[user]`\u002F`[group]` mismatch | pass the same subject to header, list and composer |\n| Reply button does nothing | no thread surface rendered | wire a thread panel or hide the affordance |\n| Feature missing, no error | dashboard extension off | enable it for the app the credentials point at |\n| Call buttons render as empty zero-size elements | `uiKit.callsSDK` missing from `initFromSettings` | add `uiKit: { callsSDK: {} }`; installing the package does not enable calling. Check `CometChatUIKit.isCallingEnabled()` |\n| Lists show \"OOPS!\" on first load and Retry does nothing | first fetch raced login; ConversationsService caches the failure | bootstrap AFTER login resolves; give the user a retry that remounts the component |\n| Calls never ring | listener not at app root, or calls SDK absent | mount `\u003Ccometchat-incoming-call>` at root; install the calls SDK |\n| Calls fail on a LAN IP | `getUserMedia` needs a secure context | use HTTPS or localhost |\n| `window is not defined` | SSR running browser code | guard with `isPlatformBrowser` |\n| Dropdown clipped | ancestor `overflow: hidden` or `transform` | remove it from the chain |\n| Layout jumps when data loads | box sizes to content | pin the height so loading and loaded share one box |\n\n## Where the docs contradict this skill\nOne entry above still disagrees with `{DOCS_BASE}\u002Fui-kit\u002Fangular\u002Foverview.md`, and this skill is right because it is verified against the published package:\n- **Angular 22** — the docs list it as supported; the peer range excludes it and `npm install` hard-fails. Do not follow the docs here, and never `--force` past it.\n\nAlso verify against the installed package:\n- **`@cometchat\u002Fcards-angular`** — required since 5.1.0. (The overview's peer list now lists it — corrected upstream, verified against cometchat\u002Fdocs, 2026-09-09.)\n\nIf a fix in this table seems to contradict a guide, check the installed package before changing course.\n\n## When the table does not cover it\n1. **Confirm the symbol is real.** The exported class name, not the docs title.\n2. **Fetch the component's docs page** (`core\u002Freferences\u002Fdocs-map.md`) and compare every input you pass.\n3. **Check the browser console for a CometChat error code** before assuming it is a UI problem.\n4. **Raise the log level**: `CometChatUIKit.setLogLevel(...)`.\n5. **Reduce to the golden path** from `core`. If that works, the fault is in your composition; if it does not, it is setup.\n\n## Verify it works\nA fix is done when the symptom is gone **and** you can say which of the four silent-failure causes it was. If you cannot name the cause, the fix is a coincidence and it will come back.\n\nRe-check after any fix: chat renders with real data · clicking a conversation opens it · sending a message appears immediately · a second browser receives it live · no console errors · nothing collapsed to zero height.\n\n## What NOT to do\n- Do not `--force` or `--legacy-peer-deps` past an `ERESOLVE` — you install an untested combination and the failure moves somewhere harder to find.\n- Do not add `!important` to fight the kit's styles — a token is not applying because the stylesheet is not registered.\n- Do not rebuild a component by hand because an affordance looks broken. It is nearly always a missing input or an unsized container.\n",{"name":5,"license":15,"metadata":45,"description":7,"compatibility":49},{"tags":46,"author":47,"version":48},"cometchat angular troubleshooting v5 debug blank-screen silent-failure diagnostics","CometChat","1.0.0","@cometchat\u002Fchat-uikit-angular ^5 (5.1.0–5.2.2 verified); Angular 17-21","main","cebc3dce495d7eb80d3b1d5841f877a4a92e162d","plugins\u002Fcometchat\u002Fcometchat-skills\u002Fskills\u002Fcometchat-angular-v5-troubleshooting",490,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins","https:\u002F\u002Fhol.org\u002Fplugins\u002Fbest-codex-plugins","https:\u002F\u002Fgithub.com\u002Fhashgraph-online","https:\u002F\u002Fhol.org","Open-source standards and developer tools for interoperable AI agents: discovery, identity, communication, payments, privacy and security.","2026-11-14 02:12:02",{"source":8,"skillName":5,"commands":61,"prompt":71,"zipAvailable":72},[62,65,68],{"tool":63,"command":64},"npx","npx skills add hashgraph-online\u002Fawesome-codex-plugins --skill cometchat-angular-v5-troubleshooting",{"tool":66,"command":67},"bunx","bunx skills add hashgraph-online\u002Fawesome-codex-plugins --skill cometchat-angular-v5-troubleshooting",{"tool":69,"command":70},"pnpm","pnpm dlx skills add hashgraph-online\u002Fawesome-codex-plugins --skill cometchat-angular-v5-troubleshooting","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fcometchat\u002Fcometchat-skills\u002Fskills\u002Fcometchat-angular-v5-troubleshooting\u002FSKILL.md",true,[],[75,84,91,98,122,147],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":79,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":83},"01M746ZWACVKMZ1BJXJZHYJSSX","migrate-to-e2e","Moves an existing Playwright, Cypress, Selenium, Appium, Detox, Maestro, or TesterArmy suite to e2e one slice at a time, with the old suite running beside the new one until each ported test is proven. Keeps a MIGRATION.md progress file so any later session resumes where the last stopped. Optionally plants a defect to show both suites catch it. Use for \u002Fmigrate-to-e2e, \"migrate our tests to e2e\", \"port these Maestro flows\", \"move our TesterArmy tests\", or when a project has an e2e config and an older suite still running.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fmigrate-to-e2e\u002FSKILL.md",[],[],"2026-11-11 15:11:14",{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":79,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":83},"01M746ZPTAX1Q0FBKAB1CYND7E","e2e","Writes, runs, and debugs end-to-end tests for web and mobile apps with e2e, the agentic test runner, which mixes agent.act goals with exact locator assertions on a Playwright browser or an iOS or Android device. Also drives a project's running app live over the e2e MCP server to look at a screen, check a UI change, take a screenshot or record a video, and try a locator; and runs bug bashes, parallel e2e explore runs with each bug proven by a repro test. Use when a project depends on e2e or has an e2e.config.ts, when asked for end-to-end, browser, mobile, or agentic UI tests, to check a change in the running app, to QA or bug bash an app or branch, or when an e2e run fails.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fe2e\u002FSKILL.md",[],[],{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":79,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":83},"01M746ZJN784HVHMDP9MQGCSGG","create-verification-skill","Generate a project-local verify-\u003Capp> skill on top of e2e, so any coding agent can launch the app, check it is worth driving, exercise a feature the way a user does, keep evidence, and bug bash it. Writes the skill, a feature map with one explore charter per feature, and proves it once. Use for \u002Fcreate-verification-skill, \"make a verification skill for this repo\", or when a project has no scripted way to prove UI behavior.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fcreate-verification-skill\u002FSKILL.md",[],[],{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":79,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":104,"publishedAt":40},"01M716A6ETNB9B1SQ3GXZC75VR","deja-search","deja-vu memory — search the user's past AI coding sessions with the deja CLI. Holds what they already settled and never wrote into the repo (naming rules, banned or already-tried tools, required checks before merge, preferred values, who owns what). Use before your first edit in a task, before you call a change done or ready to merge, before you recommend a tool, library, design or reviewer, before re-debugging an error that may already be solved, when they say 'didn't we fix this before', 'what did we decide about X' or 'I already have that', and before telling them something on this machine does not exist.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fvshulcz\u002Fdeja-vu\u002Fskills\u002Fdeja-search\u002FSKILL.md",[],[105,106,37,107,108,36,109,110,33,111,112,113,114,115,116,117,118,119,120,121],"search","deja search","error","ready","re","decide","design","debugging","when","you","done","reviewer","io","change","cli","merge","past",{"skillNo":123,"name":124,"nameZh":6,"description":125,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":79,"licenseFileUrl":6,"sourceHtmlUrl":126,"categories":127,"keywords":128,"publishedAt":40},"01M716A3J2W5SENSE9VGMXB375","deja-reflect","End-of-session reflection and memory curation with deja-vu. Review what was decided, what commands broke and what repaired them, and record durable project rules or decisions with deja remember so the next session starts with them.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fvshulcz\u002Fdeja-vu\u002Fskills\u002Fdeja-reflect\u002FSKILL.md",[],[129,130,131,117,132,133,134,135,136,137,138,139,140,141,36,142,143,144,145,146],"deja reflect","reflect","review","with","record","github","next","https","node","Rules","decisions","brew","remember","project rules","project","session","end","reflection",{"skillNo":148,"name":149,"nameZh":6,"description":150,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":79,"licenseFileUrl":6,"sourceHtmlUrl":151,"categories":152,"keywords":164,"publishedAt":40},"01M715T3RR4BAYSR57HPPTJ0PF","revid","Make, edit, export and post AI videos with Revid (revid.ai) through the Revid MCP server. Use whenever the user wants a short-form or long-form video made (from an idea, a script, a URL, an article, a PDF, a tweet, a product page, their own clips, or a song), wants to find what is going viral on TikTok, YouTube, Instagram or X before making something, wants to edit or re-export an existing Revid project, generate a standalone AI image or clip, make a series episode, or publish and schedule a finished video to connected social accounts. Covers setup (hosted MCP with OAuth, or an API key), the 36 tools, credits, polling and the rules for publishing. Routes to the more specific revid-* skills when one fits.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftmakersas\u002Frevid-skills\u002Fskills\u002Frevid\u002FSKILL.md",[153,158,161],{"categoryNo":154,"categoryName":155,"taxonomyType":156,"taxonomyTypeDesc":157},"01JBSEEDCAT000000000000016","图像与多媒体","SCENARIO","使用场景",{"categoryNo":159,"categoryName":160,"taxonomyType":156,"taxonomyTypeDesc":157},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":162,"categoryName":163,"taxonomyType":156,"taxonomyTypeDesc":157},"01JBSEEDCAT000000000000010","后端与接口",[149,165,166,167,168,169,170,143,171,109,172,173,174,175,113,176,177,178,179,180],"URL","Video","short-form","standalone","PDF","viral","tiktok","short","social","MCP","song","image","mcp server","schedule","api","publish"]