bigpowers 2.83.4 → 2.84.1
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/.agents/skills/audit-code/SKILL.md +4 -7
- package/.agents/skills/grill-me/SKILL.md +12 -0
- package/.agents/skills/grill-with-docs/SKILL.md +12 -0
- package/.agents/skills/request-review/SKILL.md +1 -0
- package/.agents/skills/wire-ci/SKILL.md +164 -181
- package/.codebuddy/skills/align-grid/SKILL.md +110 -0
- package/.codebuddy/skills/assess-impact/SKILL.md +91 -0
- package/.codebuddy/skills/audit-code/SKILL.md +184 -0
- package/.codebuddy/skills/audit-plan/SKILL.md +89 -0
- package/.codebuddy/skills/build-epic/SKILL.md +105 -0
- package/.codebuddy/skills/change-request/SKILL.md +121 -0
- package/.codebuddy/skills/commit-message/SKILL.md +140 -0
- package/.codebuddy/skills/compose-workflow/SKILL.md +82 -0
- package/.codebuddy/skills/context7-mcp/SKILL.md +55 -0
- package/.codebuddy/skills/craft-skill/SKILL.md +179 -0
- package/.codebuddy/skills/deepen-architecture/SKILL.md +260 -0
- package/.codebuddy/skills/define-language/SKILL.md +80 -0
- package/.codebuddy/skills/define-success/SKILL.md +65 -0
- package/.codebuddy/skills/delegate-task/SKILL.md +91 -0
- package/.codebuddy/skills/deploy/SKILL.md +198 -0
- package/.codebuddy/skills/design-interface/SKILL.md +97 -0
- package/.codebuddy/skills/develop-tdd/SKILL.md +406 -0
- package/.codebuddy/skills/diagnose-root/SKILL.md +24 -0
- package/.codebuddy/skills/diagnose-stall/SKILL.md +54 -0
- package/.codebuddy/skills/dispatch-agents/SKILL.md +118 -0
- package/.codebuddy/skills/edit-document/SKILL.md +23 -0
- package/.codebuddy/skills/elaborate-spec/SKILL.md +101 -0
- package/.codebuddy/skills/enforce-first/SKILL.md +32 -0
- package/.codebuddy/skills/evolve-skill/SKILL.md +55 -0
- package/.codebuddy/skills/execute-plan/SKILL.md +61 -0
- package/.codebuddy/skills/extract-design/SKILL.md +132 -0
- package/.codebuddy/skills/find-way/SKILL.md +191 -0
- package/.codebuddy/skills/fix-bug/SKILL.md +67 -0
- package/.codebuddy/skills/gate-trace/SKILL.md +88 -0
- package/.codebuddy/skills/generate-allure-report/SKILL.md +285 -0
- package/.codebuddy/skills/grill-me/SKILL.md +108 -0
- package/.codebuddy/skills/grill-with-docs/SKILL.md +53 -0
- package/.codebuddy/skills/guard-git/SKILL.md +231 -0
- package/.codebuddy/skills/harden-vps/SKILL.md +288 -0
- package/.codebuddy/skills/hook-commits/SKILL.md +94 -0
- package/.codebuddy/skills/inspect-quality/SKILL.md +106 -0
- package/.codebuddy/skills/investigate-bug/SKILL.md +127 -0
- package/.codebuddy/skills/kickoff-branch/SKILL.md +143 -0
- package/.codebuddy/skills/maintain-wiki/SKILL.md +64 -0
- package/.codebuddy/skills/map-codebase/SKILL.md +71 -0
- package/.codebuddy/skills/migrate-spec/SKILL.md +862 -0
- package/.codebuddy/skills/model-domain/SKILL.md +232 -0
- package/.codebuddy/skills/orchestrate-project/SKILL.md +174 -0
- package/.codebuddy/skills/organize-workspace/SKILL.md +164 -0
- package/.codebuddy/skills/plan-refactor/SKILL.md +87 -0
- package/.codebuddy/skills/plan-release/SKILL.md +145 -0
- package/.codebuddy/skills/plan-tests/SKILL.md +75 -0
- package/.codebuddy/skills/plan-work/SKILL.md +260 -0
- package/.codebuddy/skills/publish-package/SKILL.md +328 -0
- package/.codebuddy/skills/quick-fix/SKILL.md +114 -0
- package/.codebuddy/skills/release-branch/SKILL.md +298 -0
- package/.codebuddy/skills/request-review/SKILL.md +113 -0
- package/.codebuddy/skills/research-first/SKILL.md +87 -0
- package/.codebuddy/skills/reset-baseline/SKILL.md +21 -0
- package/.codebuddy/skills/respond-review/SKILL.md +71 -0
- package/.codebuddy/skills/run-benchmark/SKILL.md +85 -0
- package/.codebuddy/skills/run-evals/SKILL.md +80 -0
- package/.codebuddy/skills/run-planning/SKILL.md +101 -0
- package/.codebuddy/skills/scope-work/SKILL.md +63 -0
- package/.codebuddy/skills/search-skills/SKILL.md +73 -0
- package/.codebuddy/skills/security-review/SKILL.md +384 -0
- package/.codebuddy/skills/seed-conventions/SKILL.md +285 -0
- package/.codebuddy/skills/session-state/SKILL.md +146 -0
- package/.codebuddy/skills/setup-environment/SKILL.md +39 -0
- package/.codebuddy/skills/simulate-agents/SKILL.md +26 -0
- package/.codebuddy/skills/slice-tasks/SKILL.md +68 -0
- package/.codebuddy/skills/smoke-test/SKILL.md +242 -0
- package/.codebuddy/skills/spike-prototype/SKILL.md +95 -0
- package/.codebuddy/skills/stocktake-skills/SKILL.md +72 -0
- package/.codebuddy/skills/survey-context/SKILL.md +135 -0
- package/.codebuddy/skills/terse-mode/SKILL.md +42 -0
- package/.codebuddy/skills/trace-requirement/SKILL.md +69 -0
- package/.codebuddy/skills/using-bigpowers/SKILL.md +111 -0
- package/.codebuddy/skills/validate-contracts/SKILL.md +309 -0
- package/.codebuddy/skills/validate-fix/SKILL.md +106 -0
- package/.codebuddy/skills/verify-work/SKILL.md +191 -0
- package/.codebuddy/skills/visual-dashboard/SKILL.md +50 -0
- package/.codebuddy/skills/wire-ci/SKILL.md +358 -0
- package/.codebuddy/skills/wire-observability/SKILL.md +97 -0
- package/.codebuddy/skills/write-document/SKILL.md +255 -0
- package/.codex/skills/align-grid/SKILL.md +110 -0
- package/.codex/skills/assess-impact/SKILL.md +91 -0
- package/.codex/skills/audit-code/SKILL.md +184 -0
- package/.codex/skills/audit-plan/SKILL.md +89 -0
- package/.codex/skills/build-epic/SKILL.md +105 -0
- package/.codex/skills/change-request/SKILL.md +121 -0
- package/.codex/skills/commit-message/SKILL.md +140 -0
- package/.codex/skills/compose-workflow/SKILL.md +82 -0
- package/.codex/skills/context7-mcp/SKILL.md +55 -0
- package/.codex/skills/craft-skill/SKILL.md +179 -0
- package/.codex/skills/deepen-architecture/SKILL.md +260 -0
- package/.codex/skills/define-language/SKILL.md +80 -0
- package/.codex/skills/define-success/SKILL.md +65 -0
- package/.codex/skills/delegate-task/SKILL.md +91 -0
- package/.codex/skills/deploy/SKILL.md +198 -0
- package/.codex/skills/design-interface/SKILL.md +97 -0
- package/.codex/skills/develop-tdd/SKILL.md +406 -0
- package/.codex/skills/diagnose-root/SKILL.md +24 -0
- package/.codex/skills/diagnose-stall/SKILL.md +54 -0
- package/.codex/skills/dispatch-agents/SKILL.md +118 -0
- package/.codex/skills/edit-document/SKILL.md +23 -0
- package/.codex/skills/elaborate-spec/SKILL.md +101 -0
- package/.codex/skills/enforce-first/SKILL.md +32 -0
- package/.codex/skills/evolve-skill/SKILL.md +55 -0
- package/.codex/skills/execute-plan/SKILL.md +61 -0
- package/.codex/skills/extract-design/SKILL.md +132 -0
- package/.codex/skills/find-way/SKILL.md +191 -0
- package/.codex/skills/fix-bug/SKILL.md +67 -0
- package/.codex/skills/gate-trace/SKILL.md +88 -0
- package/.codex/skills/generate-allure-report/SKILL.md +285 -0
- package/.codex/skills/grill-me/SKILL.md +108 -0
- package/.codex/skills/grill-with-docs/SKILL.md +53 -0
- package/.codex/skills/guard-git/SKILL.md +231 -0
- package/.codex/skills/harden-vps/SKILL.md +288 -0
- package/.codex/skills/hook-commits/SKILL.md +94 -0
- package/.codex/skills/inspect-quality/SKILL.md +106 -0
- package/.codex/skills/investigate-bug/SKILL.md +127 -0
- package/.codex/skills/kickoff-branch/SKILL.md +143 -0
- package/.codex/skills/maintain-wiki/SKILL.md +64 -0
- package/.codex/skills/map-codebase/SKILL.md +71 -0
- package/.codex/skills/migrate-spec/SKILL.md +862 -0
- package/.codex/skills/model-domain/SKILL.md +232 -0
- package/.codex/skills/orchestrate-project/SKILL.md +174 -0
- package/.codex/skills/organize-workspace/SKILL.md +164 -0
- package/.codex/skills/plan-refactor/SKILL.md +87 -0
- package/.codex/skills/plan-release/SKILL.md +145 -0
- package/.codex/skills/plan-tests/SKILL.md +75 -0
- package/.codex/skills/plan-work/SKILL.md +260 -0
- package/.codex/skills/publish-package/SKILL.md +328 -0
- package/.codex/skills/quick-fix/SKILL.md +114 -0
- package/.codex/skills/release-branch/SKILL.md +298 -0
- package/.codex/skills/request-review/SKILL.md +113 -0
- package/.codex/skills/research-first/SKILL.md +87 -0
- package/.codex/skills/reset-baseline/SKILL.md +21 -0
- package/.codex/skills/respond-review/SKILL.md +71 -0
- package/.codex/skills/run-benchmark/SKILL.md +85 -0
- package/.codex/skills/run-evals/SKILL.md +80 -0
- package/.codex/skills/run-planning/SKILL.md +101 -0
- package/.codex/skills/scope-work/SKILL.md +63 -0
- package/.codex/skills/search-skills/SKILL.md +73 -0
- package/.codex/skills/security-review/SKILL.md +384 -0
- package/.codex/skills/seed-conventions/SKILL.md +285 -0
- package/.codex/skills/session-state/SKILL.md +146 -0
- package/.codex/skills/setup-environment/SKILL.md +39 -0
- package/.codex/skills/simulate-agents/SKILL.md +26 -0
- package/.codex/skills/slice-tasks/SKILL.md +68 -0
- package/.codex/skills/smoke-test/SKILL.md +242 -0
- package/.codex/skills/spike-prototype/SKILL.md +95 -0
- package/.codex/skills/stocktake-skills/SKILL.md +72 -0
- package/.codex/skills/survey-context/SKILL.md +135 -0
- package/.codex/skills/terse-mode/SKILL.md +42 -0
- package/.codex/skills/trace-requirement/SKILL.md +69 -0
- package/.codex/skills/using-bigpowers/SKILL.md +111 -0
- package/.codex/skills/validate-contracts/SKILL.md +309 -0
- package/.codex/skills/validate-fix/SKILL.md +106 -0
- package/.codex/skills/verify-work/SKILL.md +191 -0
- package/.codex/skills/visual-dashboard/SKILL.md +50 -0
- package/.codex/skills/wire-ci/SKILL.md +358 -0
- package/.codex/skills/wire-observability/SKILL.md +97 -0
- package/.codex/skills/write-document/SKILL.md +255 -0
- package/.hermes/skills/audit-code/SKILL.md +4 -7
- package/.hermes/skills/grill-me/SKILL.md +12 -0
- package/.hermes/skills/grill-with-docs/SKILL.md +12 -0
- package/.hermes/skills/request-review/SKILL.md +1 -0
- package/.hermes/skills/wire-ci/SKILL.md +164 -181
- package/.kilocode/rules/align-grid.md +110 -0
- package/.kilocode/rules/assess-impact.md +91 -0
- package/.kilocode/rules/audit-code.md +184 -0
- package/.kilocode/rules/audit-plan.md +89 -0
- package/.kilocode/rules/build-epic.md +105 -0
- package/.kilocode/rules/change-request.md +121 -0
- package/.kilocode/rules/commit-message.md +140 -0
- package/.kilocode/rules/compose-workflow.md +82 -0
- package/.kilocode/rules/context7-mcp.md +55 -0
- package/.kilocode/rules/craft-skill.md +179 -0
- package/.kilocode/rules/deepen-architecture.md +260 -0
- package/.kilocode/rules/define-language.md +80 -0
- package/.kilocode/rules/define-success.md +65 -0
- package/.kilocode/rules/delegate-task.md +91 -0
- package/.kilocode/rules/deploy.md +198 -0
- package/.kilocode/rules/design-interface.md +97 -0
- package/.kilocode/rules/develop-tdd.md +406 -0
- package/.kilocode/rules/diagnose-root.md +24 -0
- package/.kilocode/rules/diagnose-stall.md +54 -0
- package/.kilocode/rules/dispatch-agents.md +118 -0
- package/.kilocode/rules/edit-document.md +23 -0
- package/.kilocode/rules/elaborate-spec.md +101 -0
- package/.kilocode/rules/enforce-first.md +32 -0
- package/.kilocode/rules/evolve-skill.md +55 -0
- package/.kilocode/rules/execute-plan.md +61 -0
- package/.kilocode/rules/extract-design.md +132 -0
- package/.kilocode/rules/find-way.md +191 -0
- package/.kilocode/rules/fix-bug.md +67 -0
- package/.kilocode/rules/gate-trace.md +88 -0
- package/.kilocode/rules/generate-allure-report.md +285 -0
- package/.kilocode/rules/grill-me.md +108 -0
- package/.kilocode/rules/grill-with-docs.md +53 -0
- package/.kilocode/rules/guard-git.md +231 -0
- package/.kilocode/rules/harden-vps.md +288 -0
- package/.kilocode/rules/hook-commits.md +94 -0
- package/.kilocode/rules/inspect-quality.md +106 -0
- package/.kilocode/rules/investigate-bug.md +127 -0
- package/.kilocode/rules/kickoff-branch.md +143 -0
- package/.kilocode/rules/maintain-wiki.md +64 -0
- package/.kilocode/rules/map-codebase.md +71 -0
- package/.kilocode/rules/migrate-spec.md +862 -0
- package/.kilocode/rules/model-domain.md +232 -0
- package/.kilocode/rules/orchestrate-project.md +174 -0
- package/.kilocode/rules/organize-workspace.md +164 -0
- package/.kilocode/rules/plan-refactor.md +87 -0
- package/.kilocode/rules/plan-release.md +145 -0
- package/.kilocode/rules/plan-tests.md +75 -0
- package/.kilocode/rules/plan-work.md +260 -0
- package/.kilocode/rules/publish-package.md +328 -0
- package/.kilocode/rules/quick-fix.md +114 -0
- package/.kilocode/rules/release-branch.md +298 -0
- package/.kilocode/rules/request-review.md +113 -0
- package/.kilocode/rules/research-first.md +87 -0
- package/.kilocode/rules/reset-baseline.md +21 -0
- package/.kilocode/rules/respond-review.md +71 -0
- package/.kilocode/rules/run-benchmark.md +85 -0
- package/.kilocode/rules/run-evals.md +80 -0
- package/.kilocode/rules/run-planning.md +101 -0
- package/.kilocode/rules/scope-work.md +63 -0
- package/.kilocode/rules/search-skills.md +73 -0
- package/.kilocode/rules/security-review.md +384 -0
- package/.kilocode/rules/seed-conventions.md +285 -0
- package/.kilocode/rules/session-state.md +146 -0
- package/.kilocode/rules/setup-environment.md +39 -0
- package/.kilocode/rules/simulate-agents.md +26 -0
- package/.kilocode/rules/slice-tasks.md +68 -0
- package/.kilocode/rules/smoke-test.md +242 -0
- package/.kilocode/rules/spike-prototype.md +95 -0
- package/.kilocode/rules/stocktake-skills.md +72 -0
- package/.kilocode/rules/survey-context.md +135 -0
- package/.kilocode/rules/terse-mode.md +42 -0
- package/.kilocode/rules/trace-requirement.md +69 -0
- package/.kilocode/rules/using-bigpowers.md +111 -0
- package/.kilocode/rules/validate-contracts.md +309 -0
- package/.kilocode/rules/validate-fix.md +106 -0
- package/.kilocode/rules/verify-work.md +191 -0
- package/.kilocode/rules/visual-dashboard.md +50 -0
- package/.kilocode/rules/wire-ci.md +358 -0
- package/.kilocode/rules/wire-observability.md +97 -0
- package/.kilocode/rules/write-document.md +255 -0
- package/.mimocode/skills/audit-code/SKILL.md +4 -7
- package/.mimocode/skills/grill-me/SKILL.md +12 -0
- package/.mimocode/skills/grill-with-docs/SKILL.md +12 -0
- package/.mimocode/skills/request-review/SKILL.md +1 -0
- package/.mimocode/skills/wire-ci/SKILL.md +164 -181
- package/.pi/package.json +1 -1
- package/.pi/prompts/audit-code.md +4 -7
- package/.pi/prompts/grill-me.md +12 -0
- package/.pi/prompts/grill-with-docs.md +12 -0
- package/.pi/prompts/request-review.md +1 -0
- package/.pi/prompts/wire-ci.md +164 -181
- package/.pi/skills/audit-code/SKILL.md +4 -7
- package/.pi/skills/grill-me/SKILL.md +12 -0
- package/.pi/skills/grill-with-docs/SKILL.md +12 -0
- package/.pi/skills/request-review/SKILL.md +1 -0
- package/.pi/skills/wire-ci/SKILL.md +164 -181
- package/.trae/skills/align-grid/SKILL.md +110 -0
- package/.trae/skills/assess-impact/SKILL.md +91 -0
- package/.trae/skills/audit-code/SKILL.md +184 -0
- package/.trae/skills/audit-plan/SKILL.md +89 -0
- package/.trae/skills/build-epic/SKILL.md +105 -0
- package/.trae/skills/change-request/SKILL.md +121 -0
- package/.trae/skills/commit-message/SKILL.md +140 -0
- package/.trae/skills/compose-workflow/SKILL.md +82 -0
- package/.trae/skills/context7-mcp/SKILL.md +55 -0
- package/.trae/skills/craft-skill/SKILL.md +179 -0
- package/.trae/skills/deepen-architecture/SKILL.md +260 -0
- package/.trae/skills/define-language/SKILL.md +80 -0
- package/.trae/skills/define-success/SKILL.md +65 -0
- package/.trae/skills/delegate-task/SKILL.md +91 -0
- package/.trae/skills/deploy/SKILL.md +198 -0
- package/.trae/skills/design-interface/SKILL.md +97 -0
- package/.trae/skills/develop-tdd/SKILL.md +406 -0
- package/.trae/skills/diagnose-root/SKILL.md +24 -0
- package/.trae/skills/diagnose-stall/SKILL.md +54 -0
- package/.trae/skills/dispatch-agents/SKILL.md +118 -0
- package/.trae/skills/edit-document/SKILL.md +23 -0
- package/.trae/skills/elaborate-spec/SKILL.md +101 -0
- package/.trae/skills/enforce-first/SKILL.md +32 -0
- package/.trae/skills/evolve-skill/SKILL.md +55 -0
- package/.trae/skills/execute-plan/SKILL.md +61 -0
- package/.trae/skills/extract-design/SKILL.md +132 -0
- package/.trae/skills/find-way/SKILL.md +191 -0
- package/.trae/skills/fix-bug/SKILL.md +67 -0
- package/.trae/skills/gate-trace/SKILL.md +88 -0
- package/.trae/skills/generate-allure-report/SKILL.md +285 -0
- package/.trae/skills/grill-me/SKILL.md +108 -0
- package/.trae/skills/grill-with-docs/SKILL.md +53 -0
- package/.trae/skills/guard-git/SKILL.md +231 -0
- package/.trae/skills/harden-vps/SKILL.md +288 -0
- package/.trae/skills/hook-commits/SKILL.md +94 -0
- package/.trae/skills/inspect-quality/SKILL.md +106 -0
- package/.trae/skills/investigate-bug/SKILL.md +127 -0
- package/.trae/skills/kickoff-branch/SKILL.md +143 -0
- package/.trae/skills/maintain-wiki/SKILL.md +64 -0
- package/.trae/skills/map-codebase/SKILL.md +71 -0
- package/.trae/skills/migrate-spec/SKILL.md +862 -0
- package/.trae/skills/model-domain/SKILL.md +232 -0
- package/.trae/skills/orchestrate-project/SKILL.md +174 -0
- package/.trae/skills/organize-workspace/SKILL.md +164 -0
- package/.trae/skills/plan-refactor/SKILL.md +87 -0
- package/.trae/skills/plan-release/SKILL.md +145 -0
- package/.trae/skills/plan-tests/SKILL.md +75 -0
- package/.trae/skills/plan-work/SKILL.md +260 -0
- package/.trae/skills/publish-package/SKILL.md +328 -0
- package/.trae/skills/quick-fix/SKILL.md +114 -0
- package/.trae/skills/release-branch/SKILL.md +298 -0
- package/.trae/skills/request-review/SKILL.md +113 -0
- package/.trae/skills/research-first/SKILL.md +87 -0
- package/.trae/skills/reset-baseline/SKILL.md +21 -0
- package/.trae/skills/respond-review/SKILL.md +71 -0
- package/.trae/skills/run-benchmark/SKILL.md +85 -0
- package/.trae/skills/run-evals/SKILL.md +80 -0
- package/.trae/skills/run-planning/SKILL.md +101 -0
- package/.trae/skills/scope-work/SKILL.md +63 -0
- package/.trae/skills/search-skills/SKILL.md +73 -0
- package/.trae/skills/security-review/SKILL.md +384 -0
- package/.trae/skills/seed-conventions/SKILL.md +285 -0
- package/.trae/skills/session-state/SKILL.md +146 -0
- package/.trae/skills/setup-environment/SKILL.md +39 -0
- package/.trae/skills/simulate-agents/SKILL.md +26 -0
- package/.trae/skills/slice-tasks/SKILL.md +68 -0
- package/.trae/skills/smoke-test/SKILL.md +242 -0
- package/.trae/skills/spike-prototype/SKILL.md +95 -0
- package/.trae/skills/stocktake-skills/SKILL.md +72 -0
- package/.trae/skills/survey-context/SKILL.md +135 -0
- package/.trae/skills/terse-mode/SKILL.md +42 -0
- package/.trae/skills/trace-requirement/SKILL.md +69 -0
- package/.trae/skills/using-bigpowers/SKILL.md +111 -0
- package/.trae/skills/validate-contracts/SKILL.md +309 -0
- package/.trae/skills/validate-fix/SKILL.md +106 -0
- package/.trae/skills/verify-work/SKILL.md +191 -0
- package/.trae/skills/visual-dashboard/SKILL.md +50 -0
- package/.trae/skills/wire-ci/SKILL.md +358 -0
- package/.trae/skills/wire-observability/SKILL.md +97 -0
- package/.trae/skills/write-document/SKILL.md +255 -0
- package/.windsurf/rules/align-grid.md +110 -0
- package/.windsurf/rules/assess-impact.md +91 -0
- package/.windsurf/rules/audit-code.md +184 -0
- package/.windsurf/rules/audit-plan.md +89 -0
- package/.windsurf/rules/build-epic.md +105 -0
- package/.windsurf/rules/change-request.md +121 -0
- package/.windsurf/rules/commit-message.md +140 -0
- package/.windsurf/rules/compose-workflow.md +82 -0
- package/.windsurf/rules/context7-mcp.md +55 -0
- package/.windsurf/rules/craft-skill.md +179 -0
- package/.windsurf/rules/deepen-architecture.md +260 -0
- package/.windsurf/rules/define-language.md +80 -0
- package/.windsurf/rules/define-success.md +65 -0
- package/.windsurf/rules/delegate-task.md +91 -0
- package/.windsurf/rules/deploy.md +198 -0
- package/.windsurf/rules/design-interface.md +97 -0
- package/.windsurf/rules/develop-tdd.md +406 -0
- package/.windsurf/rules/diagnose-root.md +24 -0
- package/.windsurf/rules/diagnose-stall.md +54 -0
- package/.windsurf/rules/dispatch-agents.md +118 -0
- package/.windsurf/rules/edit-document.md +23 -0
- package/.windsurf/rules/elaborate-spec.md +101 -0
- package/.windsurf/rules/enforce-first.md +32 -0
- package/.windsurf/rules/evolve-skill.md +55 -0
- package/.windsurf/rules/execute-plan.md +61 -0
- package/.windsurf/rules/extract-design.md +132 -0
- package/.windsurf/rules/find-way.md +191 -0
- package/.windsurf/rules/fix-bug.md +67 -0
- package/.windsurf/rules/gate-trace.md +88 -0
- package/.windsurf/rules/generate-allure-report.md +285 -0
- package/.windsurf/rules/grill-me.md +108 -0
- package/.windsurf/rules/grill-with-docs.md +53 -0
- package/.windsurf/rules/guard-git.md +231 -0
- package/.windsurf/rules/harden-vps.md +288 -0
- package/.windsurf/rules/hook-commits.md +94 -0
- package/.windsurf/rules/inspect-quality.md +106 -0
- package/.windsurf/rules/investigate-bug.md +127 -0
- package/.windsurf/rules/kickoff-branch.md +143 -0
- package/.windsurf/rules/maintain-wiki.md +64 -0
- package/.windsurf/rules/map-codebase.md +71 -0
- package/.windsurf/rules/migrate-spec.md +862 -0
- package/.windsurf/rules/model-domain.md +232 -0
- package/.windsurf/rules/orchestrate-project.md +174 -0
- package/.windsurf/rules/organize-workspace.md +164 -0
- package/.windsurf/rules/plan-refactor.md +87 -0
- package/.windsurf/rules/plan-release.md +145 -0
- package/.windsurf/rules/plan-tests.md +75 -0
- package/.windsurf/rules/plan-work.md +260 -0
- package/.windsurf/rules/publish-package.md +328 -0
- package/.windsurf/rules/quick-fix.md +114 -0
- package/.windsurf/rules/release-branch.md +298 -0
- package/.windsurf/rules/request-review.md +113 -0
- package/.windsurf/rules/research-first.md +87 -0
- package/.windsurf/rules/reset-baseline.md +21 -0
- package/.windsurf/rules/respond-review.md +71 -0
- package/.windsurf/rules/run-benchmark.md +85 -0
- package/.windsurf/rules/run-evals.md +80 -0
- package/.windsurf/rules/run-planning.md +101 -0
- package/.windsurf/rules/scope-work.md +63 -0
- package/.windsurf/rules/search-skills.md +73 -0
- package/.windsurf/rules/security-review.md +384 -0
- package/.windsurf/rules/seed-conventions.md +285 -0
- package/.windsurf/rules/session-state.md +146 -0
- package/.windsurf/rules/setup-environment.md +39 -0
- package/.windsurf/rules/simulate-agents.md +26 -0
- package/.windsurf/rules/slice-tasks.md +68 -0
- package/.windsurf/rules/smoke-test.md +242 -0
- package/.windsurf/rules/spike-prototype.md +95 -0
- package/.windsurf/rules/stocktake-skills.md +72 -0
- package/.windsurf/rules/survey-context.md +135 -0
- package/.windsurf/rules/terse-mode.md +42 -0
- package/.windsurf/rules/trace-requirement.md +69 -0
- package/.windsurf/rules/using-bigpowers.md +111 -0
- package/.windsurf/rules/validate-contracts.md +309 -0
- package/.windsurf/rules/validate-fix.md +106 -0
- package/.windsurf/rules/verify-work.md +191 -0
- package/.windsurf/rules/visual-dashboard.md +50 -0
- package/.windsurf/rules/wire-ci.md +358 -0
- package/.windsurf/rules/wire-observability.md +97 -0
- package/.windsurf/rules/write-document.md +255 -0
- package/.zcode/skills/audit-code/SKILL.md +4 -7
- package/.zcode/skills/grill-me/SKILL.md +12 -0
- package/.zcode/skills/grill-with-docs/SKILL.md +12 -0
- package/.zcode/skills/request-review/SKILL.md +1 -0
- package/.zcode/skills/wire-ci/SKILL.md +164 -181
- package/CHANGELOG.md +37 -0
- package/CONVENTIONS.md +22 -0
- package/README.md +14 -1
- package/SKILL-INDEX.md +84 -76
- package/bin/setup.js +9 -1
- package/instructions +1 -0
- package/package.json +1 -1
- package/scripts/adapters/cline.sh +53 -3
- package/scripts/adapters/codebuddy.sh +58 -0
- package/scripts/adapters/codex.sh +58 -0
- package/scripts/adapters/copilot.sh +58 -0
- package/scripts/adapters/kilocode.sh +44 -3
- package/scripts/adapters/opencode.sh +58 -0
- package/scripts/adapters/qwen.sh +53 -1
- package/scripts/adapters/trae.sh +58 -0
- package/scripts/adapters/windsurf.sh +52 -0
- package/scripts/bp-yaml-set.sh +2 -0
- package/scripts/generate-skill-index.sh +20 -4
- package/scripts/generate-wave-b-hub.py +31 -0
- package/scripts/golden-g04-selftest.sh +19 -0
- package/scripts/hooks/cline/HOOKS.md +16 -0
- package/scripts/hooks/cline/hooks-manifest.json +12 -0
- package/scripts/hooks/cline/plugin/guard-git-plugin.ts +16 -0
- package/scripts/hooks/codebuddy/HOOKS.md +24 -0
- package/scripts/hooks/codebuddy/hooks-manifest.json +20 -0
- package/scripts/hooks/codebuddy/pre-tool-git-guard.sh +22 -0
- package/scripts/hooks/codebuddy/settings.example.json +16 -0
- package/scripts/hooks/codex/HOOKS.md +21 -0
- package/scripts/hooks/codex/hooks-manifest.json +17 -0
- package/scripts/hooks/codex/pre-tool-git-guard.sh +22 -0
- package/scripts/hooks/codex/settings.example.json +16 -0
- package/scripts/hooks/kilocode/HOOKS.md +16 -0
- package/scripts/hooks/kilocode/hooks-manifest.json +12 -0
- package/scripts/hooks/kilocode/plugin/guard-git-plugin.ts +16 -0
- package/scripts/hooks/qwen/HOOKS.md +27 -0
- package/scripts/hooks/qwen/hooks-manifest.json +23 -0
- package/scripts/hooks/qwen/pre-tool-git-guard.sh +22 -0
- package/scripts/hooks/qwen/settings.example.json +16 -0
- package/scripts/hooks/trae/HOOKS.md +17 -0
- package/scripts/hooks/trae/hooks-manifest.json +13 -0
- package/scripts/hooks/trae/pre-tool-git-guard.sh +22 -0
- package/scripts/hooks/trae/settings.example.json +16 -0
- package/scripts/hooks/windsurf/HOOKS.md +23 -0
- package/scripts/hooks/windsurf/hooks-manifest.json +19 -0
- package/scripts/hooks/windsurf/pre-tool-git-guard.sh +22 -0
- package/scripts/hooks/windsurf/settings.example.json +16 -0
- package/scripts/install.sh +33 -373
- package/scripts/lib/__pycache__/link_utils.cpython-312.pyc +0 -0
- package/scripts/lib/__pycache__/srp_engine_links.cpython-312.pyc +0 -0
- package/scripts/lib/context-wire.sh +5 -0
- package/scripts/lib/install-grep.sh +18 -0
- package/scripts/lib/install-helpers.js +139 -2
- package/scripts/lib/install-targets-a.sh +227 -0
- package/scripts/lib/install-targets-b.sh +226 -0
- package/scripts/lib/install-targets-c.sh +128 -0
- package/scripts/lib/install-targets-d.sh +179 -0
- package/scripts/lib/srp-engine.py +2 -70
- package/scripts/lib/srp_engine_links.py +59 -0
- package/scripts/lib/wave_b_hub_codegen_helpers.py +273 -0
- package/scripts/lib/wave_b_hub_codegen_install.py +134 -0
- package/scripts/lib/wave_b_hub_config.py +130 -0
- package/scripts/lib/wave_b_hub_patch.py +213 -0
- package/scripts/record-cycle-time.sh +3 -14
- package/scripts/targets.yaml +75 -2
- package/scripts/test-agy-hub.sh +11 -10
- package/scripts/test-cline-adapter.sh +55 -0
- package/scripts/test-cline-hub.sh +48 -0
- package/scripts/test-codebuddy-adapter.sh +63 -0
- package/scripts/test-codebuddy-hub.sh +49 -0
- package/scripts/test-codex-adapter.sh +63 -0
- package/scripts/test-codex-hub.sh +49 -0
- package/scripts/test-copilot-adapter.sh +47 -0
- package/scripts/test-copilot-hub.sh +43 -0
- package/scripts/test-gemini-hub.sh +10 -9
- package/scripts/test-hermes-hub.sh +7 -6
- package/scripts/test-install-helpers.js +9 -3
- package/scripts/test-kilocode-adapter.sh +55 -0
- package/scripts/test-kilocode-hub.sh +48 -0
- package/scripts/test-mimo-hub.sh +7 -6
- package/scripts/test-opencode-adapter.sh +47 -0
- package/scripts/test-opencode-hub.sh +43 -0
- package/scripts/test-qwen-adapter.sh +63 -0
- package/scripts/test-qwen-hub.sh +49 -0
- package/scripts/test-trae-adapter.sh +63 -0
- package/scripts/test-trae-hub.sh +49 -0
- package/scripts/test-windsurf-adapter.sh +63 -0
- package/scripts/test-windsurf-hub.sh +49 -0
- package/scripts/test-zcode-hub.sh +7 -6
- package/scripts/verify-install.sh +83 -29
- package/skills/audit-code/SKILL.md +4 -7
- package/skills/grill-me/SKILL.md +12 -0
- package/skills/grill-with-docs/SKILL.md +12 -0
- package/skills/request-review/SKILL.md +1 -0
- package/skills/visual-dashboard/scripts/frame-template.html +1 -39
- package/skills/wire-ci/REFERENCE.md +137 -152
- package/skills/wire-ci/SKILL.md +28 -30
- package/skills-lock.json +5 -5
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
# ── CodeBuddy (e72s02) ───────────────────────────────────────────────────────
|
|
2
|
+
|
|
3
|
+
CODEBUDDY_CONFIG_DIR="$HOME/.codebuddy"
|
|
4
|
+
CODEBUDDY_SKILLS_DIR="$CODEBUDDY_CONFIG_DIR/skills"
|
|
5
|
+
CODEBUDDY_RENDERED="$REPO_ROOT/.codebuddy/skills"
|
|
6
|
+
CODEBUDDY_CONTEXT="$CODEBUDDY_CONFIG_DIR/AGENTS.md"
|
|
7
|
+
CODEBUDDY_HOOKS_DIR="$CODEBUDDY_CONFIG_DIR/hooks"
|
|
8
|
+
CODEBUDDY_HOOK_SRC="$REPO_ROOT/scripts/hooks/codebuddy/pre-tool-git-guard.sh"
|
|
9
|
+
|
|
10
|
+
install_codebuddy() {
|
|
11
|
+
echo ""
|
|
12
|
+
echo "CodeBuddy → $CODEBUDDY_SKILLS_DIR/"
|
|
13
|
+
if [[ ! -d "$CODEBUDDY_RENDERED" ]]; then
|
|
14
|
+
echo " WARNING: $CODEBUDDY_RENDERED not found — run sync-skills.sh first"
|
|
15
|
+
return
|
|
16
|
+
fi
|
|
17
|
+
local count=0
|
|
18
|
+
for skill_dir in "$CODEBUDDY_RENDERED"/*/; do
|
|
19
|
+
[[ -f "${skill_dir}SKILL.md" ]] || continue
|
|
20
|
+
local name; name="$(basename "$skill_dir")"
|
|
21
|
+
link "$skill_dir" "$CODEBUDDY_SKILLS_DIR/$name"
|
|
22
|
+
count=$((count + 1))
|
|
23
|
+
done
|
|
24
|
+
echo " $count skills installed"
|
|
25
|
+
echo "CodeBuddy → context symlink $CODEBUDDY_CONTEXT"
|
|
26
|
+
source "$REPO_ROOT/scripts/lib/context-wire.sh"
|
|
27
|
+
local agents_src="$REPO_ROOT/AGENTS.md"
|
|
28
|
+
[[ -f "$agents_src" ]] || agents_src="$REPO_ROOT/docs/templates/AGENTS.md"
|
|
29
|
+
wire_context_mode symlink "$CODEBUDDY_CONTEXT" "" read "$agents_src"
|
|
30
|
+
if [[ -f "$CODEBUDDY_HOOK_SRC" ]]; then
|
|
31
|
+
echo "CodeBuddy Hooks → $CODEBUDDY_HOOKS_DIR/"
|
|
32
|
+
link "$CODEBUDDY_HOOK_SRC" "$CODEBUDDY_HOOKS_DIR/pre-tool-git-guard.sh"
|
|
33
|
+
chmod +x "$CODEBUDDY_HOOK_SRC" 2>/dev/null || true
|
|
34
|
+
echo " NOTE: copy $REPO_ROOT/scripts/hooks/codebuddy/settings.example.json into tool config"
|
|
35
|
+
fi
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
uninstall_codebuddy() {
|
|
39
|
+
echo ""
|
|
40
|
+
echo "CodeBuddy → removing management from $CODEBUDDY_CONFIG_DIR/"
|
|
41
|
+
if [[ -d "$CODEBUDDY_SKILLS_DIR" ]]; then
|
|
42
|
+
for dst in "$CODEBUDDY_SKILLS_DIR"/*/; do
|
|
43
|
+
[[ -L "${dst%/}" ]] || continue
|
|
44
|
+
unlink_if_managed "${dst%/}" "$REPO_ROOT/"
|
|
45
|
+
done
|
|
46
|
+
fi
|
|
47
|
+
unlink_if_managed "$CODEBUDDY_CONTEXT" "$REPO_ROOT/"
|
|
48
|
+
unlink_if_managed "$CODEBUDDY_HOOKS_DIR/pre-tool-git-guard.sh" "$REPO_ROOT/"
|
|
49
|
+
}
|
|
50
|
+
# ── Cline (e66s02) ───────────────────────────────────────────────────────
|
|
51
|
+
|
|
52
|
+
CLINE_CONFIG_DIR="$HOME/.cline"
|
|
53
|
+
CLINE_SKILLS_DIR="$CLINE_CONFIG_DIR/skills"
|
|
54
|
+
CLINE_RENDERED="$REPO_ROOT/.cline/skills"
|
|
55
|
+
|
|
56
|
+
install_cline() {
|
|
57
|
+
echo ""
|
|
58
|
+
echo "Cline → $CLINE_SKILLS_DIR/"
|
|
59
|
+
if [[ ! -d "$CLINE_RENDERED" ]]; then
|
|
60
|
+
echo " WARNING: $CLINE_RENDERED not found — run sync-skills.sh first"
|
|
61
|
+
return
|
|
62
|
+
fi
|
|
63
|
+
local count=0
|
|
64
|
+
for skill_dir in "$CLINE_RENDERED"/*/; do
|
|
65
|
+
[[ -f "${skill_dir}SKILL.md" ]] || continue
|
|
66
|
+
local name; name="$(basename "$skill_dir")"
|
|
67
|
+
link "$skill_dir" "$CLINE_SKILLS_DIR/$name"
|
|
68
|
+
count=$((count + 1))
|
|
69
|
+
done
|
|
70
|
+
echo " $count skills installed"
|
|
71
|
+
if [[ -d "$REPO_ROOT/scripts/hooks/cline/plugin" ]]; then
|
|
72
|
+
echo "Cline → hook plugin template at scripts/hooks/cline/plugin/ (manual install)"
|
|
73
|
+
fi
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
uninstall_cline() {
|
|
77
|
+
echo ""
|
|
78
|
+
echo "Cline → removing management from $CLINE_CONFIG_DIR/"
|
|
79
|
+
if [[ -d "$CLINE_SKILLS_DIR" ]]; then
|
|
80
|
+
for dst in "$CLINE_SKILLS_DIR"/*/; do
|
|
81
|
+
[[ -L "${dst%/}" ]] || continue
|
|
82
|
+
unlink_if_managed "${dst%/}" "$REPO_ROOT/"
|
|
83
|
+
done
|
|
84
|
+
fi
|
|
85
|
+
}
|
|
86
|
+
# ── Kilo (e67s02) ───────────────────────────────────────────────────────
|
|
87
|
+
|
|
88
|
+
KILOCODE_CONFIG_DIR="$HOME/.kilocode"
|
|
89
|
+
KILOCODE_SKILLS_DIR="$KILOCODE_CONFIG_DIR/rules"
|
|
90
|
+
KILOCODE_RENDERED="$REPO_ROOT/.kilocode/rules"
|
|
91
|
+
KILOCODE_CONTEXT="$KILOCODE_CONFIG_DIR/AGENTS.md"
|
|
92
|
+
|
|
93
|
+
install_kilocode() {
|
|
94
|
+
echo ""
|
|
95
|
+
echo "Kilo → $KILOCODE_SKILLS_DIR/"
|
|
96
|
+
if [[ ! -d "$KILOCODE_RENDERED" ]]; then
|
|
97
|
+
echo " WARNING: $KILOCODE_RENDERED not found — run sync-skills.sh first"
|
|
98
|
+
return
|
|
99
|
+
fi
|
|
100
|
+
local count=0
|
|
101
|
+
for rule in "$KILOCODE_RENDERED"/*.md; do
|
|
102
|
+
[[ -f "$rule" ]] || continue
|
|
103
|
+
link "$rule" "$KILOCODE_SKILLS_DIR/$(basename "$rule")"
|
|
104
|
+
count=$((count + 1))
|
|
105
|
+
done
|
|
106
|
+
echo " $count rules installed"
|
|
107
|
+
echo "Kilo → context copy $KILOCODE_CONTEXT"
|
|
108
|
+
source "$REPO_ROOT/scripts/lib/context-wire.sh"
|
|
109
|
+
local agents_src="$REPO_ROOT/AGENTS.md"
|
|
110
|
+
[[ -f "$agents_src" ]] || agents_src="$REPO_ROOT/docs/templates/AGENTS.md"
|
|
111
|
+
run mkdir -p "$(dirname "$KILOCODE_CONTEXT")"
|
|
112
|
+
run cp "$agents_src" "$KILOCODE_CONTEXT"
|
|
113
|
+
if [[ -d "$REPO_ROOT/scripts/hooks/kilocode/plugin" ]]; then
|
|
114
|
+
echo "Kilo → hook plugin template at scripts/hooks/kilocode/plugin/ (manual install)"
|
|
115
|
+
fi
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
uninstall_kilocode() {
|
|
119
|
+
echo ""
|
|
120
|
+
echo "Kilo → removing management from $KILOCODE_CONFIG_DIR/"
|
|
121
|
+
if [[ -d "$KILOCODE_SKILLS_DIR" ]]; then
|
|
122
|
+
for dst in "$KILOCODE_SKILLS_DIR"/*.md; do
|
|
123
|
+
[[ -L "$dst" ]] || continue
|
|
124
|
+
unlink_if_managed "$dst" "$REPO_ROOT/"
|
|
125
|
+
done
|
|
126
|
+
fi
|
|
127
|
+
unlink_if_managed "$KILOCODE_CONTEXT" "$REPO_ROOT/"
|
|
128
|
+
}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
# ── Trae (e70s02) ───────────────────────────────────────────────────────
|
|
2
|
+
|
|
3
|
+
TRAE_CONFIG_DIR="$HOME/.trae"
|
|
4
|
+
TRAE_SKILLS_DIR="$TRAE_CONFIG_DIR/skills"
|
|
5
|
+
TRAE_RENDERED="$REPO_ROOT/.trae/skills"
|
|
6
|
+
TRAE_CONTEXT="$TRAE_CONFIG_DIR/AGENTS.md"
|
|
7
|
+
TRAE_HOOKS_DIR="$TRAE_CONFIG_DIR/hooks"
|
|
8
|
+
TRAE_HOOK_SRC="$REPO_ROOT/scripts/hooks/trae/pre-tool-git-guard.sh"
|
|
9
|
+
|
|
10
|
+
install_trae() {
|
|
11
|
+
echo ""
|
|
12
|
+
echo "Trae → $TRAE_SKILLS_DIR/"
|
|
13
|
+
if [[ ! -d "$TRAE_RENDERED" ]]; then
|
|
14
|
+
echo " WARNING: $TRAE_RENDERED not found — run sync-skills.sh first"
|
|
15
|
+
return
|
|
16
|
+
fi
|
|
17
|
+
local count=0
|
|
18
|
+
for skill_dir in "$TRAE_RENDERED"/*/; do
|
|
19
|
+
[[ -f "${skill_dir}SKILL.md" ]] || continue
|
|
20
|
+
local name; name="$(basename "$skill_dir")"
|
|
21
|
+
link "$skill_dir" "$TRAE_SKILLS_DIR/$name"
|
|
22
|
+
count=$((count + 1))
|
|
23
|
+
done
|
|
24
|
+
echo " $count skills installed"
|
|
25
|
+
echo "Trae → context symlink $TRAE_CONTEXT"
|
|
26
|
+
source "$REPO_ROOT/scripts/lib/context-wire.sh"
|
|
27
|
+
local agents_src="$REPO_ROOT/AGENTS.md"
|
|
28
|
+
[[ -f "$agents_src" ]] || agents_src="$REPO_ROOT/docs/templates/AGENTS.md"
|
|
29
|
+
wire_context_mode symlink "$TRAE_CONTEXT" "" read "$agents_src"
|
|
30
|
+
if [[ -f "$TRAE_HOOK_SRC" ]]; then
|
|
31
|
+
echo "Trae Hooks → $TRAE_HOOKS_DIR/"
|
|
32
|
+
link "$TRAE_HOOK_SRC" "$TRAE_HOOKS_DIR/pre-tool-git-guard.sh"
|
|
33
|
+
chmod +x "$TRAE_HOOK_SRC" 2>/dev/null || true
|
|
34
|
+
echo " NOTE: copy $REPO_ROOT/scripts/hooks/trae/settings.example.json into tool config"
|
|
35
|
+
fi
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
uninstall_trae() {
|
|
39
|
+
echo ""
|
|
40
|
+
echo "Trae → removing management from $TRAE_CONFIG_DIR/"
|
|
41
|
+
if [[ -d "$TRAE_SKILLS_DIR" ]]; then
|
|
42
|
+
for dst in "$TRAE_SKILLS_DIR"/*/; do
|
|
43
|
+
[[ -L "${dst%/}" ]] || continue
|
|
44
|
+
unlink_if_managed "${dst%/}" "$REPO_ROOT/"
|
|
45
|
+
done
|
|
46
|
+
fi
|
|
47
|
+
unlink_if_managed "$TRAE_CONTEXT" "$REPO_ROOT/"
|
|
48
|
+
unlink_if_managed "$TRAE_HOOKS_DIR/pre-tool-git-guard.sh" "$REPO_ROOT/"
|
|
49
|
+
}
|
|
50
|
+
# ── Windsurf (e73s02) ───────────────────────────────────────────────────────
|
|
51
|
+
|
|
52
|
+
WINDSURF_CONFIG_DIR="$HOME/.codeium/windsurf"
|
|
53
|
+
WINDSURF_SKILLS_DIR="$WINDSURF_CONFIG_DIR/rules"
|
|
54
|
+
WINDSURF_RENDERED="$REPO_ROOT/.windsurf/rules"
|
|
55
|
+
WINDSURF_CONTEXT="$WINDSURF_CONFIG_DIR/AGENTS.md"
|
|
56
|
+
WINDSURF_HOOKS_DIR="$WINDSURF_CONFIG_DIR/hooks"
|
|
57
|
+
WINDSURF_HOOK_SRC="$REPO_ROOT/scripts/hooks/windsurf/pre-tool-git-guard.sh"
|
|
58
|
+
|
|
59
|
+
install_windsurf() {
|
|
60
|
+
echo ""
|
|
61
|
+
echo "Windsurf → $WINDSURF_SKILLS_DIR/"
|
|
62
|
+
if [[ ! -d "$WINDSURF_RENDERED" ]]; then
|
|
63
|
+
echo " WARNING: $WINDSURF_RENDERED not found — run sync-skills.sh first"
|
|
64
|
+
return
|
|
65
|
+
fi
|
|
66
|
+
local count=0
|
|
67
|
+
for rule in "$WINDSURF_RENDERED"/*.md; do
|
|
68
|
+
[[ -f "$rule" ]] || continue
|
|
69
|
+
link "$rule" "$WINDSURF_SKILLS_DIR/$(basename "$rule")"
|
|
70
|
+
count=$((count + 1))
|
|
71
|
+
done
|
|
72
|
+
echo " $count rules installed"
|
|
73
|
+
echo "Windsurf → context copy $WINDSURF_CONTEXT"
|
|
74
|
+
source "$REPO_ROOT/scripts/lib/context-wire.sh"
|
|
75
|
+
local agents_src="$REPO_ROOT/AGENTS.md"
|
|
76
|
+
[[ -f "$agents_src" ]] || agents_src="$REPO_ROOT/docs/templates/AGENTS.md"
|
|
77
|
+
run mkdir -p "$(dirname "$WINDSURF_CONTEXT")"
|
|
78
|
+
run cp "$agents_src" "$WINDSURF_CONTEXT"
|
|
79
|
+
if [[ -f "$WINDSURF_HOOK_SRC" ]]; then
|
|
80
|
+
echo "Windsurf Hooks → $WINDSURF_HOOKS_DIR/"
|
|
81
|
+
link "$WINDSURF_HOOK_SRC" "$WINDSURF_HOOKS_DIR/pre-tool-git-guard.sh"
|
|
82
|
+
chmod +x "$WINDSURF_HOOK_SRC" 2>/dev/null || true
|
|
83
|
+
echo " NOTE: copy $REPO_ROOT/scripts/hooks/windsurf/settings.example.json into tool config"
|
|
84
|
+
fi
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
uninstall_windsurf() {
|
|
88
|
+
echo ""
|
|
89
|
+
echo "Windsurf → removing management from $WINDSURF_CONFIG_DIR/"
|
|
90
|
+
if [[ -d "$WINDSURF_SKILLS_DIR" ]]; then
|
|
91
|
+
for dst in "$WINDSURF_SKILLS_DIR"/*.md; do
|
|
92
|
+
[[ -L "$dst" ]] || continue
|
|
93
|
+
unlink_if_managed "$dst" "$REPO_ROOT/"
|
|
94
|
+
done
|
|
95
|
+
fi
|
|
96
|
+
unlink_if_managed "$WINDSURF_CONTEXT" "$REPO_ROOT/"
|
|
97
|
+
unlink_if_managed "$WINDSURF_HOOKS_DIR/pre-tool-git-guard.sh" "$REPO_ROOT/"
|
|
98
|
+
}
|
|
99
|
+
# ── OpenCode (e62s02) ───────────────────────────────────────────────────────
|
|
100
|
+
|
|
101
|
+
OPENCODE_CONFIG_DIR="$HOME/.config/opencode"
|
|
102
|
+
OPENCODE_SKILLS_DIR="$OPENCODE_CONFIG_DIR/skills"
|
|
103
|
+
OPENCODE_RENDERED="$REPO_ROOT/.opencode/skills"
|
|
104
|
+
OPENCODE_CONTEXT="$OPENCODE_CONFIG_DIR/AGENTS.md"
|
|
105
|
+
|
|
106
|
+
install_opencode() {
|
|
107
|
+
echo ""
|
|
108
|
+
echo "OpenCode → $OPENCODE_SKILLS_DIR/"
|
|
109
|
+
if [[ ! -d "$OPENCODE_RENDERED" ]]; then
|
|
110
|
+
echo " WARNING: $OPENCODE_RENDERED not found — run sync-skills.sh first"
|
|
111
|
+
return
|
|
112
|
+
fi
|
|
113
|
+
local count=0
|
|
114
|
+
for skill_dir in "$OPENCODE_RENDERED"/*/; do
|
|
115
|
+
[[ -f "${skill_dir}SKILL.md" ]] || continue
|
|
116
|
+
local name; name="$(basename "$skill_dir")"
|
|
117
|
+
link "$skill_dir" "$OPENCODE_SKILLS_DIR/$name"
|
|
118
|
+
count=$((count + 1))
|
|
119
|
+
done
|
|
120
|
+
echo " $count skills installed"
|
|
121
|
+
echo "OpenCode → context symlink $OPENCODE_CONTEXT"
|
|
122
|
+
source "$REPO_ROOT/scripts/lib/context-wire.sh"
|
|
123
|
+
local agents_src="$REPO_ROOT/AGENTS.md"
|
|
124
|
+
[[ -f "$agents_src" ]] || agents_src="$REPO_ROOT/docs/templates/AGENTS.md"
|
|
125
|
+
wire_context_mode symlink "$OPENCODE_CONTEXT" "" read "$agents_src"
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
uninstall_opencode() {
|
|
129
|
+
echo ""
|
|
130
|
+
echo "OpenCode → removing management from $OPENCODE_CONFIG_DIR/"
|
|
131
|
+
if [[ -d "$OPENCODE_SKILLS_DIR" ]]; then
|
|
132
|
+
for dst in "$OPENCODE_SKILLS_DIR"/*/; do
|
|
133
|
+
[[ -L "${dst%/}" ]] || continue
|
|
134
|
+
unlink_if_managed "${dst%/}" "$REPO_ROOT/"
|
|
135
|
+
done
|
|
136
|
+
fi
|
|
137
|
+
unlink_if_managed "$OPENCODE_CONTEXT" "$REPO_ROOT/"
|
|
138
|
+
}
|
|
139
|
+
# ── Copilot CLI (e71s02) ───────────────────────────────────────────────────────
|
|
140
|
+
|
|
141
|
+
COPILOT_CONFIG_DIR="$HOME/.copilot"
|
|
142
|
+
COPILOT_SKILLS_DIR="$COPILOT_CONFIG_DIR/skills"
|
|
143
|
+
COPILOT_RENDERED="$REPO_ROOT/.copilot/skills"
|
|
144
|
+
COPILOT_CONTEXT="$COPILOT_CONFIG_DIR/AGENTS.md"
|
|
145
|
+
|
|
146
|
+
install_copilot() {
|
|
147
|
+
echo ""
|
|
148
|
+
echo "Copilot CLI → $COPILOT_SKILLS_DIR/"
|
|
149
|
+
if [[ ! -d "$COPILOT_RENDERED" ]]; then
|
|
150
|
+
echo " WARNING: $COPILOT_RENDERED not found — run sync-skills.sh first"
|
|
151
|
+
return
|
|
152
|
+
fi
|
|
153
|
+
local count=0
|
|
154
|
+
for skill_dir in "$COPILOT_RENDERED"/*/; do
|
|
155
|
+
[[ -f "${skill_dir}SKILL.md" ]] || continue
|
|
156
|
+
local name; name="$(basename "$skill_dir")"
|
|
157
|
+
link "$skill_dir" "$COPILOT_SKILLS_DIR/$name"
|
|
158
|
+
count=$((count + 1))
|
|
159
|
+
done
|
|
160
|
+
echo " $count skills installed"
|
|
161
|
+
echo "Copilot CLI → context copy $COPILOT_CONTEXT"
|
|
162
|
+
source "$REPO_ROOT/scripts/lib/context-wire.sh"
|
|
163
|
+
local agents_src="$REPO_ROOT/AGENTS.md"
|
|
164
|
+
[[ -f "$agents_src" ]] || agents_src="$REPO_ROOT/docs/templates/AGENTS.md"
|
|
165
|
+
run mkdir -p "$(dirname "$COPILOT_CONTEXT")"
|
|
166
|
+
run cp "$agents_src" "$COPILOT_CONTEXT"
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
uninstall_copilot() {
|
|
170
|
+
echo ""
|
|
171
|
+
echo "Copilot CLI → removing management from $COPILOT_CONFIG_DIR/"
|
|
172
|
+
if [[ -d "$COPILOT_SKILLS_DIR" ]]; then
|
|
173
|
+
for dst in "$COPILOT_SKILLS_DIR"/*/; do
|
|
174
|
+
[[ -L "${dst%/}" ]] || continue
|
|
175
|
+
unlink_if_managed "${dst%/}" "$REPO_ROOT/"
|
|
176
|
+
done
|
|
177
|
+
fi
|
|
178
|
+
unlink_if_managed "$COPILOT_CONTEXT" "$REPO_ROOT/"
|
|
179
|
+
}
|
|
@@ -13,7 +13,8 @@ _LIB_DIR = os.path.dirname(os.path.abspath(__file__))
|
|
|
13
13
|
if _LIB_DIR not in sys.path:
|
|
14
14
|
sys.path.insert(0, _LIB_DIR)
|
|
15
15
|
|
|
16
|
-
from link_utils import LINK_RE, EXTERNAL_RE
|
|
16
|
+
from link_utils import LINK_RE, EXTERNAL_RE # noqa: E402
|
|
17
|
+
from srp_engine_links import rewrite_links_for_pi # noqa: E402
|
|
17
18
|
|
|
18
19
|
# End-user setup (bigpowers setup) may run on a python3 without PyYAML.
|
|
19
20
|
# Prefer PyYAML for exact parsing; fall back to the dependency-free
|
|
@@ -25,75 +26,6 @@ except ModuleNotFoundError:
|
|
|
25
26
|
from simple_yaml import parse_simple_yaml
|
|
26
27
|
_load_yaml = parse_simple_yaml
|
|
27
28
|
|
|
28
|
-
def rewrite_links_for_pi(body, name):
|
|
29
|
-
"""Repoint relative links so they resolve from .pi/skills/<name>/.
|
|
30
|
-
|
|
31
|
-
Sibling *.md content is inlined into the rendered SKILL.md body, but the
|
|
32
|
-
links to those files (and to repo-root docs) still point at paths relative
|
|
33
|
-
to the source dir, so they dangle in the rendered tree. Repoint them at
|
|
34
|
-
the shipped source tree (skills/, profiles/, repo-root files) so links
|
|
35
|
-
resolve in repo checkouts and npm installs alike. External, anchor, and
|
|
36
|
-
absolute links pass through untouched.
|
|
37
|
-
|
|
38
|
-
Code fences and inline code are skipped — links inside them are examples,
|
|
39
|
-
not navigation targets.
|
|
40
|
-
"""
|
|
41
|
-
out_dir = os.path.join(".pi", "skills", name)
|
|
42
|
-
# Build a "shadow" copy with code spans blanked out so LINK_RE never
|
|
43
|
-
# matches inside ``` blocks or inline `code`.
|
|
44
|
-
shadow = strip_code_spans(body)
|
|
45
|
-
|
|
46
|
-
def repl(m):
|
|
47
|
-
# If this match falls inside a code span the shadow char is a space;
|
|
48
|
-
# the real body char at that position is not a '[' — so LINK_RE won't
|
|
49
|
-
# match in the shadow at all. The sub() runs on the shadow but we
|
|
50
|
-
# return the replacement for the real body using the captured groups.
|
|
51
|
-
text, raw_target = m.group(1), m.group(2).strip()
|
|
52
|
-
if EXTERNAL_RE.match(raw_target) or raw_target.startswith(('#', '/')):
|
|
53
|
-
return m.group(0)
|
|
54
|
-
# Split fragment before normpath to avoid mangling '#section/sub'.
|
|
55
|
-
if '#' in raw_target:
|
|
56
|
-
path_part, fragment = raw_target.split('#', 1)
|
|
57
|
-
frag_suffix = '#' + fragment
|
|
58
|
-
else:
|
|
59
|
-
path_part, frag_suffix = raw_target, ''
|
|
60
|
-
resolved = os.path.normpath(os.path.join("skills", name, path_part))
|
|
61
|
-
if resolved.startswith(".."):
|
|
62
|
-
return m.group(0) # escapes repo root; leave untouched
|
|
63
|
-
new_target = os.path.relpath(resolved, out_dir).replace(os.sep, '/') + frag_suffix
|
|
64
|
-
return f"[{text}]({new_target})"
|
|
65
|
-
|
|
66
|
-
return LINK_RE.sub(repl, shadow).replace(shadow, body) if shadow == body else _apply_repl_on_real(body, shadow, name, out_dir)
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
def _apply_repl_on_real(body, shadow, name, out_dir):
|
|
70
|
-
"""Apply link rewrites to *body* using *shadow* to skip code spans.
|
|
71
|
-
|
|
72
|
-
Iterates LINK_RE matches on *shadow* (which has code spans blanked) and
|
|
73
|
-
rebuilds body with only the matched positions replaced.
|
|
74
|
-
"""
|
|
75
|
-
result = []
|
|
76
|
-
last = 0
|
|
77
|
-
for m in LINK_RE.finditer(shadow):
|
|
78
|
-
result.append(body[last:m.start()])
|
|
79
|
-
text, raw_target = m.group(1), m.group(2).strip()
|
|
80
|
-
if EXTERNAL_RE.match(raw_target) or raw_target.startswith(('#', '/')):
|
|
81
|
-
result.append(body[m.start():m.end()])
|
|
82
|
-
else:
|
|
83
|
-
if '#' in raw_target:
|
|
84
|
-
path_part, fragment = raw_target.split('#', 1)
|
|
85
|
-
frag_suffix = '#' + fragment
|
|
86
|
-
else:
|
|
87
|
-
path_part, frag_suffix = raw_target, ''
|
|
88
|
-
resolved = os.path.normpath(os.path.join("skills", name, path_part))
|
|
89
|
-
if resolved.startswith(".."):
|
|
90
|
-
result.append(body[m.start():m.end()])
|
|
91
|
-
else:
|
|
92
|
-
new_target = os.path.relpath(resolved, out_dir).replace(os.sep, '/') + frag_suffix
|
|
93
|
-
result.append(f"[{text}]({new_target})")
|
|
94
|
-
last = m.end()
|
|
95
|
-
result.append(body[last:])
|
|
96
|
-
return ''.join(result)
|
|
97
29
|
|
|
98
30
|
def resolve_repo_root():
|
|
99
31
|
lib_dir = os.path.dirname(os.path.abspath(__file__))
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"""Pi adapter link rewriting for srp-engine."""
|
|
2
|
+
from __future__ import annotations
|
|
3
|
+
|
|
4
|
+
import os
|
|
5
|
+
|
|
6
|
+
from link_utils import EXTERNAL_RE, LINK_RE, strip_code_spans
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
def rewrite_links_for_pi(body, name):
|
|
10
|
+
"""Repoint relative links so they resolve from .pi/skills/<name>/."""
|
|
11
|
+
out_dir = os.path.join(".pi", "skills", name)
|
|
12
|
+
shadow = strip_code_spans(body)
|
|
13
|
+
|
|
14
|
+
def repl(m):
|
|
15
|
+
text, raw_target = m.group(1), m.group(2).strip()
|
|
16
|
+
if EXTERNAL_RE.match(raw_target) or raw_target.startswith(('#', '/')):
|
|
17
|
+
return m.group(0)
|
|
18
|
+
if '#' in raw_target:
|
|
19
|
+
path_part, fragment = raw_target.split('#', 1)
|
|
20
|
+
frag_suffix = '#' + fragment
|
|
21
|
+
else:
|
|
22
|
+
path_part, frag_suffix = raw_target, ''
|
|
23
|
+
resolved = os.path.normpath(os.path.join("skills", name, path_part))
|
|
24
|
+
if resolved.startswith(".."):
|
|
25
|
+
return m.group(0)
|
|
26
|
+
new_target = os.path.relpath(resolved, out_dir).replace(os.sep, '/') + frag_suffix
|
|
27
|
+
return f"[{text}]({new_target})"
|
|
28
|
+
|
|
29
|
+
return (
|
|
30
|
+
LINK_RE.sub(repl, shadow).replace(shadow, body)
|
|
31
|
+
if shadow == body
|
|
32
|
+
else _apply_repl_on_real(body, shadow, name, out_dir)
|
|
33
|
+
)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def _apply_repl_on_real(body, shadow, name, out_dir):
|
|
37
|
+
"""Apply link rewrites to body using shadow to skip code spans."""
|
|
38
|
+
result = []
|
|
39
|
+
last = 0
|
|
40
|
+
for m in LINK_RE.finditer(shadow):
|
|
41
|
+
result.append(body[last:m.start()])
|
|
42
|
+
text, raw_target = m.group(1), m.group(2).strip()
|
|
43
|
+
if EXTERNAL_RE.match(raw_target) or raw_target.startswith(('#', '/')):
|
|
44
|
+
result.append(body[m.start():m.end()])
|
|
45
|
+
else:
|
|
46
|
+
if '#' in raw_target:
|
|
47
|
+
path_part, fragment = raw_target.split('#', 1)
|
|
48
|
+
frag_suffix = '#' + fragment
|
|
49
|
+
else:
|
|
50
|
+
path_part, frag_suffix = raw_target, ''
|
|
51
|
+
resolved = os.path.normpath(os.path.join("skills", name, path_part))
|
|
52
|
+
if resolved.startswith(".."):
|
|
53
|
+
result.append(body[m.start():m.end()])
|
|
54
|
+
else:
|
|
55
|
+
new_target = os.path.relpath(resolved, out_dir).replace(os.sep, '/') + frag_suffix
|
|
56
|
+
result.append(f"[{text}]({new_target})")
|
|
57
|
+
last = m.end()
|
|
58
|
+
result.append(body[last:])
|
|
59
|
+
return ''.join(result)
|