novahiz 0.2.2 → 0.2.5
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/NOTICE.md +25 -15
- package/README.md +353 -355
- package/adapters/README.md +1 -1
- package/adapters/opencode/agent/novahiz.md +1 -2
- package/adapters/opencode/commands/novahiz-init.md +10 -0
- package/adapters/opencode/instructions.md +1 -1
- package/adapters/opencode/novahiz.ts +182 -4
- package/bin/novahiz.cmd +2 -2
- package/catalog/categories.json +1085 -1093
- package/catalog/overrides.json +12 -13
- package/catalog/providers.json +18 -34
- package/catalog/rules.json +15 -22
- package/docs/ARCHITECTURE.md +2 -2
- package/docs/CATALOG.md +7 -6
- package/docs/CONFIGURATION.md +5 -5
- package/docs/CONSTITUTION.md +4 -4
- package/docs/GATE.md +7 -11
- package/docs/HARNESSES.md +11 -0
- package/docs/INSTALL.md +7 -5
- package/docs/PLUGIN.md +24 -6
- package/docs/PROVIDERS.md +12 -10
- package/docs/ROADMAPS.md +4 -3
- package/docs/RULES.md +11 -10
- package/install/bootstrap.mjs +9 -19
- package/install/install.mjs +23 -41
- package/mcp/novahiz-tools/index.mjs +35 -6
- package/novahiz.config.example.json +1 -5
- package/package.json +6 -7
- package/skills/apple-ui-audit/SKILL.md +95 -0
- package/skills/apple-ui-audit/references/screen-walkthrough.md +29 -0
- package/skills/browser-session/SKILL.md +61 -0
- package/skills/browser-session/references/session-run-sheet.md +30 -0
- package/skills/browser-session/scripts/browser_session_preflight.mjs +74 -0
- package/skills/browser-session/scripts/sample-run.json +5 -0
- package/skills/code-standards/SKILL.md +85 -0
- package/skills/code-standards/references/pr-review-worksheet.md +35 -0
- package/skills/design-token-pipeline/SKILL.md +85 -0
- package/skills/design-token-pipeline/references/dtcg-sample.json +37 -0
- package/skills/llm-threat-review/SKILL.md +99 -0
- package/skills/llm-threat-review/references/review-worksheet.md +34 -0
- package/skills/llm-threat-review/scripts/llm_risk_lint.mjs +105 -0
- package/skills/novahiz-audit/SKILL.md +1 -1
- package/skills/novahiz-gate/SKILL.md +7 -6
- package/skills/novahiz-humanizer/SKILL.md +1 -1
- package/skills/novahiz-implement/SKILL.md +1 -1
- package/skills/novahiz-init/SKILL.md +112 -0
- package/skills/novahiz-planner/SKILL.md +1 -2
- package/skills/openapi-mcp-server/SKILL.md +76 -0
- package/skills/openapi-mcp-server/references/mcp-ship-checklist.md +30 -0
- package/skills/openapi-mcp-server/references/tool-worksheet.md +30 -0
- package/skills/openapi-mcp-server/scripts/openapi_mcp_lint.mjs +133 -0
- package/skills/package-risk-audit/SKILL.md +83 -0
- package/skills/package-risk-audit/references/intake-worksheet.md +19 -0
- package/skills/package-risk-audit/scripts/dep_risk_lint.mjs +131 -0
- package/skills/secrets-hygiene/SKILL.md +62 -0
- package/skills/secrets-hygiene/references/rotation-playbook.md +27 -0
- package/skills/secrets-hygiene/scripts/secret_scan.mjs +120 -0
- package/skills/skill-authoring/SKILL.md +93 -0
- package/skills/skill-authoring/references/skill-template.md +59 -0
- package/skills/skill-authoring/scripts/skill_frontmatter_lint.mjs +65 -0
- package/skills/skill-eval-loop/SKILL.md +103 -0
- package/skills/skill-eval-loop/references/negative-patterns.md +12 -0
- package/skills/skill-eval-loop/references/run-sheet.md +40 -0
- package/skills/skill-eval-loop/scripts/skill_structure_check.mjs +100 -0
- package/skills/ui-craft-rules/SKILL.md +96 -0
- package/skills/ui-slop-remover/SKILL.md +110 -0
- package/skills/ui-slop-remover/references/tell-catalogue.md +58 -0
- package/skills/ui-slop-remover/scripts/slop_lint.mjs +119 -0
- package/src/autodocs.ts +192 -0
- package/src/cli.ts +8 -1
- package/src/commands/autodocs.ts +250 -0
- package/src/commands/doctor.ts +226 -217
- package/src/commands/gate.ts +16 -5
- package/src/commands/init.ts +356 -0
- package/src/commands/task.ts +20 -7
- package/src/gate.ts +401 -401
- package/src/ledger.ts +39 -0
- package/src/targets.ts +43 -7
- package/bundled-skills/ab-testing/SKILL.md +0 -353
- package/bundled-skills/ab-testing/evals/evals.json +0 -105
- package/bundled-skills/ab-testing/references/sample-size-guide.md +0 -263
- package/bundled-skills/ab-testing/references/test-templates.md +0 -277
- package/bundled-skills/ad-creative/SKILL.md +0 -425
- package/bundled-skills/ad-creative/assets/creative-review-template.html +0 -400
- package/bundled-skills/ad-creative/evals/evals.json +0 -217
- package/bundled-skills/ad-creative/references/creative-review-page.md +0 -106
- package/bundled-skills/ad-creative/references/creative-roadmap.md +0 -118
- package/bundled-skills/ad-creative/references/generative-tools.md +0 -637
- package/bundled-skills/ad-creative/references/hook-system.md +0 -115
- package/bundled-skills/ad-creative/references/imessage-video-ads.md +0 -201
- package/bundled-skills/ad-creative/references/meta-creative-formats.md +0 -114
- package/bundled-skills/ad-creative/references/motion-video-ads.md +0 -126
- package/bundled-skills/ad-creative/references/platform-specs.md +0 -213
- package/bundled-skills/ad-creative/references/short-form-video-specs.md +0 -213
- package/bundled-skills/ad-creative/references/static-ad-templates.md +0 -308
- package/bundled-skills/ads/SKILL.md +0 -499
- package/bundled-skills/ads/evals/evals.json +0 -157
- package/bundled-skills/ads/references/abm-playbook.md +0 -93
- package/bundled-skills/ads/references/ad-copy-templates.md +0 -207
- package/bundled-skills/ads/references/audience-targeting.md +0 -243
- package/bundled-skills/ads/references/audit-guardrails.md +0 -83
- package/bundled-skills/ads/references/b2b-paid-playbook.md +0 -115
- package/bundled-skills/ads/references/conversion-tracking.md +0 -361
- package/bundled-skills/ads/references/creative-research-automation.md +0 -103
- package/bundled-skills/ads/references/google-ads-audit-checklist.md +0 -84
- package/bundled-skills/ads/references/google-search-playbook.md +0 -120
- package/bundled-skills/ads/references/linkedin-b2b-playbook.md +0 -107
- package/bundled-skills/ads/references/meta-decision-system.md +0 -176
- package/bundled-skills/ads/references/payback-period.md +0 -69
- package/bundled-skills/ads/references/platform-setup-checklists.md +0 -277
- package/bundled-skills/ads/references/rsa-output-spec.md +0 -88
- package/bundled-skills/agent-device/SKILL.md +0 -20
- package/bundled-skills/ai-seo/SKILL.md +0 -488
- package/bundled-skills/ai-seo/evals/evals.json +0 -135
- package/bundled-skills/ai-seo/references/agent-readiness.md +0 -57
- package/bundled-skills/ai-seo/references/citations-vs-recommendations.md +0 -85
- package/bundled-skills/ai-seo/references/content-patterns.md +0 -287
- package/bundled-skills/ai-seo/references/content-types.md +0 -71
- package/bundled-skills/ai-seo/references/format-volatility.md +0 -98
- package/bundled-skills/ai-seo/references/okf.md +0 -104
- package/bundled-skills/ai-seo/references/platform-ranking-factors.md +0 -154
- package/bundled-skills/ai-seo/references/youtube-ai-citations.md +0 -60
- package/bundled-skills/analytics/SKILL.md +0 -310
- package/bundled-skills/analytics/evals/evals.json +0 -90
- package/bundled-skills/analytics/references/event-library.md +0 -260
- package/bundled-skills/analytics/references/ga4-implementation.md +0 -300
- package/bundled-skills/analytics/references/gtm-implementation.md +0 -390
- package/bundled-skills/android-emulator/SKILL.md +0 -32
- package/bundled-skills/android-reverse-engineering/LICENSE +0 -190
- package/bundled-skills/android-reverse-engineering/SKILL.md +0 -313
- package/bundled-skills/android-reverse-engineering/references/api-extraction-patterns.md +0 -197
- package/bundled-skills/android-reverse-engineering/references/call-flow-analysis.md +0 -210
- package/bundled-skills/android-reverse-engineering/references/fernflower-usage.md +0 -115
- package/bundled-skills/android-reverse-engineering/references/jadx-usage.md +0 -116
- package/bundled-skills/android-reverse-engineering/references/kotlin-name-recovery.md +0 -108
- package/bundled-skills/android-reverse-engineering/references/setup-guide.md +0 -221
- package/bundled-skills/android-reverse-engineering/references/third_party_hosts.txt +0 -122
- package/bundled-skills/android-reverse-engineering/scripts/check-deps.ps1 +0 -165
- package/bundled-skills/android-reverse-engineering/scripts/check-deps.sh +0 -129
- package/bundled-skills/android-reverse-engineering/scripts/decompile.ps1 +0 -400
- package/bundled-skills/android-reverse-engineering/scripts/decompile.sh +0 -578
- package/bundled-skills/android-reverse-engineering/scripts/find-api-calls.ps1 +0 -121
- package/bundled-skills/android-reverse-engineering/scripts/find-api-calls.sh +0 -339
- package/bundled-skills/android-reverse-engineering/scripts/fingerprint.sh +0 -241
- package/bundled-skills/android-reverse-engineering/scripts/install-dep.ps1 +0 -345
- package/bundled-skills/android-reverse-engineering/scripts/install-dep.sh +0 -448
- package/bundled-skills/android-reverse-engineering/scripts/lookup-name.sh +0 -85
- package/bundled-skills/android-reverse-engineering/scripts/recover-kotlin-names.sh +0 -140
- package/bundled-skills/build-graph/SKILL.md +0 -38
- package/bundled-skills/claude-history-ingest/SKILL.md +0 -463
- package/bundled-skills/claude-history-ingest/references/claude-data-format.md +0 -118
- package/bundled-skills/codex-history-ingest/SKILL.md +0 -248
- package/bundled-skills/codex-history-ingest/references/codex-data-format.md +0 -82
- package/bundled-skills/cold-email/SKILL.md +0 -159
- package/bundled-skills/cold-email/evals/evals.json +0 -94
- package/bundled-skills/cold-email/references/benchmarks.md +0 -83
- package/bundled-skills/cold-email/references/follow-up-sequences.md +0 -81
- package/bundled-skills/cold-email/references/frameworks.md +0 -90
- package/bundled-skills/cold-email/references/personalization.md +0 -79
- package/bundled-skills/cold-email/references/subject-lines.md +0 -53
- package/bundled-skills/competitor-profiling/SKILL.md +0 -415
- package/bundled-skills/competitor-profiling/evals/evals.json +0 -85
- package/bundled-skills/competitor-profiling/references/templates.md +0 -167
- package/bundled-skills/competitor-profiling/references/tool-reference.md +0 -179
- package/bundled-skills/computer-use/SKILL.md +0 -41
- package/bundled-skills/content-strategy/SKILL.md +0 -439
- package/bundled-skills/content-strategy/evals/evals.json +0 -116
- package/bundled-skills/content-strategy/references/content-distribution.md +0 -83
- package/bundled-skills/content-strategy/references/headless-cms.md +0 -194
- package/bundled-skills/copilot-history-ingest/SKILL.md +0 -376
- package/bundled-skills/copilot-history-ingest/references/copilot-data-format.md +0 -321
- package/bundled-skills/copy-editing/SKILL.md +0 -457
- package/bundled-skills/copy-editing/evals/evals.json +0 -89
- package/bundled-skills/copy-editing/references/checklist.md +0 -66
- package/bundled-skills/copy-editing/references/content-refresh.md +0 -38
- package/bundled-skills/copy-editing/references/plain-english-alternatives.md +0 -394
- package/bundled-skills/copywriting/SKILL.md +0 -256
- package/bundled-skills/copywriting/evals/evals.json +0 -126
- package/bundled-skills/copywriting/references/copy-frameworks.md +0 -433
- package/bundled-skills/copywriting/references/natural-transitions.md +0 -272
- package/bundled-skills/cro/SKILL.md +0 -187
- package/bundled-skills/cro/evals/evals.json +0 -111
- package/bundled-skills/cro/references/experiments.md +0 -248
- package/bundled-skills/cro/references/form.md +0 -422
- package/bundled-skills/cross-linker/SKILL.md +0 -309
- package/bundled-skills/customer-research/SKILL.md +0 -305
- package/bundled-skills/customer-research/evals/evals.json +0 -176
- package/bundled-skills/customer-research/references/interviews-and-surveys.md +0 -155
- package/bundled-skills/customer-research/references/source-guides.md +0 -401
- package/bundled-skills/daily-update/SKILL.md +0 -223
- package/bundled-skills/dart-add-unit-test/SKILL.md +0 -122
- package/bundled-skills/dart-build-cli-app/SKILL.md +0 -185
- package/bundled-skills/dart-collect-coverage/SKILL.md +0 -141
- package/bundled-skills/dart-fix-runtime-errors/SKILL.md +0 -166
- package/bundled-skills/dart-generate-test-mocks/SKILL.md +0 -155
- package/bundled-skills/dart-migrate-to-checks-package/SKILL.md +0 -528
- package/bundled-skills/dart-resolve-package-conflicts/SKILL.md +0 -116
- package/bundled-skills/dart-run-static-analysis/SKILL.md +0 -104
- package/bundled-skills/dart-setup-ffi-assets/SKILL.md +0 -419
- package/bundled-skills/dart-use-doc-examples/SKILL.md +0 -96
- package/bundled-skills/dart-use-ffigen/SKILL.md +0 -218
- package/bundled-skills/dart-use-pattern-matching/SKILL.md +0 -146
- package/bundled-skills/dart-use-primary-constructors/SKILL.md +0 -262
- package/bundled-skills/dart-write-documentation/SKILL.md +0 -136
- package/bundled-skills/debug-issue/SKILL.md +0 -28
- package/bundled-skills/dogfood/SKILL.md +0 -27
- package/bundled-skills/eas-app-stores/SKILL.md +0 -176
- package/bundled-skills/eas-app-stores/agents/openai.yaml +0 -4
- package/bundled-skills/eas-app-stores/references/app-store-metadata.md +0 -497
- package/bundled-skills/eas-app-stores/references/ios-app-store.md +0 -376
- package/bundled-skills/eas-app-stores/references/native-ios.md +0 -167
- package/bundled-skills/eas-app-stores/references/play-store.md +0 -244
- package/bundled-skills/eas-app-stores/references/testflight.md +0 -62
- package/bundled-skills/eas-app-stores/references/workflows.md +0 -120
- package/bundled-skills/eas-hosting/SKILL.md +0 -431
- package/bundled-skills/eas-hosting/agents/openai.yaml +0 -4
- package/bundled-skills/eas-observe/SKILL.md +0 -54
- package/bundled-skills/eas-observe/agents/openai.yaml +0 -4
- package/bundled-skills/eas-observe/references/metrics.md +0 -98
- package/bundled-skills/eas-observe/references/queries.md +0 -403
- package/bundled-skills/eas-observe/references/setup.md +0 -476
- package/bundled-skills/eas-observe/references/third-party.md +0 -136
- package/bundled-skills/eas-simulator/SKILL.md +0 -208
- package/bundled-skills/eas-simulator/agents/openai.yaml +0 -4
- package/bundled-skills/eas-simulator/references/controllers.md +0 -106
- package/bundled-skills/eas-simulator/references/run-your-app.md +0 -224
- package/bundled-skills/eas-simulator/references/troubleshooting.md +0 -44
- package/bundled-skills/eas-update/SKILL.md +0 -146
- package/bundled-skills/eas-update/agents/openai.yaml +0 -4
- package/bundled-skills/eas-update-insights/SKILL.md +0 -238
- package/bundled-skills/eas-update-insights/agents/openai.yaml +0 -4
- package/bundled-skills/eas-update-insights/references/channel-insights-schema.md +0 -47
- package/bundled-skills/eas-update-insights/references/update-insights-schema.md +0 -69
- package/bundled-skills/eas-workflows/SKILL.md +0 -99
- package/bundled-skills/eas-workflows/agents/openai.yaml +0 -4
- package/bundled-skills/eas-workflows/scripts/fetch.js +0 -109
- package/bundled-skills/eas-workflows/scripts/package.json +0 -6
- package/bundled-skills/emails/SKILL.md +0 -311
- package/bundled-skills/emails/evals/evals.json +0 -93
- package/bundled-skills/emails/references/copy-guidelines.md +0 -113
- package/bundled-skills/emails/references/email-types.md +0 -515
- package/bundled-skills/emails/references/sequence-templates.md +0 -168
- package/bundled-skills/explore-codebase/SKILL.md +0 -29
- package/bundled-skills/expo-animation/LICENSE +0 -21
- package/bundled-skills/expo-animation/RECIPES.md +0 -385
- package/bundled-skills/expo-animation/SKILL.md +0 -267
- package/bundled-skills/expo-animation/agents/openai.yaml +0 -4
- package/bundled-skills/expo-app-clip/SKILL.md +0 -290
- package/bundled-skills/expo-app-clip/agents/openai.yaml +0 -4
- package/bundled-skills/expo-app-clip/references/native-module.md +0 -96
- package/bundled-skills/expo-brownfield/SKILL.md +0 -62
- package/bundled-skills/expo-brownfield/agents/openai.yaml +0 -4
- package/bundled-skills/expo-brownfield/references/brownfield-integrated.md +0 -526
- package/bundled-skills/expo-brownfield/references/brownfield-isolated.md +0 -451
- package/bundled-skills/expo-brownfield/references/comparison.md +0 -63
- package/bundled-skills/expo-brownfield/references/troubleshooting.md +0 -88
- package/bundled-skills/expo-data-fetching/SKILL.md +0 -478
- package/bundled-skills/expo-data-fetching/agents/openai.yaml +0 -4
- package/bundled-skills/expo-data-fetching/references/expo-router-loaders.md +0 -341
- package/bundled-skills/expo-data-fetching/references/offline-and-cancellation.md +0 -68
- package/bundled-skills/expo-design-system/SKILL.md +0 -376
- package/bundled-skills/expo-design-system/agents/openai.yaml +0 -4
- package/bundled-skills/expo-design-system/references/audit.md +0 -190
- package/bundled-skills/expo-design-system/references/native-slop.md +0 -74
- package/bundled-skills/expo-dev-client/SKILL.md +0 -182
- package/bundled-skills/expo-dev-client/agents/openai.yaml +0 -4
- package/bundled-skills/expo-dom/SKILL.md +0 -425
- package/bundled-skills/expo-dom/agents/openai.yaml +0 -4
- package/bundled-skills/expo-examples/SKILL.md +0 -106
- package/bundled-skills/expo-examples/agents/openai.yaml +0 -4
- package/bundled-skills/expo-examples/references/catalog.md +0 -105
- package/bundled-skills/expo-migrate-module/SKILL.md +0 -113
- package/bundled-skills/expo-migrate-module/agents/openai.yaml +0 -4
- package/bundled-skills/expo-migrate-module/references/compatibility.md +0 -73
- package/bundled-skills/expo-migrate-module/references/example.md +0 -212
- package/bundled-skills/expo-migrate-module/references/migration-map.md +0 -306
- package/bundled-skills/expo-module/SKILL.md +0 -151
- package/bundled-skills/expo-module/agents/openai.yaml +0 -4
- package/bundled-skills/expo-module/references/config-plugin.md +0 -90
- package/bundled-skills/expo-module/references/create-expo-module.md +0 -206
- package/bundled-skills/expo-module/references/lifecycle.md +0 -127
- package/bundled-skills/expo-module/references/module-config.md +0 -48
- package/bundled-skills/expo-module/references/native-module.md +0 -286
- package/bundled-skills/expo-module/references/native-view.md +0 -171
- package/bundled-skills/expo-native-ui/SKILL.md +0 -201
- package/bundled-skills/expo-native-ui/agents/openai.yaml +0 -4
- package/bundled-skills/expo-native-ui/references/controls.md +0 -231
- package/bundled-skills/expo-native-ui/references/gradients.md +0 -106
- package/bundled-skills/expo-native-ui/references/icons.md +0 -232
- package/bundled-skills/expo-native-ui/references/media.md +0 -193
- package/bundled-skills/expo-native-ui/references/storage.md +0 -121
- package/bundled-skills/expo-native-ui/references/visual-effects.md +0 -198
- package/bundled-skills/expo-native-ui/references/webgpu-three.md +0 -605
- package/bundled-skills/expo-overview/SKILL.md +0 -115
- package/bundled-skills/expo-overview/agents/openai.yaml +0 -4
- package/bundled-skills/expo-project-structure/SKILL.md +0 -114
- package/bundled-skills/expo-project-structure/agents/openai.yaml +0 -4
- package/bundled-skills/expo-router/SKILL.md +0 -240
- package/bundled-skills/expo-router/agents/openai.yaml +0 -4
- package/bundled-skills/expo-router/references/form-sheet.md +0 -253
- package/bundled-skills/expo-router/references/route-structure.md +0 -229
- package/bundled-skills/expo-router/references/search.md +0 -248
- package/bundled-skills/expo-router/references/tabs.md +0 -433
- package/bundled-skills/expo-router/references/toolbar-and-headers.md +0 -284
- package/bundled-skills/expo-router/references/zoom-transitions.md +0 -158
- package/bundled-skills/expo-skill-eval/SKILL.md +0 -314
- package/bundled-skills/expo-skill-eval/agents/visual-grader.md +0 -52
- package/bundled-skills/expo-skill-eval/references/design-rubric.md +0 -45
- package/bundled-skills/expo-skill-eval/references/runtime-matrix.md +0 -34
- package/bundled-skills/expo-skill-eval/scripts/check-static.sh +0 -64
- package/bundled-skills/expo-skill-eval/scripts/clean-fixture.sh +0 -56
- package/bundled-skills/expo-skill-eval/scripts/generate_viewer.py +0 -450
- package/bundled-skills/expo-skill-eval/scripts/latest-sdk.sh +0 -46
- package/bundled-skills/expo-skill-eval/scripts/make-fixture.sh +0 -95
- package/bundled-skills/expo-skill-eval/scripts/make-workspace.sh +0 -31
- package/bundled-skills/expo-skill-eval/scripts/snapshot-android.sh +0 -284
- package/bundled-skills/expo-skill-eval/scripts/snapshot-ios.sh +0 -132
- package/bundled-skills/expo-skill-eval/scripts/snapshot-web.sh +0 -61
- package/bundled-skills/expo-skill-feedback/SKILL.md +0 -87
- package/bundled-skills/expo-skill-feedback/agents/openai.yaml +0 -4
- package/bundled-skills/expo-skill-feedback/scripts/skill-event.cjs +0 -180
- package/bundled-skills/expo-skill-feedback/scripts/telemetry.cjs +0 -65
- package/bundled-skills/expo-skill-feedback/scripts/telemetry_common.cjs +0 -171
- package/bundled-skills/expo-ui/SKILL.md +0 -101
- package/bundled-skills/expo-ui/agents/openai.yaml +0 -4
- package/bundled-skills/expo-ui/references/drop-in-replacements.md +0 -27
- package/bundled-skills/expo-ui/references/jetpack-compose.md +0 -73
- package/bundled-skills/expo-ui/references/swift-ui.md +0 -73
- package/bundled-skills/expo-ui/references/universal.md +0 -104
- package/bundled-skills/expo-ui/scripts/list-components.js +0 -193
- package/bundled-skills/expo-upgrade/SKILL.md +0 -150
- package/bundled-skills/expo-upgrade/agents/openai.yaml +0 -4
- package/bundled-skills/expo-upgrade/references/expo-av-to-audio.md +0 -132
- package/bundled-skills/expo-upgrade/references/expo-av-to-video.md +0 -160
- package/bundled-skills/expo-upgrade/references/native-tabs.md +0 -124
- package/bundled-skills/expo-upgrade/references/new-architecture.md +0 -79
- package/bundled-skills/expo-upgrade/references/react-19.md +0 -79
- package/bundled-skills/expo-upgrade/references/react-compiler.md +0 -59
- package/bundled-skills/expo-upgrade/references/react-navigation-to-expo-router.md +0 -61
- package/bundled-skills/expo-web-to-native/SKILL.md +0 -91
- package/bundled-skills/expo-web-to-native/agents/openai.yaml +0 -4
- package/bundled-skills/expo-web-to-native/references/false-friends.md +0 -119
- package/bundled-skills/expo-web-to-native/references/native-patterns.md +0 -39
- package/bundled-skills/expo-web-to-native/references/run-as-goal.md +0 -48
- package/bundled-skills/expo-web-to-native/references/verify-on-device.md +0 -45
- package/bundled-skills/find-skills/SKILL.md +0 -141
- package/bundled-skills/flutter-add-integration-test/SKILL.md +0 -163
- package/bundled-skills/flutter-add-widget-preview/SKILL.md +0 -145
- package/bundled-skills/flutter-add-widget-test/SKILL.md +0 -154
- package/bundled-skills/flutter-apply-architecture-best-practices/SKILL.md +0 -162
- package/bundled-skills/flutter-build-responsive-layout/SKILL.md +0 -139
- package/bundled-skills/flutter-fix-layout-issues/SKILL.md +0 -130
- package/bundled-skills/flutter-implement-json-serialization/SKILL.md +0 -153
- package/bundled-skills/flutter-setup-declarative-routing/SKILL.md +0 -255
- package/bundled-skills/flutter-setup-localization/SKILL.md +0 -210
- package/bundled-skills/flutter-use-http-package/SKILL.md +0 -174
- package/bundled-skills/graph-colorize/SKILL.md +0 -180
- package/bundled-skills/hermes-history-ingest/SKILL.md +0 -239
- package/bundled-skills/hermes-history-ingest/references/hermes-data-format.md +0 -131
- package/bundled-skills/impl-validator/SKILL.md +0 -118
- package/bundled-skills/ios-simulator/SKILL.md +0 -32
- package/bundled-skills/json-canvas/SKILL.md +0 -244
- package/bundled-skills/json-canvas/references/EXAMPLES.md +0 -329
- package/bundled-skills/launch/SKILL.md +0 -381
- package/bundled-skills/launch/evals/evals.json +0 -106
- package/bundled-skills/llm-wiki/SKILL.md +0 -661
- package/bundled-skills/llm-wiki/references/WRITING.md +0 -28
- package/bundled-skills/llm-wiki/references/karpathy-pattern.md +0 -45
- package/bundled-skills/marketing-plan/SKILL.md +0 -300
- package/bundled-skills/marketing-plan/evals/evals.json +0 -112
- package/bundled-skills/marketing-plan/references/aarrr-framework.md +0 -180
- package/bundled-skills/marketing-plan/references/budget-planning.md +0 -168
- package/bundled-skills/marketing-plan/references/client-types.md +0 -373
- package/bundled-skills/marketing-plan/references/current-state-rubric.md +0 -255
- package/bundled-skills/marketing-plan/references/example-quietude.md +0 -972
- package/bundled-skills/marketing-plan/references/funding-stage-unlocks.md +0 -230
- package/bundled-skills/marketing-plan/references/growth-patterns.md +0 -190
- package/bundled-skills/marketing-plan/references/idea-cross-reference.md +0 -265
- package/bundled-skills/marketing-plan/references/measurement-framework.md +0 -213
- package/bundled-skills/marketing-plan/references/methodology.md +0 -363
- package/bundled-skills/marketing-plan/references/ops-stack-mapping.md +0 -197
- package/bundled-skills/marketing-plan/references/plan-template.md +0 -494
- package/bundled-skills/marketing-plan/references/team-and-agency-model.md +0 -278
- package/bundled-skills/marketing-psychology/SKILL.md +0 -455
- package/bundled-skills/marketing-psychology/evals/evals.json +0 -88
- package/bundled-skills/memory-bridge/SKILL.md +0 -163
- package/bundled-skills/memory-save/SKILL.md +0 -88
- package/bundled-skills/obsidian-bases/SKILL.md +0 -499
- package/bundled-skills/obsidian-bases/references/FUNCTIONS_REFERENCE.md +0 -173
- package/bundled-skills/obsidian-cli/SKILL.md +0 -106
- package/bundled-skills/obsidian-layout-adjustment/SKILL.md +0 -226
- package/bundled-skills/obsidian-layout-adjustment/evals/evals.json +0 -53
- package/bundled-skills/obsidian-layout-adjustment/references/workflow-reference.md +0 -212
- package/bundled-skills/obsidian-markdown/SKILL.md +0 -196
- package/bundled-skills/obsidian-markdown/references/CALLOUTS.md +0 -58
- package/bundled-skills/obsidian-markdown/references/EMBEDS.md +0 -70
- package/bundled-skills/obsidian-markdown/references/PROPERTIES.md +0 -61
- package/bundled-skills/offers/SKILL.md +0 -155
- package/bundled-skills/offers/evals/evals.json +0 -21
- package/bundled-skills/offers/references/bonus-stacking.md +0 -150
- package/bundled-skills/offers/references/examples.md +0 -215
- package/bundled-skills/offers/references/guarantee-design.md +0 -172
- package/bundled-skills/offers/references/offer-anatomy.md +0 -203
- package/bundled-skills/offers/references/offer-formats.md +0 -240
- package/bundled-skills/offers/references/saas-offers.md +0 -116
- package/bundled-skills/offers/references/scarcity-urgency.md +0 -175
- package/bundled-skills/offers/references/value-equation.md +0 -134
- package/bundled-skills/onboarding/SKILL.md +0 -261
- package/bundled-skills/onboarding/evals/evals.json +0 -108
- package/bundled-skills/onboarding/references/activation-models.md +0 -57
- package/bundled-skills/onboarding/references/experiments.md +0 -258
- package/bundled-skills/onboarding/references/minimum-path-to-value.md +0 -49
- package/bundled-skills/openclaw-history-ingest/SKILL.md +0 -257
- package/bundled-skills/openclaw-history-ingest/references/openclaw-data-format.md +0 -154
- package/bundled-skills/orchestration/SKILL.md +0 -69
- package/bundled-skills/pi-history-ingest/SKILL.md +0 -312
- package/bundled-skills/pricing/SKILL.md +0 -295
- package/bundled-skills/pricing/evals/evals.json +0 -119
- package/bundled-skills/pricing/references/pricing-models.md +0 -66
- package/bundled-skills/pricing/references/pricing-page-teardown.md +0 -85
- package/bundled-skills/pricing/references/research-methods.md +0 -152
- package/bundled-skills/pricing/references/tier-structure.md +0 -232
- package/bundled-skills/product-marketing/SKILL.md +0 -255
- package/bundled-skills/product-marketing/evals/evals.json +0 -98
- package/bundled-skills/prospecting/SKILL.md +0 -262
- package/bundled-skills/prospecting/evals/evals.json +0 -122
- package/bundled-skills/prospecting/references/b2b-prospecting.md +0 -106
- package/bundled-skills/prospecting/references/compliance.md +0 -123
- package/bundled-skills/prospecting/references/data-sources.md +0 -287
- package/bundled-skills/prospecting/references/demand-signals.md +0 -129
- package/bundled-skills/prospecting/references/local-prospecting.md +0 -165
- package/bundled-skills/prospecting/references/saas-prospecting.md +0 -123
- package/bundled-skills/refactor-safely/SKILL.md +0 -29
- package/bundled-skills/review-delta/SKILL.md +0 -46
- package/bundled-skills/review-pr/SKILL.md +0 -66
- package/bundled-skills/sales-enablement/SKILL.md +0 -359
- package/bundled-skills/sales-enablement/evals/evals.json +0 -91
- package/bundled-skills/sales-enablement/references/deck-frameworks.md +0 -263
- package/bundled-skills/sales-enablement/references/demo-scripts.md +0 -355
- package/bundled-skills/sales-enablement/references/objection-library.md +0 -270
- package/bundled-skills/sales-enablement/references/one-pager-templates.md +0 -208
- package/bundled-skills/seo-audit/SKILL.md +0 -499
- package/bundled-skills/seo-audit/evals/evals.json +0 -136
- package/bundled-skills/seo-audit/references/ai-writing-detection.md +0 -200
- package/bundled-skills/seo-audit/references/international-seo.md +0 -230
- package/bundled-skills/session-brain/SKILL.md +0 -101
- package/bundled-skills/session-search/SKILL.md +0 -97
- package/bundled-skills/social/SKILL.md +0 -413
- package/bundled-skills/social/evals/evals.json +0 -107
- package/bundled-skills/social/references/carousel-frameworks.md +0 -141
- package/bundled-skills/social/references/listening-sources-template.md +0 -123
- package/bundled-skills/social/references/listening.md +0 -283
- package/bundled-skills/social/references/platform-limits.md +0 -110
- package/bundled-skills/social/references/platforms.md +0 -170
- package/bundled-skills/social/references/post-templates.md +0 -179
- package/bundled-skills/social/references/reverse-engineering.md +0 -195
- package/bundled-skills/social/references/short-form-video.md +0 -237
- package/bundled-skills/tag-taxonomy/SKILL.md +0 -218
- package/bundled-skills/vault-skill-factory/SKILL.md +0 -143
- package/bundled-skills/video/SKILL.md +0 -346
- package/bundled-skills/video/evals/evals.json +0 -103
- package/bundled-skills/video/references/ai-video-prompting.md +0 -175
- package/bundled-skills/video/references/edit-anatomy.md +0 -84
- package/bundled-skills/wiki-agent/SKILL.md +0 -322
- package/bundled-skills/wiki-capture/SKILL.md +0 -337
- package/bundled-skills/wiki-capture/references/RAW-FORMAT.md +0 -115
- package/bundled-skills/wiki-context-pack/SKILL.md +0 -89
- package/bundled-skills/wiki-dashboard/SKILL.md +0 -472
- package/bundled-skills/wiki-dedup/SKILL.md +0 -320
- package/bundled-skills/wiki-digest/SKILL.md +0 -243
- package/bundled-skills/wiki-export/SKILL.md +0 -445
- package/bundled-skills/wiki-history-ingest/SKILL.md +0 -61
- package/bundled-skills/wiki-import/SKILL.md +0 -276
- package/bundled-skills/wiki-ingest/SKILL.md +0 -563
- package/bundled-skills/wiki-ingest/references/ingest-prompts.md +0 -54
- package/bundled-skills/wiki-ingest/references/pageindex.md +0 -72
- package/bundled-skills/wiki-ingest/references/url-sources.md +0 -295
- package/bundled-skills/wiki-lint/SKILL.md +0 -643
- package/bundled-skills/wiki-narrate/SKILL.md +0 -120
- package/bundled-skills/wiki-narrate/references/voices.md +0 -29
- package/bundled-skills/wiki-query/SKILL.md +0 -307
- package/bundled-skills/wiki-rebuild/SKILL.md +0 -212
- package/bundled-skills/wiki-research/SKILL.md +0 -319
- package/bundled-skills/wiki-setup/SKILL.md +0 -359
- package/bundled-skills/wiki-stage-commit/SKILL.md +0 -164
- package/bundled-skills/wiki-status/SKILL.md +0 -556
- package/bundled-skills/wiki-switch/SKILL.md +0 -115
- package/bundled-skills/wiki-synthesize/SKILL.md +0 -212
- package/bundled-skills/wiki-update/SKILL.md +0 -271
- package/skills/ai-security/SKILL.md +0 -132
- package/skills/ai-security/references/atlas-coverage.md +0 -60
- package/skills/ai-security/scripts/ai_threat_scanner.py +0 -373
- package/skills/anti-AI-design/SKILL.md +0 -72
- package/skills/apple-hig-audit/SKILL.md +0 -64
- package/skills/apple-hig-audit/references/accessibility.md +0 -78
- package/skills/apple-hig-audit/references/platform-specifics.md +0 -57
- package/skills/apple-hig-audit/references/visual-design.md +0 -68
- package/skills/apple-hig-audit/scripts/hig_checker.py +0 -115
- package/skills/apple-hig-audit/templates/hig-audit-template.md +0 -114
- package/skills/dependency-auditor/README.md +0 -98
- package/skills/dependency-auditor/SKILL.md +0 -114
- package/skills/dependency-auditor/assets/sample_go.mod +0 -53
- package/skills/dependency-auditor/assets/sample_package.json +0 -72
- package/skills/dependency-auditor/assets/sample_requirements.txt +0 -71
- package/skills/dependency-auditor/expected_outputs/sample_license_report.txt +0 -37
- package/skills/dependency-auditor/expected_outputs/sample_upgrade_plan.txt +0 -59
- package/skills/dependency-auditor/expected_outputs/sample_vulnerability_report.json +0 -71
- package/skills/dependency-auditor/references/dependency_management_best_practices.md +0 -46
- package/skills/dependency-auditor/references/license_compatibility_matrix.md +0 -57
- package/skills/dependency-auditor/references/vulnerability_assessment_guide.md +0 -62
- package/skills/dependency-auditor/scripts/dep_scanner.py +0 -595
- package/skills/dependency-auditor/scripts/license_checker.py +0 -442
- package/skills/dependency-auditor/scripts/upgrade_planner.py +0 -490
- package/skills/dependency-auditor/test-inventory.json +0 -421
- package/skills/dependency-auditor/test-project/package.json +0 -72
- package/skills/design-system-tokens/SKILL.md +0 -90
- package/skills/design-system-tokens/assets/design_system_doc_template.md +0 -129
- package/skills/design-system-tokens/references/component-architecture.md +0 -88
- package/skills/design-system-tokens/references/developer-handoff.md +0 -61
- package/skills/design-system-tokens/references/responsive-calculations.md +0 -72
- package/skills/design-system-tokens/references/token-generation.md +0 -62
- package/skills/design-system-tokens/scripts/design_token_generator.py +0 -315
- package/skills/engineering-code-standards/SKILL.md +0 -174
- package/skills/env-secrets-manager/SKILL.md +0 -102
- package/skills/env-secrets-manager/references/secret-patterns.md +0 -56
- package/skills/env-secrets-manager/references/validation-detection-rotation.md +0 -76
- package/skills/env-secrets-manager/scripts/env_auditor.py +0 -340
- package/skills/frontend-design-taste/SKILL.md +0 -62
- package/skills/mcp-server-builder/README.md +0 -42
- package/skills/mcp-server-builder/SKILL.md +0 -144
- package/skills/mcp-server-builder/references/openapi-extraction-guide.md +0 -34
- package/skills/mcp-server-builder/references/production-hardening-guide.md +0 -80
- package/skills/mcp-server-builder/references/python-server-template.md +0 -22
- package/skills/mcp-server-builder/references/spec-compatibility.md +0 -129
- package/skills/mcp-server-builder/references/typescript-server-template.md +0 -19
- package/skills/mcp-server-builder/references/validation-checklist.md +0 -30
- package/skills/mcp-server-builder/scripts/mcp_validator.py +0 -180
- package/skills/mcp-server-builder/scripts/openapi_to_mcp.py +0 -279
- package/skills/playwright-agent/SKILL.md +0 -147
- package/skills/skill-creator/LICENSE.txt +0 -14
- package/skills/skill-creator/SKILL.md +0 -471
- package/skills/skill-creator/agents/analyzer.md +0 -274
- package/skills/skill-creator/agents/comparator.md +0 -202
- package/skills/skill-creator/agents/grader.md +0 -223
- package/skills/skill-creator/assets/eval_review.html +0 -143
- package/skills/skill-creator/eval-viewer/generate_review.py +0 -471
- package/skills/skill-creator/eval-viewer/viewer.html +0 -1321
- package/skills/skill-creator/references/schemas.md +0 -430
- package/skills/skill-creator/scripts/__init__.py +0 -0
- package/skills/skill-creator/scripts/aggregate_benchmark.py +0 -401
- package/skills/skill-creator/scripts/generate_report.py +0 -322
- package/skills/skill-creator/scripts/improve_description.py +0 -247
- package/skills/skill-creator/scripts/package_skill.py +0 -136
- package/skills/skill-creator/scripts/quick_validate.py +0 -103
- package/skills/skill-creator/scripts/run_eval.py +0 -310
- package/skills/skill-creator/scripts/run_loop.py +0 -328
- package/skills/skill-creator/scripts/utils.py +0 -47
- package/skills/write-a-skill/SKILL.md +0 -111
- package/skills/write-a-skill/references/companion_tooling.md +0 -61
- package/skills/write-a-skill/references/description_design_patterns.md +0 -136
- package/skills/write-a-skill/references/progressive_disclosure_principles.md +0 -87
- package/skills/write-a-skill/references/quality_gates_for_skills.md +0 -158
- package/skills/write-a-skill/scripts/skill_description_validator.py +0 -241
- package/skills/write-a-skill/scripts/skill_review_checklist_runner.py +0 -257
- package/skills/write-a-skill/scripts/skill_structure_validator.py +0 -265
package/catalog/overrides.json
CHANGED
|
@@ -8,8 +8,7 @@
|
|
|
8
8
|
"quality"
|
|
9
9
|
],
|
|
10
10
|
"categories": [
|
|
11
|
-
"
|
|
12
|
-
"docs-writing"
|
|
11
|
+
"design-ui"
|
|
13
12
|
]
|
|
14
13
|
},
|
|
15
14
|
"novahiz-supabase": {
|
|
@@ -100,7 +99,7 @@
|
|
|
100
99
|
"general"
|
|
101
100
|
]
|
|
102
101
|
},
|
|
103
|
-
"
|
|
102
|
+
"ui-slop-remover": {
|
|
104
103
|
"power": 5,
|
|
105
104
|
"stars": null,
|
|
106
105
|
"tags": [
|
|
@@ -111,7 +110,7 @@
|
|
|
111
110
|
"design-ui"
|
|
112
111
|
]
|
|
113
112
|
},
|
|
114
|
-
"
|
|
113
|
+
"code-standards": {
|
|
115
114
|
"power": 4,
|
|
116
115
|
"stars": null,
|
|
117
116
|
"tags": [
|
|
@@ -136,7 +135,7 @@
|
|
|
136
135
|
"code"
|
|
137
136
|
]
|
|
138
137
|
},
|
|
139
|
-
"
|
|
138
|
+
"ui-craft-rules": {
|
|
140
139
|
"power": 5,
|
|
141
140
|
"stars": null,
|
|
142
141
|
"tags": [
|
|
@@ -147,7 +146,7 @@
|
|
|
147
146
|
"design-ui"
|
|
148
147
|
]
|
|
149
148
|
},
|
|
150
|
-
"design-
|
|
149
|
+
"design-token-pipeline": {
|
|
151
150
|
"power": 4,
|
|
152
151
|
"stars": null,
|
|
153
152
|
"tags": [
|
|
@@ -158,7 +157,7 @@
|
|
|
158
157
|
"design-ui"
|
|
159
158
|
]
|
|
160
159
|
},
|
|
161
|
-
"apple-
|
|
160
|
+
"apple-ui-audit": {
|
|
162
161
|
"power": 4,
|
|
163
162
|
"stars": null,
|
|
164
163
|
"tags": [
|
|
@@ -192,7 +191,7 @@
|
|
|
192
191
|
"audit"
|
|
193
192
|
]
|
|
194
193
|
},
|
|
195
|
-
"
|
|
194
|
+
"llm-threat-review": {
|
|
196
195
|
"power": 4,
|
|
197
196
|
"stars": null,
|
|
198
197
|
"tags": [
|
|
@@ -203,7 +202,7 @@
|
|
|
203
202
|
"audit"
|
|
204
203
|
]
|
|
205
204
|
},
|
|
206
|
-
"
|
|
205
|
+
"package-risk-audit": {
|
|
207
206
|
"power": 3,
|
|
208
207
|
"stars": null,
|
|
209
208
|
"tags": [
|
|
@@ -214,7 +213,7 @@
|
|
|
214
213
|
"audit"
|
|
215
214
|
]
|
|
216
215
|
},
|
|
217
|
-
"
|
|
216
|
+
"secrets-hygiene": {
|
|
218
217
|
"power": 3,
|
|
219
218
|
"stars": null,
|
|
220
219
|
"tags": [
|
|
@@ -226,7 +225,7 @@
|
|
|
226
225
|
"audit"
|
|
227
226
|
]
|
|
228
227
|
},
|
|
229
|
-
"skill-
|
|
228
|
+
"skill-eval-loop": {
|
|
230
229
|
"power": 3,
|
|
231
230
|
"stars": null,
|
|
232
231
|
"tags": [
|
|
@@ -236,7 +235,7 @@
|
|
|
236
235
|
"general"
|
|
237
236
|
]
|
|
238
237
|
},
|
|
239
|
-
"
|
|
238
|
+
"skill-authoring": {
|
|
240
239
|
"power": 3,
|
|
241
240
|
"stars": null,
|
|
242
241
|
"tags": [
|
|
@@ -246,7 +245,7 @@
|
|
|
246
245
|
"general"
|
|
247
246
|
]
|
|
248
247
|
},
|
|
249
|
-
"mcp-server
|
|
248
|
+
"openapi-mcp-server": {
|
|
250
249
|
"power": 4,
|
|
251
250
|
"stars": null,
|
|
252
251
|
"tags": [
|
package/catalog/providers.json
CHANGED
|
@@ -3,70 +3,54 @@
|
|
|
3
3
|
"id": "playwright",
|
|
4
4
|
"label": "Playwright MCP",
|
|
5
5
|
"kind": "mcp",
|
|
6
|
-
"command": ["npx", "-y", "@
|
|
6
|
+
"command": ["npx", "-y", "@playwright/mcp@latest"],
|
|
7
|
+
"source": "https://github.com/microsoft/playwright-mcp",
|
|
8
|
+
"license": "Apache-2.0",
|
|
7
9
|
"categories": ["browser", "design-ui"]
|
|
8
10
|
},
|
|
9
11
|
{
|
|
10
12
|
"id": "security",
|
|
11
13
|
"label": "Security MCP",
|
|
12
14
|
"kind": "mcp",
|
|
13
|
-
"command": ["npx", "-y", "
|
|
14
|
-
"
|
|
15
|
+
"command": ["npx", "-y", "security-mcp@latest", "serve"],
|
|
16
|
+
"source": "https://github.com/AbrahamOO/security-mcp",
|
|
17
|
+
"license": "MIT",
|
|
18
|
+
"categories": ["audit"]
|
|
15
19
|
},
|
|
16
20
|
{
|
|
17
21
|
"id": "narsil",
|
|
18
22
|
"label": "Narsil Code Intelligence",
|
|
19
23
|
"kind": "mcp",
|
|
20
|
-
"command": ["npx", "-y", "
|
|
24
|
+
"command": ["npx", "-y", "narsil-mcp@latest", "--repos", "."],
|
|
25
|
+
"source": "https://github.com/postrv/narsil-mcp",
|
|
26
|
+
"license": "MIT OR Apache-2.0",
|
|
21
27
|
"categories": ["code", "review"]
|
|
22
28
|
},
|
|
23
29
|
{
|
|
24
30
|
"id": "context7",
|
|
25
31
|
"label": "Context7 Documentation",
|
|
26
32
|
"kind": "mcp",
|
|
27
|
-
"command": ["npx", "-y", "@
|
|
33
|
+
"command": ["npx", "-y", "@upstash/context7-mcp@latest"],
|
|
34
|
+
"source": "https://github.com/upstash/context7",
|
|
35
|
+
"license": "MIT",
|
|
28
36
|
"categories": ["code"]
|
|
29
37
|
},
|
|
30
|
-
{
|
|
31
|
-
"id": "sequential-thinking",
|
|
32
|
-
"label": "Sequential Thinking",
|
|
33
|
-
"kind": "mcp",
|
|
34
|
-
"command": ["npx", "-y", "@anthropic-ai/mcp-sequential-thinking@latest"],
|
|
35
|
-
"categories": ["code", "planning"]
|
|
36
|
-
},
|
|
37
38
|
{
|
|
38
39
|
"id": "cron",
|
|
39
40
|
"label": "Cron Scheduler",
|
|
40
41
|
"kind": "mcp",
|
|
41
|
-
"command": ["npx", "-y", "
|
|
42
|
+
"command": ["npx", "-y", "mcp-cron@latest"],
|
|
43
|
+
"source": "https://github.com/jolks/mcp-cron",
|
|
44
|
+
"license": "AGPL-3.0-only",
|
|
42
45
|
"categories": ["devops"]
|
|
43
46
|
},
|
|
44
|
-
{
|
|
45
|
-
"id": "obsidian",
|
|
46
|
-
"label": "Obsidian Vault",
|
|
47
|
-
"kind": "mcp",
|
|
48
|
-
"command": ["npx", "-y", "@anthropic-ai/mcp-obsidian@latest"],
|
|
49
|
-
"categories": ["docs-writing"]
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
"id": "dart",
|
|
53
|
-
"label": "Dart/Flutter",
|
|
54
|
-
"kind": "mcp",
|
|
55
|
-
"command": ["npx", "-y", "@anthropic-ai/mcp-dart@latest"],
|
|
56
|
-
"categories": ["code"]
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
"id": "expo",
|
|
60
|
-
"label": "Expo/EAS",
|
|
61
|
-
"kind": "mcp",
|
|
62
|
-
"command": ["npx", "-y", "@anthropic-ai/mcp-expo@latest"],
|
|
63
|
-
"categories": ["code"]
|
|
64
|
-
},
|
|
65
47
|
{
|
|
66
48
|
"id": "novahiz",
|
|
67
49
|
"label": "novahiz",
|
|
68
50
|
"kind": "mcp",
|
|
69
51
|
"command": ["node", "C:/Users/hiz/.config/novahiz/mcp/novahiz-tools/index.mjs"],
|
|
52
|
+
"source": "https://github.com/novahiz/novahiz",
|
|
53
|
+
"license": "Apache-2.0",
|
|
70
54
|
"categories": ["code", "planning"]
|
|
71
55
|
}
|
|
72
56
|
]
|
package/catalog/rules.json
CHANGED
|
@@ -1,22 +1,4 @@
|
|
|
1
1
|
[
|
|
2
|
-
{
|
|
3
|
-
"id": "R1-code-prose",
|
|
4
|
-
"description": "Load novahiz-humanizer when code or design changes contain prose.",
|
|
5
|
-
"when": {
|
|
6
|
-
"fileClasses": ["code", "design"],
|
|
7
|
-
"contentMatches": ["prose"]
|
|
8
|
-
},
|
|
9
|
-
"require": ["novahiz-humanizer"]
|
|
10
|
-
},
|
|
11
|
-
{
|
|
12
|
-
"id": "R1-docs",
|
|
13
|
-
"description": "Load novahiz-humanizer on text, documentation, and written content.",
|
|
14
|
-
"when": {
|
|
15
|
-
"fileClasses": ["text", "data", "config"],
|
|
16
|
-
"contentMatches": ["prose"]
|
|
17
|
-
},
|
|
18
|
-
"require": ["novahiz-humanizer"]
|
|
19
|
-
},
|
|
20
2
|
{
|
|
21
3
|
"id": "R3-supabase",
|
|
22
4
|
"description": "Load Supabase skills on any Supabase task.",
|
|
@@ -29,9 +11,20 @@
|
|
|
29
11
|
},
|
|
30
12
|
{
|
|
31
13
|
"id": "R4-playwright",
|
|
32
|
-
"description": "Load novahiz-browser on any task using Playwright.",
|
|
14
|
+
"description": "Load novahiz-browser on any task using Playwright or targeting browser tests.",
|
|
33
15
|
"when": {
|
|
34
|
-
"
|
|
16
|
+
"match": "any",
|
|
17
|
+
"promptCategories": ["browser"],
|
|
18
|
+
"pathGlobs": [
|
|
19
|
+
"**/*.spec.ts",
|
|
20
|
+
"**/*.spec.js",
|
|
21
|
+
"**/*.e2e.ts",
|
|
22
|
+
"**/*.e2e.js",
|
|
23
|
+
"**/*.pw.ts",
|
|
24
|
+
"**/e2e/**",
|
|
25
|
+
"**/playwright/**",
|
|
26
|
+
"**/*.cy.ts"
|
|
27
|
+
]
|
|
35
28
|
},
|
|
36
29
|
"require": ["novahiz-browser"]
|
|
37
30
|
},
|
|
@@ -98,7 +91,7 @@
|
|
|
98
91
|
},
|
|
99
92
|
{
|
|
100
93
|
"id": "R13-design-craft",
|
|
101
|
-
"description": "Load
|
|
94
|
+
"description": "Load novahiz-humanizer, ui-slop-remover and ui-craft-rules on frontend design tasks only.",
|
|
102
95
|
"when": {
|
|
103
96
|
"match": "any",
|
|
104
97
|
"promptCategories": ["design-ui"],
|
|
@@ -111,6 +104,6 @@
|
|
|
111
104
|
"**/*.htm"
|
|
112
105
|
]
|
|
113
106
|
},
|
|
114
|
-
"require": ["
|
|
107
|
+
"require": ["novahiz-humanizer", "ui-slop-remover", "ui-craft-rules"]
|
|
115
108
|
}
|
|
116
109
|
]
|
package/docs/ARCHITECTURE.md
CHANGED
|
@@ -73,7 +73,7 @@ Three versioned JSON files under `catalog/`:
|
|
|
73
73
|
|
|
74
74
|
### Content rules and roadmaps
|
|
75
75
|
|
|
76
|
-
`src/content.ts` provides `changeText`, `hasProse`, and `hasStyle`. Rules in `catalog/rules.json` use them through `when.contentMatches` and `when.contentExcludes
|
|
76
|
+
`src/content.ts` provides `changeText`, `hasProse`, and `hasStyle`. Rules in `catalog/rules.json` use them through `when.contentMatches` and `when.contentExcludes`. `novahiz-humanizer` and `ui-slop-remover` are required only by R13 on frontend design tasks. `when.match` combines class, path, and category selectors.
|
|
77
77
|
|
|
78
78
|
Each category carries a `roadmap`. The classifier returns the category order, the primary category, the union of required skills, and the roadmaps. The gate adds the primary roadmap `skill` steps to its requirements.
|
|
79
79
|
|
|
@@ -121,7 +121,7 @@ The core runs on Node with no dependencies. A new harness adapter needs two thin
|
|
|
121
121
|
|
|
122
122
|
## Installer
|
|
123
123
|
|
|
124
|
-
`install/install.mjs` detects whether opencode is installed (auto-installs it if missing), copies the core, the
|
|
124
|
+
`install/install.mjs` detects whether opencode is installed (auto-installs it if missing), copies the core, the skills, and the plugin into place. It backs up any user file it overwrites (`*.novahiz-bak`) and records what it created in `.novahiz-install.json`, so `install/uninstall.mjs` can restore and reverse.
|
|
125
125
|
|
|
126
126
|
## MCP server
|
|
127
127
|
|
package/docs/CATALOG.md
CHANGED
|
@@ -8,7 +8,7 @@ The catalog is the knowledge base of Novahiz. It defines what categories exist,
|
|
|
8
8
|
catalog/
|
|
9
9
|
├── categories.json # 15 categories with keywords, skills, roadmaps
|
|
10
10
|
├── rules.json # 6 pre-edit rules (file class + content triggers)
|
|
11
|
-
├── providers.json #
|
|
11
|
+
├── providers.json # 6 external MCP servers and skill packs
|
|
12
12
|
└── overrides.json # Manual skill curation (power, stars, tags)
|
|
13
13
|
```
|
|
14
14
|
|
|
@@ -66,13 +66,14 @@ Each rule triggers skill requirements based on file class, path, prompt category
|
|
|
66
66
|
|
|
67
67
|
```json
|
|
68
68
|
{
|
|
69
|
-
"id": "
|
|
70
|
-
"description": "Load humanizer
|
|
69
|
+
"id": "R13-design-craft",
|
|
70
|
+
"description": "Load novahiz-humanizer, ui-slop-remover and ui-craft-rules on frontend design tasks only.",
|
|
71
71
|
"when": {
|
|
72
|
-
"
|
|
73
|
-
"
|
|
72
|
+
"match": "any",
|
|
73
|
+
"promptCategories": ["design-ui"],
|
|
74
|
+
"pathGlobs": ["**/*.css", "**/*.scss", "**/*.html"]
|
|
74
75
|
},
|
|
75
|
-
"require": ["humanizer"]
|
|
76
|
+
"require": ["novahiz-humanizer", "ui-slop-remover", "ui-craft-rules"]
|
|
76
77
|
}
|
|
77
78
|
```
|
|
78
79
|
|
package/docs/CONFIGURATION.md
CHANGED
|
@@ -20,7 +20,7 @@ These files live in `catalog/` and are part of the git repository:
|
|
|
20
20
|
```json
|
|
21
21
|
{
|
|
22
22
|
"dbPath": "novahiz.sqlite",
|
|
23
|
-
"skillRoots": ["./skills"
|
|
23
|
+
"skillRoots": ["./skills"],
|
|
24
24
|
"gate": {
|
|
25
25
|
"enabled": true,
|
|
26
26
|
"mode": "block",
|
|
@@ -58,10 +58,10 @@ These files live in `catalog/` and are part of the git repository:
|
|
|
58
58
|
| Key | Default | Purpose |
|
|
59
59
|
|-----|---------|---------|
|
|
60
60
|
| `dbPath` | `novahiz.sqlite` | SQLite database path |
|
|
61
|
-
| `skillRoots` | `["./skills"
|
|
61
|
+
| `skillRoots` | `["./skills"]` | Directories to scan for skills |
|
|
62
62
|
| `gate.enabled` | `true` | Enable/disable the gate |
|
|
63
63
|
| `gate.mode` | `block` | `block`, `warn`, or `audit` |
|
|
64
|
-
| `gate.envEscape` | `NOVAHIZ_GATE` |
|
|
64
|
+
| `gate.envEscape` | `NOVAHIZ_GATE` | Schema field only. The kill-switch name is hardcoded to `NOVAHIZ_GATE` in the CLI, MCP gate, and plugin; a config value cannot redirect it. |
|
|
65
65
|
| `gate.tools` | `[edit, write, patch, ...]` | Tools to intercept |
|
|
66
66
|
| `gate.placeholders` | `true` | Block edits with placeholder markers |
|
|
67
67
|
| `classify.minScore` | `1` | Minimum score to match a category |
|
|
@@ -79,7 +79,7 @@ These files live in `catalog/` and are part of the git repository:
|
|
|
79
79
|
| Variable | Purpose |
|
|
80
80
|
|----------|---------|
|
|
81
81
|
| `NOVAHIZ_HOME` | Override Novahiz home directory |
|
|
82
|
-
| `NOVAHIZ_GATE` | Set to `off` to disable the gate |
|
|
82
|
+
| `NOVAHIZ_GATE` | Set to `off` to disable the gate (hardcoded name; not configurable) |
|
|
83
83
|
| `NOVAHIZ_NODE` | Override node executable path |
|
|
84
84
|
| `NOVAHIZ_DB` | Override database path |
|
|
85
85
|
| `OPENCODE_CONFIG_DIR` | Override opencode config directory |
|
|
@@ -88,7 +88,7 @@ These files live in `catalog/` and are part of the git repository:
|
|
|
88
88
|
|
|
89
89
|
The installer generates `opencode.jsonc` with:
|
|
90
90
|
|
|
91
|
-
- MCP server registrations (context7, narsil, cron, playwright, supabase
|
|
91
|
+
- MCP server registrations (context7, narsil, cron, playwright, supabase)
|
|
92
92
|
- Skill paths
|
|
93
93
|
- Plugin list
|
|
94
94
|
- Compaction settings
|
package/docs/CONSTITUTION.md
CHANGED
|
@@ -19,7 +19,7 @@ Rationale: auditability and simple installation. The tool is meant to be read an
|
|
|
19
19
|
### III. Enforce Before Writing
|
|
20
20
|
The gate blocks file mutations until the skills required by the prompt's category are loaded. Advice that can be ignored is not enforcement.
|
|
21
21
|
- `edit`, `write`, `patch`, `apply_patch`, and shell writes are gated. Read-only tools are not.
|
|
22
|
-
- Rules are content-aware: `novahiz-humanizer`
|
|
22
|
+
- Rules are content-aware: `novahiz-humanizer` and `ui-slop-remover` are required only on frontend design tasks.
|
|
23
23
|
- A block states what is missing and why. A silent or unexplained block counts as a bug.
|
|
24
24
|
Rationale: the tool exists to make quality gates unavoidable. A gate that can be waved through is theatre.
|
|
25
25
|
|
|
@@ -40,13 +40,13 @@ Rationale: the enforcement promise is only as strong as the evidence behind it.
|
|
|
40
40
|
## Additional Constraints
|
|
41
41
|
|
|
42
42
|
- Versioned configuration is code. Changes to `catalog/categories.json`, `catalog/rules.json`, and `catalog/overrides.json` go through review like source.
|
|
43
|
-
- The published package ships `src`, `adapters`, `catalog`, `install`, `bin`, `mcp`, `skills`, `
|
|
44
|
-
- License is Apache-2.0. The source is public. Anything derived from
|
|
43
|
+
- The published package ships `src`, `adapters`, `catalog`, `install`, `bin`, `mcp`, `skills`, `docs`, `tsconfig.json`, `README.md`, `NOTICE.md`, `novahiz.config.example.json`, and `LICENSE`. It never carries secrets, the local database, or machine-specific config.
|
|
44
|
+
- License is Apache-2.0. The source is public. Anything derived from third-party material keeps its own attribution.
|
|
45
45
|
|
|
46
46
|
## Development Workflow
|
|
47
47
|
|
|
48
48
|
- Run `npx tsc --noEmit` and `node --test` locally. Both must be green before a commit.
|
|
49
|
-
- Dogfood the rules. Load `novahiz-humanizer`
|
|
49
|
+
- Dogfood the rules. Load `novahiz-humanizer` and `ui-slop-remover` on frontend design changes, because the gate requires them there.
|
|
50
50
|
- Commit messages describe the behavior change, not the file touched.
|
|
51
51
|
- Before 1.0 the public interface may move. Such changes are called out in the commit and, when relevant, in the README.
|
|
52
52
|
|
package/docs/GATE.md
CHANGED
|
@@ -30,17 +30,13 @@ The gate is the enforcement mechanism. It inspects every file edit and decides w
|
|
|
30
30
|
│ │
|
|
31
31
|
│ For each rule in catalog/rules.json: │
|
|
32
32
|
│ │
|
|
33
|
-
│
|
|
34
|
-
│
|
|
35
|
-
│
|
|
36
|
-
│ →
|
|
37
|
-
│ If YES: require novahiz-humanizer
|
|
38
|
-
│
|
|
39
|
-
│
|
|
40
|
-
│ fileClasses: ["text", "data", "config"] ✓ │
|
|
41
|
-
│ contentMatches: ["prose"] → check content │
|
|
42
|
-
│ → Does the diff contain prose? │
|
|
43
|
-
│ If YES: require novahiz-humanizer │
|
|
33
|
+
│ R13-design-craft: │
|
|
34
|
+
│ match: any │
|
|
35
|
+
│ promptCategories: ["design-ui"] OR pathGlobs: css/html │
|
|
36
|
+
│ → Is this a frontend design task? │
|
|
37
|
+
│ If YES: require novahiz-humanizer │
|
|
38
|
+
│ + ui-slop-remover + ui-craft-rules │
|
|
39
|
+
│ (Humanizer and ui-slop-remover are design-only.) │
|
|
44
40
|
│ │
|
|
45
41
|
│ R3-supabase: │
|
|
46
42
|
│ promptCategories: ["database-supabase"] │
|
package/docs/HARNESSES.md
CHANGED
|
@@ -17,6 +17,17 @@ opencode denies the `question` tool to every agent by default. Only the built-in
|
|
|
17
17
|
|
|
18
18
|
Source: opencode plugin docs (`~/.config/opencode/plugins/`).
|
|
19
19
|
|
|
20
|
+
### Third-party opencode plugins
|
|
21
|
+
|
|
22
|
+
Besides the Novahiz adapter, the bootstrap and installer may pin these packages in `opencode.jsonc` under `plugin[]`. They ship from npm and are not vendored here.
|
|
23
|
+
|
|
24
|
+
| Package | Repository | License |
|
|
25
|
+
| --- | --- | --- |
|
|
26
|
+
| `@mohak34/opencode-notifier` | https://github.com/mohak34/opencode-notifier | MIT |
|
|
27
|
+
| `@tarquinen/opencode-dcp` | https://github.com/Opencode-DCP/opencode-dynamic-context-pruning | AGPL-3.0-or-later |
|
|
28
|
+
|
|
29
|
+
`opencode-dcp` is AGPL-3.0-or-later. Installing it accepts that license for the plugin package. Full provider MCP provenance lives in [PROVIDERS.md](PROVIDERS.md) and `catalog/providers.json`.
|
|
30
|
+
|
|
20
31
|
## Other clients
|
|
21
32
|
|
|
22
33
|
Any harness with a stdio MCP client can use the same server, `mcp/novahiz-tools/index.mjs`, for `classify`, `catalog`, `roadmap`, `providers`, `deps`, `step`, `list_skills`, `gate`, `task`, and `dispatch`. Register it with that client's own MCP command. Novahiz writes no other harness's configuration.
|
package/docs/INSTALL.md
CHANGED
|
@@ -19,7 +19,7 @@ node /path/to/novahiz/install/install.mjs --home ~/.config/novahiz
|
|
|
19
19
|
|
|
20
20
|
The installer runs `git`-free and never deletes your files. When run in a terminal it is interactive: it prints the plan and the provider list, then asks before writing anything or installing packages. It:
|
|
21
21
|
|
|
22
|
-
1. Copies the core, the
|
|
22
|
+
1. Copies the core, the skills, and the plugin into place.
|
|
23
23
|
2. Merges `skills/` into your opencode skills directory, skipping any skill that another scanned root already provides.
|
|
24
24
|
3. Drops the opencode plugin into the plugins directory.
|
|
25
25
|
4. Writes `novahiz.config.json` only if it does not exist.
|
|
@@ -27,15 +27,15 @@ The installer runs `git`-free and never deletes your files. When run in a termin
|
|
|
27
27
|
6. Verifies provider dependencies, and installs them when you confirm or `--install-providers` is set.
|
|
28
28
|
7. Installs the Novahiz agent into `~/.config/opencode/agent/novahiz.md` and the four slash commands into `~/.config/opencode/commands/`.
|
|
29
29
|
|
|
30
|
-
Restart opencode afterward. The plugin
|
|
30
|
+
Restart opencode afterward. The plugin in `~/.config/opencode/plugins/novahiz.ts` is auto-discovered (confirmed by `opencode debug config`: `file:///…/plugins/novahiz.ts`, scope local), so it is not listed in `plugin[]` and you do not edit `opencode.jsonc` by hand. See [HARNESSES.md](HARNESSES.md) for the exact paths.
|
|
31
31
|
|
|
32
32
|
## Options
|
|
33
33
|
|
|
34
34
|
- `--home <path>` installs the core to a custom location.
|
|
35
35
|
- `--scope project` targets `./.opencode` instead of the global config.
|
|
36
36
|
- `--dry-run` prints the actions and writes nothing.
|
|
37
|
-
- `--no-skills` skips the
|
|
38
|
-
- `--force-skills` recopies a
|
|
37
|
+
- `--no-skills` skips the skills copy.
|
|
38
|
+
- `--force-skills` recopies a skill even when another scanned root already provides it.
|
|
39
39
|
- `--install-providers` runs the provider dependency bootstrap and install commands.
|
|
40
40
|
- `--force` rewrites `novahiz.config.json` (the previous file is backed up as `novahiz.config.json.novahiz-bak`).
|
|
41
41
|
- `--yes` skips every prompt. Use it in scripts and CI, where there is no terminal to answer.
|
|
@@ -54,7 +54,9 @@ node ~/.config/novahiz/src/cli.ts doctor
|
|
|
54
54
|
node ~/.config/novahiz/src/cli.ts clean --dry-run
|
|
55
55
|
```
|
|
56
56
|
|
|
57
|
-
`doctor` runs
|
|
57
|
+
`doctor` runs twelve checks: Node 22.18+, `npx`, the installed-skills index, the referenced skills, the external CLIs the skills call, a gate smoke test, the registry database, the schema version, whether the installed plugin copy matches the source, the memory module limits, the five MCP `memory_*` tools, and whether the installed agent is in sync and grants the `question` tool. It exits non-zero when a blocking check fails, so it works as a pre-flight in scripts.
|
|
58
|
+
|
|
59
|
+
The gate kill-switch environment variable is `NOVAHIZ_GATE` (`off`, `0`, `false`, `no`, or `disabled`). The config key `gate.envEscape` exists only for schema compatibility: it cannot rename the variable. See [CONFIGURATION.md](CONFIGURATION.md).
|
|
58
60
|
|
|
59
61
|
`clean` trims old rows from the ledger, `novahiz.sqlite`. Targets are `logs` (default), `roadmap`, `sessions`, `tasks`, and `all`; flags are `--days N` (default 30), `--dry-run`, `--apply`, `--vacuum`, and `--json`. Without `--apply` on a terminal it prints the plan and asks; without a terminal it prints the plan and exits 1, so a script cannot delete by accident.
|
|
60
62
|
|
package/docs/PLUGIN.md
CHANGED
|
@@ -13,13 +13,17 @@ The opencode adapter is a thin plugin that bridges the Novahiz core with the ope
|
|
|
13
13
|
│ 3. Check DISABLED flag (env escape or config) │
|
|
14
14
|
│ 4. Register hooks: │
|
|
15
15
|
│ • config → inject MCP server + providers │
|
|
16
|
-
│ • event →
|
|
16
|
+
│ • event → session.deleted cleanup; │
|
|
17
|
+
│ session.idle → flush autodocs (fail-open) │
|
|
17
18
|
│ • chat.message → classify prompt, build enforcement │
|
|
18
19
|
│ • experimental.chat.system.transform → inject into prompt│
|
|
19
20
|
│ • tool.execute.before → gate check on edits │
|
|
21
|
+
│ • tool.execute.after → mark major path dirty (autodocs) │
|
|
20
22
|
└─────────────────────────────────────────────────────────────┘
|
|
21
23
|
```
|
|
22
24
|
|
|
25
|
+
The plugin is self-contained: prompt rewriting and autodocs helpers are inlined so the installed copy under `~/.config/opencode/plugins/` does not depend on `../../src/*` (that path does not resolve after install).
|
|
26
|
+
|
|
23
27
|
## Hooks
|
|
24
28
|
|
|
25
29
|
### `config`
|
|
@@ -28,8 +32,8 @@ Registers the Novahiz MCP server and any additional providers from `catalog/prov
|
|
|
28
32
|
|
|
29
33
|
```typescript
|
|
30
34
|
config: async (input) => {
|
|
31
|
-
// Register Novahiz MCP server
|
|
32
|
-
config.mcp.
|
|
35
|
+
// Register Novahiz MCP server (key is lowercase: config.mcp.novahiz)
|
|
36
|
+
config.mcp.novahiz = {
|
|
33
37
|
type: "local",
|
|
34
38
|
command: [NODE, join(HOME, "mcp", "novahiz-tools", "index.mjs")],
|
|
35
39
|
enabled: true
|
|
@@ -108,10 +112,23 @@ The core enforcement hook. Intercepts tool calls and runs the gate:
|
|
|
108
112
|
│ Gate output: │
|
|
109
113
|
│ • exit 0 → allow │
|
|
110
114
|
│ • exit 2 → BLOCK (throw error with missing skills list) │
|
|
111
|
-
│ • exit != 0 →
|
|
115
|
+
│ • exit != 0 → BLOCK (fail-closed, same as spawn error) │
|
|
112
116
|
└─────────────────────────────────────────────────────────────┘
|
|
113
117
|
```
|
|
114
118
|
|
|
119
|
+
### `event`
|
|
120
|
+
|
|
121
|
+
Two event types:
|
|
122
|
+
|
|
123
|
+
| Event | Behavior |
|
|
124
|
+
|-------|----------|
|
|
125
|
+
| `session.deleted` | Forget in-memory session state |
|
|
126
|
+
| `session.idle` | If autodocs is enabled and state is dirty, spawn `novahiz autodocs --flush` (fail-open, unref'd child) |
|
|
127
|
+
|
|
128
|
+
### `tool.execute.after`
|
|
129
|
+
|
|
130
|
+
After an edit-like tool succeeds, if the path is a major source file (`src/…`, `package.json`, `.ts`, …), call the inlined `markDirty` so the next `session.idle` can flush docs. Non-edit tools and non-major paths are ignored. Never throws.
|
|
131
|
+
|
|
115
132
|
## Session state
|
|
116
133
|
|
|
117
134
|
The plugin maintains per-session state in memory:
|
|
@@ -145,6 +162,7 @@ When disabled, all hooks return early without doing anything.
|
|
|
145
162
|
## Error handling
|
|
146
163
|
|
|
147
164
|
- If `classify` fails → warning logged, no enforcement injected
|
|
148
|
-
- If `gate` fails with spawn error → tool call
|
|
149
|
-
- If `gate` exits non-zero non-two → tool call
|
|
165
|
+
- If `gate` fails with spawn error → tool call **blocked** (fail-closed)
|
|
166
|
+
- If `gate` exits non-zero non-two → tool call **blocked** (fail-closed)
|
|
150
167
|
- If `gate` exits 2 → error thrown, tool call blocked
|
|
168
|
+
- Autodocs flush on `session.idle` and `tool.execute.after` are fail-open
|
package/docs/PROVIDERS.md
CHANGED
|
@@ -34,16 +34,18 @@ Novahiz references providers, it never vendors them. Each entry lists the upstre
|
|
|
34
34
|
|
|
35
35
|
## Bundled providers
|
|
36
36
|
|
|
37
|
-
MCP servers
|
|
38
|
-
|
|
39
|
-
| Id |
|
|
40
|
-
| --- | --- | --- |
|
|
41
|
-
| `playwright` |
|
|
42
|
-
| `security` |
|
|
43
|
-
| `narsil` |
|
|
44
|
-
| `context7` |
|
|
45
|
-
| `
|
|
46
|
-
| `
|
|
37
|
+
MCP servers, with provenance from `catalog/providers.json`:
|
|
38
|
+
|
|
39
|
+
| Id | Package | Upstream | License | Categories |
|
|
40
|
+
| --- | --- | --- | --- | --- |
|
|
41
|
+
| `playwright` | `@playwright/mcp` | [microsoft/playwright-mcp](https://github.com/microsoft/playwright-mcp) | Apache-2.0 | browser, design-ui |
|
|
42
|
+
| `security` | `security-mcp` | [AbrahamOO/security-mcp](https://github.com/AbrahamOO/security-mcp) | MIT | audit |
|
|
43
|
+
| `narsil` | `narsil-mcp` | [postrv/narsil-mcp](https://github.com/postrv/narsil-mcp) | MIT OR Apache-2.0 | code, debug, review, audit |
|
|
44
|
+
| `context7` | `@upstash/context7-mcp` | [upstash/context7](https://github.com/upstash/context7) | MIT | code, research |
|
|
45
|
+
| `cron` | `mcp-cron` | [jolks/mcp-cron](https://github.com/jolks/mcp-cron) | AGPL-3.0-only | devops, general |
|
|
46
|
+
| `novahiz` | local (`mcp/novahiz-tools`) | [novahiz/novahiz](https://github.com/novahiz/novahiz) | Apache-2.0 | code, planning |
|
|
47
|
+
|
|
48
|
+
`cron` is AGPL-3.0-only. Enabling it means you accept that license for the install command, not for Novahiz itself.
|
|
47
49
|
|
|
48
50
|
Skill and command packs:
|
|
49
51
|
|
package/docs/ROADMAPS.md
CHANGED
|
@@ -55,10 +55,11 @@ When several categories match, the one with the highest score provides the roadm
|
|
|
55
55
|
|
|
56
56
|
## Content-aware rules
|
|
57
57
|
|
|
58
|
-
`novahiz-humanizer`
|
|
58
|
+
`novahiz-humanizer` and `ui-slop-remover` load only through `R13-design-craft` on frontend design tasks:
|
|
59
59
|
|
|
60
|
-
-
|
|
61
|
-
-
|
|
60
|
+
- Both skills are required on design-ui prompts and style file edits (css/scss/less/html).
|
|
61
|
+
- Outside frontend design, neither skill is required by the gate.
|
|
62
|
+
- The design-ui roadmap also carries an optional `design-craft` step for guidance; it does not block.
|
|
62
63
|
|
|
63
64
|
Rules express this with `when.contentMatches` (`prose`, `style`, or a regex), `when.contentExcludes`, `when.minChange`, and `when.match` (`any` or `all`) to combine the class, path, and category selectors.
|
|
64
65
|
|
package/docs/RULES.md
CHANGED
|
@@ -6,13 +6,14 @@ A rule describes a condition and the skills that condition requires before a fil
|
|
|
6
6
|
|
|
7
7
|
```json
|
|
8
8
|
{
|
|
9
|
-
"id": "
|
|
10
|
-
"description": "Load novahiz-humanizer on
|
|
9
|
+
"id": "R13-design-craft",
|
|
10
|
+
"description": "Load novahiz-humanizer, ui-slop-remover and ui-craft-rules on frontend design tasks only.",
|
|
11
11
|
"when": {
|
|
12
|
-
"
|
|
13
|
-
"
|
|
12
|
+
"match": "any",
|
|
13
|
+
"promptCategories": ["design-ui"],
|
|
14
|
+
"pathGlobs": ["**/*.css", "**/*.scss", "**/*.html"]
|
|
14
15
|
},
|
|
15
|
-
"require": ["novahiz-humanizer"]
|
|
16
|
+
"require": ["novahiz-humanizer", "ui-slop-remover", "ui-craft-rules"]
|
|
16
17
|
}
|
|
17
18
|
```
|
|
18
19
|
|
|
@@ -32,16 +33,16 @@ Content conditions are combined with AND against the selectors. A rule with `con
|
|
|
32
33
|
|
|
33
34
|
| Id | Condition | Requires |
|
|
34
35
|
| --- | --- | --- |
|
|
35
|
-
| R1-docs | text, data or config file, or a docs-writing prompt | `novahiz-humanizer` |
|
|
36
|
-
| R1-code-prose | code or design file whose change contains prose | `novahiz-humanizer` |
|
|
37
36
|
| R3-supabase | a Supabase path or a Supabase prompt | `novahiz-supabase`, `novahiz-postgres` |
|
|
38
|
-
| R4-playwright | a browser prompt category | `novahiz-browser` |
|
|
37
|
+
| R4-playwright | a browser prompt category, or a browser test path (`**/*.spec.ts`, `**/e2e/**`, `**/playwright/**`, …) | `novahiz-browser` |
|
|
39
38
|
| R6-Novahiz | a prompt in a workflow category | pipeline skills (`novahiz-plan`, `novahiz-clarify`, `novahiz-analyse`, `novahiz-implement`, `novahiz-converge`) |
|
|
40
39
|
| R9-code-review | a review prompt or a code file under review | `novahiz-code-review` |
|
|
41
40
|
| R10-security | an audit or security prompt | `novahiz-security` |
|
|
42
41
|
| R11-accessibility | a design-ui or audit prompt | `novahiz-wcag-audit` |
|
|
43
42
|
| R12-web-extract | a research prompt | `novahiz-web-extract` |
|
|
44
|
-
| R13-design-craft | a design-ui prompt or a style file (css/scss/less/html) | `
|
|
43
|
+
| R13-design-craft | a design-ui prompt or a style file (css/scss/less/html) | `novahiz-humanizer`, `ui-slop-remover`, `ui-craft-rules` |
|
|
44
|
+
|
|
45
|
+
`novahiz-humanizer` and `ui-slop-remover` are required only by R13, on frontend design tasks. They are not required on ordinary text, docs, or code edits.
|
|
45
46
|
|
|
46
47
|
## Resolution
|
|
47
48
|
|
|
@@ -75,7 +76,7 @@ The `gate` block in `novahiz.config.json` controls behavior:
|
|
|
75
76
|
|
|
76
77
|
- `enabled`: disable the whole gate.
|
|
77
78
|
- `mode`: `block`, `warn`, or `audit`.
|
|
78
|
-
- `envEscape`:
|
|
79
|
+
- `envEscape`: schema field only. The kill-switch variable is hardcoded to `NOVAHIZ_GATE` (not configurable); values `off`, `0`, `false`, `no`, `disabled` disable the gate. Read by the CLI, the hook mode, the MCP gate tool, and the opencode plugin.
|
|
79
80
|
- `tools`: the tool names the gate intercepts.
|
|
80
81
|
- `ignoreFiles`: globs skipped by the gate.
|
|
81
82
|
|