@mohammadhprp/system-prompt 0.11.2 → 0.12.1

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 (92) hide show
  1. package/framework/agents/researcher.md +1 -1
  2. package/framework/mcps/github-mcp/README.md +1 -1
  3. package/framework/mcps/github-mcp/configs/.env.example +1 -1
  4. package/framework/plugins/ponytail/README.md +1 -1
  5. package/framework/plugins/ponytail/capabilities.md +1 -1
  6. package/framework/references/standards/pull-requests.md +1 -1
  7. package/framework/skills/README.md +3 -3
  8. package/framework/skills/diagram-design/SKILL.md +1 -1
  9. package/framework/skills/effective-html/SKILL.md +63 -0
  10. package/framework/skills/effective-html/examples.md +19 -0
  11. package/framework/skills/effective-html/references/charts-and-data.md +32 -0
  12. package/framework/skills/effective-html/references/creative-direction.md +48 -0
  13. package/framework/skills/effective-html/references/design-artifact.md +78 -0
  14. package/framework/skills/effective-html/references/diagrams.md +68 -0
  15. package/framework/skills/effective-html/references/documents-and-presentations.md +28 -0
  16. package/framework/skills/effective-html/references/html-diagram.md +43 -0
  17. package/framework/skills/effective-html/references/html-plan.md +40 -0
  18. package/framework/skills/effective-html/references/html-prototype.md +97 -0
  19. package/framework/skills/effective-html/references/html-wireframe.md +81 -0
  20. package/framework/skills/effective-html/references/html.md +72 -0
  21. package/framework/skills/effective-html/references/interfaces.md +17 -0
  22. package/framework/skills/great-interface/SKILL.md +43 -0
  23. package/framework/skills/great-interface/references/animations.md +205 -0
  24. package/framework/skills/great-interface/references/better-accessibility.md +106 -0
  25. package/framework/skills/great-interface/references/better-colors.md +100 -0
  26. package/framework/skills/great-interface/references/better-interface.md +132 -0
  27. package/framework/skills/great-interface/references/better-layout.md +76 -0
  28. package/framework/skills/great-interface/references/better-typography.md +157 -0
  29. package/framework/skills/great-interface/references/better-ui.md +107 -0
  30. package/framework/skills/great-interface/references/better-writing.md +109 -0
  31. package/framework/skills/great-interface/references/choosing-fonts.md +64 -0
  32. package/framework/skills/great-interface/references/color-formats.md +90 -0
  33. package/framework/skills/great-interface/references/color-usage.md +118 -0
  34. package/framework/skills/great-interface/references/contrast.md +79 -0
  35. package/framework/skills/great-interface/references/css-cheat-sheet.md +65 -0
  36. package/framework/skills/great-interface/references/details-and-accessibility.md +119 -0
  37. package/framework/skills/great-interface/references/enter-exit.md +147 -0
  38. package/framework/skills/great-interface/references/explain-interface.md +126 -0
  39. package/framework/skills/great-interface/references/find-the-effect.md +94 -0
  40. package/framework/skills/great-interface/references/focus-and-keyboard.md +131 -0
  41. package/framework/skills/great-interface/references/forms.md +84 -0
  42. package/framework/skills/great-interface/references/from-an-image.md +55 -0
  43. package/framework/skills/great-interface/references/grouping-and-alignment.md +123 -0
  44. package/framework/skills/great-interface/references/hit-areas.md +94 -0
  45. package/framework/skills/great-interface/references/icon-transitions.md +102 -0
  46. package/framework/skills/great-interface/references/icons.md +110 -0
  47. package/framework/skills/great-interface/references/interface-review.md +148 -0
  48. package/framework/skills/great-interface/references/motion-and-zoom.md +79 -0
  49. package/framework/skills/great-interface/references/no-browser.md +73 -0
  50. package/framework/skills/great-interface/references/palette-generation.md +104 -0
  51. package/framework/skills/great-interface/references/palette-structure.md +76 -0
  52. package/framework/skills/great-interface/references/performance.md +88 -0
  53. package/framework/skills/great-interface/references/picker.md +76 -0
  54. package/framework/skills/great-interface/references/read-the-system.md +178 -0
  55. package/framework/skills/great-interface/references/removed-signals.md +38 -0
  56. package/framework/skills/great-interface/references/review-format.md +46 -0
  57. package/framework/skills/great-interface/references/scope-resolution.md +88 -0
  58. package/framework/skills/great-interface/references/screen-readers.md +101 -0
  59. package/framework/skills/great-interface/references/semantics-and-aria.md +84 -0
  60. package/framework/skills/great-interface/references/spacing-and-adaptivity.md +159 -0
  61. package/framework/skills/great-interface/references/spacing-and-sizing.md +121 -0
  62. package/framework/skills/great-interface/references/surfaces.md +219 -0
  63. package/framework/skills/great-interface/references/token-naming.md +97 -0
  64. package/framework/skills/great-interface/references/variable-fonts-and-opentype.md +105 -0
  65. package/framework/skills/great-interface/references/variant.md +104 -0
  66. package/framework/skills/great-interface/references/wrapping-and-punctuation.md +55 -0
  67. package/framework/skills/taste/SKILL.md +47 -0
  68. package/framework/skills/taste/examples.md +73 -0
  69. package/framework/skills/taste/references/brandkit.md +793 -0
  70. package/framework/skills/taste/references/design-taste-frontend-v1.md +221 -0
  71. package/framework/skills/taste/references/design-taste-frontend.md +1201 -0
  72. package/framework/skills/taste/references/full-output-enforcement.md +44 -0
  73. package/framework/skills/taste/references/gpt-taste.md +69 -0
  74. package/framework/skills/taste/references/high-end-visual-design.md +93 -0
  75. package/framework/skills/taste/references/image-to-code.md +1223 -0
  76. package/framework/skills/taste/references/imagegen-frontend-mobile.md +1460 -0
  77. package/framework/skills/taste/references/imagegen-frontend-web.md +982 -0
  78. package/framework/skills/taste/references/industrial-brutalist-ui.md +87 -0
  79. package/framework/skills/taste/references/minimalist-ui.md +80 -0
  80. package/framework/skills/taste/references/redesign-existing-projects.md +173 -0
  81. package/framework/skills/taste/references/stitch-design-taste-design.md +121 -0
  82. package/framework/skills/taste/references/stitch-design-taste.md +179 -0
  83. package/package.json +1 -1
  84. package/src/agent-configs.js +6 -2
  85. package/src/catalog.js +3 -2
  86. package/src/cli.js +82 -2
  87. package/src/doctor.js +84 -0
  88. package/src/installer.js +337 -154
  89. package/framework/skills/brand-guidelines/LICENSE.txt +0 -202
  90. package/framework/skills/brand-guidelines/SKILL.md +0 -73
  91. package/framework/skills/lavish/SKILL.md +0 -67
  92. package/framework/skills/lavish/examples.md +0 -31
@@ -6,7 +6,7 @@ permission:
6
6
  bash: deny
7
7
  read: allow
8
8
  edit: deny
9
- write: allow
9
+ write: deny
10
10
  patch: deny
11
11
  grep: allow
12
12
  glob: allow
@@ -48,4 +48,4 @@ Relevant skills in this repository:
48
48
 
49
49
  - [`code-review`](../../skills/code-review/SKILL.md): reviewing pull request diffs.
50
50
  - [`backend-best-practices`](../../skills/backend-best-practices/SKILL.md): backend best practices for testing, debugging, and security review.
51
- - [`pull-request`](../../skills/pull-request/SKILL.md): preparing and submitting pull requests.
51
+ - [`pr`](../../commands/pr.md): preparing and submitting pull requests.
@@ -1 +1 @@
1
- GITHUB_TOKEN=
1
+ GITHUB_PERSONAL_ACCESS_TOKEN=
@@ -41,4 +41,4 @@ Relevant skills in this repository:
41
41
 
42
42
  - [`code-review`](../../skills/code-review/SKILL.md): review backend changes for correctness and maintainability, complementary to ponytail's over-engineering focus.
43
43
  - [`backend-best-practices`](../../skills/backend-best-practices/SKILL.md): backend best practices for refactoring and behavior-preserving cleanup.
44
- - [`pull-request`](../../skills/pull-request/SKILL.md): prepare small, reviewable changes aligned with ponytail's minimal-diff philosophy.
44
+ - [`pr`](../../commands/pr.md): prepare small, reviewable changes aligned with ponytail's minimal-diff philosophy.
@@ -90,7 +90,7 @@ Or in `~/.config/ponytail/config.json` (`%APPDATA%\ponytail\config.json` on Wind
90
90
  - Use `/ponytail-review` after a coding session to catch over-engineering the agent missed.
91
91
  - Mark intentional shortcuts with `ponytail:` comments naming the ceiling and upgrade path.
92
92
  - Review `/ponytail-debt` regularly to track deferred improvements.
93
- - Pair with `code-review` and `pull-request` skills for a complete quality workflow.
93
+ - Pair with `code-review` and the `/pr` command for a complete quality workflow.
94
94
 
95
95
  ## Common Workflows
96
96
 
@@ -39,4 +39,4 @@ Define reusable backend engineering rules for pull request decisions across proj
39
39
  ## Related Skills
40
40
 
41
41
  - `skills/code-review/SKILL.md`
42
- - `skills/pull-request/SKILL.md`
42
+ - `commands/pr.md`
@@ -11,31 +11,31 @@ This catalog is framework-agnostic: each skill defines when to activate, a step-
11
11
  | [agent-browser](./agent-browser/SKILL.md) | Automate browser and Electron workflows for navigation, testing, screenshots, and data extraction. | Website interaction, browser automation, exploratory testing, QA, and Electron desktop app workflows. |
12
12
  | [backend-best-practices](./backend-best-practices/SKILL.md) | Consolidated backend engineering practices for API design, architecture, data, security, testing, observability, performance, debugging, and refactoring. | Any backend task that benefits from structured domain guidance across multiple backend disciplines. |
13
13
  | [brainstorming](./brainstorming/SKILL.md) | Turn ideas into fully formed designs and specs through collaborative dialogue before any implementation. | Starting a new feature, component, or project; any work that benefits from design before code. |
14
- | [brand-guidelines](./brand-guidelines/SKILL.md) | Apply Anthropic's official brand colors and typography to artifacts for company look-and-feel. | Styling artifacts with brand colors, typography, or visual design standards. |
15
14
  | [code-review](./code-review/SKILL.md) | Review backend changes for correctness, readability, maintainability, tests, performance, and security. | Reviewing pull requests, evaluating code quality, or mentoring. |
16
15
  | [codenavi](./codenavi/SKILL.md) | Investigate unfamiliar codebases with precision, implement surgically, and keep a `.notebook/` knowledge base that grows across sessions. | Fixing bugs, implementing features, refactoring, or investigating flows in unfamiliar territory. |
17
16
  | [create-adr](./create-adr/SKILL.md) | Create Architecture Decision Records (ADRs) that capture the context, decision, and consequences of significant architectural choices. | Documenting a finalized technical decision, or recording why a choice was made for future team members. |
18
17
  | [design-like-damien](./design/SKILL.md) | Apply premium, editorial-quality UI design philosophy and Lovable prompting system to produce interfaces that never look “AI-generated.” | Building apps, landing pages, or dashboards in Lovable; UI/UX design for premium SaaS, dark mode, typography, and scroll animations. |
19
18
  | [diagram-design](./diagram-design/SKILL.md) | Create technical and product diagrams as standalone HTML files with inline SVG and an opinionated editorial design system. | Architecture, data, process, and other diagrams that communicate more clearly than prose or tables. |
20
19
  | [docs-writer](./docs-writer/SKILL.md) | Write, review, and edit documentation files with consistent structure, tone, and technical accuracy. | Creating docs, reviewing markdown files, writing READMEs, or updating `/docs` directories. |
20
+ | [effective-html](./effective-html/SKILL.md) | Create self-contained HTML artifacts with routed guidance for design, wireframes, prototypes, plans, and diagrams. | Standalone HTML reports, explainers, interfaces, wireframes, prototypes, plans, and diagrams. |
21
21
  | [find-skills](./find-skills/SKILL.md) | Discover, evaluate, and install skills from the open agent skills ecosystem. | Finding an installable skill for a specialized task or extending an agent's capabilities. |
22
22
  | [frontend-design](./frontend-design/SKILL.md) | Distinctive, intentional visual design for new UI or reshaping existing UI — aesthetic direction, typography, and choices that don't read as templated defaults. | Building new interfaces, reshaping existing UI, or escaping generic AI-generated design looks. |
23
+ | [great-interface](./great-interface/SKILL.md) | Build, explain, review, and refine product interfaces across accessibility, layout, writing, typography, color, and UI polish. | Creating frontend interfaces, reviewing interface quality, explaining interface behavior, or comparing UI directions. |
23
24
  | [gitlab-mcp](./gitlab-mcp/SKILL.md) | Work with the GitLab MCP server tools for merge requests, issues, repositories, pipelines, and CI/CD workflows. | Any project hosted on GitLab (SaaS or self-hosted). |
24
25
  | [humanizer](./humanizer/SKILL.md) | Remove signs of AI-generated writing from text — inflated importance, promotional language, em dash overuse, rule of three, AI vocabulary, and filler phrases. | Editing or reviewing prose to make it sound more natural and human-written. |
25
26
  | [jira-mcp](./jira-mcp/SKILL.md) | Work with the Jira MCP server tools for issue management, JQL search, comments, and project inspection. | Any project using self-hosted Jira for issue tracking. |
26
27
  | [laravel-best-practices](./laravel-best-practices/SKILL.md) | Apply Laravel PHP patterns for Eloquent, validation, security, testing, caching, and architecture. | Writing, reviewing, or refactoring Laravel PHP code. |
27
28
  | [learning-opportunities](./learning-opportunities/SKILL.md) | Facilitate deliberate skill development during AI-assisted coding with short, optional interactive exercises. | After architectural work, schema changes, refactors, or when the user asks to understand code better. |
28
- | [lavish](./lavish/SKILL.md) | Turn complex or visual agent responses into rich, reviewable HTML artifacts the user can annotate and send feedback on. | Plans, comparisons, diagrams, tables, code diffs, or any output easier to grasp visually than as prose. |
29
29
  | [notion-mcp](./notion-mcp/SKILL.md) | Work with the Notion MCP server tools for pages, databases, comments, search, and workspace management. | Any project that uses Notion for documentation, tracking, or collaboration. |
30
30
  | [perf-web-optimization](./perf-web-optimization/SKILL.md) | Optimize web performance: bundle size, images, caching, lazy loading, and overall page speed. | A slow site, large bundles, layout shifts, poor Time to Interactive, or low Lighthouse scores. |
31
31
  | [security-best-practices](./security-best-practices/SKILL.md) | Perform language- and framework-specific security best-practice reviews and suggest improvements, with support for Python, JavaScript/TypeScript, and Go. | Explicit security reviews or reports, secure-by-default coding, or auditing existing code for major vulnerabilities. |
32
32
  | [sentry](./sentry/SKILL.md) | Inspect Sentry issues, summarize production errors, and pull health data via the Sentry API (read-only). | Checking production errors, summarizing recent crashes, or pulling a production error report. |
33
33
  | [show-me](./show-me/SKILL.md) | Help the user understand the current topic visually with concise diagrams, code-shape sketches, and focused HTML artifacts. | Explaining logic, control flow, UI structure, file responsibility, or data flow with the smallest useful visual. |
34
- | [pull-request](./pull-request/SKILL.md) | Prepare small, reviewable changes with clear evidence, risk, deployment, and rollback notes. | Preparing PRs, writing descriptions, or planning safe deployments. |
35
34
  | [skill-creator](./skill-creator/SKILL.md) | Create new skills, modify and improve existing skills, and measure skill performance. | Designing new skills, optimizing existing skills, or running evals. |
36
35
  | [spec-driven-eval](./spec-driven-eval/SKILL.md) | Score how completely an implementation fulfills a PRD/spec, case by case, producing a single comparable final grade. | Benchmarking spec-driven implementations, grading acceptance criteria, or auditing implementation and test coverage against a spec. |
37
36
  | [technical-design-doc-creator](./technical-design-doc-creator/SKILL.md) | Create comprehensive Technical Design Documents (TDDs) with mandatory and optional sections through interactive discovery, in the user's language. | Writing a design doc, TDD, technical spec, or architecture document before implementing a significant change. |
38
37
  | [tlc-spec-driven](./tlc-spec-driven/SKILL.md) | Feature planning and implementation with adaptive phases, EARS testable requirements, atomic Conventional Commits, and independent verification. | Planning features, implementing with verification and atomic commits, or validating an implementation against a spec. |
38
+ | [taste](./taste/SKILL.md) | Unified design-quality skill spanning anti-slop frontend design, image generation and image-to-code, brand kits, minimalist and industrial UI, redesigns, and Google Stitch design systems. | Landing pages, portfolios, redesigns, website/mobile/brand imagery, or any UI that must not look AI-generated. |
39
39
  | [web-design-guidelines](./web-design-guidelines/SKILL.md) | Review UI code for Web Interface Guidelines compliance — accessibility, focus, forms, animation, typography, and interaction patterns. | Reviewing UI, checking accessibility, auditing design or UX, or checking a site against best practices. |
40
40
 
41
41
  ## How Skills Are Organized
@@ -192,7 +192,7 @@ Universal building blocks. Type-specialized primitives (lifeline, activation bar
192
192
 
193
193
  - Editorial callouts → [primitive-annotation.md](references/primitive-annotation.md)
194
194
  - Hand-drawn variant → [primitive-sketchy.md](references/primitive-sketchy.md)
195
- - Icon set (laptop, server, DB, K8s, Docker, AWS, …) → [primitive-icons.md](references/primitive-icons.md). Browse the gallery at [`assets/icons.html`](../assets/icons.html).
195
+ - Icon set (laptop, server, DB, K8s, Docker, AWS, …) → [primitive-icons.md](references/primitive-icons.md). Browse the gallery at [`assets/icons.html`](assets/icons.html).
196
196
  - Terminal / CLI-window variant → [primitive-terminal.md](references/primitive-terminal.md)
197
197
 
198
198
  ### Background
@@ -0,0 +1,63 @@
1
+ ---
2
+ name: effective-html
3
+ description: Create or redesign self-contained single-file HTML artifacts, including reports, explainers, landing pages, presentations, tools, wireframes, prototypes, plans, and diagrams. Route the request to the narrowest reference playbook, load only the guidance that applies, and verify the result at wide and narrow viewports. Do not use for ordinary application implementation when standalone HTML is not the deliverable.
4
+ ---
5
+
6
+ # Effective HTML
7
+
8
+ Build one self-contained HTML file that makes the subject clearer, easier to use, or easier to understand. This skill combines creative direction with specialized workflows for structure, fidelity, planning, and visual explanation. The standard is consistent care, not a consistent look.
9
+
10
+ ## Route the request first
11
+
12
+ Read the brief and choose the narrowest playbook that owns the main review question:
13
+
14
+ | Request | Reference |
15
+ |---|---|
16
+ | Palette, typography, composition, theming, or overall visual direction | [`design-artifact`](references/design-artifact.md) |
17
+ | Unsettled information hierarchy, navigation, task flow, or responsive structure | [`html-wireframe`](references/html-wireframe.md) |
18
+ | Polished mockup or working interactive flow | [`html-prototype`](references/html-prototype.md) |
19
+ | Plan, roadmap, implementation sequence, or rollout document | [`html-plan`](references/html-plan.md) |
20
+ | Relationships, sequence, topology, state, hierarchy, or quantitative structure | [`html-diagram`](references/html-diagram.md) |
21
+ | Report, explainer, presentation, landing page, data story, or broad tool | Continue with this skill and load the applicable references below |
22
+
23
+ The selected reference owns its specialist decisions. When a task spans domains, apply the relevant references in sequence and reconcile conflicts by user priority, project conventions, and the artifact's purpose. Do not load every reference by default.
24
+
25
+ ## Read the room before designing
26
+
27
+ Inspect the user's request and supplied material. In a repository, look for `AGENTS.md`, `CLAUDE.md`, design-system documentation, tokens, existing components, and nearby artifacts.
28
+
29
+ Authority runs in this order:
30
+
31
+ 1. The user's explicit visual and functional instructions.
32
+ 2. The project's established design system and conventions.
33
+ 3. The subject matter, audience, and purpose of the artifact.
34
+ 4. Your own design judgment.
35
+
36
+ Before coding, settle the audience and job, form, visual register, fidelity, and useful interaction. Use real content and keep assumptions visible.
37
+
38
+ ## Load only the guidance the artifact needs
39
+
40
+ - Reports, briefs, plans, explainers, and decks: [`documents-and-presentations`](references/documents-and-presentations.md)
41
+ - Interfaces, calculators, and tools: [`interfaces`](references/interfaces.md)
42
+ - Architecture, process, sequence, state, hierarchy, and concept diagrams: [`diagrams`](references/diagrams.md)
43
+ - Quantitative charts, tables, metrics, and data stories: [`charts-and-data`](references/charts-and-data.md)
44
+ - Visual direction when no project design system exists: [`creative-direction`](references/creative-direction.md)
45
+
46
+ Read every reference that materially applies, then give the artifact one coherent direction.
47
+
48
+ ## Build contract
49
+
50
+ - Produce one `.html` file with essential CSS and JavaScript inline. It must work when opened directly without a build step or external service unless the user permits one.
51
+ - Use real content. Do not fill prominent space with placeholder copy, decorative statistics, or controls that do nothing.
52
+ - Let content determine structure. Make sequences ordered, comparisons scannable, interfaces stateful, and diagrams legible.
53
+ - Use semantic HTML, responsive layout, accessible contrast, visible keyboard focus, and reduced-motion handling.
54
+ - Keep accidental horizontal overflow out of the page body. Put intentionally broad content in a contained scrolling or pannable region.
55
+ - Define a small set of CSS tokens for the chosen direction and use them consistently.
56
+ - Treat motion as explanation or feedback. Remove animation that adds no meaning or useful feedback.
57
+ - Follow the user's or project's theme policy. When none exists, consider durable light and dark themes where they improve use.
58
+
59
+ ## Verify and hand off
60
+
61
+ Write the file to the requested location, or choose a clear filename in the current workspace. When browser tooling is available, inspect wide and narrow viewports, exercise controls, check the console, and fix clipping, overlap, illegible text, broken states, and accidental overflow.
62
+
63
+ Before delivery, check that the visual direction belongs to the subject rather than a generic neighboring topic. Return the absolute path and a short description of the artifact's visual and interaction choices, including important assumptions and deliberately omitted behavior.
@@ -0,0 +1,19 @@
1
+ # Effective HTML Examples
2
+
3
+ ## Product workflow prototype
4
+
5
+ User: "Create a self-contained HTML prototype for approving an expense report."
6
+
7
+ Good behavior: Read `references/html-prototype.md` and `references/design-artifact.md`, choose the smallest credible approval flow, model loading, validation, success, failure, disabled, and mobile states, then verify keyboard interaction and responsive layout.
8
+
9
+ ## Architecture diagram
10
+
11
+ User: "Show how the API, queue, worker, and database interact during order processing."
12
+
13
+ Good behavior: Read `references/html-diagram.md` and `references/diagrams.md`, choose a sequence or topology model based on the reader's question, keep connectors and labels legible, and verify the diagram at wide and narrow widths.
14
+
15
+ ## Implementation rollout plan
16
+
17
+ User: "Turn these migration notes into an HTML rollout plan."
18
+
19
+ Good behavior: Read `references/html-plan.md` and `references/documents-and-presentations.md`, preserve commitments and terminology, separate decisions from assumptions and open questions, and verify that ownership, dependencies, and ordering remain visible.
@@ -0,0 +1,32 @@
1
+ # Charts and data
2
+
3
+ Read this when the artifact contains quantitative charts, metrics, tables, or a data-driven story.
4
+
5
+ Start with the comparison the viewer needs to make. Select the chart from that question rather than from visual novelty:
6
+
7
+ - Change over time → line, area, or aligned small multiples.
8
+ - Ranked magnitude → ordered bars or a table with visual emphasis.
9
+ - Part to whole → stacked bars when the denominator is meaningful; avoid decorative slices.
10
+ - Distribution → histogram, dot plot, box plot, or density view.
11
+ - Relationship → scatter plot with meaningful scales and annotations.
12
+ - Flow → Sankey or network only when path magnitude is genuinely the point.
13
+
14
+ Use a table when exact values matter more than shape. A chart and a compact table can coexist when they serve different reading needs.
15
+
16
+ ## Make the data honest
17
+
18
+ - Label units, time ranges, sources, and important filters.
19
+ - Use scales that support the intended comparison. Make truncation or nonlinearity explicit.
20
+ - Separate measured values, estimates, targets, and forecasts visually and in text.
21
+ - Do not invent data to make the artifact look complete. Mark missing or illustrative values plainly.
22
+ - Keep color categories consistent and distinguishable without relying on color alone.
23
+ - Treat status colors separately from the general palette.
24
+ - Give dense data room; contain horizontal overflow rather than compressing labels into illegibility.
25
+
26
+ ## Interaction
27
+
28
+ Tooltips should add precision, not carry facts that the chart otherwise fails to communicate. Keep essential values and conclusions available without hover.
29
+
30
+ Filters, brushing, zooming, and linked views should answer real follow-up questions. Show active filters and provide a clear reset. Preserve an accessible summary or table for data that is otherwise available only through pointer interaction.
31
+
32
+ Use animation to explain change between states, not to make bars and lines perform on arrival.
@@ -0,0 +1,48 @@
1
+ # Creative direction
2
+
3
+ Read this when the user or project has not already supplied a complete visual direction.
4
+
5
+ Operate like a small design studio with range, not a template engine with a favorite costume. Every artifact should feel designed for this commission. A planning memo, systems map, product demo, and launch deck can all show equal care without sharing a palette, typeface, silhouette, or amount of drama.
6
+
7
+ ## Find the direction inside the brief
8
+
9
+ Start with the subject's own world: its materials, tools, environments, notation, history, audience, and language. Pull one organizing idea from there. It might shape the grid, the behavior of a diagram, the rhythm of the type, the way information reveals itself, or the role of imagery.
10
+
11
+ Choose a register that fits:
12
+
13
+ - **Workmanlike:** quiet hierarchy, exact spacing, restrained color, direct language. Right for plans, internal briefs, operational reports, and many tools.
14
+ - **Editorial:** stronger composition, distinctive type, art-directed pacing, and one memorable visual move. Right for explainers, launches, research stories, and presentations that need to travel.
15
+ - **Expressive:** a more immersive visual or interactive idea whose execution is itself part of the message. Use rarely, when the subject truly benefits.
16
+
17
+ Do not confuse restraint with neglect or expression with a theatrical hero. Finish the chosen register properly.
18
+
19
+ ## Make a short design plan
20
+
21
+ Before writing CSS, decide:
22
+
23
+ - The visual premise in one sentence.
24
+ - The hierarchy and organizing layout.
25
+ - The color roles and why they belong to the subject.
26
+ - The type roles and the voice each contributes.
27
+ - The density, edge treatment, and image or diagram language.
28
+ - The one place, if any, where motion or interaction carries meaning.
29
+
30
+ The number of colors, typefaces, columns, and components should follow the idea. Do not satisfy a quota.
31
+
32
+ ## Avoid the template reflex
33
+
34
+ Common components are not a visual direction. Cards, pills, rounded rectangles, gradients, tiny uppercase labels, large numerals, and side rails may be useful, but each must express real structure. Do not use them merely because they make an unfinished page look designed.
35
+
36
+ Vary more than color. A new palette on the same centered hero and card grid is still the same design. Reconsider composition, scale, density, typography, shape language, navigation, and interaction.
37
+
38
+ Use one decisive move rather than many unrelated flourishes. Let the rest of the page support it.
39
+
40
+ Typography should establish voice and hierarchy. One well-used family can outperform an arbitrary pairing; several roles are useful only when they remain coherent. Use system fonts when they suit the brief. Embed custom fonts only when their value justifies the file weight and their license permits it.
41
+
42
+ Color should be selected rather than inherited from habit. Neutrals are part of the palette. Status colors must remain semantically distinct from the decorative accent.
43
+
44
+ ## Respect prior art
45
+
46
+ When the user names a style or supplies a reference, follow it faithfully, even if it resembles a convention you would not choose yourself. When a project has tokens and components, use them before inventing replacements.
47
+
48
+ Bundled guidance is for technique, not imitation. Never copy a previous artifact's palette, typography, or composition simply because it worked once.
@@ -0,0 +1,78 @@
1
+ Take the perspective of the creative director at a boutique agency with a reputation for range — every commission gets its own visual identity, scaled to whatever level of treatment the brief actually merits. Palette, type, and layout should all be conscious decisions rooted in this particular subject; nothing should smell like it came off a shelf.
2
+
3
+ ## Begin by sizing up the brief
4
+
5
+ The question is never *whether* to design — it's what register to design in. A memo deserves craftsmanship equal to a landing page; the two simply wear that craftsmanship differently.
6
+
7
+ Much of what comes in wants a workmanlike register: plans, briefs, demos. Finish it properly — real hierarchy in the type, spacing that was thought about, a palette that was chosen — but know when to stop. Hardly any page benefits from a towering, theatrical hero. Ornament sparingly and with taste.
8
+
9
+ Then there's work that earns the editorial register: landing pages, games, apps and tools someone will hold onto or pass along.
10
+
11
+ When in doubt, remember that nobody ever regretted a well-composed page, whereas an identity pushed too hard sometimes backfires.
12
+
13
+ Everything in the fundamentals section applies universally. The editorial process at the end only kicks in when your read of the brief calls for it.
14
+
15
+ ## Fundamentals for every artifact
16
+
17
+ **Defer to prior art.** Before anything else, hunt for an established design system — a AGENTS.md or CLAUDE.md and/or DESIGN.md, QUALITY.md, PRODUCT.md etc, a tokens or theme file, styling on existing components. Found one? Apply it. The guidance below exists to plug holes, never to overrule. Authority flows in one fixed direction: what the user literally said, then whatever system the project already has, then your own taste.
18
+
19
+ **Anchor everything to the subject.** Where the subject is fuzzy, sharpen it first: one concrete thing, a defined audience, a single purpose the page exists to serve. The most distinctive moves are excavated from the subject's native territory — the stuff it's made of, the tools of its trade, the language its people speak. Populate the build with genuine content from the first draft onward; lorem ipsum is banned.
20
+
21
+ **Put two typefaces in conversation.** Even on a page that has nothing to do with letterforms, the letterforms do the heavy lifting. Never link webfonts from Google Fonts or any other font CDN — embed the face as a @font-face data URI instead. Cap measure at about 65 characters; commit to a type scale and don't wander off it; balance headings with `text-wrap: balance`, give paragraphs air, and space out uppercase labels with a hint of letter-spacing.
22
+
23
+ **Neutrals are choices too.** A dead-center mid-grey announces that nobody thought about it; tint that grey faintly toward the accent and suddenly it reads as considered. There's nothing wrong with pure white or near-black grounds when the subject wants them — the test is whether the neutral was selected or merely left over.
24
+
25
+ **Both themes, equal care.** Whatever theme the viewer runs is the theme your page renders in: the OS preference arrives via `prefers-color-scheme`, while the in-app toggle writes `data-theme="dark"` / `data-theme="light"` onto the root element — and the attribute must beat the media query going both ways. The sturdy pattern operates on tokens: declare the palette as custom properties on `:root`; inside `@media (prefers-color-scheme: dark)`, reassign only those tokens — components consume tokens exclusively and are never styled inside the media query itself — and then reassign the tokens a second time under `:root[data-theme="dark"]` and `:root[data-theme="light"]`. The dark counterpart deserves as much attention as the light original: mechanical inversion won't do; legibility and a working accent have to survive on either ground. A concept married to one visual world (the glow of an arcade cabinet, a letterpress invitation) is allowed to remain single-theme — provided that's a verdict you reached, not a corner you forgot.
26
+
27
+ **Spacing belongs to the layout, not the elements.** Sibling groups get flex or grid plus `gap`; scatter per-element margins around and they'll collapse or compound behind your back. Broad content — tables, code, diagrams — sits in its own container with `overflow-x: auto` so horizontal scrolling never leaks to the page body. Wherever numerals stack into columns, switch on `font-variant-numeric: tabular-nums`.
28
+
29
+ **Dodge the telltale AI aesthetic.** Right now, machine output keeps landing on the same few costumes: warm cream (#F4F1EA) under a serif display with a terracotta accent; near-black punctuated by one shot of acid-green or vermilion; hairline broadsheet rules over cramped columns; a purple-to-blue gradient hero floating on white; Inter or Space Grotesk chosen for safety; emoji doing the job of section markers; universal center alignment; `rounded-lg` sprayed everywhere; rounded cards wearing an accent bar or rail. A direction the user has pinned down gets executed faithfully — their instructions trump everything, up to and including a request for one of these exact looks. Absent instructions, that freedom is yours; don't blow it on a cliché.
30
+
31
+ **Engineer it soundly.** Overlapping elements, cascade collisions, fonts silently falling back — rendering bugs breed in the distance between source and screen, so stay vigilant. Non-void elements all get closed, attributes all get double quotes, keyboard focus gets a visible state, and `prefers-reduced-motion` gets respected. When graphics turn generative or decorative, reach for Canvas or WebGL before hand-authoring long SVG path data.
32
+
33
+ **Mind the cascade.** Selector specificity is where CSS goes to fight itself: a class hook like `.section` and an element hook like `.cta` can end up in a tug-of-war over padding and margins, each undoing the other. Architect the cascade so your spacing can't be quietly sabotaged.
34
+
35
+ **Copy is a material.** Treat the words as load-bearing, not garnish. Stand on the reader's side of the glass: name things as people know them, not as the backend does (someone manages *notifications*, never *webhook config*). Verbs stay active; every control declares its exact effect ("Publish", answered by a toast: "Published"). An error message diagnoses the failure and prescribes the fix — never groveling, never hand-waving. Precision outperforms wit.
36
+
37
+ **Make structure mean something.** Numbering, eyebrows, dividers, labels — these devices earn their place by asserting something true about the content, not by decorating it. Numbered markers (01 / 02 / 03) show up in generic work constantly, yet they're only honest when order is real information — an actual procedure, a dated timeline the reader must follow in sequence. Before deploying a device like that, ask whether it's telling the truth.
38
+
39
+ **Interfaces are not documents.** A dashboard or tool is something people scan and drive, not something they read top to bottom, which relocates the craft from typography into information design. Lead with the rollup, follow with the detail; let form carry state alongside the figures — pills, chips, a severity stripe — so trouble is legible in a glance. Status colors (good / warning / critical) live in their own lane, apart from the accent hue, and can't be counted as it. Charts and sparklines get typographic-grade attention: an area fill, a whisper of grid, the endpoint emphasized. If it can be clicked, it should look clickable.
40
+
41
+ ## Process
42
+
43
+ Code comes second. First, rough out a short design plan — a tight token system spanning color, type, and layout:
44
+ - **Color**: 4–6 hex values, each with a name.
45
+ - **Type**: faces covering 2+ roles — a display face with character, deployed with restraint; a body face that partners it; a utility face for captions or data if the work needs one.
46
+ - **Layout**: the organizing idea, captured in a sentence or two.
47
+
48
+ Build only after that, executing the plan and tracing every color and type decision back to it.
49
+
50
+ ## When the request is editorial
51
+
52
+ Now the posture shifts: picture a client who has already thrown out every proposal that felt canned and is paying specifically for conviction. Commit to opinions, and place one honest aesthetic bet where the work will benefit.
53
+
54
+ Audit the design plan against the subject before a line of code exists: any element that could pass for the stock answer to any similar brief gets reworked, with a note on what moved and the reasoning. The code gets written only after the plan has cleared that originality check — and then it follows the revised plan to the letter.
55
+
56
+ **Principles**
57
+
58
+ - Treat the hero as an argument: open on the single most characteristic artifact of the subject's world — headline, image, live demo, interactive moment.
59
+ - The page's personality lives in its type. Choose the display/body pairing on purpose — not the families you'd reach for on autopilot — and lock in a scale with weights, widths, and spacing that were each decided. The treatment of the type should itself be one of the memorable things about the design, never a transparent vessel.
60
+ - Motion is a budget to allocate. Ask where animation genuinely serves the subject — an entrance sequence on load, a reveal tied to scroll, micro-interactions on hover, a layer of ambient atmosphere — and whether it serves at all. A single orchestrated beat tends to outperform effects sprinkled around; let the direction decide. Bear in mind that restraint often wins, and gratuitous animation is itself a hallmark of the AI-generated look.
61
+ - Scale the execution to the ambition. Maximalism demands elaborate follow-through; minimalism demands exactness in spacing, type, and detail. Elegance means delivering the chosen vision completely.
62
+ - Concentrate the daring in one location and hush everything around it. Should the accent quarrel with the ground, slide it toward an analogous hue or drain some saturation — don't trade it for another color.
63
+
64
+ ## After the artifact ships
65
+
66
+ Once the artifact is finished and delivered, ask the user whether they'd like to share it as a public page. If — and only if — they say yes, publish the file with the `tot` CLI (tot.page) and hand back the URL it prints:
67
+
68
+ ```bash
69
+ tot path/to/artifact.html
70
+ ```
71
+
72
+ If `tot` is not installed (`command -v tot` fails), tell the user and offer to install it. Install only on their explicit go-ahead:
73
+
74
+ ```bash
75
+ npm install -g @plannotator/tot
76
+ ```
77
+
78
+ Never publish or install without the user's explicit consent — a shared page is publicly accessible to anyone who has the link.
@@ -0,0 +1,68 @@
1
+ # Diagrams, architecture, and sequences
2
+
3
+ Read this when relationships, flow, time, state, or structure are the main thing the artifact must explain.
4
+
5
+ ## Choose the diagram before choosing the renderer
6
+
7
+ Name the question the viewer should be able to answer, then choose the visual grammar:
8
+
9
+ | Question | Useful grammar |
10
+ | --- | --- |
11
+ | What exists, and how is it connected? | Topology or system map |
12
+ | What happens over time? | Sequence, timeline, or request trace |
13
+ | What decisions or transformations occur? | Process flow |
14
+ | How can something change? | State diagram |
15
+ | What contains or owns what? | Hierarchy or nested boundary map |
16
+ | How do alternatives compare? | Matrix or aligned comparison |
17
+ | How much, how often, or how fast? | Quantitative chart; also read [`charts-and-data.md`](charts-and-data.md) |
18
+
19
+ Do not force several questions into one overloaded picture. Use coordinated views or selectable layers when the audience genuinely needs more than one.
20
+
21
+ ## Choose the medium from the information
22
+
23
+ - **HTML and CSS:** strong for labeled regions, aligned comparisons, grids, timelines, and diagrams whose text needs to reflow.
24
+ - **SVG:** strong for crisp relational diagrams, custom paths, annotations, and interactive vector scenes.
25
+ - **Canvas:** strong for dense, frequently changing, or generative graphics where thousands of DOM nodes would be wasteful.
26
+ - **WebGL:** reserve for spatial, high-volume, or truly three-dimensional work that earns the added complexity.
27
+
28
+ Mix media when useful. A diagram can use semantic HTML controls and explanation around an SVG or Canvas stage.
29
+ Style SVG elements through CSS classes and the artifact's chosen tokens when practical so the scene remains coherent across states and themes.
30
+
31
+ ## Make the structure legible
32
+
33
+ - Establish hierarchy with position, grouping, containment, scale, and whitespace before reaching for color.
34
+ - Keep labels readable at the default view. Do not rotate important prose or place text over busy paths.
35
+ - Route connectors around nodes and labels. Make direction unmistakable and distinguish different edge meanings.
36
+ - Use boundaries to communicate ownership, trust, deployment, or responsibility, not as decoration.
37
+ - Keep a stable overview while exposing detail on demand.
38
+ - For architecture, show the concepts the audience uses. File names and implementation classes belong only when the question is specifically about code structure.
39
+
40
+ Avoid the automatic architecture wallpaper of identical rounded boxes connected by arrows. Services, queues, actors, boundaries, stores, and transformations do not all need the same shape or visual weight.
41
+
42
+ ## Sequence and interaction
43
+
44
+ Sequence should expose causality, not merely flash elements in order.
45
+
46
+ - Give steps durable labels and a visible current state.
47
+ - Let the viewer play, pause, restart, step, or choose a path when the sequence is more than a brief self-explanatory animation.
48
+ - Keep the full system understandable when animation is stopped.
49
+ - Use motion to trace requests, reveal transitions, or connect cause with effect. Respect `prefers-reduced-motion` with an immediate or step-based alternative.
50
+ - Use filtering and layer toggles when they reduce complexity without hiding necessary context.
51
+
52
+ If nodes expose details, make selection obvious. Floating panels must be dismissible and must reopen from the relevant node or control. Important information must remain reachable by keyboard.
53
+
54
+ ## Pan and zoom only when needed
55
+
56
+ A clear diagram that fits should not become a map application. Add pan and zoom when the information space materially exceeds the viewport or close inspection is part of the task.
57
+
58
+ For an SVG stage:
59
+
60
+ - Transform one containing `<g>` rather than rewriting every node.
61
+ - Keep pointer, pan, and zoom math in a single coordinate system. Preserve the point under the cursor while zooming.
62
+ - Suppress click activation after a drag using a small movement threshold.
63
+ - Provide `grab` and `grabbing` feedback, a visible zoom level, and a reset control.
64
+ - Set useful minimum and maximum scales and ensure the initial fit is understandable.
65
+
66
+ ## Verify the picture
67
+
68
+ Inspect the default overview, every interactive state, and any sequence endpoints. Check that connectors do not cross labels, arrows terminate cleanly, text remains legible, panels do not cover critical content, and narrow-screen behavior has an intentional fallback.
@@ -0,0 +1,28 @@
1
+ # Documents and presentations
2
+
3
+ Read this for reports, briefs, plans, explainers, comparisons, and slide-like artifacts.
4
+
5
+ ## Documents
6
+
7
+ Design around the reader's decision or understanding, not around a generic page outline. The opening should orient quickly: what this is, why it matters, and what deserves attention. Follow with evidence, structure, and detail in the order the reader needs them.
8
+
9
+ - Keep prose measures readable and let tables, timelines, code, and diagrams use wider regions.
10
+ - Use headings, labels, numbering, dividers, and callouts only when they express genuine hierarchy or sequence.
11
+ - For plans, stay close to the user's language and ambition. Clarify ownership, order, dependencies, risks, and completion conditions without inventing a larger program.
12
+ - For reports, distinguish observation, interpretation, recommendation, and uncertainty.
13
+ - For comparisons, keep like-for-like attributes aligned so the eye can compare without remembering.
14
+ - For print-oriented work, add sensible print styles and avoid interactions that hide essential content.
15
+
16
+ Most operational documents want a workmanlike register. They still deserve intentional typography, spacing, and color, but rarely need a giant hero or ornamental dashboard furniture.
17
+
18
+ ## Presentations
19
+
20
+ A presentation is paced, not merely paginated. Give each screen one job and one dominant idea.
21
+
22
+ - Establish a visual rhythm across slides, then break it only for emphasis.
23
+ - Keep essential information visible without hover.
24
+ - If the file behaves like a deck, support keyboard navigation, clear progress, and direct slide links when practical.
25
+ - Use builds and transitions to control explanation order, not to decorate every change.
26
+ - Ensure a useful narrow-screen or scrolling fallback when the fixed stage cannot fit.
27
+
28
+ When a request blends a document and a deck, prefer the reading mode the audience will actually use rather than building two half-working experiences.
@@ -0,0 +1,43 @@
1
+ # HTML Diagram
2
+
3
+ Build the smallest visual model that makes the relationship easier to understand than prose alone. Match the notation and visual language to the user's project and subject. Do not force every topic into the same SVG boxes and arrows.
4
+
5
+ ## Choose the right model
6
+
7
+ Identify the question the reader should answer, then select the form:
8
+
9
+ - topology for components and connections;
10
+ - sequence for ordered messages over time;
11
+ - process for steps, branches, and handoffs;
12
+ - state for transitions and conditions;
13
+ - hierarchy for containment or ownership;
14
+ - timeline for change over time;
15
+ - matrix for repeated relationships;
16
+ - quantitative view when magnitude matters.
17
+
18
+ Decide what must remain visible together and what can be revealed on demand. Use a simpler form when it carries the same meaning.
19
+
20
+ ## Choose the rendering method
21
+
22
+ Use HTML and CSS, SVG, Canvas, or WebGL according to the information and scale. Do not use SVG merely because the output is a diagram.
23
+
24
+ - Keep labels, grouping, direction, and connectors legible before adding interaction.
25
+ - Use stable node positions when readers must compare states or steps.
26
+ - Keep edge crossings and ambiguous arrowheads to a minimum.
27
+ - Put intentionally broad canvases in a contained pan or scroll region.
28
+ - Use legends only when notation is not self-explanatory.
29
+
30
+ Add sequencing, filtering, path tracing, pan and zoom, or animation only when it helps answer the stated question. Keep overlays dismissible, controls keyboard-accessible, and motion compatible with `prefers-reduced-motion`.
31
+
32
+ When [`design-artifact`](design-artifact.md) is available, read it for
33
+ the diagram's surrounding composition and visual register. Keep the chosen
34
+ diagram grammar, label legibility, and relationships authoritative over
35
+ decorative treatment.
36
+
37
+ ## Build and verify
38
+
39
+ Deliver one self-contained HTML file with essential CSS and JavaScript inline. Require no build step or external service. Use accessible text alternatives and keep important meaning available without animation or color alone.
40
+
41
+ Inspect the result at wide and narrow widths. Check label collisions, clipped nodes, edge routing, reading order, keyboard operation, overflow, and every interactive state.
42
+
43
+ Return the absolute path, the diagram form chosen, and the main simplifications or assumptions.
@@ -0,0 +1,40 @@
1
+ # HTML Plan
2
+
3
+ Turn source material into a plan people can inspect and act on. Preserve the user's scope, ordering, commitments, and terminology unless they ask for broader synthesis.
4
+
5
+ ## Shape the document around the work
6
+
7
+ Read the conversation, project instructions, and supplied plan before designing. Match an existing design language when one is present. Otherwise derive a quiet, workmanlike direction from the audience and subject.
8
+
9
+ When [`design-artifact`](design-artifact.md) is available, read its
10
+ fundamentals to make that direction intentional. Keep this skill's traceability
11
+ and source-preservation rules authoritative; creative direction must not
12
+ inflate the plan into a dashboard or campaign page.
13
+
14
+ Decide what the plan actually needs:
15
+
16
+ - phases or sequence;
17
+ - status and decision points;
18
+ - owners and collaborators;
19
+ - dependencies and risks;
20
+ - acceptance checks;
21
+ - unresolved questions.
22
+
23
+ Do not add a timeline, progress percentage, status badge, or dashboard summary unless the source supports it. Improve grammar and structure without inflating an implementation plan into a strategy document.
24
+
25
+ ## Preserve traceability
26
+
27
+ - Keep source commitments recognizable.
28
+ - Separate accepted decisions from assumptions and open questions.
29
+ - Show sequence and dependency only where they are real.
30
+ - Use tables for exact mappings, comparisons, or repeated fields.
31
+ - Use a flow or timeline only when it makes order materially easier to understand.
32
+ - Keep long prose readable instead of forcing every paragraph into a card.
33
+
34
+ ## Build and verify
35
+
36
+ Deliver one responsive, accessible, self-contained HTML file. Use semantic headings, lists, tables, and landmarks. Keep essential CSS and JavaScript inline, avoid external services, and make any navigation or disclosure keyboard-operable.
37
+
38
+ Inspect the result at wide and narrow widths. Check that no commitment disappeared, that stages remain in the intended order, that ownership and dependencies are legible, and that long content does not overflow.
39
+
40
+ Return the absolute path and note any structural interpretation you introduced.