natureco-cli 5.18.3 → 5.19.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 (154) hide show
  1. package/package.json +1 -1
  2. package/skills/airunway-aks-setup/SKILL.md +73 -0
  3. package/skills/algorithmic-art/SKILL.md +405 -0
  4. package/skills/appinsights-instrumentation/SKILL.md +76 -0
  5. package/skills/azure-ai/SKILL.md +71 -0
  6. package/skills/azure-aigateway/SKILL.md +129 -0
  7. package/skills/azure-cloud-migrate/SKILL.md +52 -0
  8. package/skills/azure-compliance/SKILL.md +108 -0
  9. package/skills/azure-compute/SKILL.md +46 -0
  10. package/skills/azure-cost/SKILL.md +45 -0
  11. package/skills/azure-deploy/SKILL.md +97 -0
  12. package/skills/azure-diagnostics/SKILL.md +151 -0
  13. package/skills/azure-enterprise-infra-planner/SKILL.md +54 -0
  14. package/skills/azure-hosted-copilot-sdk/SKILL.md +89 -0
  15. package/skills/azure-kubernetes/SKILL.md +153 -0
  16. package/skills/azure-kusto/SKILL.md +231 -0
  17. package/skills/azure-messaging/SKILL.md +57 -0
  18. package/skills/azure-prepare/SKILL.md +165 -0
  19. package/skills/azure-quotas/SKILL.md +276 -0
  20. package/skills/azure-rbac/SKILL.md +17 -0
  21. package/skills/azure-reliability/SKILL.md +387 -0
  22. package/skills/azure-resource-lookup/SKILL.md +108 -0
  23. package/skills/azure-resource-visualizer/SKILL.md +183 -0
  24. package/skills/azure-storage/SKILL.md +100 -0
  25. package/skills/azure-upgrade/SKILL.md +91 -0
  26. package/skills/azure-validate/SKILL.md +72 -0
  27. package/skills/brainstorming/SKILL.md +159 -0
  28. package/skills/brand-guidelines/SKILL.md +73 -0
  29. package/skills/brandkit/SKILL.md +798 -0
  30. package/skills/brutalist-skill/SKILL.md +92 -0
  31. package/skills/canvas-design/SKILL.md +130 -0
  32. package/skills/cavecrew/SKILL.md +82 -0
  33. package/skills/caveman-commit/SKILL.md +65 -0
  34. package/skills/caveman-help/SKILL.md +63 -0
  35. package/skills/caveman-review/SKILL.md +55 -0
  36. package/skills/caveman-stats/SKILL.md +10 -0
  37. package/skills/claude-api/SKILL.md +356 -0
  38. package/skills/composition-patterns/SKILL.md +89 -0
  39. package/skills/decision-mapping/SKILL.md +84 -0
  40. package/skills/deploy-to-vercel/SKILL.md +296 -0
  41. package/skills/design-an-interface/SKILL.md +94 -0
  42. package/skills/design-doc-mermaid/SKILL.md +498 -0
  43. package/skills/develop-userscripts/SKILL.md +84 -0
  44. package/skills/doc-coauthoring/SKILL.md +375 -0
  45. package/skills/documentation/SKILL.md +109 -0
  46. package/skills/docx/SKILL.md +590 -0
  47. package/skills/edit-article/SKILL.md +15 -0
  48. package/skills/entra-agent-id/SKILL.md +356 -0
  49. package/skills/entra-app-registration/SKILL.md +191 -0
  50. package/skills/faceless-explainer/SKILL.md +202 -0
  51. package/skills/fastify/SKILL.md +75 -0
  52. package/skills/general-video/SKILL.md +143 -0
  53. package/skills/git-guardrails-claude-code/SKILL.md +95 -0
  54. package/skills/github-actions-docs/SKILL.md +98 -0
  55. package/skills/gpt-tasteskill/SKILL.md +74 -0
  56. package/skills/grill-me/SKILL.md +7 -0
  57. package/skills/grilling/SKILL.md +10 -0
  58. package/skills/handoff/SKILL.md +16 -0
  59. package/skills/hyperframes/SKILL.md +152 -0
  60. package/skills/hyperframes-animation/SKILL.md +82 -0
  61. package/skills/hyperframes-cli/SKILL.md +109 -0
  62. package/skills/hyperframes-core/SKILL.md +78 -0
  63. package/skills/hyperframes-creative/SKILL.md +68 -0
  64. package/skills/hyperframes-media/SKILL.md +97 -0
  65. package/skills/image-to-code-skill/SKILL.md +1228 -0
  66. package/skills/imagegen-frontend-mobile/SKILL.md +1465 -0
  67. package/skills/imagegen-frontend-web/SKILL.md +987 -0
  68. package/skills/implement/SKILL.md +15 -0
  69. package/skills/init/SKILL.md +91 -0
  70. package/skills/internal-comms/SKILL.md +32 -0
  71. package/skills/lark-approval/SKILL.md +56 -0
  72. package/skills/lark-base/SKILL.md +157 -0
  73. package/skills/lark-doc/SKILL.md +81 -0
  74. package/skills/lark-shared/SKILL.md +168 -0
  75. package/skills/lark-workflow-meeting-summary/SKILL.md +122 -0
  76. package/skills/linting-neostandard-eslint9/SKILL.md +64 -0
  77. package/skills/loop-me/SKILL.md +32 -0
  78. package/skills/microsoft-foundry/SKILL.md +262 -0
  79. package/skills/migrate-to-shoehorn/SKILL.md +118 -0
  80. package/skills/minimalist-skill/SKILL.md +85 -0
  81. package/skills/motion-graphics/SKILL.md +170 -0
  82. package/skills/music-to-video/SKILL.md +197 -0
  83. package/skills/node/SKILL.md +94 -0
  84. package/skills/nodejs-core/SKILL.md +156 -0
  85. package/skills/oauth/SKILL.md +186 -0
  86. package/skills/obsidian-vault/SKILL.md +59 -0
  87. package/skills/octocat/SKILL.md +93 -0
  88. package/skills/openclaw-secure-linux-cloud/SKILL.md +157 -0
  89. package/skills/opensource-guide-coach/SKILL.md +218 -0
  90. package/skills/output-skill/SKILL.md +49 -0
  91. package/skills/pdf/SKILL.md +314 -0
  92. package/skills/pptx/SKILL.md +232 -0
  93. package/skills/pr-to-video/SKILL.md +235 -0
  94. package/skills/product-launch-video/SKILL.md +205 -0
  95. package/skills/python-appservice-deploy/SKILL.md +36 -0
  96. package/skills/qa/SKILL.md +130 -0
  97. package/skills/react-best-practices/SKILL.md +149 -0
  98. package/skills/react-native-skills/SKILL.md +121 -0
  99. package/skills/react-view-transitions/SKILL.md +320 -0
  100. package/skills/readme-i18n/SKILL.md +176 -0
  101. package/skills/redesign-skill/SKILL.md +178 -0
  102. package/skills/remotion/SKILL.md +364 -0
  103. package/skills/request-refactor-plan/SKILL.md +68 -0
  104. package/skills/resolving-merge-conflicts/SKILL.md +14 -0
  105. package/skills/running-claude-code-via-litellm-copilot/SKILL.md +263 -0
  106. package/skills/scaffold-exercises/SKILL.md +106 -0
  107. package/skills/secure-linux-web-hosting/SKILL.md +162 -0
  108. package/skills/setup-pre-commit/SKILL.md +91 -0
  109. package/skills/shadcn/SKILL.md +267 -0
  110. package/skills/simple/SKILL.md +52 -0
  111. package/skills/skill-creator/SKILL.md +485 -0
  112. package/skills/skill-optimizer/SKILL.md +47 -0
  113. package/skills/skills-cli/SKILL.md +281 -0
  114. package/skills/slack-gif-creator/SKILL.md +254 -0
  115. package/skills/snipgrapher/SKILL.md +58 -0
  116. package/skills/soft-skill/SKILL.md +98 -0
  117. package/skills/stitch-skill/SKILL.md +184 -0
  118. package/skills/supabase/SKILL.md +135 -0
  119. package/skills/supabase-postgres-best-practices/SKILL.md +64 -0
  120. package/skills/systematic-debugging/SKILL.md +296 -0
  121. package/skills/talking-head-recut/SKILL.md +1191 -0
  122. package/skills/taste-skill/SKILL.md +1206 -0
  123. package/skills/taste-skill-v1/SKILL.md +226 -0
  124. package/skills/tdd/SKILL.md +108 -0
  125. package/skills/teach/SKILL.md +140 -0
  126. package/skills/test-driven-development/SKILL.md +371 -0
  127. package/skills/theme-factory/SKILL.md +59 -0
  128. package/skills/to-prd/SKILL.md +75 -0
  129. package/skills/typescript-magician/SKILL.md +117 -0
  130. package/skills/tzst/SKILL.md +68 -0
  131. package/skills/ubiquitous-language/SKILL.md +93 -0
  132. package/skills/use-my-browser/SKILL.md +110 -0
  133. package/skills/using-superpowers/SKILL.md +121 -0
  134. package/skills/vercel-cli-with-tokens/SKILL.md +353 -0
  135. package/skills/vercel-optimize/SKILL.md +322 -0
  136. package/skills/viral-instagram-reels/SKILL.md +180 -0
  137. package/skills/viral-short-form/SKILL.md +147 -0
  138. package/skills/viral-short-form-ideas/SKILL.md +184 -0
  139. package/skills/viral-tiktok-content/SKILL.md +180 -0
  140. package/skills/web-artifacts-builder/SKILL.md +74 -0
  141. package/skills/web-design-guidelines/SKILL.md +39 -0
  142. package/skills/webapp-testing/SKILL.md +96 -0
  143. package/skills/website-to-video/SKILL.md +145 -0
  144. package/skills/writing-beats/SKILL.md +67 -0
  145. package/skills/writing-fragments/SKILL.md +79 -0
  146. package/skills/writing-great-skills/SKILL.md +82 -0
  147. package/skills/writing-guidelines/SKILL.md +39 -0
  148. package/skills/writing-plans/SKILL.md +174 -0
  149. package/skills/writing-shape/SKILL.md +79 -0
  150. package/skills/xdrop/SKILL.md +78 -0
  151. package/skills/xget/SKILL.md +87 -0
  152. package/skills/xlsx/SKILL.md +292 -0
  153. package/src/tools/skills_download.js +217 -0
  154. package/src/utils/tools.js +2 -2
@@ -0,0 +1,93 @@
1
+ ---
2
+ name: ubiquitous-language
3
+ description: Extract a DDD-style ubiquitous language glossary from the current conversation, flagging ambiguities and proposing canonical terms. Saves to UBIQUITOUS_LANGUAGE.md. Use when user wants to define domain terms, build a glossary, harden terminology, create a ubiquitous language, or mentions "domain model" or "DDD".
4
+ disable-model-invocation: true
5
+ ---
6
+
7
+ # Ubiquitous Language
8
+
9
+ Extract and formalize domain terminology from the current conversation into a consistent glossary, saved to a local file.
10
+
11
+ ## Process
12
+
13
+ 1. **Scan the conversation** for domain-relevant nouns, verbs, and concepts
14
+ 2. **Identify problems**:
15
+ - Same word used for different concepts (ambiguity)
16
+ - Different words used for the same concept (synonyms)
17
+ - Vague or overloaded terms
18
+ 3. **Propose a canonical glossary** with opinionated term choices
19
+ 4. **Write to `UBIQUITOUS_LANGUAGE.md`** in the working directory using the format below
20
+ 5. **Output a summary** inline in the conversation
21
+
22
+ ## Output Format
23
+
24
+ Write a `UBIQUITOUS_LANGUAGE.md` file with this structure:
25
+
26
+ ```md
27
+ # Ubiquitous Language
28
+
29
+ ## Order lifecycle
30
+
31
+ | Term | Definition | Aliases to avoid |
32
+ | ----------- | ------------------------------------------------------- | --------------------- |
33
+ | **Order** | A customer's request to purchase one or more items | Purchase, transaction |
34
+ | **Invoice** | A request for payment sent to a customer after delivery | Bill, payment request |
35
+
36
+ ## People
37
+
38
+ | Term | Definition | Aliases to avoid |
39
+ | ------------ | ------------------------------------------- | ---------------------- |
40
+ | **Customer** | A person or organization that places orders | Client, buyer, account |
41
+ | **User** | An authentication identity in the system | Login, account |
42
+
43
+ ## Relationships
44
+
45
+ - An **Invoice** belongs to exactly one **Customer**
46
+ - An **Order** produces one or more **Invoices**
47
+
48
+ ## Example dialogue
49
+
50
+ > **Dev:** "When a **Customer** places an **Order**, do we create the **Invoice** immediately?"
51
+ > **Domain expert:** "No — an **Invoice** is only generated once a **Fulfillment** is confirmed. A single **Order** can produce multiple **Invoices** if items ship in separate **Shipments**."
52
+ > **Dev:** "So if a **Shipment** is cancelled before dispatch, no **Invoice** exists for it?"
53
+ > **Domain expert:** "Exactly. The **Invoice** lifecycle is tied to the **Fulfillment**, not the **Order**."
54
+
55
+ ## Flagged ambiguities
56
+
57
+ - "account" was used to mean both **Customer** and **User** — these are distinct concepts: a **Customer** places orders, while a **User** is an authentication identity that may or may not represent a **Customer**.
58
+ ```
59
+
60
+ ## Rules
61
+
62
+ - **Be opinionated.** When multiple words exist for the same concept, pick the best one and list the others as aliases to avoid.
63
+ - **Flag conflicts explicitly.** If a term is used ambiguously in the conversation, call it out in the "Flagged ambiguities" section with a clear recommendation.
64
+ - **Only include terms relevant for domain experts.** Skip the names of modules or classes unless they have meaning in the domain language.
65
+ - **Keep definitions tight.** One sentence max. Define what it IS, not what it does.
66
+ - **Show relationships.** Use bold term names and express cardinality where obvious.
67
+ - **Only include domain terms.** Skip generic programming concepts (array, function, endpoint) unless they have domain-specific meaning.
68
+ - **Group terms into multiple tables** when natural clusters emerge (e.g. by subdomain, lifecycle, or actor). Each group gets its own heading and table. If all terms belong to a single cohesive domain, one table is fine — don't force groupings.
69
+ - **Write an example dialogue.** A short conversation (3-5 exchanges) between a dev and a domain expert that demonstrates how the terms interact naturally. The dialogue should clarify boundaries between related concepts and show terms being used precisely.
70
+
71
+ <example>
72
+
73
+ ## Example dialogue
74
+
75
+ > **Dev:** "How do I test the **sync service** without Docker?"
76
+
77
+ > **Domain expert:** "Provide the **filesystem layer** instead of the **Docker layer**. It implements the same **Sandbox service** interface but uses a local directory as the **sandbox**."
78
+
79
+ > **Dev:** "So **sync-in** still creates a **bundle** and unpacks it?"
80
+
81
+ > **Domain expert:** "Exactly. The **sync service** doesn't know which layer it's talking to. It calls `exec` and `copyIn` — the **filesystem layer** just runs those as local shell commands."
82
+
83
+ </example>
84
+
85
+ ## Re-running
86
+
87
+ When invoked again in the same conversation:
88
+
89
+ 1. Read the existing `UBIQUITOUS_LANGUAGE.md`
90
+ 2. Incorporate any new terms from subsequent discussion
91
+ 3. Update definitions if understanding has evolved
92
+ 4. Re-flag any new ambiguities
93
+ 5. Rewrite the example dialogue to incorporate new terms
@@ -0,0 +1,110 @@
1
+ ---
2
+ name: use-my-browser
3
+ description: Use when work depends on the user's live browser session or visible rendered state rather than static fetches, especially for browser debugging contexts or DevTools-selected elements or requests, logged-in dashboards or CMS flows, localhost apps, forms, uploads, downloads, media inspection, DOM or iframe inspection, Shadow DOM, or browser failures that look like soft 404s, auth walls, anti-bot checks, or rate limits.
4
+ ---
5
+
6
+ Do not treat this skill as a generic browsing default. Route from the evidence you need, not from tool preference.
7
+
8
+ Every task must be classified before you choose a route:
9
+
10
+ - `static-capable`: the evidence can be produced without live browser state, visible confirmation, or page interaction
11
+ - `browser-required`: the evidence depends on rendered state, interaction, live session behavior, or browser-only structures
12
+
13
+ Only `static-capable` tasks may fall back to static retrieval, `curl`, or other non-browser paths. Once a task is `browser-required`, stay on the browser path and mark missing capability as `blocked` instead of silently downgrading.
14
+
15
+ ## Prerequisite check
16
+
17
+ This skill is for work inside the user's live browser session, not for launching a separate fresh automation browser.
18
+
19
+ Before doing browser automation, confirm that your environment already has access to a live browser stack that can provide the capabilities the task depends on, such as page inventory, task-owned page creation, page selection, snapshots or visible-state reads, DOM inspection, text or form input, uploads, dialogs, console inspection, and network inspection. The exact stack does not matter here: confirm capability, not brand.
20
+
21
+ If the live browser stack is unavailable, do not attempt browser automation through this skill. Only `static-capable` work may fall back to static retrieval.
22
+
23
+ Live browser automation can trigger anti-bot or anti-automation defenses on some sites. Use browser interaction only when the task truly needs it, and avoid unnecessary repetitive actions once the needed evidence has been obtained.
24
+
25
+ ## Experience loop
26
+
27
+ Treat site patterns as part of the browser protocol, not as optional background reading.
28
+
29
+ For `browser-required` work, run this loop:
30
+
31
+ 1. As soon as the target domain is known, check whether a matching note already exists under [`references/site-patterns/`](./references/site-patterns/).
32
+ 2. If a note exists, read it before the first meaningful browser mutation on that domain.
33
+ 3. During the run, watch for verified site-specific facts that would change how a future run should operate.
34
+ 4. Before you consider the task complete, decide whether the run produced a reusable fact, disproved an existing fact, or produced no reusable site-specific learning.
35
+ 5. If the run verified something reusable or disproved an existing claim, update the matching note before finishing.
36
+
37
+ Do not create a domain note for one-off noise. Do not skip the end-of-run review just because the task itself succeeded.
38
+
39
+ Writeback is expected when a run verifies any of the following:
40
+
41
+ - a stable route shape or required query parameter
42
+ - a login, session inheritance, or `isolatedContext` quirk
43
+ - a reliable interaction primitive such as hover, keyboard entry, upload sequencing, or a selector bridge pattern
44
+ - a domain where DOM-generated links are reliable but hand-built URLs are not
45
+ - predictable anti-automation friction or a misleading platform error state
46
+ - a reusable media extraction or iframe / Shadow DOM access pattern
47
+
48
+ ## Decision guide
49
+
50
+ Start with the outcome, not the tool. Make the user's goal explicit, define what counts as done, and choose the cheapest route that can still produce the right evidence.
51
+
52
+ Use this routing order:
53
+
54
+ 1. Decide whether the task is `static-capable` or `browser-required`.
55
+ 2. If the task is `static-capable`, load [`references/task-routing.md`](./references/task-routing.md) and stay on the cheapest route that still satisfies the evidence target.
56
+ 3. If the task is `browser-required`, load [`references/browser-playbook.md`](./references/browser-playbook.md).
57
+ 4. If browser-required capability is uncertain in a fresh host session, also load [`references/browser-capability-matrix.md`](./references/browser-capability-matrix.md).
58
+ 5. If the user already has an active browser debugging context, such as a selected inspector element or network request, also load [`references/debug-handoff.md`](./references/debug-handoff.md).
59
+ 6. If the browser-required task touches a logged-in dashboard, admin surface, CMS, editor, or any save / publish / update flow, also load [`references/control-plane-workflows.md`](./references/control-plane-workflows.md).
60
+ 7. If the current failure shape suggests a soft 404, content-unavailable state, suspicious no-op interaction, auth wall, rate limit, or anti-automation defense, also load [`references/anti-automation-friction.md`](./references/anti-automation-friction.md).
61
+ 8. If the browser-required task includes iframe, Shadow DOM, collapsed content, or lazy-loaded evidence, also load [`references/deep-dom.md`](./references/deep-dom.md).
62
+ 9. If the important evidence lives in an image, audio clip, or video, also load [`references/media-inspection.md`](./references/media-inspection.md).
63
+ 10. If browser work can be divided across independent page owners or sub-agents, also load [`references/parallel-browser-ownership.md`](./references/parallel-browser-ownership.md).
64
+ 11. If you already know a reliable selector but need an MCP-native `uid` target, also load [`references/selector-bridge.md`](./references/selector-bridge.md).
65
+ 12. If page actions leave state ambiguous, a page unexpectedly navigates, an old `uid` may have gone stale, or console / network inspection is now needed to explain the next browser decision, also load [`references/browser-recovery.md`](./references/browser-recovery.md).
66
+ 13. If the target site already has a matching domain note under [`references/site-patterns/`](./references/site-patterns/), read that note before operating on the site.
67
+
68
+ Treat the following as `browser-required` by default:
69
+
70
+ - `localhost`, `127.0.0.1`, or benchmark-style local fixtures
71
+ - uploads, downloads, drag-and-drop, hover, keyboard-native entry, or visible confirmation states
72
+ - same-origin iframe inspection, Shadow DOM inspection, `details` / collapsed evidence, or lazy-loaded content
73
+ - any task where "what the page visibly shows" is itself the evidence
74
+
75
+ The normal happy path for a common task is this entrypoint plus one or two references, not the entire reference set.
76
+
77
+ ## Hard rules
78
+
79
+ - Use browser interaction only when live browser state is part of the evidence or required action.
80
+ - Once a task is `browser-required`, do not silently downgrade.
81
+ - Treat this file as the entrypoint and each reference file as a single-purpose authority. Do not duplicate rules across files.
82
+ - Keep reference loading one level deep. Decide the next file from this entrypoint instead of turning one reference into a hub that links to more references.
83
+ - Do not ask the user to log in just because a page looks restricted. First confirm whether the target content or action is actually blocked.
84
+ - Prefer site-generated DOM links over hand-built URLs once the page has shown you the path it expects.
85
+ - Prefer MCP-native actions over script-driven interaction when the task is genuinely an in-browser action.
86
+ - Only close pages you created.
87
+ - Prefer primary sources over aggregators or repeated secondary reporting.
88
+ - If a matching site pattern note exists, read it before the first meaningful browser mutation on that domain.
89
+ - Do not finish a `browser-required` task without explicitly checking whether the run should create, update, downgrade, or remove a site-pattern claim.
90
+ - If an existing site-pattern claim fails under comparable conditions, stop trusting it, fall back to the generic workflow, and update the note instead of retrying the stale assumption.
91
+ - Do not use `curl`, `Invoke-WebRequest`, or shell HTTP fetches for `browser-required` tasks.
92
+ - Do not treat a generic page-opening tool as evidence that localhost deep interaction is available.
93
+ - Do not switch routes just because a browser capability probe failed. Record the missing capability and stop.
94
+ - When the user indicates an active browser debugging context, prefer handoff from that current context over fresh reproduction from scratch.
95
+
96
+ ## Reference index
97
+
98
+ - [`references/task-routing.md`](./references/task-routing.md): static retrieval vs live browser routing
99
+ - [`references/browser-playbook.md`](./references/browser-playbook.md): core page-action protocol and base browser loop
100
+ - [`references/browser-capability-matrix.md`](./references/browser-capability-matrix.md): capability proof for uncertain host sessions
101
+ - [`references/debug-handoff.md`](./references/debug-handoff.md): active debugging-context handoff
102
+ - [`references/control-plane-workflows.md`](./references/control-plane-workflows.md): logged-in dashboard / CMS save-publish discipline
103
+ - [`references/anti-automation-friction.md`](./references/anti-automation-friction.md): soft 404 / auth / anti-automation classification
104
+ - [`references/deep-dom.md`](./references/deep-dom.md): iframe, Shadow DOM, collapsed, or lazy-loaded evidence
105
+ - [`references/media-inspection.md`](./references/media-inspection.md): image, audio, and video evidence
106
+ - [`references/parallel-browser-ownership.md`](./references/parallel-browser-ownership.md): multi-owner browser coordination
107
+ - [`references/selector-bridge.md`](./references/selector-bridge.md): selector-to-`uid` bridging
108
+ - [`references/browser-recovery.md`](./references/browser-recovery.md): stale `uid`, navigation drift, and console / network escalation
109
+ - [`references/site-patterns/README.md`](./references/site-patterns/README.md): site-pattern note maintenance rules
110
+ - [site-patterns/{domain}.md](./references/site-patterns/): existing domain-specific operating knowledge
@@ -0,0 +1,121 @@
1
+ ---
2
+ name: using-superpowers
3
+ description: Use when starting any conversation - establishes how to find and use skills, requiring skill invocation before ANY response including clarifying questions
4
+ ---
5
+
6
+ <SUBAGENT-STOP>
7
+ If you were dispatched as a subagent to execute a specific task, skip this skill.
8
+ </SUBAGENT-STOP>
9
+
10
+ <EXTREMELY-IMPORTANT>
11
+ If you think there is even a 1% chance a skill might apply to what you are doing, you ABSOLUTELY MUST invoke the skill.
12
+
13
+ IF A SKILL APPLIES TO YOUR TASK, YOU DO NOT HAVE A CHOICE. YOU MUST USE IT.
14
+
15
+ This is not negotiable. This is not optional. You cannot rationalize your way out of this.
16
+ </EXTREMELY-IMPORTANT>
17
+
18
+ ## Instruction Priority
19
+
20
+ Superpowers skills override default system prompt behavior, but **user instructions always take precedence**:
21
+
22
+ 1. **User's explicit instructions** (CLAUDE.md, GEMINI.md, AGENTS.md, direct requests) — highest priority
23
+ 2. **Superpowers skills** — override default system behavior where they conflict
24
+ 3. **Default system prompt** — lowest priority
25
+
26
+ If CLAUDE.md, GEMINI.md, or AGENTS.md says "don't use TDD" and a skill says "always use TDD," follow the user's instructions. The user is in control.
27
+
28
+ ## How to Access Skills
29
+
30
+ **Never read skill files manually with file tools** — always use your platform's skill-loading mechanism so the skill is properly activated.
31
+
32
+ **In Claude Code:** Use the `Skill` tool. When you invoke a skill, its content is loaded and presented to you — follow it directly.
33
+
34
+ **In Codex:** Skills load natively. Follow the instructions presented when a skill activates.
35
+
36
+ **In Copilot CLI:** Use the `skill` tool. Skills are auto-discovered from installed plugins.
37
+
38
+ **In Gemini CLI:** Skills activate via the `activate_skill` tool. Gemini loads skill metadata at session start and activates the full content on demand.
39
+
40
+ **In other environments:** Check your platform's documentation for how skills are loaded.
41
+
42
+ ## Platform Adaptation
43
+
44
+ Skills speak in actions ("dispatch a subagent", "create a todo", "read a file") rather than naming any one runtime's tools. For per-platform tool equivalents and instructions-file conventions, see [claude-code-tools.md](references/claude-code-tools.md), [codex-tools.md](references/codex-tools.md), [copilot-tools.md](references/copilot-tools.md), [gemini-tools.md](references/gemini-tools.md), [pi-tools.md](references/pi-tools.md), and [antigravity-tools.md](references/antigravity-tools.md). Gemini CLI users get the tool mapping loaded automatically via GEMINI.md.
45
+
46
+ # Using Skills
47
+
48
+ ## The Rule
49
+
50
+ **Invoke relevant or requested skills BEFORE any response or action.** Even a 1% chance a skill might apply means that you should invoke the skill to check. If an invoked skill turns out to be wrong for the situation, you don't need to use it.
51
+
52
+ ```dot
53
+ digraph skill_flow {
54
+ "User message received" [shape=doublecircle];
55
+ "About to enter plan mode?" [shape=doublecircle];
56
+ "Already brainstormed?" [shape=diamond];
57
+ "Invoke brainstorming skill" [shape=box];
58
+ "Might any skill apply?" [shape=diamond];
59
+ "Invoke the skill" [shape=box];
60
+ "Announce: 'Using [skill] to [purpose]'" [shape=box];
61
+ "Has checklist?" [shape=diamond];
62
+ "Create a todo per item" [shape=box];
63
+ "Follow skill exactly" [shape=box];
64
+ "Respond (including clarifications)" [shape=doublecircle];
65
+
66
+ "About to enter plan mode?" -> "Already brainstormed?";
67
+ "Already brainstormed?" -> "Invoke brainstorming skill" [label="no"];
68
+ "Already brainstormed?" -> "Might any skill apply?" [label="yes"];
69
+ "Invoke brainstorming skill" -> "Might any skill apply?";
70
+
71
+ "User message received" -> "Might any skill apply?";
72
+ "Might any skill apply?" -> "Invoke the skill" [label="yes, even 1%"];
73
+ "Might any skill apply?" -> "Respond (including clarifications)" [label="definitely not"];
74
+ "Invoke the skill" -> "Announce: 'Using [skill] to [purpose]'";
75
+ "Announce: 'Using [skill] to [purpose]'" -> "Has checklist?";
76
+ "Has checklist?" -> "Create a todo per item" [label="yes"];
77
+ "Has checklist?" -> "Follow skill exactly" [label="no"];
78
+ "Create a todo per item" -> "Follow skill exactly";
79
+ }
80
+ ```
81
+
82
+ ## Red Flags
83
+
84
+ These thoughts mean STOP—you're rationalizing:
85
+
86
+ | Thought | Reality |
87
+ |---------|---------|
88
+ | "This is just a simple question" | Questions are tasks. Check for skills. |
89
+ | "I need more context first" | Skill check comes BEFORE clarifying questions. |
90
+ | "Let me explore the codebase first" | Skills tell you HOW to explore. Check first. |
91
+ | "I can check git/files quickly" | Files lack conversation context. Check for skills. |
92
+ | "Let me gather information first" | Skills tell you HOW to gather information. |
93
+ | "This doesn't need a formal skill" | If a skill exists, use it. |
94
+ | "I remember this skill" | Skills evolve. Read current version. |
95
+ | "This doesn't count as a task" | Action = task. Check for skills. |
96
+ | "The skill is overkill" | Simple things become complex. Use it. |
97
+ | "I'll just do this one thing first" | Check BEFORE doing anything. |
98
+ | "This feels productive" | Undisciplined action wastes time. Skills prevent this. |
99
+ | "I know what that means" | Knowing the concept ≠ using the skill. Invoke it. |
100
+
101
+ ## Skill Priority
102
+
103
+ When multiple skills could apply, use this order:
104
+
105
+ 1. **Process skills first** (brainstorming, systematic-debugging) - these determine HOW to approach the task
106
+ 2. **Implementation skills second** (frontend-design, mcp-builder) - these guide execution
107
+
108
+ "Let's build X" → brainstorming first, then implementation skills.
109
+ "Fix this bug" → systematic-debugging first, then domain-specific skills.
110
+
111
+ ## Skill Types
112
+
113
+ **Rigid** (TDD, systematic-debugging): Follow exactly. Don't adapt away discipline.
114
+
115
+ **Flexible** (patterns): Adapt principles to context.
116
+
117
+ The skill itself tells you which.
118
+
119
+ ## User Instructions
120
+
121
+ Instructions say WHAT, not HOW. "Add X" or "Fix Y" doesn't mean skip workflows.
@@ -0,0 +1,353 @@
1
+ ---
2
+ name: vercel-cli-with-tokens
3
+ description: Deploy and manage projects on Vercel using token-based authentication. Use when working with Vercel CLI using access tokens rather than interactive login — e.g. "deploy to vercel", "set up vercel", "add environment variables to vercel".
4
+ metadata:
5
+ author: vercel
6
+ version: "1.0.0"
7
+ ---
8
+
9
+ # Vercel CLI with Tokens
10
+
11
+ Deploy and manage projects on Vercel using the CLI with token-based authentication, without relying on `vercel login`.
12
+
13
+ ## Step 1: Locate the Vercel Token
14
+
15
+ Before running any Vercel CLI commands, identify where the token is coming from. Work through these scenarios in order:
16
+
17
+ ### A) `VERCEL_TOKEN` is already set in the environment
18
+
19
+ ```bash
20
+ printenv VERCEL_TOKEN
21
+ ```
22
+
23
+ If this returns a value, you're ready. Skip to Step 2.
24
+
25
+ ### B) Token is in a `.env` file under `VERCEL_TOKEN`
26
+
27
+ ```bash
28
+ grep '^VERCEL_TOKEN=' .env 2>/dev/null
29
+ ```
30
+
31
+ If found, export it:
32
+
33
+ ```bash
34
+ export VERCEL_TOKEN=$(grep '^VERCEL_TOKEN=' .env | cut -d= -f2-)
35
+ ```
36
+
37
+ ### C) Token is in a `.env` file under a different name
38
+
39
+ Look for any variable that looks like a Vercel token (Vercel tokens typically start with `vca_`):
40
+
41
+ ```bash
42
+ grep -i 'vercel' .env 2>/dev/null
43
+ ```
44
+
45
+ Inspect the output to identify which variable holds the token, then export it as `VERCEL_TOKEN`:
46
+
47
+ ```bash
48
+ export VERCEL_TOKEN=$(grep '^<VARIABLE_NAME>=' .env | cut -d= -f2-)
49
+ ```
50
+
51
+ ### D) No token found — ask the user
52
+
53
+ If none of the above yield a token, ask the user to provide one. They can create a Vercel access token at vercel.com/account/tokens.
54
+
55
+ ---
56
+
57
+ **Important:** Once `VERCEL_TOKEN` is exported as an environment variable, the Vercel CLI reads it natively — **do not pass it as a `--token` flag**. Putting secrets in command-line arguments exposes them in shell history and process listings.
58
+
59
+ ```bash
60
+ # Bad — token visible in shell history and process listings
61
+ vercel deploy --token "vca_abc123"
62
+
63
+ # Good — CLI reads VERCEL_TOKEN from the environment
64
+ export VERCEL_TOKEN="vca_abc123"
65
+ vercel deploy
66
+ ```
67
+
68
+ ## Step 2: Locate the Project and Team
69
+
70
+ Similarly, check for the project ID and team scope. These let the CLI target the right project without needing `vercel link`.
71
+
72
+ ```bash
73
+ # Check environment
74
+ printenv VERCEL_PROJECT_ID
75
+ printenv VERCEL_ORG_ID
76
+
77
+ # Or check .env
78
+ grep -i 'vercel' .env 2>/dev/null
79
+ ```
80
+
81
+ **If you have a project URL** (e.g. `https://vercel.com/my-team/my-project`), extract the team slug:
82
+
83
+ ```bash
84
+ # e.g. "my-team" from "https://vercel.com/my-team/my-project"
85
+ echo "$PROJECT_URL" | sed 's|https://vercel.com/||' | cut -d/ -f1
86
+ ```
87
+
88
+ **If you have both `VERCEL_ORG_ID` and `VERCEL_PROJECT_ID` in your environment**, export them — the CLI will use these automatically and skip any `.vercel/` directory:
89
+
90
+ ```bash
91
+ export VERCEL_ORG_ID="<org-id>"
92
+ export VERCEL_PROJECT_ID="<project-id>"
93
+ ```
94
+
95
+ Note: `VERCEL_ORG_ID` and `VERCEL_PROJECT_ID` must be set together — setting only one causes an error.
96
+
97
+ ## CLI Setup
98
+
99
+ Ensure the Vercel CLI is installed and up to date:
100
+
101
+ ```bash
102
+ npm install -g vercel
103
+ vercel --version
104
+ ```
105
+
106
+ ## Deploying a Project
107
+
108
+ Always deploy as **preview** unless the user explicitly requests production. Choose a method based on what you have available.
109
+
110
+ ### Quick Deploy (have project ID — no linking needed)
111
+
112
+ When `VERCEL_TOKEN` and `VERCEL_PROJECT_ID` are set in the environment, deploy directly:
113
+
114
+ ```bash
115
+ vercel deploy -y --no-wait
116
+ ```
117
+
118
+ With a team scope (either via `VERCEL_ORG_ID` or `--scope`):
119
+
120
+ ```bash
121
+ vercel deploy --scope <team-slug> -y --no-wait
122
+ ```
123
+
124
+ Production (only when explicitly requested):
125
+
126
+ ```bash
127
+ vercel deploy --prod --scope <team-slug> -y --no-wait
128
+ ```
129
+
130
+ Check status:
131
+
132
+ ```bash
133
+ vercel inspect <deployment-url>
134
+ ```
135
+
136
+ ### Full Deploy Flow (no project ID — need to link)
137
+
138
+ Use this when you have a token and team but no pre-existing project ID.
139
+
140
+ #### Check project state first
141
+
142
+ ```bash
143
+ # Does the project have a git remote?
144
+ git remote get-url origin 2>/dev/null
145
+
146
+ # Is it already linked to a Vercel project?
147
+ cat .vercel/project.json 2>/dev/null || cat .vercel/repo.json 2>/dev/null
148
+ ```
149
+
150
+ #### Link the project
151
+
152
+ **With git remote (preferred):**
153
+
154
+ ```bash
155
+ vercel link --repo --scope <team-slug> -y
156
+ ```
157
+
158
+ Reads the git remote and connects to the matching Vercel project. Creates `.vercel/repo.json`. More reliable than plain `vercel link`, which matches by directory name.
159
+
160
+ **Without git remote:**
161
+
162
+ ```bash
163
+ vercel link --scope <team-slug> -y
164
+ ```
165
+
166
+ Creates `.vercel/project.json`.
167
+
168
+ **Link to a specific project by name:**
169
+
170
+ ```bash
171
+ vercel link --project <project-name> --scope <team-slug> -y
172
+ ```
173
+
174
+ If the project is already linked, check `orgId` in `.vercel/project.json` or `.vercel/repo.json` to verify it matches the intended team.
175
+
176
+ #### Deploy after linking
177
+
178
+ **A) Git Push Deploy — has git remote (preferred)**
179
+
180
+ Git pushes trigger automatic Vercel deployments.
181
+
182
+ 1. **Ask the user before pushing.** Never push without explicit approval.
183
+ 2. Commit and push:
184
+ ```bash
185
+ git add .
186
+ git commit -m "deploy: <description of changes>"
187
+ git push
188
+ ```
189
+ 3. Vercel builds automatically. Non-production branches get preview deployments.
190
+ 4. Retrieve the deployment URL:
191
+ ```bash
192
+ sleep 5
193
+ vercel ls --format json --scope <team-slug>
194
+ ```
195
+ Find the latest entry in the `deployments` array.
196
+
197
+ **B) CLI Deploy — no git remote**
198
+
199
+ ```bash
200
+ vercel deploy --scope <team-slug> -y --no-wait
201
+ ```
202
+
203
+ Check status:
204
+
205
+ ```bash
206
+ vercel inspect <deployment-url>
207
+ ```
208
+
209
+ ### Deploying from a Remote Repository (code not cloned locally)
210
+
211
+ 1. Clone the repository:
212
+ ```bash
213
+ git clone <repo-url>
214
+ cd <repo-name>
215
+ ```
216
+ 2. Link to Vercel:
217
+ ```bash
218
+ vercel link --repo --scope <team-slug> -y
219
+ ```
220
+ 3. Deploy via git push (if you have push access) or CLI deploy.
221
+
222
+ ### About `.vercel/` Directory
223
+
224
+ A linked project has either:
225
+ - `.vercel/project.json` — from `vercel link`. Contains `projectId` and `orgId`.
226
+ - `.vercel/repo.json` — from `vercel link --repo`. Contains `orgId`, `remoteName`, and a `projects` map.
227
+
228
+ Not needed when `VERCEL_ORG_ID` + `VERCEL_PROJECT_ID` are both set in the environment.
229
+
230
+ **Do NOT** run `vercel project inspect` or `vercel link` in an unlinked directory to detect state — they will interactively prompt or silently link as a side-effect. `vercel ls` is safe (in an unlinked directory it defaults to showing all deployments for the scope). `vercel whoami` is safe anywhere.
231
+
232
+ ## Managing Environment Variables
233
+
234
+ ```bash
235
+ # Set for all environments
236
+ echo "value" | vercel env add VAR_NAME --scope <team-slug>
237
+
238
+ # Set for a specific environment (production, preview, development)
239
+ echo "value" | vercel env add VAR_NAME production --scope <team-slug>
240
+
241
+ # List environment variables
242
+ vercel env ls --scope <team-slug>
243
+
244
+ # Pull env vars to local .env.local file
245
+ vercel env pull --scope <team-slug>
246
+
247
+ # Remove a variable
248
+ vercel env rm VAR_NAME --scope <team-slug> -y
249
+ ```
250
+
251
+ ## Inspecting Deployments
252
+
253
+ ```bash
254
+ # List recent deployments
255
+ vercel ls --format json --scope <team-slug>
256
+
257
+ # Inspect a specific deployment
258
+ vercel inspect <deployment-url>
259
+
260
+ # View build logs (requires Vercel CLI v35+)
261
+ vercel inspect <deployment-url> --logs
262
+
263
+ # View runtime request logs (follows live by default; add --no-follow for a one-shot snapshot)
264
+ vercel logs <deployment-url>
265
+ ```
266
+
267
+ ## Managing Domains
268
+
269
+ ```bash
270
+ # List domains
271
+ vercel domains ls --scope <team-slug>
272
+
273
+ # Add a domain to the project — linked or env-linked directory (1 arg)
274
+ vercel domains add <domain> --scope <team-slug>
275
+
276
+ # Add a domain — unlinked directory (requires <project> positional)
277
+ vercel domains add <domain> <project> --scope <team-slug>
278
+ ```
279
+
280
+ ## Stripe Projects Plan Changes
281
+
282
+ If this project is managed by Stripe Projects. **Ask the user before running any paid or destructive plan change** — upgrades bill a real card, downgrades remove seats.
283
+
284
+ First run `stripe projects status --json` to confirm the Vercel resource's local name. The examples below assume the default (`vercel-plan`); substitute the actual name if it was renamed at `stripe projects add` time.
285
+
286
+ - **Upgrade to Pro:** `stripe projects add vercel/pro` (or `stripe projects upgrade vercel-plan pro`)
287
+ - **Downgrade to Hobby:** `stripe projects downgrade vercel-plan hobby`
288
+
289
+ ### What Pro gives you
290
+
291
+ - $20/month platform fee, includes $20/month of usage credit.
292
+ - Turbo build machines (30 vCPUs, 60 GB memory) by default for new projects — significantly faster builds than Hobby.
293
+ - 1 deploying seat + unlimited free Viewer seats (read-only collaborators, preview comments).
294
+ - Higher included allocations (1 TB Fast Data Transfer, 10M Edge Requests per month).
295
+ - Paid add-ons available: SAML SSO, HIPAA BAA, Flags Explorer, Observability Plus, Speed Insights, Web Analytics Plus.
296
+
297
+ Full details: https://vercel.com/docs/plans/pro-plan
298
+
299
+ ## Working Agreement
300
+
301
+ - **Never pass `VERCEL_TOKEN` as a `--token` flag.** Export it as an environment variable and let the CLI read it natively.
302
+ - **Check the environment for tokens before asking the user.** Look in the current env and `.env` files first.
303
+ - **Default to preview deployments.** Only deploy to production when explicitly asked.
304
+ - **Ask before pushing to git.** Never push commits without the user's approval.
305
+ - **Do not modify `.vercel/` files directly.** The CLI manages this directory. Reading them (e.g. to verify `orgId`) is fine.
306
+ - **Do not curl/fetch deployed URLs to verify.** Just return the link to the user.
307
+ - **Use `--format json`** when structured output will help with follow-up steps.
308
+ - **Use `-y`** on commands that prompt for confirmation to avoid interactive blocking.
309
+
310
+ ## Troubleshooting
311
+
312
+ ### Token not found
313
+
314
+ Check the environment and any `.env` files present:
315
+
316
+ ```bash
317
+ printenv | grep -i vercel
318
+ grep -i vercel .env 2>/dev/null
319
+ ```
320
+
321
+ ### Authentication error
322
+
323
+ If the CLI fails with `Authentication required`:
324
+ - The token may be expired or invalid.
325
+ - Verify: `vercel whoami` (uses `VERCEL_TOKEN` from environment).
326
+ - Ask the user for a fresh token.
327
+
328
+ ### Wrong team
329
+
330
+ Verify the scope is correct:
331
+
332
+ ```bash
333
+ vercel whoami --scope <team-slug>
334
+ ```
335
+
336
+ ### Build failure
337
+
338
+ Check the build logs:
339
+
340
+ ```bash
341
+ vercel inspect <deployment-url> --logs
342
+ ```
343
+
344
+ Common causes:
345
+ - Missing dependencies — ensure `package.json` is complete and committed.
346
+ - Missing environment variables — add with `vercel env add`.
347
+ - Framework misconfiguration — check `vercel.json`. Vercel auto-detects frameworks (Next.js, Remix, Vite, etc.) from `package.json`; override with `vercel.json` if detection is wrong.
348
+
349
+ ### CLI not installed
350
+
351
+ ```bash
352
+ npm install -g vercel
353
+ ```