opencode-matrixx-v2 1.2.1 → 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -21
- package/dist/agents/agent-config.d.ts +3 -3
- package/dist/agents/dynamic-agent-prompt-builder.d.ts +2 -1
- package/dist/agents/oracle/system-prompt.d.ts +1 -1
- package/dist/cli.js +123 -105
- package/dist/config/schema/agent-names.d.ts +31 -13
- package/dist/config/schema/browser-automation.d.ts +2 -2
- package/dist/config/schema/context-mode.d.ts +1 -1
- package/dist/config/schema/hooks.d.ts +1 -2
- package/dist/config/schema/matrixx-config.d.ts +34 -17
- package/dist/features/background-agent/handle-index.d.ts +3 -3
- package/dist/features/background-agent/index.d.ts +6 -0
- package/dist/features/background-agent/manager/index.d.ts +5 -0
- package/dist/features/background-agent/manager/lifecycle.d.ts +29 -0
- package/dist/features/background-agent/{manager.d.ts → manager/manager.d.ts} +27 -97
- package/dist/features/background-agent/manager/reconcile.d.ts +20 -0
- package/dist/features/background-agent/manager/store.d.ts +33 -0
- package/dist/features/background-agent/manager/types.d.ts +42 -0
- package/dist/features/background-agent/message-dir.d.ts +1 -1
- package/dist/features/background-agent/notification-builder.d.ts +1 -1
- package/dist/features/background-agent/session-output.d.ts +2 -2
- package/dist/features/bdd/index.d.ts +2 -0
- package/dist/features/builtin-commands/index.d.ts +4 -0
- package/dist/features/builtin-commands/templates/stop-continuation.d.ts +1 -1
- package/dist/features/{hook-message-injector → context-injection/hook-bridge}/constants.d.ts +1 -1
- package/dist/features/{hook-message-injector → context-injection/hook-bridge}/index.d.ts +1 -1
- package/dist/features/{hook-message-injector → context-injection/hook-bridge}/injector.d.ts +1 -1
- package/dist/features/context-injection/index.d.ts +6 -0
- package/dist/features/context-injection/routing/index.d.ts +3 -0
- package/dist/features/{context-mode-routing → context-injection/routing}/system-transform.d.ts +3 -3
- package/dist/features/evolution/index.d.ts +6 -0
- package/dist/features/plan-contract/schema.d.ts +1 -1
- package/dist/features/preset-state/index.d.ts +2 -0
- package/dist/features/rtk-routing/index.d.ts +3 -0
- package/dist/features/rtk-routing/system-transform.d.ts +2 -2
- package/dist/features/session-state/index.d.ts +2 -0
- package/dist/{hooks/task-continuation-enforcer → features/task-session-scope}/staleness.d.ts +3 -3
- package/dist/{hooks/task-continuation-enforcer → features/task-session-scope}/todo.d.ts +1 -1
- package/dist/features/task-storage/index.d.ts +3 -0
- package/dist/features/task-storage/types.d.ts +2 -2
- package/dist/features/task-toast-manager/types.d.ts +1 -1
- package/dist/hooks/agent-usage-reminder/hook.d.ts +1 -1
- package/dist/hooks/agent-usage-reminder/index.d.ts +5 -0
- package/dist/hooks/anthropic-effort/index.d.ts +2 -0
- package/dist/hooks/auto-update-checker/hook/background-update-check.d.ts +1 -1
- package/dist/hooks/auto-update-checker/hook/config-errors-toast.d.ts +1 -1
- package/dist/hooks/auto-update-checker/hook/connected-providers-status.d.ts +1 -1
- package/dist/hooks/auto-update-checker/hook/model-cache-warning.d.ts +1 -1
- package/dist/hooks/auto-update-checker/hook/spinner-toast.d.ts +1 -1
- package/dist/hooks/auto-update-checker/hook/startup-toasts.d.ts +1 -1
- package/dist/hooks/auto-update-checker/hook/update-toasts.d.ts +1 -1
- package/dist/hooks/auto-update-checker/hook.d.ts +1 -1
- package/dist/hooks/background-notification/hook.d.ts +1 -1
- package/dist/hooks/background-notification/index.d.ts +9 -0
- package/dist/hooks/background-task-blocker/index.d.ts +8 -0
- package/dist/hooks/bash-file-read-guard.d.ts +1 -1
- package/dist/hooks/category-skill-reminder/hook.d.ts +2 -2
- package/dist/hooks/category-skill-reminder/index.d.ts +4 -0
- package/dist/hooks/comment-checker/index.d.ts +7 -0
- package/dist/hooks/compaction-context-injector/index.d.ts +2 -0
- package/dist/hooks/context-mode-enforcer/constants.d.ts +1 -1
- package/dist/hooks/context-mode-enforcer/hook.d.ts +1 -1
- package/dist/hooks/context-mode-enforcer/index.d.ts +4 -0
- package/dist/hooks/context-window-limit-recovery/client.d.ts +1 -1
- package/dist/hooks/context-window-limit-recovery/message-builder.d.ts +1 -1
- package/dist/hooks/context-window-limit-recovery/recovery-hook.d.ts +2 -2
- package/dist/hooks/context-window-monitor.d.ts +2 -2
- package/dist/hooks/dcp-nudge-sanitizer/hook.d.ts +1 -1
- package/dist/hooks/dcp-nudge-sanitizer/index.d.ts +3 -0
- package/dist/hooks/delegate-task-retry/hook.d.ts +1 -1
- package/dist/hooks/delegate-task-retry/index.d.ts +4 -0
- package/dist/hooks/design-intent-preserver/hook.d.ts +1 -1
- package/dist/hooks/design-intent-preserver/index.d.ts +4 -0
- package/dist/hooks/directory-agents-injector/hook.d.ts +2 -2
- package/dist/hooks/directory-agents-injector/index.d.ts +5 -0
- package/dist/hooks/directory-agents-injector/injector.d.ts +2 -2
- package/dist/hooks/directory-injector/factory.d.ts +2 -2
- package/dist/hooks/docs-lookup-guard/hook.d.ts +2 -2
- package/dist/hooks/docs-lookup-guard/index.d.ts +3 -0
- package/dist/hooks/document-reader-guard/hook.d.ts +2 -2
- package/dist/hooks/document-reader-guard/index.d.ts +3 -0
- package/dist/hooks/domain-keyword-detector/hook.d.ts +1 -1
- package/dist/hooks/edit-error-recovery/hook.d.ts +1 -1
- package/dist/hooks/edit-error-recovery/index.d.ts +2 -0
- package/dist/hooks/empty-task-response-detector.d.ts +1 -1
- package/dist/hooks/env-context-injector/flat.d.ts +1 -1
- package/dist/hooks/env-context-injector/index.d.ts +1 -1
- package/dist/hooks/env-file-write-guard/index.d.ts +3 -0
- package/dist/hooks/evolution-compressor/host-llm-call.d.ts +1 -1
- package/dist/hooks/evolution-compressor/index.d.ts +8 -0
- package/dist/hooks/evolution-hitl/index.d.ts +6 -0
- package/dist/hooks/evolution-quality-gate/index.d.ts +6 -0
- package/dist/hooks/evolution-watcher/index.d.ts +7 -1
- package/dist/hooks/hashline-read-enhancer/hook.d.ts +1 -1
- package/dist/hooks/hashline-read-enhancer/index.d.ts +2 -0
- package/dist/hooks/index.d.ts +0 -1
- package/dist/hooks/input-secret-guard/hook.d.ts +1 -1
- package/dist/hooks/input-secret-guard/index.d.ts +5 -0
- package/dist/hooks/interactive-bash-session/hook.d.ts +2 -2
- package/dist/hooks/interactive-bash-session/index.d.ts +7 -0
- package/dist/hooks/json-error-recovery/hook.d.ts +1 -1
- package/dist/hooks/keyword-detector/constants.d.ts +1 -1
- package/dist/hooks/keyword-detector/hook.d.ts +2 -2
- package/dist/hooks/keyword-detector/index.d.ts +4 -0
- package/dist/hooks/knowledge-hub-guard/hook.d.ts +1 -1
- package/dist/hooks/knowledge-hub-guard/index.d.ts +3 -0
- package/dist/hooks/knowledge-hub-injector/hook.d.ts +3 -3
- package/dist/hooks/knowledge-hub-injector/index.d.ts +2 -0
- package/dist/hooks/knowledge-hub-search-nudge/hook.d.ts +1 -1
- package/dist/hooks/knowledge-hub-search-nudge/index.d.ts +2 -0
- package/dist/hooks/matrix-loop/completion-promise-detector.d.ts +2 -2
- package/dist/hooks/matrix-loop/completion-verifier.d.ts +1 -1
- package/dist/hooks/matrix-loop/continuation-prompt-injector.d.ts +1 -1
- package/dist/hooks/matrix-loop/index.d.ts +12 -0
- package/dist/hooks/matrix-loop/matrix-loop-event-handler.d.ts +2 -2
- package/dist/hooks/matrix-loop/matrix-loop-hook.d.ts +2 -2
- package/dist/hooks/mouse-notepad/hook.d.ts +1 -1
- package/dist/hooks/mouse-notepad/index.d.ts +3 -0
- package/dist/hooks/niobe/event-handler.d.ts +2 -2
- package/dist/hooks/niobe/index.d.ts +16 -0
- package/dist/hooks/niobe/mission-continuation-injector.d.ts +1 -1
- package/dist/hooks/niobe/niobe-hook.d.ts +2 -2
- package/dist/hooks/niobe/recent-model-resolver.d.ts +1 -1
- package/dist/hooks/niobe/session-last-agent.d.ts +1 -1
- package/dist/hooks/niobe/tool-execute-after.d.ts +1 -1
- package/dist/hooks/niobe/tool-execute-before.d.ts +1 -1
- package/dist/hooks/non-interactive-env/index.d.ts +4 -0
- package/dist/hooks/non-interactive-env/non-interactive-env-hook.d.ts +1 -1
- package/dist/hooks/nudge-loop-breaker/hook.d.ts +2 -2
- package/dist/hooks/nudge-loop-breaker/index.d.ts +4 -0
- package/dist/hooks/oracle-md-only/agent-resolution.d.ts +1 -1
- package/dist/hooks/oracle-md-only/hook.d.ts +1 -1
- package/dist/hooks/oracle-md-only/index.d.ts +6 -0
- package/dist/hooks/plan-persister/hook.d.ts +2 -2
- package/dist/hooks/post-read-injector/hook.d.ts +2 -2
- package/dist/hooks/post-read-injector/injector.d.ts +1 -1
- package/dist/hooks/quality-gate/index.d.ts +2 -0
- package/dist/hooks/read-image-resizer/hook.d.ts +1 -1
- package/dist/hooks/read-image-resizer/index.d.ts +6 -0
- package/dist/hooks/rtk-bash-rewriter/hook.d.ts +1 -1
- package/dist/hooks/rtk-bash-rewriter/index.d.ts +4 -0
- package/dist/hooks/rules-injector/hook.d.ts +2 -2
- package/dist/hooks/rules-injector/index.d.ts +14 -0
- package/dist/hooks/runtime-fallback/event-handler.d.ts +1 -1
- package/dist/hooks/runtime-fallback/session-messages.d.ts +2 -2
- package/dist/hooks/runtime-fallback/types.d.ts +2 -2
- package/dist/hooks/secret-leak-guard/hook.d.ts +1 -1
- package/dist/hooks/secret-leak-guard/index.d.ts +5 -0
- package/dist/hooks/session-memory/hook.d.ts +1 -1
- package/dist/hooks/session-notification-scheduler.d.ts +1 -1
- package/dist/hooks/session-notification-sender.d.ts +1 -1
- package/dist/hooks/session-notification.d.ts +2 -2
- package/dist/hooks/session-recovery/hook.d.ts +1 -1
- package/dist/hooks/session-recovery/recover-thinking-block-order.d.ts +1 -1
- package/dist/hooks/session-recovery/recover-thinking-disabled-violation.d.ts +1 -1
- package/dist/hooks/session-recovery/recover-tool-result-missing.d.ts +1 -1
- package/dist/hooks/session-recovery/resume.d.ts +1 -1
- package/dist/hooks/session-recovery/storage/empty-text.d.ts +1 -1
- package/dist/hooks/session-recovery/storage/messages-reader.d.ts +1 -1
- package/dist/hooks/session-recovery/storage/parts-reader.d.ts +1 -1
- package/dist/hooks/session-recovery/storage/text-part-injector.d.ts +1 -1
- package/dist/hooks/session-recovery/storage/thinking-prepend.d.ts +1 -1
- package/dist/hooks/session-recovery/storage/thinking-strip.d.ts +1 -1
- package/dist/hooks/session-recovery/storage.d.ts +1 -1
- package/dist/hooks/session-recovery/types.d.ts +2 -2
- package/dist/hooks/silent-failure-guard/hook.d.ts +1 -1
- package/dist/hooks/software-dev-enforcement/index.d.ts +3 -0
- package/dist/hooks/start-work/index.d.ts +3 -0
- package/dist/hooks/start-work/start-work-hook.d.ts +1 -1
- package/dist/hooks/stop-continuation-guard/hook.d.ts +2 -2
- package/dist/hooks/stop-continuation-guard/index.d.ts +2 -0
- package/dist/hooks/subagent-block/hook.d.ts +2 -2
- package/dist/hooks/subagent-block/index.d.ts +3 -0
- package/dist/hooks/task-edit-guard/hook.d.ts +2 -2
- package/dist/hooks/task-edit-guard/index.d.ts +3 -0
- package/dist/hooks/task-notepad-writer/index.d.ts +4 -0
- package/dist/hooks/task-notepad-writer/notepad-path.d.ts +1 -1
- package/dist/hooks/task-resume-info/index.d.ts +2 -0
- package/dist/hooks/think-mode/hook.d.ts +1 -1
- package/dist/hooks/thinking-block-validator/index.d.ts +3 -0
- package/dist/hooks/tool-output-truncator.d.ts +1 -1
- package/dist/hooks/tool-pair-validator/index.d.ts +2 -0
- package/dist/hooks/unstable-agent-babysitter/unstable-agent-babysitter-hook.d.ts +2 -2
- package/dist/hooks/webfetch-redirect-guard/hook.d.ts +1 -1
- package/dist/hooks/webfetch-redirect-guard/index.d.ts +4 -0
- package/dist/hooks/write-existing-file-guard/hook.d.ts +2 -2
- package/dist/hooks/write-existing-file-guard/index.d.ts +2 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +45129 -45699
- package/dist/matrixx.schema.json +29 -8
- package/dist/{plugin-handlers → plugin/handlers}/agent-config-handler.d.ts +2 -2
- package/dist/{plugin-handlers → plugin/handlers}/category-config-resolver.d.ts +1 -1
- package/dist/{plugin-handlers → plugin/handlers}/command-config-handler.d.ts +1 -1
- package/dist/{plugin-handlers → plugin/handlers}/config-handler.d.ts +2 -2
- package/dist/{plugin-handlers → plugin/handlers}/mcp-config-handler.d.ts +1 -1
- package/dist/{plugin-handlers → plugin/handlers}/oracle-agent-config-builder.d.ts +3 -3
- package/dist/{plugin-handlers → plugin/handlers}/plugin-components-loader.d.ts +1 -1
- package/dist/{plugin-handlers → plugin/handlers}/provider-config-handler.d.ts +1 -1
- package/dist/{plugin-handlers → plugin/handlers}/task-permissions.d.ts +1 -1
- package/dist/{plugin-handlers → plugin/handlers}/tool-config-handler.d.ts +1 -1
- package/dist/plugin/hooks/create-continuation-hooks.d.ts +3 -4
- package/dist/plugin/hooks/create-session-hooks.d.ts +1 -1
- package/dist/plugin/hooks/create-skill-hooks.d.ts +1 -1
- package/dist/plugin/hooks/create-tool-guard-hooks.d.ts +1 -1
- package/dist/plugin/hooks/create-transform-hooks.d.ts +3 -3
- package/dist/plugin/index.d.ts +43 -0
- package/dist/plugin/message-hooks/context-injector.d.ts +3 -3
- package/dist/plugin/message-hooks/dcp-nudge-sanitizer.d.ts +1 -1
- package/dist/plugin/message-hooks/domain-keyword-detector.d.ts +2 -2
- package/dist/plugin/message-hooks/env-context-injector.d.ts +1 -1
- package/dist/plugin/message-hooks/evolution-hitl.d.ts +1 -1
- package/dist/plugin/message-hooks/index.d.ts +2 -2
- package/dist/plugin/message-hooks/knowledge-hub-injector.d.ts +3 -3
- package/dist/plugin/message-hooks/thinking-block-validator.d.ts +1 -1
- package/dist/plugin/message-hooks/tool-pair-validator.d.ts +1 -1
- package/dist/plugin/setup-domains/assemble.d.ts +28 -0
- package/dist/plugin/setup-domains/hooks.d.ts +33 -0
- package/dist/plugin/setup-domains/index.d.ts +5 -0
- package/dist/plugin/setup-domains/managers.d.ts +15 -0
- package/dist/plugin/setup-domains/tools.d.ts +23 -0
- package/dist/plugin/setup-domains.d.ts +10 -86
- package/dist/plugin/tool/available-categories.d.ts +3 -0
- package/dist/plugin/{chat-message.d.ts → tool/chat-message.d.ts} +2 -2
- package/dist/plugin/{context.d.ts → tool/context.d.ts} +2 -2
- package/dist/plugin/{event.d.ts → tool/event.d.ts} +3 -3
- package/dist/plugin/tool/index.d.ts +22 -0
- package/dist/plugin/{legacy-hooks.d.ts → tool/legacy-hooks.d.ts} +1 -1
- package/dist/plugin/{native-context.d.ts → tool/native-context.d.ts} +1 -1
- package/dist/plugin/{session-agent-resolver.d.ts → tool/session-agent-resolver.d.ts} +1 -1
- package/dist/plugin/{skill-context.d.ts → tool/skill-context.d.ts} +4 -4
- package/dist/plugin/{tool-catalog.d.ts → tool/tool-catalog.d.ts} +4 -4
- package/dist/plugin/{tool-definition.d.ts → tool/tool-definition.d.ts} +2 -2
- package/dist/plugin/{tool-execute-after.d.ts → tool/tool-execute-after.d.ts} +1 -1
- package/dist/plugin/{tool-execute-before.d.ts → tool/tool-execute-before.d.ts} +2 -2
- package/dist/plugin/{unstable-agent-babysitter.d.ts → tool/unstable-agent-babysitter.d.ts} +3 -3
- package/dist/shared/{agent-variant.d.ts → agent/agent-variant.d.ts} +1 -1
- package/dist/shared/agent/index.d.ts +5 -0
- package/dist/shared/{context-limits.d.ts → compaction/context-limits.d.ts} +1 -1
- package/dist/shared/{dynamic-truncator.d.ts → compaction/dynamic-truncator.d.ts} +2 -2
- package/dist/shared/compaction/index.d.ts +7 -0
- package/dist/shared/config/index.d.ts +8 -0
- package/dist/shared/{task-system-gating.d.ts → config/task-system-gating.d.ts} +2 -2
- package/dist/shared/index.d.ts +63 -61
- package/dist/shared/io/index.d.ts +8 -0
- package/dist/shared/model/index.d.ts +7 -0
- package/dist/shared/{model-requirements.d.ts → model/model-requirements.d.ts} +1 -1
- package/dist/shared/{model-suggestion-retry.d.ts → model/model-suggestion-retry.d.ts} +1 -1
- package/dist/shared/opencode/index.d.ts +5 -0
- package/dist/shared/{memory-backend-detect.d.ts → opencode/memory-backend-detect.d.ts} +1 -1
- package/dist/shared/outcome/index.d.ts +5 -0
- package/dist/shared/{dcp-switch-profile.d.ts → policy/dcp-switch-profile.d.ts} +1 -1
- package/dist/shared/policy/index.d.ts +7 -0
- package/dist/shared/{injection-notifier.d.ts → policy/injection-notifier.d.ts} +1 -1
- package/dist/shared/{rtk-enforcement.d.ts → policy/rtk-enforcement.d.ts} +1 -1
- package/dist/shared/runtime/index.d.ts +7 -0
- package/dist/shared/session/index.d.ts +14 -0
- package/dist/shared/{session-context-source.d.ts → session/session-context-source.d.ts} +1 -1
- package/dist/shared/text/index.d.ts +7 -0
- package/dist/{tools/shared → shared/tool}/define-tool.d.ts +1 -1
- package/dist/shared/{disabled-tools.d.ts → tool/disabled-tools.d.ts} +1 -1
- package/dist/shared/tool/index.d.ts +6 -0
- package/dist/shared/{merge-categories.d.ts → tool/merge-categories.d.ts} +1 -1
- package/dist/skills/{skills → builtin/bdd}/bdd-backend.d.ts +1 -1
- package/dist/skills/{skills → builtin/bdd}/bdd-contract.d.ts +1 -1
- package/dist/skills/{skills → builtin/bdd}/bdd-frontend.d.ts +1 -1
- package/dist/skills/{skills → builtin/bdd}/bdd-tests.d.ts +1 -1
- package/dist/skills/builtin/bdd/index.d.ts +4 -0
- package/dist/skills/builtin/core/dev-browser.d.ts +2 -0
- package/dist/skills/builtin/core/docker-master/build.d.ts +1 -0
- package/dist/skills/builtin/core/docker-master/compose.d.ts +1 -0
- package/dist/skills/builtin/core/docker-master/delivery.d.ts +1 -0
- package/dist/skills/builtin/core/docker-master/index.d.ts +2 -0
- package/dist/skills/builtin/core/docker-master/reference.d.ts +1 -0
- package/dist/skills/{skills → builtin/core}/document-reader.d.ts +1 -1
- package/dist/skills/builtin/core/git-master/commit.d.ts +1 -0
- package/dist/skills/builtin/core/git-master/execution.d.ts +1 -0
- package/dist/skills/builtin/core/git-master/history.d.ts +1 -0
- package/dist/skills/builtin/core/git-master/index.d.ts +2 -0
- package/dist/skills/builtin/core/git-master/rebase.d.ts +1 -0
- package/dist/skills/builtin/core/index.d.ts +19 -0
- package/dist/skills/{skills → builtin/core}/matrixx-self-config.d.ts +1 -1
- package/dist/skills/{skills → builtin/core}/playwright-cli.d.ts +1 -1
- package/dist/skills/{skills → builtin/core}/playwright.d.ts +1 -1
- package/dist/skills/{skills → builtin/core}/python-asyncio.d.ts +1 -1
- package/dist/skills/builtin/core/quality-gate.d.ts +2 -0
- package/dist/skills/builtin/core/remove-ai-slops.d.ts +2 -0
- package/dist/skills/{skills → builtin/core}/resilience-error-taxonomy.d.ts +1 -1
- package/dist/skills/{skills → builtin/core}/resilience-failure-hunting.d.ts +1 -1
- package/dist/skills/builtin/core/review-work.d.ts +2 -0
- package/dist/skills/{skills → builtin/core}/silent-failure-detection.d.ts +1 -1
- package/dist/skills/builtin/core/software-dev.d.ts +2 -0
- package/dist/skills/{skills → builtin/core}/systematic-debugging.d.ts +1 -1
- package/dist/skills/builtin/core/tdd-enforcer.d.ts +2 -0
- package/dist/skills/{skills → builtin/core}/telegram-bot.d.ts +1 -1
- package/dist/skills/builtin/core/ulw-research.d.ts +2 -0
- package/dist/skills/{skills → builtin/dsl}/dsl-codegen.d.ts +1 -1
- package/dist/skills/{skills → builtin/dsl}/dsl-composition.d.ts +1 -1
- package/dist/skills/{skills → builtin/dsl}/dsl-core.d.ts +1 -1
- package/dist/skills/{skills → builtin/dsl}/dsl-grammar.d.ts +1 -1
- package/dist/skills/{skills → builtin/dsl}/dsl-metamodel.d.ts +1 -1
- package/dist/skills/{skills → builtin/dsl}/dsl-model-transformation.d.ts +1 -1
- package/dist/skills/{skills → builtin/dsl}/dsl-pyecore-advanced.d.ts +1 -1
- package/dist/skills/{skills → builtin/dsl}/dsl-testing.d.ts +1 -1
- package/dist/skills/{skills → builtin/dsl}/dsl-textx-ecosystem.d.ts +1 -1
- package/dist/skills/{skills → builtin/dsl}/dsl-tooling.d.ts +1 -1
- package/dist/skills/{skills → builtin/dsl}/dsl-validation.d.ts +1 -1
- package/dist/skills/builtin/dsl/index.d.ts +11 -0
- package/dist/skills/{skills → builtin/frontend}/frontend-a11y.d.ts +1 -1
- package/dist/skills/{skills → builtin/frontend}/frontend-build-tooling.d.ts +1 -1
- package/dist/skills/{skills → builtin/frontend}/frontend-perf.d.ts +1 -1
- package/dist/skills/{skills → builtin/frontend}/frontend-react-nextjs.d.ts +1 -1
- package/dist/skills/{skills → builtin/frontend}/frontend-state-data.d.ts +1 -1
- package/dist/skills/{skills → builtin/frontend}/frontend-svelte-sveltekit.d.ts +1 -1
- package/dist/skills/{skills → builtin/frontend}/frontend-testing.d.ts +1 -1
- package/dist/skills/builtin/frontend/frontend-ui-ux.d.ts +2 -0
- package/dist/skills/builtin/frontend/index.d.ts +8 -0
- package/dist/skills/builtin/index.d.ts +7 -0
- package/dist/skills/{skills → builtin/market-data}/ccxt-pro-websockets.d.ts +1 -1
- package/dist/skills/{skills → builtin/market-data}/ccxt-rest.d.ts +1 -1
- package/dist/skills/{skills → builtin/market-data}/crypto-market-structure.d.ts +1 -1
- package/dist/skills/{skills → builtin/market-data}/data-quality-observability.d.ts +1 -1
- package/dist/skills/{skills → builtin/market-data}/grafana-dashboards.d.ts +1 -1
- package/dist/skills/builtin/market-data/index.d.ts +10 -0
- package/dist/skills/{skills → builtin/market-data}/influxdb-timeseries.d.ts +1 -1
- package/dist/skills/{skills → builtin/market-data}/market-data-architecture.d.ts +1 -1
- package/dist/skills/{skills → builtin/market-data}/market-data-bus.d.ts +1 -1
- package/dist/skills/{skills → builtin/market-data}/market-data-robustness-review.d.ts +1 -1
- package/dist/skills/{skills → builtin/market-data}/time-series-fundamentals.d.ts +1 -1
- package/dist/skills/builtin/security/index.d.ts +10 -0
- package/dist/skills/{skills → builtin/security}/security-api.d.ts +1 -1
- package/dist/skills/{skills → builtin/security}/security-audit.d.ts +1 -1
- package/dist/skills/{skills → builtin/security}/security-core.d.ts +1 -1
- package/dist/skills/{skills → builtin/security}/security-crypto.d.ts +1 -1
- package/dist/skills/{skills → builtin/security}/security-dast.d.ts +1 -1
- package/dist/skills/{skills → builtin/security}/security-dependencies.d.ts +1 -1
- package/dist/skills/{skills → builtin/security}/security-infra.d.ts +1 -1
- package/dist/skills/{skills → builtin/security}/security-review.d.ts +1 -1
- package/dist/skills/{skills → builtin/security}/security-sast.d.ts +1 -1
- package/dist/skills/{skills → builtin/security}/security-secrets.d.ts +1 -1
- package/dist/skills/builtin/zeromq/index.d.ts +7 -0
- package/dist/skills/{skills → builtin/zeromq}/zeromq-advanced-reqrep.d.ts +1 -1
- package/dist/skills/{skills → builtin/zeromq}/zeromq-architecture.d.ts +1 -1
- package/dist/skills/{skills → builtin/zeromq}/zeromq-core.d.ts +1 -1
- package/dist/skills/{skills → builtin/zeromq}/zeromq-frameworks.d.ts +1 -1
- package/dist/skills/{skills → builtin/zeromq}/zeromq-pubsub.d.ts +1 -1
- package/dist/skills/{skills → builtin/zeromq}/zeromq-reliability.d.ts +1 -1
- package/dist/skills/{skills → builtin/zeromq}/zeromq-sockets-patterns.d.ts +1 -1
- package/dist/skills/index.d.ts +10 -4
- package/dist/skills/{skills.d.ts → loader/factories.d.ts} +1 -1
- package/dist/skills/loader/index.d.ts +4 -0
- package/dist/tools/assembly/index.d.ts +9 -0
- package/dist/tools/assembly/tools.d.ts +1 -1
- package/dist/tools/ast-grep/index.d.ts +14 -0
- package/dist/tools/ast-grep/tools.d.ts +2 -2
- package/dist/tools/background-task/clients.d.ts +1 -1
- package/dist/tools/background-task/create-background-cancel.d.ts +1 -1
- package/dist/tools/background-task/create-background-output.d.ts +2 -2
- package/dist/tools/background-task/create-background-revive.d.ts +1 -1
- package/dist/tools/background-task/create-background-wait-all.d.ts +1 -1
- package/dist/tools/background-task/full-session-format.d.ts +1 -1
- package/dist/tools/background-task/index.d.ts +6 -0
- package/dist/tools/background-task/message-dir.d.ts +1 -1
- package/dist/tools/background-task/task-result-format.d.ts +1 -1
- package/dist/tools/bdd-create-contract/index.d.ts +4 -0
- package/dist/tools/bdd-create-contract/tools.d.ts +1 -1
- package/dist/tools/bdd-parse-gherkin/index.d.ts +4 -0
- package/dist/tools/bdd-parse-gherkin/tools.d.ts +1 -1
- package/dist/tools/bdd-pipeline/index.d.ts +9 -0
- package/dist/tools/bdd-pipeline/tools.d.ts +1 -1
- package/dist/tools/bdd-validate-contract/index.d.ts +2 -0
- package/dist/tools/bdd-validate-contract/tools.d.ts +1 -1
- package/dist/tools/dashboard-flux-validator/index.d.ts +5 -0
- package/dist/tools/dashboard-flux-validator/tools.d.ts +2 -2
- package/dist/tools/delegate-task/diagnostic-shape.d.ts +1 -1
- package/dist/tools/delegate-task/error-formatting.d.ts +2 -2
- package/dist/tools/delegate-task/executor-types.d.ts +1 -1
- package/dist/tools/delegate-task/model-selection.d.ts +1 -1
- package/dist/tools/delegate-task/sync-prompt-sender.d.ts +1 -1
- package/dist/tools/delegate-task/sync-session-poller.d.ts +1 -1
- package/dist/tools/delegate-task/tools.d.ts +1 -1
- package/dist/tools/delegate-task/types.d.ts +1 -1
- package/dist/tools/evolution/index.d.ts +6 -0
- package/dist/tools/evolution/tools.d.ts +2 -2
- package/dist/tools/github-search/index.d.ts +6 -0
- package/dist/tools/github-search/tools.d.ts +2 -2
- package/dist/tools/glob/index.d.ts +6 -0
- package/dist/tools/glob/tools.d.ts +2 -2
- package/dist/tools/grep/index.d.ts +7 -0
- package/dist/tools/grep/tools.d.ts +2 -2
- package/dist/tools/handoff/create-handler.d.ts +1 -1
- package/dist/tools/handoff/index.d.ts +9 -0
- package/dist/tools/handoff/tools.d.ts +2 -2
- package/dist/tools/hashline-edit/hashline-edit-executor.d.ts +1 -1
- package/dist/tools/hashline-edit/tools.d.ts +1 -1
- package/dist/tools/index.d.ts +2 -2
- package/dist/tools/interactive-bash/tools.d.ts +1 -1
- package/dist/tools/knowledge-hub-confirm/index.d.ts +2 -0
- package/dist/tools/knowledge-hub-confirm/tools.d.ts +2 -2
- package/dist/tools/look-at/index.d.ts +8 -0
- package/dist/tools/look-at/multimodal-agent-metadata.d.ts +1 -1
- package/dist/tools/look-at/tools.d.ts +2 -2
- package/dist/tools/lsp/diagnostics-tool.d.ts +1 -1
- package/dist/tools/lsp/find-references-tool.d.ts +1 -1
- package/dist/tools/lsp/goto-definition-tool.d.ts +1 -1
- package/dist/tools/lsp/rename-tools.d.ts +1 -1
- package/dist/tools/lsp/symbols-tool.d.ts +1 -1
- package/dist/tools/market-symbol-validator/index.d.ts +5 -0
- package/dist/tools/market-symbol-validator/tools.d.ts +2 -2
- package/dist/tools/notepad/notepad-append.d.ts +2 -2
- package/dist/tools/notepad/notepad-create.d.ts +2 -2
- package/dist/tools/notepad/notepad-list.d.ts +2 -2
- package/dist/tools/notepad/notepad-read.d.ts +2 -2
- package/dist/tools/pdf-extract-figures/index.d.ts +2 -0
- package/dist/tools/pdf-extract-figures/tools.d.ts +1 -1
- package/dist/tools/plan/plan-create.d.ts +2 -2
- package/dist/tools/plan/plan-delete.d.ts +2 -2
- package/dist/tools/plan/plan-list.d.ts +2 -2
- package/dist/tools/plan/plan-read.d.ts +2 -2
- package/dist/tools/plan/plan-tasks.d.ts +2 -2
- package/dist/tools/plan/plan-update.d.ts +2 -2
- package/dist/tools/preset/index.d.ts +2 -0
- package/dist/tools/preset/tools.d.ts +1 -1
- package/dist/tools/session-cleanup/index.d.ts +2 -2
- package/dist/tools/session-manager/index.d.ts +7 -0
- package/dist/tools/session-manager/storage.d.ts +3 -3
- package/dist/tools/session-manager/tools.d.ts +2 -2
- package/dist/tools/silent-failure-scanner/tools.d.ts +2 -2
- package/dist/tools/skill/index.d.ts +4 -0
- package/dist/tools/skill/tools.d.ts +1 -1
- package/dist/tools/slashcommand/index.d.ts +7 -0
- package/dist/tools/slashcommand/slashcommand-tool.d.ts +1 -1
- package/dist/tools/staleness-gap-checker/tools.d.ts +2 -2
- package/dist/tools/task/task-cleanup.d.ts +2 -2
- package/dist/tools/task/task-create.d.ts +2 -2
- package/dist/tools/task/task-get.d.ts +2 -2
- package/dist/tools/task/task-list.d.ts +2 -2
- package/dist/tools/task/task-update.d.ts +2 -2
- package/dist/tools/task/types.d.ts +10 -10
- package/dist/tools.js +154 -155
- package/package.json +1 -1
- package/dist/hooks/task-continuation-enforcer/abort-detection.d.ts +0 -2
- package/dist/hooks/task-continuation-enforcer/constants.d.ts +0 -9
- package/dist/hooks/task-continuation-enforcer/continuation-injection.d.ts +0 -14
- package/dist/hooks/task-continuation-enforcer/countdown.d.ts +0 -16
- package/dist/hooks/task-continuation-enforcer/handler.d.ts +0 -13
- package/dist/hooks/task-continuation-enforcer/idle-event.d.ts +0 -13
- package/dist/hooks/task-continuation-enforcer/index.d.ts +0 -5
- package/dist/hooks/task-continuation-enforcer/non-idle-events.d.ts +0 -6
- package/dist/hooks/task-continuation-enforcer/session-state.d.ts +0 -10
- package/dist/hooks/task-continuation-enforcer/types.d.ts +0 -54
- package/dist/plugin/available-categories.d.ts +0 -3
- package/dist/skills/skills/dev-browser.d.ts +0 -2
- package/dist/skills/skills/docker-master.d.ts +0 -2
- package/dist/skills/skills/frontend-ui-ux.d.ts +0 -2
- package/dist/skills/skills/git-master.d.ts +0 -2
- package/dist/skills/skills/index.d.ts +0 -69
- package/dist/skills/skills/quality-gate.d.ts +0 -2
- package/dist/skills/skills/remove-ai-slops.d.ts +0 -2
- package/dist/skills/skills/review-work.d.ts +0 -2
- package/dist/skills/skills/software-dev.d.ts +0 -2
- package/dist/skills/skills/tdd-enforcer.d.ts +0 -2
- package/dist/skills/skills/ulw-research.d.ts +0 -2
- package/dist/features/{hook-message-injector → context-injection/hook-bridge}/sdk-message-cache.d.ts +0 -0
- package/dist/features/{hook-message-injector → context-injection/hook-bridge}/types.d.ts +0 -0
- package/dist/features/{context-injector → context-injection/injector}/collector.d.ts +0 -0
- package/dist/features/{context-injector → context-injection/injector}/index.d.ts +0 -0
- package/dist/features/{context-injector → context-injection/injector}/injector.d.ts +0 -0
- package/dist/features/{context-injector → context-injection/injector}/types.d.ts +0 -0
- package/dist/features/{context-mode-routing → context-injection/routing}/routing-block.d.ts +0 -0
- package/dist/{plugin-handlers → plugin/handlers}/agent-priority-order.d.ts +0 -0
- package/dist/{plugin-handlers → plugin/handlers}/agent-tool-allowlist.d.ts +0 -0
- package/dist/{plugin-handlers → plugin/handlers}/formatter-config-handler.d.ts +0 -0
- package/dist/{plugin-handlers → plugin/handlers}/index.d.ts +0 -0
- package/dist/{plugin-handlers → plugin/handlers}/plan-model-inheritance.d.ts +0 -0
- package/dist/plugin/{chat-params.d.ts → tool/chat-params.d.ts} +0 -0
- package/dist/plugin/{event-dispatch.d.ts → tool/event-dispatch.d.ts} +0 -0
- package/dist/plugin/{recent-synthetic-idles.d.ts → tool/recent-synthetic-idles.d.ts} +0 -0
- package/dist/plugin/{session-status-normalizer.d.ts → tool/session-status-normalizer.d.ts} +0 -0
- package/dist/plugin/{tool-execute-before.bench.d.ts → tool/tool-execute-before.bench.d.ts} +0 -0
- package/dist/plugin/{tool-policy.d.ts → tool/tool-policy.d.ts} +0 -0
- package/dist/shared/{agent-display-names.d.ts → agent/agent-display-names.d.ts} +0 -0
- package/dist/shared/{agent-label.d.ts → agent/agent-label.d.ts} +0 -0
- package/dist/shared/{permission-compat.d.ts → agent/permission-compat.d.ts} +0 -0
- package/dist/shared/{safe-create-hook.d.ts → agent/safe-create-hook.d.ts} +0 -0
- package/dist/shared/{compaction-log.d.ts → compaction/compaction-log.d.ts} +0 -0
- package/dist/{hooks/shared → shared/compaction}/compaction-model-resolver.d.ts +0 -0
- package/dist/shared/{context-limit-resolver.d.ts → compaction/context-limit-resolver.d.ts} +0 -0
- package/dist/shared/{token-cache.d.ts → compaction/token-cache.d.ts} +0 -0
- package/dist/shared/{truncate-description.d.ts → compaction/truncate-description.d.ts} +0 -0
- package/dist/shared/{config-errors.d.ts → config/config-errors.d.ts} +0 -0
- package/dist/shared/{data-path.d.ts → config/data-path.d.ts} +0 -0
- package/dist/shared/{deep-merge.d.ts → config/deep-merge.d.ts} +0 -0
- package/dist/shared/{opencode-config-dir.d.ts → config/opencode-config-dir.d.ts} +0 -0
- package/dist/shared/{opencode-storage-detection.d.ts → config/opencode-storage-detection.d.ts} +0 -0
- package/dist/shared/{opencode-storage-paths.d.ts → config/opencode-storage-paths.d.ts} +0 -0
- package/dist/shared/{opencode-version.d.ts → config/opencode-version.d.ts} +0 -0
- package/dist/shared/{binary-downloader.d.ts → io/binary-downloader.d.ts} +0 -0
- package/dist/shared/{file-reference-resolver.d.ts → io/file-reference-resolver.d.ts} +0 -0
- package/dist/shared/{file-utils.d.ts → io/file-utils.d.ts} +0 -0
- package/dist/shared/{frontmatter.d.ts → io/frontmatter.d.ts} +0 -0
- package/dist/shared/{port-utils.d.ts → io/port-utils.d.ts} +0 -0
- package/dist/shared/{shell-env.d.ts → io/shell-env.d.ts} +0 -0
- package/dist/shared/{shell-tool-name.d.ts → io/shell-tool-name.d.ts} +0 -0
- package/dist/shared/{zip-extractor.d.ts → io/zip-extractor.d.ts} +0 -0
- package/dist/shared/{connected-providers-cache.d.ts → model/connected-providers-cache.d.ts} +0 -0
- package/dist/shared/{model-availability.d.ts → model/model-availability.d.ts} +0 -0
- package/dist/shared/{model-resolution-pipeline.d.ts → model/model-resolution-pipeline.d.ts} +0 -0
- package/dist/shared/{model-sanitizer.d.ts → model/model-sanitizer.d.ts} +0 -0
- package/dist/shared/{normalize-sdk-response.d.ts → model/normalize-sdk-response.d.ts} +0 -0
- package/dist/shared/{external-plugin-detector.d.ts → opencode/external-plugin-detector.d.ts} +0 -0
- package/dist/shared/{opencode-http-api.d.ts → opencode/opencode-http-api.d.ts} +0 -0
- package/dist/shared/{opencode-message-dir.d.ts → opencode/opencode-message-dir.d.ts} +0 -0
- package/dist/shared/{opencode-server-auth.d.ts → opencode/opencode-server-auth.d.ts} +0 -0
- package/dist/shared/{poll-timeout-outcome.d.ts → outcome/poll-timeout-outcome.d.ts} +0 -0
- package/dist/shared/{revive-outcome.d.ts → outcome/revive-outcome.d.ts} +0 -0
- package/dist/shared/{saturated-outcome.d.ts → outcome/saturated-outcome.d.ts} +0 -0
- package/dist/shared/{sentinels.d.ts → outcome/sentinels.d.ts} +0 -0
- package/dist/shared/{wallclock-outcome.d.ts → outcome/wallclock-outcome.d.ts} +0 -0
- package/dist/shared/{code-patterns.d.ts → policy/code-patterns.d.ts} +0 -0
- package/dist/shared/{context-mode-enforcement.d.ts → policy/context-mode-enforcement.d.ts} +0 -0
- package/dist/shared/{dcp-guidance.d.ts → policy/dcp-guidance.d.ts} +0 -0
- package/dist/shared/{status-types.d.ts → policy/status-types.d.ts} +0 -0
- package/dist/shared/{delay.d.ts → runtime/delay.d.ts} +0 -0
- package/dist/shared/{is-abort-error.d.ts → runtime/is-abort-error.d.ts} +0 -0
- package/dist/shared/{logger.d.ts → runtime/logger.d.ts} +0 -0
- package/dist/shared/{notify.d.ts → runtime/notify.d.ts} +0 -0
- package/dist/shared/{record-type-guard.d.ts → runtime/record-type-guard.d.ts} +0 -0
- package/dist/shared/{unwrap-list.d.ts → runtime/unwrap-list.d.ts} +0 -0
- package/dist/shared/{with-timeout.d.ts → runtime/with-timeout.d.ts} +0 -0
- package/dist/shared/{awaiting-user.d.ts → session/awaiting-user.d.ts} +0 -0
- package/dist/shared/{first-message-variant.d.ts → session/first-message-variant.d.ts} +0 -0
- package/dist/shared/{session-cursor.d.ts → session/session-cursor.d.ts} +0 -0
- package/dist/shared/{session-directory-resolver.d.ts → session/session-directory-resolver.d.ts} +0 -0
- package/dist/shared/{session-facade.d.ts → session/session-facade.d.ts} +0 -0
- package/dist/shared/{session-id.d.ts → session/session-id.d.ts} +0 -0
- package/dist/shared/{session-injected-paths.d.ts → session/session-injected-paths.d.ts} +0 -0
- package/dist/shared/{session-message.d.ts → session/session-message.d.ts} +0 -0
- package/dist/shared/{session-state.d.ts → session/session-state.d.ts} +0 -0
- package/dist/shared/{session-utils.d.ts → session/session-utils.d.ts} +0 -0
- package/dist/shared/{state-root.d.ts → session/state-root.d.ts} +0 -0
- package/dist/shared/{transcript-path.d.ts → session/transcript-path.d.ts} +0 -0
- package/dist/shared/{with-ephemeral-session.d.ts → session/with-ephemeral-session.d.ts} +0 -0
- package/dist/shared/{error-formatting.d.ts → text/error-formatting.d.ts} +0 -0
- package/dist/shared/{escape-regexp.d.ts → text/escape-regexp.d.ts} +0 -0
- package/dist/shared/{format-bytes.d.ts → text/format-bytes.d.ts} +0 -0
- package/dist/shared/{format-duration.d.ts → text/format-duration.d.ts} +0 -0
- package/dist/shared/{json-safe-metadata.d.ts → text/json-safe-metadata.d.ts} +0 -0
- package/dist/shared/{jsonc-parser.d.ts → text/jsonc-parser.d.ts} +0 -0
- package/dist/shared/{system-directive.d.ts → text/system-directive.d.ts} +0 -0
- package/dist/shared/{agent-tool-restrictions.d.ts → tool/agent-tool-restrictions.d.ts} +0 -0
- package/dist/shared/{skill-path-resolver.d.ts → tool/skill-path-resolver.d.ts} +0 -0
- package/dist/shared/{tool-guards.d.ts → tool/tool-guards.d.ts} +0 -0
- package/dist/skills/{lazy-skill-helper.d.ts → loader/lazy-skill-helper.d.ts} +0 -0
- package/dist/skills/{schemas → loader/schemas}/audits-store.d.ts +1 -1
- package/dist/skills/{schemas → loader/schemas}/security-audit.d.ts +2 -2
- /package/dist/skills/{skills.transform.d.ts → loader/skills.transform.d.ts} +0 -0
- /package/dist/skills/{types.d.ts → loader/types.d.ts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const referenceSection = "## SECTION 6 \u2014 SHARED KNOWLEDGE\n\n<shared_knowledge>\n### Multi-Stage Build Rationale\n\n```\nBENEFITS:\n 1. Smaller final images - only runtime dependencies\n 2. Separate concerns - dev deps isolated from production\n 3. Security - no compilers or package managers in final image\n 4. Cache independence - build and runtime stages cache separately\n```\n\n### Health Check Patterns\n\n```dockerfile\nHEALTHCHECK CMD curl -f http://localhost:3000/health || exit 1\nHEALTHCHECK CMD [\"curl\", \"-f\", \"http://localhost:3000/health\"]\nHEALTHCHECK --interval=30s --timeout=30s --start-period=5s --retries=3 \\\n CMD curl -f http://localhost:3000/health || exit 1\n```\n\n### .dockerignore\n\n```\nThe .dockerignore file is NOT optional. Without it:\n - Full directory sent as build context (100MB+)\n - Secrets may be leaked (node_modules may contain .env files)\n - Builds are unnecessarily slow\n```\n\n### Layer Caching Fundamentals\n\n```\nEach Dockerfile instruction creates a cacheable layer.\nCACHE HITS: same FROM image, same instruction text, same file contents.\nINVALIDATION: when a layer changes, all subsequent layers rebuild.\nKEY STRATEGIES:\n - COPY package.json + lockfile BEFORE source code\n - Combine RUN commands with && to minimize layers\n - Use BuildKit cache mounts for persistent cross-build caches\n```\n\n### Volume Permission Patterns\n\n```\nSolutions for bind mount UID/GID mismatch:\n 1. Run with host UID: docker run --user \"$(id -u):$(id -g)\" -v \"$(pwd):/app\" IMAGE\n 2. Create matching user in Dockerfile: adduser --system --uid 1001 appuser\n 3. Startup script adjusts permissions dynamically\n```\n\n### Docker Context vs Dockerfile Location\n\n```\ndocker build [OPTIONS] CONTEXT_PATH\nThe -f flag specifies the Dockerfile. The final argument is the build context.\n docker build -f app/Dockerfile . # Dockerfile at app/Dockerfile, context is .\n docker build . # Dockerfile in context, context is .\n```\n\n### ARG vs ENV\n\n```\nARG (build-time): available during docker build, NOT persisted in final image.\n Syntax: ARG NODE_VERSION=20\n Pass: docker build --build-arg NODE_VERSION=22 .\n\nENV (runtime): available during build AND persisted in final image.\n Syntax: ENV NODE_ENV=production\n Visible via docker inspect.\n\nSECURITY: NEVER use ENV or ARG for secrets - they leak in image history.\n Use BuildKit --secret instead (see Phase I4).\n```\n\n### Security Cross-Reference\n\nFor a complete Dockerfile hardening checklist, load the `security-infra` skill (covers Trivy scanning, Grype, Dockerfile hardening, and more):\n- Container image scanning with Trivy and Grype\n- Vulnerability severity classification and remediation\n- Docker Bench Security assessment\n- Supply chain security for containerized applications\n</shared_knowledge>\n\n---\n\n## SECTION 7 \u2014 DESTRUCTIVE COMMAND GUARDS\n\n<critical_warning>\n**The following Docker commands are DESTRUCTIVE \u2014 they cause PERMANENT DATA LOSS or SECURITY BREACHES.**\n\n---\n\n### GUARD 1: docker system prune -af --volumes\n\n```bash\n# DESTROYS ALL unused containers, networks, images, build cache, AND volumes\ndocker system prune -af --volumes\n\n# Safer alternatives:\ndocker system prune -f # dangling images, stopped containers\ndocker system prune -af # + unused images (not just dangling)\n```\n\n**Irreversible:** All unattached volumes deleted permanently. Build cache cleared. No confirmation with `-f`.\n\n**When appropriate:** CI runners and dev environments after confirming no important volumes exist (`docker volume ls`).\n\n---\n\n### GUARD 2: docker rmi -f\n\n```bash\ndocker rmi -f IMAGE # force-removes even if containers reference it\n```\n\n**Irreversible:** Image layers deleted \u2014 must pull or rebuild. Running containers may become unstable.\n**Prefer:** Remove containers first, then `docker rmi` without `-f`.\n\n---\n\n### GUARD 3: --privileged Flag\n\n```bash\n# Bypasses ALL Docker security isolation - full host device access\ndocker run --privileged IMAGE\n\n# Safer alternatives:\ndocker run --cap-add SYS_ADMIN --cap-add NET_ADMIN IMAGE\ndocker run --device /dev/snd:/dev/snd IMAGE\n```\n\n**When appropriate:** Docker-in-Docker in CI, kernel module manipulation (extremely rare).\n\n**Irreversible:** Container can escape Docker isolation, modify host system, gain root-equivalent host access.\n**NEVER use --privileged in production without documented security review.**\n</critical_warning>\n\n---\n\n## SECTION 8 \u2014 HARD RULES\n\n<critical_warning>\n**These rules are NON-NEGOTIABLE. Violations are automatic failures.**\n\n```\n1. NEVER use `latest` tag without a specific version adjacent \u2014 tag explicitly\n2. NEVER run containers with `--privileged` without documenting security implications\n3. NEVER use Compose v1 as primary syntax - use docker compose (v2)\n4. NEVER bake secrets into images \u2014 use BuildKit `--secret` or runtime env\n5. NEVER use `ADD` when `COPY` suffices (ADD auto-extracts archives and fetches URLs)\n6. NEVER skip `.dockerignore` \u2014 always include the minimum context\n7. NEVER run as root in containers when a non-root user works\n8. NEVER use `latest` CI tag for production deployments\n9. NEVER suggest orchestration platforms or alternative container runtimes (out of scope)\n11. Always verify Docker is available before running commands (`command -v docker`)\n```\n</critical_warning>\n\n---\n\n## SECTION 9 \u2014 ANTI-PATTERNS\n\n<anti_patterns>\n### Image and Build Anti-Patterns\n\n| Anti-Pattern | Why It's Wrong | Correct Approach |\n|---|---|---|\n| `latest` tag in production | Unreproducible builds, no rollback | Pin to semver or SHA tag |\n| Single-stage Dockerfiles | Images include build tools, 10x larger | Multi-stage builds (B1) |\n| Compose v1 today | Unmaintained since July 2023 | Use docker compose (v2) |\n| Running as root in containers | Security risk if compromised | Add `USER` directive |\n| `COPY .` without .dockerignore | Sends entire project as context | Always include .dockerignore |\n| Sequential RUN without chaining | Creates unnecessary layers | Chain with `&&` |\n| `--no-cache` on every build | Defeats layer caching entirely | Use selective `--no-cache-filter` |\n| `ADD` for `COPY` purposes | ADD auto-extracts, fetches URLs | Use `COPY` for local files |\n| Ignoring `HEALTHCHECK` | No self-healing ability | Always define health checks |\n| `ARG` for secrets | Leaks in image history | Use BuildKit `--secret` |\n\n### Compose Anti-Patterns\n\n| Anti-Pattern | Why It's Wrong | Correct Approach |\n|---|---|---|\n| Hardcoding secrets in YAML | Secrets committed to git | Use `.env` file or docker secrets |\n| `depends_on` without health checks | Service may start before dependency ready | Add `condition: service_healthy` |\n| Missing resource limits | One service can starve others | Set `deploy.resources.limits` |\n| Default network only | No isolation between services | Define custom networks |\n\n### CI/CD Anti-Patterns\n\n| Anti-Pattern | Why It's Wrong | Correct Approach |\n|---|---|---|\n| Pushing `latest` without SHA tag | Cannot identify or rollback build | Include SHA or version tag |\n| Single-platform builds | ARM users can't run your image | Build for amd64 + arm64 |\n| No cache-from in CI | Every build starts from scratch | Use `type=gha` cache |\n| Building without tests | Broken images in registry | Test before build (I1.2) |\n\n### General Anti-Patterns\n\n```\n1. \"It works on my machine\" \u2014 use compose for reproducible environments\n2. One container for multiple processes \u2014 use multiple services\n3. Storing state in containers \u2014 use volumes for persistence\n4. :latest in production \u2014 always pin versions\n5. Disabling security scanning \u2014 scan images before pushing\n```\n</anti_patterns>\n\n---\n\n## Quick Reference\n\n| Goal | Command |\n|------|---------|\n| Build an image | `docker build -t name:tag .` |\n| Build with BuildKit | `DOCKER_BUILDKIT=1 docker build .` |\n| Run a container | `docker run -d --name myapp -p 3000:3000 IMAGE` |\n| List running/all containers | `docker ps` / `docker ps -a` |\n| Follow logs | `docker logs -f CONTAINER` |\n| Exec into container | `docker exec -it CONTAINER sh` |\n| Compose up/down | `docker compose up -d` / `docker compose down` |\n| Compose logs/config | `docker compose logs -f` / `docker compose config` |\n| BuildX multi-arch | `docker buildx build --platform linux/amd64,linux/arm64 --push .` |\n| Prune dangling/all | `docker system prune` / `docker system prune -a` |\n| Login to registry | `docker login REGISTRY` |\n| System disk usage | `docker system df` |\n\n### Decision Tree\n\n```\nWhat is the user asking about?\n +-- Building images / Dockerfile? -> BUILD mode (B1-B5)\n +-- Service definitions / compose? -> COMPOSE mode (C1-C6)\n +-- Debugging / troubleshooting? -> DEBUG mode (D1-D5)\n +-- Optimization / reducing size? -> OPTIMIZE mode (O1-O4)\n +-- CI/CD / registry / deployment? -> CICD mode (I1-I4)\n +-- Mixed or unclear?\n -> Check VERSION first, then execute modes sequentially\n```\n\n### Mode Map\n\n| Mode | Entry Phase | Key Phase | Exit Verification |\n|------|-------------|-----------|-------------------|\n| BUILD | V1 (Version) | B1 (Multi-stage) | `docker build .` succeeds |\n| COMPOSE | V1 (Version) | C4 (Health Checks) | `docker compose config` validates |\n| DEBUG | V1 (Version) | D4 (Common Issues) | Container runs as expected |\n| OPTIMIZE | V1 (Version) | O1 (Image Size) | `docker image ls` shows reduced size |\n| CICD | V1 (Version) | I1 (GitHub Actions) | Image pushed to registry |\n";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { BuiltinSkill } from "
|
|
1
|
+
import type { BuiltinSkill } from "../../loader/types";
|
|
2
2
|
export declare const documentReaderSkill: BuiltinSkill;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const commitSection = "# Git Master Agent\n\nYou are a Git expert combining three specializations:\n1. **Commit Architect**: Atomic commits, dependency ordering, style detection\n2. **Rebase Surgeon**: History rewriting, conflict resolution, branch cleanup \n3. **History Archaeologist**: Finding when/where specific changes were introduced\n\n---\n\n## MODE DETECTION (FIRST STEP)\n\nAnalyze the user's request to determine operation mode:\n\n| User Request Pattern | Mode | Jump To |\n|---------------------|------|---------|\n| \"commit\", \"\uCEE4\uBC0B\", changes to commit | `COMMIT` | Phase 0-6 (existing) |\n| \"rebase\", \"\uB9AC\uBCA0\uC774\uC2A4\", \"squash\", \"cleanup history\" | `REBASE` | Phase R1-R4 |\n| \"find when\", \"who changed\", \"\uC5B8\uC81C \uBC14\uB00C\uC5C8\", \"git blame\", \"bisect\" | `HISTORY_SEARCH` | Phase H1-H3 |\n| \"smart rebase\", \"rebase onto\" | `REBASE` | Phase R1-R4 |\n\n**CRITICAL**: Don't default to COMMIT mode. Parse the actual request.\n\n---\n\n## CORE PRINCIPLE: MULTIPLE COMMITS BY DEFAULT (NON-NEGOTIABLE)\n\n<critical_warning>\n**ONE COMMIT = AUTOMATIC FAILURE**\n\nYour DEFAULT behavior is to CREATE MULTIPLE COMMITS.\nSingle commit is a BUG in your logic, not a feature.\n\n**HARD RULE:**\n```\n3+ files changed -> MUST be 2+ commits (NO EXCEPTIONS)\n5+ files changed -> MUST be 3+ commits (NO EXCEPTIONS)\n10+ files changed -> MUST be 5+ commits (NO EXCEPTIONS)\n```\n\n**If you're about to make 1 commit from multiple files, YOU ARE WRONG. STOP AND SPLIT.**\n\n**SPLIT BY:**\n| Criterion | Action |\n|-----------|--------|\n| Different directories/modules | SPLIT |\n| Different component types (model/service/view) | SPLIT |\n| Can be reverted independently | SPLIT |\n| Different concerns (UI/logic/config/test) | SPLIT |\n| New file vs modification | SPLIT |\n\n**ONLY COMBINE when ALL of these are true:**\n- EXACT same atomic unit (e.g., function + its test)\n- Splitting would literally break compilation\n- You can justify WHY in one sentence\n\n**MANDATORY SELF-CHECK before committing:**\n```\n\"I am making N commits from M files.\"\nIF N == 1 AND M > 2:\n -> WRONG. Go back and split.\n -> Write down WHY each file must be together.\n -> If you can't justify, SPLIT.\n```\n</critical_warning>\n\n---\n\n## PHASE 0: Parallel Context Gathering (MANDATORY FIRST STEP)\n\n<parallel_analysis>\n**Execute ALL of the following commands IN PARALLEL to minimize latency:**\n\n```bash\n# Group 1: Current state\ngit status\ngit diff --staged --stat\ngit diff --stat\n\n# Group 2: History context \ngit log -30 --oneline\ngit log -30 --pretty=format:\"%s\"\n\n# Group 3: Branch context\ngit branch --show-current\ngit merge-base HEAD main 2>/dev/null || git merge-base HEAD master 2>/dev/null\ngit rev-parse --abbrev-ref @{upstream} 2>/dev/null || echo \"NO_UPSTREAM\"\ngit log --oneline $(git merge-base HEAD main 2>/dev/null || git merge-base HEAD master 2>/dev/null)..HEAD 2>/dev/null\n```\n\n**Capture these data points simultaneously:**\n1. What files changed (staged vs unstaged)\n2. Recent 30 commit messages for style detection\n3. Branch position relative to main/master\n4. Whether branch has upstream tracking\n5. Commits that would go in PR (local only)\n</parallel_analysis>\n\n---\n\n## PHASE 1: Style Detection (BLOCKING - MUST OUTPUT BEFORE PROCEEDING)\n\n<style_detection>\n**THIS PHASE HAS MANDATORY OUTPUT** - You MUST print the analysis result before moving to Phase 2.\n\n### 1.1 Language Detection\n\n```\nCount from git log -30:\n- Korean characters: N commits\n- English only: M commits\n- Mixed: K commits\n\nDECISION:\n- If Korean >= 50% -> KOREAN\n- If English >= 50% -> ENGLISH \n- If Mixed -> Use MAJORITY language\n```\n\n### 1.2 Commit Style Classification\n\n| Style | Pattern | Example | Detection Regex |\n|-------|---------|---------|-----------------|\n| `SEMANTIC` | `type: message` or `type(scope): message` | `feat: add login` | `/^(feat\\|fix\\|chore\\|refactor\\|docs\\|test\\|ci\\|style\\|perf\\|build)(\\(.+\\))?:/` |\n| `PLAIN` | Just description, no prefix | `Add login feature` | No conventional prefix, >3 words |\n| `SENTENCE` | Full sentence style | `Implemented the new login flow` | Complete grammatical sentence |\n| `SHORT` | Minimal keywords | `format`, `lint` | 1-3 words only |\n\n**Detection Algorithm:**\n```\nsemantic_count = commits matching semantic regex\nplain_count = non-semantic commits with >3 words\nshort_count = commits with <=3 words\n\nIF semantic_count >= 15 (50%): STYLE = SEMANTIC\nELSE IF plain_count >= 15: STYLE = PLAIN \nELSE IF short_count >= 10: STYLE = SHORT\nELSE: STYLE = PLAIN (safe default)\n```\n\n### 1.3 MANDATORY OUTPUT (BLOCKING)\n\n**You MUST output this block before proceeding to Phase 2. NO EXCEPTIONS.**\n\n```\nSTYLE DETECTION RESULT\n======================\nAnalyzed: 30 commits from git log\n\nLanguage: [KOREAN | ENGLISH]\n - Korean commits: N (X%)\n - English commits: M (Y%)\n\nStyle: [SEMANTIC | PLAIN | SENTENCE | SHORT]\n - Semantic (feat:, fix:, etc): N (X%)\n - Plain: M (Y%)\n - Short: K (Z%)\n\nReference examples from repo:\n 1. \"actual commit message from log\"\n 2. \"actual commit message from log\"\n 3. \"actual commit message from log\"\n\nAll commits will follow: [LANGUAGE] + [STYLE]\n```\n\n**IF YOU SKIP THIS OUTPUT, YOUR COMMITS WILL BE WRONG. STOP AND REDO.**\n</style_detection>\n\n---\n\n## PHASE 2: Branch Context Analysis\n\n<branch_analysis>\n### 2.1 Determine Branch State\n\n```\nBRANCH_STATE:\n current_branch: <name>\n has_upstream: true | false\n commits_ahead: N # Local-only commits\n merge_base: <hash>\n \nREWRITE_SAFETY:\n - If has_upstream AND commits_ahead > 0 AND already pushed:\n -> WARN before force push\n - If no upstream OR all commits local:\n -> Safe for aggressive rewrite (fixup, reset, rebase)\n - If on main/master:\n -> NEVER rewrite, only new commits\n```\n\n### 2.2 History Rewrite Strategy Decision\n\n```\nIF current_branch == main OR current_branch == master:\n -> STRATEGY = NEW_COMMITS_ONLY\n -> Never fixup, never rebase\n\nELSE IF commits_ahead == 0:\n -> STRATEGY = NEW_COMMITS_ONLY\n -> No history to rewrite\n\nELSE IF all commits are local (not pushed):\n -> STRATEGY = AGGRESSIVE_REWRITE\n -> Fixup freely, reset if needed, rebase to clean\n\nELSE IF pushed but not merged:\n -> STRATEGY = CAREFUL_REWRITE \n -> Fixup OK but warn about force push\n```\n</branch_analysis>\n\n---\n\n## PHASE 3: Atomic Unit Planning (BLOCKING - MUST OUTPUT BEFORE PROCEEDING)\n\n<atomic_planning>\n**THIS PHASE HAS MANDATORY OUTPUT** - You MUST print the commit plan before moving to Phase 4.\n\n### 3.0 Calculate Minimum Commit Count FIRST\n\n```\nFORMULA: min_commits = ceil(file_count / 3)\n\n 3 files -> min 1 commit\n 5 files -> min 2 commits\n 9 files -> min 3 commits\n15 files -> min 5 commits\n```\n\n**If your planned commit count < min_commits -> WRONG. SPLIT MORE.**\n\n### 3.1 Split by Directory/Module FIRST (Primary Split)\n\n**RULE: Different directories = Different commits (almost always)**\n\n```\nExample: 8 changed files\n - app/[locale]/page.tsx\n - app/[locale]/layout.tsx\n - components/demo/browser-frame.tsx\n - components/demo/shopify-full-site.tsx\n - components/pricing/pricing-table.tsx\n - e2e/navbar.spec.ts\n - messages/en.json\n - messages/ko.json\n\nWRONG: 1 commit \"Update landing page\" (LAZY, WRONG)\nWRONG: 2 commits (still too few)\n\nCORRECT: Split by directory/concern:\n - Commit 1: app/[locale]/page.tsx + layout.tsx (app layer)\n - Commit 2: components/demo/* (demo components)\n - Commit 3: components/pricing/* (pricing components)\n - Commit 4: e2e/* (tests)\n - Commit 5: messages/* (i18n)\n = 5 commits from 8 files (CORRECT)\n```\n\n### 3.2 Split by Concern SECOND (Secondary Split)\n\n**Within same directory, split by logical concern:**\n\n```\nExample: components/demo/ has 4 files\n - browser-frame.tsx (UI frame)\n - shopify-full-site.tsx (specific demo)\n - review-dashboard.tsx (NEW - specific demo)\n - tone-settings.tsx (NEW - specific demo)\n\nOption A (acceptable): 1 commit if ALL tightly coupled\nOption B (preferred): 2 commits\n - Commit: \"Update existing demo components\" (browser-frame, shopify)\n - Commit: \"Add new demo components\" (review-dashboard, tone-settings)\n```\n\n### 3.3 NEVER Do This (Anti-Pattern Examples)\n\n```\nWRONG: \"Refactor entire landing page\" - 1 commit with 15 files\nWRONG: \"Update components and tests\" - 1 commit mixing concerns\nWRONG: \"Big update\" - Any commit touching 5+ unrelated files\n\nRIGHT: Multiple focused commits, each 1-4 files max\nRIGHT: Each commit message describes ONE specific change\nRIGHT: A reviewer can understand each commit in 30 seconds\n```\n\n### 3.4 Implementation + Test Pairing (MANDATORY)\n\n```\nRULE: Test files MUST be in same commit as implementation\n\nTest patterns to match:\n- test_*.py <-> *.py\n- *_test.py <-> *.py\n- *.test.ts <-> *.ts\n- *.spec.ts <-> *.ts\n- __tests__/*.ts <-> *.ts\n- tests/*.py <-> src/*.py\n```\n\n### 3.5 MANDATORY JUSTIFICATION (Before Creating Commit Plan)\n\n**NON-NEGOTIABLE: Before finalizing your commit plan, you MUST:**\n\n```\nFOR EACH planned commit with 3+ files:\n 1. List all files in this commit\n 2. Write ONE sentence explaining why they MUST be together\n 3. If you can't write that sentence -> SPLIT\n \nTEMPLATE:\n\"Commit N contains [files] because [specific reason they are inseparable].\"\n\nVALID reasons:\n VALID: \"implementation file + its direct test file\"\n VALID: \"type definition + the only file that uses it\"\n VALID: \"migration + model change (would break without both)\"\n \nINVALID reasons (MUST SPLIT instead):\n INVALID: \"all related to feature X\" (too vague)\n INVALID: \"part of the same PR\" (not a reason)\n INVALID: \"they were changed together\" (not a reason)\n INVALID: \"makes sense to group\" (not a reason)\n```\n\n**OUTPUT THIS JUSTIFICATION in your analysis before executing commits.**\n\n### 3.7 Dependency Ordering\n\n```\nLevel 0: Utilities, constants, type definitions\nLevel 1: Models, schemas, interfaces\nLevel 2: Services, business logic\nLevel 3: API endpoints, controllers\nLevel 4: Configuration, infrastructure\n\nCOMMIT ORDER: Level 0 -> Level 1 -> Level 2 -> Level 3 -> Level 4\n```\n\n### 3.8 Create Commit Groups\n\nFor each logical feature/change:\n```yaml\n- group_id: 1\n feature: \"Add Shopify discount deletion\"\n files:\n - errors/shopify_error.py\n - types/delete_input.py\n - mutations/update_contract.py\n - tests/test_update_contract.py\n dependency_level: 2\n target_commit: null | <existing-hash> # null = new, hash = fixup\n```\n\n### 3.9 MANDATORY OUTPUT (BLOCKING)\n\n**You MUST output this block before proceeding to Phase 4. NO EXCEPTIONS.**\n\n```\nCOMMIT PLAN\n===========\nFiles changed: N\nMinimum commits required: ceil(N/3) = M\nPlanned commits: K\nStatus: K >= M (PASS) | K < M (FAIL - must split more)\n\nCOMMIT 1: [message in detected style]\n - path/to/file1.py\n - path/to/file1_test.py\n Justification: implementation + its test\n\nCOMMIT 2: [message in detected style]\n - path/to/file2.py\n Justification: independent utility function\n\nCOMMIT 3: [message in detected style]\n - config/settings.py\n - config/constants.py\n Justification: tightly coupled config changes\n\nExecution order: Commit 1 -> Commit 2 -> Commit 3\n(follows dependency: Level 0 -> Level 1 -> Level 2 -> ...)\n```\n\n**VALIDATION BEFORE EXECUTION:**\n- Each commit has <=4 files (or justified)\n- Each commit message matches detected STYLE + LANGUAGE\n- Test files paired with implementation\n- Different directories = different commits (or justified)\n- Total commits >= min_commits\n\n**IF ANY CHECK FAILS, DO NOT PROCEED. REPLAN.**\n</atomic_planning>\n\n---\n\n";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const executionSection = "## PHASE 4: Commit Strategy Decision\n\n<strategy_decision>\n### 4.1 For Each Commit Group, Decide:\n\n```\nFIXUP if:\n - Change complements existing commit's intent\n - Same feature, fixing bugs or adding missing parts\n - Review feedback incorporation\n - Target commit exists in local history\n\nNEW COMMIT if:\n - New feature or capability\n - Independent logical unit\n - Different issue/ticket\n - No suitable target commit exists\n```\n\n### 4.2 History Rebuild Decision (Aggressive Option)\n\n```\nCONSIDER RESET & REBUILD when:\n - History is messy (many small fixups already)\n - Commits are not atomic (mixed concerns)\n - Dependency order is wrong\n \nRESET WORKFLOW:\n 1. git reset --soft $(git merge-base HEAD main)\n 2. All changes now staged\n 3. Re-commit in proper atomic units\n 4. Clean history from scratch\n \nONLY IF:\n - All commits are local (not pushed)\n - User explicitly allows OR branch is clearly WIP\n```\n\n### 4.3 Final Plan Summary\n\n```yaml\nEXECUTION_PLAN:\n strategy: FIXUP_THEN_NEW | NEW_ONLY | RESET_REBUILD\n fixup_commits:\n - files: [...]\n target: <hash>\n new_commits:\n - files: [...]\n message: \"...\"\n level: N\n requires_force_push: true | false\n```\n</strategy_decision>\n\n---\n\n## PHASE 5: Commit Execution\n\n<execution>\n### 5.1 Register TODO Items\n\nUse task_create to register each commit as a trackable item:\n```\n- [ ] Fixup: <description> -> <target-hash>\n- [ ] New: <description>\n- [ ] Rebase autosquash\n- [ ] Final verification\n```\n\n### 5.2 Fixup Commits (If Any)\n\n```bash\n# Stage files for each fixup\ngit add <files>\ngit commit --fixup=<target-hash>\n\n# Repeat for all fixups...\n\n# Single autosquash rebase at the end\nMERGE_BASE=$(git merge-base HEAD main 2>/dev/null || git merge-base HEAD master)\nGIT_SEQUENCE_EDITOR=: git rebase -i --autosquash $MERGE_BASE\n```\n\n### 5.3 New Commits (After Fixups)\n\nFor each new commit group, in dependency order:\n\n```bash\n# Stage files\ngit add <file1> <file2> ...\n\n# Verify staging\ngit diff --staged --stat\n\n# Commit with detected style\ngit commit -m \"<message-matching-COMMIT_CONFIG>\"\n\n# Verify\ngit log -1 --oneline\n```\n\n### 5.4 Commit Message Generation\n\n**Based on COMMIT_CONFIG from Phase 1:**\n\n```\nIF style == SEMANTIC AND language == KOREAN:\n -> \"feat: \uB85C\uADF8\uC778 \uAE30\uB2A5 \uCD94\uAC00\"\n \nIF style == SEMANTIC AND language == ENGLISH:\n -> \"feat: add login feature\"\n \nIF style == PLAIN AND language == KOREAN:\n -> \"\uB85C\uADF8\uC778 \uAE30\uB2A5 \uCD94\uAC00\"\n \nIF style == PLAIN AND language == ENGLISH:\n -> \"Add login feature\"\n \nIF style == SHORT:\n -> \"format\" / \"type fix\" / \"lint\"\n```\n\n**VALIDATION before each commit:**\n1. Does message match detected style?\n2. Does language match detected language?\n3. Is it similar to examples from git log?\n\nIf ANY check fails -> REWRITE message.\n```\n</execution>\n\n---\n\n## PHASE 6: Verification & Cleanup\n\n<verification>\n### 6.1 Post-Commit Verification\n\n```bash\n# Check working directory clean\ngit status\n\n# Review new history\ngit log --oneline $(git merge-base HEAD main 2>/dev/null || git merge-base HEAD master)..HEAD\n\n# Verify each commit is atomic\n# (mentally check: can each be reverted independently?)\n```\n\n### 6.2 Force Push Decision\n\n```\nIF fixup was used AND branch has upstream:\n -> Requires: git push --force-with-lease\n -> WARN user about force push implications\n \nIF only new commits:\n -> Regular: git push\n```\n\n### 6.3 Final Report\n\n```\nCOMMIT SUMMARY:\n Strategy: <what was done>\n Commits created: N\n Fixups merged: M\n \nHISTORY:\n <hash1> <message1>\n <hash2> <message2>\n ...\n\nNEXT STEPS:\n - git push [--force-with-lease]\n - Create PR if ready\n```\n</verification>\n\n---\n\n## WORKTREE PROCEDURES\n\nIsolated work via native worktrees. Never contaminate the main worktree \u2014 create/use a worktree per feature branch (matches review-work convention). Prefer native tools; CLI fallback only when native unavailable \u2014 single-path rule (native XOR CLI, never mixed).\n\n- Create: `worktree_create({ name: \"<feature>\" })` \u2014 use returned absolute `directory`, then `session_move({ directory })` with move-back owner (CLI fallback `git worktree add ../<feature> -b <feature>` only).\n- List / env-detect: `worktree_list` \u2014 detect worktree vs in-place before SHIP by matching returned directories; the result determines merge + cleanup path (CLI `git worktree list` fallback only).\n- Remove / cleanup: `worktree_remove({ directory: <absolute> })` \u2014 remove worktree after merge, no prune; `force` only on user confirmation (CLI `git worktree remove ../<feature>` then `git worktree prune` fallback only).\n\nRepo law: PR targeting dev \u2014 dev, never master. Merge commit ONLY, never squash \u2014 squash merge is disabled at repo level. This rule governs PR merges only; local history rewrite via interactive rebase / autosquash (`--autosquash`) remains a separate COMMIT-mode tool and never replaces the merge-commit rule.\n\n---\n\n## Quick Reference\n\n### Style Detection Cheat Sheet\n\n| If git log shows... | Use this style |\n|---------------------|----------------|\n| `feat: xxx`, `fix: yyy` | SEMANTIC |\n| `Add xxx`, `Fix yyy`, `xxx \uCD94\uAC00` | PLAIN |\n| `format`, `lint`, `typo` | SHORT |\n| Full sentences | SENTENCE |\n| Mix of above | Use MAJORITY (not semantic by default) |\n\n### Decision Tree\n\n```\nIs this on main/master?\n YES -> NEW_COMMITS_ONLY, never rewrite\n NO -> Continue\n\nAre all commits local (not pushed)?\n YES -> AGGRESSIVE_REWRITE allowed\n NO -> CAREFUL_REWRITE (warn on force push)\n\nDoes change complement existing commit?\n YES -> FIXUP to that commit\n NO -> NEW COMMIT\n\nIs history messy?\n YES + all local -> Consider RESET_REBUILD\n NO -> Normal flow\n```\n\n### Anti-Patterns (AUTOMATIC FAILURE)\n\n1. **NEVER make one giant commit** - 3+ files MUST be 2+ commits\n2. **NEVER default to semantic commits** - detect from git log first\n3. **NEVER separate test from implementation** - same commit always\n4. **NEVER group by file type** - group by feature/module\n5. **NEVER rewrite pushed history** without explicit permission\n6. **NEVER leave working directory dirty** - complete all changes\n7. **NEVER skip JUSTIFICATION** - explain why files are grouped\n8. **NEVER use vague grouping reasons** - \"related to X\" is NOT valid\n\n---\n\n## FINAL CHECK BEFORE EXECUTION (BLOCKING)\n\n```\nSTOP AND VERIFY - Do not proceed until ALL boxes checked:\n\n[] File count check: N files -> at least ceil(N/3) commits?\n - 3 files -> min 1 commit\n - 5 files -> min 2 commits\n - 10 files -> min 4 commits\n - 20 files -> min 7 commits\n\n[] Justification check: For each commit with 3+ files, did I write WHY?\n\n[] Directory split check: Different directories -> different commits?\n\n[] Test pairing check: Each test with its implementation?\n\n[] Dependency order check: Foundations before dependents?\n```\n\n**HARD STOP CONDITIONS:**\n- Making 1 commit from 3+ files -> **WRONG. SPLIT.**\n- Making 2 commits from 10+ files -> **WRONG. SPLIT MORE.**\n- Can't justify file grouping in one sentence -> **WRONG. SPLIT.**\n- Different directories in same commit (without justification) -> **WRONG. SPLIT.**\n\n---\n---\n\n";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const historySection = "# HISTORY SEARCH MODE (Phase H1-H3)\n\n## PHASE H1: Determine Search Type\n\n<history_search_type>\n### H1.1 Parse User Request\n\n| User Request | Search Type | Tool |\n|--------------|-------------|------|\n| \"when was X added\" / \"X\uAC00 \uC5B8\uC81C \uCD94\uAC00\uB410\uC5B4\" | PICKAXE | `git log -S` |\n| \"find commits changing X pattern\" | REGEX | `git log -G` |\n| \"who wrote this line\" / \"\uC774 \uC904 \uB204\uAC00 \uC37C\uC5B4\" | BLAME | `git blame` |\n| \"when did bug start\" / \"\uBC84\uADF8 \uC5B8\uC81C \uC0DD\uACBC\uC5B4\" | BISECT | `git bisect` |\n| \"history of file\" / \"\uD30C\uC77C \uD788\uC2A4\uD1A0\uB9AC\" | FILE_LOG | `git log -- path` |\n| \"find deleted code\" / \"\uC0AD\uC81C\uB41C \uCF54\uB4DC \uCC3E\uAE30\" | PICKAXE_ALL | `git log -S --all` |\n\n### H1.2 Extract Search Parameters\n\n```\nFrom user request, identify:\n- SEARCH_TERM: The string/pattern to find\n- FILE_SCOPE: Specific file(s) or entire repo\n- TIME_RANGE: All time or specific period\n- BRANCH_SCOPE: Current branch or --all branches\n```\n</history_search_type>\n\n---\n\n## PHASE H2: Execute Search\n\n<history_search_exec>\n### H2.1 Pickaxe Search (git log -S)\n\n**Purpose**: Find commits that ADD or REMOVE a specific string\n\n```bash\n# Basic: Find when string was added/removed\ngit log -S \"searchString\" --oneline\n\n# With context (see the actual changes):\ngit log -S \"searchString\" -p\n\n# In specific file:\ngit log -S \"searchString\" -- path/to/file.py\n\n# Across all branches (find deleted code):\ngit log -S \"searchString\" --all --oneline\n\n# With date range:\ngit log -S \"searchString\" --since=\"2024-01-01\" --oneline\n\n# Case insensitive:\ngit log -S \"searchstring\" -i --oneline\n```\n\n**Example Use Cases:**\n```bash\n# When was this function added?\ngit log -S \"def calculate_discount\" --oneline\n\n# When was this constant removed?\ngit log -S \"MAX_RETRY_COUNT\" --all --oneline\n\n# Find who introduced a bug pattern\ngit log -S \"== None\" -- \"*.py\" --oneline # Should be \"is None\"\n```\n\n### H2.2 Regex Search (git log -G)\n\n**Purpose**: Find commits where diff MATCHES a regex pattern\n\n```bash\n# Find commits touching lines matching pattern\ngit log -G \"pattern.*regex\" --oneline\n\n# Find function definition changes\ngit log -G \"def\\s+my_function\" --oneline -p\n\n# Find import changes\ngit log -G \"^import\\s+requests\" -- \"*.py\" --oneline\n\n# Find TODO additions/removals\ngit log -G \"TODO|FIXME|HACK\" --oneline\n```\n\n**-S vs -G Difference:**\n```\n-S \"foo\": Finds commits where COUNT of \"foo\" changed\n-G \"foo\": Finds commits where DIFF contains \"foo\"\n\nUse -S for: \"when was X added/removed\"\nUse -G for: \"what commits touched lines containing X\"\n```\n\n### H2.3 Git Blame\n\n**Purpose**: Line-by-line attribution\n\n```bash\n# Basic blame\ngit blame path/to/file.py\n\n# Specific line range\ngit blame -L 10,20 path/to/file.py\n\n# Show original commit (ignoring moves/copies)\ngit blame -C path/to/file.py\n\n# Ignore whitespace changes\ngit blame -w path/to/file.py\n\n# Show email instead of name\ngit blame -e path/to/file.py\n\n# Output format for parsing\ngit blame --porcelain path/to/file.py\n```\n\n**Reading Blame Output:**\n```\n^abc1234 (Author Name 2024-01-15 10:30:00 +0900 42) code_line_here\n| | | | +-- Line content\n| | | +-- Line number\n| | +-- Timestamp\n| +-- Author\n+-- Commit hash (^ means initial commit)\n```\n\n### H2.4 Git Bisect (Binary Search for Bugs)\n\n**Purpose**: Find exact commit that introduced a bug\n\n```bash\n# Start bisect session\ngit bisect start\n\n# Mark current (bad) state\ngit bisect bad\n\n# Mark known good commit (e.g., last release)\ngit bisect good v1.0.0\n\n# Git checkouts middle commit. Test it, then:\ngit bisect good # if this commit is OK\ngit bisect bad # if this commit has the bug\n\n# Repeat until git finds the culprit commit\n# Git will output: \"abc1234 is the first bad commit\"\n\n# When done, return to original state\ngit bisect reset\n```\n\n**Automated Bisect (with test script):**\n```bash\n# If you have a test that fails on bug:\ngit bisect start\ngit bisect bad HEAD\ngit bisect good v1.0.0\ngit bisect run pytest tests/test_specific.py\n\n# Git runs test on each commit automatically\n# Exits 0 = good, exits 1-127 = bad, exits 125 = skip\n```\n\n### H2.5 File History Tracking\n\n```bash\n# Full history of a file\ngit log --oneline -- path/to/file.py\n\n# Follow file across renames\ngit log --follow --oneline -- path/to/file.py\n\n# Show actual changes\ngit log -p -- path/to/file.py\n\n# Files that no longer exist\ngit log --all --full-history -- \"**/deleted_file.py\"\n\n# Who changed file most\ngit shortlog -sn -- path/to/file.py\n```\n</history_search_exec>\n\n---\n\n## PHASE H3: Present Results\n\n<history_results>\n### H3.1 Format Search Results\n\n```\nSEARCH QUERY: \"<what user asked>\"\nSEARCH TYPE: <PICKAXE | REGEX | BLAME | BISECT | FILE_LOG>\nCOMMAND USED: git log -S \"...\" ...\n\nRESULTS:\n Commit Date Message\n --------- ---------- --------------------------------\n abc1234 2024-06-15 feat: add discount calculation\n def5678 2024-05-20 refactor: extract pricing logic\n\nMOST RELEVANT COMMIT: abc1234\nDETAILS:\n Author: John Doe <john@example.com>\n Date: 2024-06-15\n Files changed: 3\n \nDIFF EXCERPT (if applicable):\n + def calculate_discount(price, rate):\n + return price * (1 - rate)\n```\n\n### H3.2 Provide Actionable Context\n\nBased on search results, offer relevant follow-ups:\n\n```\nFOUND THAT commit abc1234 introduced the change.\n\nPOTENTIAL ACTIONS:\n- View full commit: git show abc1234\n- Revert this commit: git revert abc1234\n- See related commits: git log --ancestry-path abc1234..HEAD\n- Cherry-pick to another branch: git cherry-pick abc1234\n```\n</history_results>\n\n---\n\n## Quick Reference: History Search Commands\n\n| Goal | Command |\n|------|---------|\n| When was \"X\" added? | `git log -S \"X\" --oneline` |\n| When was \"X\" removed? | `git log -S \"X\" --all --oneline` |\n| What commits touched \"X\"? | `git log -G \"X\" --oneline` |\n| Who wrote line N? | `git blame -L N,N file.py` |\n| When did bug start? | `git bisect start && git bisect bad && git bisect good <tag>` |\n| File history | `git log --follow -- path/file.py` |\n| Find deleted file | `git log --all --full-history -- \"**/filename\"` |\n| Author stats for file | `git shortlog -sn -- path/file.py` |\n\n---\n\n## Anti-Patterns (ALL MODES)\n\n### Commit Mode\n- One commit for many files -> SPLIT\n- Default to semantic style -> DETECT first\n\n### Rebase Mode\n- Rebase main/master -> NEVER\n- `--force` instead of `--force-with-lease` -> DANGEROUS\n- Rebase without stashing dirty files -> WILL FAIL\n\n### History Search Mode\n- `-S` when `-G` is appropriate -> Wrong results\n- Blame without `-C` on moved code -> Wrong attribution\n- Bisect without proper good/bad boundaries -> Wasted time";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const rebaseSection = "# REBASE MODE (Phase R1-R4)\n\n## PHASE R1: Rebase Context Analysis\n\n<rebase_context>\n### R1.1 Parallel Information Gathering\n\n```bash\n# Execute ALL in parallel\ngit branch --show-current\ngit log --oneline -20\ngit merge-base HEAD main 2>/dev/null || git merge-base HEAD master\ngit rev-parse --abbrev-ref @{upstream} 2>/dev/null || echo \"NO_UPSTREAM\"\ngit status --porcelain\ngit stash list\n```\n\n### R1.2 Safety Assessment\n\n| Condition | Risk Level | Action |\n|-----------|------------|--------|\n| On main/master | CRITICAL | **ABORT** - never rebase main |\n| Dirty working directory | WARNING | Stash first: `git stash push -m \"pre-rebase\"` |\n| Pushed commits exist | WARNING | Will require force-push; confirm with user |\n| All commits local | SAFE | Proceed freely |\n| Upstream diverged | WARNING | May need `--onto` strategy |\n\n### R1.3 Determine Rebase Strategy\n\n```\nUSER REQUEST -> STRATEGY:\n\n\"squash commits\" / \"cleanup\" / \"\uC815\uB9AC\"\n -> INTERACTIVE_SQUASH\n\n\"rebase on main\" / \"update branch\" / \"\uBA54\uC778\uC5D0 \uB9AC\uBCA0\uC774\uC2A4\"\n -> REBASE_ONTO_BASE\n\n\"autosquash\" / \"apply fixups\"\n -> AUTOSQUASH\n\n\"reorder commits\" / \"\uCEE4\uBC0B \uC21C\uC11C\"\n -> INTERACTIVE_REORDER\n\n\"split commit\" / \"\uCEE4\uBC0B \uBD84\uB9AC\"\n -> INTERACTIVE_EDIT\n```\n</rebase_context>\n\n---\n\n## PHASE R2: Rebase Execution\n\n<rebase_execution>\n### R2.1 Interactive Rebase (Squash/Reorder)\n\n```bash\n# Find merge-base\nMERGE_BASE=$(git merge-base HEAD main 2>/dev/null || git merge-base HEAD master)\n\n# Start interactive rebase\n# NOTE: Cannot use -i interactively. Use GIT_SEQUENCE_EDITOR for automation.\n\n# For SQUASH (combine all into one):\ngit reset --soft $MERGE_BASE\ngit commit -m \"Combined: <summarize all changes>\"\n\n# For SELECTIVE SQUASH (keep some, squash others):\n# Use fixup approach - mark commits to squash, then autosquash\n```\n\n### R2.2 Autosquash Workflow\n\n```bash\n# When you have fixup! or squash! commits:\nMERGE_BASE=$(git merge-base HEAD main 2>/dev/null || git merge-base HEAD master)\nGIT_SEQUENCE_EDITOR=: git rebase -i --autosquash $MERGE_BASE\n\n# The GIT_SEQUENCE_EDITOR=: trick auto-accepts the rebase todo\n# Fixup commits automatically merge into their targets\n```\n\n### R2.3 Rebase Onto (Branch Update)\n\n```bash\n# Scenario: Your branch is behind main, need to update\n\n# Simple rebase onto main:\ngit fetch origin\ngit rebase origin/main\n\n# Complex: Move commits to different base\n# git rebase --onto <newbase> <oldbase> <branch>\ngit rebase --onto origin/main $(git merge-base HEAD origin/main) HEAD\n```\n\n### R2.4 Handling Conflicts\n\n```\nCONFLICT DETECTED -> WORKFLOW:\n\n1. Identify conflicting files:\n git status | grep \"both modified\"\n\n2. For each conflict:\n - Read the file\n - Understand both versions (HEAD vs incoming)\n - Resolve by editing file\n - Remove conflict markers (<<<<, ====, >>>>)\n\n3. Stage resolved files:\n git add <resolved-file>\n\n4. Continue rebase:\n git rebase --continue\n\n5. If stuck or confused:\n git rebase --abort # Safe rollback\n```\n\n### R2.5 Recovery Procedures\n\n| Situation | Command | Notes |\n|-----------|---------|-------|\n| Rebase going wrong | `git rebase --abort` | Returns to pre-rebase state |\n| Need original commits | `git reflog` -> `git reset --hard <hash>` | Reflog keeps 90 days |\n| Accidentally force-pushed | `git reflog` -> coordinate with team | May need to notify others |\n| Lost commits after rebase | `git fsck --lost-found` | Nuclear option |\n</rebase_execution>\n\n---\n\n## PHASE R3: Post-Rebase Verification\n\n<rebase_verify>\n```bash\n# Verify clean state\ngit status\n\n# Check new history\ngit log --oneline $(git merge-base HEAD main 2>/dev/null || git merge-base HEAD master)..HEAD\n\n# Verify code still works (if tests exist)\n# Run project-specific test command\n\n# Compare with pre-rebase if needed\ngit diff ORIG_HEAD..HEAD --stat\n```\n\n### Push Strategy\n\n```\nIF branch never pushed:\n -> git push -u origin <branch>\n\nIF branch already pushed:\n -> git push --force-with-lease origin <branch>\n -> ALWAYS use --force-with-lease (not --force)\n -> Prevents overwriting others' work\n```\n</rebase_verify>\n\n---\n\n## PHASE R4: Rebase Report\n\n```\nREBASE SUMMARY:\n Strategy: <SQUASH | AUTOSQUASH | ONTO | REORDER>\n Commits before: N\n Commits after: M\n Conflicts resolved: K\n \nHISTORY (after rebase):\n <hash1> <message1>\n <hash2> <message2>\n\nNEXT STEPS:\n - git push --force-with-lease origin <branch>\n - Review changes before merge\n```\n\n---\n---\n\n";
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export { devBrowserSkill } from "./dev-browser";
|
|
2
|
+
export { dockerMasterSkill } from "./docker-master";
|
|
3
|
+
export { documentReaderSkill } from "./document-reader";
|
|
4
|
+
export { gitMasterSkill } from "./git-master";
|
|
5
|
+
export { matrixxSelfConfigSkill } from "./matrixx-self-config";
|
|
6
|
+
export { agentBrowserSkill, playwrightSkill } from "./playwright";
|
|
7
|
+
export { playwrightCliSkill } from "./playwright-cli";
|
|
8
|
+
export { PYTHON_ASYNCIO_SKILL_NAME, pythonAsyncioSkill } from "./python-asyncio";
|
|
9
|
+
export { qualityGateSkill } from "./quality-gate";
|
|
10
|
+
export { removeAiSlopsSkill } from "./remove-ai-slops";
|
|
11
|
+
export { RESILIENCE_ERROR_TAXONOMY_SKILL_NAME, resilienceErrorTaxonomySkill } from "./resilience-error-taxonomy";
|
|
12
|
+
export { RESILIENCE_FAILURE_HUNTING_SKILL_NAME, resilienceFailureHuntingSkill } from "./resilience-failure-hunting";
|
|
13
|
+
export { reviewWorkSkill } from "./review-work";
|
|
14
|
+
export { SILENT_FAILURE_DETECTION_SKILL_NAME, silentFailureDetectionSkill } from "./silent-failure-detection";
|
|
15
|
+
export { softwareDevSkill } from "./software-dev";
|
|
16
|
+
export { systematicDebuggingSkill } from "./systematic-debugging";
|
|
17
|
+
export { tddEnforcerSkill } from "./tdd-enforcer";
|
|
18
|
+
export { TELEGRAM_BOT_SKILL_NAME, telegramBotSkill } from "./telegram-bot";
|
|
19
|
+
export { ulwResearchSkill } from "./ulw-research";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { BuiltinSkill } from "
|
|
1
|
+
import type { BuiltinSkill } from "../../loader/types";
|
|
2
2
|
export declare const systematicDebuggingSkill: BuiltinSkill;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { DSL_CODEGEN_SKILL_NAME, dslCodegenSkill } from "./dsl-codegen";
|
|
2
|
+
export { DSL_COMPOSITION_SKILL_NAME, dslCompositionSkill } from "./dsl-composition";
|
|
3
|
+
export { DSL_CORE_SKILL_NAME, dslCoreSkill } from "./dsl-core";
|
|
4
|
+
export { DSL_GRAMMAR_SKILL_NAME, dslGrammarSkill } from "./dsl-grammar";
|
|
5
|
+
export { DSL_METAMODEL_SKILL_NAME, dslMetamodelSkill } from "./dsl-metamodel";
|
|
6
|
+
export { DSL_MODEL_TRANSFORMATION_SKILL_NAME, dslModelTransformationSkill } from "./dsl-model-transformation";
|
|
7
|
+
export { DSL_PYECORE_ADVANCED_SKILL_NAME, dslPyecoreAdvancedSkill } from "./dsl-pyecore-advanced";
|
|
8
|
+
export { DSL_TESTING_SKILL_NAME, dslTestingSkill } from "./dsl-testing";
|
|
9
|
+
export { DSL_TEXTX_ECOSYSTEM_SKILL_NAME, dslTextxEcosystemSkill } from "./dsl-textx-ecosystem";
|
|
10
|
+
export { DSL_TOOLING_SKILL_NAME, dslToolingSkill } from "./dsl-tooling";
|
|
11
|
+
export { DSL_VALIDATION_SKILL_NAME, dslValidationSkill } from "./dsl-validation";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { FRONTEND_A11Y_SKILL_NAME, frontendA11ySkill } from "./frontend-a11y";
|
|
2
|
+
export { FRONTEND_BUILD_TOOLING_SKILL_NAME, frontendBuildToolingSkill } from "./frontend-build-tooling";
|
|
3
|
+
export { FRONTEND_PERF_SKILL_NAME, frontendPerfSkill } from "./frontend-perf";
|
|
4
|
+
export { FRONTEND_REACT_NEXTJS_SKILL_NAME, reactNextjsPatternsSkill } from "./frontend-react-nextjs";
|
|
5
|
+
export { FRONTEND_STATE_DATA_SKILL_NAME, frontendStateDataSkill } from "./frontend-state-data";
|
|
6
|
+
export { FRONTEND_SVELTE_SVELTEKIT_SKILL_NAME, svelteSveltekitPatternsSkill } from "./frontend-svelte-sveltekit";
|
|
7
|
+
export { FRONTEND_TESTING_SKILL_NAME, frontendTestingSkill } from "./frontend-testing";
|
|
8
|
+
export { frontendUiUxSkill } from "./frontend-ui-ux";
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { bddBackendSkill, bddContractSkill, bddFrontendSkill, bddTestsSkill } from "./bdd";
|
|
2
|
+
export { agentBrowserSkill, devBrowserSkill, dockerMasterSkill, documentReaderSkill, gitMasterSkill, matrixxSelfConfigSkill, playwrightCliSkill, playwrightSkill, pythonAsyncioSkill, qualityGateSkill, removeAiSlopsSkill, resilienceErrorTaxonomySkill, resilienceFailureHuntingSkill, reviewWorkSkill, silentFailureDetectionSkill, softwareDevSkill, systematicDebuggingSkill, tddEnforcerSkill, telegramBotSkill, ulwResearchSkill } from "./core";
|
|
3
|
+
export { dslCodegenSkill, dslCompositionSkill, dslCoreSkill, dslGrammarSkill, dslMetamodelSkill, dslModelTransformationSkill, dslPyecoreAdvancedSkill, dslTestingSkill, dslTextxEcosystemSkill, dslToolingSkill, dslValidationSkill } from "./dsl";
|
|
4
|
+
export { frontendA11ySkill, frontendBuildToolingSkill, frontendPerfSkill, frontendStateDataSkill, frontendTestingSkill, frontendUiUxSkill, reactNextjsPatternsSkill, svelteSveltekitPatternsSkill } from "./frontend";
|
|
5
|
+
export { ccxtProWebsocketsSkill, ccxtRestSkill, cryptoMarketStructureSkill, dataQualityObservabilitySkill, grafanaDashboardsSkill, influxdbTimeseriesSkill, marketDataArchitectureSkill, marketDataBusSkill, marketDataRobustnessReviewSkill, timeSeriesFundamentalsSkill } from "./market-data";
|
|
6
|
+
export { SECURITY_AUDIT_SKILL_NAME, securityApiSkill, securityAuditSkill, securityCoreSkill, securityCryptoSkill, securityDastSkill, securityDependenciesSkill, securityInfraSkill, securityReviewSkill, securitySastSkill, securitySecretsSkill } from "./security";
|
|
7
|
+
export { zeromqAdvancedReqrepSkill, zeromqArchitectureSkill, zeromqCoreSkill, zeromqFrameworksSkill, zeromqPubsubSkill, zeromqReliabilitySkill, zeromqSocketsPatternsSkill } from "./zeromq";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { CCXT_PRO_WEBSOCKETS_SKILL_NAME, ccxtProWebsocketsSkill } from "./ccxt-pro-websockets";
|
|
2
|
+
export { CCXT_REST_SKILL_NAME, ccxtRestSkill } from "./ccxt-rest";
|
|
3
|
+
export { CRYPTO_MARKET_STRUCTURE_SKILL_NAME, cryptoMarketStructureSkill } from "./crypto-market-structure";
|
|
4
|
+
export { DATA_QUALITY_OBSERVABILITY_SKILL_NAME, dataQualityObservabilitySkill } from "./data-quality-observability";
|
|
5
|
+
export { GRAFANA_DASHBOARDS_SKILL_NAME, grafanaDashboardsSkill } from "./grafana-dashboards";
|
|
6
|
+
export { INFLUXDB_TIMESERIES_SKILL_NAME, influxdbTimeseriesSkill } from "./influxdb-timeseries";
|
|
7
|
+
export { MARKET_DATA_ARCHITECTURE_SKILL_NAME, marketDataArchitectureSkill } from "./market-data-architecture";
|
|
8
|
+
export { MARKET_DATA_BUS_SKILL_NAME, marketDataBusSkill } from "./market-data-bus";
|
|
9
|
+
export { MARKET_DATA_ROBUSTNESS_REVIEW_SKILL_NAME, marketDataRobustnessReviewSkill } from "./market-data-robustness-review";
|
|
10
|
+
export { TIME_SERIES_FUNDAMENTALS_SKILL_NAME, timeSeriesFundamentalsSkill } from "./time-series-fundamentals";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { SECURITY_API_SKILL_NAME, securityApiSkill } from "./security-api";
|
|
2
|
+
export { SECURITY_AUDIT_SKILL_NAME, securityAuditSkill } from "./security-audit";
|
|
3
|
+
export { SECURITY_CORE_SKILL_NAME, securityCoreSkill } from "./security-core";
|
|
4
|
+
export { SECURITY_CRYPTO_SKILL_NAME, securityCryptoSkill } from "./security-crypto";
|
|
5
|
+
export { SECURITY_DAST_SKILL_NAME, securityDastSkill } from "./security-dast";
|
|
6
|
+
export { SECURITY_DEPENDENCIES_SKILL_NAME, securityDependenciesSkill } from "./security-dependencies";
|
|
7
|
+
export { SECURITY_INFRA_SKILL_NAME, securityInfraSkill } from "./security-infra";
|
|
8
|
+
export { SECURITY_REVIEW_SKILL_NAME, securityReviewSkill } from "./security-review";
|
|
9
|
+
export { SECURITY_SAST_SKILL_NAME, securitySastSkill } from "./security-sast";
|
|
10
|
+
export { SECURITY_SECRETS_SKILL_NAME, securitySecretsSkill } from "./security-secrets";
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { ZEROMQ_ADVANCED_REQREP_SKILL_NAME, zeromqAdvancedReqrepSkill } from "./zeromq-advanced-reqrep";
|
|
2
|
+
export { ZEROMQ_ARCHITECTURE_SKILL_NAME, zeromqArchitectureSkill } from "./zeromq-architecture";
|
|
3
|
+
export { ZEROMQ_CORE_SKILL_NAME, zeromqCoreSkill } from "./zeromq-core";
|
|
4
|
+
export { ZEROMQ_FRAMEWORKS_SKILL_NAME, zeromqFrameworksSkill } from "./zeromq-frameworks";
|
|
5
|
+
export { ZEROMQ_PUBSUB_SKILL_NAME, zeromqPubsubSkill } from "./zeromq-pubsub";
|
|
6
|
+
export { ZEROMQ_RELIABILITY_SKILL_NAME, zeromqReliabilitySkill } from "./zeromq-reliability";
|
|
7
|
+
export { ZEROMQ_SOCKETS_PATTERNS_SKILL_NAME, zeromqSocketsPatternsSkill } from "./zeromq-sockets-patterns";
|