@modootoday/pmcp 0.13.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (846) hide show
  1. package/.agents/plugins/marketplace.json +1157 -0
  2. package/.claude-plugin/marketplace.json +825 -0
  3. package/.claude-plugin/plugin.json +9 -0
  4. package/.mcp.json +9 -0
  5. package/NOTICE +4 -2
  6. package/README.md +67 -4
  7. package/dist/cli.js +1345 -741
  8. package/dist/{config-CJ43_oBS.d.ts → config-BkSpjUG6.d.ts} +1 -0
  9. package/dist/{embed-BW6AWD1e.d.ts → embed-CVCEz2FH.d.ts} +1 -1
  10. package/dist/http.d.ts +3 -3
  11. package/dist/http.js +216 -112
  12. package/dist/index.d.ts +7 -14
  13. package/dist/index.js +382 -262
  14. package/dist/mailbox/index.d.ts +1 -1
  15. package/dist/mailbox/index.js +18 -2
  16. package/dist/{server-9w4R1caM.d.ts → server-DAcT89iv.d.ts} +5 -5
  17. package/dist/stdio.d.ts +1 -1
  18. package/dist/stdio.js +229 -121
  19. package/dist/tui-worker.js +18 -2
  20. package/docs/catalog.json +5422 -0
  21. package/docs/manual-library-skills.md +74 -0
  22. package/docs/skills.md +46 -0
  23. package/docs/terminal-workspace.md +16 -14
  24. package/gemini-extension.json +11 -0
  25. package/mcp.json +10 -0
  26. package/package.json +26 -5
  27. package/plugin.json +10 -0
  28. package/plugins/agent-base-9/.claude-plugin/plugin.json +9 -0
  29. package/plugins/agent-base-9/LICENSE +93 -0
  30. package/plugins/agent-base-9/NOTICE +51 -0
  31. package/plugins/agent-base-9/gemini-extension.json +1 -0
  32. package/plugins/agent-base-9/plugin.json +10 -0
  33. package/plugins/agent-base-9/skills/agent-base/SKILL.md +118 -0
  34. package/plugins/ajv-formats-3/.claude-plugin/plugin.json +9 -0
  35. package/plugins/ajv-formats-3/LICENSE +93 -0
  36. package/plugins/ajv-formats-3/NOTICE +51 -0
  37. package/plugins/ajv-formats-3/gemini-extension.json +1 -0
  38. package/plugins/ajv-formats-3/plugin.json +10 -0
  39. package/plugins/ajv-formats-3/skills/ajv-formats/SKILL.md +178 -0
  40. package/plugins/allure-js-commons-3/.claude-plugin/plugin.json +9 -0
  41. package/plugins/allure-js-commons-3/LICENSE +93 -0
  42. package/plugins/allure-js-commons-3/NOTICE +51 -0
  43. package/plugins/allure-js-commons-3/gemini-extension.json +1 -0
  44. package/plugins/allure-js-commons-3/plugin.json +10 -0
  45. package/plugins/allure-js-commons-3/skills/allure-js-commons/SKILL.md +173 -0
  46. package/plugins/ansi-escapes-7/.claude-plugin/plugin.json +9 -0
  47. package/plugins/ansi-escapes-7/LICENSE +93 -0
  48. package/plugins/ansi-escapes-7/NOTICE +51 -0
  49. package/plugins/ansi-escapes-7/gemini-extension.json +1 -0
  50. package/plugins/ansi-escapes-7/plugin.json +10 -0
  51. package/plugins/ansi-escapes-7/skills/ansi-escapes/SKILL.md +189 -0
  52. package/plugins/ansi-styles-7/.claude-plugin/plugin.json +9 -0
  53. package/plugins/ansi-styles-7/LICENSE +93 -0
  54. package/plugins/ansi-styles-7/NOTICE +51 -0
  55. package/plugins/ansi-styles-7/gemini-extension.json +1 -0
  56. package/plugins/ansi-styles-7/plugin.json +10 -0
  57. package/plugins/ansi-styles-7/skills/ansi-styles/SKILL.md +161 -0
  58. package/plugins/app-builder-lib-26/.claude-plugin/plugin.json +9 -0
  59. package/plugins/app-builder-lib-26/LICENSE +93 -0
  60. package/plugins/app-builder-lib-26/NOTICE +51 -0
  61. package/plugins/app-builder-lib-26/gemini-extension.json +1 -0
  62. package/plugins/app-builder-lib-26/plugin.json +10 -0
  63. package/plugins/app-builder-lib-26/skills/app-builder-lib/SKILL.md +84 -0
  64. package/plugins/autoprefixer-10/.claude-plugin/plugin.json +9 -0
  65. package/plugins/autoprefixer-10/LICENSE +93 -0
  66. package/plugins/autoprefixer-10/NOTICE +51 -0
  67. package/plugins/autoprefixer-10/gemini-extension.json +1 -0
  68. package/plugins/autoprefixer-10/plugin.json +10 -0
  69. package/plugins/autoprefixer-10/skills/autoprefixer/SKILL.md +141 -0
  70. package/plugins/babel-plugin-transform-typescript-8/.claude-plugin/plugin.json +9 -0
  71. package/plugins/babel-plugin-transform-typescript-8/LICENSE +93 -0
  72. package/plugins/babel-plugin-transform-typescript-8/NOTICE +51 -0
  73. package/plugins/babel-plugin-transform-typescript-8/gemini-extension.json +1 -0
  74. package/plugins/babel-plugin-transform-typescript-8/plugin.json +10 -0
  75. package/plugins/babel-plugin-transform-typescript-8/skills/babel-plugin-transform-typescript/SKILL.md +135 -0
  76. package/plugins/bcryptjs-2/.claude-plugin/plugin.json +9 -0
  77. package/plugins/bcryptjs-2/LICENSE +93 -0
  78. package/plugins/bcryptjs-2/NOTICE +51 -0
  79. package/plugins/bcryptjs-2/gemini-extension.json +1 -0
  80. package/plugins/bcryptjs-2/plugin.json +10 -0
  81. package/plugins/bcryptjs-2/skills/bcryptjs/SKILL.md +78 -0
  82. package/plugins/bullmq-5/.claude-plugin/plugin.json +9 -0
  83. package/plugins/bullmq-5/LICENSE +93 -0
  84. package/plugins/bullmq-5/NOTICE +51 -0
  85. package/plugins/bullmq-5/gemini-extension.json +1 -0
  86. package/plugins/bullmq-5/plugin.json +10 -0
  87. package/plugins/bullmq-5/skills/bullmq/SKILL.md +59 -0
  88. package/plugins/bun-types-1/.claude-plugin/plugin.json +9 -0
  89. package/plugins/bun-types-1/LICENSE +93 -0
  90. package/plugins/bun-types-1/NOTICE +51 -0
  91. package/plugins/bun-types-1/gemini-extension.json +1 -0
  92. package/plugins/bun-types-1/plugin.json +10 -0
  93. package/plugins/bun-types-1/skills/bun-types/SKILL.md +119 -0
  94. package/plugins/chai-6/.claude-plugin/plugin.json +9 -0
  95. package/plugins/chai-6/LICENSE +93 -0
  96. package/plugins/chai-6/NOTICE +51 -0
  97. package/plugins/chai-6/gemini-extension.json +1 -0
  98. package/plugins/chai-6/plugin.json +10 -0
  99. package/plugins/chai-6/skills/chai/SKILL.md +160 -0
  100. package/plugins/chalk-6/.claude-plugin/plugin.json +9 -0
  101. package/plugins/chalk-6/LICENSE +93 -0
  102. package/plugins/chalk-6/NOTICE +51 -0
  103. package/plugins/chalk-6/gemini-extension.json +1 -0
  104. package/plugins/chalk-6/plugin.json +10 -0
  105. package/plugins/chalk-6/skills/chalk/SKILL.md +167 -0
  106. package/plugins/cli-cursor-5/.claude-plugin/plugin.json +9 -0
  107. package/plugins/cli-cursor-5/LICENSE +93 -0
  108. package/plugins/cli-cursor-5/NOTICE +51 -0
  109. package/plugins/cli-cursor-5/gemini-extension.json +1 -0
  110. package/plugins/cli-cursor-5/plugin.json +10 -0
  111. package/plugins/cli-cursor-5/skills/cli-cursor/SKILL.md +117 -0
  112. package/plugins/cli-spinners-3/.claude-plugin/plugin.json +9 -0
  113. package/plugins/cli-spinners-3/LICENSE +93 -0
  114. package/plugins/cli-spinners-3/NOTICE +51 -0
  115. package/plugins/cli-spinners-3/gemini-extension.json +1 -0
  116. package/plugins/cli-spinners-3/plugin.json +10 -0
  117. package/plugins/cli-spinners-3/skills/cli-spinners/SKILL.md +101 -0
  118. package/plugins/clickhouse-client-1/.claude-plugin/plugin.json +9 -0
  119. package/plugins/clickhouse-client-1/LICENSE +93 -0
  120. package/plugins/clickhouse-client-1/NOTICE +51 -0
  121. package/plugins/clickhouse-client-1/gemini-extension.json +1 -0
  122. package/plugins/clickhouse-client-1/plugin.json +10 -0
  123. package/plugins/clickhouse-client-1/skills/clickhouse-client/SKILL.md +54 -0
  124. package/plugins/clickhouse-client-web-1/.claude-plugin/plugin.json +9 -0
  125. package/plugins/clickhouse-client-web-1/LICENSE +93 -0
  126. package/plugins/clickhouse-client-web-1/NOTICE +51 -0
  127. package/plugins/clickhouse-client-web-1/gemini-extension.json +1 -0
  128. package/plugins/clickhouse-client-web-1/plugin.json +10 -0
  129. package/plugins/clickhouse-client-web-1/skills/clickhouse-client-web/SKILL.md +52 -0
  130. package/plugins/cliui-9/.claude-plugin/plugin.json +9 -0
  131. package/plugins/cliui-9/LICENSE +93 -0
  132. package/plugins/cliui-9/NOTICE +51 -0
  133. package/plugins/cliui-9/gemini-extension.json +1 -0
  134. package/plugins/cliui-9/plugin.json +10 -0
  135. package/plugins/cliui-9/skills/cliui/SKILL.md +163 -0
  136. package/plugins/cloudflare-workers-types-4/.claude-plugin/plugin.json +9 -0
  137. package/plugins/cloudflare-workers-types-4/LICENSE +93 -0
  138. package/plugins/cloudflare-workers-types-4/NOTICE +51 -0
  139. package/plugins/cloudflare-workers-types-4/gemini-extension.json +1 -0
  140. package/plugins/cloudflare-workers-types-4/plugin.json +10 -0
  141. package/plugins/cloudflare-workers-types-4/skills/cloudflare-workers-types/SKILL.md +63 -0
  142. package/plugins/commander-15/.claude-plugin/plugin.json +9 -0
  143. package/plugins/commander-15/LICENSE +93 -0
  144. package/plugins/commander-15/NOTICE +51 -0
  145. package/plugins/commander-15/gemini-extension.json +1 -0
  146. package/plugins/commander-15/plugin.json +10 -0
  147. package/plugins/commander-15/skills/commander/SKILL.md +204 -0
  148. package/plugins/content-type-3/.claude-plugin/plugin.json +9 -0
  149. package/plugins/content-type-3/LICENSE +93 -0
  150. package/plugins/content-type-3/NOTICE +51 -0
  151. package/plugins/content-type-3/gemini-extension.json +1 -0
  152. package/plugins/content-type-3/plugin.json +10 -0
  153. package/plugins/content-type-3/skills/content-type/SKILL.md +126 -0
  154. package/plugins/croner-10/.claude-plugin/plugin.json +9 -0
  155. package/plugins/croner-10/LICENSE +93 -0
  156. package/plugins/croner-10/NOTICE +51 -0
  157. package/plugins/croner-10/gemini-extension.json +1 -0
  158. package/plugins/croner-10/plugin.json +10 -0
  159. package/plugins/croner-10/skills/croner/SKILL.md +182 -0
  160. package/plugins/css-tree-3/.claude-plugin/plugin.json +9 -0
  161. package/plugins/css-tree-3/LICENSE +93 -0
  162. package/plugins/css-tree-3/NOTICE +51 -0
  163. package/plugins/css-tree-3/gemini-extension.json +1 -0
  164. package/plugins/css-tree-3/plugin.json +10 -0
  165. package/plugins/css-tree-3/skills/css-tree/SKILL.md +165 -0
  166. package/plugins/data-urls-7/.claude-plugin/plugin.json +9 -0
  167. package/plugins/data-urls-7/LICENSE +93 -0
  168. package/plugins/data-urls-7/NOTICE +51 -0
  169. package/plugins/data-urls-7/gemini-extension.json +1 -0
  170. package/plugins/data-urls-7/plugin.json +10 -0
  171. package/plugins/data-urls-7/skills/data-urls/SKILL.md +136 -0
  172. package/plugins/deep-eql-5/.claude-plugin/plugin.json +9 -0
  173. package/plugins/deep-eql-5/LICENSE +93 -0
  174. package/plugins/deep-eql-5/NOTICE +51 -0
  175. package/plugins/deep-eql-5/gemini-extension.json +1 -0
  176. package/plugins/deep-eql-5/plugin.json +10 -0
  177. package/plugins/deep-eql-5/skills/deep-eql/SKILL.md +130 -0
  178. package/plugins/dexie-4/.claude-plugin/plugin.json +9 -0
  179. package/plugins/dexie-4/LICENSE +93 -0
  180. package/plugins/dexie-4/NOTICE +51 -0
  181. package/plugins/dexie-4/gemini-extension.json +1 -0
  182. package/plugins/dexie-4/plugin.json +10 -0
  183. package/plugins/dexie-4/skills/dexie/SKILL.md +192 -0
  184. package/plugins/emittery-2/.claude-plugin/plugin.json +9 -0
  185. package/plugins/emittery-2/LICENSE +93 -0
  186. package/plugins/emittery-2/NOTICE +51 -0
  187. package/plugins/emittery-2/gemini-extension.json +1 -0
  188. package/plugins/emittery-2/plugin.json +10 -0
  189. package/plugins/emittery-2/skills/emittery/SKILL.md +234 -0
  190. package/plugins/eslint-10/.claude-plugin/plugin.json +9 -0
  191. package/plugins/eslint-10/LICENSE +93 -0
  192. package/plugins/eslint-10/NOTICE +51 -0
  193. package/plugins/eslint-10/gemini-extension.json +1 -0
  194. package/plugins/eslint-10/plugin.json +10 -0
  195. package/plugins/eslint-10/skills/eslint/SKILL.md +77 -0
  196. package/plugins/eslint-9/.claude-plugin/plugin.json +9 -0
  197. package/plugins/eslint-9/LICENSE +93 -0
  198. package/plugins/eslint-9/NOTICE +51 -0
  199. package/plugins/eslint-9/gemini-extension.json +1 -0
  200. package/plugins/eslint-9/plugin.json +10 -0
  201. package/plugins/eslint-9/skills/eslint/SKILL.md +93 -0
  202. package/plugins/eslint-plugin-react-hooks-7/.claude-plugin/plugin.json +9 -0
  203. package/plugins/eslint-plugin-react-hooks-7/LICENSE +93 -0
  204. package/plugins/eslint-plugin-react-hooks-7/NOTICE +51 -0
  205. package/plugins/eslint-plugin-react-hooks-7/gemini-extension.json +1 -0
  206. package/plugins/eslint-plugin-react-hooks-7/plugin.json +10 -0
  207. package/plugins/eslint-plugin-react-hooks-7/skills/eslint-plugin-react-hooks/SKILL.md +173 -0
  208. package/plugins/eslint-plugin-testing-library-7/.claude-plugin/plugin.json +9 -0
  209. package/plugins/eslint-plugin-testing-library-7/LICENSE +93 -0
  210. package/plugins/eslint-plugin-testing-library-7/NOTICE +51 -0
  211. package/plugins/eslint-plugin-testing-library-7/gemini-extension.json +1 -0
  212. package/plugins/eslint-plugin-testing-library-7/plugin.json +10 -0
  213. package/plugins/eslint-plugin-testing-library-7/skills/eslint-plugin-testing-library/SKILL.md +193 -0
  214. package/plugins/expect-type-1/.claude-plugin/plugin.json +9 -0
  215. package/plugins/expect-type-1/LICENSE +93 -0
  216. package/plugins/expect-type-1/NOTICE +51 -0
  217. package/plugins/expect-type-1/gemini-extension.json +1 -0
  218. package/plugins/expect-type-1/plugin.json +10 -0
  219. package/plugins/expect-type-1/skills/expect-type/SKILL.md +165 -0
  220. package/plugins/express-5/.claude-plugin/plugin.json +9 -0
  221. package/plugins/express-5/LICENSE +93 -0
  222. package/plugins/express-5/NOTICE +51 -0
  223. package/plugins/express-5/gemini-extension.json +1 -0
  224. package/plugins/express-5/plugin.json +10 -0
  225. package/plugins/express-5/skills/express/SKILL.md +179 -0
  226. package/plugins/fake-indexeddb-6/.claude-plugin/plugin.json +9 -0
  227. package/plugins/fake-indexeddb-6/LICENSE +93 -0
  228. package/plugins/fake-indexeddb-6/NOTICE +51 -0
  229. package/plugins/fake-indexeddb-6/gemini-extension.json +1 -0
  230. package/plugins/fake-indexeddb-6/plugin.json +10 -0
  231. package/plugins/fake-indexeddb-6/skills/fake-indexeddb/SKILL.md +147 -0
  232. package/plugins/fast-check-4/.claude-plugin/plugin.json +9 -0
  233. package/plugins/fast-check-4/LICENSE +93 -0
  234. package/plugins/fast-check-4/NOTICE +51 -0
  235. package/plugins/fast-check-4/gemini-extension.json +1 -0
  236. package/plugins/fast-check-4/plugin.json +10 -0
  237. package/plugins/fast-check-4/skills/fast-check/SKILL.md +168 -0
  238. package/plugins/figures-6/.claude-plugin/plugin.json +9 -0
  239. package/plugins/figures-6/LICENSE +93 -0
  240. package/plugins/figures-6/NOTICE +51 -0
  241. package/plugins/figures-6/gemini-extension.json +1 -0
  242. package/plugins/figures-6/plugin.json +10 -0
  243. package/plugins/figures-6/skills/figures/SKILL.md +99 -0
  244. package/plugins/firebase-12/.claude-plugin/plugin.json +9 -0
  245. package/plugins/firebase-12/LICENSE +93 -0
  246. package/plugins/firebase-12/NOTICE +51 -0
  247. package/plugins/firebase-12/gemini-extension.json +1 -0
  248. package/plugins/firebase-12/plugin.json +10 -0
  249. package/plugins/firebase-12/skills/firebase/SKILL.md +161 -0
  250. package/plugins/firebase-admin-14/.claude-plugin/plugin.json +9 -0
  251. package/plugins/firebase-admin-14/LICENSE +93 -0
  252. package/plugins/firebase-admin-14/NOTICE +51 -0
  253. package/plugins/firebase-admin-14/gemini-extension.json +1 -0
  254. package/plugins/firebase-admin-14/plugin.json +10 -0
  255. package/plugins/firebase-admin-14/skills/firebase-admin/SKILL.md +155 -0
  256. package/plugins/get-uri-8/.claude-plugin/plugin.json +9 -0
  257. package/plugins/get-uri-8/LICENSE +93 -0
  258. package/plugins/get-uri-8/NOTICE +51 -0
  259. package/plugins/get-uri-8/gemini-extension.json +1 -0
  260. package/plugins/get-uri-8/plugin.json +10 -0
  261. package/plugins/get-uri-8/skills/get-uri/SKILL.md +112 -0
  262. package/plugins/google-uuid-1/.claude-plugin/plugin.json +9 -0
  263. package/plugins/google-uuid-1/LICENSE +93 -0
  264. package/plugins/google-uuid-1/NOTICE +51 -0
  265. package/plugins/google-uuid-1/gemini-extension.json +1 -0
  266. package/plugins/google-uuid-1/plugin.json +10 -0
  267. package/plugins/google-uuid-1/skills/google-uuid/SKILL.md +70 -0
  268. package/plugins/graphql-16/.claude-plugin/plugin.json +9 -0
  269. package/plugins/graphql-16/LICENSE +93 -0
  270. package/plugins/graphql-16/NOTICE +51 -0
  271. package/plugins/graphql-16/gemini-extension.json +1 -0
  272. package/plugins/graphql-16/plugin.json +10 -0
  273. package/plugins/graphql-16/skills/graphql/SKILL.md +56 -0
  274. package/plugins/graphql-17/.claude-plugin/plugin.json +9 -0
  275. package/plugins/graphql-17/LICENSE +93 -0
  276. package/plugins/graphql-17/NOTICE +51 -0
  277. package/plugins/graphql-17/gemini-extension.json +1 -0
  278. package/plugins/graphql-17/plugin.json +10 -0
  279. package/plugins/graphql-17/skills/graphql/SKILL.md +159 -0
  280. package/plugins/graphql-yoga-5/.claude-plugin/plugin.json +9 -0
  281. package/plugins/graphql-yoga-5/LICENSE +93 -0
  282. package/plugins/graphql-yoga-5/NOTICE +51 -0
  283. package/plugins/graphql-yoga-5/gemini-extension.json +1 -0
  284. package/plugins/graphql-yoga-5/plugin.json +10 -0
  285. package/plugins/graphql-yoga-5/skills/graphql-yoga/SKILL.md +68 -0
  286. package/plugins/happy-dom-20/.claude-plugin/plugin.json +9 -0
  287. package/plugins/happy-dom-20/LICENSE +93 -0
  288. package/plugins/happy-dom-20/NOTICE +51 -0
  289. package/plugins/happy-dom-20/gemini-extension.json +1 -0
  290. package/plugins/happy-dom-20/plugin.json +10 -0
  291. package/plugins/happy-dom-20/skills/happy-dom/SKILL.md +172 -0
  292. package/plugins/hono-4/.claude-plugin/plugin.json +9 -0
  293. package/plugins/hono-4/LICENSE +93 -0
  294. package/plugins/hono-4/NOTICE +51 -0
  295. package/plugins/hono-4/gemini-extension.json +1 -0
  296. package/plugins/hono-4/plugin.json +10 -0
  297. package/plugins/hono-4/skills/hono/SKILL.md +203 -0
  298. package/plugins/http-proxy-agent-9/.claude-plugin/plugin.json +9 -0
  299. package/plugins/http-proxy-agent-9/LICENSE +93 -0
  300. package/plugins/http-proxy-agent-9/NOTICE +51 -0
  301. package/plugins/http-proxy-agent-9/gemini-extension.json +1 -0
  302. package/plugins/http-proxy-agent-9/plugin.json +10 -0
  303. package/plugins/http-proxy-agent-9/skills/http-proxy-agent/SKILL.md +142 -0
  304. package/plugins/human-signals-8/.claude-plugin/plugin.json +9 -0
  305. package/plugins/human-signals-8/LICENSE +93 -0
  306. package/plugins/human-signals-8/NOTICE +51 -0
  307. package/plugins/human-signals-8/gemini-extension.json +1 -0
  308. package/plugins/human-signals-8/plugin.json +10 -0
  309. package/plugins/human-signals-8/skills/human-signals/SKILL.md +81 -0
  310. package/plugins/inquirer-14/.claude-plugin/plugin.json +9 -0
  311. package/plugins/inquirer-14/LICENSE +93 -0
  312. package/plugins/inquirer-14/NOTICE +51 -0
  313. package/plugins/inquirer-14/gemini-extension.json +1 -0
  314. package/plugins/inquirer-14/plugin.json +10 -0
  315. package/plugins/inquirer-14/skills/inquirer/SKILL.md +152 -0
  316. package/plugins/ioredis-5/.claude-plugin/plugin.json +9 -0
  317. package/plugins/ioredis-5/LICENSE +93 -0
  318. package/plugins/ioredis-5/NOTICE +51 -0
  319. package/plugins/ioredis-5/gemini-extension.json +1 -0
  320. package/plugins/ioredis-5/plugin.json +10 -0
  321. package/plugins/ioredis-5/skills/ioredis/SKILL.md +63 -0
  322. package/plugins/ioredis-6/.claude-plugin/plugin.json +9 -0
  323. package/plugins/ioredis-6/LICENSE +93 -0
  324. package/plugins/ioredis-6/NOTICE +51 -0
  325. package/plugins/ioredis-6/gemini-extension.json +1 -0
  326. package/plugins/ioredis-6/plugin.json +10 -0
  327. package/plugins/ioredis-6/skills/ioredis/SKILL.md +204 -0
  328. package/plugins/ip-address-10/.claude-plugin/plugin.json +9 -0
  329. package/plugins/ip-address-10/LICENSE +93 -0
  330. package/plugins/ip-address-10/NOTICE +51 -0
  331. package/plugins/ip-address-10/gemini-extension.json +1 -0
  332. package/plugins/ip-address-10/plugin.json +10 -0
  333. package/plugins/ip-address-10/skills/ip-address/SKILL.md +184 -0
  334. package/plugins/jackspeak-4/.claude-plugin/plugin.json +9 -0
  335. package/plugins/jackspeak-4/LICENSE +93 -0
  336. package/plugins/jackspeak-4/NOTICE +51 -0
  337. package/plugins/jackspeak-4/gemini-extension.json +1 -0
  338. package/plugins/jackspeak-4/plugin.json +10 -0
  339. package/plugins/jackspeak-4/skills/jackspeak/SKILL.md +162 -0
  340. package/plugins/jake-12/.claude-plugin/plugin.json +9 -0
  341. package/plugins/jake-12/LICENSE +93 -0
  342. package/plugins/jake-12/NOTICE +51 -0
  343. package/plugins/jake-12/gemini-extension.json +1 -0
  344. package/plugins/jake-12/plugin.json +10 -0
  345. package/plugins/jake-12/skills/jake/SKILL.md +182 -0
  346. package/plugins/jasmine-core-7/.claude-plugin/plugin.json +9 -0
  347. package/plugins/jasmine-core-7/LICENSE +93 -0
  348. package/plugins/jasmine-core-7/NOTICE +51 -0
  349. package/plugins/jasmine-core-7/gemini-extension.json +1 -0
  350. package/plugins/jasmine-core-7/plugin.json +10 -0
  351. package/plugins/jasmine-core-7/skills/jasmine-core/SKILL.md +173 -0
  352. package/plugins/jest-cli-30/.claude-plugin/plugin.json +9 -0
  353. package/plugins/jest-cli-30/LICENSE +93 -0
  354. package/plugins/jest-cli-30/NOTICE +51 -0
  355. package/plugins/jest-cli-30/gemini-extension.json +1 -0
  356. package/plugins/jest-cli-30/plugin.json +10 -0
  357. package/plugins/jest-cli-30/skills/jest-cli/SKILL.md +121 -0
  358. package/plugins/jest-extended-7/.claude-plugin/plugin.json +9 -0
  359. package/plugins/jest-extended-7/LICENSE +93 -0
  360. package/plugins/jest-extended-7/NOTICE +51 -0
  361. package/plugins/jest-extended-7/gemini-extension.json +1 -0
  362. package/plugins/jest-extended-7/plugin.json +10 -0
  363. package/plugins/jest-extended-7/skills/jest-extended/SKILL.md +125 -0
  364. package/plugins/jsdom-30/.claude-plugin/plugin.json +9 -0
  365. package/plugins/jsdom-30/LICENSE +93 -0
  366. package/plugins/jsdom-30/NOTICE +51 -0
  367. package/plugins/jsdom-30/gemini-extension.json +1 -0
  368. package/plugins/jsdom-30/plugin.json +10 -0
  369. package/plugins/jsdom-30/skills/jsdom/SKILL.md +64 -0
  370. package/plugins/level-supports-6/.claude-plugin/plugin.json +9 -0
  371. package/plugins/level-supports-6/LICENSE +93 -0
  372. package/plugins/level-supports-6/NOTICE +51 -0
  373. package/plugins/level-supports-6/gemini-extension.json +1 -0
  374. package/plugins/level-supports-6/plugin.json +10 -0
  375. package/plugins/level-supports-6/skills/level-supports/SKILL.md +178 -0
  376. package/plugins/lowdb-7/.claude-plugin/plugin.json +9 -0
  377. package/plugins/lowdb-7/LICENSE +93 -0
  378. package/plugins/lowdb-7/NOTICE +51 -0
  379. package/plugins/lowdb-7/gemini-extension.json +1 -0
  380. package/plugins/lowdb-7/plugin.json +10 -0
  381. package/plugins/lowdb-7/skills/lowdb/SKILL.md +163 -0
  382. package/plugins/make-fetch-happen-16/.claude-plugin/plugin.json +9 -0
  383. package/plugins/make-fetch-happen-16/LICENSE +93 -0
  384. package/plugins/make-fetch-happen-16/NOTICE +51 -0
  385. package/plugins/make-fetch-happen-16/gemini-extension.json +1 -0
  386. package/plugins/make-fetch-happen-16/plugin.json +10 -0
  387. package/plugins/make-fetch-happen-16/skills/make-fetch-happen/SKILL.md +171 -0
  388. package/plugins/mdx-bundler-10/.claude-plugin/plugin.json +9 -0
  389. package/plugins/mdx-bundler-10/LICENSE +93 -0
  390. package/plugins/mdx-bundler-10/NOTICE +51 -0
  391. package/plugins/mdx-bundler-10/gemini-extension.json +1 -0
  392. package/plugins/mdx-bundler-10/plugin.json +10 -0
  393. package/plugins/mdx-bundler-10/skills/mdx-bundler/SKILL.md +133 -0
  394. package/plugins/mocha-12/.claude-plugin/plugin.json +9 -0
  395. package/plugins/mocha-12/LICENSE +93 -0
  396. package/plugins/mocha-12/NOTICE +51 -0
  397. package/plugins/mocha-12/gemini-extension.json +1 -0
  398. package/plugins/mocha-12/plugin.json +10 -0
  399. package/plugins/mocha-12/skills/mocha/SKILL.md +157 -0
  400. package/plugins/modelcontextprotocol-client-2/.claude-plugin/plugin.json +9 -0
  401. package/plugins/modelcontextprotocol-client-2/LICENSE +93 -0
  402. package/plugins/modelcontextprotocol-client-2/NOTICE +51 -0
  403. package/plugins/modelcontextprotocol-client-2/gemini-extension.json +1 -0
  404. package/plugins/modelcontextprotocol-client-2/plugin.json +10 -0
  405. package/plugins/modelcontextprotocol-client-2/skills/modelcontextprotocol-client/SKILL.md +86 -0
  406. package/plugins/modelcontextprotocol-sdk-1/.claude-plugin/plugin.json +9 -0
  407. package/plugins/modelcontextprotocol-sdk-1/LICENSE +93 -0
  408. package/plugins/modelcontextprotocol-sdk-1/NOTICE +51 -0
  409. package/plugins/modelcontextprotocol-sdk-1/gemini-extension.json +1 -0
  410. package/plugins/modelcontextprotocol-sdk-1/plugin.json +10 -0
  411. package/plugins/modelcontextprotocol-sdk-1/skills/modelcontextprotocol-sdk/SKILL.md +80 -0
  412. package/plugins/modelcontextprotocol-server-2/.claude-plugin/plugin.json +9 -0
  413. package/plugins/modelcontextprotocol-server-2/LICENSE +93 -0
  414. package/plugins/modelcontextprotocol-server-2/NOTICE +51 -0
  415. package/plugins/modelcontextprotocol-server-2/gemini-extension.json +1 -0
  416. package/plugins/modelcontextprotocol-server-2/plugin.json +10 -0
  417. package/plugins/modelcontextprotocol-server-2/skills/modelcontextprotocol-server/SKILL.md +80 -0
  418. package/plugins/msw-2/.claude-plugin/plugin.json +9 -0
  419. package/plugins/msw-2/LICENSE +93 -0
  420. package/plugins/msw-2/NOTICE +51 -0
  421. package/plugins/msw-2/gemini-extension.json +1 -0
  422. package/plugins/msw-2/plugin.json +10 -0
  423. package/plugins/msw-2/skills/msw/SKILL.md +182 -0
  424. package/plugins/negotiator-1/.claude-plugin/plugin.json +9 -0
  425. package/plugins/negotiator-1/LICENSE +93 -0
  426. package/plugins/negotiator-1/NOTICE +51 -0
  427. package/plugins/negotiator-1/gemini-extension.json +1 -0
  428. package/plugins/negotiator-1/plugin.json +10 -0
  429. package/plugins/negotiator-1/skills/negotiator/SKILL.md +180 -0
  430. package/plugins/npm-run-path-6/.claude-plugin/plugin.json +9 -0
  431. package/plugins/npm-run-path-6/LICENSE +93 -0
  432. package/plugins/npm-run-path-6/NOTICE +51 -0
  433. package/plugins/npm-run-path-6/gemini-extension.json +1 -0
  434. package/plugins/npm-run-path-6/plugin.json +10 -0
  435. package/plugins/npm-run-path-6/skills/npm-run-path/SKILL.md +137 -0
  436. package/plugins/nyc-18/.claude-plugin/plugin.json +9 -0
  437. package/plugins/nyc-18/LICENSE +93 -0
  438. package/plugins/nyc-18/NOTICE +51 -0
  439. package/plugins/nyc-18/gemini-extension.json +1 -0
  440. package/plugins/nyc-18/plugin.json +10 -0
  441. package/plugins/nyc-18/skills/nyc/SKILL.md +152 -0
  442. package/plugins/ow-3/.claude-plugin/plugin.json +9 -0
  443. package/plugins/ow-3/LICENSE +93 -0
  444. package/plugins/ow-3/NOTICE +51 -0
  445. package/plugins/ow-3/gemini-extension.json +1 -0
  446. package/plugins/ow-3/plugin.json +10 -0
  447. package/plugins/ow-3/skills/ow/SKILL.md +159 -0
  448. package/plugins/pac-proxy-agent-9/.claude-plugin/plugin.json +9 -0
  449. package/plugins/pac-proxy-agent-9/LICENSE +93 -0
  450. package/plugins/pac-proxy-agent-9/NOTICE +51 -0
  451. package/plugins/pac-proxy-agent-9/gemini-extension.json +1 -0
  452. package/plugins/pac-proxy-agent-9/plugin.json +10 -0
  453. package/plugins/pac-proxy-agent-9/skills/pac-proxy-agent/SKILL.md +111 -0
  454. package/plugins/pgsql-ast-parser-12/.claude-plugin/plugin.json +9 -0
  455. package/plugins/pgsql-ast-parser-12/LICENSE +93 -0
  456. package/plugins/pgsql-ast-parser-12/NOTICE +51 -0
  457. package/plugins/pgsql-ast-parser-12/gemini-extension.json +1 -0
  458. package/plugins/pgsql-ast-parser-12/plugin.json +10 -0
  459. package/plugins/pgsql-ast-parser-12/skills/pgsql-ast-parser/SKILL.md +136 -0
  460. package/plugins/playwright-test-1/.claude-plugin/plugin.json +9 -0
  461. package/plugins/playwright-test-1/LICENSE +93 -0
  462. package/plugins/playwright-test-1/NOTICE +51 -0
  463. package/plugins/playwright-test-1/gemini-extension.json +1 -0
  464. package/plugins/playwright-test-1/plugin.json +10 -0
  465. package/plugins/playwright-test-1/skills/playwright-test/SKILL.md +222 -0
  466. package/plugins/pmcp/.claude-plugin/plugin.json +9 -0
  467. package/plugins/pmcp/.mcp.json +9 -0
  468. package/plugins/pmcp/LICENSE +93 -0
  469. package/plugins/pmcp/NOTICE +51 -0
  470. package/plugins/pmcp/gemini-extension.json +11 -0
  471. package/plugins/pmcp/mcp.json +10 -0
  472. package/plugins/pmcp/plugin.json +10 -0
  473. package/plugins/pmcp/skills/package-skill-catalog/SKILL.md +54 -0
  474. package/plugins/pothos-core-4/.claude-plugin/plugin.json +9 -0
  475. package/plugins/pothos-core-4/LICENSE +93 -0
  476. package/plugins/pothos-core-4/NOTICE +51 -0
  477. package/plugins/pothos-core-4/gemini-extension.json +1 -0
  478. package/plugins/pothos-core-4/plugin.json +10 -0
  479. package/plugins/pothos-core-4/skills/pothos-core/SKILL.md +68 -0
  480. package/plugins/prettier-3/.claude-plugin/plugin.json +9 -0
  481. package/plugins/prettier-3/LICENSE +93 -0
  482. package/plugins/prettier-3/NOTICE +51 -0
  483. package/plugins/prettier-3/gemini-extension.json +1 -0
  484. package/plugins/prettier-3/plugin.json +10 -0
  485. package/plugins/prettier-3/skills/prettier/SKILL.md +69 -0
  486. package/plugins/protobufjs-8/.claude-plugin/plugin.json +9 -0
  487. package/plugins/protobufjs-8/LICENSE +93 -0
  488. package/plugins/protobufjs-8/NOTICE +51 -0
  489. package/plugins/protobufjs-8/gemini-extension.json +1 -0
  490. package/plugins/protobufjs-8/plugin.json +10 -0
  491. package/plugins/protobufjs-8/skills/protobufjs/SKILL.md +128 -0
  492. package/plugins/proxy-agent-8/.claude-plugin/plugin.json +9 -0
  493. package/plugins/proxy-agent-8/LICENSE +93 -0
  494. package/plugins/proxy-agent-8/NOTICE +51 -0
  495. package/plugins/proxy-agent-8/gemini-extension.json +1 -0
  496. package/plugins/proxy-agent-8/plugin.json +10 -0
  497. package/plugins/proxy-agent-8/skills/proxy-agent/SKILL.md +120 -0
  498. package/plugins/pydantic-2/.claude-plugin/plugin.json +9 -0
  499. package/plugins/pydantic-2/LICENSE +93 -0
  500. package/plugins/pydantic-2/NOTICE +51 -0
  501. package/plugins/pydantic-2/gemini-extension.json +1 -0
  502. package/plugins/pydantic-2/plugin.json +10 -0
  503. package/plugins/pydantic-2/skills/pydantic/SKILL.md +74 -0
  504. package/plugins/react-19/.claude-plugin/plugin.json +9 -0
  505. package/plugins/react-19/LICENSE +93 -0
  506. package/plugins/react-19/NOTICE +51 -0
  507. package/plugins/react-19/gemini-extension.json +1 -0
  508. package/plugins/react-19/plugin.json +10 -0
  509. package/plugins/react-19/skills/react/SKILL.md +150 -0
  510. package/plugins/react-dom-19/.claude-plugin/plugin.json +9 -0
  511. package/plugins/react-dom-19/LICENSE +93 -0
  512. package/plugins/react-dom-19/NOTICE +51 -0
  513. package/plugins/react-dom-19/gemini-extension.json +1 -0
  514. package/plugins/react-dom-19/plugin.json +10 -0
  515. package/plugins/react-dom-19/skills/react-dom/SKILL.md +178 -0
  516. package/plugins/react-icons-5/.claude-plugin/plugin.json +9 -0
  517. package/plugins/react-icons-5/LICENSE +93 -0
  518. package/plugins/react-icons-5/NOTICE +51 -0
  519. package/plugins/react-icons-5/gemini-extension.json +1 -0
  520. package/plugins/react-icons-5/plugin.json +10 -0
  521. package/plugins/react-icons-5/skills/react-icons/SKILL.md +194 -0
  522. package/plugins/react-is-19/.claude-plugin/plugin.json +9 -0
  523. package/plugins/react-is-19/LICENSE +93 -0
  524. package/plugins/react-is-19/NOTICE +51 -0
  525. package/plugins/react-is-19/gemini-extension.json +1 -0
  526. package/plugins/react-is-19/plugin.json +10 -0
  527. package/plugins/react-is-19/skills/react-is/SKILL.md +131 -0
  528. package/plugins/react-markdown-10/.claude-plugin/plugin.json +9 -0
  529. package/plugins/react-markdown-10/LICENSE +93 -0
  530. package/plugins/react-markdown-10/NOTICE +51 -0
  531. package/plugins/react-markdown-10/gemini-extension.json +1 -0
  532. package/plugins/react-markdown-10/plugin.json +10 -0
  533. package/plugins/react-markdown-10/skills/react-markdown/SKILL.md +163 -0
  534. package/plugins/react-router-8/.claude-plugin/plugin.json +9 -0
  535. package/plugins/react-router-8/LICENSE +93 -0
  536. package/plugins/react-router-8/NOTICE +51 -0
  537. package/plugins/react-router-8/gemini-extension.json +1 -0
  538. package/plugins/react-router-8/plugin.json +10 -0
  539. package/plugins/react-router-8/skills/react-router/SKILL.md +115 -0
  540. package/plugins/release-it-21/.claude-plugin/plugin.json +9 -0
  541. package/plugins/release-it-21/LICENSE +93 -0
  542. package/plugins/release-it-21/NOTICE +51 -0
  543. package/plugins/release-it-21/gemini-extension.json +1 -0
  544. package/plugins/release-it-21/plugin.json +10 -0
  545. package/plugins/release-it-21/skills/release-it/SKILL.md +202 -0
  546. package/plugins/reselect-5/.claude-plugin/plugin.json +9 -0
  547. package/plugins/reselect-5/LICENSE +93 -0
  548. package/plugins/reselect-5/NOTICE +51 -0
  549. package/plugins/reselect-5/gemini-extension.json +1 -0
  550. package/plugins/reselect-5/plugin.json +10 -0
  551. package/plugins/reselect-5/skills/reselect/SKILL.md +215 -0
  552. package/plugins/responselike-4/.claude-plugin/plugin.json +9 -0
  553. package/plugins/responselike-4/LICENSE +93 -0
  554. package/plugins/responselike-4/NOTICE +51 -0
  555. package/plugins/responselike-4/gemini-extension.json +1 -0
  556. package/plugins/responselike-4/plugin.json +10 -0
  557. package/plugins/responselike-4/skills/responselike/SKILL.md +173 -0
  558. package/plugins/rolldown-1/.claude-plugin/plugin.json +9 -0
  559. package/plugins/rolldown-1/LICENSE +93 -0
  560. package/plugins/rolldown-1/NOTICE +51 -0
  561. package/plugins/rolldown-1/gemini-extension.json +1 -0
  562. package/plugins/rolldown-1/plugin.json +10 -0
  563. package/plugins/rolldown-1/skills/rolldown/SKILL.md +182 -0
  564. package/plugins/semver-7/.claude-plugin/plugin.json +9 -0
  565. package/plugins/semver-7/LICENSE +93 -0
  566. package/plugins/semver-7/NOTICE +51 -0
  567. package/plugins/semver-7/gemini-extension.json +1 -0
  568. package/plugins/semver-7/plugin.json +10 -0
  569. package/plugins/semver-7/skills/semver/SKILL.md +55 -0
  570. package/plugins/serde-json-1/.claude-plugin/plugin.json +9 -0
  571. package/plugins/serde-json-1/LICENSE +93 -0
  572. package/plugins/serde-json-1/NOTICE +51 -0
  573. package/plugins/serde-json-1/gemini-extension.json +1 -0
  574. package/plugins/serde-json-1/plugin.json +10 -0
  575. package/plugins/serde-json-1/skills/serde-json/SKILL.md +68 -0
  576. package/plugins/sinon-22/.claude-plugin/plugin.json +9 -0
  577. package/plugins/sinon-22/LICENSE +93 -0
  578. package/plugins/sinon-22/NOTICE +51 -0
  579. package/plugins/sinon-22/gemini-extension.json +1 -0
  580. package/plugins/sinon-22/plugin.json +10 -0
  581. package/plugins/sinon-22/skills/sinon/SKILL.md +215 -0
  582. package/plugins/slice-ansi-9/.claude-plugin/plugin.json +9 -0
  583. package/plugins/slice-ansi-9/LICENSE +93 -0
  584. package/plugins/slice-ansi-9/NOTICE +51 -0
  585. package/plugins/slice-ansi-9/gemini-extension.json +1 -0
  586. package/plugins/slice-ansi-9/plugin.json +10 -0
  587. package/plugins/slice-ansi-9/skills/slice-ansi/SKILL.md +111 -0
  588. package/plugins/smol-toml-1/.claude-plugin/plugin.json +9 -0
  589. package/plugins/smol-toml-1/LICENSE +93 -0
  590. package/plugins/smol-toml-1/NOTICE +51 -0
  591. package/plugins/smol-toml-1/gemini-extension.json +1 -0
  592. package/plugins/smol-toml-1/plugin.json +10 -0
  593. package/plugins/smol-toml-1/skills/smol-toml/SKILL.md +63 -0
  594. package/plugins/socks-proxy-agent-10/.claude-plugin/plugin.json +9 -0
  595. package/plugins/socks-proxy-agent-10/LICENSE +93 -0
  596. package/plugins/socks-proxy-agent-10/NOTICE +51 -0
  597. package/plugins/socks-proxy-agent-10/gemini-extension.json +1 -0
  598. package/plugins/socks-proxy-agent-10/plugin.json +10 -0
  599. package/plugins/socks-proxy-agent-10/skills/socks-proxy-agent/SKILL.md +172 -0
  600. package/plugins/string-width-8/.claude-plugin/plugin.json +9 -0
  601. package/plugins/string-width-8/LICENSE +93 -0
  602. package/plugins/string-width-8/NOTICE +51 -0
  603. package/plugins/string-width-8/gemini-extension.json +1 -0
  604. package/plugins/string-width-8/plugin.json +10 -0
  605. package/plugins/string-width-8/skills/string-width/SKILL.md +101 -0
  606. package/plugins/superstruct-2/.claude-plugin/plugin.json +9 -0
  607. package/plugins/superstruct-2/LICENSE +93 -0
  608. package/plugins/superstruct-2/NOTICE +51 -0
  609. package/plugins/superstruct-2/gemini-extension.json +1 -0
  610. package/plugins/superstruct-2/plugin.json +10 -0
  611. package/plugins/superstruct-2/skills/superstruct/SKILL.md +170 -0
  612. package/plugins/supports-color-11/.claude-plugin/plugin.json +9 -0
  613. package/plugins/supports-color-11/LICENSE +93 -0
  614. package/plugins/supports-color-11/NOTICE +51 -0
  615. package/plugins/supports-color-11/gemini-extension.json +1 -0
  616. package/plugins/supports-color-11/plugin.json +10 -0
  617. package/plugins/supports-color-11/skills/supports-color/SKILL.md +115 -0
  618. package/plugins/tailwindcss-3/.claude-plugin/plugin.json +9 -0
  619. package/plugins/tailwindcss-3/LICENSE +93 -0
  620. package/plugins/tailwindcss-3/NOTICE +51 -0
  621. package/plugins/tailwindcss-3/gemini-extension.json +1 -0
  622. package/plugins/tailwindcss-3/plugin.json +10 -0
  623. package/plugins/tailwindcss-3/skills/tailwindcss/SKILL.md +72 -0
  624. package/plugins/tailwindcss-4/.claude-plugin/plugin.json +9 -0
  625. package/plugins/tailwindcss-4/LICENSE +93 -0
  626. package/plugins/tailwindcss-4/NOTICE +51 -0
  627. package/plugins/tailwindcss-4/gemini-extension.json +1 -0
  628. package/plugins/tailwindcss-4/plugin.json +10 -0
  629. package/plugins/tailwindcss-4/skills/tailwindcss/SKILL.md +82 -0
  630. package/plugins/tanstack-react-router-1/.claude-plugin/plugin.json +9 -0
  631. package/plugins/tanstack-react-router-1/LICENSE +93 -0
  632. package/plugins/tanstack-react-router-1/NOTICE +51 -0
  633. package/plugins/tanstack-react-router-1/gemini-extension.json +1 -0
  634. package/plugins/tanstack-react-router-1/plugin.json +10 -0
  635. package/plugins/tanstack-react-router-1/skills/tanstack-react-router/SKILL.md +96 -0
  636. package/plugins/tedious-20/.claude-plugin/plugin.json +9 -0
  637. package/plugins/tedious-20/LICENSE +93 -0
  638. package/plugins/tedious-20/NOTICE +51 -0
  639. package/plugins/tedious-20/gemini-extension.json +1 -0
  640. package/plugins/tedious-20/plugin.json +10 -0
  641. package/plugins/tedious-20/skills/tedious/SKILL.md +174 -0
  642. package/plugins/testing-library-react-16/.claude-plugin/plugin.json +9 -0
  643. package/plugins/testing-library-react-16/LICENSE +93 -0
  644. package/plugins/testing-library-react-16/NOTICE +51 -0
  645. package/plugins/testing-library-react-16/gemini-extension.json +1 -0
  646. package/plugins/testing-library-react-16/plugin.json +10 -0
  647. package/plugins/testing-library-react-16/skills/testing-library-react/SKILL.md +92 -0
  648. package/plugins/tinyspy-4/.claude-plugin/plugin.json +9 -0
  649. package/plugins/tinyspy-4/LICENSE +93 -0
  650. package/plugins/tinyspy-4/NOTICE +51 -0
  651. package/plugins/tinyspy-4/gemini-extension.json +1 -0
  652. package/plugins/tinyspy-4/plugin.json +10 -0
  653. package/plugins/tinyspy-4/skills/tinyspy/SKILL.md +158 -0
  654. package/plugins/tldts-7/.claude-plugin/plugin.json +9 -0
  655. package/plugins/tldts-7/LICENSE +93 -0
  656. package/plugins/tldts-7/NOTICE +51 -0
  657. package/plugins/tldts-7/gemini-extension.json +1 -0
  658. package/plugins/tldts-7/plugin.json +10 -0
  659. package/plugins/tldts-7/skills/tldts/SKILL.md +120 -0
  660. package/plugins/ts-morph-28/.claude-plugin/plugin.json +9 -0
  661. package/plugins/ts-morph-28/LICENSE +93 -0
  662. package/plugins/ts-morph-28/NOTICE +51 -0
  663. package/plugins/ts-morph-28/gemini-extension.json +1 -0
  664. package/plugins/ts-morph-28/plugin.json +10 -0
  665. package/plugins/ts-morph-28/skills/ts-morph/SKILL.md +219 -0
  666. package/plugins/tsup-8/.claude-plugin/plugin.json +9 -0
  667. package/plugins/tsup-8/LICENSE +93 -0
  668. package/plugins/tsup-8/NOTICE +51 -0
  669. package/plugins/tsup-8/gemini-extension.json +1 -0
  670. package/plugins/tsup-8/plugin.json +10 -0
  671. package/plugins/tsup-8/skills/tsup/SKILL.md +97 -0
  672. package/plugins/tsx-4/.claude-plugin/plugin.json +9 -0
  673. package/plugins/tsx-4/LICENSE +93 -0
  674. package/plugins/tsx-4/NOTICE +51 -0
  675. package/plugins/tsx-4/gemini-extension.json +1 -0
  676. package/plugins/tsx-4/plugin.json +10 -0
  677. package/plugins/tsx-4/skills/tsx/SKILL.md +159 -0
  678. package/plugins/type-fest-5/.claude-plugin/plugin.json +9 -0
  679. package/plugins/type-fest-5/LICENSE +93 -0
  680. package/plugins/type-fest-5/NOTICE +51 -0
  681. package/plugins/type-fest-5/gemini-extension.json +1 -0
  682. package/plugins/type-fest-5/plugin.json +10 -0
  683. package/plugins/type-fest-5/skills/type-fest/SKILL.md +132 -0
  684. package/plugins/typescript-5/.claude-plugin/plugin.json +9 -0
  685. package/plugins/typescript-5/LICENSE +93 -0
  686. package/plugins/typescript-5/NOTICE +51 -0
  687. package/plugins/typescript-5/gemini-extension.json +1 -0
  688. package/plugins/typescript-5/plugin.json +10 -0
  689. package/plugins/typescript-5/skills/typescript/SKILL.md +107 -0
  690. package/plugins/typescript-eslint-8/.claude-plugin/plugin.json +9 -0
  691. package/plugins/typescript-eslint-8/LICENSE +93 -0
  692. package/plugins/typescript-eslint-8/NOTICE +51 -0
  693. package/plugins/typescript-eslint-8/gemini-extension.json +1 -0
  694. package/plugins/typescript-eslint-8/plugin.json +10 -0
  695. package/plugins/typescript-eslint-8/skills/typescript-eslint/SKILL.md +179 -0
  696. package/plugins/typescript-eslint-eslint-plugin-8/.claude-plugin/plugin.json +9 -0
  697. package/plugins/typescript-eslint-eslint-plugin-8/LICENSE +93 -0
  698. package/plugins/typescript-eslint-eslint-plugin-8/NOTICE +51 -0
  699. package/plugins/typescript-eslint-eslint-plugin-8/gemini-extension.json +1 -0
  700. package/plugins/typescript-eslint-eslint-plugin-8/plugin.json +10 -0
  701. package/plugins/typescript-eslint-eslint-plugin-8/skills/typescript-eslint-eslint-plugin/SKILL.md +158 -0
  702. package/plugins/typescript-eslint-estree-8/.claude-plugin/plugin.json +9 -0
  703. package/plugins/typescript-eslint-estree-8/LICENSE +93 -0
  704. package/plugins/typescript-eslint-estree-8/NOTICE +51 -0
  705. package/plugins/typescript-eslint-estree-8/gemini-extension.json +1 -0
  706. package/plugins/typescript-eslint-estree-8/plugin.json +10 -0
  707. package/plugins/typescript-eslint-estree-8/skills/typescript-eslint-estree/SKILL.md +125 -0
  708. package/plugins/typescript-eslint-parser-8/.claude-plugin/plugin.json +9 -0
  709. package/plugins/typescript-eslint-parser-8/LICENSE +93 -0
  710. package/plugins/typescript-eslint-parser-8/NOTICE +51 -0
  711. package/plugins/typescript-eslint-parser-8/gemini-extension.json +1 -0
  712. package/plugins/typescript-eslint-parser-8/plugin.json +10 -0
  713. package/plugins/typescript-eslint-parser-8/skills/typescript-eslint-parser/SKILL.md +141 -0
  714. package/plugins/typescript-eslint-types-8/.claude-plugin/plugin.json +9 -0
  715. package/plugins/typescript-eslint-types-8/LICENSE +93 -0
  716. package/plugins/typescript-eslint-types-8/NOTICE +51 -0
  717. package/plugins/typescript-eslint-types-8/gemini-extension.json +1 -0
  718. package/plugins/typescript-eslint-types-8/plugin.json +10 -0
  719. package/plugins/typescript-eslint-types-8/skills/typescript-eslint-types/SKILL.md +117 -0
  720. package/plugins/typescript-eslint-utils-8/.claude-plugin/plugin.json +9 -0
  721. package/plugins/typescript-eslint-utils-8/LICENSE +93 -0
  722. package/plugins/typescript-eslint-utils-8/NOTICE +51 -0
  723. package/plugins/typescript-eslint-utils-8/gemini-extension.json +1 -0
  724. package/plugins/typescript-eslint-utils-8/plugin.json +10 -0
  725. package/plugins/typescript-eslint-utils-8/skills/typescript-eslint-utils/SKILL.md +195 -0
  726. package/plugins/typescript-eslint-visitor-keys-8/.claude-plugin/plugin.json +9 -0
  727. package/plugins/typescript-eslint-visitor-keys-8/LICENSE +93 -0
  728. package/plugins/typescript-eslint-visitor-keys-8/NOTICE +51 -0
  729. package/plugins/typescript-eslint-visitor-keys-8/gemini-extension.json +1 -0
  730. package/plugins/typescript-eslint-visitor-keys-8/plugin.json +10 -0
  731. package/plugins/typescript-eslint-visitor-keys-8/skills/typescript-eslint-visitor-keys/SKILL.md +116 -0
  732. package/plugins/valibot-1/.claude-plugin/plugin.json +9 -0
  733. package/plugins/valibot-1/LICENSE +93 -0
  734. package/plugins/valibot-1/NOTICE +51 -0
  735. package/plugins/valibot-1/gemini-extension.json +1 -0
  736. package/plugins/valibot-1/plugin.json +10 -0
  737. package/plugins/valibot-1/skills/valibot/SKILL.md +190 -0
  738. package/plugins/vite-7/.claude-plugin/plugin.json +9 -0
  739. package/plugins/vite-7/LICENSE +93 -0
  740. package/plugins/vite-7/NOTICE +51 -0
  741. package/plugins/vite-7/gemini-extension.json +1 -0
  742. package/plugins/vite-7/plugin.json +10 -0
  743. package/plugins/vite-7/skills/vite/SKILL.md +111 -0
  744. package/plugins/vite-8/.claude-plugin/plugin.json +9 -0
  745. package/plugins/vite-8/LICENSE +93 -0
  746. package/plugins/vite-8/NOTICE +51 -0
  747. package/plugins/vite-8/gemini-extension.json +1 -0
  748. package/plugins/vite-8/plugin.json +10 -0
  749. package/plugins/vite-8/skills/vite/SKILL.md +267 -0
  750. package/plugins/vitejs-plugin-react-5/.claude-plugin/plugin.json +9 -0
  751. package/plugins/vitejs-plugin-react-5/LICENSE +93 -0
  752. package/plugins/vitejs-plugin-react-5/NOTICE +51 -0
  753. package/plugins/vitejs-plugin-react-5/gemini-extension.json +1 -0
  754. package/plugins/vitejs-plugin-react-5/plugin.json +10 -0
  755. package/plugins/vitejs-plugin-react-5/skills/vitejs-plugin-react/SKILL.md +67 -0
  756. package/plugins/vitejs-plugin-react-6/.claude-plugin/plugin.json +9 -0
  757. package/plugins/vitejs-plugin-react-6/LICENSE +93 -0
  758. package/plugins/vitejs-plugin-react-6/NOTICE +51 -0
  759. package/plugins/vitejs-plugin-react-6/gemini-extension.json +1 -0
  760. package/plugins/vitejs-plugin-react-6/plugin.json +10 -0
  761. package/plugins/vitejs-plugin-react-6/skills/vitejs-plugin-react/SKILL.md +232 -0
  762. package/plugins/vitest-4/.claude-plugin/plugin.json +9 -0
  763. package/plugins/vitest-4/LICENSE +93 -0
  764. package/plugins/vitest-4/NOTICE +51 -0
  765. package/plugins/vitest-4/gemini-extension.json +1 -0
  766. package/plugins/vitest-4/plugin.json +10 -0
  767. package/plugins/vitest-4/skills/vitest/SKILL.md +127 -0
  768. package/plugins/vitest-5/.claude-plugin/plugin.json +9 -0
  769. package/plugins/vitest-5/LICENSE +93 -0
  770. package/plugins/vitest-5/NOTICE +51 -0
  771. package/plugins/vitest-5/gemini-extension.json +1 -0
  772. package/plugins/vitest-5/plugin.json +10 -0
  773. package/plugins/vitest-5/skills/vitest/SKILL.md +186 -0
  774. package/plugins/whatwg-mimetype-5/.claude-plugin/plugin.json +9 -0
  775. package/plugins/whatwg-mimetype-5/LICENSE +93 -0
  776. package/plugins/whatwg-mimetype-5/NOTICE +51 -0
  777. package/plugins/whatwg-mimetype-5/gemini-extension.json +1 -0
  778. package/plugins/whatwg-mimetype-5/plugin.json +10 -0
  779. package/plugins/whatwg-mimetype-5/skills/whatwg-mimetype/SKILL.md +150 -0
  780. package/plugins/wrangler-4/.claude-plugin/plugin.json +9 -0
  781. package/plugins/wrangler-4/LICENSE +93 -0
  782. package/plugins/wrangler-4/NOTICE +51 -0
  783. package/plugins/wrangler-4/gemini-extension.json +1 -0
  784. package/plugins/wrangler-4/plugin.json +10 -0
  785. package/plugins/wrangler-4/skills/wrangler/SKILL.md +87 -0
  786. package/plugins/wrap-ansi-10/.claude-plugin/plugin.json +9 -0
  787. package/plugins/wrap-ansi-10/LICENSE +93 -0
  788. package/plugins/wrap-ansi-10/NOTICE +51 -0
  789. package/plugins/wrap-ansi-10/gemini-extension.json +1 -0
  790. package/plugins/wrap-ansi-10/plugin.json +10 -0
  791. package/plugins/wrap-ansi-10/skills/wrap-ansi/SKILL.md +119 -0
  792. package/plugins/yaml-2/.claude-plugin/plugin.json +9 -0
  793. package/plugins/yaml-2/LICENSE +93 -0
  794. package/plugins/yaml-2/NOTICE +51 -0
  795. package/plugins/yaml-2/gemini-extension.json +1 -0
  796. package/plugins/yaml-2/plugin.json +10 -0
  797. package/plugins/yaml-2/skills/yaml/SKILL.md +56 -0
  798. package/plugins/yargs-18/.claude-plugin/plugin.json +9 -0
  799. package/plugins/yargs-18/LICENSE +93 -0
  800. package/plugins/yargs-18/NOTICE +51 -0
  801. package/plugins/yargs-18/gemini-extension.json +1 -0
  802. package/plugins/yargs-18/plugin.json +10 -0
  803. package/plugins/yargs-18/skills/yargs/SKILL.md +175 -0
  804. package/plugins/yargs-parser-22/.claude-plugin/plugin.json +9 -0
  805. package/plugins/yargs-parser-22/LICENSE +93 -0
  806. package/plugins/yargs-parser-22/NOTICE +51 -0
  807. package/plugins/yargs-parser-22/gemini-extension.json +1 -0
  808. package/plugins/yargs-parser-22/plugin.json +10 -0
  809. package/plugins/yargs-parser-22/skills/yargs-parser/SKILL.md +179 -0
  810. package/plugins/yeoman-environment-7/.claude-plugin/plugin.json +9 -0
  811. package/plugins/yeoman-environment-7/LICENSE +93 -0
  812. package/plugins/yeoman-environment-7/NOTICE +51 -0
  813. package/plugins/yeoman-environment-7/gemini-extension.json +1 -0
  814. package/plugins/yeoman-environment-7/plugin.json +10 -0
  815. package/plugins/yeoman-environment-7/skills/yeoman-environment/SKILL.md +136 -0
  816. package/plugins/z-schema-12/.claude-plugin/plugin.json +9 -0
  817. package/plugins/z-schema-12/LICENSE +93 -0
  818. package/plugins/z-schema-12/NOTICE +51 -0
  819. package/plugins/z-schema-12/gemini-extension.json +1 -0
  820. package/plugins/z-schema-12/plugin.json +10 -0
  821. package/plugins/z-schema-12/skills/z-schema/SKILL.md +179 -0
  822. package/plugins/zod-schema-validation-3/.claude-plugin/plugin.json +9 -0
  823. package/plugins/zod-schema-validation-3/LICENSE +93 -0
  824. package/plugins/zod-schema-validation-3/NOTICE +51 -0
  825. package/plugins/zod-schema-validation-3/gemini-extension.json +1 -0
  826. package/plugins/zod-schema-validation-3/plugin.json +10 -0
  827. package/plugins/zod-schema-validation-3/skills/zod-schema-validation/SKILL.md +188 -0
  828. package/plugins/zod-schema-validation-4/.claude-plugin/plugin.json +9 -0
  829. package/plugins/zod-schema-validation-4/LICENSE +93 -0
  830. package/plugins/zod-schema-validation-4/NOTICE +51 -0
  831. package/plugins/zod-schema-validation-4/gemini-extension.json +1 -0
  832. package/plugins/zod-schema-validation-4/plugin.json +10 -0
  833. package/plugins/zod-schema-validation-4/skills/zod-schema-validation/SKILL.md +181 -0
  834. package/plugins/zod-validation-error-5/.claude-plugin/plugin.json +9 -0
  835. package/plugins/zod-validation-error-5/LICENSE +93 -0
  836. package/plugins/zod-validation-error-5/NOTICE +51 -0
  837. package/plugins/zod-validation-error-5/gemini-extension.json +1 -0
  838. package/plugins/zod-validation-error-5/plugin.json +10 -0
  839. package/plugins/zod-validation-error-5/skills/zod-validation-error/SKILL.md +212 -0
  840. package/plugins/zustand-5/.claude-plugin/plugin.json +9 -0
  841. package/plugins/zustand-5/LICENSE +93 -0
  842. package/plugins/zustand-5/NOTICE +51 -0
  843. package/plugins/zustand-5/gemini-extension.json +1 -0
  844. package/plugins/zustand-5/plugin.json +10 -0
  845. package/plugins/zustand-5/skills/zustand/SKILL.md +128 -0
  846. package/skills/package-skill-catalog/SKILL.md +37 -222
@@ -0,0 +1,51 @@
1
+ pmcp
2
+
3
+ Copyright (c) 2026 modootoday. All rights reserved.
4
+
5
+ Licensor: modootoday
6
+ Licensed under the Elastic License 2.0; see LICENSE.
7
+
8
+ The licensor is modootoday, the company, not any individual contributor. This
9
+ file names the licensor because the Elastic License 2.0 defines that term rather
10
+ than carrying a copyright line of its own; LICENSE is kept unmodified.
11
+
12
+ What the licence permits, in short, without replacing the terms in LICENSE:
13
+
14
+ - Using this software inside your own company, on any scale.
15
+ - Embedding it in a product you sell, and modifying or forking it.
16
+ - Redistributing it, with these notices intact.
17
+ - Running it locally as an MCP server, which is what it is for. A host
18
+ process spawning it on your own machine is use, not a hosted service.
19
+
20
+ What it does not permit:
21
+
22
+ - Offering this software to third parties as a hosted or managed service.
23
+ A remotely hosted MCP endpoint serving other people is the case this
24
+ forbids.
25
+ - Circumventing licence key functionality.
26
+ - Removing or obscuring these notices.
27
+
28
+ The Elastic License 2.0 is source-available, not an OSI-approved open source
29
+ licence. It grants a patent licence and ends that licence if you assert a patent
30
+ claim against the software; see the Patents section of LICENSE.
31
+
32
+ LICENSE governs. Where this summary and LICENSE differ, LICENSE is what applies.
33
+
34
+ ---
35
+
36
+ This software depends on the following packages, which are distributed under
37
+ their own terms and are not covered by the licence above.
38
+
39
+ @modelcontextprotocol/server MIT Copyright (c) Anthropic, PBC
40
+ @modelcontextprotocol/core MIT Copyright (c) Anthropic, PBC
41
+ zod MIT Copyright (c) Colin McDonnell
42
+ semver ISC See the dependency's LICENSE file.
43
+ smol-toml BSD-3-Clause Copyright (c) Squirrel Chat et al.
44
+ yaml ISC Copyright Eemeli Aro
45
+
46
+ Full licence texts and copyright notices ship with those packages. Their
47
+ respective licence terms govern distribution of those dependencies.
48
+
49
+ @huggingface/transformers is an optional peer dependency. It is never
50
+ distributed with this package; a user who wants semantic ranking installs it
51
+ themselves, under its own Apache-2.0 terms.
@@ -0,0 +1 @@
1
+ { "name": "expect-type-1", "version": "1.0.0" }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
3
+ "name": "expect-type-1",
4
+ "version": "1.0.0",
5
+ "description": "Use expect-type ^1.0.0 for compile-time TypeScript assertions about values, types, functions, properties, and type transformations. It has no meaningful runtime assertion behavior; run TypeScript checking separately from any direct script execution.",
6
+ "author": { "name": "modootoday" },
7
+ "license": "Elastic-2.0",
8
+ "repository": "https://github.com/modootoday/pmcp",
9
+ "homepage": "https://pmcp.build/skills/"
10
+ }
@@ -0,0 +1,165 @@
1
+ ---
2
+ name: expect-type
3
+ description: Use expect-type ^1.0.0 for compile-time TypeScript assertions about values, types, functions, properties, and type transformations. It has no meaningful runtime assertion behavior; run TypeScript checking separately from any direct script execution.
4
+ ---
5
+
6
+ Verified against expect-type@1.4.0 on 2026-09-08. 7 of 7 examples executed.
7
+
8
+ # expect-type v1.0.0
9
+
10
+ ## What this package is
11
+
12
+ `expect-type` is a compile-time TypeScript assertion library. Import its main entry point with:
13
+
14
+ ```ts
15
+ import {expectTypeOf} from 'expect-type'
16
+ ```
17
+
18
+ Assertions are checked by TypeScript and reported by the IDE or `tsc`; they are not runtime tests. The package needs no special CLI, build step, runner, IDE extension, or lint plugin. Install it as a development dependency:
19
+
20
+ ```sh
21
+ npm install expect-type --save-dev
22
+ ```
23
+
24
+ When a plain script invokes the API, the chained methods have no meaningful runtime behavior. The examples below therefore include `node:assert/strict` checks only to verify that the exported function is available and that the calls can be made. The type assertions themselves must be checked with TypeScript.
25
+
26
+ ## Exact equality versus assignability
27
+
28
+ Use `.toEqualTypeOf` when the types must be identical. Use `.toMatchTypeOf` when the actual type may contain additional properties.
29
+
30
+ ```ts pmcp-example
31
+ import {strict as assert} from 'node:assert'
32
+ import {expectTypeOf} from 'expect-type'
33
+
34
+ assert.equal(typeof expectTypeOf, 'function')
35
+
36
+ expectTypeOf({a: 1}).toEqualTypeOf<{a: number}>()
37
+ expectTypeOf({a: 1, b: 1}).toMatchTypeOf<{a: number}>()
38
+
39
+ // This is intentionally a compile-time failure when the directive is checked.
40
+ // @ts-expect-error extra properties are not allowed by exact equality
41
+ expectTypeOf({a: 1, b: 1}).toEqualTypeOf<{a: number}>()
42
+ ```
43
+
44
+ Older examples commonly use `.toMatchTypeOf` for this distinction. In v1, use `.toEqualTypeOf` for exact equality and reserve `.toMatchTypeOf` for the extra-property/assignability case.
45
+
46
+ ## Primitive and structural assertions
47
+
48
+ The documented primitive and structural checks are available directly on an inspected value:
49
+
50
+ ```ts pmcp-example
51
+ import {strict as assert} from 'node:assert'
52
+ import {expectTypeOf} from 'expect-type'
53
+
54
+ assert.equal(typeof expectTypeOf, 'function')
55
+
56
+ expectTypeOf(() => 1).toBeFunction()
57
+ expectTypeOf({}).toBeObject()
58
+ expectTypeOf([]).toBeArray()
59
+ expectTypeOf('').toBeString()
60
+ expectTypeOf(1).toBeNumber()
61
+ expectTypeOf(true).toBeBoolean()
62
+ expectTypeOf(Symbol(1)).toBeSymbol()
63
+ expectTypeOf({a: 1}).toHaveProperty('a').toBeNumber()
64
+ ```
65
+
66
+ You can also provide the type argument without a runtime value:
67
+
68
+ ```ts pmcp-example
69
+ import {strict as assert} from 'node:assert'
70
+ import {expectTypeOf} from 'expect-type'
71
+
72
+ assert.equal(typeof expectTypeOf, 'function')
73
+
74
+ expectTypeOf<{a: number}>().toHaveProperty('a').toBeNumber()
75
+ expectTypeOf<string>().toBeString()
76
+ expectTypeOf<number>().toBeNumber()
77
+ ```
78
+
79
+ ## Function parameters, returns, overloads, and `this`
80
+
81
+ For a function value, inspect an individual parameter with `.parameter(index)`, all parameters with `.parameters`, and the return type with `.returns`:
82
+
83
+ ```ts pmcp-example
84
+ import {strict as assert} from 'node:assert'
85
+ import {expectTypeOf} from 'expect-type'
86
+
87
+ assert.equal(typeof expectTypeOf, 'function')
88
+
89
+ const f = (a: number) => [a, a]
90
+
91
+ expectTypeOf(f).toBeCallableWith(1)
92
+ expectTypeOf(f).parameter(0).toBeNumber()
93
+ expectTypeOf(f).parameters.toEqualTypeOf<[number]>()
94
+ expectTypeOf(f).returns.toEqualTypeOf([1, 2])
95
+ ```
96
+
97
+ Function overloads are represented differently from TypeScript's built-in utility types. For an overloaded function, the documented shape is a union of parameter tuples and a union of return types:
98
+
99
+ ```ts pmcp-example
100
+ import {strict as assert} from 'node:assert'
101
+ import {expectTypeOf} from 'expect-type'
102
+
103
+ type Factorize = {
104
+ (input: number): number[]
105
+ (input: bigint): bigint[]
106
+ }
107
+
108
+ assert.equal(typeof expectTypeOf, 'function')
109
+ expectTypeOf<Factorize>().parameters.toEqualTypeOf<[number] | [bigint]>()
110
+ expectTypeOf<Factorize>().returns.toEqualTypeOf<number[] | bigint[]>()
111
+ expectTypeOf<Factorize>().parameter(0).toEqualTypeOf<number | bigint>()
112
+ ```
113
+
114
+ The API also exposes function `this`-parameter support through `.thisParameter`.
115
+
116
+ ## Type transformations and modifiers
117
+
118
+ The documented chain includes `.not`, `.branded`, `.extract`, `.exclude`, `.pick`, `.omit`, `.resolves`, `.items`, `.guards`, `.asserts`, `.instance`, `.constructorParameters`, `.thisParameter`, and `.toBeConstructibleWith`. These are type-level chains; use them in a type-checked file rather than expecting runtime test results.
119
+
120
+ ```ts pmcp-example
121
+ import {strict as assert} from 'node:assert'
122
+ import {expectTypeOf} from 'expect-type'
123
+
124
+ assert.equal(typeof expectTypeOf, 'function')
125
+
126
+ type Value = {id: string; count: number}
127
+ type Branded = string & {readonly __brand: 'id'}
128
+ type AsyncValue = Promise<number>
129
+ type ItemList = number[]
130
+ type Constructor = new (value: string) => {value: string}
131
+
132
+ expectTypeOf<Value>().not.toBeString()
133
+ expectTypeOf<Branded>().branded.toEqualTypeOf<Branded>()
134
+ expectTypeOf<Value | null>().extract<Value>().toEqualTypeOf<Value>()
135
+ expectTypeOf<Value | null>().exclude<null>().toEqualTypeOf<Value>()
136
+ expectTypeOf<Value>().pick<'id'>().toEqualTypeOf<{id: string}>()
137
+ expectTypeOf<Value>().omit<'count'>().toEqualTypeOf<{id: string}>()
138
+ expectTypeOf<AsyncValue>().resolves.toBeNumber()
139
+ expectTypeOf<ItemList>().items.toBeNumber()
140
+ expectTypeOf<Constructor>().constructorParameters.toEqualTypeOf<[string]>()
141
+ expectTypeOf<Constructor>().toBeConstructibleWith('value')
142
+ ```
143
+
144
+ The package also provides `.guards`, `.asserts`, `.instance`, and `.thisParameter` for the corresponding function, instance, and `this`-type checks. Their assertions are likewise compile-time-only.
145
+
146
+ ## Intersections and deep types
147
+
148
+ A documented limitation is that exact equality can reject a structurally equivalent intersection:
149
+
150
+ ```ts pmcp-example
151
+ import {strict as assert} from 'node:assert'
152
+ import {expectTypeOf} from 'expect-type'
153
+
154
+ assert.equal(typeof expectTypeOf, 'function')
155
+
156
+ // This is documented as a limitation; the directive should be checked by tsc.
157
+ // @ts-expect-error intersections may not be recognized as identical object types
158
+ expectTypeOf<{a: 1} & {b: 2}>().toEqualTypeOf<{a: 1; b: 2}>()
159
+ ```
160
+
161
+ For simple intersections, use a mapped `Simplify` type before asserting equality. `.branded` is the deeper workaround, but it has a compiler performance cost and can make TypeScript give up on excessively deep types.
162
+
163
+ ## Does not cover
164
+
165
+ This skill does not cover runtime validation, runtime behavior of the values being inspected, a test-runner integration, CLI usage, configuration files, or the complete signatures of every re-exported internal type and helper. The research only establishes the public `expectTypeOf` entry point and the documented chains listed above. Type assertions must be checked by TypeScript; running an example directly with Bun does not replace `tsc`.
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "express-5",
3
+ "version": "5.0.0",
4
+ "description": "Use Express 5.x programmatically on Node.js 18+; covers the Express app, routers, body middleware, Express 5 routing, and migration differences.",
5
+ "author": { "name": "modootoday" },
6
+ "license": "Elastic-2.0",
7
+ "repository": "https://github.com/modootoday/pmcp",
8
+ "homepage": "https://pmcp.build/skills/"
9
+ }
@@ -0,0 +1,93 @@
1
+ Elastic License 2.0
2
+
3
+ URL: https://www.elastic.co/licensing/elastic-license
4
+
5
+ ## Acceptance
6
+
7
+ By using the software, you agree to all of the terms and conditions below.
8
+
9
+ ## Copyright License
10
+
11
+ The licensor grants you a non-exclusive, royalty-free, worldwide,
12
+ non-sublicensable, non-transferable license to use, copy, distribute, make
13
+ available, and prepare derivative works of the software, in each case subject to
14
+ the limitations and conditions below.
15
+
16
+ ## Limitations
17
+
18
+ You may not provide the software to third parties as a hosted or managed
19
+ service, where the service provides users with access to any substantial set of
20
+ the features or functionality of the software.
21
+
22
+ You may not move, change, disable, or circumvent the license key functionality
23
+ in the software, and you may not remove or obscure any functionality in the
24
+ software that is protected by the license key.
25
+
26
+ You may not alter, remove, or obscure any licensing, copyright, or other notices
27
+ of the licensor in the software. Any use of the licensor’s trademarks is subject
28
+ to applicable law.
29
+
30
+ ## Patents
31
+
32
+ The licensor grants you a license, under any patent claims the licensor can
33
+ license, or becomes able to license, to make, have made, use, sell, offer for
34
+ sale, import and have imported the software, in each case subject to the
35
+ limitations and conditions in this license. This license does not cover any
36
+ patent claims that you cause to be infringed by modifications or additions to
37
+ the software. If you or your company make any written claim that the software
38
+ infringes or contributes to infringement of any patent, your patent license for
39
+ the software granted under these terms ends immediately. If your company makes
40
+ such a claim, your patent license ends immediately for work on behalf of your
41
+ company.
42
+
43
+ ## Notices
44
+
45
+ You must ensure that anyone who gets a copy of any part of the software from you
46
+ also gets a copy of these terms.
47
+
48
+ If you modify the software, you must include in any modified copies of the
49
+ software prominent notices stating that you have modified the software.
50
+
51
+ ## No Other Rights
52
+
53
+ These terms do not imply any licenses other than those expressly granted in
54
+ these terms.
55
+
56
+ ## Termination
57
+
58
+ If you use the software in violation of these terms, such use is not licensed,
59
+ and your licenses will automatically terminate. If the licensor provides you
60
+ with a notice of your violation, and you cease all violation of this license no
61
+ later than 30 days after you receive that notice, your licenses will be
62
+ reinstated retroactively. However, if you violate these terms after such
63
+ reinstatement, any additional violation of these terms will cause your licenses
64
+ to terminate automatically and permanently.
65
+
66
+ ## No Liability
67
+
68
+ *As far as the law allows, the software comes as is, without any warranty or
69
+ condition, and the licensor will not be liable to you for any damages arising
70
+ out of these terms or the use or nature of the software, under any kind of
71
+ legal claim.*
72
+
73
+ ## Definitions
74
+
75
+ The **licensor** is the entity offering these terms, and the **software** is the
76
+ software the licensor makes available under these terms, including any portion
77
+ of it.
78
+
79
+ **you** refers to the individual or entity agreeing to these terms.
80
+
81
+ **your company** is any legal entity, sole proprietorship, or other kind of
82
+ organization that you work for, plus all organizations that have control over,
83
+ are under the control of, or are under common control with that
84
+ organization. **control** means ownership of substantially all the assets of an
85
+ entity, or the power to direct its management and policies by vote, contract, or
86
+ otherwise. Control can be direct or indirect.
87
+
88
+ **your licenses** are all the licenses granted to you for the software under
89
+ these terms.
90
+
91
+ **use** means anything you do with the software requiring one of your licenses.
92
+
93
+ **trademark** means trademarks, service marks, and similar rights.
@@ -0,0 +1,51 @@
1
+ pmcp
2
+
3
+ Copyright (c) 2026 modootoday. All rights reserved.
4
+
5
+ Licensor: modootoday
6
+ Licensed under the Elastic License 2.0; see LICENSE.
7
+
8
+ The licensor is modootoday, the company, not any individual contributor. This
9
+ file names the licensor because the Elastic License 2.0 defines that term rather
10
+ than carrying a copyright line of its own; LICENSE is kept unmodified.
11
+
12
+ What the licence permits, in short, without replacing the terms in LICENSE:
13
+
14
+ - Using this software inside your own company, on any scale.
15
+ - Embedding it in a product you sell, and modifying or forking it.
16
+ - Redistributing it, with these notices intact.
17
+ - Running it locally as an MCP server, which is what it is for. A host
18
+ process spawning it on your own machine is use, not a hosted service.
19
+
20
+ What it does not permit:
21
+
22
+ - Offering this software to third parties as a hosted or managed service.
23
+ A remotely hosted MCP endpoint serving other people is the case this
24
+ forbids.
25
+ - Circumventing licence key functionality.
26
+ - Removing or obscuring these notices.
27
+
28
+ The Elastic License 2.0 is source-available, not an OSI-approved open source
29
+ licence. It grants a patent licence and ends that licence if you assert a patent
30
+ claim against the software; see the Patents section of LICENSE.
31
+
32
+ LICENSE governs. Where this summary and LICENSE differ, LICENSE is what applies.
33
+
34
+ ---
35
+
36
+ This software depends on the following packages, which are distributed under
37
+ their own terms and are not covered by the licence above.
38
+
39
+ @modelcontextprotocol/server MIT Copyright (c) Anthropic, PBC
40
+ @modelcontextprotocol/core MIT Copyright (c) Anthropic, PBC
41
+ zod MIT Copyright (c) Colin McDonnell
42
+ semver ISC See the dependency's LICENSE file.
43
+ smol-toml BSD-3-Clause Copyright (c) Squirrel Chat et al.
44
+ yaml ISC Copyright Eemeli Aro
45
+
46
+ Full licence texts and copyright notices ship with those packages. Their
47
+ respective licence terms govern distribution of those dependencies.
48
+
49
+ @huggingface/transformers is an optional peer dependency. It is never
50
+ distributed with this package; a user who wants semantic ranking installs it
51
+ themselves, under its own Apache-2.0 terms.
@@ -0,0 +1 @@
1
+ { "name": "express-5", "version": "5.0.0" }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
3
+ "name": "express-5",
4
+ "version": "5.0.0",
5
+ "description": "Use Express 5.x programmatically on Node.js 18+; covers the Express app, routers, body middleware, Express 5 routing, and migration differences.",
6
+ "author": { "name": "modootoday" },
7
+ "license": "Elastic-2.0",
8
+ "repository": "https://github.com/modootoday/pmcp",
9
+ "homepage": "https://pmcp.build/skills/"
10
+ }
@@ -0,0 +1,179 @@
1
+ ---
2
+ name: express
3
+ description: Use Express 5.x programmatically on Node.js 18+; covers the Express app, routers, body middleware, Express 5 routing, and migration differences.
4
+ ---
5
+
6
+ Verified against express@5.2.1 on 2026-09-08. 6 of 6 examples executed.
7
+
8
+ # Express 5
9
+
10
+ Express `^5.0.0` requires Node.js 18 or newer. Import the package and call the exported function to create an application:
11
+
12
+ ```ts pmcp-example
13
+ import express from 'express'
14
+ import assert from 'node:assert/strict'
15
+
16
+ const app = express()
17
+
18
+ assert.equal(typeof express, 'function')
19
+ assert.equal(typeof app, 'function')
20
+ assert.equal(typeof app.get, 'function')
21
+ assert.equal(typeof app.post, 'function')
22
+ assert.equal(typeof app.put, 'function')
23
+ assert.equal(typeof app.delete, 'function')
24
+ assert.equal(typeof app.patch, 'function')
25
+ assert.equal(typeof app.options, 'function')
26
+ assert.equal(typeof app.head, 'function')
27
+ assert.equal(typeof app.all, 'function')
28
+ assert.equal(typeof app.use, 'function')
29
+ assert.equal(typeof app.listen, 'function')
30
+ ```
31
+
32
+ The application is itself a request handler and can be passed to Node's HTTP server APIs. `app.listen(...)` returns an `http.Server`. A plain script does not need an Express-specific runner or build step. These examples do not start a server because they must run without network access.
33
+
34
+ ## Middleware factories
35
+
36
+ The documented top-level middleware factories return middleware functions:
37
+
38
+ - `express.json(options)` parses JSON bodies.
39
+ - `express.raw(options)` parses request payloads into a `Buffer`.
40
+ - `express.text(options)` parses text bodies.
41
+ - `express.urlencoded(options)` parses URL-encoded bodies.
42
+ - `express.static(root, options)` serves static files.
43
+
44
+ ```ts pmcp-example
45
+ import express from 'express'
46
+ import assert from 'node:assert/strict'
47
+
48
+ assert.equal(typeof express.json(), 'function')
49
+ assert.equal(typeof express.json({}), 'function')
50
+ assert.equal(typeof express.raw(), 'function')
51
+ assert.equal(typeof express.text(), 'function')
52
+ assert.equal(typeof express.urlencoded({ extended: true }), 'function')
53
+ assert.equal(typeof express.static('public'), 'function')
54
+ ```
55
+
56
+ In Express 5, `express.urlencoded()` defaults `extended` to `false`; specify `{ extended: true }` when that is required. If no body parser handles the request, `req.body` is `undefined`. `express.raw()` produces a `Buffer`.
57
+
58
+ ```ts pmcp-example
59
+ import express from 'express'
60
+ import assert from 'node:assert/strict'
61
+ import { PassThrough } from 'node:stream'
62
+
63
+ const request = new PassThrough()
64
+ request.headers = {
65
+ 'content-type': 'application/json',
66
+ 'content-length': '11'
67
+ }
68
+ request.method = 'POST'
69
+ request.url = '/profile'
70
+
71
+ const response = {
72
+ setHeader() {},
73
+ getHeader() { return undefined },
74
+ removeHeader() {},
75
+ end() {}
76
+ }
77
+
78
+ let parsed: unknown
79
+ express.json()(request, response, (error?: unknown) => {
80
+ assert.equal(error, undefined)
81
+ parsed = request.body
82
+ })
83
+ request.end('{"ok":true}')
84
+
85
+ await new Promise((resolve) => setImmediate(resolve))
86
+ assert.deepEqual(parsed, { ok: true })
87
+ ```
88
+
89
+ ## Routers
90
+
91
+ `express.Router(options)` returns a router. The documented options are `caseSensitive`, `mergeParams`, and `strict`. Mount it with `app.use()`:
92
+
93
+ ```ts pmcp-example
94
+ import express from 'express'
95
+ import assert from 'node:assert/strict'
96
+
97
+ const app = express()
98
+ const router = express.Router({
99
+ caseSensitive: true,
100
+ mergeParams: true,
101
+ strict: true
102
+ })
103
+
104
+ router.get('/', (_req, res) => res.send('hello world'))
105
+ app.use('/api', router)
106
+
107
+ assert.equal(typeof router, 'function')
108
+ assert.equal(typeof router.get, 'function')
109
+ assert.equal(typeof router.use, 'function')
110
+ assert.equal(typeof app.use, 'function')
111
+ ```
112
+
113
+ ## Express 5 route syntax
114
+
115
+ Express 5 uses the newer `path-to-regexp` route syntax. Do not retain the common Express 4 string-path forms:
116
+
117
+ - Use `/*splat` instead of `/*`.
118
+ - Use `/{*splat}` when the wildcard should also match the root path.
119
+ - Use `/:file{.:ext}` instead of `/:file.:ext?`.
120
+ - Parameter names must be valid JavaScript identifiers or quoted names.
121
+ - `?`, regexp characters, and several reserved characters are not accepted in string paths as they were in older forms.
122
+
123
+ ```ts pmcp-example
124
+ import express from 'express'
125
+ import assert from 'node:assert/strict'
126
+
127
+ const app = express()
128
+
129
+ app.get('/*splat', (_req, res) => res.send('wildcard'))
130
+ app.get('/{*splat}', (_req, res) => res.send('root-or-wildcard'))
131
+ app.get('/:file{.:ext}', (_req, res) => res.send('file'))
132
+
133
+ assert.equal(typeof app.get, 'function')
134
+ ```
135
+
136
+ ## Async handlers and errors
137
+
138
+ Rejected promises from middleware and route handlers are forwarded to error middleware in Express 5. An `async` handler can therefore stand alone; the Express 4 `.catch(next)` pattern is not required.
139
+
140
+ ```ts pmcp-example
141
+ import express from 'express'
142
+ import assert from 'node:assert/strict'
143
+
144
+ const app = express()
145
+
146
+ app.get('/user/:id', async (_req, _res) => {
147
+ throw new Error('lookup failed')
148
+ })
149
+
150
+ app.use((error, _req, res, _next) => {
151
+ assert.equal(error.message, 'lookup failed')
152
+ res.status(500).send('handled')
153
+ })
154
+
155
+ assert.equal(typeof app, 'function')
156
+ ```
157
+
158
+ This example registers the behavior but does not issue a network request. The complete request lifecycle is exercised through the HTTP server in the surrounding application or tool.
159
+
160
+ ## Express 5 migration pitfalls
161
+
162
+ - Use `app.delete()`, not the removed `app.del()`.
163
+ - Use `res.status(200).send(body)`, not `res.send(body, status)`.
164
+ - `res.redirect('back')` and `res.location('back')` are removed; use `req.get('Referrer') || '/'` explicitly, for example `res.redirect(req.get('Referrer') || '/')`.
165
+ - `app.param(fn)` and `router.param(fn)` are removed forms.
166
+ - Singular method aliases are removed.
167
+ - `app.router` is available again as a reference to the base router.
168
+ - `app.listen(..., callback)` passes server errors to the callback rather than throwing them.
169
+ - Brotli request-body decompression is supported.
170
+
171
+ ## Static files
172
+
173
+ `express.static(root, options)` uses `root` and `dotfiles`, not the old `from` and `hidden` options. `dotfiles` defaults to `"ignore"`; explicitly opt in with `{ dotfiles: 'allow' }` when serving hidden paths such as `/.well-known`.
174
+
175
+ `express.static.mime` is gone; use `mime-types` instead. Static-file behavior requires an application filesystem and is not exercised by the standalone examples here.
176
+
177
+ ## Not covered
178
+
179
+ This skill does not cover Node HTTP server lifecycle details, network-based integration tests, filesystem fixtures for static files, the complete request and response object API, every middleware option, deployment configuration, or optional migration codemods. Those require the surrounding application/tool or information not present in the supplied research.
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "fake-indexeddb-6",
3
+ "version": "6.0.0",
4
+ "description": "Use fake-indexeddb ^6.0.0 as a pure-JavaScript, in-memory IndexedDB implementation in Node.js scripts and test environments.",
5
+ "author": { "name": "modootoday" },
6
+ "license": "Elastic-2.0",
7
+ "repository": "https://github.com/modootoday/pmcp",
8
+ "homepage": "https://pmcp.build/skills/"
9
+ }