@litfamily/litopencode 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitattributes +8 -0
- package/ATTRIBUTION.md +56 -0
- package/CHANGELOG.md +267 -0
- package/CODE_OF_CONDUCT.md +30 -0
- package/CONTRIBUTING.md +82 -0
- package/LICENSE +21 -0
- package/README-Ko-KR.md +252 -0
- package/README.md +252 -0
- package/SECURITY.md +36 -0
- package/SUPPORT.md +37 -0
- package/bin/litopencode +3 -0
- package/bin/litopencode.cjs +10 -0
- package/dist/activation-managed-prompts.d.ts +2 -0
- package/dist/activation-managed-prompts.js +51 -0
- package/dist/activation-primary-prompts.d.ts +2 -0
- package/dist/activation-primary-prompts.js +176 -0
- package/dist/activation-probe.d.ts +3 -0
- package/dist/activation-probe.js +19 -0
- package/dist/activation-prompt-utils.d.ts +6 -0
- package/dist/activation-prompt-utils.js +36 -0
- package/dist/activation-routing.d.ts +5 -0
- package/dist/activation-routing.js +340 -0
- package/dist/activation-workflow-prompts.d.ts +26 -0
- package/dist/activation-workflow-prompts.js +295 -0
- package/dist/activation.d.ts +24 -0
- package/dist/activation.js +152 -0
- package/dist/agents/defaults.d.ts +15 -0
- package/dist/agents/defaults.js +112 -0
- package/dist/agents/registry.d.ts +65 -0
- package/dist/agents/registry.js +319 -0
- package/dist/agents/specialists.d.ts +49 -0
- package/dist/agents/specialists.js +307 -0
- package/dist/agents/types.d.ts +55 -0
- package/dist/agents/types.js +4 -0
- package/dist/agents.d.ts +4 -0
- package/dist/agents.js +3 -0
- package/dist/benchmark.d.ts +94 -0
- package/dist/benchmark.js +172 -0
- package/dist/bounded-authority-hooks.d.ts +19 -0
- package/dist/bounded-authority-hooks.js +157 -0
- package/dist/bounded-authority.d.ts +184 -0
- package/dist/bounded-authority.js +825 -0
- package/dist/cache-metrics.d.ts +54 -0
- package/dist/cache-metrics.js +81 -0
- package/dist/cli/args.d.ts +5 -0
- package/dist/cli/args.js +415 -0
- package/dist/cli/auto-update.d.ts +117 -0
- package/dist/cli/auto-update.js +604 -0
- package/dist/cli/command-alias-ownership.d.ts +2 -0
- package/dist/cli/command-alias-ownership.js +14 -0
- package/dist/cli/command-aliases.d.ts +12 -0
- package/dist/cli/command-aliases.js +112 -0
- package/dist/cli/doctor.d.ts +2 -0
- package/dist/cli/doctor.js +175 -0
- package/dist/cli/host-capabilities.d.ts +12 -0
- package/dist/cli/host-capabilities.js +25 -0
- package/dist/cli/host-limits.d.ts +21 -0
- package/dist/cli/host-limits.js +83 -0
- package/dist/cli/install-config.d.ts +13 -0
- package/dist/cli/install-config.js +201 -0
- package/dist/cli/install-report.d.ts +2 -0
- package/dist/cli/install-report.js +180 -0
- package/dist/cli/install-tui.d.ts +12 -0
- package/dist/cli/install-tui.js +174 -0
- package/dist/cli/install.d.ts +2 -0
- package/dist/cli/install.js +264 -0
- package/dist/cli/json.d.ts +4 -0
- package/dist/cli/json.js +31 -0
- package/dist/cli/loop.d.ts +3 -0
- package/dist/cli/loop.js +135 -0
- package/dist/cli/lsp-capability.d.ts +17 -0
- package/dist/cli/lsp-capability.js +92 -0
- package/dist/cli/managed-skill-assets.d.ts +23 -0
- package/dist/cli/managed-skill-assets.js +117 -0
- package/dist/cli/model-catalog.d.ts +21 -0
- package/dist/cli/model-catalog.js +107 -0
- package/dist/cli/model-policy.d.ts +3 -0
- package/dist/cli/model-policy.js +143 -0
- package/dist/cli/model-routing.d.ts +5 -0
- package/dist/cli/model-routing.js +208 -0
- package/dist/cli/native-canonical-backup.d.ts +9 -0
- package/dist/cli/native-canonical-backup.js +96 -0
- package/dist/cli/native-canonical-cache.d.ts +9 -0
- package/dist/cli/native-canonical-cache.js +37 -0
- package/dist/cli/native-skill-install.d.ts +2 -0
- package/dist/cli/native-skill-install.js +128 -0
- package/dist/cli/native-skill-integrity.d.ts +25 -0
- package/dist/cli/native-skill-integrity.js +178 -0
- package/dist/cli/native-skill-tree.d.ts +12 -0
- package/dist/cli/native-skill-tree.js +104 -0
- package/dist/cli/native-skills.d.ts +22 -0
- package/dist/cli/native-skills.js +105 -0
- package/dist/cli/plugin-mutation.d.ts +4 -0
- package/dist/cli/plugin-mutation.js +89 -0
- package/dist/cli/scientific-visualization-dependencies.d.ts +18 -0
- package/dist/cli/scientific-visualization-dependencies.js +91 -0
- package/dist/cli/skill-loop.d.ts +3 -0
- package/dist/cli/skill-loop.js +649 -0
- package/dist/cli/types.d.ts +188 -0
- package/dist/cli/types.js +1 -0
- package/dist/cli/update-check.d.ts +2 -0
- package/dist/cli/update-check.js +15 -0
- package/dist/cli/update-notifier.d.ts +70 -0
- package/dist/cli/update-notifier.js +717 -0
- package/dist/cli/vendor-path-migration.d.ts +9 -0
- package/dist/cli/vendor-path-migration.js +96 -0
- package/dist/cli.d.ts +7 -0
- package/dist/cli.js +250 -0
- package/dist/commands.d.ts +331 -0
- package/dist/commands.js +600 -0
- package/dist/config-parser.d.ts +5 -0
- package/dist/config-parser.js +274 -0
- package/dist/config.d.ts +72 -0
- package/dist/config.js +157 -0
- package/dist/deliverable-hedge-guard.d.ts +26 -0
- package/dist/deliverable-hedge-guard.js +302 -0
- package/dist/durable-plan.d.ts +23 -0
- package/dist/durable-plan.js +349 -0
- package/dist/features.d.ts +828 -0
- package/dist/features.js +1109 -0
- package/dist/hooks.d.ts +17 -0
- package/dist/hooks.js +83 -0
- package/dist/ignition.d.ts +14 -0
- package/dist/ignition.js +33 -0
- package/dist/index.d.ts +30 -0
- package/dist/index.js +30 -0
- package/dist/inert-data.d.ts +2 -0
- package/dist/inert-data.js +13 -0
- package/dist/knowledge.d.ts +98 -0
- package/dist/knowledge.js +961 -0
- package/dist/ledger.d.ts +181 -0
- package/dist/ledger.js +1179 -0
- package/dist/lit-fetch-classify.d.ts +8 -0
- package/dist/lit-fetch-classify.js +107 -0
- package/dist/lit-fetch-content.d.ts +2 -0
- package/dist/lit-fetch-content.js +43 -0
- package/dist/lit-fetch-http.d.ts +10 -0
- package/dist/lit-fetch-http.js +82 -0
- package/dist/lit-fetch-result.d.ts +2 -0
- package/dist/lit-fetch-result.js +65 -0
- package/dist/lit-fetch-ssrf.d.ts +9 -0
- package/dist/lit-fetch-ssrf.js +77 -0
- package/dist/lit-fetch-url.d.ts +3 -0
- package/dist/lit-fetch-url.js +28 -0
- package/dist/lit-fetch.d.ts +69 -0
- package/dist/lit-fetch.js +84 -0
- package/dist/lit-mark.d.ts +17 -0
- package/dist/lit-mark.js +129 -0
- package/dist/logger.d.ts +9 -0
- package/dist/logger.js +21 -0
- package/dist/model-route-policy.d.ts +25 -0
- package/dist/model-route-policy.js +129 -0
- package/dist/reader-facing-output.d.ts +3 -0
- package/dist/reader-facing-output.js +28 -0
- package/dist/rules/discovery.d.ts +36 -0
- package/dist/rules/discovery.js +270 -0
- package/dist/rules/engine.d.ts +43 -0
- package/dist/rules/engine.js +236 -0
- package/dist/rules/frontmatter.d.ts +16 -0
- package/dist/rules/frontmatter.js +179 -0
- package/dist/rules/glob.d.ts +12 -0
- package/dist/rules/glob.js +233 -0
- package/dist/rules/hooks.d.ts +25 -0
- package/dist/rules/hooks.js +75 -0
- package/dist/rules/output-style.d.ts +1 -0
- package/dist/rules/output-style.js +20 -0
- package/dist/scientific-visualization-banner.d.ts +1 -0
- package/dist/scientific-visualization-banner.js +2 -0
- package/dist/search-workflow-ideas.d.ts +67 -0
- package/dist/search-workflow-ideas.js +128 -0
- package/dist/secret-shapes.d.ts +9 -0
- package/dist/secret-shapes.js +63 -0
- package/dist/server.d.ts +6 -0
- package/dist/server.js +129 -0
- package/dist/session-lineage.d.ts +8 -0
- package/dist/session-lineage.js +12 -0
- package/dist/skill-loop/apply.d.ts +19 -0
- package/dist/skill-loop/apply.js +483 -0
- package/dist/skill-loop/config.d.ts +50 -0
- package/dist/skill-loop/config.js +215 -0
- package/dist/skill-loop/curator.d.ts +18 -0
- package/dist/skill-loop/curator.js +232 -0
- package/dist/skill-loop/ledger.d.ts +39 -0
- package/dist/skill-loop/ledger.js +344 -0
- package/dist/skill-loop/proposals.d.ts +48 -0
- package/dist/skill-loop/proposals.js +290 -0
- package/dist/skill-loop/storage.d.ts +72 -0
- package/dist/skill-loop/storage.js +817 -0
- package/dist/skill-loop/time.d.ts +2 -0
- package/dist/skill-loop/time.js +23 -0
- package/dist/skill-loop/transaction.d.ts +62 -0
- package/dist/skill-loop/transaction.js +836 -0
- package/dist/skill-loop/usage.d.ts +31 -0
- package/dist/skill-loop/usage.js +146 -0
- package/dist/skill-observer.d.ts +22 -0
- package/dist/skill-observer.js +1154 -0
- package/dist/skill-renames.d.ts +5 -0
- package/dist/skill-renames.js +8 -0
- package/dist/skills.d.ts +307 -0
- package/dist/skills.js +450 -0
- package/dist/stable-identity.d.ts +14 -0
- package/dist/stable-identity.js +15 -0
- package/dist/state.d.ts +25 -0
- package/dist/state.js +38 -0
- package/dist/strict-json.d.ts +2 -0
- package/dist/strict-json.js +94 -0
- package/dist/tool-guards.d.ts +34 -0
- package/dist/tool-guards.js +210 -0
- package/dist/tool-kit.d.ts +32 -0
- package/dist/tool-kit.js +75 -0
- package/dist/tools.d.ts +43 -0
- package/dist/tools.js +381 -0
- package/dist/uiux-visual-catalog.d.ts +50 -0
- package/dist/uiux-visual-catalog.js +103 -0
- package/dist/user-facing-markdown.d.ts +5 -0
- package/dist/user-facing-markdown.js +93 -0
- package/dist/workflow-families.d.ts +16 -0
- package/dist/workflow-families.js +95 -0
- package/docs/assets/cover.webp +0 -0
- package/docs/assets/litopencode-continuity-1600.webp +0 -0
- package/docs/assets/litopencode-ignition-1600.webp +0 -0
- package/docs/assets/readme/badge-license.svg +1 -0
- package/docs/assets/readme/badge-version.svg +1 -0
- package/docs/assets/readme/litopencode-clay-icon.png +0 -0
- package/docs/assets/readme/litopencode-wordmark.svg +5 -0
- package/docs/lit-mark.md +46 -0
- package/docs/migration.md +162 -0
- package/docs/privacy.md +82 -0
- package/docs/reference-Ko-KR.md +309 -0
- package/docs/reference.md +444 -0
- package/output-styles/asd-ste100-ko.md +41 -0
- package/output-styles/asd-ste100.md +40 -0
- package/output-styles/eli5-ko.md +13 -0
- package/output-styles/eli5.md +11 -0
- package/package.json +57 -0
- package/qa/fixtures/litfamily-harness-speed-v1.json +38 -0
- package/qa/harness-speed-contract.mjs +209 -0
- package/qa/harness-speed-v2-contract.mjs +213 -0
- package/qa/harness-speed-verdict.mjs +105 -0
- package/skills/agent-roster/SKILL.md +262 -0
- package/skills/autoconference/LICENSE +21 -0
- package/skills/autoconference/PROVENANCE.md +20 -0
- package/skills/autoconference/SKILL.md +125 -0
- package/skills/autoconference/assets/conference_template.md +76 -0
- package/skills/autoconference/assets/report_template.md +53 -0
- package/skills/autoconference/assets/synthesis_template.md +39 -0
- package/skills/autoconference/modes/analyze.md +255 -0
- package/skills/autoconference/modes/core.md +112 -0
- package/skills/autoconference/modes/debate.md +373 -0
- package/skills/autoconference/modes/plan.md +310 -0
- package/skills/autoconference/modes/resume.md +48 -0
- package/skills/autoconference/modes/ship.md +57 -0
- package/skills/autoconference/modes/survey.md +109 -0
- package/skills/autoconference/references/agent-prompts.md +134 -0
- package/skills/autoconference/references/conference-protocol.md +102 -0
- package/skills/autoconference/references/convergence-guide.md +167 -0
- package/skills/autoconference/references/core-principles.md +83 -0
- package/skills/autoconference/references/crash-recovery.md +104 -0
- package/skills/autoconference/references/results-logging.md +198 -0
- package/skills/autoconference/references/upstream-family-contract.md +130 -0
- package/skills/autoconference/references/visualization-guide.md +105 -0
- package/skills/autoconference/scripts/check_conference.sh +371 -0
- package/skills/autoconference/scripts/init_conference.py +625 -0
- package/skills/autoconference/scripts/style_presets.py +104 -0
- package/skills/autoresearch/LICENSE +21 -0
- package/skills/autoresearch/PROVENANCE.md +20 -0
- package/skills/autoresearch/SKILL.md +131 -0
- package/skills/autoresearch/assets/report_template.md +50 -0
- package/skills/autoresearch/assets/research_template.md +38 -0
- package/skills/autoresearch/assets/results_template.tsv +1 -0
- package/skills/autoresearch/modes/core.md +216 -0
- package/skills/autoresearch/modes/debug.md +235 -0
- package/skills/autoresearch/modes/fix.md +173 -0
- package/skills/autoresearch/modes/learn.md +91 -0
- package/skills/autoresearch/modes/plan.md +291 -0
- package/skills/autoresearch/modes/predict.md +266 -0
- package/skills/autoresearch/modes/reason.md +170 -0
- package/skills/autoresearch/modes/scenario.md +164 -0
- package/skills/autoresearch/modes/security.md +282 -0
- package/skills/autoresearch/modes/ship.md +49 -0
- package/skills/autoresearch/references/core-principles.md +80 -0
- package/skills/autoresearch/references/evaluator-contract.md +126 -0
- package/skills/autoresearch/references/investigation-techniques.md +205 -0
- package/skills/autoresearch/references/owasp-checklist.md +161 -0
- package/skills/autoresearch/references/persona-templates.md +232 -0
- package/skills/autoresearch/references/results-logging.md +96 -0
- package/skills/autoresearch/references/scenario-dimensions.md +178 -0
- package/skills/autoresearch/references/stride-model.md +196 -0
- package/skills/autoresearch/references/stuck-detection.md +107 -0
- package/skills/autoresearch/references/type-checklists.md +163 -0
- package/skills/autoresearch/references/upstream-family-contract.md +125 -0
- package/skills/autoresearch/references/visualization-guide.md +95 -0
- package/skills/autoresearch/scripts/check_progress.sh +272 -0
- package/skills/autoresearch/scripts/init_research.py +330 -0
- package/skills/autoresearch/scripts/run_with_deadline.py +164 -0
- package/skills/autoresearch/scripts/style_presets.py +104 -0
- package/skills/browser-drive/SKILL.md +133 -0
- package/skills/browser-drive/references/snapshot-act-loop.md +37 -0
- package/skills/browser-drive/scripts/capability-probe.mjs +262 -0
- package/skills/comment-checker/SKILL.md +171 -0
- package/skills/debugging/SKILL.md +202 -0
- package/skills/debugging/references/README.md +15 -0
- package/skills/debugging/references/escalation.md +43 -0
- package/skills/debugging/references/runtimes/README.md +17 -0
- package/skills/debugging/references/runtimes/bundled-js-binary.md +44 -0
- package/skills/debugging/references/runtimes/go.md +37 -0
- package/skills/debugging/references/runtimes/native-binary.md +44 -0
- package/skills/debugging/references/runtimes/node.md +43 -0
- package/skills/debugging/references/runtimes/python.md +41 -0
- package/skills/debugging/references/runtimes/rust.md +37 -0
- package/skills/debugging/references/tools.md +72 -0
- package/skills/deep-interview/SKILL.md +201 -0
- package/skills/doctor-installer/SKILL.md +252 -0
- package/skills/durable-litgoal/SKILL.md +248 -0
- package/skills/frontend-ui-ux/SKILL.md +70 -0
- package/skills/frontend-ui-ux/data/LICENSE +21 -0
- package/skills/frontend-ui-ux/data/PROVENANCE.json +1088 -0
- package/skills/frontend-ui-ux/data/THIRD-PARTY-NOTICE.txt +14 -0
- package/skills/frontend-ui-ux/data/design-intelligence.json +1 -0
- package/skills/frontend-ui-ux/references/_canonical-corpus/ATTRIBUTION.md +217 -0
- package/skills/frontend-ui-ux/references/_canonical-corpus/LICENSE +21 -0
- package/skills/frontend-ui-ux/references/_canonical-corpus/LICENSE-Apache-2.0.txt +201 -0
- package/skills/frontend-ui-ux/references/_canonical-corpus/manifest.json +867 -0
- package/skills/frontend-ui-ux/references/adaptive-layout.md +85 -0
- package/skills/frontend-ui-ux/references/brand-and-imagery.md +79 -0
- package/skills/frontend-ui-ux/references/complete-contract.md +282 -0
- package/skills/frontend-ui-ux/references/composition.md +87 -0
- package/skills/frontend-ui-ux/references/creative-directions.md +83 -0
- package/skills/frontend-ui-ux/references/design/README.md +248 -0
- package/skills/frontend-ui-ux/references/design/_INDEX.md +191 -0
- package/skills/frontend-ui-ux/references/design/airbnb.md +393 -0
- package/skills/frontend-ui-ux/references/design/airtable.md +92 -0
- package/skills/frontend-ui-ux/references/design/apple.md +250 -0
- package/skills/frontend-ui-ux/references/design/aside.md +209 -0
- package/skills/frontend-ui-ux/references/design/binance.md +348 -0
- package/skills/frontend-ui-ux/references/design/bmw.md +183 -0
- package/skills/frontend-ui-ux/references/design/brutalist-skill.md +92 -0
- package/skills/frontend-ui-ux/references/design/bugatti.md +271 -0
- package/skills/frontend-ui-ux/references/design/cal.md +262 -0
- package/skills/frontend-ui-ux/references/design/claude.md +315 -0
- package/skills/frontend-ui-ux/references/design/clay.md +307 -0
- package/skills/frontend-ui-ux/references/design/clickhouse.md +284 -0
- package/skills/frontend-ui-ux/references/design/clone-from-url.md +65 -0
- package/skills/frontend-ui-ux/references/design/cohere.md +269 -0
- package/skills/frontend-ui-ux/references/design/coinbase.md +132 -0
- package/skills/frontend-ui-ux/references/design/composio.md +310 -0
- package/skills/frontend-ui-ux/references/design/cursor.md +312 -0
- package/skills/frontend-ui-ux/references/design/design-system-architecture.md +244 -0
- package/skills/frontend-ui-ux/references/design/elevenlabs.md +268 -0
- package/skills/frontend-ui-ux/references/design/expo.md +284 -0
- package/skills/frontend-ui-ux/references/design/ferrari.md +317 -0
- package/skills/frontend-ui-ux/references/design/figma.md +223 -0
- package/skills/frontend-ui-ux/references/design/framer.md +249 -0
- package/skills/frontend-ui-ux/references/design/gpt-tasteskill.md +74 -0
- package/skills/frontend-ui-ux/references/design/hashicorp.md +281 -0
- package/skills/frontend-ui-ux/references/design/ibm.md +335 -0
- package/skills/frontend-ui-ux/references/design/image-to-code-skill.md +1228 -0
- package/skills/frontend-ui-ux/references/design/imagegen-brandkit.md +798 -0
- package/skills/frontend-ui-ux/references/design/imagegen-frontend-mobile.md +1465 -0
- package/skills/frontend-ui-ux/references/design/imagegen-frontend-web.md +987 -0
- package/skills/frontend-ui-ux/references/design/intercom.md +149 -0
- package/skills/frontend-ui-ux/references/design/kraken.md +128 -0
- package/skills/frontend-ui-ux/references/design/lamborghini.md +291 -0
- package/skills/frontend-ui-ux/references/design/layout-skill.md +107 -0
- package/skills/frontend-ui-ux/references/design/lazyweb.md +77 -0
- package/skills/frontend-ui-ux/references/design/linear.app.md +370 -0
- package/skills/frontend-ui-ux/references/design/lovable.md +301 -0
- package/skills/frontend-ui-ux/references/design/mastercard.md +368 -0
- package/skills/frontend-ui-ux/references/design/meta.md +369 -0
- package/skills/frontend-ui-ux/references/design/minimalist-skill.md +85 -0
- package/skills/frontend-ui-ux/references/design/minimax.md +260 -0
- package/skills/frontend-ui-ux/references/design/mintlify.md +329 -0
- package/skills/frontend-ui-ux/references/design/miro.md +111 -0
- package/skills/frontend-ui-ux/references/design/mistral.ai.md +264 -0
- package/skills/frontend-ui-ux/references/design/mongodb.md +269 -0
- package/skills/frontend-ui-ux/references/design/nike.md +366 -0
- package/skills/frontend-ui-ux/references/design/notion.md +312 -0
- package/skills/frontend-ui-ux/references/design/nvidia.md +296 -0
- package/skills/frontend-ui-ux/references/design/ollama.md +270 -0
- package/skills/frontend-ui-ux/references/design/opencode.ai.md +284 -0
- package/skills/frontend-ui-ux/references/design/output-skill.md +49 -0
- package/skills/frontend-ui-ux/references/design/pinterest.md +233 -0
- package/skills/frontend-ui-ux/references/design/playstation.md +367 -0
- package/skills/frontend-ui-ux/references/design/posthog.md +259 -0
- package/skills/frontend-ui-ux/references/design/raycast.md +271 -0
- package/skills/frontend-ui-ux/references/design/react-dev-tooling-skill.md +230 -0
- package/skills/frontend-ui-ux/references/design/redesign-skill.md +178 -0
- package/skills/frontend-ui-ux/references/design/renault.md +314 -0
- package/skills/frontend-ui-ux/references/design/replicate.md +264 -0
- package/skills/frontend-ui-ux/references/design/resend.md +306 -0
- package/skills/frontend-ui-ux/references/design/revolut.md +188 -0
- package/skills/frontend-ui-ux/references/design/runwayml.md +247 -0
- package/skills/frontend-ui-ux/references/design/sanity.md +360 -0
- package/skills/frontend-ui-ux/references/design/sentry.md +265 -0
- package/skills/frontend-ui-ux/references/design/shopify.md +353 -0
- package/skills/frontend-ui-ux/references/design/soft-skill.md +98 -0
- package/skills/frontend-ui-ux/references/design/spacex.md +197 -0
- package/skills/frontend-ui-ux/references/design/spotify.md +249 -0
- package/skills/frontend-ui-ux/references/design/starbucks.md +583 -0
- package/skills/frontend-ui-ux/references/design/stitch-design-example.md +121 -0
- package/skills/frontend-ui-ux/references/design/stitch-skill.md +184 -0
- package/skills/frontend-ui-ux/references/design/stripe.md +325 -0
- package/skills/frontend-ui-ux/references/design/supabase.md +258 -0
- package/skills/frontend-ui-ux/references/design/superhuman.md +255 -0
- package/skills/frontend-ui-ux/references/design/taste-skill.md +1206 -0
- package/skills/frontend-ui-ux/references/design/tesla.md +289 -0
- package/skills/frontend-ui-ux/references/design/theverge.md +342 -0
- package/skills/frontend-ui-ux/references/design/together.ai.md +266 -0
- package/skills/frontend-ui-ux/references/design/uber.md +298 -0
- package/skills/frontend-ui-ux/references/design/vercel.md +313 -0
- package/skills/frontend-ui-ux/references/design/vodafone.md +426 -0
- package/skills/frontend-ui-ux/references/design/voltagent.md +326 -0
- package/skills/frontend-ui-ux/references/design/warp.md +256 -0
- package/skills/frontend-ui-ux/references/design/webflow.md +95 -0
- package/skills/frontend-ui-ux/references/design/wired.md +281 -0
- package/skills/frontend-ui-ux/references/design/wise.md +176 -0
- package/skills/frontend-ui-ux/references/design/x.ai.md +260 -0
- package/skills/frontend-ui-ux/references/design/zapier.md +331 -0
- package/skills/frontend-ui-ux/references/designpowers/EVIDENCE.md +97 -0
- package/skills/frontend-ui-ux/references/designpowers/README.md +48 -0
- package/skills/frontend-ui-ux/references/designpowers/UPSTREAM.md +80 -0
- package/skills/frontend-ui-ux/references/designpowers/lane-a-direction.md +64 -0
- package/skills/frontend-ui-ux/references/designpowers/lane-b-execution.md +65 -0
- package/skills/frontend-ui-ux/references/designpowers/lane-c-review.md +65 -0
- package/skills/frontend-ui-ux/references/designpowers/lane-d-memory.md +83 -0
- package/skills/frontend-ui-ux/references/designpowers/orchestration.md +80 -0
- package/skills/frontend-ui-ux/references/designpowers/routing.md +79 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/LICENSE +21 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/agents/accessibility-reviewer.md +83 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/agents/content-writer.md +132 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/agents/design-builder.md +109 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/agents/design-critic.md +89 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/agents/design-lead.md +113 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/agents/design-scout.md +78 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/agents/design-strategist.md +121 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/agents/heuristic-evaluator.md +268 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/agents/inspiration-scout.md +107 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/agents/motion-designer.md +120 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/accessible-content/reference.md +101 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/adaptive-interfaces/reference.md +109 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/cognitive-accessibility/reference.md +107 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/design-debate/reference.md +199 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/design-debt-tracker/reference.md +174 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/design-handoff/reference.md +125 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/design-md/reference.md +106 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/design-retrospective/reference.md +266 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/design-review/reference.md +123 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/design-system-alignment/reference.md +120 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/designpowers-critique/reference.md +164 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/heuristic-evaluation/reference.md +85 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/inclusive-personas/reference.md +98 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/inspiration-scouting/reference.md +165 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/interaction-design/reference.md +122 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/motion-choreography/reference.md +81 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/research-planning/reference.md +96 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/responsive-patterns/reference.md +77 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/synthetic-user-testing/reference.md +192 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/taste-feedback/reference.md +165 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/taste-report/reference.md +78 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/token-architecture/reference.md +75 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/ui-composition/reference.md +117 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/usability-testing/reference.md +78 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/verification-before-shipping/reference.md +125 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/voice-and-tone/reference.md +79 -0
- package/skills/frontend-ui-ux/references/designpowers/vendor/skills/writing-design-plans/reference.md +119 -0
- package/skills/frontend-ui-ux/references/evidence-review.md +103 -0
- package/skills/frontend-ui-ux/references/implementation-platforms.md +94 -0
- package/skills/frontend-ui-ux/references/inclusive-interface.md +85 -0
- package/skills/frontend-ui-ux/references/interaction-motion.md +93 -0
- package/skills/frontend-ui-ux/references/operating-lanes.md +80 -0
- package/skills/frontend-ui-ux/references/perfection/README.md +160 -0
- package/skills/frontend-ui-ux/references/perfection/react-perf-tooling.md +127 -0
- package/skills/frontend-ui-ux/references/performance-delivery.md +77 -0
- package/skills/frontend-ui-ux/references/product-direction.md +84 -0
- package/skills/frontend-ui-ux/references/redesign-playbook.md +88 -0
- package/skills/frontend-ui-ux/references/system-foundations.md +86 -0
- package/skills/frontend-ui-ux/references/taste-direction.md +55 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/README.md +659 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/charts.csv +26 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/colors.csv +162 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/icons.csv +106 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/landing.csv +35 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/products.csv +162 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/react-performance.csv +45 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/astro.csv +54 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/flutter.csv +53 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/html-tailwind.csv +56 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/jetpack-compose.csv +53 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/nextjs.csv +53 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/nuxt-ui.csv +51 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/nuxtjs.csv +59 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/react-native.csv +52 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/react.csv +54 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/shadcn.csv +61 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/svelte.csv +54 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/swiftui.csv +51 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/stacks/vue.csv +50 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/styles.csv +85 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/typography.csv +74 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/ui-reasoning.csv +162 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/ux-guidelines.csv +100 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/data/web-interface.csv +31 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/scripts/core.py +262 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/scripts/design_system.py +1148 -0
- package/skills/frontend-ui-ux/references/ui-ux-db/scripts/search.py +114 -0
- package/skills/frontend-ui-ux/references/visual-language.md +84 -0
- package/skills/frontend-ui-ux/references/visual-reconstruction.md +87 -0
- package/skills/frontend-ui-ux/schemas/design-contract-v1alpha1.json +570 -0
- package/skills/frontend-ui-ux/schemas/design-contract-v1beta1.json +32 -0
- package/skills/frontend-ui-ux/schemas/design-contract-v1beta2.json +34 -0
- package/skills/frontend-ui-ux/scripts/bounded-json.mjs +45 -0
- package/skills/frontend-ui-ux/scripts/canonical-json.mjs +26 -0
- package/skills/frontend-ui-ux/scripts/contract-error.mjs +15 -0
- package/skills/frontend-ui-ux/scripts/csv.mjs +64 -0
- package/skills/frontend-ui-ux/scripts/dataset.mjs +65 -0
- package/skills/frontend-ui-ux/scripts/design-contract.mjs +609 -0
- package/skills/frontend-ui-ux/scripts/import-design-intelligence.mjs +193 -0
- package/skills/frontend-ui-ux/scripts/retrieval.mjs +92 -0
- package/skills/frontend-ui-ux/scripts/stable-file-read.mjs +237 -0
- package/skills/frontend-ui-ux/scripts/stdin-json.mjs +16 -0
- package/skills/frontend-ui-ux/scripts/strict-json.mjs +102 -0
- package/skills/frontend-ui-ux/scripts/uiux.mjs +86 -0
- package/skills/frontend-ui-ux/scripts/verify-canonical-corpus.mjs +266 -0
- package/skills/lit-burnoff/SKILL.md +227 -0
- package/skills/lit-burnoff-file/SKILL.md +175 -0
- package/skills/lit-code/SKILL.md +266 -0
- package/skills/lit-code/references/README.md +18 -0
- package/skills/lit-code/references/go/README.md +12 -0
- package/skills/lit-code/references/go/concurrency.md +42 -0
- package/skills/lit-code/references/go/error-handling.md +47 -0
- package/skills/lit-code/references/go/testing.md +55 -0
- package/skills/lit-code/references/go/tooling.md +35 -0
- package/skills/lit-code/references/go/type-patterns.md +50 -0
- package/skills/lit-code/references/python/README.md +12 -0
- package/skills/lit-code/references/python/async.md +50 -0
- package/skills/lit-code/references/python/error-handling.md +44 -0
- package/skills/lit-code/references/python/testing.md +50 -0
- package/skills/lit-code/references/python/tooling.md +38 -0
- package/skills/lit-code/references/python/type-patterns.md +46 -0
- package/skills/lit-code/references/rust/README.md +12 -0
- package/skills/lit-code/references/rust/concurrency.md +45 -0
- package/skills/lit-code/references/rust/error-handling.md +43 -0
- package/skills/lit-code/references/rust/tooling.md +36 -0
- package/skills/lit-code/references/rust/type-patterns.md +46 -0
- package/skills/lit-code/references/rust/unsafe.md +47 -0
- package/skills/lit-code/references/typescript/README.md +11 -0
- package/skills/lit-code/references/typescript/error-handling.md +56 -0
- package/skills/lit-code/references/typescript/testing.md +42 -0
- package/skills/lit-code/references/typescript/tsconfig-strict.md +40 -0
- package/skills/lit-code/references/typescript/type-patterns.md +60 -0
- package/skills/lit-commit/SKILL.md +222 -0
- package/skills/lit-comprehend/SKILL.md +278 -0
- package/skills/lit-comprehend/assets/explainer-scaffold.html +104 -0
- package/skills/lit-comprehend/references/artifact-template.md +114 -0
- package/skills/lit-comprehend/references/micro-worlds.md +115 -0
- package/skills/lit-comprehend/scripts/verify-explainer.ts +339 -0
- package/skills/lit-crucible/SKILL.md +212 -0
- package/skills/lit-fetch/SKILL.md +242 -0
- package/skills/lit-handoff/SKILL.md +199 -0
- package/skills/lit-init/SKILL.md +214 -0
- package/skills/lit-korean/SKILL.md +231 -0
- package/skills/lit-plan/SKILL.md +351 -0
- package/skills/lit-plan/scripts/scaffold-plan.mjs +275 -0
- package/skills/lit-recap/SKILL.md +233 -0
- package/skills/lit-scientific-visualization/SKILL.md +175 -0
- package/skills/litresearch/SKILL.md +436 -0
- package/skills/litwork/SKILL.md +227 -0
- package/skills/lsp/SKILL.md +186 -0
- package/skills/lsp-setup/SKILL.md +187 -0
- package/skills/lsp-setup/references/README.md +40 -0
- package/skills/lsp-setup/references/bash.md +31 -0
- package/skills/lsp-setup/references/c-cpp.md +43 -0
- package/skills/lsp-setup/references/csharp.md +29 -0
- package/skills/lsp-setup/references/dart.md +25 -0
- package/skills/lsp-setup/references/elixir.md +30 -0
- package/skills/lsp-setup/references/go.md +33 -0
- package/skills/lsp-setup/references/haskell.md +27 -0
- package/skills/lsp-setup/references/java.md +28 -0
- package/skills/lsp-setup/references/julia.md +28 -0
- package/skills/lsp-setup/references/kotlin.md +25 -0
- package/skills/lsp-setup/references/lua.md +26 -0
- package/skills/lsp-setup/references/php.md +30 -0
- package/skills/lsp-setup/references/python.md +33 -0
- package/skills/lsp-setup/references/ruby.md +34 -0
- package/skills/lsp-setup/references/rust.md +34 -0
- package/skills/lsp-setup/references/swift.md +26 -0
- package/skills/lsp-setup/references/terraform.md +26 -0
- package/skills/lsp-setup/references/typescript.md +35 -0
- package/skills/lsp-setup/references/yaml.md +27 -0
- package/skills/lsp-setup/references/zig.md +28 -0
- package/skills/managed-skill-manifest.json +1386 -0
- package/skills/native-goal-verdict/SKILL.md +216 -0
- package/skills/refactor/SKILL.md +221 -0
- package/skills/reference-benchmark-claims/SKILL.md +204 -0
- package/skills/release-guardrails/SKILL.md +245 -0
- package/skills/review-work/SKILL.md +301 -0
- package/skills/rules/SKILL.md +196 -0
- package/skills/search-workflow-ideas/SKILL.md +223 -0
- package/skills/skill-observer/SKILL.md +148 -0
- package/skills/skill-observer/references/review-contract.md +95 -0
- package/skills/skill-rename-aliases.json +10 -0
- package/skills/start-work/SKILL.md +334 -0
- package/skills/structural-search/SKILL.md +234 -0
- package/skills/tool-guards/SKILL.md +223 -0
- package/skills/visual-qa/SKILL.md +61 -0
- package/skills/visual-qa/references/capture-playbook.md +105 -0
- package/skills/visual-qa/references/complete-contract.md +411 -0
- package/skills/visual-qa/schemas/evidence-manifest-v1alpha1.json +201 -0
- package/skills/visual-qa/schemas/evidence-manifest-v1beta1.json +141 -0
- package/skills/visual-qa/schemas/review-receipt-v1alpha1.json +113 -0
- package/skills/visual-qa/scripts/artifact.mjs +123 -0
- package/skills/visual-qa/scripts/bounded-json.mjs +47 -0
- package/skills/visual-qa/scripts/canonical-json.mjs +28 -0
- package/skills/visual-qa/scripts/capabilities.mjs +66 -0
- package/skills/visual-qa/scripts/contract-text.mjs +15 -0
- package/skills/visual-qa/scripts/design-contract.mjs +611 -0
- package/skills/visual-qa/scripts/evidence-evaluate.mjs +521 -0
- package/skills/visual-qa/scripts/evidence.mjs +271 -0
- package/skills/visual-qa/scripts/png-decode.mjs +146 -0
- package/skills/visual-qa/scripts/png.mjs +154 -0
- package/skills/visual-qa/scripts/review.mjs +188 -0
- package/skills/visual-qa/scripts/stdin-json.mjs +16 -0
- package/skills/visual-qa/scripts/strict-json.mjs +102 -0
- package/skills/visual-qa/scripts/tui.mjs +149 -0
- package/skills/visual-qa/scripts/visual-qa.mjs +90 -0
- package/skills/wikify/LICENSE +21 -0
- package/skills/wikify/PROVENANCE.md +18 -0
- package/skills/wikify/SKILL.md +176 -0
- package/skills/wikify/assets/home-template.md +44 -0
- package/skills/wikify/assets/maintenance-report-template.md +46 -0
- package/skills/wikify/assets/paper-source-note-template.md +137 -0
- package/skills/wikify/assets/source-note-template.md +45 -0
- package/skills/wikify/assets/wiki-rules-template.md +117 -0
- package/skills/wikify/modes/ingest.md +57 -0
- package/skills/wikify/modes/init.md +44 -0
- package/skills/wikify/modes/lint.md +60 -0
- package/skills/wikify/modes/query.md +38 -0
- package/skills/wikify/modes/save.md +45 -0
- package/skills/wikify/references-upstream-contract.md +758 -0
- package/skills/workflow-loop/SKILL.md +387 -0
- package/tools/check-pack-payload.mjs +410 -0
- package/tools/check-payload-substance.mjs +738 -0
- package/tools/check-version-lockstep.mjs +238 -0
- package/tools/gen-canonical-frontend-manifest.mjs +66 -0
- package/tools/gen-managed-skill-manifest.mjs +135 -0
- package/tools/harness-speed-local.mjs +261 -0
- package/tools/payload-reference-exemptions.json +49 -0
- package/tools/payload-substance-allowlist.json +46 -0
- package/tools/payload-substance-parity.json +571 -0
- package/tools/qa-real-surface-fixtures.mjs +428 -0
- package/tools/qa-real-surface-harness.mjs +173 -0
- package/tools/run-behavior-replacement-probes.mjs +296 -0
- package/tools/run-build.mjs +101 -0
- package/tools/run-harness-speed-local.mjs +52 -0
- package/tools/run-harness-speed-v2.mjs +36 -0
- package/tools/run-installed-resource-tamper-probe.mjs +62 -0
- package/tools/run-negative-gate-matrix.mjs +516 -0
- package/tools/run-rules-glob-differential.mjs +232 -0
- package/tools/run-typecheck.mjs +25 -0
- package/tools/run-uiux-visual-qa-scenarios.mjs +234 -0
- package/tools/run-wikify-surface-probe.mjs +170 -0
- package/tools/scan-legacy-tokens.mjs +431 -0
- package/tools/version-manifests.json +60 -0
- package/tsconfig.build.json +12 -0
- package/tsconfig.json +13 -0
- package/vendor/NOTICE.md +21 -0
- package/vendor/handoff/SKILL.md +199 -0
- package/vendor/handoff/evals/evals.json +154 -0
- package/vendor/handoff/examples/HANDOFF-example-generic-auth-refactor.md +97 -0
- package/vendor/handoff/templates/HANDOFF.md +121 -0
- package/vendor/licenses/022_handoff-MIT.txt +21 -0
- package/vendor/licenses/045_scientific-visualization-MIT.txt +21 -0
- package/vendor/provenance/022_handoff.md +19 -0
- package/vendor/provenance/045_scientific-visualization.md +36 -0
- package/vendor/scientific-visualization/SKILL.md +283 -0
- package/vendor/scientific-visualization/assets/color_palettes.py +197 -0
- package/vendor/scientific-visualization/assets/nature.mplstyle +75 -0
- package/vendor/scientific-visualization/assets/presentation.mplstyle +74 -0
- package/vendor/scientific-visualization/assets/publication.mplstyle +78 -0
- package/vendor/scientific-visualization/evals/evals.json +158 -0
- package/vendor/scientific-visualization/references/color_palettes.md +380 -0
- package/vendor/scientific-visualization/references/journal_requirements.md +359 -0
- package/vendor/scientific-visualization/references/matplotlib_examples.md +608 -0
- package/vendor/scientific-visualization/references/mdanalysis_martini_visualization.md +85 -0
- package/vendor/scientific-visualization/references/publication_guidelines.md +217 -0
- package/vendor/scientific-visualization/references/seaborn_for_publications.md +293 -0
- package/vendor/scientific-visualization/scripts/figure_export.py +238 -0
- package/vendor/scientific-visualization/scripts/style_presets.py +467 -0
- package/vendor/scientific-visualization/tests/test_figure_export.py +51 -0
- package/vendor/scientific-visualization/tests/test_style_presets.py +114 -0
|
@@ -0,0 +1,444 @@
|
|
|
1
|
+
# LitOpenCode workflow reference
|
|
2
|
+
|
|
3
|
+
[Quick start](../README.md) · [한국어](reference-Ko-KR.md)
|
|
4
|
+
|
|
5
|
+
*Workflow discipline in one view: a plan earns approval only with binary checks, and a slice closes only after the real surface, evidence, and cleanup are complete. Tests alone do not close the slice.*
|
|
6
|
+
|
|
7
|
+
```mermaid
|
|
8
|
+
flowchart TD
|
|
9
|
+
R["a request<br/>make it better"] --> DI["<b>deep-interview</b><br/>turn it into a decision-complete brief"]
|
|
10
|
+
DI --> P["<b>lit-plan</b><br/>objective · non-goals<br/>action / output / <b>binary verification</b>"]
|
|
11
|
+
P --> GATE{"user approves?"}
|
|
12
|
+
GATE -->|no| P
|
|
13
|
+
GATE -->|yes| SW["<b>start-work</b><br/>execute one slice"]
|
|
14
|
+
|
|
15
|
+
subgraph LOOP["each slice: RED to GREEN to SURFACE to CLEAN"]
|
|
16
|
+
SW --> RED["failing test first"]
|
|
17
|
+
RED --> GREEN["smallest change that passes"]
|
|
18
|
+
GREEN --> SURF["exercise the <b>real surface</b><br/>not just the test"]
|
|
19
|
+
SURF --> CLEAN["tear down · cleanup receipt"]
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
CLEAN --> EV{"evidence complete?"}
|
|
23
|
+
EV -->|"tests only"| SW
|
|
24
|
+
EV -->|"artifact + receipt"| RW["<b>review-work</b><br/>scope · evidence · payload<br/>security · real surface"]
|
|
25
|
+
RW -->|findings| SW
|
|
26
|
+
RW -->|clean| HO["<b>lit-handoff</b><br/>resumable packet"]
|
|
27
|
+
|
|
28
|
+
style GATE fill:#fff3cd,stroke:#856404
|
|
29
|
+
style EV fill:#fff3cd,stroke:#856404
|
|
30
|
+
style SURF fill:#d4edda,stroke:#155724
|
|
31
|
+
style RW fill:#d1ecf1,stroke:#0c5460
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Install
|
|
35
|
+
|
|
36
|
+
The command uses an explicit npm package and the preserved executable:
|
|
37
|
+
|
|
38
|
+
The scoped package is the npm install target. See [package migration](migration.md#scoped-npm-package-migration).
|
|
39
|
+
|
|
40
|
+
```sh
|
|
41
|
+
npm exec --package @litfamily/litopencode@latest -- litopencode install
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Preview the config changes without writing them, or inspect an installed setup:
|
|
45
|
+
|
|
46
|
+
```sh
|
|
47
|
+
npm exec --package @litfamily/litopencode@latest -- litopencode install --dry-run
|
|
48
|
+
npm exec --package @litfamily/litopencode@latest -- litopencode doctor
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
The installer registers the plugin through OpenCode's plugin installer. It creates
|
|
52
|
+
`~/.config/opencode/litopencode.json` only when that route file is missing. Existing
|
|
53
|
+
routes remain user-owned. The default OpenCode config is
|
|
54
|
+
`~/.config/opencode/opencode.jsonc`, or `$XDG_CONFIG_HOME/opencode/opencode.jsonc`
|
|
55
|
+
when `XDG_CONFIG_HOME` is set.
|
|
56
|
+
|
|
57
|
+
*OpenCode provides the event surfaces; LitOpenCode turns them into bounded routes and guards, then records the durable ledger. This is the host connection behind the commands above.*
|
|
58
|
+
|
|
59
|
+
```mermaid
|
|
60
|
+
flowchart LR
|
|
61
|
+
subgraph OC["OpenCode"]
|
|
62
|
+
E1["chat.message"]; E2["command.execute.before"]
|
|
63
|
+
E3["tool.execute.before"]; E4["tool.execute.after"]; E5["event"]
|
|
64
|
+
end
|
|
65
|
+
subgraph LO["LitOpenCode plugin"]
|
|
66
|
+
RT["TypeScript runtime<br/>routing · bounded authority"]
|
|
67
|
+
GUARD["tool guards"]
|
|
68
|
+
LEDGER[("durable ledger")]
|
|
69
|
+
end
|
|
70
|
+
E1 --> RT; E2 --> RT; E3 --> GUARD; E4 --> GUARD; E5 --> RT
|
|
71
|
+
RT --> LEDGER; GUARD --> LEDGER
|
|
72
|
+
LO --> S["41 skills"]
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Optional permission and model choices are explicit:
|
|
76
|
+
|
|
77
|
+
```sh
|
|
78
|
+
npm exec --package @litfamily/litopencode@latest -- litopencode install --permission-prompt
|
|
79
|
+
npm exec --package @litfamily/litopencode@latest -- litopencode install --permission-mode balanced
|
|
80
|
+
npm exec --package @litfamily/litopencode@latest -- litopencode install --yolo
|
|
81
|
+
npm exec --package @litfamily/litopencode@latest -- litopencode install --provider openai --model gpt-6-astra --effort xhigh
|
|
82
|
+
npm exec --package @litfamily/litopencode@latest -- litopencode install --provider openai --model gpt-5.6-luna --effort max
|
|
83
|
+
npm exec --package @litfamily/litopencode@latest -- litopencode install --provider xai --model grok-4.6 --effort xhigh
|
|
84
|
+
npm exec --package @litfamily/litopencode@latest -- litopencode install --model-prompt
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
The interactive picker (`--model-prompt`, or a fresh TTY install) asks for a provider
|
|
88
|
+
(OpenAI GPT-6 Astra / GPT-5.6 family or xAI Grok), a LEAD model for the planning/review categories, and a
|
|
89
|
+
HELPER model for the execution/research categories; the helper may use a different provider.
|
|
90
|
+
OpenAI rows are gpt-6-astra · xhigh (low, medium, high, xhigh, or max), gpt-5.6-sol · xhigh,
|
|
91
|
+
gpt-5.6-luna · max, gpt-5.6 · high, and gpt-5.6-terra · xhigh; xai rows are the
|
|
92
|
+
reasoning-capable Grok models from the host catalog, `grok-4.6` first.
|
|
93
|
+
`--subagent-model <provider/id>` and `--subagent-effort <e>` set the helper route from flags.
|
|
94
|
+
Legacy OpenAI `<id>-fast` aliases remain accepted and policy-checked as their base ids;
|
|
95
|
+
`gpt-6-astra-fast` is not invented or accepted. Choosing Grok
|
|
96
|
+
without an xAI credential prints a warning naming `XAI_API_KEY` and still writes the route.
|
|
97
|
+
Existing non-default routes are preserved by default (`--no-model-prompt` and `--yes` also
|
|
98
|
+
preserve); `--model-prompt` rewrites managed keys only.
|
|
99
|
+
|
|
100
|
+
`install --yes` skips every picker and keeps the saved output style. CI and non-TTY
|
|
101
|
+
installs skip automatic prompts; explicit prompt flags still work. `NO_COLOR` keeps
|
|
102
|
+
interactive style selection available without color or cursor escapes. Dumb terminals
|
|
103
|
+
and non-UTF-8 locales use the plain `LIT` wordmark without ANSI decoration.
|
|
104
|
+
|
|
105
|
+
The OpenCode config hook routes the lead categories and `lit-loop` to
|
|
106
|
+
`openai/gpt-6-astra` with native `reasoningEffort` (fresh/reset default `xhigh`).
|
|
107
|
+
Execution and research helpers retain `openai/gpt-5.6-luna`/`max` unless a helper route is
|
|
108
|
+
explicitly selected. The hook registers only missing native Astra model metadata
|
|
109
|
+
(`reasoning`, no `temperature`, and tool calls); existing provider/model fields and host
|
|
110
|
+
agent overrides are preserved. `momus` and `litwork-reviewer` are never force-overwritten.
|
|
111
|
+
LUNA plus `xhigh` is rejected, while Astra accepts all five supported efforts.
|
|
112
|
+
|
|
113
|
+
The default is safe/ask-first behavior. `balanced` and `yolo` are opt-in. A global
|
|
114
|
+
installation is also supported:
|
|
115
|
+
|
|
116
|
+
```sh
|
|
117
|
+
npm install -g @litfamily/litopencode
|
|
118
|
+
litopencode install
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## First use
|
|
122
|
+
|
|
123
|
+
Restart OpenCode after installation and press Tab. The visible agent switcher should contain:
|
|
124
|
+
|
|
125
|
+
| Agent | Use it for |
|
|
126
|
+
| --- | --- |
|
|
127
|
+
| `lit-loop` | Implement, verify, delegate safely, and record durable progress. |
|
|
128
|
+
| `lit-plan` | Produce an evidence-backed plan. `edit`, `bash`, and `task` stay denied. |
|
|
129
|
+
| `lit-implement` | Execute an approved plan after `/start-work`. |
|
|
130
|
+
|
|
131
|
+
The normal workflow is:
|
|
132
|
+
|
|
133
|
+
1. Ask `lit-plan` for one bounded, verifiable plan.
|
|
134
|
+
2. Approve it, then run `/start-work`.
|
|
135
|
+
3. Run `/review-work` before making a completion claim.
|
|
136
|
+
|
|
137
|
+
The OpenCode-native workflow contract keeps practical delivery discipline: plans are
|
|
138
|
+
objective-achievable, use adaptive detail, and allow maximum safe subagent delegation.
|
|
139
|
+
`lit-plan` waits for explicit user confirmation; `/start-work` is an execution-only handoff
|
|
140
|
+
for an approved plan; `/review-work` checks the `DoneClaim` through a five-lane review.
|
|
141
|
+
|
|
142
|
+
## Core commands
|
|
143
|
+
|
|
144
|
+
| Route | Purpose |
|
|
145
|
+
| --- | --- |
|
|
146
|
+
| `/lit` | Start the normal `lit-loop` workflow. |
|
|
147
|
+
| `/litwork` | Enter the bounded work loop. |
|
|
148
|
+
| `/lit-plan` | Create a read-only implementation plan. |
|
|
149
|
+
| `/start-work` | Execute an approved plan through `lit-implement`. |
|
|
150
|
+
| `/review-work` | Review a draft plan or completed work. |
|
|
151
|
+
| `/litresearch` or `/lit-research` | Run evidence-backed research with a sequential fallback. |
|
|
152
|
+
| `/lit-handoff` | Create a resumable handoff; exact bare `handoff` also routes here. |
|
|
153
|
+
| `/lit-recap` | Read a concise recap from local ledger and session context. |
|
|
154
|
+
| `/lit-scientific-visualization` | Use the packaged scientific-visualization workflow. |
|
|
155
|
+
| `/lit-korean` | Review prose for natural phrasing without changing meaning. |
|
|
156
|
+
| `/text-neutralization` | Review prose with the neutralization contract. |
|
|
157
|
+
|
|
158
|
+
Additional static routes include `/refactor`, `/lit-burnoff`, `/lit-code`,
|
|
159
|
+
`/debugging`, `/lit-commit`, `/lsp`, `/lsp-setup`, `/rules`, `/deep-interview`,
|
|
160
|
+
`/structural-search`, the `/autoresearch` and `/autoconference` families, and the
|
|
161
|
+
`/wikify-*` routes. The Autoresearch, Autoconference, and Wikify families add guidance or
|
|
162
|
+
bounded local behavior; they do not silently grant new host authority. Frontend UI/UX also
|
|
163
|
+
ships a canonical frontend library for its offline, read-only design references.
|
|
164
|
+
|
|
165
|
+
The renamed routes are `/lit-crucible`, `/lit-init`, `/lit-commit`, `/lit-burnoff`,
|
|
166
|
+
`/lit-burnoff-file`, `/lit-korean`, `/lit-fetch`, and `/lit-code`. Previous names remain
|
|
167
|
+
compatibility redirects for one release and print one deprecation note. Install/update
|
|
168
|
+
removes installer-owned old skill directories after verifying their replacements; user-owned
|
|
169
|
+
files are preserved. See [migration notes](migration.md#skill-id-renames).
|
|
170
|
+
|
|
171
|
+
### Durable loop state
|
|
172
|
+
|
|
173
|
+
LitOpenCode owns durable goal state under `.litopencode/litgoal/lit-loop/`. The append-only
|
|
174
|
+
ledger records progress and evidence. The CLI can inspect and update that ledger:
|
|
175
|
+
|
|
176
|
+
```sh
|
|
177
|
+
litopencode status
|
|
178
|
+
litopencode create-goals --session-id <id> --objective <text>
|
|
179
|
+
litopencode record-evidence --criterion-id <id> --kind <red|green|scenario|cleanup|note> --ref <ref>
|
|
180
|
+
litopencode checkpoint --summary <text>
|
|
181
|
+
litopencode complete-goals
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
`/start-work init|resume|cancel|complete|status <schema-3 JSON>` is the bounded-authority
|
|
185
|
+
surface for approved execution. Resume requires the trusted user route and matching work,
|
|
186
|
+
session, revision, and grant; copied or quoted text is inert.
|
|
187
|
+
|
|
188
|
+
Native goal verdict: the OpenCode host surface does not currently expose a native goal primitive;
|
|
189
|
+
LitOpenCode uses `.litopencode/litgoal` instead. Static skills are installed under
|
|
190
|
+
`skills/*/SKILL.md` and remain documentation unless a documented OpenCode route selects them.
|
|
191
|
+
|
|
192
|
+
## Skill learning loop
|
|
193
|
+
|
|
194
|
+
Skill Observer can turn bounded observations and a per-session tool-iteration reminder into
|
|
195
|
+
pending skill proposals. The hook only updates project-local counters and surfaces a notice; it
|
|
196
|
+
does not call a model or edit a skill. Review remains a foreground user action:
|
|
197
|
+
|
|
198
|
+
```sh
|
|
199
|
+
litopencode skill-loop review
|
|
200
|
+
litopencode skill-loop propose <proposal.json>
|
|
201
|
+
litopencode skill-loop list
|
|
202
|
+
litopencode skill-loop apply <proposal-id>
|
|
203
|
+
litopencode skill-loop reject <proposal-id>
|
|
204
|
+
litopencode skill-loop rollback <ledger-id>
|
|
205
|
+
litopencode skill-curator status
|
|
206
|
+
litopencode skill-curator run
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
Nothing is applied without the explicit `skill-loop apply` command; shipped configuration keeps
|
|
210
|
+
`autoApply: false`. New skills are written only to the OpenCode user skill root —
|
|
211
|
+
`$XDG_CONFIG_HOME/opencode/skills/<name>/`, or `~/.config/opencode/skills/<name>/` when XDG is
|
|
212
|
+
unset — with the distinct `metadata.litopencodeAgentGenerated: "true"` marker. Shipped,
|
|
213
|
+
installer-managed, unmarked, and unsafe targets are refused.
|
|
214
|
+
|
|
215
|
+
`skill-loop review` runs in an empty temporary home/config directory with tools and permissions
|
|
216
|
+
denied, on the configured `review` category route (provider, model, and effort from
|
|
217
|
+
`litopencode.json`) so a Grok-configured install never needs an OpenAI token. Set
|
|
218
|
+
`LITOPENCODE_REVIEW_HOST` only to an absolute OpenCode launcher you intend LitOpenCode
|
|
219
|
+
to pin and execute. If a host-native credential is already available as a narrow environment
|
|
220
|
+
variable, opt in by naming it with `LITOPENCODE_REVIEW_CREDENTIAL_ENV=NAME[,NAME...]`; when that
|
|
221
|
+
descriptor is unset, the configured review provider's own variable (for example `XAI_API_KEY`)
|
|
222
|
+
is forwarded if present. OAuth-only hosts can opt in with `LITOPENCODE_REVIEW_AUTH=host`, which
|
|
223
|
+
copies exactly the configured review provider's entry from the OpenCode auth store into the
|
|
224
|
+
isolated child — nothing else. Help probes remain credential-free, and credential values are
|
|
225
|
+
never placed in arguments, prompts, logs, or evidence.
|
|
226
|
+
|
|
227
|
+
The learning loop's review, user-skill mutation, rollback, and curator boundaries currently support
|
|
228
|
+
POSIX hosts (including macOS and Linux). On Windows those global/model boundaries fail closed with
|
|
229
|
+
`WINDOWS_SKILL_LOOP_UNSUPPORTED` pending native handle and ACL support. Project-local listing and
|
|
230
|
+
proposal intake remain available; this limitation does not affect install, doctor, or other passive
|
|
231
|
+
LitOpenCode surfaces.
|
|
232
|
+
|
|
233
|
+
Each successful mutation records content-addressed before/after state in the project-local
|
|
234
|
+
`.litopencode/skill-ledger.jsonl`; rollback first verifies that current bytes still match the
|
|
235
|
+
recorded after-image. The shipped config records a seven-day curator interval and a two-hour idle
|
|
236
|
+
window for callers, but this release starts no background scheduler. A user-invoked
|
|
237
|
+
`skill-curator run` marks eligible active entries stale after 30 days and moves already-stale
|
|
238
|
+
entries to a recoverable archive after 90 days. Pinned entries are skipped, and archive transitions
|
|
239
|
+
preserve bytes rather than deleting them.
|
|
240
|
+
|
|
241
|
+
## Runtime Skills
|
|
242
|
+
|
|
243
|
+
*What matters at install time is the packed payload, not a source-tree listing: every declared skill must resolve its own references before it can be trusted on a fresh machine.*
|
|
244
|
+
|
|
245
|
+
```mermaid
|
|
246
|
+
flowchart LR
|
|
247
|
+
SK["a skill"] --> Q{"does it declare<br/>a capability?"}
|
|
248
|
+
Q -->|"self-contained<br/>procedure"| AL["explicit allowlist entry<br/>with a written reason"]
|
|
249
|
+
Q -->|"needs a corpus"| C["corpus must resolve<br/>inside the <b>packed payload</b>"]
|
|
250
|
+
AL --> G1
|
|
251
|
+
C --> G1["<b>payload-substance</b>"]
|
|
252
|
+
G1 --> G2["<b>cross-product parity</b><br/>one product cannot ship a stub<br/>where the family ships substance"]
|
|
253
|
+
G2 --> G3["<b>referenced-path resolution</b><br/>every path in a SKILL.md<br/>must exist in the tarball"]
|
|
254
|
+
G3 --> OK["installs and works<br/>on a machine that has<br/>nothing else"]
|
|
255
|
+
style C fill:#d4edda,stroke:#155724
|
|
256
|
+
style OK fill:#d4edda,stroke:#155724
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
<details>
|
|
260
|
+
<summary>Static skills available for native discovery</summary>
|
|
261
|
+
|
|
262
|
+
- <code>agent-roster</code>
|
|
263
|
+
- <code>lit-burnoff-file</code>
|
|
264
|
+
- <code>autoconference</code>
|
|
265
|
+
- <code>autoresearch</code>
|
|
266
|
+
- <code>browser-drive</code>
|
|
267
|
+
- <code>comment-checker</code>
|
|
268
|
+
- <code>debugging</code>
|
|
269
|
+
- <code>deep-interview</code>
|
|
270
|
+
- <code>doctor-installer</code>
|
|
271
|
+
- <code>durable-litgoal</code>
|
|
272
|
+
- <code>frontend-ui-ux</code>
|
|
273
|
+
- <code>lit-commit</code>
|
|
274
|
+
- <code>lit-crucible</code>
|
|
275
|
+
- <code>lit-init</code>
|
|
276
|
+
- <code>lit-comprehend</code>
|
|
277
|
+
- <code>lit-handoff</code>
|
|
278
|
+
- <code>lit-plan</code>
|
|
279
|
+
- <code>lit-recap</code>
|
|
280
|
+
- <code>lit-scientific-visualization</code>
|
|
281
|
+
- <code>litresearch</code>
|
|
282
|
+
- <code>litwork</code>
|
|
283
|
+
- <code>lsp</code>
|
|
284
|
+
- <code>lsp-setup</code>
|
|
285
|
+
- <code>native-goal-verdict</code>
|
|
286
|
+
- <code>lit-code</code>
|
|
287
|
+
- <code>lit-fetch</code>
|
|
288
|
+
- <code>refactor</code>
|
|
289
|
+
- <code>reference-benchmark-claims</code>
|
|
290
|
+
- <code>release-guardrails</code>
|
|
291
|
+
- <code>lit-burnoff</code>
|
|
292
|
+
- <code>review-work</code>
|
|
293
|
+
- <code>rules</code>
|
|
294
|
+
- <code>search-workflow-ideas</code>
|
|
295
|
+
- <code>skill-observer</code>
|
|
296
|
+
- <code>start-work</code>
|
|
297
|
+
- <code>structural-search</code>
|
|
298
|
+
- <code>lit-korean</code>
|
|
299
|
+
- <code>tool-guards</code>
|
|
300
|
+
- <code>visual-qa</code>
|
|
301
|
+
- <code>wikify</code>
|
|
302
|
+
- <code>workflow-loop</code>
|
|
303
|
+
|
|
304
|
+
</details>
|
|
305
|
+
|
|
306
|
+
### UI and Visual QA managed helpers
|
|
307
|
+
|
|
308
|
+
The `frontend-ui-ux` and `visual-qa` routes use Node ESM helpers and bounded,
|
|
309
|
+
read-only evidence. They do not add workflow-family scaffold or status helpers.
|
|
310
|
+
|
|
311
|
+
### Managed workflow families
|
|
312
|
+
|
|
313
|
+
Autoresearch and Autoconference provide the scaffold/status helpers for their
|
|
314
|
+
bounded local workflows. Wikify owns templates and contracts, but provides no scaffold or status
|
|
315
|
+
helper. Wikify probe checks five surfaces: `tool.execute.after`,
|
|
316
|
+
`chat.message`, `command.execute.before`, and the remaining host hook surfaces
|
|
317
|
+
listed in the Wikify contract. Wikify additionally owns one bounded `wikify`
|
|
318
|
+
tool on `tool.execute.after`; it does not expose Autoresearch or Autoconference
|
|
319
|
+
tools.
|
|
320
|
+
|
|
321
|
+
## Release Readiness
|
|
322
|
+
|
|
323
|
+
Use [`release-checklist.md`](release-checklist.md) for maintainer-only
|
|
324
|
+
release gates; this README documents the current installed behavior.
|
|
325
|
+
|
|
326
|
+
## Verify
|
|
327
|
+
|
|
328
|
+
From a LitOpenCode checkout, run the focused package and source gates:
|
|
329
|
+
|
|
330
|
+
```sh
|
|
331
|
+
npm install
|
|
332
|
+
npm run build
|
|
333
|
+
npm test
|
|
334
|
+
npm run typecheck
|
|
335
|
+
npm run check:managed-skill-manifest
|
|
336
|
+
npm run scan:legacy-tokens
|
|
337
|
+
npm run check:version
|
|
338
|
+
npm run check:pack-payload
|
|
339
|
+
npm run qa:real-surface
|
|
340
|
+
npm pack --dry-run --json --ignore-scripts
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
The no-write local probes are:
|
|
344
|
+
|
|
345
|
+
```sh
|
|
346
|
+
node bin/litopencode.cjs doctor --root .
|
|
347
|
+
node bin/litopencode.cjs install --dry-run --root .
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
`doctor` reports package, route, command, skill, and local-state health without writing.
|
|
351
|
+
The pack check proves that the compiled plugin, CLI, types, public skills, README, and
|
|
352
|
+
required docs are present while local state and source-only files stay out of the payload.
|
|
353
|
+
These checks are reproducible from a checkout.
|
|
354
|
+
|
|
355
|
+
## Remove
|
|
356
|
+
|
|
357
|
+
There is no `uninstall` subcommand. For a global install, remove the npm binary first:
|
|
358
|
+
|
|
359
|
+
```sh
|
|
360
|
+
npm uninstall -g @litfamily/litopencode
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
Then remove the `@litfamily/litopencode` or `@litfamily/litopencode@<version>` entry from the `plugin` array in
|
|
364
|
+
OpenCode's managed `opencode.jsonc` (or the custom root's `opencode.json`). Remove
|
|
365
|
+
`~/.config/opencode/litopencode.json` only when you no longer need its user-owned routes.
|
|
366
|
+
Project `.litopencode/` state is separate; preserve it for later resume or remove it only
|
|
367
|
+
when discarding that project's ledger and receipts is intentional.
|
|
368
|
+
|
|
369
|
+
## Safety and updates
|
|
370
|
+
|
|
371
|
+
- `lit-plan` remains planning-only: its `edit`, `bash`, and `task` permissions stay denied.
|
|
372
|
+
- `balanced` and `yolo` are opt-in permission modes. Dangerous shell patterns remain on ask in
|
|
373
|
+
balanced mode; YOLO allows the configured OpenCode tools, but it does not weaken the planner's
|
|
374
|
+
deny guard or allow recursive subagent delegation.
|
|
375
|
+
- Packaged startup and successful interactive `install`/`doctor` commands use a bounded,
|
|
376
|
+
exact-version foreground update barrier. Disable it with `--no-auto-update` or
|
|
377
|
+
`LITOPENCODE_NO_AUTO_UPDATE=1`. The cache-only notice can also be disabled with
|
|
378
|
+
`NO_UPDATE_NOTIFIER=1` or `LITOPENCODE_NO_UPDATE_CHECK=1`.
|
|
379
|
+
- Public-source retrieval uses SSRF checks, redirect validation, byte limits, and access
|
|
380
|
+
verdicts. Fetched text is treated as data, not as instructions.
|
|
381
|
+
|
|
382
|
+
- repository rules engine with two lanes:
|
|
383
|
+
The static lane has a final encoded per-rule limit of 12,000 characters; static total remains 40,000.
|
|
384
|
+
The dynamic lane has a final encoded per-rule limit of 4,000 characters; its total limit of 10,000 characters.
|
|
385
|
+
Both retain complete rule fragments, XML entities, and code points.
|
|
386
|
+
Metadata-only overflow emits a bounded digest/omission rule fragment.
|
|
387
|
+
- session-scoped rule delivery deduplicates matching content and stays bounded after compaction.
|
|
388
|
+
|
|
389
|
+
## Package surface
|
|
390
|
+
|
|
391
|
+
- Package and plugin id: `litopencode`
|
|
392
|
+
- CLI binary: `litopencode`
|
|
393
|
+
- Public exports: `litopencode` and `litopencode/server`
|
|
394
|
+
- Global route file: `~/.config/opencode/litopencode.json`
|
|
395
|
+
- Project overrides: `.litopencode/config.json`
|
|
396
|
+
- Durable state: `.litopencode/litgoal/`
|
|
397
|
+
- User state root: `~/.litopencode/`
|
|
398
|
+
|
|
399
|
+
## Documentation
|
|
400
|
+
|
|
401
|
+
- [Quick start](../README.md)
|
|
402
|
+
- [한국어 상세 안내](reference-Ko-KR.md)
|
|
403
|
+
- [Changelog](../CHANGELOG.md)
|
|
404
|
+
- [Migration notes](migration.md)
|
|
405
|
+
- [Terminal mark and activation probes](lit-mark.md)
|
|
406
|
+
- [Maintainer release checklist](release-checklist.md)
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
## Installed canonical skill assets
|
|
410
|
+
|
|
411
|
+
`lit-handoff` and `lit-scientific-visualization` install their exact authored source
|
|
412
|
+
inside `skills/<id>/canonical/` below the selected OpenCode config root. Read the
|
|
413
|
+
native skill's `SKILL.md` first and resolve its `exact_source_root` from that file's
|
|
414
|
+
directory. Slash and bare-route prompts use the same native skill location; the
|
|
415
|
+
project directory and command directory are not reference roots. A packed install
|
|
416
|
+
carries the full source closure and does not require the developer's checkout.
|
|
417
|
+
|
|
418
|
+
Doctor checks the installed file inventory and hashes as well as package source.
|
|
419
|
+
Missing Python or matplotlib is a separate `DEGRADED` capability result; missing
|
|
420
|
+
installed skill files are an integrity error. Neither check installs dependencies.
|
|
421
|
+
|
|
422
|
+
Repeat installation preserves an unmarked user-owned skill. For a managed wrapper,
|
|
423
|
+
the new canonical subtree must match its exact packaged files and hashes before
|
|
424
|
+
replacement; modified, foreign, missing, or symlinked content there causes refusal.
|
|
425
|
+
Back up your changes outside the managed tree before retrying. A previous flat
|
|
426
|
+
managed wrapper without this subtree can gain the missing assets. Existing generated
|
|
427
|
+
wrapper and distribution files remain installer-managed and can be replaced; this
|
|
428
|
+
is not a promise to preserve edits to every generated file.
|
|
429
|
+
|
|
430
|
+
|
|
431
|
+
Ordinary Python imports may create `__pycache__` files inside the scientific skill.
|
|
432
|
+
Doctor lists eligible paths in `canonicalCacheFiles`; it checks that each regular
|
|
433
|
+
CPython/PyPy tagged `.pyc` (including optimized tags) maps to an unchanged owned `.py`
|
|
434
|
+
source. It does not load or trust the bytecode contents. Other extras, missing or
|
|
435
|
+
modified sources, and symlinked files/directories still fail integrity checks.
|
|
436
|
+
|
|
437
|
+
On a cache-bearing repeat install, the previous whole skill tree is retained under
|
|
438
|
+
`<config-root>/.litopencode-canonical-backups/<unique-id>/skill`, outside native skill
|
|
439
|
+
discovery. `prepared.json` records the planned move; `receipt.json` records completed
|
|
440
|
+
retention and each cache SHA-256. A fresh canonical copy becomes active, so the retained
|
|
441
|
+
bytecode cannot override its source. Cacheless repeat and migration from a flat wrapper
|
|
442
|
+
need no retained backup. If replacement or safe rollback fails, preserve the reported
|
|
443
|
+
recovery paths and inspect them; do not assume installation succeeded. These checks
|
|
444
|
+
cover ordinary use and detected path changes, not hostile concurrent filesystem mutation.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
<!-- Principle-adapted from the English version, not translated. Do not re-translate. -->
|
|
2
|
+
|
|
3
|
+
설명, 요약, 사용자에게 주는 지시는 모두 쉬운 기술 문장체로 쓰십시오. 코드, 코드 주석, 파일 내용,
|
|
4
|
+
인용문에는 이 규칙을 적용하지 마십시오. 그것들은 각자의 규칙을 따릅니다.
|
|
5
|
+
|
|
6
|
+
## 문장 구성
|
|
7
|
+
|
|
8
|
+
- 한 문장에 한 가지 생각만 담으십시오. 관계없는 내용을 "그리고"나 "그런데"로 잇지 마십시오.
|
|
9
|
+
- 문장을 짧게 쓰십시오. 설명문은 40자 안팎, 지시문은 30자 안팎을 넘기지 마십시오.
|
|
10
|
+
- 능동태를 쓰십시오. 행동의 주체를 밝히십시오.
|
|
11
|
+
- "마이그레이션 스크립트를 실행하십시오."라고 쓰십시오. "마이그레이션 스크립트가 실행되어야
|
|
12
|
+
합니다."라고 쓰지 마십시오.
|
|
13
|
+
- 시제는 단순하게 쓰십시오.
|
|
14
|
+
- 사실이나 일반 원리는 현재형: "이 함수는 null을 반환합니다."
|
|
15
|
+
- 끝난 일은 과거형: "빌드가 실패했습니다."
|
|
16
|
+
- 앞으로 일어날 일은 미래형: "이 테스트는 실패할 것입니다."
|
|
17
|
+
- "~하고 있었습니다", "~해 왔습니다" 같은 복잡한 시제는 피하십시오.
|
|
18
|
+
- 긴 명사 나열을 피하십시오. 조사로 끊어 쓰십시오.
|
|
19
|
+
- "연결 풀의 타임아웃 값"이라고 쓰십시오. "연결 풀 타임아웃 값"처럼 명사를 겹쳐 쓰지 마십시오.
|
|
20
|
+
|
|
21
|
+
## 어휘
|
|
22
|
+
|
|
23
|
+
- 한 단어에 한 뜻만 쓰십시오. 같은 개념을 한 답변 안에서 다른 말로 바꿔 쓰지 마십시오. ("삭제"면
|
|
24
|
+
"삭제"로 끝까지 쓰고, "제거"와 섞지 마십시오.)
|
|
25
|
+
- 전문 용어, 관용구, 비유적 표현을 피하십시오. 있는 그대로 말하십시오.
|
|
26
|
+
- 전문 용어는 처음 쓸 때 쉬운 말로 뜻을 설명하십시오.
|
|
27
|
+
- 어렵고 추상적인 말보다 쉽고 구체적인 말을 쓰십시오.
|
|
28
|
+
|
|
29
|
+
## 지시와 절차
|
|
30
|
+
|
|
31
|
+
- 지시는 번호가 붙은 단계로, 명령형·현재형으로 쓰십시오.
|
|
32
|
+
- 한 단계에 한 가지 행동만 넣으십시오. 여러 행동은 단계를 나누십시오.
|
|
33
|
+
- 조건을 행동보다 먼저 쓰십시오. "파일이 있으면 삭제하십시오."라고 쓰십시오. "파일을 삭제하십시오,
|
|
34
|
+
있다면."이라고 쓰지 마십시오.
|
|
35
|
+
- 위험하거나 주의가 필요한 단계 앞에는 `경고:`, `주의:`, `참고:`를 명확히 표시하십시오.
|
|
36
|
+
|
|
37
|
+
## 구조
|
|
38
|
+
|
|
39
|
+
- 빽빽한 글보다 짧은 문단, 번호 목록, 글머리표를 쓰십시오.
|
|
40
|
+
- 핵심을 먼저 말하고, 세부 내용을 뒤에 쓰십시오.
|
|
41
|
+
- 위 규칙과 간결함이 부딪히면, 명확하고 오해 없는 뜻을 선택하십시오.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
Write all prose output in ASD-STE100 Simplified Technical English (STE). This applies to
|
|
2
|
+
explanations, summaries, and instructions you give the user — not to code, code comments, file
|
|
3
|
+
contents, or quoted material, which follow their own conventions.
|
|
4
|
+
|
|
5
|
+
## Sentence construction
|
|
6
|
+
|
|
7
|
+
- One idea per sentence. Do not join unrelated ideas with "and" or "which."
|
|
8
|
+
- Keep sentences short: 20 words or fewer for descriptive sentences, 15-20 words for instructions.
|
|
9
|
+
- Use active voice. Name the agent that does the action.
|
|
10
|
+
- Write "Run the migration script." not "The migration script should be run."
|
|
11
|
+
- Use simple verb tenses only:
|
|
12
|
+
- Simple present for facts and general truths ("The function returns null.")
|
|
13
|
+
- Simple past for completed actions ("The build failed.")
|
|
14
|
+
- Simple future for future events ("The test will fail.")
|
|
15
|
+
- Avoid continuous, perfect, and perfect-continuous tenses ("has been running," "will have completed").
|
|
16
|
+
- Always use articles ("a," "an," "the"). Do not drop them for brevity.
|
|
17
|
+
- Limit noun clusters to 3 nouns in a row. Break up long noun strings with prepositions.
|
|
18
|
+
- Write "the timeout value for the connection pool" not "the connection pool timeout value."
|
|
19
|
+
- Avoid "-ing" forms as nouns or adjectives where a plain verb form exists.
|
|
20
|
+
- Write "to configure the server" not "for configuring the server."
|
|
21
|
+
|
|
22
|
+
## Vocabulary
|
|
23
|
+
|
|
24
|
+
- One word, one meaning. Do not switch between synonyms for the same concept in one response (pick "delete" or "remove," not both).
|
|
25
|
+
- Avoid jargon, idioms, and figurative language. State things literally.
|
|
26
|
+
- Define a technical term the first time you use it, in simple terms.
|
|
27
|
+
- Prefer common, concrete words over abstract or formal ones.
|
|
28
|
+
|
|
29
|
+
## Instructions and procedures
|
|
30
|
+
|
|
31
|
+
- Write instructions as numbered steps, in imperative mood, present tense.
|
|
32
|
+
- One action per step. Split compound actions into separate steps.
|
|
33
|
+
- Put a step's condition before its action: "If the file exists, delete it." not "Delete the file if it exists."
|
|
34
|
+
- Flag risk or required attention with an explicit label before the relevant step: `WARNING:`, `CAUTION:`, or `NOTE:`.
|
|
35
|
+
|
|
36
|
+
## Structure
|
|
37
|
+
|
|
38
|
+
- Prefer short paragraphs, numbered steps, and bullet lists over dense prose.
|
|
39
|
+
- State the main point first, then supporting detail.
|
|
40
|
+
- If a rule above conflicts with brevity, choose clarity and unambiguous meaning.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!-- Principle-adapted from the English version, not translated. Do not re-translate. -->
|
|
2
|
+
|
|
3
|
+
오늘 하루가 길었고 머리가 지쳤어요. 다섯 살짜리한테 설명하듯 말해주세요.
|
|
4
|
+
|
|
5
|
+
짧은 단어, 짧은 문장, 짧은 문단을 쓰세요. 어려운 단어를 써야 한다면 바로 뒤에 쉽게 풀어서
|
|
6
|
+
설명하세요. 정말 필요한 내용만 답하세요.
|
|
7
|
+
|
|
8
|
+
무엇을 했는지, 잘 됐는지, 다음에 뭘 해야 하는지만 말해주세요.
|
|
9
|
+
|
|
10
|
+
제가 뭔가 결정해야 한다면: 선택지는 최대 2개, 빠르게 고르는 데 필요한 맥락만, 그리고 당신이라면
|
|
11
|
+
어떤 걸 고를지도 알려주세요.
|
|
12
|
+
|
|
13
|
+
경로와 명령어는 정확하게 그대로 써주세요. 그 외의 것까지 신경 쓸 여유가 없어요.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
It's been a long day and my brain is fried, talk to me like I'm 5.
|
|
2
|
+
|
|
3
|
+
Small words, short sentences, short paragraphs. If you have to use
|
|
4
|
+
a big word, explain it right after. Only return what's actually necessary.
|
|
5
|
+
|
|
6
|
+
Just tell me what you did, did it work, what do I do now.
|
|
7
|
+
|
|
8
|
+
If I have to decide something: 2 options max, the context I need to pick fast,
|
|
9
|
+
and which one you'd go with.
|
|
10
|
+
|
|
11
|
+
Keep paths and commands exact. I have no brain cells left for the rest.
|
package/package.json
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@litfamily/litopencode",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "LitOpenCode OpenCode plugin bootstrap package.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "git+https://github.com/wjgoarxiv/litopencode.git"
|
|
9
|
+
},
|
|
10
|
+
"homepage": "https://github.com/wjgoarxiv/litopencode#readme",
|
|
11
|
+
"author": "LitOpenCode contributors",
|
|
12
|
+
"type": "module",
|
|
13
|
+
"bin": {
|
|
14
|
+
"litopencode": "bin/litopencode.cjs"
|
|
15
|
+
},
|
|
16
|
+
"types": "./dist/index.d.ts",
|
|
17
|
+
"exports": {
|
|
18
|
+
".": {
|
|
19
|
+
"types": "./dist/index.d.ts",
|
|
20
|
+
"import": "./dist/index.js"
|
|
21
|
+
},
|
|
22
|
+
"./server": {
|
|
23
|
+
"types": "./dist/server.d.ts",
|
|
24
|
+
"import": "./dist/server.js"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"scripts": {
|
|
28
|
+
"build": "node tools/run-build.mjs",
|
|
29
|
+
"check:pack-payload": "npm run build && npm pack --dry-run --json --ignore-scripts | node tools/check-pack-payload.mjs --stdin",
|
|
30
|
+
"check:version": "node tools/check-version-lockstep.mjs",
|
|
31
|
+
"check:managed-skill-manifest": "node tools/gen-managed-skill-manifest.mjs --check",
|
|
32
|
+
"gen:managed-skill-manifest": "node tools/gen-managed-skill-manifest.mjs",
|
|
33
|
+
"prepack": "npm run build",
|
|
34
|
+
"pretest": "npm run build",
|
|
35
|
+
"qa:behavior-replacement": "node tools/run-behavior-replacement-probes.mjs",
|
|
36
|
+
"qa:installed-resource-tamper": "node tools/run-installed-resource-tamper-probe.mjs",
|
|
37
|
+
"qa:negative-gate-matrix": "node tools/run-negative-gate-matrix.mjs",
|
|
38
|
+
"qa:rules-glob-differential": "node tools/run-rules-glob-differential.mjs --check",
|
|
39
|
+
"qa:real-surface": "npm run build && node tools/run-negative-gate-matrix.mjs && node tools/run-installed-resource-tamper-probe.mjs && node tools/run-behavior-replacement-probes.mjs && node tools/run-wikify-surface-probe.mjs",
|
|
40
|
+
"scan:legacy-tokens": "node tools/scan-legacy-tokens.mjs",
|
|
41
|
+
"test": "node --test --test-concurrency=4 \"test/*.test.mjs\"",
|
|
42
|
+
"test:stress": "node --test test/performance/evidence-ledger-stress.test.mjs",
|
|
43
|
+
"typecheck": "node tools/run-typecheck.mjs"
|
|
44
|
+
},
|
|
45
|
+
"dependencies": {
|
|
46
|
+
"@opencode-ai/plugin": "^1.17.6",
|
|
47
|
+
"yaml": "^2.9.0"
|
|
48
|
+
},
|
|
49
|
+
"devDependencies": {
|
|
50
|
+
"@types/node": "^24.12.2",
|
|
51
|
+
"picomatch": "^4.0.5",
|
|
52
|
+
"typescript": "^5.9.3"
|
|
53
|
+
},
|
|
54
|
+
"publishConfig": {
|
|
55
|
+
"access": "public"
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": "litfamily.harness-speed-scenario/v1",
|
|
3
|
+
"scenario_id": "litfamily-speed-lit-activation-v1",
|
|
4
|
+
"encoding": "UTF-8",
|
|
5
|
+
"prompt_trailing_newline": false,
|
|
6
|
+
"records": [
|
|
7
|
+
{
|
|
8
|
+
"id": "B0",
|
|
9
|
+
"measured": false,
|
|
10
|
+
"prompt": "Reply with exactly this ASCII token and nothing else: LIT_SPEED_B0_OK",
|
|
11
|
+
"prompt_bytes": 69,
|
|
12
|
+
"prompt_sha256": "a5f634868cc6e20375f60803dcbe850eeb3d2709d6bb2c0efee204b9b5534904",
|
|
13
|
+
"sentinel": "LIT_SPEED_B0_OK",
|
|
14
|
+
"sentinel_bytes": 15,
|
|
15
|
+
"sentinel_sha256": "7652e386a8825b8459833ec8aa7d19fa6a55bf82652f63f45cc4ae29bcfee17b"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"id": "S1",
|
|
19
|
+
"measured": true,
|
|
20
|
+
"prompt": "lit\nReply with exactly this ASCII token and nothing else: LIT_SPEED_S1_OK",
|
|
21
|
+
"prompt_bytes": 73,
|
|
22
|
+
"prompt_sha256": "a52e0ec9444cc2195c1c8dbb638862251f1f07df0512c505d06b43d44d4a4e78",
|
|
23
|
+
"sentinel": "LIT_SPEED_S1_OK",
|
|
24
|
+
"sentinel_bytes": 15,
|
|
25
|
+
"sentinel_sha256": "8a655cd5ccd93b2727d641b5ca444e0f72bc09016115b7b6b16aa29e8457414a"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"id": "S2",
|
|
29
|
+
"measured": true,
|
|
30
|
+
"prompt": "Continue the active workflow. Reply with exactly this ASCII token and nothing else: LIT_SPEED_S2_OK",
|
|
31
|
+
"prompt_bytes": 99,
|
|
32
|
+
"prompt_sha256": "7b6712f5542798968a74a56241689f40475d50851d5a4d80f877d9a2589983a0",
|
|
33
|
+
"sentinel": "LIT_SPEED_S2_OK",
|
|
34
|
+
"sentinel_bytes": 15,
|
|
35
|
+
"sentinel_sha256": "482d6b2f6dc3a90d5feb4aef7615f715ef2ffbceea5e5ffde90f070175c22dc8"
|
|
36
|
+
}
|
|
37
|
+
]
|
|
38
|
+
}
|