@litfamily/litopencode 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/CHANGELOG.md +18 -0
- package/README-Ko-KR.md +314 -31
- package/README.md +312 -29
- package/dist/activation-primary-prompts.d.ts +1 -0
- package/dist/activation-primary-prompts.js +16 -0
- package/dist/activation-probe.js +4 -1
- package/dist/activation-prompt-utils.d.ts +1 -1
- package/dist/activation-routing.d.ts +6 -1
- package/dist/activation-routing.js +174 -16
- package/dist/activation-workflow-prompts.d.ts +1 -1
- package/dist/activation-workflow-prompts.js +18 -17
- package/dist/activation.d.ts +3 -2
- package/dist/activation.js +6 -6
- package/dist/agents/defaults.js +14 -6
- package/dist/cli/command-aliases.js +24 -22
- package/dist/cli/doctor.js +3 -0
- package/dist/cli/install-report.d.ts +1 -0
- package/dist/cli/install-report.js +4 -0
- package/dist/cli/install.js +7 -4
- package/dist/cli/managed-skill-assets.d.ts +1 -1
- package/dist/cli/managed-skill-assets.js +15 -5
- package/dist/cli/motion-runtime.d.ts +6 -0
- package/dist/cli/motion-runtime.js +46 -0
- package/dist/cli/native-skill-install.js +32 -9
- package/dist/cli/native-skill-integrity.js +1 -0
- package/dist/cli/native-skills.d.ts +2 -0
- package/dist/cli/native-skills.js +2 -1
- package/dist/cli/office-dependencies.d.ts +14 -0
- package/dist/cli/office-dependencies.js +24 -0
- package/dist/cli.js +13 -3
- package/dist/commands.d.ts +2 -11
- package/dist/commands.js +9 -17
- package/dist/deliverable-hedge-guard.d.ts +20 -21
- package/dist/deliverable-hedge-guard.js +234 -275
- package/dist/features.d.ts +81 -2
- package/dist/features.js +80 -13
- package/dist/hooks.d.ts +3 -2
- package/dist/hooks.js +4 -4
- package/dist/ignition.d.ts +1 -1
- package/dist/ignition.js +15 -4
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/interface-handoff.d.ts +1 -0
- package/dist/interface-handoff.js +1 -0
- package/dist/motion-image-reads.d.ts +6 -0
- package/dist/motion-image-reads.js +46 -0
- package/dist/server.js +13 -11
- package/dist/skill-renames.d.ts +4 -2
- package/dist/skill-renames.js +12 -4
- package/dist/skills.d.ts +31 -3
- package/dist/skills.js +53 -9
- package/dist/tools.js +4 -4
- package/docs/ab/S11/baseline-desktop.webp +0 -0
- package/docs/ab/S11/baseline-phone.webp +0 -0
- package/docs/ab/S11/lit-desktop.webp +0 -0
- package/docs/ab/S11/lit-phone.webp +0 -0
- package/docs/ab/S3/baseline-desktop.webp +0 -0
- package/docs/ab/S3/baseline-phone.webp +0 -0
- package/docs/ab/S3/lit-desktop.webp +0 -0
- package/docs/ab/S3/lit-phone.webp +0 -0
- package/docs/ab/S4/baseline-desktop.webp +0 -0
- package/docs/ab/S4/baseline-phone.webp +0 -0
- package/docs/ab/S4/lit-desktop.webp +0 -0
- package/docs/ab/S4/lit-phone.webp +0 -0
- package/docs/ab/S5/lit-slides.webp +0 -0
- package/docs/ab/S7/lit-diagram.webp +0 -0
- package/docs/ab/S8/baseline-slides.webp +0 -0
- package/docs/ab/S8/lit-slides.webp +0 -0
- package/docs/ab/S9/lit-pages.webp +0 -0
- package/docs/assets/cover-motion-still.webp +0 -0
- package/docs/assets/cover-motion.webp +0 -0
- package/docs/assets/readme/badge-version.svg +1 -1
- package/docs/assets/skills/autoconference.webp +0 -0
- package/docs/assets/skills/automatic-guards.webp +0 -0
- package/docs/assets/skills/autoresearch.webp +0 -0
- package/docs/assets/skills/browser-drive.webp +0 -0
- package/docs/assets/skills/debugging.webp +0 -0
- package/docs/assets/skills/deep-interview.webp +0 -0
- package/docs/assets/skills/doctor-installer.webp +0 -0
- package/docs/assets/skills/durable-litgoal.webp +0 -0
- package/docs/assets/skills/frontend-ui-ux.webp +0 -0
- package/docs/assets/skills/lit-burnoff-file.webp +0 -0
- package/docs/assets/skills/lit-burnoff.webp +0 -0
- package/docs/assets/skills/lit-code.webp +0 -0
- package/docs/assets/skills/lit-commit.webp +0 -0
- package/docs/assets/skills/lit-comprehend.webp +0 -0
- package/docs/assets/skills/lit-crucible.webp +0 -0
- package/docs/assets/skills/lit-diagram-drawer.webp +0 -0
- package/docs/assets/skills/lit-docx.webp +0 -0
- package/docs/assets/skills/lit-fetch.webp +0 -0
- package/docs/assets/skills/lit-handoff.webp +0 -0
- package/docs/assets/skills/lit-humanizer.webp +0 -0
- package/docs/assets/skills/lit-init.webp +0 -0
- package/docs/assets/skills/lit-plan.webp +0 -0
- package/docs/assets/skills/lit-pptx.webp +0 -0
- package/docs/assets/skills/lit-recap.webp +0 -0
- package/docs/assets/skills/lit-scientific-visualization.webp +0 -0
- package/docs/assets/skills/lit-typographic-motion.webp +0 -0
- package/docs/assets/skills/litresearch.webp +0 -0
- package/docs/assets/skills/litwork.webp +0 -0
- package/docs/assets/skills/lsp-setup.webp +0 -0
- package/docs/assets/skills/lsp.webp +0 -0
- package/docs/assets/skills/readme-studio.webp +0 -0
- package/docs/assets/skills/refactor.webp +0 -0
- package/docs/assets/skills/review-work.webp +0 -0
- package/docs/assets/skills/rules.webp +0 -0
- package/docs/assets/skills/start-work.webp +0 -0
- package/docs/assets/skills/structural-search.webp +0 -0
- package/docs/assets/skills/visual-qa.webp +0 -0
- package/docs/assets/skills/wikify.webp +0 -0
- package/docs/reference-Ko-KR.md +5 -1
- package/docs/reference.md +6 -2
- package/package.json +1 -1
- package/rules/bundled-rules/lit-humanizer.md +12 -0
- package/skills/autoconference/SKILL.md +1 -1
- package/skills/autoconference/assets/report_template.md +1 -1
- package/skills/autoresearch/references/type-checklists.md +1 -1
- package/skills/browser-drive/SKILL.md +19 -5
- package/skills/browser-drive/scripts/capability-probe.mjs +26 -5
- package/skills/frontend-ui-ux/SKILL.md +10 -15
- package/skills/frontend-ui-ux/data/THIRD-PARTY-NOTICE.txt +10 -0
- package/skills/frontend-ui-ux/references/adaptive-layout.md +3 -11
- package/skills/frontend-ui-ux/references/brand-and-imagery.md +6 -11
- package/skills/frontend-ui-ux/references/complete-contract.md +10 -3
- package/skills/frontend-ui-ux/references/composition.md +1 -7
- package/skills/frontend-ui-ux/references/craft-floor.md +94 -0
- package/skills/frontend-ui-ux/references/creative-directions.md +1 -7
- package/skills/frontend-ui-ux/references/evidence-review.md +2 -12
- package/skills/frontend-ui-ux/references/implementation-platforms.md +1 -4
- package/skills/frontend-ui-ux/references/inclusive-interface.md +1 -3
- package/skills/frontend-ui-ux/references/interaction-motion.md +1 -7
- package/skills/frontend-ui-ux/references/motion-guide.md +125 -0
- package/skills/frontend-ui-ux/references/operating-lanes.md +2 -8
- package/skills/frontend-ui-ux/references/product-direction.md +1 -6
- package/skills/frontend-ui-ux/references/production.md +12 -5
- package/skills/frontend-ui-ux/references/redesign-playbook.md +1 -7
- package/skills/frontend-ui-ux/references/slop-register.md +103 -0
- package/skills/frontend-ui-ux/references/system-foundations.md +1 -8
- package/skills/frontend-ui-ux/references/taste-direction.md +4 -11
- package/skills/frontend-ui-ux/references/visual-language.md +1 -6
- package/skills/frontend-ui-ux/references/visual-reconstruction.md +2 -7
- package/skills/frontend-ui-ux/scripts/probe-page.mjs +326 -0
- package/skills/frontend-ui-ux/scripts/probe-server.mjs +24 -0
- package/skills/frontend-ui-ux/scripts/probe-static.mjs +42 -0
- package/skills/frontend-ui-ux/scripts/probe-thresholds.json +86 -0
- package/skills/frontend-ui-ux/scripts/probe.mjs +183 -0
- package/skills/lit-comprehend/SKILL.md +10 -11
- package/skills/lit-comprehend/references/artifact-template.md +2 -18
- package/skills/lit-comprehend/scripts/verify-explainer.ts +0 -14
- package/skills/lit-diagram-drawer/NOTICE.md +33 -0
- package/skills/lit-diagram-drawer/SKILL.md +101 -0
- package/skills/lit-diagram-drawer/assets/examples/type-architecture-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-architecture-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-architecture-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-bar-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-bar-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-bar-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-beeswarm-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-beeswarm-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-beeswarm-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-bubble-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-bubble-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-bubble-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-bump-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-bump-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-bump-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-data-flow-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-data-flow-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-data-flow-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-datalake-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-datalake-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-datalake-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-db-schema-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-db-schema-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-db-schema-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-dependency-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-dependency-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-dependency-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-deployment-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-deployment-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-deployment-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-dp-integration-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-dp-integration-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-dp-integration-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-dp-security-matrix-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-dp-security-matrix-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-dp-security-matrix-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-er-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-er-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-er-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-fishbone-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-fishbone-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-fishbone-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-flowchart-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-flowchart-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-flowchart-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-gantt-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-gantt-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-gantt-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-heatmap-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-heatmap-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-heatmap-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-high-level-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-high-level-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-high-level-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-high-level-vertical-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-high-level-vertical-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-high-level-vertical-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-import-drawio-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-import-drawio-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-import-drawio-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-import-excalidraw-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-import-excalidraw-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-import-excalidraw-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-import-mermaid-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-import-mermaid-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-import-mermaid-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-it-state-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-it-state-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-it-state-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-journey-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-journey-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-journey-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-kanban-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-kanban-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-kanban-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-layers-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-layers-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-layers-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-line-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-line-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-line-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-loop-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-loop-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-loop-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-loop-terminal-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-loop-terminal-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-loop-terminal-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-marimekko-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-marimekko-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-marimekko-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-medallion-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-medallion-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-medallion-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-nested-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-nested-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-nested-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-org-chart-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-org-chart-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-org-chart-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-paved-road-animated-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-paved-road-animated-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-paved-road-animated-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-polar-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-polar-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-polar-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-policy-trace-animated-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-policy-trace-animated-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-policy-trace-animated-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-process-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-process-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-process-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-pyramid-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-pyramid-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-pyramid-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-quadrant-consultant-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-quadrant-consultant-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-quadrant-consultant-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-quadrant-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-quadrant-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-quadrant-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-queue-animated-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-queue-animated-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-queue-animated-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-radar-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-radar-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-radar-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-ridgeline-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-ridgeline-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-ridgeline-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-sankey-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-sankey-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-sankey-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-scatter-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-scatter-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-scatter-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-sequence-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-sequence-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-sequence-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-sequence-oauth-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-sequence-oauth-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-sequence-oauth-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-slopegraph-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-slopegraph-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-slopegraph-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-state-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-state-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-state-lifecycle-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-state-lifecycle-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-state-lifecycle-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-state-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-story-map-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-story-map-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-story-map-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-streamgraph-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-streamgraph-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-streamgraph-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-swimlane-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-swimlane-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-swimlane-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-timeline-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-timeline-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-timeline-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-tree-block-decomposition-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-tree-block-decomposition-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-tree-block-decomposition-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-tree-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-tree-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-tree-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-treemap-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-treemap-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-treemap-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-uml-class-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-uml-class-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-uml-class-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-venn-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-venn-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-venn-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-wardley-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-wardley-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-wardley-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-waterfall-dark.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-waterfall-full.html +1 -0
- package/skills/lit-diagram-drawer/assets/examples/type-waterfall-light.html +1 -0
- package/skills/lit-diagram-drawer/assets/fonts/OFL.txt +94 -0
- package/skills/lit-diagram-drawer/assets/fonts/PretendardVariable.woff2 +0 -0
- package/skills/lit-diagram-drawer/assets/fonts/provenance.json +23 -0
- package/skills/lit-diagram-drawer/assets/icons.html +231 -0
- package/skills/lit-diagram-drawer/assets/licenses/devicon-MIT.txt +20 -0
- package/skills/lit-diagram-drawer/assets/licenses/diagram-design-MIT.txt +21 -0
- package/skills/lit-diagram-drawer/assets/licenses/log-z-MIT.txt +21 -0
- package/skills/lit-diagram-drawer/assets/licenses/simple-icons-CC0.md +30 -0
- package/skills/lit-diagram-drawer/assets/licenses/tabler-MIT.txt +21 -0
- package/skills/lit-diagram-drawer/examples/01-service-architecture/after.html +1 -0
- package/skills/lit-diagram-drawer/examples/01-service-architecture/brief.md +33 -0
- package/skills/lit-diagram-drawer/examples/02-release-decision/after.html +1 -0
- package/skills/lit-diagram-drawer/examples/02-release-decision/brief.md +18 -0
- package/skills/lit-diagram-drawer/examples/03-data-retention/after.html +1 -0
- package/skills/lit-diagram-drawer/examples/03-data-retention/brief.md +19 -0
- package/skills/lit-diagram-drawer/examples/04-oauth-sequence/after.html +1 -0
- package/skills/lit-diagram-drawer/examples/04-oauth-sequence/brief.md +17 -0
- package/skills/lit-diagram-drawer/examples/05-review-lanes/after.html +1 -0
- package/skills/lit-diagram-drawer/examples/05-review-lanes/brief.md +17 -0
- package/skills/lit-diagram-drawer/examples/06-rollout-gates/after.html +1 -0
- package/skills/lit-diagram-drawer/examples/06-rollout-gates/brief.md +17 -0
- package/skills/lit-diagram-drawer/examples/07-deployment-boundary/after.html +1 -0
- package/skills/lit-diagram-drawer/examples/07-deployment-boundary/brief.md +19 -0
- package/skills/lit-diagram-drawer/examples/08-policy-traces/after.html +1 -0
- package/skills/lit-diagram-drawer/examples/08-policy-traces/brief.md +20 -0
- package/skills/lit-diagram-drawer/references/accessibility.md +37 -0
- package/skills/lit-diagram-drawer/references/export.md +17 -0
- package/skills/lit-diagram-drawer/references/import-drawio.md +13 -0
- package/skills/lit-diagram-drawer/references/import-excalidraw.md +11 -0
- package/skills/lit-diagram-drawer/references/import-mermaid.md +12 -0
- package/skills/lit-diagram-drawer/references/import-schema.md +28 -0
- package/skills/lit-diagram-drawer/references/korean-typography.md +34 -0
- package/skills/lit-diagram-drawer/references/motion.md +29 -0
- package/skills/lit-diagram-drawer/references/office-pptx-docx.md +28 -0
- package/skills/lit-diagram-drawer/references/output-spec.md +48 -0
- package/skills/lit-diagram-drawer/references/primitive-annotation.md +12 -0
- package/skills/lit-diagram-drawer/references/primitive-icons.md +21 -0
- package/skills/lit-diagram-drawer/references/primitive-sketchy.md +11 -0
- package/skills/lit-diagram-drawer/references/primitive-terminal.md +11 -0
- package/skills/lit-diagram-drawer/references/profiles.md +24 -0
- package/skills/lit-diagram-drawer/references/semantic-patterns.md +27 -0
- package/skills/lit-diagram-drawer/references/style-guide.md +67 -0
- package/skills/lit-diagram-drawer/references/type-architecture.md +51 -0
- package/skills/lit-diagram-drawer/references/type-bar.md +51 -0
- package/skills/lit-diagram-drawer/references/type-beeswarm.md +49 -0
- package/skills/lit-diagram-drawer/references/type-bubble.md +49 -0
- package/skills/lit-diagram-drawer/references/type-bump.md +49 -0
- package/skills/lit-diagram-drawer/references/type-catalog.json +1433 -0
- package/skills/lit-diagram-drawer/references/type-data-flow.md +51 -0
- package/skills/lit-diagram-drawer/references/type-datalake.md +49 -0
- package/skills/lit-diagram-drawer/references/type-db-schema.md +49 -0
- package/skills/lit-diagram-drawer/references/type-dependency.md +49 -0
- package/skills/lit-diagram-drawer/references/type-deployment.md +49 -0
- package/skills/lit-diagram-drawer/references/type-dp-integration.md +49 -0
- package/skills/lit-diagram-drawer/references/type-dp-security-matrix.md +49 -0
- package/skills/lit-diagram-drawer/references/type-er.md +49 -0
- package/skills/lit-diagram-drawer/references/type-fishbone.md +49 -0
- package/skills/lit-diagram-drawer/references/type-flowchart.md +49 -0
- package/skills/lit-diagram-drawer/references/type-gantt.md +49 -0
- package/skills/lit-diagram-drawer/references/type-heatmap.md +53 -0
- package/skills/lit-diagram-drawer/references/type-high-level-vertical.md +53 -0
- package/skills/lit-diagram-drawer/references/type-high-level.md +53 -0
- package/skills/lit-diagram-drawer/references/type-import-drawio.md +53 -0
- package/skills/lit-diagram-drawer/references/type-import-excalidraw.md +53 -0
- package/skills/lit-diagram-drawer/references/type-import-mermaid.md +53 -0
- package/skills/lit-diagram-drawer/references/type-it-state.md +54 -0
- package/skills/lit-diagram-drawer/references/type-journey.md +54 -0
- package/skills/lit-diagram-drawer/references/type-kanban.md +54 -0
- package/skills/lit-diagram-drawer/references/type-layers.md +54 -0
- package/skills/lit-diagram-drawer/references/type-line.md +54 -0
- package/skills/lit-diagram-drawer/references/type-loop-terminal.md +53 -0
- package/skills/lit-diagram-drawer/references/type-loop.md +54 -0
- package/skills/lit-diagram-drawer/references/type-marimekko.md +54 -0
- package/skills/lit-diagram-drawer/references/type-medallion.md +54 -0
- package/skills/lit-diagram-drawer/references/type-nested.md +59 -0
- package/skills/lit-diagram-drawer/references/type-org-chart.md +58 -0
- package/skills/lit-diagram-drawer/references/type-paved-road-animated.md +72 -0
- package/skills/lit-diagram-drawer/references/type-polar.md +67 -0
- package/skills/lit-diagram-drawer/references/type-policy-trace-animated.md +69 -0
- package/skills/lit-diagram-drawer/references/type-process.md +58 -0
- package/skills/lit-diagram-drawer/references/type-pyramid.md +59 -0
- package/skills/lit-diagram-drawer/references/type-quadrant-consultant.md +60 -0
- package/skills/lit-diagram-drawer/references/type-quadrant.md +57 -0
- package/skills/lit-diagram-drawer/references/type-queue-animated.md +63 -0
- package/skills/lit-diagram-drawer/references/type-radar.md +57 -0
- package/skills/lit-diagram-drawer/references/type-ridgeline.md +63 -0
- package/skills/lit-diagram-drawer/references/type-sankey.md +68 -0
- package/skills/lit-diagram-drawer/references/type-scatter.md +60 -0
- package/skills/lit-diagram-drawer/references/type-sequence-oauth.md +66 -0
- package/skills/lit-diagram-drawer/references/type-sequence.md +63 -0
- package/skills/lit-diagram-drawer/references/type-slopegraph.md +65 -0
- package/skills/lit-diagram-drawer/references/type-state-lifecycle.md +53 -0
- package/skills/lit-diagram-drawer/references/type-state.md +59 -0
- package/skills/lit-diagram-drawer/references/type-story-map.md +52 -0
- package/skills/lit-diagram-drawer/references/type-streamgraph.md +53 -0
- package/skills/lit-diagram-drawer/references/type-swimlane.md +52 -0
- package/skills/lit-diagram-drawer/references/type-timeline.md +52 -0
- package/skills/lit-diagram-drawer/references/type-tree-block-decomposition.md +57 -0
- package/skills/lit-diagram-drawer/references/type-tree.md +54 -0
- package/skills/lit-diagram-drawer/references/type-treemap.md +54 -0
- package/skills/lit-diagram-drawer/references/type-uml-class.md +52 -0
- package/skills/lit-diagram-drawer/references/type-venn.md +51 -0
- package/skills/lit-diagram-drawer/references/type-wardley.md +52 -0
- package/skills/lit-diagram-drawer/references/type-waterfall.md +54 -0
- package/skills/lit-diagram-drawer/references/verifier-guide.md +59 -0
- package/skills/lit-diagram-drawer/scripts/block-registry.mjs +43 -0
- package/skills/lit-diagram-drawer/scripts/brief-contract.mjs +94 -0
- package/skills/lit-diagram-drawer/scripts/capability-probe.mjs +132 -0
- package/skills/lit-diagram-drawer/scripts/check-visible-text.mjs +15 -0
- package/skills/lit-diagram-drawer/scripts/craft-thresholds.json +15 -0
- package/skills/lit-diagram-drawer/scripts/diagram-metrics.mjs +216 -0
- package/skills/lit-diagram-drawer/scripts/doctor.mjs +8 -0
- package/skills/lit-diagram-drawer/scripts/drawio-extract.mjs +214 -0
- package/skills/lit-diagram-drawer/scripts/excalidraw-extract.mjs +151 -0
- package/skills/lit-diagram-drawer/scripts/export.mjs +133 -0
- package/skills/lit-diagram-drawer/scripts/import-shared.mjs +130 -0
- package/skills/lit-diagram-drawer/scripts/mermaid-extract.mjs +173 -0
- package/skills/lit-diagram-drawer/scripts/office-safety.mjs +120 -0
- package/skills/lit-diagram-drawer/scripts/renderer-safety.mjs +46 -0
- package/skills/lit-diagram-drawer/scripts/test-block-registry.mjs +20 -0
- package/skills/lit-diagram-drawer/scripts/test-brief-contract.mjs +27 -0
- package/skills/lit-diagram-drawer/scripts/test-importers.mjs +119 -0
- package/skills/lit-diagram-drawer/scripts/test-office-safety.mjs +67 -0
- package/skills/lit-diagram-drawer/scripts/test-sequence-verifier.mjs +28 -0
- package/skills/lit-diagram-drawer/scripts/test-visual-quality.mjs +68 -0
- package/skills/lit-diagram-drawer/scripts/verify-all.mjs +74 -0
- package/skills/lit-diagram-drawer/scripts/verify-brief.mjs +47 -0
- package/skills/lit-diagram-drawer/scripts/verify-coverage.mjs +56 -0
- package/skills/lit-diagram-drawer/scripts/verify-diagram.mjs +26 -0
- package/skills/lit-diagram-drawer/scripts/verify-motion.mjs +12 -0
- package/skills/lit-diagram-drawer/scripts/verify-type.mjs +48 -0
- package/skills/lit-diagram-drawer/scripts/visual-quality.mjs +363 -0
- package/skills/lit-docx/LICENSE-MIT.txt +21 -0
- package/skills/lit-docx/SKILL.md +78 -0
- package/skills/lit-docx/references/frontmatter_schema.md +42 -0
- package/skills/lit-docx/references/journal_style_spec.md +17 -0
- package/skills/lit-docx/references/markdown_quality_checklist.md +37 -0
- package/skills/lit-docx/references/slop_phrase_list.yaml +58 -0
- package/skills/lit-docx/references/slop_rules.md +35 -0
- package/skills/lit-docx/requirements.in +5 -0
- package/skills/lit-docx/requirements.lock +289 -0
- package/skills/lit-docx/run.py +64 -0
- package/skills/lit-docx/scripts/clean_markdown.py +95 -0
- package/skills/lit-docx/scripts/convert_md_to_docx.py +1047 -0
- package/skills/lit-docx/scripts/convert_md_to_pdf.py +281 -0
- package/skills/lit-docx/scripts/convert_pdf.py +130 -0
- package/skills/lit-docx/scripts/craft-thresholds.json +11 -0
- package/skills/lit-docx/scripts/craft_docx.py +83 -0
- package/skills/lit-docx/scripts/edit_docx.py +297 -0
- package/skills/lit-docx/scripts/embed_images.py +78 -0
- package/skills/lit-docx/scripts/generate_docx_templates.py +491 -0
- package/skills/lit-docx/scripts/slop_lint.py +485 -0
- package/skills/lit-docx/scripts/visual_audit.py +41 -0
- package/skills/lit-docx/templates/docx/acs.docx +0 -0
- package/skills/lit-docx/templates/docx/elsevier.docx +0 -0
- package/skills/lit-docx/templates/docx/ieee.docx +0 -0
- package/skills/lit-docx/templates/docx/korean-generic.docx +0 -0
- package/skills/lit-docx/templates/docx/nature.docx +0 -0
- package/skills/lit-docx/templates/latex/acs/README.md +5 -0
- package/skills/lit-docx/templates/latex/acs/template.tex +37 -0
- package/skills/lit-docx/templates/latex/elsevier/README.md +5 -0
- package/skills/lit-docx/templates/latex/elsevier/template.tex +38 -0
- package/skills/lit-docx/templates/latex/ieee/README.md +5 -0
- package/skills/lit-docx/templates/latex/ieee/template.tex +37 -0
- package/skills/lit-docx/templates/latex/korean-generic/README.md +5 -0
- package/skills/lit-docx/templates/latex/korean-generic/template.tex +37 -0
- package/skills/lit-docx/templates/latex/nature/README.md +5 -0
- package/skills/lit-docx/templates/latex/nature/template.tex +37 -0
- package/skills/lit-docx/templates/registry.yaml +1366 -0
- package/skills/lit-humanizer/NOTICE +160 -0
- package/skills/lit-humanizer/SKILL.md +122 -0
- package/skills/lit-humanizer/assets/always-on-rule.md +9 -0
- package/skills/lit-humanizer/assets/report-skeleton.md +25 -0
- package/skills/lit-humanizer/assets/slide-text-skeleton.md +28 -0
- package/skills/lit-humanizer/examples/accessibility-note/after.md +7 -0
- package/skills/lit-humanizer/examples/accessibility-note/before.md +7 -0
- package/skills/lit-humanizer/examples/api-reference/after.md +9 -0
- package/skills/lit-humanizer/examples/api-reference/before.md +15 -0
- package/skills/lit-humanizer/examples/changelog/after.md +5 -0
- package/skills/lit-humanizer/examples/changelog/before.md +12 -0
- package/skills/lit-humanizer/examples/code-comments/after.md +10 -0
- package/skills/lit-humanizer/examples/code-comments/before.md +19 -0
- package/skills/lit-humanizer/examples/commit/after.md +5 -0
- package/skills/lit-humanizer/examples/commit/before.md +7 -0
- package/skills/lit-humanizer/examples/data-release/after.md +7 -0
- package/skills/lit-humanizer/examples/data-release/before.md +9 -0
- package/skills/lit-humanizer/examples/english-essay/after.md +5 -0
- package/skills/lit-humanizer/examples/english-essay/before.md +5 -0
- package/skills/lit-humanizer/examples/incident-update/after.md +7 -0
- package/skills/lit-humanizer/examples/incident-update/before.md +7 -0
- package/skills/lit-humanizer/examples/ko-essay/after.md +7 -0
- package/skills/lit-humanizer/examples/ko-essay/before.md +9 -0
- package/skills/lit-humanizer/examples/ko-report/after.md +9 -0
- package/skills/lit-humanizer/examples/ko-report/before.md +13 -0
- package/skills/lit-humanizer/examples/ko-slide/after.md +19 -0
- package/skills/lit-humanizer/examples/ko-slide/before.md +21 -0
- package/skills/lit-humanizer/examples/meeting-brief/after.md +9 -0
- package/skills/lit-humanizer/examples/meeting-brief/before.md +11 -0
- package/skills/lit-humanizer/examples/policy-faq/after.md +9 -0
- package/skills/lit-humanizer/examples/policy-faq/before.md +9 -0
- package/skills/lit-humanizer/examples/pr/after.md +15 -0
- package/skills/lit-humanizer/examples/pr/before.md +17 -0
- package/skills/lit-humanizer/examples/project-update/after.md +7 -0
- package/skills/lit-humanizer/examples/project-update/before.md +9 -0
- package/skills/lit-humanizer/examples/readme/after.md +12 -0
- package/skills/lit-humanizer/examples/readme/before.md +14 -0
- package/skills/lit-humanizer/examples/report/after.md +13 -0
- package/skills/lit-humanizer/examples/report/before.md +11 -0
- package/skills/lit-humanizer/examples/research-abstract/after.md +5 -0
- package/skills/lit-humanizer/examples/research-abstract/before.md +5 -0
- package/skills/lit-humanizer/examples/slides/after.md +19 -0
- package/skills/lit-humanizer/examples/slides/before.md +19 -0
- package/skills/lit-humanizer/examples/troubleshooting/after.md +11 -0
- package/skills/lit-humanizer/examples/troubleshooting/before.md +11 -0
- package/skills/lit-humanizer/fixtures/ko-metrics-golden.json +49 -0
- package/skills/lit-humanizer/fixtures/office/minimal.docx +0 -0
- package/skills/lit-humanizer/fixtures/office/minimal.pptx +0 -0
- package/skills/lit-humanizer/fixtures/pos-real.txt +26 -0
- package/skills/lit-humanizer/fixtures/rule-cases.json +306 -0
- package/skills/lit-humanizer/references/code-patterns.md +468 -0
- package/skills/lit-humanizer/references/deliverable-channels.md +111 -0
- package/skills/lit-humanizer/references/en-patterns-checklist.md +43 -0
- package/skills/lit-humanizer/references/en-patterns-content.md +243 -0
- package/skills/lit-humanizer/references/en-patterns-structure.md +375 -0
- package/skills/lit-humanizer/references/en-patterns.md +57 -0
- package/skills/lit-humanizer/references/ko-metrics.md +33 -0
- package/skills/lit-humanizer/references/ko-patterns-a-d.md +659 -0
- package/skills/lit-humanizer/references/ko-patterns-e-j.md +387 -0
- package/skills/lit-humanizer/references/ko-patterns.md +31 -0
- package/skills/lit-humanizer/references/rewrite-playbook.md +54 -0
- package/skills/lit-humanizer/references/taxonomy.md +153 -0
- package/skills/lit-humanizer/rules.json +884 -0
- package/skills/lit-humanizer/scripts/core.mjs +208 -0
- package/skills/lit-humanizer/scripts/detect.mjs +91 -0
- package/skills/lit-humanizer/scripts/extract_office_text.py +89 -0
- package/skills/lit-humanizer/scripts/guard-scan.mjs +36 -0
- package/skills/lit-humanizer/scripts/ko-metrics.mjs +124 -0
- package/skills/lit-humanizer/scripts/test-fixtures.mjs +54 -0
- package/skills/lit-humanizer/scripts/test-ko-metrics.mjs +27 -0
- package/skills/lit-pptx/FORBIDDEN_TERMS.json +55 -0
- package/skills/lit-pptx/NOTICE.md +3 -0
- package/skills/lit-pptx/SKILL.md +76 -0
- package/skills/lit-pptx/agents/analyst.md +49 -0
- package/skills/lit-pptx/agents/antithesis.md +59 -0
- package/skills/lit-pptx/agents/architect.md +44 -0
- package/skills/lit-pptx/agents/critic.md +42 -0
- package/skills/lit-pptx/agents/synthesizer.md +47 -0
- package/skills/lit-pptx/agents/thesis.md +33 -0
- package/skills/lit-pptx/assets/azure/circle-lg.png +0 -0
- package/skills/lit-pptx/assets/azure/circle-md.png +0 -0
- package/skills/lit-pptx/assets/azure/circle-sm.png +0 -0
- package/skills/lit-pptx/fonts/a2z-font/A2Z-Black.otf +0 -0
- package/skills/lit-pptx/fonts/a2z-font/A2Z-Bold.otf +0 -0
- package/skills/lit-pptx/fonts/a2z-font/A2Z-Light.otf +0 -0
- package/skills/lit-pptx/fonts/a2z-font/A2Z-Medium.otf +0 -0
- package/skills/lit-pptx/fonts/a2z-font/A2Z-Regular.otf +0 -0
- package/skills/lit-pptx/fonts/a2z-font/OFL.txt +94 -0
- package/skills/lit-pptx/fonts/a2z-font/SOURCE.md +29 -0
- package/skills/lit-pptx/package-lock.json +747 -0
- package/skills/lit-pptx/package.json +13 -0
- package/skills/lit-pptx/pretendard-font/LICENSE.txt +94 -0
- package/skills/lit-pptx/pretendard-font/public/static/LitOpenCodeSans-Bold.otf +0 -0
- package/skills/lit-pptx/pretendard-font/public/static/LitOpenCodeSans-Regular.otf +0 -0
- package/skills/lit-pptx/requirements.in +2 -0
- package/skills/lit-pptx/requirements.lock +285 -0
- package/skills/lit-pptx/run.mjs +71 -0
- package/skills/lit-pptx/scripts/check_ooxml.py +47 -0
- package/skills/lit-pptx/scripts/compile-deck.js +447 -0
- package/skills/lit-pptx/scripts/craft-thresholds.json +26 -0
- package/skills/lit-pptx/scripts/craft_extras.py +224 -0
- package/skills/lit-pptx/scripts/embed_fonts.py +204 -0
- package/skills/lit-pptx/scripts/layout_inventory.py +70 -0
- package/skills/lit-pptx/scripts/learn_template.py +433 -0
- package/skills/lit-pptx/scripts/lib/derive-palette.js +176 -0
- package/skills/lit-pptx/scripts/lib/directive-parser.js +244 -0
- package/skills/lit-pptx/scripts/lib/font-map.js +79 -0
- package/skills/lit-pptx/scripts/lib/gen-bg.js +85 -0
- package/skills/lit-pptx/scripts/lib/gen-gradient-assets.js +36 -0
- package/skills/lit-pptx/scripts/lib/layout-resolver.js +737 -0
- package/skills/lit-pptx/scripts/lib/markdown-loader.js +136 -0
- package/skills/lit-pptx/scripts/lib/render-adapter-html.js +364 -0
- package/skills/lit-pptx/scripts/lib/render-adapter-pptx.js +1848 -0
- package/skills/lit-pptx/scripts/lib/slide-ast.js +534 -0
- package/skills/lit-pptx/scripts/lib/spec-validator.js +94 -0
- package/skills/lit-pptx/scripts/lib/template-registry.js +355 -0
- package/skills/lit-pptx/scripts/qa_deck.py +773 -0
- package/skills/lit-pptx/scripts/validate_pptx.py +206 -0
- package/skills/lit-pptx/specs/markdown-slide-spec-v1.md +251 -0
- package/skills/lit-pptx/specs/markdown-slide-spec-v2.md +223 -0
- package/skills/lit-pptx/specs/slide-ast-v1.schema.json +229 -0
- package/skills/lit-pptx/specs/slide-ast-v2.schema.json +144 -0
- package/skills/lit-pptx/specs/template-enrollment-contract.md +379 -0
- package/skills/lit-pptx/templates/bauhaus_light.css +4 -0
- package/skills/lit-pptx/templates/boilerplate_professional.css +508 -0
- package/skills/lit-pptx/templates/enrolled/AZURE-A2Z/capabilities.yaml +146 -0
- package/skills/lit-pptx/templates/enrolled/AZURE-A2Z/layout-mapping.yaml +454 -0
- package/skills/lit-pptx/templates/enrolled/AZURE-A2Z/template.yaml +37 -0
- package/skills/lit-pptx/templates/enrolled/AZURE-PRO/capabilities.yaml +154 -0
- package/skills/lit-pptx/templates/enrolled/AZURE-PRO/layout-mapping.yaml +483 -0
- package/skills/lit-pptx/templates/enrolled/AZURE-PRO/template.yaml +37 -0
- package/skills/lit-pptx/templates/enrolled/BOILERPLATE-A2Z/capabilities.yaml +179 -0
- package/skills/lit-pptx/templates/enrolled/BOILERPLATE-A2Z/layout-mapping.yaml +299 -0
- package/skills/lit-pptx/templates/enrolled/BOILERPLATE-A2Z/template.yaml +45 -0
- package/skills/lit-pptx/templates/enrolled/BOILERPLATE-PRETENDARD/capabilities.yaml +181 -0
- package/skills/lit-pptx/templates/enrolled/BOILERPLATE-PRETENDARD/layout-mapping.yaml +299 -0
- package/skills/lit-pptx/templates/enrolled/BOILERPLATE-PRETENDARD/template.yaml +44 -0
- package/skills/lit-scientific-visualization/SKILL.md +2 -0
- package/skills/lit-typographic-motion/NOTICE +23 -0
- package/skills/lit-typographic-motion/SKILL.md +77 -0
- package/skills/lit-typographic-motion/THIRD_PARTY_NOTICES +25 -0
- package/skills/lit-typographic-motion/audio-analysis.py +52 -0
- package/skills/lit-typographic-motion/engine/browser.mjs +83 -0
- package/skills/lit-typographic-motion/engine/constants.mjs +177 -0
- package/skills/lit-typographic-motion/engine/contrast.mjs +101 -0
- package/skills/lit-typographic-motion/engine/encode.mjs +46 -0
- package/skills/lit-typographic-motion/engine/flash.mjs +216 -0
- package/skills/lit-typographic-motion/engine/look.mjs +166 -0
- package/skills/lit-typographic-motion/engine/page/common.js +105 -0
- package/skills/lit-typographic-motion/engine/page/engine.js +451 -0
- package/skills/lit-typographic-motion/engine/page/gl.js +213 -0
- package/skills/lit-typographic-motion/engine/page/lines.js +88 -0
- package/skills/lit-typographic-motion/engine/page/passes.js +144 -0
- package/skills/lit-typographic-motion/engine/page/post.js +119 -0
- package/skills/lit-typographic-motion/engine/page/scenes.js +187 -0
- package/skills/lit-typographic-motion/engine/page/type.js +321 -0
- package/skills/lit-typographic-motion/engine/png.mjs +139 -0
- package/skills/lit-typographic-motion/engine/sound.mjs +291 -0
- package/skills/lit-typographic-motion/engine/stage/capture.mjs +133 -0
- package/skills/lit-typographic-motion/engine/stage/clock.js +171 -0
- package/skills/lit-typographic-motion/engine/stage/frame-worker.mjs +47 -0
- package/skills/lit-typographic-motion/engine/stage/gate.mjs +119 -0
- package/skills/lit-typographic-motion/engine/stage/qa-page.js +158 -0
- package/skills/lit-typographic-motion/engine/stage/qa.mjs +208 -0
- package/skills/lit-typographic-motion/engine/stage/render.mjs +418 -0
- package/skills/lit-typographic-motion/engine/stage/scan.mjs +162 -0
- package/skills/lit-typographic-motion/engine/stage/stage-kit.js +310 -0
- package/skills/lit-typographic-motion/engine/stills.mjs +60 -0
- package/skills/lit-typographic-motion/engine/text.mjs +126 -0
- package/skills/lit-typographic-motion/engine/timing.mjs +289 -0
- package/skills/lit-typographic-motion/engine/treatment.mjs +254 -0
- package/skills/lit-typographic-motion/fonts/Archivo-100-400.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/Archivo-100-700.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/Archivo-100-900.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/Archivo-125-400.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/Archivo-125-700.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/Archivo-125-900.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/Archivo-75-400.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/Archivo-75-700.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/Archivo-75-900.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/Archivo-OFL.txt +93 -0
- package/skills/lit-typographic-motion/fonts/Silkscreen-Bold.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/Silkscreen-OFL.txt +93 -0
- package/skills/lit-typographic-motion/fonts/Silkscreen-Regular.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/VT323-OFL.txt +93 -0
- package/skills/lit-typographic-motion/fonts/VT323-Regular.ttf +0 -0
- package/skills/lit-typographic-motion/fonts/pins.json +44 -0
- package/skills/lit-typographic-motion/fonts/stroke/CREDITS +52 -0
- package/skills/lit-typographic-motion/fonts/stroke/EMSAllure.svg +216 -0
- package/skills/lit-typographic-motion/fonts/stroke/EMSFelix.svg +216 -0
- package/skills/lit-typographic-motion/fonts/stroke/EMSOsmotron.svg +216 -0
- package/skills/lit-typographic-motion/fonts/stroke/EMSReadability.svg +216 -0
- package/skills/lit-typographic-motion/fonts/stroke/EMSTech.svg +217 -0
- package/skills/lit-typographic-motion/fonts/stroke/OFL.txt +85 -0
- package/skills/lit-typographic-motion/gate.mjs +593 -0
- package/skills/lit-typographic-motion/package-lock.json +78 -0
- package/skills/lit-typographic-motion/package.json +11 -0
- package/skills/lit-typographic-motion/probe.mjs +74 -0
- package/skills/lit-typographic-motion/references/authoring.md +110 -0
- package/skills/lit-typographic-motion/references/craft-loop.md +110 -0
- package/skills/lit-typographic-motion/references/runtime.md +88 -0
- package/skills/lit-typographic-motion/references/stage.md +164 -0
- package/skills/lit-typographic-motion/references/style-bibles.md +88 -0
- package/skills/lit-typographic-motion/references/treatment.md +143 -0
- package/skills/lit-typographic-motion/references/type-craft.md +55 -0
- package/skills/lit-typographic-motion/render.mjs +654 -0
- package/skills/lit-typographic-motion/requirements-audio.in +1 -0
- package/skills/lit-typographic-motion/requirements-audio.txt +790 -0
- package/skills/lit-typographic-motion/runtime.mjs +259 -0
- package/skills/lit-typographic-motion/word-timing-models.json +25 -0
- package/skills/litresearch/SKILL.md +41 -12
- package/skills/managed-skill-manifest.json +2367 -63
- package/skills/skill-rename-aliases.json +6 -1
- package/tools/check-pack-payload.mjs +22 -1
- package/tools/check-payload-substance.mjs +2 -2
- package/tools/payload-reference-exemptions.json +4 -0
- package/tools/payload-substance-allowlist.json +2 -3
- package/tools/payload-substance-parity.json +7 -7
- package/tools/version-manifests.json +4 -4
- package/skills/lit-korean/SKILL.md +0 -231
package/dist/features.js
CHANGED
|
@@ -917,33 +917,39 @@ export const litOpenCodeFeatures = Object.freeze([
|
|
|
917
917
|
]
|
|
918
918
|
},
|
|
919
919
|
{
|
|
920
|
-
id: "lit-
|
|
921
|
-
title: "Lit
|
|
922
|
-
summary: "
|
|
920
|
+
id: "lit-humanizer",
|
|
921
|
+
title: "Lit Humanizer",
|
|
922
|
+
summary: "Revises reader-facing prose for its audience and genre while preserving voice, meaning, evidence, citations, and useful qualifiers.",
|
|
923
923
|
bindings: [
|
|
924
924
|
{
|
|
925
925
|
kind: "config",
|
|
926
926
|
id: "litOpenCodeRuntimeSkills",
|
|
927
927
|
surface: "litopencode exported runtime skill catalog",
|
|
928
|
-
description: "Exposes the lit-
|
|
928
|
+
description: "Exposes the lit-humanizer skill through the native runtime catalog, prompt route, package assets, and tool guard."
|
|
929
929
|
},
|
|
930
930
|
{
|
|
931
931
|
kind: "command",
|
|
932
|
-
id: "lit-
|
|
933
|
-
surface: "OpenCode command /lit-
|
|
934
|
-
description: "
|
|
932
|
+
id: "lit-humanizer",
|
|
933
|
+
surface: "OpenCode command /lit-humanizer",
|
|
934
|
+
description: "Provides the canonical prose revision route and loads the installed skill guidance."
|
|
935
935
|
},
|
|
936
936
|
{
|
|
937
937
|
kind: "command",
|
|
938
|
-
id: "
|
|
939
|
-
surface: "OpenCode
|
|
940
|
-
description: "
|
|
938
|
+
id: "tool.execute.before",
|
|
939
|
+
surface: "OpenCode write/edit pre-tool hook",
|
|
940
|
+
description: "Blocks new high-confidence detector hits before supported reader-facing text files are saved."
|
|
941
941
|
},
|
|
942
942
|
{
|
|
943
943
|
kind: "config",
|
|
944
|
-
id: "skills/lit-
|
|
944
|
+
id: "skills/lit-humanizer/SKILL.md",
|
|
945
945
|
surface: "LitOpenCode visible static skills corpus",
|
|
946
|
-
description: "Provides the
|
|
946
|
+
description: "Provides the full language, format, safety, detector, Office extraction, and verification guidance for native skill users."
|
|
947
|
+
},
|
|
948
|
+
{
|
|
949
|
+
kind: "config",
|
|
950
|
+
id: "rules/bundled-rules/lit-humanizer.md",
|
|
951
|
+
surface: "OpenCode experimental.chat.system.transform hook",
|
|
952
|
+
description: "Applies the compact always-on writing rule on each eligible OpenCode chat turn."
|
|
947
953
|
}
|
|
948
954
|
],
|
|
949
955
|
verification: ["node --test test/runtime-skills.test.mjs", "node --test test/docs.test.mjs"]
|
|
@@ -971,7 +977,7 @@ export const litOpenCodeFeatures = Object.freeze([
|
|
|
971
977
|
{
|
|
972
978
|
id: "lit-comprehend",
|
|
973
979
|
title: "Lit Comprehend",
|
|
974
|
-
summary: "Builds a self-contained explainer
|
|
980
|
+
summary: "Builds a self-contained explainer so the user can understand completed work through delta-anchored themes, diagrams, and interactive examples.",
|
|
975
981
|
bindings: [
|
|
976
982
|
{
|
|
977
983
|
kind: "command",
|
|
@@ -1058,6 +1064,67 @@ export const litOpenCodeFeatures = Object.freeze([
|
|
|
1058
1064
|
],
|
|
1059
1065
|
verification: ["node --test test/lit-scientific-visualization.test.mjs", "npm run check:pack-payload"]
|
|
1060
1066
|
},
|
|
1067
|
+
{
|
|
1068
|
+
id: "lit-diagram-drawer",
|
|
1069
|
+
title: "Diagram Drawer",
|
|
1070
|
+
summary: "Installs an OpenCode native skill with pinned diagram guides, templates, local verifiers, safe importers, and an exporter that never installs dependencies.",
|
|
1071
|
+
bindings: [
|
|
1072
|
+
{
|
|
1073
|
+
kind: "config",
|
|
1074
|
+
id: "skills/lit-diagram-drawer/SKILL.md",
|
|
1075
|
+
surface: "OpenCode native skill picker",
|
|
1076
|
+
description: "Selects the bounded diagram workflow and its complete managed skill tree. Bounded lit diagram requests direct the model to this native picker; no dedicated slash or standalone diagram chat route is registered."
|
|
1077
|
+
},
|
|
1078
|
+
{
|
|
1079
|
+
kind: "cli",
|
|
1080
|
+
id: "litopencode install",
|
|
1081
|
+
surface: "LitOpenCode managed native skill installer",
|
|
1082
|
+
description: "Installs every hash-pinned guide, template, example, tool, font, and license asset."
|
|
1083
|
+
},
|
|
1084
|
+
{
|
|
1085
|
+
kind: "cli",
|
|
1086
|
+
id: "litopencode doctor",
|
|
1087
|
+
surface: "LitOpenCode managed native skill doctor",
|
|
1088
|
+
description: "Verifies the exact installed file closure and reports export capabilities without installing tools."
|
|
1089
|
+
}
|
|
1090
|
+
],
|
|
1091
|
+
verification: ["node --test test/lit-diagram-drawer.test.mjs", "npm run check:managed-skill-manifest", "npm run check:pack-payload"]
|
|
1092
|
+
},
|
|
1093
|
+
{
|
|
1094
|
+
id: "lit-typographic-motion",
|
|
1095
|
+
title: "Film director",
|
|
1096
|
+
summary: "Native OpenCode film director: treatment first, a captured stage page or the type engine, generated sound, a numeric gate and recorded look rounds.",
|
|
1097
|
+
bindings: [
|
|
1098
|
+
{ kind: "config", id: "skills/lit-typographic-motion/SKILL.md", surface: "OpenCode native skill picker", description: "Loads the managed motion skill and its engine and reference closure." },
|
|
1099
|
+
{ kind: "hook", id: "lit-task motion-video intent", surface: "OpenCode chat.message activation", description: "Routes bounded film requests before slide and interface guidance with a neutral film context." },
|
|
1100
|
+
{ kind: "hook", id: "tool.execute.after", surface: "OpenCode tool.execute.after hook", description: "Records each read of a film's stills so the done check can confirm the frames were viewed." },
|
|
1101
|
+
{ kind: "cli", id: "litopencode motion-runtime install|status", surface: "LitOpenCode runtime", description: "Pre-warms pinned dependencies and fonts outside the render session." },
|
|
1102
|
+
{ kind: "cli", id: "litopencode doctor", surface: "LitOpenCode doctor", description: "Reports Chrome, ffmpeg, WebGL2 tier, software warning, and pre-warm status." }
|
|
1103
|
+
],
|
|
1104
|
+
verification: ["node --test test/lit-typographic-motion.test.mjs", "npm run check:managed-skill-manifest", "npm run check:pack-payload"]
|
|
1105
|
+
},
|
|
1106
|
+
{
|
|
1107
|
+
id: "lit-pptx",
|
|
1108
|
+
title: "Lit PowerPoint",
|
|
1109
|
+
summary: "Native OpenCode deck skill with source, compile, QA, fonts, and first-use dependency cache.",
|
|
1110
|
+
bindings: [
|
|
1111
|
+
{ kind: "config", id: "skills/lit-pptx/SKILL.md", surface: "OpenCode native skill picker", description: "Loads the slide workflow from the installed managed tree." },
|
|
1112
|
+
{ kind: "hook", id: "lit-task slide intent", surface: "OpenCode chat.message activation", description: "Directs bounded lit slide requests to the native skill." },
|
|
1113
|
+
{ kind: "cli", id: "litopencode doctor", surface: "LitOpenCode doctor", description: "Reports installed skill integrity and office runtime readiness." }
|
|
1114
|
+
],
|
|
1115
|
+
verification: ["node --test test/lit-office-docs.test.mjs", "npm run check:pack-payload"]
|
|
1116
|
+
},
|
|
1117
|
+
{
|
|
1118
|
+
id: "lit-docx",
|
|
1119
|
+
title: "Lit Word Documents",
|
|
1120
|
+
summary: "Native OpenCode document skill with publisher profiles, conversion, editing, lint, and first-use dependency cache.",
|
|
1121
|
+
bindings: [
|
|
1122
|
+
{ kind: "config", id: "skills/lit-docx/SKILL.md", surface: "OpenCode native skill picker", description: "Loads the document workflow from the installed managed tree." },
|
|
1123
|
+
{ kind: "hook", id: "lit-task report intent", surface: "OpenCode chat.message activation", description: "Directs bounded lit report requests to the native skill." },
|
|
1124
|
+
{ kind: "cli", id: "litopencode doctor", surface: "LitOpenCode doctor", description: "Reports installed skill integrity and office runtime readiness." }
|
|
1125
|
+
],
|
|
1126
|
+
verification: ["node --test test/lit-office-docs.test.mjs", "npm run check:pack-payload"]
|
|
1127
|
+
},
|
|
1061
1128
|
frontendUiUxFeature,
|
|
1062
1129
|
{
|
|
1063
1130
|
id: "readme-studio", title: "README Studio",
|
package/dist/hooks.d.ts
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import type { Hooks } from "@opencode-ai/plugin";
|
|
2
2
|
import type { SessionLookup } from "./session-lineage.ts";
|
|
3
|
-
import {
|
|
3
|
+
import type { DeliverableHedgeGuardState } from "./deliverable-hedge-guard.ts";
|
|
4
4
|
type ToolExecuteBeforeHook = NonNullable<Hooks["tool.execute.before"]>;
|
|
5
5
|
type ToolExecuteAfterHook = NonNullable<Hooks["tool.execute.after"]>;
|
|
6
6
|
export type ToolExecuteHookOptions = {
|
|
7
7
|
readonly getSession?: SessionLookup;
|
|
8
|
+
readonly deliverableHedgeGuard?: DeliverableHedgeGuardState;
|
|
8
9
|
};
|
|
9
10
|
export declare function createToolExecuteBeforeHook(options?: ToolExecuteHookOptions): ToolExecuteBeforeHook;
|
|
10
11
|
export type ToolExecuteAfterHookOptions = {
|
|
11
12
|
readonly projectRoot?: string;
|
|
12
13
|
readonly knowledgeCaptureEnabled?: boolean;
|
|
13
|
-
readonly
|
|
14
|
+
readonly deliverableHedgeGuard?: DeliverableHedgeGuardState;
|
|
14
15
|
readonly onSkillActivation?: (sessionID: string, skillId: string) => void | Promise<void>;
|
|
15
16
|
};
|
|
16
17
|
export declare function createToolExecuteAfterHook(options?: ToolExecuteAfterHookOptions): ToolExecuteAfterHook;
|
package/dist/hooks.js
CHANGED
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
import { activationBanner } from "./activation-probe.js";
|
|
2
|
-
import { applyDeliverableHedgeAfterHook } from "./deliverable-hedge-guard.js";
|
|
3
2
|
import { dynamicRulesForPaths } from "./rules/hooks.js";
|
|
4
3
|
import { applyLitOpenCodePostEditHook, applyLitOpenCodeToolAfterHook, applyLitOpenCodeToolBeforeHook, applyTaskRecursionGuard, mutatedFilePaths } from "./tool-guards.js";
|
|
5
4
|
import { captureKnowledgeEvent } from "./knowledge.js";
|
|
5
|
+
import { recordMotionImageRead } from "./motion-image-reads.js";
|
|
6
6
|
export function createToolExecuteBeforeHook(options = {}) {
|
|
7
7
|
return async (input, output) => {
|
|
8
8
|
await applyTaskRecursionGuard(input, options.getSession);
|
|
9
9
|
applyLitOpenCodeToolBeforeHook(input, output);
|
|
10
|
+
await options.deliverableHedgeGuard?.before(input);
|
|
10
11
|
};
|
|
11
12
|
}
|
|
12
13
|
export function createToolExecuteAfterHook(options = {}) {
|
|
13
14
|
return async (input, output) => {
|
|
14
15
|
applyLitOpenCodeToolAfterHook(input, output);
|
|
15
16
|
applyLitOpenCodePostEditHook(input, output);
|
|
17
|
+
recordMotionImageRead(input, options.projectRoot);
|
|
16
18
|
const activationAction = input.tool === "lit" ? "activate"
|
|
17
19
|
: input.tool === "litwork" || input.tool === "start-work" ? "start"
|
|
18
20
|
: input.tool === "review-work" ? "review" : undefined;
|
|
@@ -21,9 +23,7 @@ export function createToolExecuteAfterHook(options = {}) {
|
|
|
21
23
|
output.output.startsWith(`${activationBanner(input.tool)}\n`)) {
|
|
22
24
|
await options.onSkillActivation?.(input.sessionID, input.tool);
|
|
23
25
|
}
|
|
24
|
-
|
|
25
|
-
await applyDeliverableHedgeAfterHook(options.deliverableHedgeState, input, output);
|
|
26
|
-
}
|
|
26
|
+
await options.deliverableHedgeGuard?.after(input, output);
|
|
27
27
|
if (options.projectRoot !== undefined && output.metadata?.litopencodeKnowledgeCapture !== undefined) {
|
|
28
28
|
const request = output.metadata.litopencodeKnowledgeCapture;
|
|
29
29
|
const metadata = { ...output.metadata };
|
package/dist/ignition.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare function ignitionMark(first: boolean, _discipline: string, env?: NodeJS.ProcessEnv): string;
|
|
2
2
|
export declare function createIgnitionState(): {
|
|
3
|
-
activate(sessionID: string, skillId: string): void;
|
|
3
|
+
activate(sessionID: string, skillId: string, showCompletionMark?: boolean): void;
|
|
4
4
|
resetDiscipline(sessionID: string): void;
|
|
5
5
|
clear(sessionID: string): void;
|
|
6
6
|
complete: (input: {
|
package/dist/ignition.js
CHANGED
|
@@ -8,6 +8,7 @@ export function ignitionMark(first, _discipline, env = process.env) {
|
|
|
8
8
|
export function createIgnitionState() {
|
|
9
9
|
const seen = new Set();
|
|
10
10
|
const disciplines = new Map();
|
|
11
|
+
const plainCompletions = new Set();
|
|
11
12
|
let disposed = false;
|
|
12
13
|
const complete = async (input, output) => {
|
|
13
14
|
const text = stripUserFacingBlankHtmlCommentLines(output.text);
|
|
@@ -15,15 +16,25 @@ export function createIgnitionState() {
|
|
|
15
16
|
output.text = text;
|
|
16
17
|
return;
|
|
17
18
|
}
|
|
19
|
+
if (plainCompletions.has(input.sessionID)) {
|
|
20
|
+
output.text = text;
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
18
23
|
const mark = ignitionMark(!seen.has(input.sessionID), disciplines.get(input.sessionID) ?? "lit-loop");
|
|
19
24
|
seen.add(input.sessionID);
|
|
20
25
|
output.text = `${mark}${text === "" ? "" : `\n\n${text}`}`;
|
|
21
26
|
};
|
|
22
27
|
return {
|
|
23
|
-
activate(sessionID, skillId
|
|
24
|
-
|
|
25
|
-
|
|
28
|
+
activate(sessionID, skillId, showCompletionMark = true) {
|
|
29
|
+
disciplines.set(sessionID, skillId);
|
|
30
|
+
if (showCompletionMark)
|
|
31
|
+
plainCompletions.delete(sessionID);
|
|
32
|
+
else
|
|
33
|
+
plainCompletions.add(sessionID);
|
|
34
|
+
},
|
|
35
|
+
resetDiscipline(sessionID) { disciplines.delete(sessionID); plainCompletions.delete(sessionID); },
|
|
36
|
+
clear(sessionID) { seen.delete(sessionID); disciplines.delete(sessionID); plainCompletions.delete(sessionID); },
|
|
26
37
|
complete,
|
|
27
|
-
dispose() { seen.clear(); disciplines.clear(); disposed = true; }
|
|
38
|
+
dispose() { seen.clear(); disciplines.clear(); plainCompletions.clear(); disposed = true; }
|
|
28
39
|
};
|
|
29
40
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export { defaultGlobalConfigFile, defaultGlobalConfigJson, effectiveAgentConfig,
|
|
|
7
7
|
export { captureKnowledgeEvent, inspectKnowledge, knowledgeKinds, knowledgePaths, knowledgeStates, queryKnowledge, readKnowledgeClaims, recoverKnowledge, reviewKnowledgeRecord, KnowledgeStoreError, type KnowledgeCaptureResult, type KnowledgeEvent, type KnowledgeKind, type KnowledgePaths, type KnowledgeQueryResult, type KnowledgeRecord, type KnowledgeReviewResult, type KnowledgeState } from "./knowledge.ts";
|
|
8
8
|
export { litActivationBanner, litOpenCodeCommands } from "./commands.ts";
|
|
9
9
|
export { createToolExecuteAfterHook, createToolExecuteBeforeHook } from "./hooks.ts";
|
|
10
|
-
export {
|
|
10
|
+
export { createDeliverableHedgeGuard, type DeliverableHedgeGuardOptions, type DeliverableHedgeGuardState, type HumanizerFinding, type HumanizerScan, type HumanizerScanRequest } from "./deliverable-hedge-guard.ts";
|
|
11
11
|
export { activationRegexMetric, createProviderUsageReceiptEventHook, emptyProviderCacheMeasurement, providerUsageReceiptFromEvent, recordProviderUsageReceipt, ruleDedupMetric, updateCacheMetric, type ProviderCacheMeasurement, type ProviderUsageReceipt, type ProviderUsageReceiptEventOptions, type RuleDedupMetric, type ActivationRegexMetric, type UpdateCacheMetric } from "./cache-metrics.ts";
|
|
12
12
|
export { benchmarkGateAllowsStrongClaim, classifyReferenceSuperiorityClaim, certifyDeclaredBenchmarkUniverse, litOpenCodeClaimPolicy, litOpenCodeReferenceBenchmark, renderDeclaredBenchmarkUniverseClaim, type LitOpenCodeBenchmarkGateInput, type LitOpenCodeBenchmarkScoringDimension, type LitOpenCodeBenchmarkTaskCategory, type LitOpenCodeBenchmarkTaskResult, type LitOpenCodeBenchmarkTaskWinner, type LitOpenCodeBenchmarkUniverseCertification, type LitOpenCodeBenchmarkUniverseCertificationInput, type LitOpenCodeClaimClassification, type LitOpenCodeClaimPolicy, type LitOpenCodeClaimVerdict, type LitOpenCodeReferenceBenchmark } from "./benchmark.ts";
|
|
13
13
|
export { completeGoals, countRecordedEvidence, createGoals, criterionStatuses, evaluateGoalGate, evidenceKinds, EvidenceLedgerError, evidenceLedgerVersion, goalStatuses, readEvidenceLedger, readEvidenceLedgerStatus, recordCheckpoint, recordEvidence, recordReviewBlocker, recordSteering, renderEvidenceBrief, steeringKinds, steeringWeakeningReason, type Checkpoint, type Criterion, type CriterionStatus, type EvidenceEntry, type EvidenceKind, type EvidenceLedgerState, type GateVerdict, type Goal, type GoalStatus, type ReviewBlocker, type SteeringEntry, type SteeringKind } from "./ledger.ts";
|
package/dist/index.js
CHANGED
|
@@ -7,7 +7,7 @@ export { defaultGlobalConfigFile, defaultGlobalConfigJson, effectiveAgentConfig,
|
|
|
7
7
|
export { captureKnowledgeEvent, inspectKnowledge, knowledgeKinds, knowledgePaths, knowledgeStates, queryKnowledge, readKnowledgeClaims, recoverKnowledge, reviewKnowledgeRecord, KnowledgeStoreError } from "./knowledge.js";
|
|
8
8
|
export { litActivationBanner, litOpenCodeCommands } from "./commands.js";
|
|
9
9
|
export { createToolExecuteAfterHook, createToolExecuteBeforeHook } from "./hooks.js";
|
|
10
|
-
export {
|
|
10
|
+
export { createDeliverableHedgeGuard } from "./deliverable-hedge-guard.js";
|
|
11
11
|
export { activationRegexMetric, createProviderUsageReceiptEventHook, emptyProviderCacheMeasurement, providerUsageReceiptFromEvent, recordProviderUsageReceipt, ruleDedupMetric, updateCacheMetric } from "./cache-metrics.js";
|
|
12
12
|
export { benchmarkGateAllowsStrongClaim, classifyReferenceSuperiorityClaim, certifyDeclaredBenchmarkUniverse, litOpenCodeClaimPolicy, litOpenCodeReferenceBenchmark, renderDeclaredBenchmarkUniverseClaim } from "./benchmark.js";
|
|
13
13
|
export { completeGoals, countRecordedEvidence, createGoals, criterionStatuses, evaluateGoalGate, evidenceKinds, EvidenceLedgerError, evidenceLedgerVersion, goalStatuses, readEvidenceLedger, readEvidenceLedgerStatus, recordCheckpoint, recordEvidence, recordReviewBlocker, recordSteering, renderEvidenceBrief, steeringKinds, steeringWeakeningReason } from "./ledger.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const interfaceWorkHandoff = "If the work creates or changes a user-facing web interface, include its UI slice in the plan and verification: load frontend-ui-ux, follow its build guidance, and run node scripts/probe.mjs --path <entry.html> --out <evidence-dir> against the finished page. Require the full RS matrix; fix remaining measured or derived HIGH findings before claiming done, and report exit 2 as blocked. A --help call or ad hoc screenshot does not substitute for the page probe. For CLI or backend-only work, do not load the interface skill or run its probe.";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const interfaceWorkHandoff = "If the work creates or changes a user-facing web interface, include its UI slice in the plan and verification: load frontend-ui-ux, follow its build guidance, and run node scripts/probe.mjs --path <entry.html> --out <evidence-dir> against the finished page. Require the full RS matrix; fix remaining measured or derived HIGH findings before claiming done, and report exit 2 as blocked. A --help call or ad hoc screenshot does not substitute for the page probe. For CLI or backend-only work, do not load the interface skill or run its probe.";
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { appendFileSync, existsSync, readFileSync } from "node:fs";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
// lit-typographic-motion's look rounds count a frame as viewed only when OpenCode's read tool opened
|
|
5
|
+
// it. This hook sees every completed read; when the file is a PNG inside a film's output directory
|
|
6
|
+
// (one holding treatment.json and a stills set), it appends the file and its SHA-256 to that
|
|
7
|
+
// directory's .run/image-reads.jsonl. It never reads tool output, never throws and writes nowhere else.
|
|
8
|
+
const maxLevels = 3;
|
|
9
|
+
function filePathOf(args) {
|
|
10
|
+
if (typeof args !== "object" || args === null)
|
|
11
|
+
return undefined;
|
|
12
|
+
const value = args.filePath ?? args.file_path ?? args.path;
|
|
13
|
+
return typeof value === "string" && value.length > 0 ? value : undefined;
|
|
14
|
+
}
|
|
15
|
+
export function motionRunDirFor(file) {
|
|
16
|
+
let dir = path.dirname(file);
|
|
17
|
+
for (let level = 0; level <= maxLevels; level++) {
|
|
18
|
+
if (existsSync(path.join(dir, "treatment.json")) && existsSync(path.join(dir, "stills", "stills.json")) && existsSync(path.join(dir, ".run")))
|
|
19
|
+
return dir;
|
|
20
|
+
const parent = path.dirname(dir);
|
|
21
|
+
if (parent === dir)
|
|
22
|
+
return undefined;
|
|
23
|
+
dir = parent;
|
|
24
|
+
}
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
export function recordMotionImageRead(input, cwd = process.cwd()) {
|
|
28
|
+
if (input.tool !== "read")
|
|
29
|
+
return;
|
|
30
|
+
const raw = filePathOf(input.args);
|
|
31
|
+
if (raw === undefined || !/\.png$/iu.test(raw))
|
|
32
|
+
return;
|
|
33
|
+
try {
|
|
34
|
+
const file = path.resolve(cwd, raw);
|
|
35
|
+
if (!existsSync(file))
|
|
36
|
+
return;
|
|
37
|
+
const runDir = motionRunDirFor(file);
|
|
38
|
+
if (runDir === undefined)
|
|
39
|
+
return;
|
|
40
|
+
const record = { file: path.relative(runDir, file).split(path.sep).join("/"), sha256: createHash("sha256").update(readFileSync(file)).digest("hex"), tool: "read", at: new Date().toISOString() };
|
|
41
|
+
appendFileSync(path.join(runDir, ".run", "image-reads.jsonl"), `${JSON.stringify(record)}\n`);
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
// A failed record only means the done check will ask for the read again.
|
|
45
|
+
}
|
|
46
|
+
}
|
package/dist/server.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import { fileURLToPath } from "node:url";
|
|
1
2
|
import { createChatMessageActivationHook, showActivationToast } from "./activation.js";
|
|
2
3
|
import { registerLitOpenCodeAgents } from "./agents.js";
|
|
3
4
|
import { createBoundedAuthorityEventHook } from "./bounded-authority-hooks.js";
|
|
4
5
|
import { createCommandActivationHook } from "./commands.js";
|
|
5
6
|
import { loadConfig } from "./config.js";
|
|
6
|
-
import {
|
|
7
|
+
import { createDeliverableHedgeGuard } from "./deliverable-hedge-guard.js";
|
|
7
8
|
import { createToolExecuteAfterHook, createToolExecuteBeforeHook } from "./hooks.js";
|
|
8
9
|
import { createLogger } from "./logger.js";
|
|
9
10
|
import { createIgnitionState } from "./ignition.js";
|
|
@@ -45,11 +46,10 @@ export function createLitOpenCodePlugin(autoUpdateRunner = runPluginAutoUpdate)
|
|
|
45
46
|
const logger = createLogger(loaded.paths);
|
|
46
47
|
const getSession = createSessionLookup(input?.client);
|
|
47
48
|
const ignitionState = createIgnitionState();
|
|
48
|
-
const
|
|
49
|
-
const recordSkillActivation = async (sessionID, skillId) => {
|
|
49
|
+
const deliverableHedgeGuard = createDeliverableHedgeGuard({ projectRoot: root });
|
|
50
|
+
const recordSkillActivation = async (sessionID, skillId, appendedLit = false) => {
|
|
50
51
|
showActivationToast(input?.client, skillId);
|
|
51
|
-
|
|
52
|
-
ignitionState.activate(sessionID, skillId);
|
|
52
|
+
ignitionState.activate(sessionID, skillId, !appendedLit);
|
|
53
53
|
};
|
|
54
54
|
const boundedAuthorityEvent = createBoundedAuthorityEventHook(root, input?.client, loaded.config.boundedAuthority);
|
|
55
55
|
const trustedCommandActivations = new WeakMap();
|
|
@@ -65,7 +65,6 @@ export function createLitOpenCodePlugin(autoUpdateRunner = runPluginAutoUpdate)
|
|
|
65
65
|
},
|
|
66
66
|
event: async (eventInput) => {
|
|
67
67
|
if (eventInput.event.type === "session.deleted") {
|
|
68
|
-
deliverableHedgeState.clear(eventInput.event.properties.info.id);
|
|
69
68
|
ignitionState.clear(eventInput.event.properties.info.id);
|
|
70
69
|
}
|
|
71
70
|
await boundedAuthorityEvent(eventInput);
|
|
@@ -76,7 +75,6 @@ export function createLitOpenCodePlugin(autoUpdateRunner = runPluginAutoUpdate)
|
|
|
76
75
|
boundedAuthority: loaded.config.boundedAuthority,
|
|
77
76
|
knowledgeCaptureEnabled: loaded.config.knowledge.capture,
|
|
78
77
|
onRootUserTurn: (sessionID) => {
|
|
79
|
-
deliverableHedgeState.clear(sessionID);
|
|
80
78
|
ignitionState.resetDiscipline(sessionID);
|
|
81
79
|
},
|
|
82
80
|
onSkillActivation: recordSkillActivation,
|
|
@@ -97,27 +95,31 @@ export function createLitOpenCodePlugin(autoUpdateRunner = runPluginAutoUpdate)
|
|
|
97
95
|
},
|
|
98
96
|
"experimental.text.complete": ignitionState.complete,
|
|
99
97
|
"experimental.chat.system.transform": async (transformInput, transformOutput) => {
|
|
100
|
-
await applyStaticRuleInjection({
|
|
98
|
+
await applyStaticRuleInjection({
|
|
99
|
+
projectRoot: root,
|
|
100
|
+
bundledRulesDir: fileURLToPath(new URL("../rules/bundled-rules", import.meta.url)),
|
|
101
|
+
outputStyle: loaded.config.outputStyle
|
|
102
|
+
}, transformInput, transformOutput);
|
|
101
103
|
},
|
|
102
104
|
"experimental.session.compacting": async (compactInput, compactOutput) => {
|
|
103
105
|
await applyCompactionRuleReset(compactInput, compactOutput);
|
|
104
106
|
},
|
|
105
107
|
dispose: async () => {
|
|
106
|
-
|
|
108
|
+
deliverableHedgeGuard.dispose();
|
|
107
109
|
ignitionState.dispose();
|
|
108
110
|
await logger.dispose();
|
|
109
111
|
}
|
|
110
112
|
};
|
|
111
113
|
Object.defineProperties(hooks, {
|
|
112
114
|
"tool.execute.before": {
|
|
113
|
-
value: createToolExecuteBeforeHook({ getSession }),
|
|
115
|
+
value: createToolExecuteBeforeHook({ getSession, deliverableHedgeGuard }),
|
|
114
116
|
enumerable: false
|
|
115
117
|
},
|
|
116
118
|
"tool.execute.after": {
|
|
117
119
|
value: createToolExecuteAfterHook({
|
|
118
120
|
projectRoot: root,
|
|
119
121
|
knowledgeCaptureEnabled: loaded.config.knowledge.capture,
|
|
120
|
-
|
|
122
|
+
deliverableHedgeGuard,
|
|
121
123
|
onSkillActivation: recordSkillActivation
|
|
122
124
|
}),
|
|
123
125
|
enumerable: false
|
package/dist/skill-renames.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { LitOpenCodeRuntimeSkillId } from "./skills.ts";
|
|
2
|
-
export type RenamedSkillId = Extract<LitOpenCodeRuntimeSkillId, "lit-crucible" | "lit-init" | "lit-commit" | "lit-burnoff" | "lit-burnoff-file" | "lit-
|
|
2
|
+
export type RenamedSkillId = Extract<LitOpenCodeRuntimeSkillId, "lit-crucible" | "lit-init" | "lit-commit" | "lit-burnoff" | "lit-burnoff-file" | "lit-humanizer" | "lit-fetch" | "lit-code">;
|
|
3
|
+
export declare const renamedSkillAliases: Readonly<Record<RenamedSkillId, readonly string[]>>;
|
|
3
4
|
export declare const renamedSkillIds: Readonly<Record<RenamedSkillId, string>>;
|
|
5
|
+
export declare const retiredManagedSkillEntrypointHashes: Readonly<Record<string, string>>;
|
|
4
6
|
export declare function renamedSkillId(alias: string): RenamedSkillId | undefined;
|
|
5
|
-
export declare function skillRenameNote(id: RenamedSkillId): string;
|
|
7
|
+
export declare function skillRenameNote(id: RenamedSkillId, alias?: string): string;
|
package/dist/skill-renames.js
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import { readFileSync } from "node:fs";
|
|
2
|
-
|
|
2
|
+
const renameValues = JSON.parse(readFileSync(new URL("../skills/skill-rename-aliases.json", import.meta.url), "utf8"));
|
|
3
|
+
function aliasesFor(value) {
|
|
4
|
+
return typeof value === "string" ? [value] : value;
|
|
5
|
+
}
|
|
6
|
+
export const renamedSkillAliases = Object.freeze(Object.fromEntries(Object.entries(renameValues).map(([id, value]) => [id, aliasesFor(value)])));
|
|
7
|
+
export const renamedSkillIds = Object.freeze(Object.fromEntries(Object.entries(renamedSkillAliases).map(([id, aliases]) => [id, aliases[0]])));
|
|
8
|
+
export const retiredManagedSkillEntrypointHashes = Object.freeze({
|
|
9
|
+
"lit-korean": "d50edcb844eb128abd12eb233c504f38751ab858e1b0eb39456eaca221a60348"
|
|
10
|
+
});
|
|
3
11
|
export function renamedSkillId(alias) {
|
|
4
|
-
return Object.keys(
|
|
12
|
+
return Object.keys(renamedSkillAliases).find((id) => renamedSkillAliases[id].includes(alias));
|
|
5
13
|
}
|
|
6
|
-
export function skillRenameNote(id) {
|
|
7
|
-
return `Note: \`${
|
|
14
|
+
export function skillRenameNote(id, alias = renamedSkillIds[id]) {
|
|
15
|
+
return `Note: \`${alias}\` now routes to \`${id}\`; use the canonical name for new invocations.`;
|
|
8
16
|
}
|
package/dist/skills.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { LitOpenCodeFeatureId } from "./features.ts";
|
|
2
|
-
export type LitOpenCodeRuntimeSkillId = "workflow-loop" | "durable-litgoal" | "agent-roster" | "lit-plan" | "start-work" | "review-work" | "litresearch" | "reference-benchmark-claims" | "native-goal-verdict" | "doctor-installer" | "search-workflow-ideas" | "lit-fetch" | "release-guardrails" | "lit-init" | "lit-crucible" | "refactor" | "lit-burnoff" | "lit-burnoff-file" | "comment-checker" | "lit-code" | "debugging" | "lit-commit" | "lsp" | "lsp-setup" | "rules" | "deep-interview" | "structural-search" | "browser-drive" | "lit-
|
|
2
|
+
export type LitOpenCodeRuntimeSkillId = "workflow-loop" | "durable-litgoal" | "agent-roster" | "lit-plan" | "start-work" | "review-work" | "litresearch" | "reference-benchmark-claims" | "native-goal-verdict" | "doctor-installer" | "search-workflow-ideas" | "lit-fetch" | "release-guardrails" | "lit-init" | "lit-crucible" | "refactor" | "lit-burnoff" | "lit-burnoff-file" | "comment-checker" | "lit-code" | "debugging" | "lit-commit" | "lsp" | "lsp-setup" | "rules" | "deep-interview" | "structural-search" | "browser-drive" | "lit-humanizer" | "lit-recap" | "lit-comprehend" | "lit-handoff" | "lit-scientific-visualization" | "lit-diagram-drawer" | "lit-pptx" | "lit-typographic-motion" | "lit-docx" | "readme-studio" | "frontend-ui-ux" | "visual-qa" | "autoresearch" | "autoconference" | "wikify";
|
|
3
3
|
export type LitOpenCodeRuntimeSkill = {
|
|
4
4
|
readonly id: LitOpenCodeRuntimeSkillId;
|
|
5
5
|
readonly title: string;
|
|
@@ -227,10 +227,10 @@ export declare const litOpenCodeRuntimeSkills: readonly ({
|
|
|
227
227
|
discovery: string;
|
|
228
228
|
safety: string[];
|
|
229
229
|
} | {
|
|
230
|
-
id: "lit-
|
|
230
|
+
id: "lit-humanizer";
|
|
231
231
|
title: string;
|
|
232
232
|
summary: string;
|
|
233
|
-
featureIds: "lit-
|
|
233
|
+
featureIds: "lit-humanizer"[];
|
|
234
234
|
discovery: string;
|
|
235
235
|
safety: string[];
|
|
236
236
|
} | {
|
|
@@ -261,6 +261,34 @@ export declare const litOpenCodeRuntimeSkills: readonly ({
|
|
|
261
261
|
featureIds: ("doctor-install" | "lit-scientific-visualization")[];
|
|
262
262
|
discovery: string;
|
|
263
263
|
safety: string[];
|
|
264
|
+
} | {
|
|
265
|
+
id: "lit-diagram-drawer";
|
|
266
|
+
title: string;
|
|
267
|
+
summary: string;
|
|
268
|
+
featureIds: "lit-diagram-drawer"[];
|
|
269
|
+
discovery: string;
|
|
270
|
+
safety: string[];
|
|
271
|
+
} | {
|
|
272
|
+
id: "lit-typographic-motion";
|
|
273
|
+
title: string;
|
|
274
|
+
summary: string;
|
|
275
|
+
featureIds: "lit-typographic-motion"[];
|
|
276
|
+
discovery: string;
|
|
277
|
+
safety: string[];
|
|
278
|
+
} | {
|
|
279
|
+
id: "lit-pptx";
|
|
280
|
+
title: string;
|
|
281
|
+
summary: string;
|
|
282
|
+
featureIds: "lit-pptx"[];
|
|
283
|
+
discovery: string;
|
|
284
|
+
safety: string[];
|
|
285
|
+
} | {
|
|
286
|
+
id: "lit-docx";
|
|
287
|
+
title: string;
|
|
288
|
+
summary: string;
|
|
289
|
+
featureIds: "lit-docx"[];
|
|
290
|
+
discovery: string;
|
|
291
|
+
safety: string[];
|
|
264
292
|
} | {
|
|
265
293
|
id: "autoresearch";
|
|
266
294
|
title: string;
|
package/dist/skills.js
CHANGED
|
@@ -320,15 +320,15 @@ export const litOpenCodeRuntimeSkills = Object.freeze([
|
|
|
320
320
|
]
|
|
321
321
|
},
|
|
322
322
|
{
|
|
323
|
-
id: "lit-
|
|
324
|
-
title: "Lit
|
|
325
|
-
summary: "
|
|
326
|
-
featureIds: ["lit-
|
|
327
|
-
discovery: "Run /lit-
|
|
323
|
+
id: "lit-humanizer",
|
|
324
|
+
title: "Lit Humanizer",
|
|
325
|
+
summary: "Revise reader-facing prose in its language and genre while preserving voice, facts, citations, and useful qualifiers.",
|
|
326
|
+
featureIds: ["lit-humanizer"],
|
|
327
|
+
discovery: "Run /lit-humanizer, select the lit-humanizer native skill, or inspect skills/lit-humanizer/SKILL.md; prior Korean prose routes remain redirects.",
|
|
328
328
|
safety: [
|
|
329
|
-
"Treat source text as user-owned content and preserve factual meaning, technical terms, and requested tone.",
|
|
330
|
-
"
|
|
331
|
-
"
|
|
329
|
+
"Treat source text as user-owned inert content and preserve factual meaning, technical terms, and requested tone.",
|
|
330
|
+
"The guard blocks only new high-precision findings before supported text writes; warning-tier findings remain advisory.",
|
|
331
|
+
"Keep detailed evidence internal and state material reader-facing risk once in the chat reply."
|
|
332
332
|
]
|
|
333
333
|
},
|
|
334
334
|
{
|
|
@@ -345,7 +345,7 @@ export const litOpenCodeRuntimeSkills = Object.freeze([
|
|
|
345
345
|
{
|
|
346
346
|
id: "lit-comprehend",
|
|
347
347
|
title: "Lit Comprehend",
|
|
348
|
-
summary: "Build a self-contained explainer
|
|
348
|
+
summary: "Build a self-contained explainer with delta-anchored themes, diagrams, and interactive examples so the user can understand completed work.",
|
|
349
349
|
featureIds: ["lit-comprehend"],
|
|
350
350
|
discovery: "Run /lit-comprehend, type a bounded lit-comprehend or comprehend trigger in chat, or inspect skills/lit-comprehend/SKILL.md.",
|
|
351
351
|
safety: [
|
|
@@ -377,6 +377,50 @@ export const litOpenCodeRuntimeSkills = Object.freeze([
|
|
|
377
377
|
"Verify current publisher requirements and inspect real exported artifacts."
|
|
378
378
|
]
|
|
379
379
|
},
|
|
380
|
+
{
|
|
381
|
+
id: "lit-diagram-drawer",
|
|
382
|
+
title: "Diagram Drawer",
|
|
383
|
+
summary: "Create editable, accessible diagrams with 61 type guides, local templates, bounded importers, and visual verification tools.",
|
|
384
|
+
featureIds: ["lit-diagram-drawer"],
|
|
385
|
+
discovery: "Select lit-diagram-drawer from OpenCode's native skill picker for conceptual diagrams; bounded diagram-creation requests with lit direct the model to load it before authoring. Product interfaces route to frontend-ui-ux and measured scientific figures to lit-scientific-visualization.",
|
|
386
|
+
safety: [
|
|
387
|
+
"Treat imported diagram text as inert data and reject active markup; never execute source labels or links.",
|
|
388
|
+
"Run local checks before export, inspect the rendered image, and do not install browsers, fonts, or packages from the skill."
|
|
389
|
+
]
|
|
390
|
+
},
|
|
391
|
+
{
|
|
392
|
+
id: "lit-typographic-motion",
|
|
393
|
+
title: "Film director",
|
|
394
|
+
summary: "Direct a film from a written treatment: a captured stage page for films that show things, the type engine for words-alone films, both gated and looked at.",
|
|
395
|
+
featureIds: ["lit-typographic-motion"],
|
|
396
|
+
discovery: "Select lit-typographic-motion from OpenCode's native skill picker; bounded lit film requests route here before slide or interface skills.",
|
|
397
|
+
safety: [
|
|
398
|
+
"Keep source text inert, use the installed render and gate scripts, and never install dependencies inside the render session.",
|
|
399
|
+
"A flash failure withholds exports; report a named BLOCKED state or failed rule instead of claiming a finished film."
|
|
400
|
+
]
|
|
401
|
+
},
|
|
402
|
+
{
|
|
403
|
+
id: "lit-pptx",
|
|
404
|
+
title: "Lit PowerPoint",
|
|
405
|
+
summary: "Compile a source-backed Markdown deck to an editable PPTX with enrolled templates, pinned first-use runtime, QA, and visual inspection.",
|
|
406
|
+
featureIds: ["lit-pptx"],
|
|
407
|
+
discovery: "Select the lit-pptx native skill; bounded lit slide requests direct OpenCode to load it before drafting.",
|
|
408
|
+
safety: [
|
|
409
|
+
"Keep the Markdown source with the PPTX and do not invent missing source facts.",
|
|
410
|
+
"Pass layout, anti-slop, contrast and OOXML checks, then inspect rendered slides when soffice is available."
|
|
411
|
+
]
|
|
412
|
+
},
|
|
413
|
+
{
|
|
414
|
+
id: "lit-docx",
|
|
415
|
+
title: "Lit Word Documents",
|
|
416
|
+
summary: "Create or edit styled DOCX reports from Markdown with publisher profiles, pinned first-use runtime, lint, and visual audit.",
|
|
417
|
+
featureIds: ["lit-docx"],
|
|
418
|
+
discovery: "Select the lit-docx native skill; bounded lit report requests direct OpenCode to load it before drafting.",
|
|
419
|
+
safety: [
|
|
420
|
+
"Preserve factual source claims and keep the Markdown beside the DOCX.",
|
|
421
|
+
"Use publisher profiles when requested; render and inspect pages before a visual-quality claim."
|
|
422
|
+
]
|
|
423
|
+
},
|
|
380
424
|
{
|
|
381
425
|
id: "autoresearch",
|
|
382
426
|
title: "Autoresearch",
|
package/dist/tools.js
CHANGED
|
@@ -34,7 +34,7 @@ function blockedWikifyStoreResult(action) {
|
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
36
|
export const litTool = tool({
|
|
37
|
-
description: "
|
|
37
|
+
description: "Inspect the durable ledger only on explicit request. Bare lit activation is automatic: the chat hook routes it as bounded direct work. Do not call this for a bounded task.",
|
|
38
38
|
args: {
|
|
39
39
|
action: actionSchema("LitOpenCode action. Supported values: activate, status.")
|
|
40
40
|
},
|
|
@@ -80,7 +80,7 @@ export const litTool = tool({
|
|
|
80
80
|
}
|
|
81
81
|
});
|
|
82
82
|
export const litworkTool = tool({
|
|
83
|
-
description: "Start or inspect a
|
|
83
|
+
description: "Start or inspect a durable loop only when the user asks for persistent tracking or the task needs multi-turn resumption; do not call for bounded work.",
|
|
84
84
|
args: {
|
|
85
85
|
action: actionSchema("LitOpenCode work action. Supported values: start, status.")
|
|
86
86
|
},
|
|
@@ -126,7 +126,7 @@ export const litworkTool = tool({
|
|
|
126
126
|
}
|
|
127
127
|
});
|
|
128
128
|
export const startWorkTool = tool({
|
|
129
|
-
description: "Start or resume
|
|
129
|
+
description: "Start or resume an approved durable plan only through explicit user start-work requests; do not use for a bounded task.",
|
|
130
130
|
args: {
|
|
131
131
|
action: actionSchema("LitOpenCode start-work action. Supported values: start, status.")
|
|
132
132
|
},
|
|
@@ -209,7 +209,7 @@ export const startWorkTool = tool({
|
|
|
209
209
|
}
|
|
210
210
|
});
|
|
211
211
|
export const reviewWorkTool = tool({
|
|
212
|
-
description: "Start read-only review-work
|
|
212
|
+
description: "Start read-only review-work only when the user explicitly requests an independent plan or work review; run relevant checks directly for bounded tasks.",
|
|
213
213
|
args: {
|
|
214
214
|
action: actionSchema("LitOpenCode review-work action. Supported values: review, status.")
|
|
215
215
|
},
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|