@olegkoval/agent-skills 1.56.1 → 1.57.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 (32) hide show
  1. package/.github/copilot-instructions.md +1 -0
  2. package/.github/prompts/frontend-direction.prompt.md +57 -0
  3. package/.kiro/steering/frontend-direction.md +56 -0
  4. package/.windsurf/rules/frontend-direction.md +55 -0
  5. package/README.md +6 -5
  6. package/adapters/claude/olko-product/skills/frontend-direction/SKILL.md +59 -0
  7. package/adapters/claude/olko-product/skills/frontend-direction/references/sources.md +36 -0
  8. package/adapters/codex/olko-product/README.md +1 -0
  9. package/adapters/cursor/olko-product/skills/frontend-direction/SKILL.md +59 -0
  10. package/adapters/cursor/olko-product/skills/frontend-direction/references/sources.md +36 -0
  11. package/adapters/grok/olko-product/skills/frontend-direction/SKILL.md +59 -0
  12. package/adapters/grok/olko-product/skills/frontend-direction/references/sources.md +36 -0
  13. package/adapters/hermes/olko-product/README.md +1 -0
  14. package/adapters/pi/olko-product/README.md +7 -0
  15. package/catalog/skills.json +24 -0
  16. package/docs/skill-anatomy.md +1 -1
  17. package/package.json +1 -1
  18. package/plugins/olko-apple-kit/.claude-plugin/plugin.json +1 -1
  19. package/plugins/olko-creative/.claude-plugin/plugin.json +1 -1
  20. package/plugins/olko-garmin-kit/.claude-plugin/plugin.json +1 -1
  21. package/plugins/olko-git-tools/.claude-plugin/plugin.json +1 -1
  22. package/plugins/olko-github-pr/.claude-plugin/plugin.json +1 -1
  23. package/plugins/olko-obsidian/.claude-plugin/plugin.json +1 -1
  24. package/plugins/olko-product/.claude-plugin/plugin.json +1 -1
  25. package/plugins/olko-product/skills/frontend-direction/README.md +54 -0
  26. package/plugins/olko-product/skills/frontend-direction/SKILL.md +58 -0
  27. package/plugins/olko-product/skills/frontend-direction/references/sources.md +36 -0
  28. package/plugins/olko-reflection/.claude-plugin/plugin.json +1 -1
  29. package/plugins/olko-release/.claude-plugin/plugin.json +1 -1
  30. package/plugins/olko-skill-meta/.claude-plugin/plugin.json +1 -1
  31. package/plugins/olko-web-ops/.claude-plugin/plugin.json +1 -1
  32. package/scripts/lib/catalog.mjs +1 -1
@@ -34,6 +34,7 @@ Available reusable prompt files:
34
34
  - product-builder: .github/prompts/product-builder.prompt.md
35
35
  - mvp-oneshot: .github/prompts/mvp-oneshot.prompt.md
36
36
  - ux-ui-audit-loop: .github/prompts/ux-ui-audit-loop.prompt.md
37
+ - frontend-direction: .github/prompts/frontend-direction.prompt.md
37
38
  - starter-rules: .github/prompts/starter-rules.prompt.md
38
39
  - viral-launch: .github/prompts/viral-launch.prompt.md
39
40
  - context-repo: .github/prompts/context-repo.prompt.md
@@ -0,0 +1,57 @@
1
+ <!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
2
+
3
+ ---
4
+ description: "Choose a distinctive, coherent visual direction and source-backed components before building a new frontend, page, or substantial UI redesign. Use for frontend implementation and requests to make an interface less generic; keep small fixes within the existing design."
5
+ ---
6
+
7
+ Use the olko:frontend-direction skill.
8
+
9
+ # Frontend direction
10
+
11
+ For Pi, Codex, Claude Code and Hermes, using the existing frontend stack. Use the host's available file, shell, browsing and image-inspection tools; no provider-specific tool names or plugins are required. Resolve bundled reference paths relative to this skill folder. Browsing and browser inspection improve source selection and visual verification; their absence must be reported, not disguised as verification.
12
+
13
+ Make a deliberate visual choice before writing interface code. Deliver a recognizable composition that serves this product's users, with components that belong together. Distinctiveness can come from typography, imagery, spatial hierarchy, content or interaction; it does not require animation or new dependencies.
14
+
15
+ ## Match the effort to the task
16
+
17
+ For a new page or substantial redesign, use the workflow below. For a small fix, reuse the established components and tokens and verify the affected state. Do not turn a spacing correction into a redesign or browse libraries on every turn. If another design skill supplies an approved direction, use it and perform the component selection here without repeating discovery.
18
+
19
+ Read the relevant application instructions, stack, existing components and visual conventions. Inspect the current screen when available. Infer the audience, primary action, content density and constraints from the task. Ask only when a missing decision materially changes the result; otherwise state the assumption and proceed within the user's authorization.
20
+
21
+ ## Choose the direction before the components
22
+
23
+ For an open-ended brief, consider two or three genuinely different compositions and choose the strongest fit. A color swap is not a different direction. A buyer comparing evidence may need an inspection workspace; a photographer may need an image-led editorial sequence. Avoid defaulting every product to a centered hero followed by identical cards.
24
+
25
+ Briefly state the choice and why it helps the primary task. Do not require approval unless the user requested a design checkpoint or the choice would change their scope or brand. Respect supplied designs and existing systems.
26
+
27
+ Define the visual anchors: layout and hierarchy, typography roles, palette, density, image treatment, and motion purpose. Reuse tokens where possible. Choose one or two signature treatments for emphasis, such as an annotated comparison rail or an editorial image sequence. Keep frequent controls familiar. Treat these as a default attention budget, not a prohibition on expressive briefs.
28
+
29
+ ## Select a coherent component set
30
+
31
+ Read [references/sources.md](references/sources.md) when external references would improve the result. If that file is not bundled with your copy of this skill, read the [published catalog](https://github.com/oleg-koval/agent-skills/blob/main/plugins/olko-product/skills/frontend-direction/references/sources.md) instead. The catalog is a starting point, not a required dependency list. Existing project components and a small custom implementation are valid choices.
32
+
33
+ Start with at most three relevant candidates. Expand only if none fits. Judge task fit, visual coherence, stack compatibility, accessibility, dependency cost and reuse terms. Do not rank novelty above usability or invent numeric scores that imply measurement.
34
+
35
+ Inspect the exact official component page and available source before copying or installing. Record the URL, intended adaptation, dependencies, and known license or paid-access boundary. Unknown terms mean do not copy that source until clarified; use existing primitives or an original implementation instead. A screenshot or a social recommendation does not verify source availability or accessibility. Inspect registry payloads and install commands before execution.
36
+
37
+ Prefer one primary component family per surface. Borrow an isolated interaction from another source only when it can share the same typography, spacing, radius, color and motion conventions. Never add a framework merely to use a decorative component. If browsing fails, label references unverified, use local primitives, and continue without claiming live checks.
38
+
39
+ Before substantial implementation, leave a compact decision record in the task's existing plan, or in the response if no plan exists:
40
+
41
+ | UI role | Chosen component or pattern | Source or local path | Why it fits | Adaptation and cost |
42
+ | --- | --- | --- | --- | --- |
43
+ | Primary comparison | Aligned comparison rows | Existing table primitive | Makes differences scanable | Shared column widths; no dependency |
44
+
45
+ Record the chosen direction and the most relevant rejected alternative with its reason. Reuse this decision on later turns; revisit only when evidence or requirements change. Do not create a new document for every small edit.
46
+
47
+ ## Build the composition, then inspect it
48
+
49
+ Implement one representative section with realistic content before repeating it across the page. Establish shared tokens, responsive behavior and meaningful hierarchy there. Keep the product's actual states, including loading, empty, error, long text and unknown data. Decorative charts and invented statistics are not a substitute for content.
50
+
51
+ Use motion to explain a transition or provide feedback. Preserve keyboard focus, semantics and immediate response; support reduced motion and interruption. Never hide essential content behind hover or animation.
52
+
53
+ Inspect the rendered screen at desktop and narrow mobile sizes when browser tools are available. Check the primary action, text hierarchy, contrast, keyboard use, overflow, long content and relevant failure states. Compare the result with the chosen direction: does its composition still express it, or did it collapse into repeated generic cards? Is the signature treatment useful and proportionate?
54
+
55
+ Make one focused correction pass for observed issues. Continue only for a specific unresolved defect, rather than redesigning indefinitely. Run the project's relevant checks. If visual inspection is unavailable, report that limit explicitly and distinguish code checks from visual acceptance.
56
+
57
+ Report the direction, components and sources selected, dependencies added, and what was actually verified. This skill does not authorize deployment, publication or purchases.
@@ -0,0 +1,56 @@
1
+ <!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
2
+
3
+ ---
4
+ inclusion: manual
5
+ description: "Choose a distinctive, coherent visual direction and source-backed components before building a new frontend, page, or substantial UI redesign. Use for frontend implementation and requests to make an interface less generic; keep small fixes within the existing design."
6
+ ---
7
+
8
+ # Frontend direction
9
+
10
+ For Pi, Codex, Claude Code and Hermes, using the existing frontend stack. Use the host's available file, shell, browsing and image-inspection tools; no provider-specific tool names or plugins are required. Resolve bundled reference paths relative to this skill folder. Browsing and browser inspection improve source selection and visual verification; their absence must be reported, not disguised as verification.
11
+
12
+ Make a deliberate visual choice before writing interface code. Deliver a recognizable composition that serves this product's users, with components that belong together. Distinctiveness can come from typography, imagery, spatial hierarchy, content or interaction; it does not require animation or new dependencies.
13
+
14
+ ## Match the effort to the task
15
+
16
+ For a new page or substantial redesign, use the workflow below. For a small fix, reuse the established components and tokens and verify the affected state. Do not turn a spacing correction into a redesign or browse libraries on every turn. If another design skill supplies an approved direction, use it and perform the component selection here without repeating discovery.
17
+
18
+ Read the relevant application instructions, stack, existing components and visual conventions. Inspect the current screen when available. Infer the audience, primary action, content density and constraints from the task. Ask only when a missing decision materially changes the result; otherwise state the assumption and proceed within the user's authorization.
19
+
20
+ ## Choose the direction before the components
21
+
22
+ For an open-ended brief, consider two or three genuinely different compositions and choose the strongest fit. A color swap is not a different direction. A buyer comparing evidence may need an inspection workspace; a photographer may need an image-led editorial sequence. Avoid defaulting every product to a centered hero followed by identical cards.
23
+
24
+ Briefly state the choice and why it helps the primary task. Do not require approval unless the user requested a design checkpoint or the choice would change their scope or brand. Respect supplied designs and existing systems.
25
+
26
+ Define the visual anchors: layout and hierarchy, typography roles, palette, density, image treatment, and motion purpose. Reuse tokens where possible. Choose one or two signature treatments for emphasis, such as an annotated comparison rail or an editorial image sequence. Keep frequent controls familiar. Treat these as a default attention budget, not a prohibition on expressive briefs.
27
+
28
+ ## Select a coherent component set
29
+
30
+ Read [references/sources.md](references/sources.md) when external references would improve the result. If that file is not bundled with your copy of this skill, read the [published catalog](https://github.com/oleg-koval/agent-skills/blob/main/plugins/olko-product/skills/frontend-direction/references/sources.md) instead. The catalog is a starting point, not a required dependency list. Existing project components and a small custom implementation are valid choices.
31
+
32
+ Start with at most three relevant candidates. Expand only if none fits. Judge task fit, visual coherence, stack compatibility, accessibility, dependency cost and reuse terms. Do not rank novelty above usability or invent numeric scores that imply measurement.
33
+
34
+ Inspect the exact official component page and available source before copying or installing. Record the URL, intended adaptation, dependencies, and known license or paid-access boundary. Unknown terms mean do not copy that source until clarified; use existing primitives or an original implementation instead. A screenshot or a social recommendation does not verify source availability or accessibility. Inspect registry payloads and install commands before execution.
35
+
36
+ Prefer one primary component family per surface. Borrow an isolated interaction from another source only when it can share the same typography, spacing, radius, color and motion conventions. Never add a framework merely to use a decorative component. If browsing fails, label references unverified, use local primitives, and continue without claiming live checks.
37
+
38
+ Before substantial implementation, leave a compact decision record in the task's existing plan, or in the response if no plan exists:
39
+
40
+ | UI role | Chosen component or pattern | Source or local path | Why it fits | Adaptation and cost |
41
+ | --- | --- | --- | --- | --- |
42
+ | Primary comparison | Aligned comparison rows | Existing table primitive | Makes differences scanable | Shared column widths; no dependency |
43
+
44
+ Record the chosen direction and the most relevant rejected alternative with its reason. Reuse this decision on later turns; revisit only when evidence or requirements change. Do not create a new document for every small edit.
45
+
46
+ ## Build the composition, then inspect it
47
+
48
+ Implement one representative section with realistic content before repeating it across the page. Establish shared tokens, responsive behavior and meaningful hierarchy there. Keep the product's actual states, including loading, empty, error, long text and unknown data. Decorative charts and invented statistics are not a substitute for content.
49
+
50
+ Use motion to explain a transition or provide feedback. Preserve keyboard focus, semantics and immediate response; support reduced motion and interruption. Never hide essential content behind hover or animation.
51
+
52
+ Inspect the rendered screen at desktop and narrow mobile sizes when browser tools are available. Check the primary action, text hierarchy, contrast, keyboard use, overflow, long content and relevant failure states. Compare the result with the chosen direction: does its composition still express it, or did it collapse into repeated generic cards? Is the signature treatment useful and proportionate?
53
+
54
+ Make one focused correction pass for observed issues. Continue only for a specific unresolved defect, rather than redesigning indefinitely. Run the project's relevant checks. If visual inspection is unavailable, report that limit explicitly and distinguish code checks from visual acceptance.
55
+
56
+ Report the direction, components and sources selected, dependencies added, and what was actually verified. This skill does not authorize deployment, publication or purchases.
@@ -0,0 +1,55 @@
1
+ <!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
2
+
3
+ ---
4
+ description: "Choose a distinctive, coherent visual direction and source-backed components before building a new frontend, page, or substantial UI redesign. Use for frontend implementation and requests to make an interface less generic; keep small fixes within the existing design."
5
+ ---
6
+
7
+ # Frontend direction
8
+
9
+ For Pi, Codex, Claude Code and Hermes, using the existing frontend stack. Use the host's available file, shell, browsing and image-inspection tools; no provider-specific tool names or plugins are required. Resolve bundled reference paths relative to this skill folder. Browsing and browser inspection improve source selection and visual verification; their absence must be reported, not disguised as verification.
10
+
11
+ Make a deliberate visual choice before writing interface code. Deliver a recognizable composition that serves this product's users, with components that belong together. Distinctiveness can come from typography, imagery, spatial hierarchy, content or interaction; it does not require animation or new dependencies.
12
+
13
+ ## Match the effort to the task
14
+
15
+ For a new page or substantial redesign, use the workflow below. For a small fix, reuse the established components and tokens and verify the affected state. Do not turn a spacing correction into a redesign or browse libraries on every turn. If another design skill supplies an approved direction, use it and perform the component selection here without repeating discovery.
16
+
17
+ Read the relevant application instructions, stack, existing components and visual conventions. Inspect the current screen when available. Infer the audience, primary action, content density and constraints from the task. Ask only when a missing decision materially changes the result; otherwise state the assumption and proceed within the user's authorization.
18
+
19
+ ## Choose the direction before the components
20
+
21
+ For an open-ended brief, consider two or three genuinely different compositions and choose the strongest fit. A color swap is not a different direction. A buyer comparing evidence may need an inspection workspace; a photographer may need an image-led editorial sequence. Avoid defaulting every product to a centered hero followed by identical cards.
22
+
23
+ Briefly state the choice and why it helps the primary task. Do not require approval unless the user requested a design checkpoint or the choice would change their scope or brand. Respect supplied designs and existing systems.
24
+
25
+ Define the visual anchors: layout and hierarchy, typography roles, palette, density, image treatment, and motion purpose. Reuse tokens where possible. Choose one or two signature treatments for emphasis, such as an annotated comparison rail or an editorial image sequence. Keep frequent controls familiar. Treat these as a default attention budget, not a prohibition on expressive briefs.
26
+
27
+ ## Select a coherent component set
28
+
29
+ Read [references/sources.md](references/sources.md) when external references would improve the result. If that file is not bundled with your copy of this skill, read the [published catalog](https://github.com/oleg-koval/agent-skills/blob/main/plugins/olko-product/skills/frontend-direction/references/sources.md) instead. The catalog is a starting point, not a required dependency list. Existing project components and a small custom implementation are valid choices.
30
+
31
+ Start with at most three relevant candidates. Expand only if none fits. Judge task fit, visual coherence, stack compatibility, accessibility, dependency cost and reuse terms. Do not rank novelty above usability or invent numeric scores that imply measurement.
32
+
33
+ Inspect the exact official component page and available source before copying or installing. Record the URL, intended adaptation, dependencies, and known license or paid-access boundary. Unknown terms mean do not copy that source until clarified; use existing primitives or an original implementation instead. A screenshot or a social recommendation does not verify source availability or accessibility. Inspect registry payloads and install commands before execution.
34
+
35
+ Prefer one primary component family per surface. Borrow an isolated interaction from another source only when it can share the same typography, spacing, radius, color and motion conventions. Never add a framework merely to use a decorative component. If browsing fails, label references unverified, use local primitives, and continue without claiming live checks.
36
+
37
+ Before substantial implementation, leave a compact decision record in the task's existing plan, or in the response if no plan exists:
38
+
39
+ | UI role | Chosen component or pattern | Source or local path | Why it fits | Adaptation and cost |
40
+ | --- | --- | --- | --- | --- |
41
+ | Primary comparison | Aligned comparison rows | Existing table primitive | Makes differences scanable | Shared column widths; no dependency |
42
+
43
+ Record the chosen direction and the most relevant rejected alternative with its reason. Reuse this decision on later turns; revisit only when evidence or requirements change. Do not create a new document for every small edit.
44
+
45
+ ## Build the composition, then inspect it
46
+
47
+ Implement one representative section with realistic content before repeating it across the page. Establish shared tokens, responsive behavior and meaningful hierarchy there. Keep the product's actual states, including loading, empty, error, long text and unknown data. Decorative charts and invented statistics are not a substitute for content.
48
+
49
+ Use motion to explain a transition or provide feedback. Preserve keyboard focus, semantics and immediate response; support reduced motion and interruption. Never hide essential content behind hover or animation.
50
+
51
+ Inspect the rendered screen at desktop and narrow mobile sizes when browser tools are available. Check the primary action, text hierarchy, contrast, keyboard use, overflow, long content and relevant failure states. Compare the result with the chosen direction: does its composition still express it, or did it collapse into repeated generic cards? Is the signature treatment useful and proportionate?
52
+
53
+ Make one focused correction pass for observed issues. Continue only for a specific unresolved defect, rather than redesigning indefinitely. Run the project's relevant checks. If visual inspection is unavailable, report that limit explicitly and distinguish code checks from visual acceptance.
54
+
55
+ Report the direction, components and sources selected, dependencies added, and what was actually verified. This skill does not authorize deployment, publication or purchases.
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  <p><strong>Agent-agnostic skill catalog for Codex, Claude, Cursor, Grok, Copilot, Windsurf, Kiro, Hermes Agent, and other skill-aware tools.</strong></p>
4
4
  <p>
5
5
  <img src="https://img.shields.io/badge/license-MIT-16a34a" alt="MIT license">
6
- <img src="https://img.shields.io/badge/skills-55-2563eb" alt="55 skills">
6
+ <img src="https://img.shields.io/badge/skills-56-2563eb" alt="56 skills">
7
7
  <img src="https://img.shields.io/badge/platforms-Codex%20%7C%20Claude%20%7C%20Cursor%20%7C%20Grok%20%7C%20Copilot%20%7C%20Windsurf%20%7C%20Kiro%20%7C%20Hermes-111827" alt="Codex Claude Cursor Grok Copilot Windsurf Kiro Hermes">
8
8
  <img src="https://img.shields.io/badge/status-public%20catalog-16a34a" alt="Public catalog">
9
9
  </p>
@@ -135,7 +135,7 @@ cd agent-skills
135
135
  ./scripts/install-hermes-symlinks.sh
136
136
  ```
137
137
 
138
- The installer links all 55 canonical skill packages under
138
+ The installer links all 56 canonical skill packages under
139
139
  `${HERMES_HOME:-$HOME/.hermes}/skills/olko-agent-skills/`. It leaves existing paths untouched and
140
140
  fails on a collision. It reports obsolete catalog-owned links without removing them; after
141
141
  reviewing those links, run `./scripts/install-hermes-symlinks.sh --prune` to remove them.
@@ -264,7 +264,7 @@ Ship a release: semantic-release setup, changelogs, store listing copy, release-
264
264
  | [changelog-generator](plugins/olko-release/skills/changelog-generator/SKILL.md) | Transforms git commits into polished user-facing changelogs by categorising changes and rewriting technical commit messages | Preparing release notes, a CHANGELOG entry, or "what changed since the last release"; for setting up the release pipeline itself use semantic-release-beta |
265
265
  | [store-listing-copy](plugins/olko-release/skills/store-listing-copy/SKILL.md) | Generates platform-validated App Store, Google Play, and Connect IQ store listing copy (title, subtitle, description, what's new, keywords) from a git changelog | Writing store copy before submitting to apple-store-submit or the garmin-watchface store workflow |
266
266
 
267
- ### olko-product (5)
267
+ ### olko-product (6)
268
268
 
269
269
  Take a product idea to a shippable build: MVP passes, full-stack scaffolds, UX/UI quality loops, launch plans.
270
270
 
@@ -273,6 +273,7 @@ Take a product idea to a shippable build: MVP passes, full-stack scaffolds, UX/U
273
273
  | [product-builder](plugins/olko-product/skills/product-builder/SKILL.md) | Builds a full-stack web app or SaaS product from a user description using production-oriented defaults | Building a complete app, SaaS, dashboard, or product rather than a prototype |
274
274
  | [mvp-oneshot](plugins/olko-product/skills/mvp-oneshot/SKILL.md) | Takes a rough product idea and produces a scoped, testable MVP plan and initial implementation in a single pass | Going from idea to a shippable one-week MVP without losing scope |
275
275
  | [ux-ui-audit-loop](plugins/olko-product/skills/ux-ui-audit-loop/SKILL.md) | Audits and improves a web UI through browser evidence, severity triage, minimal fixes, and before/after verification | The user says "audit this UI", "fix the UX", "review this page visually", "make this page polished", or asks for an autonomous screenshot-and-fix loop |
276
+ | [frontend-direction](plugins/olko-product/skills/frontend-direction/SKILL.md) | Chooses a distinctive, coherent visual direction and source-backed components before writing frontend code | Building a new page or a substantial UI redesign, or making an interface less generic; small fixes keep the existing design |
276
277
  | [starter-rules](plugins/olko-product/skills/starter-rules/SKILL.md) | Loads and enforces hard rules for every oleg-koval/* starter | Ensuring 300-line files, E2E tests, pre-commit hooks, Vertical Slice architecture, and KISS/DRY/SOLID |
277
278
  | [viral-launch](plugins/olko-product/skills/viral-launch/SKILL.md) | Sets up a project repository and launch plan for shareable marketing, public launch readiness, and growth loops | Preparing a repo, product, or package for public launch ("prep for Product Hunt", "write the launch post", "make this shareable"); for building the thing itself use mvp-oneshot or product-builder |
278
279
 
@@ -511,8 +512,8 @@ Never edit one by hand: CI regenerates and fails on any difference.
511
512
  The maintained `scripts/install-hermes-symlinks.sh` makes the Hermes pointers usable by its skills loader.
512
513
 
513
514
  Coverage is per skill, not uniform. Each skill's `adapters` array in `catalog/skills.json`
514
- decides which targets it ships to, so the file counts differ per target: Claude 55, Grok 53,
515
- Cursor 51, Copilot 51, Codex 49, Windsurf 40, Kiro 40, Pi 2, Hermes 55. A skill is absent from a
515
+ decides which targets it ships to, so the file counts differ per target: Claude 56, Grok 54,
516
+ Cursor 52, Copilot 52, Codex 50, Windsurf 41, Kiro 41, Pi 3, Hermes 56. A skill is absent from a
516
517
  target's tree when its catalog entry does not list that target.
517
518
 
518
519
  ## Local validation
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: frontend-direction
3
+ description: Choose a distinctive, coherent visual direction and source-backed components before building a new frontend, page, or substantial UI redesign. Use for frontend implementation and requests to make an interface less generic; keep small fixes within the existing design.
4
+ license: MIT
5
+ metadata:
6
+ author: Oleg Koval
7
+ tags: frontend, design, components, art-direction
8
+ ---
9
+ <!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
10
+
11
+ # Frontend direction
12
+
13
+ For Pi, Codex, Claude Code and Hermes, using the existing frontend stack. Use the host's available file, shell, browsing and image-inspection tools; no provider-specific tool names or plugins are required. Resolve bundled reference paths relative to this skill folder. Browsing and browser inspection improve source selection and visual verification; their absence must be reported, not disguised as verification.
14
+
15
+ Make a deliberate visual choice before writing interface code. Deliver a recognizable composition that serves this product's users, with components that belong together. Distinctiveness can come from typography, imagery, spatial hierarchy, content or interaction; it does not require animation or new dependencies.
16
+
17
+ ## Match the effort to the task
18
+
19
+ For a new page or substantial redesign, use the workflow below. For a small fix, reuse the established components and tokens and verify the affected state. Do not turn a spacing correction into a redesign or browse libraries on every turn. If another design skill supplies an approved direction, use it and perform the component selection here without repeating discovery.
20
+
21
+ Read the relevant application instructions, stack, existing components and visual conventions. Inspect the current screen when available. Infer the audience, primary action, content density and constraints from the task. Ask only when a missing decision materially changes the result; otherwise state the assumption and proceed within the user's authorization.
22
+
23
+ ## Choose the direction before the components
24
+
25
+ For an open-ended brief, consider two or three genuinely different compositions and choose the strongest fit. A color swap is not a different direction. A buyer comparing evidence may need an inspection workspace; a photographer may need an image-led editorial sequence. Avoid defaulting every product to a centered hero followed by identical cards.
26
+
27
+ Briefly state the choice and why it helps the primary task. Do not require approval unless the user requested a design checkpoint or the choice would change their scope or brand. Respect supplied designs and existing systems.
28
+
29
+ Define the visual anchors: layout and hierarchy, typography roles, palette, density, image treatment, and motion purpose. Reuse tokens where possible. Choose one or two signature treatments for emphasis, such as an annotated comparison rail or an editorial image sequence. Keep frequent controls familiar. Treat these as a default attention budget, not a prohibition on expressive briefs.
30
+
31
+ ## Select a coherent component set
32
+
33
+ Read [references/sources.md](references/sources.md) when external references would improve the result. If that file is not bundled with your copy of this skill, read the [published catalog](https://github.com/oleg-koval/agent-skills/blob/main/plugins/olko-product/skills/frontend-direction/references/sources.md) instead. The catalog is a starting point, not a required dependency list. Existing project components and a small custom implementation are valid choices.
34
+
35
+ Start with at most three relevant candidates. Expand only if none fits. Judge task fit, visual coherence, stack compatibility, accessibility, dependency cost and reuse terms. Do not rank novelty above usability or invent numeric scores that imply measurement.
36
+
37
+ Inspect the exact official component page and available source before copying or installing. Record the URL, intended adaptation, dependencies, and known license or paid-access boundary. Unknown terms mean do not copy that source until clarified; use existing primitives or an original implementation instead. A screenshot or a social recommendation does not verify source availability or accessibility. Inspect registry payloads and install commands before execution.
38
+
39
+ Prefer one primary component family per surface. Borrow an isolated interaction from another source only when it can share the same typography, spacing, radius, color and motion conventions. Never add a framework merely to use a decorative component. If browsing fails, label references unverified, use local primitives, and continue without claiming live checks.
40
+
41
+ Before substantial implementation, leave a compact decision record in the task's existing plan, or in the response if no plan exists:
42
+
43
+ | UI role | Chosen component or pattern | Source or local path | Why it fits | Adaptation and cost |
44
+ | --- | --- | --- | --- | --- |
45
+ | Primary comparison | Aligned comparison rows | Existing table primitive | Makes differences scanable | Shared column widths; no dependency |
46
+
47
+ Record the chosen direction and the most relevant rejected alternative with its reason. Reuse this decision on later turns; revisit only when evidence or requirements change. Do not create a new document for every small edit.
48
+
49
+ ## Build the composition, then inspect it
50
+
51
+ Implement one representative section with realistic content before repeating it across the page. Establish shared tokens, responsive behavior and meaningful hierarchy there. Keep the product's actual states, including loading, empty, error, long text and unknown data. Decorative charts and invented statistics are not a substitute for content.
52
+
53
+ Use motion to explain a transition or provide feedback. Preserve keyboard focus, semantics and immediate response; support reduced motion and interruption. Never hide essential content behind hover or animation.
54
+
55
+ Inspect the rendered screen at desktop and narrow mobile sizes when browser tools are available. Check the primary action, text hierarchy, contrast, keyboard use, overflow, long content and relevant failure states. Compare the result with the chosen direction: does its composition still express it, or did it collapse into repeated generic cards? Is the signature treatment useful and proportionate?
56
+
57
+ Make one focused correction pass for observed issues. Continue only for a specific unresolved defect, rather than redesigning indefinitely. Run the project's relevant checks. If visual inspection is unavailable, report that limit explicitly and distinguish code checks from visual acceptance.
58
+
59
+ Report the direction, components and sources selected, dependencies added, and what was actually verified. This skill does not authorize deployment, publication or purchases.
@@ -0,0 +1,36 @@
1
+ # Component discovery sources
2
+
3
+ Seed: [Nero's resource post](https://x.com/neropursue/status/2109514246853677192), retrieved on 2026-10-12 through [FxTwitter](https://api.fxtwitter.com/status/2109514246853677192) after X returned 403. The categories below describe discovery uses, not guarantees about current features, compatibility, accessibility, pricing or licenses. Check the exact source before adoption.
4
+
5
+ | Source | Start here when exploring |
6
+ | --- | --- |
7
+ | [Affect UI](https://affectui.com) | General visual component references |
8
+ | [Kobra](https://kobra.systems) | Controls, navigation and product interactions |
9
+ | [Arc UI](https://uiarc.dev) | UI composition and component ideas |
10
+ | [EvilCharts](https://evilcharts.com) | Charts for real quantitative questions |
11
+ | [Transitions.dev](https://transitions.dev) | State transitions and motion recipes |
12
+ | [beUI](https://beui.dev) | Animated React component candidates |
13
+ | [BoardUI](https://www.boardui.com) | Dashboard component candidates |
14
+
15
+ The official Kobra, Transitions.dev and beUI sites were accessible during this skill's creation. The other entries are retained as discovery links from the post, not independently verified endorsements. No upstream component source or recipe is bundled here.
16
+
17
+ For each selected candidate, inspect its exact documentation and source, not only its homepage. Verify framework/version requirements, dependencies, responsive states, keyboard behavior, reduced-motion handling where relevant, and reuse terms. Paid sections and free sections may have different conditions.
18
+
19
+ Use the source that answers the task. A native HTML app can implement an original CSS interaction; a chart library is unnecessary when a comparison table is clearer. If no candidate fits, retain local components and derive distinctiveness from composition, content and typography.
20
+
21
+ Seed: [Aman Singh's resource post](https://x.com/amananimates/status/2111848675811225980?s=46), retrieved on 2026-10-19 through [FxTwitter](https://api.fxtwitter.com/status/2111848675811225980) after X returned 403. The categories below describe discovery uses, not guarantees about current features, compatibility, accessibility, pricing or licenses. Check the exact source before adoption.
22
+
23
+ | Source | Start here when exploring |
24
+ | --- | --- |
25
+ | [Scrolltide](https://scrolltide.co) | Prompts and source-code resources for interface design |
26
+ | [Mobbin](https://mobbin.com) | Real-world UI patterns from iOS and Android apps |
27
+ | [Fontshare](https://fontshare.com) | Free, high-quality fonts for commercial use |
28
+ | [Coolors](https://coolors.co) | Fast color scheme generation and exploration |
29
+ | [Spline](https://spline.design) | Interactive 3D design and web publishing |
30
+ | [LottieFiles](https://lottiefiles.com) | Lottie animations for web and mobile |
31
+ | [Three.js Journey](https://threejs-journey.com) | Step-by-step Three.js tutorials and examples |
32
+ | [3Dicons](https://3dicons.co) | Free 3D icons for websites and applications |
33
+
34
+ For each selected candidate, inspect its exact documentation and source, not only its homepage. Verify framework/version requirements, dependencies, responsive states, keyboard behavior, reduced-motion handling where relevant, and reuse terms. Paid sections and free sections may have different conditions.
35
+
36
+ Use the source that answers the task. A native HTML app can implement an original CSS interaction; a chart library is unnecessary when a comparison table is clearer. If no candidate fits, retain local components and derive distinctiveness from composition, content and typography.
@@ -7,5 +7,6 @@ Use the canonical skills directly:
7
7
  - `plugins/olko-product/skills/product-builder/SKILL.md`
8
8
  - `plugins/olko-product/skills/mvp-oneshot/SKILL.md`
9
9
  - `plugins/olko-product/skills/ux-ui-audit-loop/SKILL.md`
10
+ - `plugins/olko-product/skills/frontend-direction/SKILL.md`
10
11
  - `plugins/olko-product/skills/starter-rules/SKILL.md`
11
12
  - `plugins/olko-product/skills/viral-launch/SKILL.md`
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: frontend-direction
3
+ description: Choose a distinctive, coherent visual direction and source-backed components before building a new frontend, page, or substantial UI redesign. Use for frontend implementation and requests to make an interface less generic; keep small fixes within the existing design.
4
+ license: MIT
5
+ metadata:
6
+ author: Oleg Koval
7
+ tags: frontend, design, components, art-direction
8
+ ---
9
+ <!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
10
+
11
+ # Frontend direction
12
+
13
+ For Pi, Codex, Claude Code and Hermes, using the existing frontend stack. Use the host's available file, shell, browsing and image-inspection tools; no provider-specific tool names or plugins are required. Resolve bundled reference paths relative to this skill folder. Browsing and browser inspection improve source selection and visual verification; their absence must be reported, not disguised as verification.
14
+
15
+ Make a deliberate visual choice before writing interface code. Deliver a recognizable composition that serves this product's users, with components that belong together. Distinctiveness can come from typography, imagery, spatial hierarchy, content or interaction; it does not require animation or new dependencies.
16
+
17
+ ## Match the effort to the task
18
+
19
+ For a new page or substantial redesign, use the workflow below. For a small fix, reuse the established components and tokens and verify the affected state. Do not turn a spacing correction into a redesign or browse libraries on every turn. If another design skill supplies an approved direction, use it and perform the component selection here without repeating discovery.
20
+
21
+ Read the relevant application instructions, stack, existing components and visual conventions. Inspect the current screen when available. Infer the audience, primary action, content density and constraints from the task. Ask only when a missing decision materially changes the result; otherwise state the assumption and proceed within the user's authorization.
22
+
23
+ ## Choose the direction before the components
24
+
25
+ For an open-ended brief, consider two or three genuinely different compositions and choose the strongest fit. A color swap is not a different direction. A buyer comparing evidence may need an inspection workspace; a photographer may need an image-led editorial sequence. Avoid defaulting every product to a centered hero followed by identical cards.
26
+
27
+ Briefly state the choice and why it helps the primary task. Do not require approval unless the user requested a design checkpoint or the choice would change their scope or brand. Respect supplied designs and existing systems.
28
+
29
+ Define the visual anchors: layout and hierarchy, typography roles, palette, density, image treatment, and motion purpose. Reuse tokens where possible. Choose one or two signature treatments for emphasis, such as an annotated comparison rail or an editorial image sequence. Keep frequent controls familiar. Treat these as a default attention budget, not a prohibition on expressive briefs.
30
+
31
+ ## Select a coherent component set
32
+
33
+ Read [references/sources.md](references/sources.md) when external references would improve the result. If that file is not bundled with your copy of this skill, read the [published catalog](https://github.com/oleg-koval/agent-skills/blob/main/plugins/olko-product/skills/frontend-direction/references/sources.md) instead. The catalog is a starting point, not a required dependency list. Existing project components and a small custom implementation are valid choices.
34
+
35
+ Start with at most three relevant candidates. Expand only if none fits. Judge task fit, visual coherence, stack compatibility, accessibility, dependency cost and reuse terms. Do not rank novelty above usability or invent numeric scores that imply measurement.
36
+
37
+ Inspect the exact official component page and available source before copying or installing. Record the URL, intended adaptation, dependencies, and known license or paid-access boundary. Unknown terms mean do not copy that source until clarified; use existing primitives or an original implementation instead. A screenshot or a social recommendation does not verify source availability or accessibility. Inspect registry payloads and install commands before execution.
38
+
39
+ Prefer one primary component family per surface. Borrow an isolated interaction from another source only when it can share the same typography, spacing, radius, color and motion conventions. Never add a framework merely to use a decorative component. If browsing fails, label references unverified, use local primitives, and continue without claiming live checks.
40
+
41
+ Before substantial implementation, leave a compact decision record in the task's existing plan, or in the response if no plan exists:
42
+
43
+ | UI role | Chosen component or pattern | Source or local path | Why it fits | Adaptation and cost |
44
+ | --- | --- | --- | --- | --- |
45
+ | Primary comparison | Aligned comparison rows | Existing table primitive | Makes differences scanable | Shared column widths; no dependency |
46
+
47
+ Record the chosen direction and the most relevant rejected alternative with its reason. Reuse this decision on later turns; revisit only when evidence or requirements change. Do not create a new document for every small edit.
48
+
49
+ ## Build the composition, then inspect it
50
+
51
+ Implement one representative section with realistic content before repeating it across the page. Establish shared tokens, responsive behavior and meaningful hierarchy there. Keep the product's actual states, including loading, empty, error, long text and unknown data. Decorative charts and invented statistics are not a substitute for content.
52
+
53
+ Use motion to explain a transition or provide feedback. Preserve keyboard focus, semantics and immediate response; support reduced motion and interruption. Never hide essential content behind hover or animation.
54
+
55
+ Inspect the rendered screen at desktop and narrow mobile sizes when browser tools are available. Check the primary action, text hierarchy, contrast, keyboard use, overflow, long content and relevant failure states. Compare the result with the chosen direction: does its composition still express it, or did it collapse into repeated generic cards? Is the signature treatment useful and proportionate?
56
+
57
+ Make one focused correction pass for observed issues. Continue only for a specific unresolved defect, rather than redesigning indefinitely. Run the project's relevant checks. If visual inspection is unavailable, report that limit explicitly and distinguish code checks from visual acceptance.
58
+
59
+ Report the direction, components and sources selected, dependencies added, and what was actually verified. This skill does not authorize deployment, publication or purchases.
@@ -0,0 +1,36 @@
1
+ # Component discovery sources
2
+
3
+ Seed: [Nero's resource post](https://x.com/neropursue/status/2109514246853677192), retrieved on 2026-10-12 through [FxTwitter](https://api.fxtwitter.com/status/2109514246853677192) after X returned 403. The categories below describe discovery uses, not guarantees about current features, compatibility, accessibility, pricing or licenses. Check the exact source before adoption.
4
+
5
+ | Source | Start here when exploring |
6
+ | --- | --- |
7
+ | [Affect UI](https://affectui.com) | General visual component references |
8
+ | [Kobra](https://kobra.systems) | Controls, navigation and product interactions |
9
+ | [Arc UI](https://uiarc.dev) | UI composition and component ideas |
10
+ | [EvilCharts](https://evilcharts.com) | Charts for real quantitative questions |
11
+ | [Transitions.dev](https://transitions.dev) | State transitions and motion recipes |
12
+ | [beUI](https://beui.dev) | Animated React component candidates |
13
+ | [BoardUI](https://www.boardui.com) | Dashboard component candidates |
14
+
15
+ The official Kobra, Transitions.dev and beUI sites were accessible during this skill's creation. The other entries are retained as discovery links from the post, not independently verified endorsements. No upstream component source or recipe is bundled here.
16
+
17
+ For each selected candidate, inspect its exact documentation and source, not only its homepage. Verify framework/version requirements, dependencies, responsive states, keyboard behavior, reduced-motion handling where relevant, and reuse terms. Paid sections and free sections may have different conditions.
18
+
19
+ Use the source that answers the task. A native HTML app can implement an original CSS interaction; a chart library is unnecessary when a comparison table is clearer. If no candidate fits, retain local components and derive distinctiveness from composition, content and typography.
20
+
21
+ Seed: [Aman Singh's resource post](https://x.com/amananimates/status/2111848675811225980?s=46), retrieved on 2026-10-19 through [FxTwitter](https://api.fxtwitter.com/status/2111848675811225980) after X returned 403. The categories below describe discovery uses, not guarantees about current features, compatibility, accessibility, pricing or licenses. Check the exact source before adoption.
22
+
23
+ | Source | Start here when exploring |
24
+ | --- | --- |
25
+ | [Scrolltide](https://scrolltide.co) | Prompts and source-code resources for interface design |
26
+ | [Mobbin](https://mobbin.com) | Real-world UI patterns from iOS and Android apps |
27
+ | [Fontshare](https://fontshare.com) | Free, high-quality fonts for commercial use |
28
+ | [Coolors](https://coolors.co) | Fast color scheme generation and exploration |
29
+ | [Spline](https://spline.design) | Interactive 3D design and web publishing |
30
+ | [LottieFiles](https://lottiefiles.com) | Lottie animations for web and mobile |
31
+ | [Three.js Journey](https://threejs-journey.com) | Step-by-step Three.js tutorials and examples |
32
+ | [3Dicons](https://3dicons.co) | Free 3D icons for websites and applications |
33
+
34
+ For each selected candidate, inspect its exact documentation and source, not only its homepage. Verify framework/version requirements, dependencies, responsive states, keyboard behavior, reduced-motion handling where relevant, and reuse terms. Paid sections and free sections may have different conditions.
35
+
36
+ Use the source that answers the task. A native HTML app can implement an original CSS interaction; a chart library is unnecessary when a comparison table is clearer. If no candidate fits, retain local components and derive distinctiveness from composition, content and typography.
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: frontend-direction
3
+ description: Choose a distinctive, coherent visual direction and source-backed components before building a new frontend, page, or substantial UI redesign. Use for frontend implementation and requests to make an interface less generic; keep small fixes within the existing design.
4
+ license: MIT
5
+ metadata:
6
+ author: Oleg Koval
7
+ tags: frontend, design, components, art-direction
8
+ ---
9
+ <!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
10
+
11
+ # Frontend direction
12
+
13
+ For Pi, Codex, Claude Code and Hermes, using the existing frontend stack. Use the host's available file, shell, browsing and image-inspection tools; no provider-specific tool names or plugins are required. Resolve bundled reference paths relative to this skill folder. Browsing and browser inspection improve source selection and visual verification; their absence must be reported, not disguised as verification.
14
+
15
+ Make a deliberate visual choice before writing interface code. Deliver a recognizable composition that serves this product's users, with components that belong together. Distinctiveness can come from typography, imagery, spatial hierarchy, content or interaction; it does not require animation or new dependencies.
16
+
17
+ ## Match the effort to the task
18
+
19
+ For a new page or substantial redesign, use the workflow below. For a small fix, reuse the established components and tokens and verify the affected state. Do not turn a spacing correction into a redesign or browse libraries on every turn. If another design skill supplies an approved direction, use it and perform the component selection here without repeating discovery.
20
+
21
+ Read the relevant application instructions, stack, existing components and visual conventions. Inspect the current screen when available. Infer the audience, primary action, content density and constraints from the task. Ask only when a missing decision materially changes the result; otherwise state the assumption and proceed within the user's authorization.
22
+
23
+ ## Choose the direction before the components
24
+
25
+ For an open-ended brief, consider two or three genuinely different compositions and choose the strongest fit. A color swap is not a different direction. A buyer comparing evidence may need an inspection workspace; a photographer may need an image-led editorial sequence. Avoid defaulting every product to a centered hero followed by identical cards.
26
+
27
+ Briefly state the choice and why it helps the primary task. Do not require approval unless the user requested a design checkpoint or the choice would change their scope or brand. Respect supplied designs and existing systems.
28
+
29
+ Define the visual anchors: layout and hierarchy, typography roles, palette, density, image treatment, and motion purpose. Reuse tokens where possible. Choose one or two signature treatments for emphasis, such as an annotated comparison rail or an editorial image sequence. Keep frequent controls familiar. Treat these as a default attention budget, not a prohibition on expressive briefs.
30
+
31
+ ## Select a coherent component set
32
+
33
+ Read [references/sources.md](references/sources.md) when external references would improve the result. If that file is not bundled with your copy of this skill, read the [published catalog](https://github.com/oleg-koval/agent-skills/blob/main/plugins/olko-product/skills/frontend-direction/references/sources.md) instead. The catalog is a starting point, not a required dependency list. Existing project components and a small custom implementation are valid choices.
34
+
35
+ Start with at most three relevant candidates. Expand only if none fits. Judge task fit, visual coherence, stack compatibility, accessibility, dependency cost and reuse terms. Do not rank novelty above usability or invent numeric scores that imply measurement.
36
+
37
+ Inspect the exact official component page and available source before copying or installing. Record the URL, intended adaptation, dependencies, and known license or paid-access boundary. Unknown terms mean do not copy that source until clarified; use existing primitives or an original implementation instead. A screenshot or a social recommendation does not verify source availability or accessibility. Inspect registry payloads and install commands before execution.
38
+
39
+ Prefer one primary component family per surface. Borrow an isolated interaction from another source only when it can share the same typography, spacing, radius, color and motion conventions. Never add a framework merely to use a decorative component. If browsing fails, label references unverified, use local primitives, and continue without claiming live checks.
40
+
41
+ Before substantial implementation, leave a compact decision record in the task's existing plan, or in the response if no plan exists:
42
+
43
+ | UI role | Chosen component or pattern | Source or local path | Why it fits | Adaptation and cost |
44
+ | --- | --- | --- | --- | --- |
45
+ | Primary comparison | Aligned comparison rows | Existing table primitive | Makes differences scanable | Shared column widths; no dependency |
46
+
47
+ Record the chosen direction and the most relevant rejected alternative with its reason. Reuse this decision on later turns; revisit only when evidence or requirements change. Do not create a new document for every small edit.
48
+
49
+ ## Build the composition, then inspect it
50
+
51
+ Implement one representative section with realistic content before repeating it across the page. Establish shared tokens, responsive behavior and meaningful hierarchy there. Keep the product's actual states, including loading, empty, error, long text and unknown data. Decorative charts and invented statistics are not a substitute for content.
52
+
53
+ Use motion to explain a transition or provide feedback. Preserve keyboard focus, semantics and immediate response; support reduced motion and interruption. Never hide essential content behind hover or animation.
54
+
55
+ Inspect the rendered screen at desktop and narrow mobile sizes when browser tools are available. Check the primary action, text hierarchy, contrast, keyboard use, overflow, long content and relevant failure states. Compare the result with the chosen direction: does its composition still express it, or did it collapse into repeated generic cards? Is the signature treatment useful and proportionate?
56
+
57
+ Make one focused correction pass for observed issues. Continue only for a specific unresolved defect, rather than redesigning indefinitely. Run the project's relevant checks. If visual inspection is unavailable, report that limit explicitly and distinguish code checks from visual acceptance.
58
+
59
+ Report the direction, components and sources selected, dependencies added, and what was actually verified. This skill does not authorize deployment, publication or purchases.
@@ -0,0 +1,36 @@
1
+ # Component discovery sources
2
+
3
+ Seed: [Nero's resource post](https://x.com/neropursue/status/2109514246853677192), retrieved on 2026-10-12 through [FxTwitter](https://api.fxtwitter.com/status/2109514246853677192) after X returned 403. The categories below describe discovery uses, not guarantees about current features, compatibility, accessibility, pricing or licenses. Check the exact source before adoption.
4
+
5
+ | Source | Start here when exploring |
6
+ | --- | --- |
7
+ | [Affect UI](https://affectui.com) | General visual component references |
8
+ | [Kobra](https://kobra.systems) | Controls, navigation and product interactions |
9
+ | [Arc UI](https://uiarc.dev) | UI composition and component ideas |
10
+ | [EvilCharts](https://evilcharts.com) | Charts for real quantitative questions |
11
+ | [Transitions.dev](https://transitions.dev) | State transitions and motion recipes |
12
+ | [beUI](https://beui.dev) | Animated React component candidates |
13
+ | [BoardUI](https://www.boardui.com) | Dashboard component candidates |
14
+
15
+ The official Kobra, Transitions.dev and beUI sites were accessible during this skill's creation. The other entries are retained as discovery links from the post, not independently verified endorsements. No upstream component source or recipe is bundled here.
16
+
17
+ For each selected candidate, inspect its exact documentation and source, not only its homepage. Verify framework/version requirements, dependencies, responsive states, keyboard behavior, reduced-motion handling where relevant, and reuse terms. Paid sections and free sections may have different conditions.
18
+
19
+ Use the source that answers the task. A native HTML app can implement an original CSS interaction; a chart library is unnecessary when a comparison table is clearer. If no candidate fits, retain local components and derive distinctiveness from composition, content and typography.
20
+
21
+ Seed: [Aman Singh's resource post](https://x.com/amananimates/status/2111848675811225980?s=46), retrieved on 2026-10-19 through [FxTwitter](https://api.fxtwitter.com/status/2111848675811225980) after X returned 403. The categories below describe discovery uses, not guarantees about current features, compatibility, accessibility, pricing or licenses. Check the exact source before adoption.
22
+
23
+ | Source | Start here when exploring |
24
+ | --- | --- |
25
+ | [Scrolltide](https://scrolltide.co) | Prompts and source-code resources for interface design |
26
+ | [Mobbin](https://mobbin.com) | Real-world UI patterns from iOS and Android apps |
27
+ | [Fontshare](https://fontshare.com) | Free, high-quality fonts for commercial use |
28
+ | [Coolors](https://coolors.co) | Fast color scheme generation and exploration |
29
+ | [Spline](https://spline.design) | Interactive 3D design and web publishing |
30
+ | [LottieFiles](https://lottiefiles.com) | Lottie animations for web and mobile |
31
+ | [Three.js Journey](https://threejs-journey.com) | Step-by-step Three.js tutorials and examples |
32
+ | [3Dicons](https://3dicons.co) | Free 3D icons for websites and applications |
33
+
34
+ For each selected candidate, inspect its exact documentation and source, not only its homepage. Verify framework/version requirements, dependencies, responsive states, keyboard behavior, reduced-motion handling where relevant, and reuse terms. Paid sections and free sections may have different conditions.
35
+
36
+ Use the source that answers the task. A native HTML app can implement an original CSS interaction; a chart library is unnecessary when a comparison table is clearer. If no candidate fits, retain local components and derive distinctiveness from composition, content and typography.
@@ -8,5 +8,6 @@ into the active Hermes profile. The canonical packages are:
8
8
  - `plugins/olko-product/skills/product-builder/SKILL.md`
9
9
  - `plugins/olko-product/skills/mvp-oneshot/SKILL.md`
10
10
  - `plugins/olko-product/skills/ux-ui-audit-loop/SKILL.md`
11
+ - `plugins/olko-product/skills/frontend-direction/SKILL.md`
11
12
  - `plugins/olko-product/skills/starter-rules/SKILL.md`
12
13
  - `plugins/olko-product/skills/viral-launch/SKILL.md`
@@ -0,0 +1,7 @@
1
+ <!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
2
+
3
+ # Pi adapter: olko-product
4
+
5
+ Use the canonical skills directly:
6
+
7
+ - `plugins/olko-product/skills/frontend-direction/SKILL.md`
@@ -587,6 +587,30 @@
587
587
  "hermes"
588
588
  ]
589
589
  },
590
+ {
591
+ "name": "frontend-direction",
592
+ "lookupName": "olko:frontend-direction",
593
+ "path": "plugins/olko-product/skills/frontend-direction",
594
+ "description": "Choose a distinctive, coherent visual direction and source-backed components before building a new frontend, page, or substantial UI redesign. Use for frontend implementation and requests to make an interface less generic; keep small fixes within the existing design.",
595
+ "tags": [
596
+ "frontend",
597
+ "design",
598
+ "components",
599
+ "art-direction",
600
+ "ui"
601
+ ],
602
+ "adapters": [
603
+ "codex",
604
+ "claude",
605
+ "cursor",
606
+ "copilot",
607
+ "windsurf",
608
+ "kiro",
609
+ "grok",
610
+ "hermes",
611
+ "pi"
612
+ ]
613
+ },
590
614
  {
591
615
  "name": "starter-rules",
592
616
  "lookupName": "olko:starter-rules",
@@ -145,7 +145,7 @@ Current adapter targets:
145
145
  | `windsurf` | n/a | `.windsurf/rules/{name}.md` |
146
146
  | `kiro` | n/a | `.kiro/steering/{name}.md` |
147
147
 
148
- Adapter coverage is not uniform across the catalog; a skill only ships the adapters listed in its `adapters` array in `catalog/skills.json`. Current coverage: claude 55, grok 53, cursor 51, copilot 51, codex 49, windsurf 40, kiro 40, pi 2, hermes 55 (out of 55 canonical skills). Hermes uses `scripts/install-hermes-symlinks.sh` to expose the canonical packages to its skills loader.
148
+ Adapter coverage is not uniform across the catalog; a skill only ships the adapters listed in its `adapters` array in `catalog/skills.json`. Current coverage: claude 56, grok 54, cursor 52, copilot 52, codex 50, windsurf 41, kiro 41, pi 3, hermes 56 (out of 56 canonical skills). Hermes uses `scripts/install-hermes-symlinks.sh` to expose the canonical packages to its skills loader.
149
149
 
150
150
  Claude plugin and marketplace identifiers must be kebab-case. Keep `olko:*` names for Codex and Cursor lookup names, but do not use colons or spaces in Claude marketplace/plugin names.
151
151
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@olegkoval/agent-skills",
3
- "version": "1.56.1",
3
+ "version": "1.57.0",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-apple-kit",
3
3
  "description": "Build and ship Apple platform apps: macOS menubar apps, App Store submissions.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-creative",
3
3
  "description": "Creative and personal projects: photo galleries, music players, listings, wiki editing.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-garmin-kit",
3
3
  "description": "Build, test and publish Garmin Connect IQ watch faces.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-git-tools",
3
3
  "description": "Everyday git and GitHub CLI operations: conventional commits, branch hygiene.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-github-pr",
3
3
  "description": "Drive GitHub pull requests to merge-ready: review-bot loops, CI fixes, descriptions, dependency triage.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-obsidian",
3
3
  "description": "Keep an Obsidian vault in sync with work: PR sync, task rollover, morning routine.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-product",
3
3
  "description": "Take a product idea to a shippable build: MVP passes, full-stack scaffolds, UX/UI quality loops, launch plans.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -0,0 +1,54 @@
1
+ # Frontend direction (beta)
2
+
3
+ Give your coding agent a visual direction before it writes the frontend.
4
+
5
+ For new pages and substantial redesigns, this skill chooses a composition, selects compatible components, records the decisions and checks the rendered result. Small UI fixes stay within the existing design. The reference catalog includes the seven resources from [Nero's post](https://x.com/neropursue/status/2109514246853677192).
6
+
7
+ Status: experimental. Skill structure is validated; comparative visual-quality evaluation and end-to-end trials in all four agents are still pending.
8
+
9
+ ## Install
10
+
11
+ The skill ships in the `olko-product` plugin. In Claude Code:
12
+
13
+ ```
14
+ /plugin marketplace add oleg-koval/agent-skills
15
+ /plugin install olko-product@olko-agent-skills
16
+ ```
17
+
18
+ For Codex, Pi, Hermes and the other agents, follow the install steps for that agent in the [repository README](../../../../README.md).
19
+
20
+ ## Activate before frontend work
21
+
22
+ Start a new session after installation. Explicit invocation avoids relying on the model to select the skill:
23
+
24
+ | Agent | Prompt |
25
+ | --- | --- |
26
+ | Pi | `/skill:frontend-direction Build this page; choose the direction before coding.` |
27
+ | Codex | `$frontend-direction Build this page; choose the direction before coding.` |
28
+ | Claude Code | `/olko-product:frontend-direction Build this page; choose the direction before coding.` |
29
+ | Hermes | `/frontend-direction Build this page; choose the direction before coding.` |
30
+
31
+ For routine use, add this instruction to the project's active agent instructions: `AGENTS.md` for Codex and Pi, `CLAUDE.md` for Claude Code, and the active project context file for Hermes. Hermes can prioritize `.hermes.md` or `AGENTS.override.md` over `AGENTS.md`; put the rule in the file actually loaded.
32
+
33
+ > Before implementing a frontend page or substantial UI redesign, load and follow the installed frontend-direction skill. State the chosen visual direction and component sources before coding. For small UI fixes, use its lightweight path and preserve the existing design. If the skill is unavailable, report that and use the project's existing design guidance.
34
+
35
+ This is an instruction-level requirement, not a runtime enforcement hook. Check that the agent actually loads the skill and states a direction on the first frontend task. Do not assume discovery proves usage or visual quality. Installing the plugin does not modify project instructions.
36
+
37
+ ## Compatibility sources
38
+
39
+ One portable skill folder serves all four agents. The workflow uses capabilities rather than vendor tool names, and keeps automatic discovery enabled. Browsing and browser inspection remain optional capabilities with explicit verification limits.
40
+
41
+ - [Pi skill discovery and explicit invocation](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/docs/skills.md)
42
+ - [Pi configuration directory](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/config.ts)
43
+ - [Codex skills](https://developers.openai.com/codex/skills/)
44
+ - [Claude Code skills](https://code.claude.com/docs/en/skills)
45
+ - [Hermes skills and profiles](https://hermes-agent.nousresearch.com/docs/user-guide/features/skills/)
46
+ - [Hermes project context](https://hermes-agent.nousresearch.com/docs/user-guide/features/context-files/)
47
+
48
+ Record the installed plugin version when reporting results. For reproducible trials, keep the same installed copy throughout the comparison.
49
+
50
+ ## What to evaluate
51
+
52
+ Use the same brief, content, model and budget with and without the skill. Compare hierarchy, coherence, task clarity, distinctiveness, mobile behavior and dependency cost. Save the selected direction and screenshots. Include a small-edit case to check that the skill does not force a redesign. Report browser-verification limits honestly.
53
+
54
+ Only this skill folder is installed; no component library or paid resource is installed automatically.
@@ -0,0 +1,58 @@
1
+ ---
2
+ name: frontend-direction
3
+ description: Choose a distinctive, coherent visual direction and source-backed components before building a new frontend, page, or substantial UI redesign. Use for frontend implementation and requests to make an interface less generic; keep small fixes within the existing design.
4
+ license: MIT
5
+ metadata:
6
+ author: Oleg Koval
7
+ tags: frontend, design, components, art-direction
8
+ ---
9
+
10
+ # Frontend direction
11
+
12
+ For Pi, Codex, Claude Code and Hermes, using the existing frontend stack. Use the host's available file, shell, browsing and image-inspection tools; no provider-specific tool names or plugins are required. Resolve bundled reference paths relative to this skill folder. Browsing and browser inspection improve source selection and visual verification; their absence must be reported, not disguised as verification.
13
+
14
+ Make a deliberate visual choice before writing interface code. Deliver a recognizable composition that serves this product's users, with components that belong together. Distinctiveness can come from typography, imagery, spatial hierarchy, content or interaction; it does not require animation or new dependencies.
15
+
16
+ ## Match the effort to the task
17
+
18
+ For a new page or substantial redesign, use the workflow below. For a small fix, reuse the established components and tokens and verify the affected state. Do not turn a spacing correction into a redesign or browse libraries on every turn. If another design skill supplies an approved direction, use it and perform the component selection here without repeating discovery.
19
+
20
+ Read the relevant application instructions, stack, existing components and visual conventions. Inspect the current screen when available. Infer the audience, primary action, content density and constraints from the task. Ask only when a missing decision materially changes the result; otherwise state the assumption and proceed within the user's authorization.
21
+
22
+ ## Choose the direction before the components
23
+
24
+ For an open-ended brief, consider two or three genuinely different compositions and choose the strongest fit. A color swap is not a different direction. A buyer comparing evidence may need an inspection workspace; a photographer may need an image-led editorial sequence. Avoid defaulting every product to a centered hero followed by identical cards.
25
+
26
+ Briefly state the choice and why it helps the primary task. Do not require approval unless the user requested a design checkpoint or the choice would change their scope or brand. Respect supplied designs and existing systems.
27
+
28
+ Define the visual anchors: layout and hierarchy, typography roles, palette, density, image treatment, and motion purpose. Reuse tokens where possible. Choose one or two signature treatments for emphasis, such as an annotated comparison rail or an editorial image sequence. Keep frequent controls familiar. Treat these as a default attention budget, not a prohibition on expressive briefs.
29
+
30
+ ## Select a coherent component set
31
+
32
+ Read [references/sources.md](references/sources.md) when external references would improve the result. If that file is not bundled with your copy of this skill, read the [published catalog](https://github.com/oleg-koval/agent-skills/blob/main/plugins/olko-product/skills/frontend-direction/references/sources.md) instead. The catalog is a starting point, not a required dependency list. Existing project components and a small custom implementation are valid choices.
33
+
34
+ Start with at most three relevant candidates. Expand only if none fits. Judge task fit, visual coherence, stack compatibility, accessibility, dependency cost and reuse terms. Do not rank novelty above usability or invent numeric scores that imply measurement.
35
+
36
+ Inspect the exact official component page and available source before copying or installing. Record the URL, intended adaptation, dependencies, and known license or paid-access boundary. Unknown terms mean do not copy that source until clarified; use existing primitives or an original implementation instead. A screenshot or a social recommendation does not verify source availability or accessibility. Inspect registry payloads and install commands before execution.
37
+
38
+ Prefer one primary component family per surface. Borrow an isolated interaction from another source only when it can share the same typography, spacing, radius, color and motion conventions. Never add a framework merely to use a decorative component. If browsing fails, label references unverified, use local primitives, and continue without claiming live checks.
39
+
40
+ Before substantial implementation, leave a compact decision record in the task's existing plan, or in the response if no plan exists:
41
+
42
+ | UI role | Chosen component or pattern | Source or local path | Why it fits | Adaptation and cost |
43
+ | --- | --- | --- | --- | --- |
44
+ | Primary comparison | Aligned comparison rows | Existing table primitive | Makes differences scanable | Shared column widths; no dependency |
45
+
46
+ Record the chosen direction and the most relevant rejected alternative with its reason. Reuse this decision on later turns; revisit only when evidence or requirements change. Do not create a new document for every small edit.
47
+
48
+ ## Build the composition, then inspect it
49
+
50
+ Implement one representative section with realistic content before repeating it across the page. Establish shared tokens, responsive behavior and meaningful hierarchy there. Keep the product's actual states, including loading, empty, error, long text and unknown data. Decorative charts and invented statistics are not a substitute for content.
51
+
52
+ Use motion to explain a transition or provide feedback. Preserve keyboard focus, semantics and immediate response; support reduced motion and interruption. Never hide essential content behind hover or animation.
53
+
54
+ Inspect the rendered screen at desktop and narrow mobile sizes when browser tools are available. Check the primary action, text hierarchy, contrast, keyboard use, overflow, long content and relevant failure states. Compare the result with the chosen direction: does its composition still express it, or did it collapse into repeated generic cards? Is the signature treatment useful and proportionate?
55
+
56
+ Make one focused correction pass for observed issues. Continue only for a specific unresolved defect, rather than redesigning indefinitely. Run the project's relevant checks. If visual inspection is unavailable, report that limit explicitly and distinguish code checks from visual acceptance.
57
+
58
+ Report the direction, components and sources selected, dependencies added, and what was actually verified. This skill does not authorize deployment, publication or purchases.
@@ -0,0 +1,36 @@
1
+ # Component discovery sources
2
+
3
+ Seed: [Nero's resource post](https://x.com/neropursue/status/2109514246853677192), retrieved on 2026-10-12 through [FxTwitter](https://api.fxtwitter.com/status/2109514246853677192) after X returned 403. The categories below describe discovery uses, not guarantees about current features, compatibility, accessibility, pricing or licenses. Check the exact source before adoption.
4
+
5
+ | Source | Start here when exploring |
6
+ | --- | --- |
7
+ | [Affect UI](https://affectui.com) | General visual component references |
8
+ | [Kobra](https://kobra.systems) | Controls, navigation and product interactions |
9
+ | [Arc UI](https://uiarc.dev) | UI composition and component ideas |
10
+ | [EvilCharts](https://evilcharts.com) | Charts for real quantitative questions |
11
+ | [Transitions.dev](https://transitions.dev) | State transitions and motion recipes |
12
+ | [beUI](https://beui.dev) | Animated React component candidates |
13
+ | [BoardUI](https://www.boardui.com) | Dashboard component candidates |
14
+
15
+ The official Kobra, Transitions.dev and beUI sites were accessible during this skill's creation. The other entries are retained as discovery links from the post, not independently verified endorsements. No upstream component source or recipe is bundled here.
16
+
17
+ For each selected candidate, inspect its exact documentation and source, not only its homepage. Verify framework/version requirements, dependencies, responsive states, keyboard behavior, reduced-motion handling where relevant, and reuse terms. Paid sections and free sections may have different conditions.
18
+
19
+ Use the source that answers the task. A native HTML app can implement an original CSS interaction; a chart library is unnecessary when a comparison table is clearer. If no candidate fits, retain local components and derive distinctiveness from composition, content and typography.
20
+
21
+ Seed: [Aman Singh's resource post](https://x.com/amananimates/status/2111848675811225980?s=46), retrieved on 2026-10-19 through [FxTwitter](https://api.fxtwitter.com/status/2111848675811225980) after X returned 403. The categories below describe discovery uses, not guarantees about current features, compatibility, accessibility, pricing or licenses. Check the exact source before adoption.
22
+
23
+ | Source | Start here when exploring |
24
+ | --- | --- |
25
+ | [Scrolltide](https://scrolltide.co) | Prompts and source-code resources for interface design |
26
+ | [Mobbin](https://mobbin.com) | Real-world UI patterns from iOS and Android apps |
27
+ | [Fontshare](https://fontshare.com) | Free, high-quality fonts for commercial use |
28
+ | [Coolors](https://coolors.co) | Fast color scheme generation and exploration |
29
+ | [Spline](https://spline.design) | Interactive 3D design and web publishing |
30
+ | [LottieFiles](https://lottiefiles.com) | Lottie animations for web and mobile |
31
+ | [Three.js Journey](https://threejs-journey.com) | Step-by-step Three.js tutorials and examples |
32
+ | [3Dicons](https://3dicons.co) | Free 3D icons for websites and applications |
33
+
34
+ For each selected candidate, inspect its exact documentation and source, not only its homepage. Verify framework/version requirements, dependencies, responsive states, keyboard behavior, reduced-motion handling where relevant, and reuse terms. Paid sections and free sections may have different conditions.
35
+
36
+ Use the source that answers the task. A native HTML app can implement an original CSS interaction; a chart library is unnecessary when a comparison table is clearer. If no candidate fits, retain local components and derive distinctiveness from composition, content and typography.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-reflection",
3
3
  "description": "Look back and improve: self-critique, retrospectives, performance review, rapid learning.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-release",
3
3
  "description": "Ship a release: semantic-release setup, changelogs, store listing copy, release-day routine.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-skill-meta",
3
3
  "description": "Author and maintain agent skills and the AI toolchain itself.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-web-ops",
3
3
  "description": "Operate a website: WAF rules, search console audits, analytics bootstrap, docs indexes.",
4
- "version": "1.56.1",
4
+ "version": "1.57.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -20,7 +20,7 @@ export const PLUGIN_ASSIGNMENT = {
20
20
  },
21
21
  'olko-product': {
22
22
  description: 'Take a product idea to a shippable build: MVP passes, full-stack scaffolds, UX/UI quality loops, launch plans.',
23
- skills: ['product-builder', 'mvp-oneshot', 'ux-ui-audit-loop', 'starter-rules', 'viral-launch'],
23
+ skills: ['product-builder', 'mvp-oneshot', 'ux-ui-audit-loop', 'frontend-direction', 'starter-rules', 'viral-launch'],
24
24
  },
25
25
  'olko-skill-meta': {
26
26
  description: 'Author and maintain agent skills and the AI toolchain itself.',