@litfamily/lithermes 1.0.7 → 1.0.9
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.
- package/README.md +299 -13
- package/README_Ko-KR.md +300 -14
- package/assets/lithermes-plugin/README.md +17 -6
- package/assets/lithermes-plugin/__init__.py +96 -21
- package/assets/lithermes-plugin/core.py +15 -6
- package/assets/lithermes-plugin/core_commands.py +140 -28
- package/assets/lithermes-plugin/core_contexts.py +88 -15
- package/assets/lithermes-plugin/core_contract.py +118 -9
- package/assets/lithermes-plugin/core_routing.py +197 -8
- package/assets/lithermes-plugin/deliverable_hedge_guard.py +378 -357
- package/assets/lithermes-plugin/diagnostics.py +76 -8
- package/assets/lithermes-plugin/humanizer_detector.py +348 -0
- package/assets/lithermes-plugin/humanizer_ko_metrics.py +108 -0
- package/assets/lithermes-plugin/humanizer_office.py +18 -0
- package/assets/lithermes-plugin/lit_mark.py +1 -1
- package/assets/lithermes-plugin/motion_receipts.py +80 -0
- package/assets/lithermes-plugin/payload-version.json +2240 -64
- package/assets/lithermes-plugin/plugin.yaml +1 -1
- package/assets/lithermes-plugin/rules/bundled-rules/lit-humanizer.md +14 -0
- package/assets/lithermes-plugin/skills/autoconference/assets/report_template.md +2 -1
- package/assets/lithermes-plugin/skills/autoconference/modes/ship/SKILL.md +11 -8
- package/assets/lithermes-plugin/skills/autoresearch/modes/ship/type-checklists.md +2 -2
- package/assets/lithermes-plugin/skills/browser-drive/ORIGIN.json +17 -0
- package/assets/lithermes-plugin/skills/browser-drive/SKILL.md +41 -16
- package/assets/lithermes-plugin/skills/browser-drive/scripts/capability_probe.py +122 -10
- package/assets/lithermes-plugin/skills/frontend-ui-ux/SKILL.md +45 -13
- package/assets/lithermes-plugin/skills/frontend-ui-ux/examples/phase-3-readme-ab/README.md +51 -0
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/README.md +44 -0
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/adaptive-layout.md +34 -62
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/brand-and-imagery.md +22 -70
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/complete-contract.md +18 -4
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/composition.md +27 -78
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/craft-floor.md +74 -0
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/creative-directions.md +25 -69
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/evidence-review.md +18 -97
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/implementation-platforms.md +23 -83
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/inclusive-interface.md +22 -70
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/interaction-motion.md +34 -68
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/motion-guide.md +62 -0
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/operating-lanes.md +14 -78
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/performance-delivery.md +22 -71
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/product-direction.md +17 -70
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/production.md +19 -7
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/redesign-playbook.md +23 -76
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/slop-register.md +69 -0
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/system-foundations.md +22 -67
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/visual-language.md +16 -72
- package/assets/lithermes-plugin/skills/frontend-ui-ux/references/visual-reconstruction.md +16 -81
- package/assets/lithermes-plugin/skills/frontend-ui-ux/resources/THIRD-PARTY-NOTICE.txt +15 -0
- package/assets/lithermes-plugin/skills/frontend-ui-ux/scripts/probe-page.js +311 -0
- package/assets/lithermes-plugin/skills/frontend-ui-ux/scripts/probe-rules.json +46 -0
- package/assets/lithermes-plugin/skills/frontend-ui-ux/scripts/probe.mjs +231 -0
- package/assets/lithermes-plugin/skills/lit-comprehend/SKILL.md +36 -25
- package/assets/lithermes-plugin/skills/lit-comprehend/references/artifact-template.md +45 -87
- package/assets/lithermes-plugin/skills/lit-comprehend/scripts/verify-explainer.py +3 -27
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/NOTICE +33 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/SKILL.md +308 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-architecture-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-architecture-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-architecture-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-bar-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-bar-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-bar-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-beeswarm-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-beeswarm-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-beeswarm-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-bubble-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-bubble-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-bubble-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-bump-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-bump-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-bump-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-data-flow-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-data-flow-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-data-flow-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-datalake-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-datalake-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-datalake-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-db-schema-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-db-schema-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-db-schema-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-dependency-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-dependency-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-dependency-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-deployment-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-deployment-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-deployment-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-dp-integration-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-dp-integration-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-dp-integration-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-dp-security-matrix-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-dp-security-matrix-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-dp-security-matrix-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-er-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-er-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-er-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-fishbone-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-fishbone-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-fishbone-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-flowchart-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-flowchart-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-flowchart-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-gantt-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-gantt-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-gantt-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-heatmap-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-heatmap-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-heatmap-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-high-level-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-high-level-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-high-level-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-high-level-vertical-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-high-level-vertical-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-high-level-vertical-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-import-drawio-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-import-drawio-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-import-drawio-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-import-excalidraw-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-import-excalidraw-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-import-excalidraw-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-import-mermaid-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-import-mermaid-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-import-mermaid-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-it-state-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-it-state-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-it-state-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-journey-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-journey-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-journey-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-kanban-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-kanban-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-kanban-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-layers-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-layers-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-layers-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-line-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-line-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-line-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-loop-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-loop-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-loop-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-loop-terminal-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-loop-terminal-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-loop-terminal-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-marimekko-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-marimekko-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-marimekko-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-medallion-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-medallion-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-medallion-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-nested-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-nested-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-nested-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-org-chart-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-org-chart-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-org-chart-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-paved-road-animated-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-paved-road-animated-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-paved-road-animated-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-polar-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-polar-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-polar-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-policy-trace-animated-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-policy-trace-animated-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-policy-trace-animated-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-process-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-process-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-process-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-pyramid-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-pyramid-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-pyramid-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-quadrant-consultant-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-quadrant-consultant-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-quadrant-consultant-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-quadrant-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-quadrant-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-quadrant-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-queue-animated-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-queue-animated-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-queue-animated-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-radar-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-radar-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-radar-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-ridgeline-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-ridgeline-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-ridgeline-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-sankey-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-sankey-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-sankey-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-scatter-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-scatter-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-scatter-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-sequence-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-sequence-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-sequence-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-sequence-oauth-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-sequence-oauth-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-sequence-oauth-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-slopegraph-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-slopegraph-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-slopegraph-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-state-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-state-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-state-lifecycle-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-state-lifecycle-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-state-lifecycle-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-state-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-story-map-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-story-map-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-story-map-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-streamgraph-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-streamgraph-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-streamgraph-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-swimlane-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-swimlane-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-swimlane-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-timeline-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-timeline-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-timeline-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-tree-block-decomposition-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-tree-block-decomposition-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-tree-block-decomposition-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-tree-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-tree-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-tree-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-treemap-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-treemap-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-treemap-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-uml-class-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-uml-class-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-uml-class-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-venn-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-venn-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-venn-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-wardley-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-wardley-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-wardley-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-waterfall-dark.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-waterfall-full.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/examples/type-waterfall-light.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/fonts/OFL.txt +94 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/fonts/PretendardVariable.woff2 +0 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/fonts/provenance.json +22 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/icons.html +231 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/index.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/licenses/devicon-MIT.txt +20 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/licenses/diagram-design-MIT.txt +21 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/licenses/log-z-MIT.txt +21 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/licenses/simple-icons-CC0.md +30 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/assets/licenses/tabler-MIT.txt +21 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/01-service-architecture/after.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/01-service-architecture/brief.md +33 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/02-release-decision/after.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/02-release-decision/brief.md +18 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/03-data-retention/after.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/03-data-retention/brief.md +19 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/04-oauth-sequence/after.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/04-oauth-sequence/brief.md +17 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/05-review-lanes/after.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/05-review-lanes/brief.md +17 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/06-rollout-gates/after.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/06-rollout-gates/brief.md +17 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/07-deployment-boundary/after.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/07-deployment-boundary/brief.md +19 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/08-policy-traces/after.html +1 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/examples/08-policy-traces/brief.md +20 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/accessibility.md +37 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/export.md +29 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/import-drawio.md +21 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/import-excalidraw.md +14 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/import-mermaid.md +18 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/import-schema.md +28 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/korean-typography.md +34 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/motion.md +29 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/office-pptx-docx.md +40 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/output-spec.md +48 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/primitive-annotation.md +12 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/primitive-icons.md +21 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/primitive-sketchy.md +11 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/primitive-terminal.md +11 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/profiles.md +24 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/semantic-patterns.md +27 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/style-guide.md +67 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-architecture.md +51 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-bar.md +51 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-beeswarm.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-bubble.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-bump.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-catalog.json +1433 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-data-flow.md +51 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-datalake.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-db-schema.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-dependency.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-deployment.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-dp-integration.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-dp-security-matrix.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-er.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-fishbone.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-flowchart.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-gantt.md +49 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-heatmap.md +53 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-high-level-vertical.md +53 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-high-level.md +53 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-import-drawio.md +53 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-import-excalidraw.md +53 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-import-mermaid.md +53 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-it-state.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-journey.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-kanban.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-layers.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-line.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-loop-terminal.md +53 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-loop.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-marimekko.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-medallion.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-nested.md +59 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-org-chart.md +58 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-paved-road-animated.md +72 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-polar.md +67 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-policy-trace-animated.md +69 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-process.md +58 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-pyramid.md +59 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-quadrant-consultant.md +60 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-quadrant.md +57 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-queue-animated.md +63 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-radar.md +57 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-ridgeline.md +63 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-sankey.md +68 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-scatter.md +60 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-sequence-oauth.md +66 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-sequence.md +63 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-slopegraph.md +65 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-state-lifecycle.md +53 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-state.md +59 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-story-map.md +52 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-streamgraph.md +53 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-swimlane.md +52 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-timeline.md +52 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-tree-block-decomposition.md +57 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-tree.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-treemap.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-uml-class.md +52 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-venn.md +51 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-wardley.md +52 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/type-waterfall.md +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/references/verifier-guide.md +31 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/block-registry.mjs +43 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/browser-version.mjs +12 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/check-visible-text.py +12 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/diagram_brief.py +192 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/diagram_catalog.py +135 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/diagram_checks.py +123 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/diagram_cli.py +94 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/diagram_geometry.py +130 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/diagram_metrics.py +166 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/diagram_quality.py +293 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/diagram_quality_geometry.py +200 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/diagram_records.py +205 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/diagram_sequence.py +55 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/doctor.mjs +24 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/drawio_extract.py +209 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/drawio_source.py +188 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/excalidraw_extract.py +233 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/excalidraw_support.py +64 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/export.mjs +125 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/mermaid_extract.py +240 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/mermaid_source.py +39 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/office-safety.mjs +54 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/verify-all.py +12 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/verify-brief.py +12 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/verify-diagram.py +12 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/verify-motion.py +12 -0
- package/assets/lithermes-plugin/skills/lit-diagram-drawer/scripts/verify-type.py +12 -0
- package/assets/lithermes-plugin/skills/lit-docx/NOTICE +1 -0
- package/assets/lithermes-plugin/skills/lit-docx/SKILL.md +97 -0
- package/assets/lithermes-plugin/skills/lit-docx/references/frontmatter_schema.md +42 -0
- package/assets/lithermes-plugin/skills/lit-docx/references/journal_style_spec.md +17 -0
- package/assets/lithermes-plugin/skills/lit-docx/references/markdown_quality_checklist.md +37 -0
- package/assets/lithermes-plugin/skills/lit-docx/references/slop_phrase_list.yaml +58 -0
- package/assets/lithermes-plugin/skills/lit-docx/references/slop_rules.md +35 -0
- package/assets/lithermes-plugin/skills/lit-docx/scripts/clean_markdown.py +95 -0
- package/assets/lithermes-plugin/skills/lit-docx/scripts/convert_md_to_docx.py +1041 -0
- package/assets/lithermes-plugin/skills/lit-docx/scripts/convert_md_to_pdf.py +281 -0
- package/assets/lithermes-plugin/skills/lit-docx/scripts/convert_pdf.py +130 -0
- package/assets/lithermes-plugin/skills/lit-docx/scripts/edit_docx.py +297 -0
- package/assets/lithermes-plugin/skills/lit-docx/scripts/embed_images.py +78 -0
- package/assets/lithermes-plugin/skills/lit-docx/scripts/generate_docx_templates.py +491 -0
- package/assets/lithermes-plugin/skills/lit-docx/scripts/slop_lint.py +536 -0
- package/assets/lithermes-plugin/skills/lit-docx/scripts/visual_audit.py +41 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/docx/acs.docx +0 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/docx/elsevier.docx +0 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/docx/ieee.docx +0 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/docx/korean-generic.docx +0 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/docx/nature.docx +0 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/latex/acs/README.md +5 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/latex/acs/template.tex +37 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/latex/elsevier/README.md +5 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/latex/elsevier/template.tex +38 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/latex/ieee/README.md +5 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/latex/ieee/template.tex +37 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/latex/korean-generic/README.md +5 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/latex/korean-generic/template.tex +37 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/latex/nature/README.md +5 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/latex/nature/template.tex +37 -0
- package/assets/lithermes-plugin/skills/lit-docx/templates/registry.yaml +1366 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/NOTICE +170 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/SKILL.md +125 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/assets/report-skeleton.md +26 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/assets/slide-text-skeleton.md +30 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/accessibility-note/after.md +7 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/accessibility-note/before.md +7 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/api-reference/after.md +9 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/api-reference/before.md +15 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/changelog/after.md +5 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/changelog/before.md +12 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/code-comments/after.md +10 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/code-comments/before.md +19 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/commit/after.md +5 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/commit/before.md +7 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/data-release/after.md +7 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/data-release/before.md +9 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/detector-validation/ko-metrics-golden.json +49 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/detector-validation/pos-real.txt +26 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/detector-validation/rule-cases.json +306 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/english-essay/after.md +5 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/english-essay/before.md +5 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/incident-update/after.md +7 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/incident-update/before.md +7 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/ko-essay/after.md +7 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/ko-essay/before.md +9 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/ko-report/after.md +9 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/ko-report/before.md +13 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/ko-slide/after.md +19 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/ko-slide/before.md +21 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/meeting-brief/after.md +9 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/meeting-brief/before.md +11 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/policy-faq/after.md +9 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/policy-faq/before.md +9 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/pr/after.md +15 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/pr/before.md +17 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/project-update/after.md +7 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/project-update/before.md +9 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/readme/after.md +12 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/readme/before.md +14 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/report/after.md +13 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/report/before.md +11 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/research-abstract/after.md +5 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/research-abstract/before.md +5 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/slides/after.md +19 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/slides/before.md +19 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/troubleshooting/after.md +11 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/examples/troubleshooting/before.md +11 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/README.md +16 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/always-on-rule.md +9 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/code-patterns.md +468 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/deliverable-channels.md +111 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/en-patterns-checklist.md +43 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/en-patterns-content.md +243 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/en-patterns-structure.md +375 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/en-patterns.md +57 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/ko-metrics.md +33 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/ko-patterns-a-d.md +659 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/ko-patterns-e-j.md +387 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/ko-patterns.md +31 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/rewrite-playbook.md +54 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/references/taxonomy.md +153 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/rules.json +884 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/scripts/detect.py +17 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/scripts/extract_office_text.py +114 -0
- package/assets/lithermes-plugin/skills/lit-humanizer/scripts/ko_metrics.py +35 -0
- package/assets/lithermes-plugin/skills/lit-pptx/NOTICE +1 -0
- package/assets/lithermes-plugin/skills/lit-pptx/SKILL.md +109 -0
- package/assets/lithermes-plugin/skills/lit-pptx/agents/analyst.md +49 -0
- package/assets/lithermes-plugin/skills/lit-pptx/agents/antithesis.md +65 -0
- package/assets/lithermes-plugin/skills/lit-pptx/agents/architect.md +44 -0
- package/assets/lithermes-plugin/skills/lit-pptx/agents/critic.md +42 -0
- package/assets/lithermes-plugin/skills/lit-pptx/agents/synthesizer.md +47 -0
- package/assets/lithermes-plugin/skills/lit-pptx/agents/thesis.md +33 -0
- package/assets/lithermes-plugin/skills/lit-pptx/assets/azure/circle-lg.png +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/assets/azure/circle-md.png +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/assets/azure/circle-sm.png +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/bin/office.mjs +77 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/PRETENDARD-OFL.txt +94 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/A2Z-Black.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/A2Z-Bold.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/A2Z-ExtraBold.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/A2Z-ExtraLight.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/A2Z-Light.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/A2Z-Medium.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/A2Z-Regular.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/A2Z-SemiBold.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/A2Z-Thin.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/OFL.txt +94 -0
- package/assets/lithermes-plugin/skills/lit-pptx/fonts/a2z-font/SOURCE.md +29 -0
- package/assets/lithermes-plugin/skills/lit-pptx/pretendard-font/public/static/PretendardGOV-Bold.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/pretendard-font/public/static/PretendardGOV-Regular.otf +0 -0
- package/assets/lithermes-plugin/skills/lit-pptx/references/anti-slop-checklist.md +71 -0
- package/assets/lithermes-plugin/skills/lit-pptx/references/authoring-guide.md +139 -0
- package/assets/lithermes-plugin/skills/lit-pptx/references/consensus-protocol.md +125 -0
- package/assets/lithermes-plugin/skills/lit-pptx/references/data-display-cookbook.md +45 -0
- package/assets/lithermes-plugin/skills/lit-pptx/references/design-system-azure.md +58 -0
- package/assets/lithermes-plugin/skills/lit-pptx/runtime/package-lock.json +750 -0
- package/assets/lithermes-plugin/skills/lit-pptx/runtime/package.json +15 -0
- package/assets/lithermes-plugin/skills/lit-pptx/runtime/requirements.in +7 -0
- package/assets/lithermes-plugin/skills/lit-pptx/runtime/requirements.lock +391 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/compile-deck.js +447 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/craft_extras.py +215 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/embed_fonts.py +199 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/integrity.py +60 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/inventory.py +64 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/learn_template.py +433 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/derive-palette.js +176 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/directive-parser.js +244 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/font-map.js +79 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/gen-bg.js +85 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/gen-gradient-assets.js +36 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/layout-resolver.js +736 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/markdown-loader.js +136 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/render-adapter-html.js +357 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/render-adapter-pptx.js +1864 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/slide-ast.js +539 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/spec-validator.js +94 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/lib/template-registry.js +355 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/qa_deck.py +791 -0
- package/assets/lithermes-plugin/skills/lit-pptx/scripts/validate_pptx.py +206 -0
- package/assets/lithermes-plugin/skills/lit-pptx/slide-formats/markdown-slide-spec-v1.md +251 -0
- package/assets/lithermes-plugin/skills/lit-pptx/slide-formats/markdown-slide-spec-v2.md +221 -0
- package/assets/lithermes-plugin/skills/lit-pptx/slide-formats/slide-ast-v1.schema.json +229 -0
- package/assets/lithermes-plugin/skills/lit-pptx/slide-formats/slide-ast-v2.schema.json +144 -0
- package/assets/lithermes-plugin/skills/lit-pptx/slide-formats/template-enrollment-contract.md +228 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/AZURE-A2Z/capabilities.yaml +146 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/AZURE-A2Z/layout-mapping.yaml +384 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/AZURE-A2Z/template.yaml +37 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/AZURE-PRO/capabilities.yaml +154 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/AZURE-PRO/layout-mapping.yaml +405 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/AZURE-PRO/template.yaml +37 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/BOILERPLATE-A2Z/capabilities.yaml +179 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/BOILERPLATE-A2Z/layout-mapping.yaml +299 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/BOILERPLATE-A2Z/template.yaml +45 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/BOILERPLATE-PRETENDARD/capabilities.yaml +181 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/BOILERPLATE-PRETENDARD/layout-mapping.yaml +299 -0
- package/assets/lithermes-plugin/skills/lit-pptx/templates/enrolled/BOILERPLATE-PRETENDARD/template.yaml +44 -0
- package/assets/lithermes-plugin/skills/lit-scientific-visualization/SKILL.md +2 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/SKILL.md +71 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/bin/audio.py +45 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/bin/motion.mjs +690 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/bin/runtime.mjs +299 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/NOTICE +23 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/THIRD_PARTY_NOTICES +55 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/browser.mjs +169 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/completion.mjs +52 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/constants.mjs +162 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/director.mjs +33 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/encode.mjs +191 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/flash.mjs +163 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/frame.mjs +428 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/gate.mjs +483 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/look.mjs +223 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/page.js +622 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/presets.mjs +170 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/scenes.mjs +242 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/sound.mjs +382 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/stage-gate.mjs +97 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/stage-init.js +186 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/stage-kit.js +389 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/stage-qa.mjs +358 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/stage-worker.mjs +33 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/stage.mjs +691 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/stills.mjs +71 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/stroke.mjs +231 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/timeline.mjs +177 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/treatment.mjs +244 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/type.mjs +183 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/engine/util.mjs +152 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/references/craft-loop.md +175 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/references/engine-contract.md +166 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/references/runtime.md +122 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/references/stage.md +261 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/references/style-bibles.md +122 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/references/treatment.md +164 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/references/type-craft.md +92 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/runtime/fonts.json +154 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/runtime/licenses/CREDITS +20 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/runtime/licenses/EMS-OFL.txt +91 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/runtime/package-lock.json +88 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/runtime/package.json +12 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/runtime/requirements.in +1 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/runtime/requirements.lock +727 -0
- package/assets/lithermes-plugin/skills/lit-typographic-motion/runtime/word-timing.json +9 -0
- package/assets/lithermes-plugin/skills/litresearch/SKILL.md +19 -18
- package/assets/lithermes-plugin/skills/litwork/SKILL.md +28 -0
- package/assets/lithermes-plugin/skills/visual-qa/references/complete-contract.md +3 -3
- package/package.json +1 -1
- package/readme-assets/ab-simple/s11-ui-baseline-desktop.webp +0 -0
- package/readme-assets/ab-simple/s11-ui-lithermes-desktop.webp +0 -0
- package/readme-assets/ab-simple/s3-ui-baseline-desktop.webp +0 -0
- package/readme-assets/ab-simple/s3-ui-lithermes-desktop.webp +0 -0
- package/readme-assets/ab-simple/s4-ui-baseline-desktop.webp +0 -0
- package/readme-assets/ab-simple/s4-ui-lithermes-desktop.webp +0 -0
- package/readme-assets/ab-simple/s5-office-baseline-slides.webp +0 -0
- package/readme-assets/ab-simple/s5-office-lithermes-slides.webp +0 -0
- package/readme-assets/ab-simple/s7-lithermes-diagram.webp +0 -0
- package/readme-assets/ab-simple/s8-office-baseline-slides.webp +0 -0
- package/readme-assets/ab-simple/s8-office-lithermes-slides.webp +0 -0
- package/readme-assets/ab-simple/s9-office-lithermes-pages.webp +0 -0
- package/readme-assets/badge-version.svg +1 -1
- package/readme-assets/cover-motion-still.webp +0 -0
- package/readme-assets/cover-motion.webp +0 -0
- package/readme-assets/skills/autoconference.webp +0 -0
- package/readme-assets/skills/autoresearch.webp +0 -0
- package/readme-assets/skills/browser-drive.webp +0 -0
- package/readme-assets/skills/comment-checker.webp +0 -0
- package/readme-assets/skills/debugging.webp +0 -0
- package/readme-assets/skills/deep-interview.webp +0 -0
- package/readme-assets/skills/frontend-ui-ux.webp +0 -0
- package/readme-assets/skills/lit-burnoff-file.webp +0 -0
- package/readme-assets/skills/lit-burnoff.webp +0 -0
- package/readme-assets/skills/lit-code.webp +0 -0
- package/readme-assets/skills/lit-commit.webp +0 -0
- package/readme-assets/skills/lit-comprehend.webp +0 -0
- package/readme-assets/skills/lit-crucible.webp +0 -0
- package/readme-assets/skills/lit-diagram-drawer.webp +0 -0
- package/readme-assets/skills/lit-docx.webp +0 -0
- package/readme-assets/skills/lit-handoff.webp +0 -0
- package/readme-assets/skills/lit-humanizer.webp +0 -0
- package/readme-assets/skills/lit-init.webp +0 -0
- package/readme-assets/skills/lit-plan.webp +0 -0
- package/readme-assets/skills/lit-pptx.webp +0 -0
- package/readme-assets/skills/lit-recap.webp +0 -0
- package/readme-assets/skills/lit-scientific-visualization.webp +0 -0
- package/readme-assets/skills/lit-typographic-motion.webp +0 -0
- package/readme-assets/skills/litgoal.webp +0 -0
- package/readme-assets/skills/litresearch.webp +0 -0
- package/readme-assets/skills/litwork.webp +0 -0
- package/readme-assets/skills/lsp-setup.webp +0 -0
- package/readme-assets/skills/lsp.webp +0 -0
- package/readme-assets/skills/readme-studio.webp +0 -0
- package/readme-assets/skills/refactor.webp +0 -0
- package/readme-assets/skills/review-work.webp +0 -0
- package/readme-assets/skills/rules.webp +0 -0
- package/readme-assets/skills/start-work.webp +0 -0
- package/readme-assets/skills/structural-search.webp +0 -0
- package/readme-assets/skills/visual-qa.webp +0 -0
- package/readme-assets/skills/wikify.webp +0 -0
- package/src/cli.js +40 -1
- package/src/lib/check.js +21 -0
- package/src/lib/install.js +262 -7
- package/src/lib/skillPayload.js +3 -3
- package/assets/lithermes-plugin/skills/lit-korean/SKILL.md +0 -237
- package/assets/lithermes-plugin/skills/lit-korean/references/quick-rules.md +0 -24
- package/assets/lithermes-plugin/skills/lit-korean/references/safety-checklist.md +0 -23
- package/readme-assets/cover.webp +0 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# Motion guide
|
|
2
|
+
|
|
3
|
+
Use motion to explain hierarchy, state, or cause and effect. Name the page, components, implementation stack, and excluded areas before specifying choreography. Motion is optional; remove it when the surface communicates just as clearly without it.
|
|
4
|
+
|
|
5
|
+
## Motion brief
|
|
6
|
+
|
|
7
|
+
Record the following before implementation:
|
|
8
|
+
|
|
9
|
+
- **Stack and scope:** framework, styling system, animation package, icon set, tested version pins, and exact components in scope.
|
|
10
|
+
- **Tokens:** colors, spacing, font roles, numeric weights, and breakpoints. Give fluid display type a `clamp()` range, line-height, and system fallback.
|
|
11
|
+
- **Layers:** a short z-index map for page content, navigation, and overlays.
|
|
12
|
+
- **Responsive plan:** named content-driven breakpoints, including a separate mobile navigation when desktop navigation no longer fits.
|
|
13
|
+
- **Motion:** named curve, duration, trigger, moving elements, and reduced-motion result for each sequence.
|
|
14
|
+
- **Media and limits:** existing asset names, initial transfer budget, poster, fallback, lazy-loading point, and device conditions.
|
|
15
|
+
|
|
16
|
+
Use the page structure and dependency order, not scroll order, to organize the brief: stack and tokens; structure; media and fallbacks; navigation; content; interactions; dependencies and build configuration. Name files or components so implementation cannot invent unrelated sections.
|
|
17
|
+
|
|
18
|
+
## Curves, durations, and triggers
|
|
19
|
+
|
|
20
|
+
Use these named curves as defaults; keep values in tokens so the motion family can be adjusted without hunting through components.
|
|
21
|
+
|
|
22
|
+
| Token | Curve | Duration | Use |
|
|
23
|
+
| --- | --- | ---: | --- |
|
|
24
|
+
| `enter` | `cubic-bezier(0.16, 1, 0.3, 1)` | 420 ms | Short composition or section entrance |
|
|
25
|
+
| `ui` | `cubic-bezier(0.2, 0.8, 0.2, 1)` | 180 ms | Hover, focus, and state feedback |
|
|
26
|
+
| `exit` | `cubic-bezier(0.4, 0, 1, 1)` | 160 ms | Dismissal or removal |
|
|
27
|
+
|
|
28
|
+
Pair each duration with a named curve. Keep ordinary control feedback below 400 ms; use a longer duration only when progress remains apparent and the user can continue working.
|
|
29
|
+
|
|
30
|
+
For section reveals, trigger once when at least 15% of the section enters view, with a bottom root margin of 10%. If the observer is unavailable, show the content. A scroll-linked effect must declare its progress interval and output range; keep one dominant movement in the hero.
|
|
31
|
+
|
|
32
|
+
Stagger only a short, related group: `baseDelay + itemIndex × 60 ms`, capped at 300 ms. Do not stagger an article line by line or delay readable content.
|
|
33
|
+
|
|
34
|
+
## Per-section and frame budget
|
|
35
|
+
|
|
36
|
+
- One entrance sequence per section and no more than two simultaneously moving elements.
|
|
37
|
+
- One principal hero effect and at most one animated headline.
|
|
38
|
+
- Prefer `transform` and `opacity`; avoid per-frame `top`, `left`, `width`, and `height`.
|
|
39
|
+
- Keep animation work below 4 ms per frame when measured, leaving time for layout, paint, and input. Check a mid-range device; a desktop GPU is not a phone proxy.
|
|
40
|
+
- Keep controls usable while decoration runs. A 3D scene, cursor tracking, or carousel needs a separately named input path and frame/device budget.
|
|
41
|
+
|
|
42
|
+
## Media budgets and fallbacks
|
|
43
|
+
|
|
44
|
+
State the initial transfer budget. Defaults: no more than 1 MB compressed for initial motion media and 150 KB for a video poster. Lazy-load below-the-fold media, size images for their rendered box, and split optional motion code from the initial route.
|
|
45
|
+
|
|
46
|
+
Every background video has a real poster and a still-image fallback. On small screens, when data saving is enabled, or when playback is unavailable, do not download or autoplay the video; preserve the same message and contrast in the fallback. Group playback behavior together: muted, looping, inline, and autoplay only where allowed. Use an approved asset by its existing name; if none exists, request a real asset or specify a designed still. Never invent a media URL.
|
|
47
|
+
|
|
48
|
+
## Accessibility and input
|
|
49
|
+
|
|
50
|
+
Honor `prefers-reduced-motion`: show final content immediately, remove parallax and tilt, and shorten or remove nonessential transitions. Motion must not gate content, expose labels, indicate success by itself, or change keyboard reachability.
|
|
51
|
+
|
|
52
|
+
Restrict pointer tilt to fine-pointer devices, clamp rotation to ±4°, reset on pointer exit, and leave touch input alone. Compose tilt with other transforms instead of overwriting them. Do not request device orientation or require hover to reveal content.
|
|
53
|
+
|
|
54
|
+
Keep full headline text in the accessibility tree and readable before an animation package loads. Test with motion enabled, reduced motion, and media unavailable. Focus, keyboard operation, contrast, and reading order must remain complete in all three.
|
|
55
|
+
|
|
56
|
+
## Review checklist
|
|
57
|
+
|
|
58
|
+
- Are stack/version pins, scope, tokens, breakpoints, and layers explicit?
|
|
59
|
+
- Does each sequence have a named curve, duration, trigger, and reduced-motion behavior?
|
|
60
|
+
- Is section/hero motion within budget, with no hidden content on observer failure?
|
|
61
|
+
- Do media poster, mobile/data-saving fallback, lazy loading, and transfer limits work?
|
|
62
|
+
- Can a keyboard and screen-reader user complete the same task without motion?
|
|
@@ -1,85 +1,21 @@
|
|
|
1
|
-
Operating lanes
|
|
1
|
+
# Operating lanes
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
Name it in `direction.principles`; an unnamed lane defaults to the most destructive reading.
|
|
3
|
+
Select one lane from the product on disk before editing and record it in the Design Contract. These lanes describe change scope; they do not grant repository or host permission. See production.md for request mode and authorization.
|
|
5
4
|
|
|
6
|
-
|
|
5
|
+
The selected lane is the contract's `lane` value.
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
| Lane | Choose when | Inspect first | Preserve | Exit check |
|
|
8
|
+
| --- | --- | --- | --- | --- |
|
|
9
|
+
| New-build | No routes, tokens, or components exist | Tasks, audience, stack, platform, locales, inventory | Declared scope and stack | Contract states exist; every inventory item is rendered and reviewed |
|
|
10
|
+
| Brownfield | Add or repair a surface in a working product | Token file, neighboring components, spacing and import conventions | Existing APIs, untouched routes, names | Change fits the current system; untouched surfaces still render |
|
|
11
|
+
| Redesign | Change appearance or flow of a working surface | Baseline captures, controls, states, behavior, performance | URLs, fields, validation, permissions, focus order, meaning | Parity holds against the baseline |
|
|
12
|
+
| Reference-fidelity | A supplied target governs named visual regions | Source files, dimensions, hashes, classified regions | Semantics, live component tree, keyboard and screen-reader behavior | Same-size region review plus live implementation |
|
|
13
|
+
| Design-system | Deliver reusable primitives consumed elsewhere | Every consumer, variant, state, and current API | Existing props, tokens, and consumer output | Consumers pass or have an owned migration |
|
|
9
14
|
|
|
10
|
-
|
|
11
|
-
- Working product; the request adds or repairs one surface -> **brownfield**.
|
|
12
|
-
- Working product; the request changes how surfaces look or flow -> **redesign**.
|
|
13
|
-
- A concrete visual target supplied as authoritative -> **reference-fidelity**.
|
|
14
|
-
- The deliverable is primitives other surfaces consume -> **design-system**.
|
|
15
|
+
## Behavioral acceptance
|
|
15
16
|
|
|
16
|
-
|
|
17
|
+
For a new or changed UI, list each requested behavior separately and map it to a visible control or state before building. Keep functionality distinct from visual polish. Give every data graphic a meaningful accessible name. For tabular records with requested search, filtering, or pagination, use semantic, operable controls and verify that each changes the displayed results. In a rendered browser, exercise every requested interaction at the target viewports and inspect the resulting state; report only checks actually run.
|
|
17
18
|
|
|
18
|
-
|
|
19
|
+
A component set may contain multiple runtime lanes; record and apply each where it governs. For requests spanning change lanes, sequence them: design-system first, then brownfield/redesign, then reference-fidelity. Close one lane and update its contract baseline before starting the next. If the order materially changes the result, ask.
|
|
19
20
|
|
|
20
|
-
-
|
|
21
|
-
`localization.cjk_line_break_review`, `inventory`.
|
|
22
|
-
- **May change:** anything in the declared scope.
|
|
23
|
-
- **Preserve:** the stack and recorded scope; a new route updates the review snapshot within existing authority.
|
|
24
|
-
- **Fails by:** styling before the inventory is finite; deferred states never ship.
|
|
25
|
-
- **Exit:** all nine states on every `components` entry; one capture per inventory entry.
|
|
26
|
-
|
|
27
|
-
## Lane: brownfield
|
|
28
|
-
|
|
29
|
-
The existing code is the specification. Your work should be unattributable.
|
|
30
|
-
|
|
31
|
-
- **Gather:** the token file, three neighboring components, the spacing scale.
|
|
32
|
-
- **May change:** the requested surface, plus tokens added under existing naming.
|
|
33
|
-
- **Preserve:** token names, class conventions, file layout, import style, untouched routes.
|
|
34
|
-
- **Fails by:** a second design vocabulary beside the first, doubling every primitive.
|
|
35
|
-
- **Exit:** nobody can tell which files you touched; untouched routes render identically.
|
|
36
|
-
|
|
37
|
-
## Lane: redesign
|
|
38
|
-
|
|
39
|
-
Appearance moves, behavior does not; behavior is the half you must prove.
|
|
40
|
-
|
|
41
|
-
- **Gather:** a pre-change capture per affected route and state, stored under `.hermes/lithermes/`.
|
|
42
|
-
- **May change:** tokens, layout, type, color, motion, component internals.
|
|
43
|
-
- **Preserve:** URLs, field names, validation, keyboard order, data per permission, copy meaning.
|
|
44
|
-
- **Fails by:** a control disappearing because nobody recorded that it existed.
|
|
45
|
-
- **Exit:** the parity list holds item by item against the pre-change captures.
|
|
46
|
-
|
|
47
|
-
## Lane: reference-fidelity
|
|
48
|
-
|
|
49
|
-
The target governs appearance only: evidence of one rendering, not an instruction on structure.
|
|
50
|
-
|
|
51
|
-
- **Gather:** target files, pixel dimensions, `inventory.references[].sha256`, `classification: fidelity`.
|
|
52
|
-
- **May change:** your own markup and tokens, as far as the target requires.
|
|
53
|
-
- **Preserve:** semantic structure, real components, keyboard and screen-reader behavior.
|
|
54
|
-
- **Fails by:** the reference used as a background image, or coordinates instead of layout.
|
|
55
|
-
- **Exit:** same-dimension captures compared region by region, plus a live component tree.
|
|
56
|
-
|
|
57
|
-
## Lane: design-system
|
|
58
|
-
|
|
59
|
-
These primitives outlive the request, so a stable API outranks a better idea.
|
|
60
|
-
|
|
61
|
-
- **Gather:** every consumer of the primitive and every variant in use.
|
|
62
|
-
- **May change:** internal implementation, added variants, added tokens.
|
|
63
|
-
- **Preserve:** prop names, token names, default rendering, each consumer's output.
|
|
64
|
-
- **Fails by:** a rename sold as cleanup that breaks callers nobody enumerated.
|
|
65
|
-
- **Exit:** every consumer renders unchanged or has an owned migration entry; refresh
|
|
66
|
-
`payload-version.json` when the primitive ships as a plugin asset.
|
|
67
|
-
|
|
68
|
-
## Requests spanning two lanes
|
|
69
|
-
|
|
70
|
-
Never average two lanes into one pass. Sequence them and re-freeze between.
|
|
71
|
-
|
|
72
|
-
1. Order by dependency: design-system, then brownfield or redesign, then reference-fidelity.
|
|
73
|
-
2. Drive the first lane to its own exit condition and capture evidence there.
|
|
74
|
-
3. Re-freeze the contract, recompute its SHA-256, start the second lane from that baseline.
|
|
75
|
-
4. If they cannot be ordered, stop and ask which one ships first.
|
|
76
|
-
|
|
77
|
-
## Failure patterns
|
|
78
|
-
|
|
79
|
-
Reject:
|
|
80
|
-
|
|
81
|
-
- Editing before the lane is named in the contract.
|
|
82
|
-
- A design-system change whose consumer list was never enumerated.
|
|
83
|
-
- One combined pass that half-satisfies two lanes' exit conditions.
|
|
84
|
-
- A plugin-asset lane closed without `sync-plugin -- --in-place` and a `lithermes doctor` run
|
|
85
|
-
on an isolated `--hermes-home`.
|
|
21
|
+
For a plugin-asset change, follow the product's payload sync and doctor procedure in an isolated Hermes home, never a real user home, before calling the lane complete.
|
|
@@ -1,85 +1,36 @@
|
|
|
1
|
-
Performance and delivery
|
|
1
|
+
# Performance and delivery
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
numbers in `performance` while the inventory is still open, then measure the rendered route.
|
|
3
|
+
Set measurable targets in the performance contract before styling is finished. Treat the values below as web-route starting budgets; adapt them to the product's devices and service level, and record any deviation before measuring.
|
|
5
4
|
|
|
6
|
-
|
|
5
|
+
Record agreed thresholds in `performance.lcp_ms`, `performance.cls`, and `performance.inp_ms`.
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
## Starting budgets
|
|
9
8
|
|
|
10
|
-
- LCP
|
|
11
|
-
- TTFB
|
|
12
|
-
- Route
|
|
13
|
-
-
|
|
14
|
-
-
|
|
9
|
+
- At p75 on the slowest supported device: LCP ≤2.5 s, INP ≤200 ms, CLS ≤0.1.
|
|
10
|
+
- TTFB ≤800 ms; usable interaction ≤3.5 s at 4× CPU throttle and 1.6 Mbps.
|
|
11
|
+
- Route transfer ≤500 KB compressed: target ≤170 KB script, ≤60 KB styles, ≤200 KB above-fold imagery.
|
|
12
|
+
- Use at most two font families and four files, each ≤40 KB WOFF2; subset for supported locales.
|
|
13
|
+
- At 60 Hz, keep frame work within 16.7 ms; no task over 50 ms and blocking under 300 ms per route.
|
|
15
14
|
|
|
16
|
-
## Diagnose
|
|
15
|
+
## Diagnose before optimizing
|
|
17
16
|
|
|
18
|
-
|
|
19
|
-
it to this list.
|
|
17
|
+
Measure cold and warm loads through largest paint and first input. Record the blocking resource and test likely causes: render-blocking scripts/styles, undiscoverable or lazy LCP imagery, delayed fonts, sequential fetches, layout read/write loops, full-list mount, non-async third-party tags, or unnecessary full-document hydration.
|
|
20
18
|
|
|
21
|
-
|
|
22
|
-
- LCP image set in CSS or marked `loading="lazy"`, so discovery waits on layout.
|
|
23
|
-
- Typeface with no `preload` and no `font-display`: invisible text, then reflow.
|
|
24
|
-
- Sequential fetches — the child request starts only after the parent mounts.
|
|
25
|
-
- Layout thrash: `offsetHeight` read between writes inside a loop.
|
|
26
|
-
- A list that renders every row at mount.
|
|
27
|
-
- Analytics or chat tag on the critical path with no `async` and no timeout.
|
|
28
|
-
- Whole-document hydration for a route that is mostly static markup.
|
|
19
|
+
Ship correctly sized media: AVIF with WebP fallback where supported; cap raster width near 2× the largest rendered CSS box; set intrinsic dimensions or aspect ratio; lazy-load below-fold images only; prioritize the LCP image. Split code by route and interaction; load charts, editors, and animation only where needed. Prefer server-rendered static content with focused hydration when the route allows it.
|
|
29
20
|
|
|
30
|
-
|
|
21
|
+
Virtualize only after measurement (around 200 rows or 2,000 nodes is a starting point). Preserve find-in-page and anchors where possible; variable-height lists need a measurement strategy, and accessible virtual tables need row-count and row-index metadata.
|
|
31
22
|
|
|
32
|
-
|
|
23
|
+
## Perceived speed
|
|
33
24
|
|
|
34
|
-
|
|
35
|
-
- `width`/`height` or `aspect-ratio` on every `img`; missing intrinsic size is the usual CLS source.
|
|
36
|
-
- `loading="lazy"` below the fold only; the LCP element takes `fetchpriority="high"`.
|
|
25
|
+
Acknowledge an action within 100 ms even if completion takes longer. Keep progress near the affected control, preserve final geometry while loading, and never add artificial delay to hide slow work.
|
|
37
26
|
|
|
38
|
-
##
|
|
27
|
+
## Audit and decision
|
|
39
28
|
|
|
40
|
-
|
|
29
|
+
For each route, record revision, viewport, pixel ratio, theme, device, throttle, cold/warm run, core metrics, resource bytes, longest task, and element count. Compare each measured value with its contract budget. Fix the highest-impact cause, rerun, and choose:
|
|
41
30
|
|
|
42
|
-
-
|
|
43
|
-
-
|
|
44
|
-
-
|
|
31
|
+
- **SHIP:** all agreed budgets pass.
|
|
32
|
+
- **OPTIMIZE:** name the breached budget, cause, and owner.
|
|
33
|
+
- **RESCOPE:** the requested design cannot meet the budget as stated.
|
|
34
|
+
- **EXCEPTION:** record rationale, owner, expiry, and evidence internally.
|
|
45
35
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
Virtualize above a measured threshold only. Below it the machinery costs more than the rows.
|
|
49
|
-
|
|
50
|
-
- Threshold near 200 rows or 2,000 nodes, measured rather than assumed.
|
|
51
|
-
- Variable row heights need a measurement cache or the scrollbar jumps mid-scroll.
|
|
52
|
-
- Find-in-page and anchor links stop reaching unrendered rows; state the fallback.
|
|
53
|
-
- Supply `aria-rowcount` and `aria-rowindex`; the DOM no longer holds the full set.
|
|
54
|
-
|
|
55
|
-
## Felt speed against recorded speed
|
|
56
|
-
|
|
57
|
-
Both must pass. A good number under an empty rectangle still reads as broken.
|
|
58
|
-
|
|
59
|
-
- Skeleton matching final geometry within 100 ms; never a full-page spinner.
|
|
60
|
-
- Acknowledge a tap inside 100 ms even when the result needs 2 s.
|
|
61
|
-
- Never pad a delay to look deliberate; that hides the regression.
|
|
62
|
-
|
|
63
|
-
## Audit protocol
|
|
64
|
-
|
|
65
|
-
Run in order, stop at the first failed budget, and end on one of four decisions.
|
|
66
|
-
|
|
67
|
-
1. Record route, viewport, device pixel ratio, theme, throttle profile, 40-hex source revision.
|
|
68
|
-
2. Capture one cold-cache and one warm-cache load of that route.
|
|
69
|
-
3. Extract LCP, INP, CLS, TTFB, bytes per resource type, longest task, element count.
|
|
70
|
-
4. Mark each against its contract number PASS or FAIL, measured value beside it.
|
|
71
|
-
5. For every FAIL name one cause above plus its one-line fix.
|
|
72
|
-
6. Apply the single highest-leverage fix, then repeat steps 2-4.
|
|
73
|
-
7. Decide: **SHIP** (all PASS), **OPTIMIZE** (named cause and owner), **RESCOPE** (the budget is
|
|
74
|
-
unreachable as designed), or **EXCEPTION** (an `accepted_exceptions` entry with owner, rationale,
|
|
75
|
-
expiry, evidence pointer).
|
|
76
|
-
|
|
77
|
-
## Failure patterns
|
|
78
|
-
|
|
79
|
-
Reject:
|
|
80
|
-
|
|
81
|
-
- A performance claim with no measured value attached.
|
|
82
|
-
- Warm-cache numbers from a developer laptop presented as p75 field data.
|
|
83
|
-
- A bundle called optimized but never re-measured after the change.
|
|
84
|
-
- Virtualization on a 40-row table, breaking find-in-page for no gain.
|
|
85
|
-
- A breached budget edited in the contract to match the build.
|
|
36
|
+
Do not report warm-cache laptop numbers as field p75, call an unmeasured bundle optimized, virtualize a small list without evidence, or edit the target to match a failing build.
|
|
@@ -1,86 +1,33 @@
|
|
|
1
|
-
Product direction and user
|
|
1
|
+
# Product direction and user journey
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
direction, token, or component exists. Fills `intent.tasks`, `intent.audiences`, `intent.constraints`.
|
|
3
|
+
Use this reference when the request adds a product journey or changes who it serves. Record decisions in the task and Design Contract; do not invent a persona exercise for a small visual fix.
|
|
5
4
|
|
|
6
|
-
|
|
5
|
+
Map audiences, tasks, qualities, and constraints to the contract's `intent`.
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
## Define the operator and critical task
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
- Screen class, input method, assistive technology: pointer, keyboard, touch, reader.
|
|
12
|
-
- Frequency and dwell — 40 visits a day at 20 seconds is a different product from one monthly hour.
|
|
13
|
-
- Expertise tier: first-run, occasional, resident. Only residents tolerate dense layouts.
|
|
9
|
+
Describe the primary operator by job, device/input, assistive technology where relevant, expertise, usage frequency, and the cost of a wrong decision. Add only secondary audiences that change the design.
|
|
14
10
|
|
|
15
|
-
|
|
11
|
+
State the critical task as verb + object + observable completion condition. Record the current and intended steps, what must remain visible, and competing tasks that must not displace it.
|
|
16
12
|
|
|
17
|
-
|
|
18
|
-
settle against it.
|
|
13
|
+
## Set success measures
|
|
19
14
|
|
|
20
|
-
|
|
21
|
-
- Today's step count, and the count you commit to.
|
|
22
|
-
- The two rival tasks forbidden from taking its screen space.
|
|
15
|
+
Choose observable measures before implementation: time to first useful action, completion rate, errors, keyboard completion, and one counter-signal that would indicate a regression. Use task-appropriate numbers rather than adjectives.
|
|
23
16
|
|
|
24
|
-
##
|
|
17
|
+
## Track material unknowns
|
|
25
18
|
|
|
26
|
-
|
|
19
|
+
For each unknown, record an id, how it will be resolved, and which decision it blocks. A gap blocks only the work that depends on it. Resolve by measurement or a focused question, then update its status; keep assumptions in the internal contract, not in reader-facing copy.
|
|
27
20
|
|
|
28
|
-
|
|
29
|
-
- Completion rate, plus the error rate you refuse to exceed.
|
|
30
|
-
- Keyboard-only completion of the critical task: mandatory, never a stretch goal.
|
|
31
|
-
- One counter-signal whose increase proves the design regressed.
|
|
21
|
+
## Walk representative scenarios
|
|
32
22
|
|
|
33
|
-
|
|
23
|
+
For a new or materially changed journey, exercise the task with the relevant constraints: low vision/zoom, keyboard, screen reader, low bandwidth, and a longer or CJK locale. State the input, expected completion, and failure boundary. For a narrow component change, select only the scenarios it can affect.
|
|
34
24
|
|
|
35
|
-
|
|
25
|
+
## Compare choices and checkpoints
|
|
36
26
|
|
|
37
|
-
|
|
38
|
-
- `G2` share of accounts on CJK locales — read the locale column; blocks type scale, `localization.cjk_line_break_review`.
|
|
39
|
-
- Mirror every gap into `omissions` and move `status` forward as it closes.
|
|
40
|
-
- A gap blocks only the surfaces it touches. Close it by measurement or one direct question.
|
|
27
|
+
When a material product or visual direction remains open, present up to three distinct choices with beneficiaries, tradeoffs, and reversal cost. Do not fabricate alternatives when the request already settles the direction.
|
|
41
28
|
|
|
42
|
-
|
|
29
|
+
Use decision checkpoints only where the choice affects downstream work: operator/task, direction, inventory, and evidence review. Note the selected choice and reason so the implementation and reviewer share the same baseline.
|
|
43
30
|
|
|
44
|
-
|
|
31
|
+
## Handoff
|
|
45
32
|
|
|
46
|
-
|
|
47
|
-
2. Keyboard only — whole task on Tab, Enter, Escape, arrows; focus visible, never trapped.
|
|
48
|
-
3. Screen reader — landmarks in order, every control named, every async result announced.
|
|
49
|
-
4. Low bandwidth — 3G-class link; usable at first paint, no reflow when late assets arrive.
|
|
50
|
-
5. Unfamiliar language — labels 40% longer, CJK line breaking correct, no silent truncation.
|
|
51
|
-
|
|
52
|
-
## Hand over bounded alternatives
|
|
53
|
-
|
|
54
|
-
Give the next stage a choice set with stated costs, not one answer dressed as inevitable.
|
|
55
|
-
|
|
56
|
-
- Three directions, each optimising a different axis: speed, breadth, or guidance.
|
|
57
|
-
- One line per direction: who gains, who pays, reversal cost — cheap, moderate, structural.
|
|
58
|
-
- One direction marked do-not-build, with the reason.
|
|
59
|
-
|
|
60
|
-
## Set decision checkpoints
|
|
61
|
-
|
|
62
|
-
Name the points where work halts for a decision; each writes one line — chosen, rejected, reason.
|
|
63
|
-
|
|
64
|
-
- `CP1` operator and critical task accepted, before direction work; `CP2` direction chosen, before
|
|
65
|
-
token work.
|
|
66
|
-
- `CP3` inventory recorded — routes, screens, states, viewports, themes, permissions — and evolved during build
|
|
67
|
-
and before `/start-work`.
|
|
68
|
-
- `CP4` evidence complete, before the independent review pass.
|
|
69
|
-
|
|
70
|
-
## Ship the research package
|
|
71
|
-
|
|
72
|
-
The next stage receives a package. Whatever is missing cannot be argued about later.
|
|
73
|
-
|
|
74
|
-
- Operator, critical task, numeric signals, checkpoint log with dates.
|
|
75
|
-
- The gap register, with statuses and blocking scopes.
|
|
76
|
-
- Five scenarios verbatim, three directions, the disqualified one.
|
|
77
|
-
- `contract_id` with its SHA-256, so the independent review pass audits the same text.
|
|
78
|
-
|
|
79
|
-
## Failure patterns
|
|
80
|
-
|
|
81
|
-
Reject:
|
|
82
|
-
|
|
83
|
-
- A persona with a name and a photograph but no device, session length, or input method.
|
|
84
|
-
- "Modern", "intuitive", or "more engaging" standing in for a signal.
|
|
85
|
-
- An empty gap register, or accessibility deferred to a checklist instead of five task runs.
|
|
86
|
-
- `/start-work` entered before `CP3`, or a transcript handed over instead of the package and hash.
|
|
33
|
+
Give the next stage the operator, critical task, success measures, open gaps, chosen direction, inventory, and contract id/hash when one exists. A concise task record is more useful than an unfiltered discussion transcript.
|
|
@@ -1,13 +1,25 @@
|
|
|
1
|
-
# From
|
|
1
|
+
# From request to working surface
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Use the selected frontend-ui-ux skill to interpret the request, not to expand it. An explicit build request authorizes the named interface change; critique or planning stays read-only. A UI mentioned as context is not a redesign request. Natural-route context helps choose behavior but grants no file or host permission.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Bound the work
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Before editing, identify the target route/component, repository and permitted paths, stack, user task, existing brand, behaviors and states to preserve, and requested outcome. Keep the direction note concise. Use the evidence-capable v1beta2 Design Contract as an evolving inventory; do not block a bounded build on completing JSON first or add a routine approval gate.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
There is no mandatory interview. Ask only when two plausible answers materially change scope, architecture, permissions, accessibility, or visual direction. Ask one high-impact question at a time, retain earlier answers across rounds, and do not re-ask a resolved question. Continue for as many rounds as materially necessary; when the brief is bounded, state the default and proceed. Review, plan, and keyword-only requests remain read-only.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
If a brief lists competing visual directions, treat them as undecided or unchosen. "acceptable" is not a choice or a delegation. Ask about the open direction in a separate round; do not declare a default or start building. Only when the brief gives no visual direction may the reversible authored default apply without asking.
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
## Direction defaults and preservation
|
|
14
|
+
|
|
15
|
+
Use existing brand and system values where present. When no brand, direction, or subject-implied medium is supplied, start from default-editorial-pixel.json and create an original, task-specific pixel illustration as the primary visual anchor: crisp integer-grid edges, each cell at least 6 CSS px, nearest-neighbor scaling. A generic gradient or rounded symbol is not a substitute. Keep the illustration decorative when live text conveys the task; otherwise provide meaningful alternative text. Never borrow a reference site's artwork, proprietary font, or copy.
|
|
16
|
+
|
|
17
|
+
Choose a visual medium that fits the subject and audience before applying a house default. Use imagery only with appropriate use rights, and never imply that illustrative stock material documents a real subject. For a fictional concept, provide complete, coherent sample content and label it as such in accompanying documentation; for real entities, use supplied or verified facts and never present invented details as verified facts. Remove authoring notes and unfinished prompts from the delivered interface. Keep consistent naming and visual identity across the page. Check text against its background at desktop and phone widths for legibility and overlap.
|
|
18
|
+
|
|
19
|
+
Fit actual Korean and Latin strings before choosing line breaks. Narrow screens should restructure the layout rather than shrink a desktop composition. Preserve semantic elements, keyboard order, visible focus, validation recovery, and programmatic labels. Ensure a hidden attribute still wins over a component display utility (for example, .empty[hidden] { display: none; }). Give animated accents a useful static state.
|
|
20
|
+
|
|
21
|
+
## Build and inspect
|
|
22
|
+
|
|
23
|
+
Use the declared stack and request scope. Exercise the main action in a real browser at 320, 390, and 1440 CSS px when those dimensions suit the surface; inspect focus, validation/error recovery, success, and overflow. Capture the exact built revision. Preserve prior failure captures. If a native capture path is unavailable, name the gap; any authorized external replay must be labeled separately. A clean validator does not prove visual quality.
|
|
24
|
+
|
|
25
|
+
Keep capture manifests and review labels in internal project evidence, not as UI copy. Finish with the working files or preview and only the material unresolved boundary.
|
|
@@ -1,91 +1,38 @@
|
|
|
1
|
-
Redesign
|
|
1
|
+
# Redesign and behavior parity
|
|
2
2
|
|
|
3
|
-
A redesign changes
|
|
4
|
-
not ugliness. Capture the old surface before editing, or nothing can judge the new one.
|
|
3
|
+
A redesign changes appearance while preserving a working product's behavior. Capture the baseline before editing so every change can be judged against the same source revision.
|
|
5
4
|
|
|
6
|
-
##
|
|
5
|
+
## Freeze the baseline
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
For each affected route, capture relevant screens, states, viewports, themes, controls, validation, empty/error copy, keyboard order, and current performance. Keep originals immutable in the project's internal evidence area and identify them by source revision and capture hash.
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
- Per surface: controls, validation text, empty and error copy, keyboard order.
|
|
12
|
-
- Current performance numbers, so a regression is provable instead of arguable.
|
|
13
|
-
- Theme per capture; a dark-only baseline proves nothing about light.
|
|
14
|
-
- Stored under `.hermes/lithermes/`, keyed by `capture_sha256`, immutable.
|
|
9
|
+
## Inventory the change
|
|
15
10
|
|
|
16
|
-
|
|
11
|
+
Classify existing issues by user impact: token debt, structural semantics, missing states, inconsistent patterns, accessibility, or measured performance. Give each affected surface one verdict:
|
|
17
12
|
|
|
18
|
-
|
|
13
|
+
- **Preserve:** correct; leave it untouched and guard it.
|
|
14
|
+
- **Change:** keep structure/behavior while updating tokens or presentation.
|
|
15
|
+
- **Replace:** new internals, same external behavior and URL.
|
|
16
|
+
- **Remove:** name an owner, evidence of use, and redirect or replacement.
|
|
19
17
|
|
|
20
|
-
|
|
21
|
-
- **Structural debt** — divs standing in for landmarks and heading rank.
|
|
22
|
-
- **State debt** — components with no focus, loading, empty, error, or disabled rendering.
|
|
23
|
-
- **Consistency debt** — three button variants doing one job.
|
|
24
|
-
- **Accessibility debt** — contrast, target size, label, and focus-order failures.
|
|
25
|
-
- **Performance debt** — breached budgets carried forward with their measured values.
|
|
18
|
+
## Migrate in working slices
|
|
26
19
|
|
|
27
|
-
|
|
20
|
+
When tokens or primitives change, introduce compatibility values first, convert one low-risk route end to end, then migrate the remaining routes in priority order. Remove old aliases only when consumers are migrated. Keep each intermediate revision usable and send the complete affected surface to independent review.
|
|
28
21
|
|
|
29
|
-
|
|
22
|
+
## Verify parity
|
|
30
23
|
|
|
31
|
-
|
|
32
|
-
- **Change** — same structure and behavior, new tokens, layout, or type.
|
|
33
|
-
- **Replace** — new implementation, identical external behavior and URL.
|
|
34
|
-
- **Remove** — requires an owner, a usage number, and a redirect or replacement.
|
|
24
|
+
Compare before and after item by item:
|
|
35
25
|
|
|
36
|
-
|
|
26
|
+
- URLs, query parameters, and deep links.
|
|
27
|
+
- Fields, defaults, validation rules, and error meaning.
|
|
28
|
+
- Data exposure for each permission.
|
|
29
|
+
- Keyboard order, focus restoration, and shortcuts.
|
|
30
|
+
- Meaning of user-facing copy.
|
|
37
31
|
|
|
38
|
-
|
|
32
|
+
A clearer sentence may change wording; it may not change a product claim.
|
|
39
33
|
|
|
40
|
-
|
|
41
|
-
2. Convert one low-traffic route end to end as the proof.
|
|
42
|
-
3. Convert the rest in traffic order, capturing after each route.
|
|
43
|
-
4. Delete aliases and dead styles only after the last route converts.
|
|
44
|
-
5. Send the whole surface to the independent review pass, not stage by stage.
|
|
34
|
+
## Resolve disagreement and guard the result
|
|
45
35
|
|
|
46
|
-
|
|
36
|
+
Bound unresolved choices to two options and a short review round (two exchanges or 15 minutes). Record the selected option and why the other lost. If still tied, prefer the option that preserves more behavior.
|
|
47
37
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
- Same URLs, query params, and deep links resolving to the same content.
|
|
51
|
-
- Same fields, defaults, validation rules, and error text.
|
|
52
|
-
- Same data visible per permission; nothing newly exposed or hidden.
|
|
53
|
-
- Same keyboard order, focus return points, and shortcut bindings.
|
|
54
|
-
- Same copy meaning; wording may tighten, claims may not move.
|
|
55
|
-
|
|
56
|
-
## Debate on a clock
|
|
57
|
-
|
|
58
|
-
Bounded debate improves the result; open debate replaces it. Timebox and record the option that lost.
|
|
59
|
-
|
|
60
|
-
- Two options maximum, each carrying one capture or one paragraph.
|
|
61
|
-
- Two exchanges or 15 minutes, whichever ends first.
|
|
62
|
-
- Decide against `direction.principles`, then log the rejected option in `omissions`.
|
|
63
|
-
- Still tied: ship the option preserving more behavior and revisit with usage data.
|
|
64
|
-
|
|
65
|
-
## Regression guards
|
|
66
|
-
|
|
67
|
-
Guard the preserve verdicts mechanically. Intention is not a guard.
|
|
68
|
-
|
|
69
|
-
- Capture-diff every preserve surface at every declared viewport.
|
|
70
|
-
- Assert contrast and focus order on each converted route.
|
|
71
|
-
- Fail the build on new raw hex or raw px outside the token file.
|
|
72
|
-
- Re-run the performance budgets per converted route.
|
|
73
|
-
- Check CJK line breaking at the narrowest viewport when `locale` includes CJK.
|
|
74
|
-
|
|
75
|
-
## Closeout
|
|
76
|
-
|
|
77
|
-
Close only when the removal list is empty and captures pair up one to one.
|
|
78
|
-
|
|
79
|
-
- Every remove verdict executed, or deferred with an owner and a date.
|
|
80
|
-
- Baseline and post-change captures paired in the evidence manifest.
|
|
81
|
-
- Contract re-frozen, SHA-256 recomputed, `payload-version.json` refreshed if plugin assets changed.
|
|
82
|
-
|
|
83
|
-
## Failure patterns
|
|
84
|
-
|
|
85
|
-
Reject:
|
|
86
|
-
|
|
87
|
-
- A baseline captured after editing began.
|
|
88
|
-
- "Improved" copy that changes what the product promises.
|
|
89
|
-
- Removing a control because nobody could explain it.
|
|
90
|
-
- Two design languages live past the end of a stage.
|
|
91
|
-
- Parity waived because the new version looks better.
|
|
38
|
+
Mechanically protect preserved surfaces. Capture-diff them at declared viewports; check contrast, focus, performance budgets, and CJK breaking where applicable. Close only when removals are resolved or have an owner/date and before/after captures are paired against the current contract hash.
|