aw-ecc 1.4.21
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/api-design/SKILL.md +523 -0
- package/.agents/skills/api-design/agents/openai.yaml +7 -0
- package/.agents/skills/article-writing/SKILL.md +85 -0
- package/.agents/skills/article-writing/agents/openai.yaml +7 -0
- package/.agents/skills/backend-patterns/SKILL.md +598 -0
- package/.agents/skills/backend-patterns/agents/openai.yaml +7 -0
- package/.agents/skills/bun-runtime/SKILL.md +84 -0
- package/.agents/skills/bun-runtime/agents/openai.yaml +7 -0
- package/.agents/skills/claude-api/SKILL.md +337 -0
- package/.agents/skills/claude-api/agents/openai.yaml +7 -0
- package/.agents/skills/coding-standards/SKILL.md +530 -0
- package/.agents/skills/coding-standards/agents/openai.yaml +7 -0
- package/.agents/skills/content-engine/SKILL.md +88 -0
- package/.agents/skills/content-engine/agents/openai.yaml +7 -0
- package/.agents/skills/crosspost/SKILL.md +188 -0
- package/.agents/skills/crosspost/agents/openai.yaml +7 -0
- package/.agents/skills/deep-research/SKILL.md +155 -0
- package/.agents/skills/deep-research/agents/openai.yaml +7 -0
- package/.agents/skills/dmux-workflows/SKILL.md +144 -0
- package/.agents/skills/dmux-workflows/agents/openai.yaml +7 -0
- package/.agents/skills/documentation-lookup/SKILL.md +90 -0
- package/.agents/skills/documentation-lookup/agents/openai.yaml +7 -0
- package/.agents/skills/e2e-testing/SKILL.md +326 -0
- package/.agents/skills/e2e-testing/agents/openai.yaml +7 -0
- package/.agents/skills/eval-harness/SKILL.md +236 -0
- package/.agents/skills/eval-harness/agents/openai.yaml +7 -0
- package/.agents/skills/everything-claude-code/SKILL.md +442 -0
- package/.agents/skills/everything-claude-code/agents/openai.yaml +6 -0
- package/.agents/skills/exa-search/SKILL.md +170 -0
- package/.agents/skills/exa-search/agents/openai.yaml +7 -0
- package/.agents/skills/fal-ai-media/SKILL.md +277 -0
- package/.agents/skills/fal-ai-media/agents/openai.yaml +7 -0
- package/.agents/skills/frontend-patterns/SKILL.md +642 -0
- package/.agents/skills/frontend-patterns/agents/openai.yaml +7 -0
- package/.agents/skills/frontend-slides/SKILL.md +184 -0
- package/.agents/skills/frontend-slides/STYLE_PRESETS.md +330 -0
- package/.agents/skills/frontend-slides/agents/openai.yaml +7 -0
- package/.agents/skills/investor-materials/SKILL.md +96 -0
- package/.agents/skills/investor-materials/agents/openai.yaml +7 -0
- package/.agents/skills/investor-outreach/SKILL.md +76 -0
- package/.agents/skills/investor-outreach/agents/openai.yaml +7 -0
- package/.agents/skills/market-research/SKILL.md +75 -0
- package/.agents/skills/market-research/agents/openai.yaml +7 -0
- package/.agents/skills/mcp-server-patterns/SKILL.md +67 -0
- package/.agents/skills/nextjs-turbopack/SKILL.md +44 -0
- package/.agents/skills/nextjs-turbopack/agents/openai.yaml +7 -0
- package/.agents/skills/security-review/SKILL.md +495 -0
- package/.agents/skills/security-review/agents/openai.yaml +7 -0
- package/.agents/skills/strategic-compact/SKILL.md +103 -0
- package/.agents/skills/strategic-compact/agents/openai.yaml +7 -0
- package/.agents/skills/tdd-workflow/SKILL.md +410 -0
- package/.agents/skills/tdd-workflow/agents/openai.yaml +7 -0
- package/.agents/skills/verification-loop/SKILL.md +126 -0
- package/.agents/skills/verification-loop/agents/openai.yaml +7 -0
- package/.agents/skills/video-editing/SKILL.md +308 -0
- package/.agents/skills/video-editing/agents/openai.yaml +7 -0
- package/.agents/skills/x-api/SKILL.md +214 -0
- package/.agents/skills/x-api/agents/openai.yaml +7 -0
- package/.claude-plugin/README.md +17 -0
- package/.claude-plugin/plugin.json +24 -0
- package/.codex/AGENTS.md +93 -0
- package/.codex/INSTALL.md +64 -0
- package/.codex/agents/docs-researcher.toml +9 -0
- package/.codex/agents/explorer.toml +9 -0
- package/.codex/agents/reviewer.toml +9 -0
- package/.codex/config.toml +108 -0
- package/.codex/hooks/aw-post-tool-use.sh +5 -0
- package/.codex/hooks/aw-pre-tool-use.sh +5 -0
- package/.codex/hooks/aw-session-start.sh +21 -0
- package/.codex/hooks/aw-stop.sh +5 -0
- package/.codex/hooks/aw-user-prompt-submit.sh +9 -0
- package/.codex/hooks.json +62 -0
- package/.cursor/INSTALL.md +40 -0
- package/.cursor/hooks/adapter.js +120 -0
- package/.cursor/hooks/after-file-edit.js +11 -0
- package/.cursor/hooks/after-mcp-execution.js +11 -0
- package/.cursor/hooks/after-shell-execution.js +11 -0
- package/.cursor/hooks/after-tab-file-edit.js +12 -0
- package/.cursor/hooks/aw-phase-adapter.js +43 -0
- package/.cursor/hooks/before-mcp-execution.js +11 -0
- package/.cursor/hooks/before-read-file.js +13 -0
- package/.cursor/hooks/before-shell-execution.js +11 -0
- package/.cursor/hooks/before-submit-prompt.js +41 -0
- package/.cursor/hooks/before-tab-file-read.js +13 -0
- package/.cursor/hooks/pre-compact.js +11 -0
- package/.cursor/hooks/session-end.js +11 -0
- package/.cursor/hooks/session-start.js +11 -0
- package/.cursor/hooks/shared/aw-phase-definitions.js +190 -0
- package/.cursor/hooks/shared/aw-phase-runner.js +61 -0
- package/.cursor/hooks/shared/session-start.sh +20 -0
- package/.cursor/hooks/shared/user-prompt-submit.sh +155 -0
- package/.cursor/hooks/stop.js +11 -0
- package/.cursor/hooks/subagent-start.js +10 -0
- package/.cursor/hooks/subagent-stop.js +10 -0
- package/.cursor/hooks.json +115 -0
- package/.cursor/rules/common-agents.md +53 -0
- package/.cursor/rules/common-coding-style.md +52 -0
- package/.cursor/rules/common-development-workflow.md +33 -0
- package/.cursor/rules/common-git-workflow.md +28 -0
- package/.cursor/rules/common-hooks.md +34 -0
- package/.cursor/rules/common-patterns.md +35 -0
- package/.cursor/rules/common-performance.md +59 -0
- package/.cursor/rules/common-security.md +33 -0
- package/.cursor/rules/common-testing.md +33 -0
- package/.cursor/rules/golang-coding-style.md +31 -0
- package/.cursor/rules/golang-hooks.md +16 -0
- package/.cursor/rules/golang-patterns.md +44 -0
- package/.cursor/rules/golang-security.md +33 -0
- package/.cursor/rules/golang-testing.md +30 -0
- package/.cursor/rules/kotlin-coding-style.md +39 -0
- package/.cursor/rules/kotlin-hooks.md +16 -0
- package/.cursor/rules/kotlin-patterns.md +50 -0
- package/.cursor/rules/kotlin-security.md +58 -0
- package/.cursor/rules/kotlin-testing.md +38 -0
- package/.cursor/rules/php-coding-style.md +25 -0
- package/.cursor/rules/php-hooks.md +21 -0
- package/.cursor/rules/php-patterns.md +23 -0
- package/.cursor/rules/php-security.md +24 -0
- package/.cursor/rules/php-testing.md +26 -0
- package/.cursor/rules/python-coding-style.md +42 -0
- package/.cursor/rules/python-hooks.md +19 -0
- package/.cursor/rules/python-patterns.md +39 -0
- package/.cursor/rules/python-security.md +30 -0
- package/.cursor/rules/python-testing.md +38 -0
- package/.cursor/rules/swift-coding-style.md +47 -0
- package/.cursor/rules/swift-hooks.md +20 -0
- package/.cursor/rules/swift-patterns.md +66 -0
- package/.cursor/rules/swift-security.md +33 -0
- package/.cursor/rules/swift-testing.md +45 -0
- package/.cursor/rules/typescript-coding-style.md +63 -0
- package/.cursor/rules/typescript-hooks.md +20 -0
- package/.cursor/rules/typescript-patterns.md +50 -0
- package/.cursor/rules/typescript-security.md +26 -0
- package/.cursor/rules/typescript-testing.md +16 -0
- package/.cursor/skills/article-writing/SKILL.md +85 -0
- package/.cursor/skills/bun-runtime/SKILL.md +84 -0
- package/.cursor/skills/content-engine/SKILL.md +88 -0
- package/.cursor/skills/documentation-lookup/SKILL.md +90 -0
- package/.cursor/skills/frontend-slides/SKILL.md +184 -0
- package/.cursor/skills/frontend-slides/STYLE_PRESETS.md +330 -0
- package/.cursor/skills/investor-materials/SKILL.md +96 -0
- package/.cursor/skills/investor-outreach/SKILL.md +76 -0
- package/.cursor/skills/market-research/SKILL.md +75 -0
- package/.cursor/skills/mcp-server-patterns/SKILL.md +67 -0
- package/.cursor/skills/nextjs-turbopack/SKILL.md +44 -0
- package/.opencode/MIGRATION.md +368 -0
- package/.opencode/README.md +204 -0
- package/.opencode/commands/build-fix.md +56 -0
- package/.opencode/commands/checkpoint.md +67 -0
- package/.opencode/commands/code-review.md +68 -0
- package/.opencode/commands/e2e.md +105 -0
- package/.opencode/commands/eval.md +88 -0
- package/.opencode/commands/evolve.md +36 -0
- package/.opencode/commands/go-build.md +87 -0
- package/.opencode/commands/go-review.md +71 -0
- package/.opencode/commands/go-test.md +131 -0
- package/.opencode/commands/harness-audit.md +71 -0
- package/.opencode/commands/instinct-export.md +93 -0
- package/.opencode/commands/instinct-import.md +88 -0
- package/.opencode/commands/instinct-status.md +29 -0
- package/.opencode/commands/learn.md +61 -0
- package/.opencode/commands/loop-start.md +32 -0
- package/.opencode/commands/loop-status.md +24 -0
- package/.opencode/commands/model-route.md +26 -0
- package/.opencode/commands/orchestrate.md +88 -0
- package/.opencode/commands/plan.md +49 -0
- package/.opencode/commands/projects.md +23 -0
- package/.opencode/commands/promote.md +23 -0
- package/.opencode/commands/quality-gate.md +29 -0
- package/.opencode/commands/refactor-clean.md +102 -0
- package/.opencode/commands/rust-build.md +78 -0
- package/.opencode/commands/rust-review.md +65 -0
- package/.opencode/commands/rust-test.md +104 -0
- package/.opencode/commands/security.md +89 -0
- package/.opencode/commands/setup-pm.md +67 -0
- package/.opencode/commands/skill-create.md +117 -0
- package/.opencode/commands/tdd.md +66 -0
- package/.opencode/commands/test-coverage.md +80 -0
- package/.opencode/commands/update-codemaps.md +81 -0
- package/.opencode/commands/update-docs.md +67 -0
- package/.opencode/commands/verify.md +67 -0
- package/.opencode/index.ts +79 -0
- package/.opencode/instructions/INSTRUCTIONS.md +337 -0
- package/.opencode/opencode.json +319 -0
- package/.opencode/package.json +70 -0
- package/.opencode/plugins/ecc-hooks.ts +455 -0
- package/.opencode/plugins/index.ts +12 -0
- package/.opencode/prompts/agents/architect.txt +175 -0
- package/.opencode/prompts/agents/build-error-resolver.txt +233 -0
- package/.opencode/prompts/agents/code-reviewer.txt +103 -0
- package/.opencode/prompts/agents/database-reviewer.txt +247 -0
- package/.opencode/prompts/agents/doc-updater.txt +192 -0
- package/.opencode/prompts/agents/e2e-runner.txt +305 -0
- package/.opencode/prompts/agents/go-build-resolver.txt +325 -0
- package/.opencode/prompts/agents/go-reviewer.txt +241 -0
- package/.opencode/prompts/agents/planner.txt +112 -0
- package/.opencode/prompts/agents/refactor-cleaner.txt +241 -0
- package/.opencode/prompts/agents/rust-build-resolver.txt +93 -0
- package/.opencode/prompts/agents/rust-reviewer.txt +61 -0
- package/.opencode/prompts/agents/security-reviewer.txt +207 -0
- package/.opencode/prompts/agents/tdd-guide.txt +211 -0
- package/.opencode/tools/check-coverage.ts +170 -0
- package/.opencode/tools/format-code.ts +68 -0
- package/.opencode/tools/git-summary.ts +54 -0
- package/.opencode/tools/index.ts +13 -0
- package/.opencode/tools/lint-check.ts +85 -0
- package/.opencode/tools/run-tests.ts +139 -0
- package/.opencode/tools/security-audit.ts +277 -0
- package/.opencode/tsconfig.json +29 -0
- package/AGENTS.md +124 -0
- package/LICENSE +21 -0
- package/README.md +146 -0
- package/README.zh-CN.md +552 -0
- package/agents/architect.md +211 -0
- package/agents/build-error-resolver.md +114 -0
- package/agents/chief-of-staff.md +151 -0
- package/agents/code-reviewer.md +237 -0
- package/agents/cpp-build-resolver.md +90 -0
- package/agents/cpp-reviewer.md +72 -0
- package/agents/database-reviewer.md +91 -0
- package/agents/doc-updater.md +107 -0
- package/agents/docs-lookup.md +68 -0
- package/agents/e2e-runner.md +107 -0
- package/agents/evals/code-reviewer-scenarios.json +23 -0
- package/agents/flutter-reviewer.md +243 -0
- package/agents/go-build-resolver.md +94 -0
- package/agents/go-reviewer.md +76 -0
- package/agents/harness-optimizer.md +35 -0
- package/agents/java-build-resolver.md +153 -0
- package/agents/java-reviewer.md +92 -0
- package/agents/kotlin-build-resolver.md +118 -0
- package/agents/kotlin-reviewer.md +159 -0
- package/agents/loop-operator.md +36 -0
- package/agents/planner.md +212 -0
- package/agents/python-reviewer.md +98 -0
- package/agents/pytorch-build-resolver.md +120 -0
- package/agents/refactor-cleaner.md +85 -0
- package/agents/rust-build-resolver.md +148 -0
- package/agents/rust-reviewer.md +94 -0
- package/agents/security-reviewer.md +108 -0
- package/agents/tdd-guide.md +91 -0
- package/agents/typescript-reviewer.md +112 -0
- package/commands/aside.md +164 -0
- package/commands/brainstorm.md +16 -0
- package/commands/build-fix.md +70 -0
- package/commands/build.md +91 -0
- package/commands/checkpoint.md +74 -0
- package/commands/claw.md +51 -0
- package/commands/code-review.md +24 -0
- package/commands/context-budget.md +29 -0
- package/commands/cpp-build.md +174 -0
- package/commands/cpp-review.md +132 -0
- package/commands/cpp-test.md +252 -0
- package/commands/deploy.md +75 -0
- package/commands/devfleet.md +92 -0
- package/commands/docs.md +31 -0
- package/commands/e2e.md +373 -0
- package/commands/eval.md +120 -0
- package/commands/evolve.md +178 -0
- package/commands/execute.md +51 -0
- package/commands/finish.md +22 -0
- package/commands/go-build.md +184 -0
- package/commands/go-review.md +148 -0
- package/commands/go-test.md +269 -0
- package/commands/gradle-build.md +70 -0
- package/commands/harness-audit.md +71 -0
- package/commands/instinct-export.md +66 -0
- package/commands/instinct-import.md +114 -0
- package/commands/instinct-status.md +59 -0
- package/commands/investigate.md +63 -0
- package/commands/kotlin-build.md +175 -0
- package/commands/kotlin-review.md +140 -0
- package/commands/kotlin-test.md +313 -0
- package/commands/learn-eval.md +116 -0
- package/commands/learn.md +70 -0
- package/commands/loop-start.md +32 -0
- package/commands/loop-status.md +24 -0
- package/commands/model-route.md +26 -0
- package/commands/multi-backend.md +166 -0
- package/commands/multi-execute.md +324 -0
- package/commands/multi-frontend.md +165 -0
- package/commands/multi-plan.md +277 -0
- package/commands/multi-workflow.md +200 -0
- package/commands/orchestrate.md +240 -0
- package/commands/plan.md +130 -0
- package/commands/pm2.md +272 -0
- package/commands/projects.md +39 -0
- package/commands/promote.md +41 -0
- package/commands/prompt-optimize.md +38 -0
- package/commands/prune.md +31 -0
- package/commands/python-review.md +297 -0
- package/commands/quality-gate.md +29 -0
- package/commands/refactor-clean.md +89 -0
- package/commands/resume-session.md +155 -0
- package/commands/review.md +64 -0
- package/commands/rules-distill.md +11 -0
- package/commands/rust-build.md +188 -0
- package/commands/rust-review.md +142 -0
- package/commands/rust-test.md +309 -0
- package/commands/save-session.md +275 -0
- package/commands/sessions.md +333 -0
- package/commands/setup-pm.md +80 -0
- package/commands/ship.md +77 -0
- package/commands/skill-create.md +174 -0
- package/commands/skill-health.md +54 -0
- package/commands/tdd.md +20 -0
- package/commands/test-coverage.md +77 -0
- package/commands/test.md +64 -0
- package/commands/update-codemaps.md +72 -0
- package/commands/update-docs.md +84 -0
- package/commands/verify.md +55 -0
- package/contexts/dev.md +20 -0
- package/contexts/research.md +26 -0
- package/contexts/review.md +22 -0
- package/examples/CLAUDE.md +100 -0
- package/examples/statusline.json +19 -0
- package/examples/user-CLAUDE.md +109 -0
- package/hooks/README.md +219 -0
- package/hooks/hooks.json +320 -0
- package/hooks/run-hook.cmd +31 -0
- package/hooks/session-start +6 -0
- package/install.ps1 +38 -0
- package/install.sh +17 -0
- package/manifests/install-components.json +415 -0
- package/manifests/install-modules.json +500 -0
- package/manifests/install-profiles.json +80 -0
- package/mcp-configs/mcp-servers.json +153 -0
- package/package.json +131 -0
- package/plugins/README.md +85 -0
- package/rules/README.md +106 -0
- package/rules/common/agents.md +50 -0
- package/rules/common/coding-style.md +48 -0
- package/rules/common/development-workflow.md +38 -0
- package/rules/common/git-workflow.md +24 -0
- package/rules/common/hooks.md +30 -0
- package/rules/common/patterns.md +31 -0
- package/rules/common/performance.md +55 -0
- package/rules/common/security.md +29 -0
- package/rules/common/testing.md +29 -0
- package/rules/cpp/coding-style.md +44 -0
- package/rules/cpp/hooks.md +39 -0
- package/rules/cpp/patterns.md +51 -0
- package/rules/cpp/security.md +51 -0
- package/rules/cpp/testing.md +44 -0
- package/rules/csharp/coding-style.md +72 -0
- package/rules/csharp/hooks.md +25 -0
- package/rules/csharp/patterns.md +50 -0
- package/rules/csharp/security.md +58 -0
- package/rules/csharp/testing.md +46 -0
- package/rules/golang/coding-style.md +32 -0
- package/rules/golang/hooks.md +17 -0
- package/rules/golang/patterns.md +45 -0
- package/rules/golang/security.md +34 -0
- package/rules/golang/testing.md +31 -0
- package/rules/java/coding-style.md +114 -0
- package/rules/java/hooks.md +18 -0
- package/rules/java/patterns.md +146 -0
- package/rules/java/security.md +100 -0
- package/rules/java/testing.md +131 -0
- package/rules/kotlin/coding-style.md +86 -0
- package/rules/kotlin/hooks.md +17 -0
- package/rules/kotlin/patterns.md +146 -0
- package/rules/kotlin/security.md +82 -0
- package/rules/kotlin/testing.md +128 -0
- package/rules/perl/coding-style.md +46 -0
- package/rules/perl/hooks.md +22 -0
- package/rules/perl/patterns.md +76 -0
- package/rules/perl/security.md +69 -0
- package/rules/perl/testing.md +54 -0
- package/rules/php/coding-style.md +40 -0
- package/rules/php/hooks.md +24 -0
- package/rules/php/patterns.md +33 -0
- package/rules/php/security.md +37 -0
- package/rules/php/testing.md +39 -0
- package/rules/python/coding-style.md +42 -0
- package/rules/python/hooks.md +19 -0
- package/rules/python/patterns.md +39 -0
- package/rules/python/security.md +30 -0
- package/rules/python/testing.md +38 -0
- package/rules/rust/coding-style.md +151 -0
- package/rules/rust/hooks.md +16 -0
- package/rules/rust/patterns.md +168 -0
- package/rules/rust/security.md +141 -0
- package/rules/rust/testing.md +154 -0
- package/rules/swift/coding-style.md +47 -0
- package/rules/swift/hooks.md +20 -0
- package/rules/swift/patterns.md +66 -0
- package/rules/swift/security.md +33 -0
- package/rules/swift/testing.md +45 -0
- package/rules/typescript/coding-style.md +199 -0
- package/rules/typescript/hooks.md +22 -0
- package/rules/typescript/patterns.md +52 -0
- package/rules/typescript/security.md +28 -0
- package/rules/typescript/testing.md +18 -0
- package/schemas/ecc-install-config.schema.json +58 -0
- package/schemas/hooks.schema.json +197 -0
- package/schemas/install-components.schema.json +58 -0
- package/schemas/install-modules.schema.json +105 -0
- package/schemas/install-profiles.schema.json +45 -0
- package/schemas/install-state.schema.json +210 -0
- package/schemas/package-manager.schema.json +23 -0
- package/schemas/plugin.schema.json +58 -0
- package/schemas/provenance.schema.json +31 -0
- package/schemas/state-store.schema.json +316 -0
- package/scripts/ci/catalog.js +245 -0
- package/scripts/ci/validate-agents.js +81 -0
- package/scripts/ci/validate-commands.js +136 -0
- package/scripts/ci/validate-hooks.js +239 -0
- package/scripts/ci/validate-install-manifests.js +214 -0
- package/scripts/ci/validate-no-personal-paths.js +63 -0
- package/scripts/ci/validate-rules.js +81 -0
- package/scripts/ci/validate-skills.js +56 -0
- package/scripts/claw.js +473 -0
- package/scripts/codex/merge-mcp-config.js +304 -0
- package/scripts/cursor-aw-home/hooks.json +115 -0
- package/scripts/cursor-aw-hooks/adapter.js +120 -0
- package/scripts/cursor-aw-hooks/after-file-edit.js +11 -0
- package/scripts/cursor-aw-hooks/after-mcp-execution.js +11 -0
- package/scripts/cursor-aw-hooks/after-shell-execution.js +11 -0
- package/scripts/cursor-aw-hooks/aw-phase-adapter.js +43 -0
- package/scripts/cursor-aw-hooks/before-mcp-execution.js +11 -0
- package/scripts/cursor-aw-hooks/before-shell-execution.js +11 -0
- package/scripts/cursor-aw-hooks/before-submit-prompt.js +41 -0
- package/scripts/cursor-aw-hooks/pre-compact.js +11 -0
- package/scripts/cursor-aw-hooks/session-end.js +11 -0
- package/scripts/cursor-aw-hooks/session-start.js +11 -0
- package/scripts/cursor-aw-hooks/stop.js +11 -0
- package/scripts/doctor.js +110 -0
- package/scripts/ecc.js +208 -0
- package/scripts/generate-aw-hooks.js +110 -0
- package/scripts/harness-audit.js +512 -0
- package/scripts/hooks/auto-tmux-dev.js +88 -0
- package/scripts/hooks/check-console-log.js +71 -0
- package/scripts/hooks/check-hook-enabled.js +12 -0
- package/scripts/hooks/config-protection.js +125 -0
- package/scripts/hooks/cost-tracker.js +78 -0
- package/scripts/hooks/doc-file-warning.js +63 -0
- package/scripts/hooks/evaluate-session.js +100 -0
- package/scripts/hooks/governance-capture.js +280 -0
- package/scripts/hooks/insaits-security-monitor.py +269 -0
- package/scripts/hooks/insaits-security-wrapper.js +88 -0
- package/scripts/hooks/mcp-health-check.js +588 -0
- package/scripts/hooks/post-bash-build-complete.js +27 -0
- package/scripts/hooks/post-bash-pr-created.js +37 -0
- package/scripts/hooks/post-edit-console-warn.js +54 -0
- package/scripts/hooks/post-edit-format.js +109 -0
- package/scripts/hooks/post-edit-typecheck.js +96 -0
- package/scripts/hooks/post-mcp-log.js +27 -0
- package/scripts/hooks/pre-bash-dev-server-block.js +187 -0
- package/scripts/hooks/pre-bash-git-push-reminder.js +28 -0
- package/scripts/hooks/pre-bash-tmux-reminder.js +33 -0
- package/scripts/hooks/pre-compact.js +48 -0
- package/scripts/hooks/pre-mcp-log.js +26 -0
- package/scripts/hooks/pre-write-doc-warn.js +9 -0
- package/scripts/hooks/quality-gate.js +168 -0
- package/scripts/hooks/run-with-flags-shell.sh +32 -0
- package/scripts/hooks/run-with-flags.js +120 -0
- package/scripts/hooks/session-end-marker.js +29 -0
- package/scripts/hooks/session-end.js +301 -0
- package/scripts/hooks/session-start-rules-context.sh +5 -0
- package/scripts/hooks/session-start.js +98 -0
- package/scripts/hooks/shared/aw-phase-definitions.js +190 -0
- package/scripts/hooks/shared/aw-phase-runner.js +61 -0
- package/scripts/hooks/shared/session-start.sh +20 -0
- package/scripts/hooks/shared/user-prompt-submit.sh +155 -0
- package/scripts/hooks/suggest-compact.js +80 -0
- package/scripts/install-apply.js +140 -0
- package/scripts/install-plan.js +254 -0
- package/scripts/lib/agent-compress.js +244 -0
- package/scripts/lib/aw-harness-registry.js +122 -0
- package/scripts/lib/aw-hook-contract.js +86 -0
- package/scripts/lib/claude-aw-hook-files.js +28 -0
- package/scripts/lib/claude-hook-config.js +76 -0
- package/scripts/lib/codex-aw-hook-files.js +38 -0
- package/scripts/lib/codex-hook-config.js +88 -0
- package/scripts/lib/cursor-aw-hook-files.js +62 -0
- package/scripts/lib/cursor-hook-config.js +148 -0
- package/scripts/lib/hook-flags.js +74 -0
- package/scripts/lib/inspection.js +212 -0
- package/scripts/lib/install/apply.js +23 -0
- package/scripts/lib/install/config.js +82 -0
- package/scripts/lib/install/request.js +120 -0
- package/scripts/lib/install/runtime.js +54 -0
- package/scripts/lib/install-executor.js +778 -0
- package/scripts/lib/install-lifecycle.js +1311 -0
- package/scripts/lib/install-manifests.js +448 -0
- package/scripts/lib/install-state.js +313 -0
- package/scripts/lib/install-targets/antigravity-project.js +69 -0
- package/scripts/lib/install-targets/claude-home.js +54 -0
- package/scripts/lib/install-targets/codex-home.js +62 -0
- package/scripts/lib/install-targets/cursor-project.js +80 -0
- package/scripts/lib/install-targets/helpers.js +307 -0
- package/scripts/lib/install-targets/opencode-home.js +10 -0
- package/scripts/lib/install-targets/registry.js +66 -0
- package/scripts/lib/orchestration-session.js +299 -0
- package/scripts/lib/package-manager.d.ts +119 -0
- package/scripts/lib/package-manager.js +431 -0
- package/scripts/lib/project-detect.js +428 -0
- package/scripts/lib/resolve-ecc-root.js +89 -0
- package/scripts/lib/resolve-formatter.js +185 -0
- package/scripts/lib/session-adapters/canonical-session.js +531 -0
- package/scripts/lib/session-adapters/claude-history.js +160 -0
- package/scripts/lib/session-adapters/dmux-tmux.js +90 -0
- package/scripts/lib/session-adapters/registry.js +127 -0
- package/scripts/lib/session-aliases.d.ts +136 -0
- package/scripts/lib/session-aliases.js +481 -0
- package/scripts/lib/session-manager.d.ts +131 -0
- package/scripts/lib/session-manager.js +464 -0
- package/scripts/lib/shell-split.js +86 -0
- package/scripts/lib/skill-evolution/dashboard.js +401 -0
- package/scripts/lib/skill-evolution/health.js +263 -0
- package/scripts/lib/skill-evolution/index.js +20 -0
- package/scripts/lib/skill-evolution/provenance.js +187 -0
- package/scripts/lib/skill-evolution/tracker.js +146 -0
- package/scripts/lib/skill-evolution/versioning.js +237 -0
- package/scripts/lib/skill-improvement/amendify.js +89 -0
- package/scripts/lib/skill-improvement/evaluate.js +59 -0
- package/scripts/lib/skill-improvement/health.js +118 -0
- package/scripts/lib/skill-improvement/observations.js +108 -0
- package/scripts/lib/state-store/index.js +191 -0
- package/scripts/lib/state-store/migrations.js +178 -0
- package/scripts/lib/state-store/queries.js +697 -0
- package/scripts/lib/state-store/schema.js +92 -0
- package/scripts/lib/tmux-worktree-orchestrator.js +475 -0
- package/scripts/lib/utils.d.ts +183 -0
- package/scripts/lib/utils.js +564 -0
- package/scripts/list-installed.js +90 -0
- package/scripts/orchestrate-codex-worker.sh +107 -0
- package/scripts/orchestrate-worktrees.js +40 -0
- package/scripts/orchestration-status.js +82 -0
- package/scripts/repair.js +97 -0
- package/scripts/session-inspect.js +150 -0
- package/scripts/sessions-cli.js +177 -0
- package/scripts/setup-package-manager.js +204 -0
- package/scripts/skill-create-output.js +244 -0
- package/scripts/status.js +176 -0
- package/scripts/uninstall.js +96 -0
- package/skills/agent-eval/SKILL.md +145 -0
- package/skills/agent-harness-construction/SKILL.md +73 -0
- package/skills/agentic-engineering/SKILL.md +63 -0
- package/skills/ai-first-engineering/SKILL.md +51 -0
- package/skills/ai-regression-testing/SKILL.md +385 -0
- package/skills/android-clean-architecture/SKILL.md +339 -0
- package/skills/api-and-interface-design/SKILL.md +75 -0
- package/skills/api-design/SKILL.md +523 -0
- package/skills/architecture-decision-records/SKILL.md +179 -0
- package/skills/article-writing/SKILL.md +85 -0
- package/skills/autonomous-loops/SKILL.md +610 -0
- package/skills/aw-brainstorm/SKILL.md +115 -0
- package/skills/aw-build/SKILL.md +189 -0
- package/skills/aw-build/evals/build-stage-cases.json +28 -0
- package/skills/aw-debug/SKILL.md +49 -0
- package/skills/aw-deploy/SKILL.md +101 -0
- package/skills/aw-deploy/evals/deploy-stage-cases.json +32 -0
- package/skills/aw-execute/SKILL.md +47 -0
- package/skills/aw-execute/references/mode-code.md +47 -0
- package/skills/aw-execute/references/mode-docs.md +28 -0
- package/skills/aw-execute/references/mode-infra.md +44 -0
- package/skills/aw-execute/references/mode-migration.md +58 -0
- package/skills/aw-execute/references/worker-implementer.md +26 -0
- package/skills/aw-execute/references/worker-parallel-worker.md +23 -0
- package/skills/aw-execute/references/worker-quality-reviewer.md +23 -0
- package/skills/aw-execute/references/worker-spec-reviewer.md +23 -0
- package/skills/aw-execute/scripts/build-worker-bundle.js +229 -0
- package/skills/aw-finish/SKILL.md +111 -0
- package/skills/aw-investigate/SKILL.md +109 -0
- package/skills/aw-plan/SKILL.md +399 -0
- package/skills/aw-prepare/SKILL.md +118 -0
- package/skills/aw-review/SKILL.md +123 -0
- package/skills/aw-rules/SKILL.md +129 -0
- package/skills/aw-rules/references/known-hallucinations.md +43 -0
- package/skills/aw-rules/references/verification-sources.md +50 -0
- package/skills/aw-ship/SKILL.md +115 -0
- package/skills/aw-spec/SKILL.md +128 -0
- package/skills/aw-tasks/SKILL.md +155 -0
- package/skills/aw-test/SKILL.md +118 -0
- package/skills/aw-verify/SKILL.md +51 -0
- package/skills/aw-yolo/SKILL.md +111 -0
- package/skills/backend-patterns/SKILL.md +598 -0
- package/skills/benchmark/SKILL.md +87 -0
- package/skills/blueprint/SKILL.md +105 -0
- package/skills/browser-qa/SKILL.md +81 -0
- package/skills/browser-testing-with-devtools/SKILL.md +81 -0
- package/skills/bun-runtime/SKILL.md +84 -0
- package/skills/canary-watch/SKILL.md +93 -0
- package/skills/carrier-relationship-management/SKILL.md +212 -0
- package/skills/ci-cd-and-automation/SKILL.md +71 -0
- package/skills/claude-api/SKILL.md +337 -0
- package/skills/claude-devfleet/SKILL.md +103 -0
- package/skills/click-path-audit/SKILL.md +244 -0
- package/skills/clickhouse-io/SKILL.md +439 -0
- package/skills/code-simplification/SKILL.md +74 -0
- package/skills/codebase-onboarding/SKILL.md +233 -0
- package/skills/coding-standards/SKILL.md +530 -0
- package/skills/compose-multiplatform-patterns/SKILL.md +299 -0
- package/skills/configure-ecc/SKILL.md +367 -0
- package/skills/content-engine/SKILL.md +88 -0
- package/skills/content-hash-cache-pattern/SKILL.md +161 -0
- package/skills/context-budget/SKILL.md +135 -0
- package/skills/context-engineering/SKILL.md +74 -0
- package/skills/continuous-agent-loop/SKILL.md +45 -0
- package/skills/continuous-learning/SKILL.md +119 -0
- package/skills/continuous-learning/config.json +18 -0
- package/skills/continuous-learning/evaluate-session.sh +69 -0
- package/skills/continuous-learning-v2/SKILL.md +365 -0
- package/skills/continuous-learning-v2/agents/observer-loop.sh +191 -0
- package/skills/continuous-learning-v2/agents/observer.md +198 -0
- package/skills/continuous-learning-v2/agents/session-guardian.sh +150 -0
- package/skills/continuous-learning-v2/agents/start-observer.sh +240 -0
- package/skills/continuous-learning-v2/config.json +8 -0
- package/skills/continuous-learning-v2/hooks/observe.sh +412 -0
- package/skills/continuous-learning-v2/scripts/detect-project.sh +228 -0
- package/skills/continuous-learning-v2/scripts/instinct-cli.py +1426 -0
- package/skills/continuous-learning-v2/scripts/test_parse_instinct.py +984 -0
- package/skills/cost-aware-llm-pipeline/SKILL.md +183 -0
- package/skills/cpp-coding-standards/SKILL.md +723 -0
- package/skills/cpp-testing/SKILL.md +324 -0
- package/skills/crosspost/SKILL.md +190 -0
- package/skills/customs-trade-compliance/SKILL.md +263 -0
- package/skills/data-scraper-agent/SKILL.md +764 -0
- package/skills/database-migrations/SKILL.md +429 -0
- package/skills/deep-research/SKILL.md +155 -0
- package/skills/deployment-patterns/SKILL.md +427 -0
- package/skills/deprecation-and-migration/SKILL.md +75 -0
- package/skills/design-system/SKILL.md +76 -0
- package/skills/django-patterns/SKILL.md +734 -0
- package/skills/django-security/SKILL.md +593 -0
- package/skills/django-tdd/SKILL.md +729 -0
- package/skills/django-verification/SKILL.md +469 -0
- package/skills/dmux-workflows/SKILL.md +191 -0
- package/skills/docker-patterns/SKILL.md +364 -0
- package/skills/documentation-and-adrs/SKILL.md +75 -0
- package/skills/documentation-lookup/SKILL.md +90 -0
- package/skills/e2e-testing/SKILL.md +326 -0
- package/skills/energy-procurement/SKILL.md +228 -0
- package/skills/enterprise-agent-ops/SKILL.md +50 -0
- package/skills/eval-harness/SKILL.md +270 -0
- package/skills/exa-search/SKILL.md +103 -0
- package/skills/fal-ai-media/SKILL.md +284 -0
- package/skills/flutter-dart-code-review/SKILL.md +435 -0
- package/skills/foundation-models-on-device/SKILL.md +243 -0
- package/skills/frontend-patterns/SKILL.md +642 -0
- package/skills/frontend-slides/SKILL.md +184 -0
- package/skills/frontend-slides/STYLE_PRESETS.md +330 -0
- package/skills/frontend-ui-engineering/SKILL.md +68 -0
- package/skills/git-workflow-and-versioning/SKILL.md +75 -0
- package/skills/golang-patterns/SKILL.md +674 -0
- package/skills/golang-testing/SKILL.md +720 -0
- package/skills/idea-refine/SKILL.md +84 -0
- package/skills/incremental-implementation/SKILL.md +86 -0
- package/skills/inventory-demand-planning/SKILL.md +247 -0
- package/skills/investor-materials/SKILL.md +96 -0
- package/skills/investor-outreach/SKILL.md +76 -0
- package/skills/iterative-retrieval/SKILL.md +211 -0
- package/skills/java-coding-standards/SKILL.md +147 -0
- package/skills/jpa-patterns/SKILL.md +151 -0
- package/skills/kotlin-coroutines-flows/SKILL.md +284 -0
- package/skills/kotlin-exposed-patterns/SKILL.md +719 -0
- package/skills/kotlin-ktor-patterns/SKILL.md +689 -0
- package/skills/kotlin-patterns/SKILL.md +711 -0
- package/skills/kotlin-testing/SKILL.md +824 -0
- package/skills/laravel-patterns/SKILL.md +415 -0
- package/skills/laravel-security/SKILL.md +285 -0
- package/skills/laravel-tdd/SKILL.md +283 -0
- package/skills/laravel-verification/SKILL.md +179 -0
- package/skills/liquid-glass-design/SKILL.md +279 -0
- package/skills/logistics-exception-management/SKILL.md +222 -0
- package/skills/market-research/SKILL.md +75 -0
- package/skills/mcp-server-patterns/SKILL.md +67 -0
- package/skills/nanoclaw-repl/SKILL.md +33 -0
- package/skills/nextjs-turbopack/SKILL.md +44 -0
- package/skills/nutrient-document-processing/SKILL.md +167 -0
- package/skills/nuxt4-patterns/SKILL.md +100 -0
- package/skills/performance-optimization/SKILL.md +77 -0
- package/skills/perl-patterns/SKILL.md +504 -0
- package/skills/perl-security/SKILL.md +503 -0
- package/skills/perl-testing/SKILL.md +475 -0
- package/skills/plankton-code-quality/SKILL.md +236 -0
- package/skills/postgres-patterns/SKILL.md +147 -0
- package/skills/product-lens/SKILL.md +79 -0
- package/skills/production-scheduling/SKILL.md +238 -0
- package/skills/project-guidelines-example/SKILL.md +349 -0
- package/skills/prompt-optimizer/SKILL.md +397 -0
- package/skills/python-patterns/SKILL.md +750 -0
- package/skills/python-testing/SKILL.md +816 -0
- package/skills/pytorch-patterns/SKILL.md +396 -0
- package/skills/quality-nonconformance/SKILL.md +260 -0
- package/skills/ralphinho-rfc-pipeline/SKILL.md +67 -0
- package/skills/regex-vs-llm-structured-text/SKILL.md +220 -0
- package/skills/returns-reverse-logistics/SKILL.md +240 -0
- package/skills/rules-distill/SKILL.md +264 -0
- package/skills/rules-distill/scripts/scan-rules.sh +58 -0
- package/skills/rules-distill/scripts/scan-skills.sh +129 -0
- package/skills/rust-patterns/SKILL.md +499 -0
- package/skills/rust-testing/SKILL.md +500 -0
- package/skills/safety-guard/SKILL.md +69 -0
- package/skills/santa-method/SKILL.md +306 -0
- package/skills/search-first/SKILL.md +161 -0
- package/skills/security-and-hardening/SKILL.md +70 -0
- package/skills/security-review/SKILL.md +495 -0
- package/skills/security-review/cloud-infrastructure-security.md +361 -0
- package/skills/security-scan/SKILL.md +165 -0
- package/skills/skill-comply/SKILL.md +58 -0
- package/skills/skill-comply/fixtures/compliant_trace.jsonl +5 -0
- package/skills/skill-comply/fixtures/noncompliant_trace.jsonl +3 -0
- package/skills/skill-comply/fixtures/tdd_spec.yaml +44 -0
- package/skills/skill-comply/prompts/classifier.md +24 -0
- package/skills/skill-comply/prompts/scenario_generator.md +62 -0
- package/skills/skill-comply/prompts/spec_generator.md +42 -0
- package/skills/skill-comply/pyproject.toml +15 -0
- package/skills/skill-comply/scripts/__init__.py +0 -0
- package/skills/skill-comply/scripts/classifier.py +85 -0
- package/skills/skill-comply/scripts/grader.py +122 -0
- package/skills/skill-comply/scripts/parser.py +107 -0
- package/skills/skill-comply/scripts/report.py +170 -0
- package/skills/skill-comply/scripts/run.py +127 -0
- package/skills/skill-comply/scripts/runner.py +161 -0
- package/skills/skill-comply/scripts/scenario_generator.py +70 -0
- package/skills/skill-comply/scripts/spec_generator.py +72 -0
- package/skills/skill-comply/scripts/utils.py +13 -0
- package/skills/skill-comply/tests/test_grader.py +137 -0
- package/skills/skill-comply/tests/test_parser.py +90 -0
- package/skills/skill-quality-review/SKILL.md +102 -0
- package/skills/skill-quality-review/references/review-rubric.md +112 -0
- package/skills/skill-stocktake/SKILL.md +197 -0
- package/skills/skill-stocktake/scripts/quick-diff.sh +87 -0
- package/skills/skill-stocktake/scripts/save-results.sh +56 -0
- package/skills/skill-stocktake/scripts/scan.sh +170 -0
- package/skills/springboot-patterns/SKILL.md +314 -0
- package/skills/springboot-security/SKILL.md +272 -0
- package/skills/springboot-tdd/SKILL.md +158 -0
- package/skills/springboot-verification/SKILL.md +231 -0
- package/skills/strategic-compact/SKILL.md +131 -0
- package/skills/strategic-compact/suggest-compact.sh +54 -0
- package/skills/swift-actor-persistence/SKILL.md +143 -0
- package/skills/swift-concurrency-6-2/SKILL.md +216 -0
- package/skills/swift-protocol-di-testing/SKILL.md +190 -0
- package/skills/swiftui-patterns/SKILL.md +259 -0
- package/skills/tdd-workflow/SKILL.md +145 -0
- package/skills/team-builder/SKILL.md +161 -0
- package/skills/using-aw-skills/SKILL.md +290 -0
- package/skills/using-aw-skills/evals/skill-trigger-cases.tsv +25 -0
- package/skills/using-aw-skills/evals/test-skill-triggers.sh +171 -0
- package/skills/using-aw-skills/hooks/hooks.json +9 -0
- package/skills/using-aw-skills/hooks/session-start.sh +188 -0
- package/skills/using-platform-skills/SKILL.md +163 -0
- package/skills/using-platform-skills/evals/platform-selection-cases.json +52 -0
- package/skills/verification-loop/SKILL.md +126 -0
- package/skills/video-editing/SKILL.md +310 -0
- package/skills/videodb/SKILL.md +374 -0
- package/skills/videodb/reference/api-reference.md +550 -0
- package/skills/videodb/reference/capture-reference.md +407 -0
- package/skills/videodb/reference/capture.md +101 -0
- package/skills/videodb/reference/editor.md +443 -0
- package/skills/videodb/reference/generative.md +331 -0
- package/skills/videodb/reference/rtstream-reference.md +564 -0
- package/skills/videodb/reference/rtstream.md +65 -0
- package/skills/videodb/reference/search.md +230 -0
- package/skills/videodb/reference/streaming.md +406 -0
- package/skills/videodb/reference/use-cases.md +118 -0
- package/skills/videodb/scripts/ws_listener.py +282 -0
- package/skills/visa-doc-translate/README.md +86 -0
- package/skills/visa-doc-translate/SKILL.md +117 -0
- package/skills/x-api/SKILL.md +208 -0
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: crosspost
|
|
3
|
+
description: Multi-platform content distribution across X, LinkedIn, Threads, and Bluesky. Adapts content per platform using content-engine patterns. Never posts identical content cross-platform. Use when the user wants to distribute content across social platforms.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Crosspost
|
|
8
|
+
|
|
9
|
+
Distribute content across multiple social platforms with platform-native adaptation.
|
|
10
|
+
|
|
11
|
+
## When to Activate
|
|
12
|
+
|
|
13
|
+
- User wants to post content to multiple platforms
|
|
14
|
+
- Publishing announcements, launches, or updates across social media
|
|
15
|
+
- Repurposing a post from one platform to others
|
|
16
|
+
- User says "crosspost", "post everywhere", "share on all platforms", or "distribute this"
|
|
17
|
+
|
|
18
|
+
## Core Rules
|
|
19
|
+
|
|
20
|
+
1. **Never post identical content cross-platform.** Each platform gets a native adaptation.
|
|
21
|
+
2. **Primary platform first.** Post to the main platform, then adapt for others.
|
|
22
|
+
3. **Respect platform conventions.** Length limits, formatting, link handling all differ.
|
|
23
|
+
4. **One idea per post.** If the source content has multiple ideas, split across posts.
|
|
24
|
+
5. **Attribution matters.** If crossposting someone else's content, credit the source.
|
|
25
|
+
|
|
26
|
+
## Platform Specifications
|
|
27
|
+
|
|
28
|
+
| Platform | Max Length | Link Handling | Hashtags | Media |
|
|
29
|
+
|----------|-----------|---------------|----------|-------|
|
|
30
|
+
| X | 280 chars (4000 for Premium) | Counted in length | Minimal (1-2 max) | Images, video, GIFs |
|
|
31
|
+
| LinkedIn | 3000 chars | Not counted in length | 3-5 relevant | Images, video, docs, carousels |
|
|
32
|
+
| Threads | 500 chars | Separate link attachment | None typical | Images, video |
|
|
33
|
+
| Bluesky | 300 chars | Via facets (rich text) | None (use feeds) | Images |
|
|
34
|
+
|
|
35
|
+
## Workflow
|
|
36
|
+
|
|
37
|
+
### Step 1: Create Source Content
|
|
38
|
+
|
|
39
|
+
Start with the core idea. Use `content-engine` skill for high-quality drafts:
|
|
40
|
+
- Identify the single core message
|
|
41
|
+
- Determine the primary platform (where the audience is biggest)
|
|
42
|
+
- Draft the primary platform version first
|
|
43
|
+
|
|
44
|
+
### Step 2: Identify Target Platforms
|
|
45
|
+
|
|
46
|
+
Ask the user or determine from context:
|
|
47
|
+
- Which platforms to target
|
|
48
|
+
- Priority order (primary gets the best version)
|
|
49
|
+
- Any platform-specific requirements (e.g., LinkedIn needs professional tone)
|
|
50
|
+
|
|
51
|
+
### Step 3: Adapt Per Platform
|
|
52
|
+
|
|
53
|
+
For each target platform, transform the content:
|
|
54
|
+
|
|
55
|
+
**X adaptation:**
|
|
56
|
+
- Open with a hook, not a summary
|
|
57
|
+
- Cut to the core insight fast
|
|
58
|
+
- Keep links out of main body when possible
|
|
59
|
+
- Use thread format for longer content
|
|
60
|
+
|
|
61
|
+
**LinkedIn adaptation:**
|
|
62
|
+
- Strong first line (visible before "see more")
|
|
63
|
+
- Short paragraphs with line breaks
|
|
64
|
+
- Frame around lessons, results, or professional takeaways
|
|
65
|
+
- More explicit context than X (LinkedIn audience needs framing)
|
|
66
|
+
|
|
67
|
+
**Threads adaptation:**
|
|
68
|
+
- Conversational, casual tone
|
|
69
|
+
- Shorter than LinkedIn, less compressed than X
|
|
70
|
+
- Visual-first if possible
|
|
71
|
+
|
|
72
|
+
**Bluesky adaptation:**
|
|
73
|
+
- Direct and concise (300 char limit)
|
|
74
|
+
- Community-oriented tone
|
|
75
|
+
- Use feeds/lists for topic targeting instead of hashtags
|
|
76
|
+
|
|
77
|
+
### Step 4: Post Primary Platform
|
|
78
|
+
|
|
79
|
+
Post to the primary platform first:
|
|
80
|
+
- Use `x-api` skill for X
|
|
81
|
+
- Use platform-specific APIs or tools for others
|
|
82
|
+
- Capture the post URL for cross-referencing
|
|
83
|
+
|
|
84
|
+
### Step 5: Post to Secondary Platforms
|
|
85
|
+
|
|
86
|
+
Post adapted versions to remaining platforms:
|
|
87
|
+
- Stagger timing (not all at once — 30-60 min gaps)
|
|
88
|
+
- Include cross-platform references where appropriate ("longer thread on X" etc.)
|
|
89
|
+
|
|
90
|
+
## Content Adaptation Examples
|
|
91
|
+
|
|
92
|
+
### Source: Product Launch
|
|
93
|
+
|
|
94
|
+
**X version:**
|
|
95
|
+
```
|
|
96
|
+
We just shipped [feature].
|
|
97
|
+
|
|
98
|
+
[One specific thing it does that's impressive]
|
|
99
|
+
|
|
100
|
+
[Link]
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**LinkedIn version:**
|
|
104
|
+
```
|
|
105
|
+
Excited to share: we just launched [feature] at [Company].
|
|
106
|
+
|
|
107
|
+
Here's why it matters:
|
|
108
|
+
|
|
109
|
+
[2-3 short paragraphs with context]
|
|
110
|
+
|
|
111
|
+
[Takeaway for the audience]
|
|
112
|
+
|
|
113
|
+
[Link]
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
**Threads version:**
|
|
117
|
+
```
|
|
118
|
+
just shipped something cool — [feature]
|
|
119
|
+
|
|
120
|
+
[casual explanation of what it does]
|
|
121
|
+
|
|
122
|
+
link in bio
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
### Source: Technical Insight
|
|
126
|
+
|
|
127
|
+
**X version:**
|
|
128
|
+
```
|
|
129
|
+
TIL: [specific technical insight]
|
|
130
|
+
|
|
131
|
+
[Why it matters in one sentence]
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
**LinkedIn version:**
|
|
135
|
+
```
|
|
136
|
+
A pattern I've been using that's made a real difference:
|
|
137
|
+
|
|
138
|
+
[Technical insight with professional framing]
|
|
139
|
+
|
|
140
|
+
[How it applies to teams/orgs]
|
|
141
|
+
|
|
142
|
+
#relevantHashtag
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
## API Integration
|
|
146
|
+
|
|
147
|
+
### Batch Crossposting Service (Example Pattern)
|
|
148
|
+
If using a crossposting service (e.g., Postbridge, Buffer, or a custom API), the pattern looks like:
|
|
149
|
+
|
|
150
|
+
```python
|
|
151
|
+
import os
|
|
152
|
+
import requests
|
|
153
|
+
|
|
154
|
+
resp = requests.post(
|
|
155
|
+
"https://api.postbridge.io/v1/posts",
|
|
156
|
+
headers={"Authorization": f"Bearer {os.environ['POSTBRIDGE_API_KEY']}"},
|
|
157
|
+
json={
|
|
158
|
+
"platforms": ["twitter", "linkedin", "threads"],
|
|
159
|
+
"content": {
|
|
160
|
+
"twitter": {"text": x_version},
|
|
161
|
+
"linkedin": {"text": linkedin_version},
|
|
162
|
+
"threads": {"text": threads_version}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
)
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
### Manual Posting
|
|
169
|
+
Without Postbridge, post to each platform using its native API:
|
|
170
|
+
- X: Use `x-api` skill patterns
|
|
171
|
+
- LinkedIn: LinkedIn API v2 with OAuth 2.0
|
|
172
|
+
- Threads: Threads API (Meta)
|
|
173
|
+
- Bluesky: AT Protocol API
|
|
174
|
+
|
|
175
|
+
## Quality Gate
|
|
176
|
+
|
|
177
|
+
Before posting:
|
|
178
|
+
- [ ] Each platform version reads naturally for that platform
|
|
179
|
+
- [ ] No identical content across platforms
|
|
180
|
+
- [ ] Length limits respected
|
|
181
|
+
- [ ] Links work and are placed appropriately
|
|
182
|
+
- [ ] Tone matches platform conventions
|
|
183
|
+
- [ ] Media is sized correctly for each platform
|
|
184
|
+
|
|
185
|
+
## Related Skills
|
|
186
|
+
|
|
187
|
+
- `content-engine` — Generate platform-native content
|
|
188
|
+
- `x-api` — X/Twitter API integration
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "Crosspost"
|
|
3
|
+
short_description: "Multi-platform content distribution with native adaptation"
|
|
4
|
+
brand_color: "#EC4899"
|
|
5
|
+
default_prompt: "Distribute content across X, LinkedIn, Threads, and Bluesky with platform-native adaptation"
|
|
6
|
+
policy:
|
|
7
|
+
allow_implicit_invocation: true
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deep-research
|
|
3
|
+
description: Multi-source deep research using firecrawl and exa MCPs. Searches the web, synthesizes findings, and delivers cited reports with source attribution. Use when the user wants thorough research on any topic with evidence and citations.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Deep Research
|
|
8
|
+
|
|
9
|
+
Produce thorough, cited research reports from multiple web sources using firecrawl and exa MCP tools.
|
|
10
|
+
|
|
11
|
+
## When to Activate
|
|
12
|
+
|
|
13
|
+
- User asks to research any topic in depth
|
|
14
|
+
- Competitive analysis, technology evaluation, or market sizing
|
|
15
|
+
- Due diligence on companies, investors, or technologies
|
|
16
|
+
- Any question requiring synthesis from multiple sources
|
|
17
|
+
- User says "research", "deep dive", "investigate", or "what's the current state of"
|
|
18
|
+
|
|
19
|
+
## MCP Requirements
|
|
20
|
+
|
|
21
|
+
At least one of:
|
|
22
|
+
- **firecrawl** — `firecrawl_search`, `firecrawl_scrape`, `firecrawl_crawl`
|
|
23
|
+
- **exa** — `web_search_exa`, `web_search_advanced_exa`, `crawling_exa`
|
|
24
|
+
|
|
25
|
+
Both together give the best coverage. Configure in `~/.claude.json` or `~/.codex/config.toml`.
|
|
26
|
+
|
|
27
|
+
## Workflow
|
|
28
|
+
|
|
29
|
+
### Step 1: Understand the Goal
|
|
30
|
+
|
|
31
|
+
Ask 1-2 quick clarifying questions:
|
|
32
|
+
- "What's your goal — learning, making a decision, or writing something?"
|
|
33
|
+
- "Any specific angle or depth you want?"
|
|
34
|
+
|
|
35
|
+
If the user says "just research it" — skip ahead with reasonable defaults.
|
|
36
|
+
|
|
37
|
+
### Step 2: Plan the Research
|
|
38
|
+
|
|
39
|
+
Break the topic into 3-5 research sub-questions. Example:
|
|
40
|
+
- Topic: "Impact of AI on healthcare"
|
|
41
|
+
- What are the main AI applications in healthcare today?
|
|
42
|
+
- What clinical outcomes have been measured?
|
|
43
|
+
- What are the regulatory challenges?
|
|
44
|
+
- What companies are leading this space?
|
|
45
|
+
- What's the market size and growth trajectory?
|
|
46
|
+
|
|
47
|
+
### Step 3: Execute Multi-Source Search
|
|
48
|
+
|
|
49
|
+
For EACH sub-question, search using available MCP tools:
|
|
50
|
+
|
|
51
|
+
**With firecrawl:**
|
|
52
|
+
```
|
|
53
|
+
firecrawl_search(query: "<sub-question keywords>", limit: 8)
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
**With exa:**
|
|
57
|
+
```
|
|
58
|
+
web_search_exa(query: "<sub-question keywords>", numResults: 8)
|
|
59
|
+
web_search_advanced_exa(query: "<keywords>", numResults: 5, startPublishedDate: "2025-01-01")
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
**Search strategy:**
|
|
63
|
+
- Use 2-3 different keyword variations per sub-question
|
|
64
|
+
- Mix general and news-focused queries
|
|
65
|
+
- Aim for 15-30 unique sources total
|
|
66
|
+
- Prioritize: academic, official, reputable news > blogs > forums
|
|
67
|
+
|
|
68
|
+
### Step 4: Deep-Read Key Sources
|
|
69
|
+
|
|
70
|
+
For the most promising URLs, fetch full content:
|
|
71
|
+
|
|
72
|
+
**With firecrawl:**
|
|
73
|
+
```
|
|
74
|
+
firecrawl_scrape(url: "<url>")
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
**With exa:**
|
|
78
|
+
```
|
|
79
|
+
crawling_exa(url: "<url>", tokensNum: 5000)
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Read 3-5 key sources in full for depth. Do not rely only on search snippets.
|
|
83
|
+
|
|
84
|
+
### Step 5: Synthesize and Write Report
|
|
85
|
+
|
|
86
|
+
Structure the report:
|
|
87
|
+
|
|
88
|
+
```markdown
|
|
89
|
+
# [Topic]: Research Report
|
|
90
|
+
*Generated: [date] | Sources: [N] | Confidence: [High/Medium/Low]*
|
|
91
|
+
|
|
92
|
+
## Executive Summary
|
|
93
|
+
[3-5 sentence overview of key findings]
|
|
94
|
+
|
|
95
|
+
## 1. [First Major Theme]
|
|
96
|
+
[Findings with inline citations]
|
|
97
|
+
- Key point ([Source Name](url))
|
|
98
|
+
- Supporting data ([Source Name](url))
|
|
99
|
+
|
|
100
|
+
## 2. [Second Major Theme]
|
|
101
|
+
...
|
|
102
|
+
|
|
103
|
+
## 3. [Third Major Theme]
|
|
104
|
+
...
|
|
105
|
+
|
|
106
|
+
## Key Takeaways
|
|
107
|
+
- [Actionable insight 1]
|
|
108
|
+
- [Actionable insight 2]
|
|
109
|
+
- [Actionable insight 3]
|
|
110
|
+
|
|
111
|
+
## Sources
|
|
112
|
+
1. [Title](url) — [one-line summary]
|
|
113
|
+
2. ...
|
|
114
|
+
|
|
115
|
+
## Methodology
|
|
116
|
+
Searched [N] queries across web and news. Analyzed [M] sources.
|
|
117
|
+
Sub-questions investigated: [list]
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### Step 6: Deliver
|
|
121
|
+
|
|
122
|
+
- **Short topics**: Post the full report in chat
|
|
123
|
+
- **Long reports**: Post the executive summary + key takeaways, save full report to a file
|
|
124
|
+
|
|
125
|
+
## Parallel Research with Subagents
|
|
126
|
+
|
|
127
|
+
For broad topics, use Claude Code's Task tool to parallelize:
|
|
128
|
+
|
|
129
|
+
```
|
|
130
|
+
Launch 3 research agents in parallel:
|
|
131
|
+
1. Agent 1: Research sub-questions 1-2
|
|
132
|
+
2. Agent 2: Research sub-questions 3-4
|
|
133
|
+
3. Agent 3: Research sub-question 5 + cross-cutting themes
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
Each agent searches, reads sources, and returns findings. The main session synthesizes into the final report.
|
|
137
|
+
|
|
138
|
+
## Quality Rules
|
|
139
|
+
|
|
140
|
+
1. **Every claim needs a source.** No unsourced assertions.
|
|
141
|
+
2. **Cross-reference.** If only one source says it, flag it as unverified.
|
|
142
|
+
3. **Recency matters.** Prefer sources from the last 12 months.
|
|
143
|
+
4. **Acknowledge gaps.** If you couldn't find good info on a sub-question, say so.
|
|
144
|
+
5. **No hallucination.** If you don't know, say "insufficient data found."
|
|
145
|
+
6. **Separate fact from inference.** Label estimates, projections, and opinions clearly.
|
|
146
|
+
|
|
147
|
+
## Examples
|
|
148
|
+
|
|
149
|
+
```
|
|
150
|
+
"Research the current state of nuclear fusion energy"
|
|
151
|
+
"Deep dive into Rust vs Go for backend services in 2026"
|
|
152
|
+
"Research the best strategies for bootstrapping a SaaS business"
|
|
153
|
+
"What's happening with the US housing market right now?"
|
|
154
|
+
"Investigate the competitive landscape for AI code editors"
|
|
155
|
+
```
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "Deep Research"
|
|
3
|
+
short_description: "Multi-source deep research with firecrawl and exa MCPs"
|
|
4
|
+
brand_color: "#6366F1"
|
|
5
|
+
default_prompt: "Research the given topic using firecrawl and exa, produce a cited report"
|
|
6
|
+
policy:
|
|
7
|
+
allow_implicit_invocation: true
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dmux-workflows
|
|
3
|
+
description: Multi-agent orchestration using dmux (tmux pane manager for AI agents). Patterns for parallel agent workflows across Claude Code, Codex, OpenCode, and other harnesses. Use when running multiple agent sessions in parallel or coordinating multi-agent development workflows.
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# dmux Workflows
|
|
8
|
+
|
|
9
|
+
Orchestrate parallel AI agent sessions using dmux, a tmux pane manager for agent harnesses.
|
|
10
|
+
|
|
11
|
+
## When to Activate
|
|
12
|
+
|
|
13
|
+
- Running multiple agent sessions in parallel
|
|
14
|
+
- Coordinating work across Claude Code, Codex, and other harnesses
|
|
15
|
+
- Complex tasks that benefit from divide-and-conquer parallelism
|
|
16
|
+
- User says "run in parallel", "split this work", "use dmux", or "multi-agent"
|
|
17
|
+
|
|
18
|
+
## What is dmux
|
|
19
|
+
|
|
20
|
+
dmux is a tmux-based orchestration tool that manages AI agent panes:
|
|
21
|
+
- Press `n` to create a new pane with a prompt
|
|
22
|
+
- Press `m` to merge pane output back to the main session
|
|
23
|
+
- Supports: Claude Code, Codex, OpenCode, Cline, Gemini, Qwen
|
|
24
|
+
|
|
25
|
+
**Install:** `npm install -g dmux` or see [github.com/standardagents/dmux](https://github.com/standardagents/dmux)
|
|
26
|
+
|
|
27
|
+
## Quick Start
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
# Start dmux session
|
|
31
|
+
dmux
|
|
32
|
+
|
|
33
|
+
# Create agent panes (press 'n' in dmux, then type prompt)
|
|
34
|
+
# Pane 1: "Implement the auth middleware in src/auth/"
|
|
35
|
+
# Pane 2: "Write tests for the user service"
|
|
36
|
+
# Pane 3: "Update API documentation"
|
|
37
|
+
|
|
38
|
+
# Each pane runs its own agent session
|
|
39
|
+
# Press 'm' to merge results back
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Workflow Patterns
|
|
43
|
+
|
|
44
|
+
### Pattern 1: Research + Implement
|
|
45
|
+
|
|
46
|
+
Split research and implementation into parallel tracks:
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
Pane 1 (Research): "Research best practices for rate limiting in Node.js.
|
|
50
|
+
Check current libraries, compare approaches, and write findings to
|
|
51
|
+
/tmp/rate-limit-research.md"
|
|
52
|
+
|
|
53
|
+
Pane 2 (Implement): "Implement rate limiting middleware for our Express API.
|
|
54
|
+
Start with a basic token bucket, we'll refine after research completes."
|
|
55
|
+
|
|
56
|
+
# After Pane 1 completes, merge findings into Pane 2's context
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Pattern 2: Multi-File Feature
|
|
60
|
+
|
|
61
|
+
Parallelize work across independent files:
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
Pane 1: "Create the database schema and migrations for the billing feature"
|
|
65
|
+
Pane 2: "Build the billing API endpoints in src/api/billing/"
|
|
66
|
+
Pane 3: "Create the billing dashboard UI components"
|
|
67
|
+
|
|
68
|
+
# Merge all, then do integration in main pane
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### Pattern 3: Test + Fix Loop
|
|
72
|
+
|
|
73
|
+
Run tests in one pane, fix in another:
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
Pane 1 (Watcher): "Run the test suite in watch mode. When tests fail,
|
|
77
|
+
summarize the failures."
|
|
78
|
+
|
|
79
|
+
Pane 2 (Fixer): "Fix failing tests based on the error output from pane 1"
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Pattern 4: Cross-Harness
|
|
83
|
+
|
|
84
|
+
Use different AI tools for different tasks:
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
Pane 1 (Claude Code): "Review the security of the auth module"
|
|
88
|
+
Pane 2 (Codex): "Refactor the utility functions for performance"
|
|
89
|
+
Pane 3 (Claude Code): "Write E2E tests for the checkout flow"
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### Pattern 5: Code Review Pipeline
|
|
93
|
+
|
|
94
|
+
Parallel review perspectives:
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
Pane 1: "Review src/api/ for security vulnerabilities"
|
|
98
|
+
Pane 2: "Review src/api/ for performance issues"
|
|
99
|
+
Pane 3: "Review src/api/ for test coverage gaps"
|
|
100
|
+
|
|
101
|
+
# Merge all reviews into a single report
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## Best Practices
|
|
105
|
+
|
|
106
|
+
1. **Independent tasks only.** Don't parallelize tasks that depend on each other's output.
|
|
107
|
+
2. **Clear boundaries.** Each pane should work on distinct files or concerns.
|
|
108
|
+
3. **Merge strategically.** Review pane output before merging to avoid conflicts.
|
|
109
|
+
4. **Use git worktrees.** For file-conflict-prone work, use separate worktrees per pane.
|
|
110
|
+
5. **Resource awareness.** Each pane uses API tokens — keep total panes under 5-6.
|
|
111
|
+
|
|
112
|
+
## Git Worktree Integration
|
|
113
|
+
|
|
114
|
+
For tasks that touch overlapping files:
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# Create worktrees for isolation
|
|
118
|
+
git worktree add ../feature-auth feat/auth
|
|
119
|
+
git worktree add ../feature-billing feat/billing
|
|
120
|
+
|
|
121
|
+
# Run agents in separate worktrees
|
|
122
|
+
# Pane 1: cd ../feature-auth && claude
|
|
123
|
+
# Pane 2: cd ../feature-billing && claude
|
|
124
|
+
|
|
125
|
+
# Merge branches when done
|
|
126
|
+
git merge feat/auth
|
|
127
|
+
git merge feat/billing
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## Complementary Tools
|
|
131
|
+
|
|
132
|
+
| Tool | What It Does | When to Use |
|
|
133
|
+
|------|-------------|-------------|
|
|
134
|
+
| **dmux** | tmux pane management for agents | Parallel agent sessions |
|
|
135
|
+
| **Superset** | Terminal IDE for 10+ parallel agents | Large-scale orchestration |
|
|
136
|
+
| **Claude Code Task tool** | In-process subagent spawning | Programmatic parallelism within a session |
|
|
137
|
+
| **Codex multi-agent** | Built-in agent roles | Codex-specific parallel work |
|
|
138
|
+
|
|
139
|
+
## Troubleshooting
|
|
140
|
+
|
|
141
|
+
- **Pane not responding:** Check if the agent session is waiting for input. Use `m` to read output.
|
|
142
|
+
- **Merge conflicts:** Use git worktrees to isolate file changes per pane.
|
|
143
|
+
- **High token usage:** Reduce number of parallel panes. Each pane is a full agent session.
|
|
144
|
+
- **tmux not found:** Install with `brew install tmux` (macOS) or `apt install tmux` (Linux).
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: documentation-lookup
|
|
3
|
+
description: Use up-to-date library and framework docs via Context7 MCP instead of training data. Activates for setup questions, API references, code examples, or when the user names a framework (e.g. React, Next.js, Prisma).
|
|
4
|
+
origin: ECC
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Documentation Lookup (Context7)
|
|
8
|
+
|
|
9
|
+
When the user asks about libraries, frameworks, or APIs, fetch current documentation via the Context7 MCP (tools `resolve-library-id` and `query-docs`) instead of relying on training data.
|
|
10
|
+
|
|
11
|
+
## Core Concepts
|
|
12
|
+
|
|
13
|
+
- **Context7**: MCP server that exposes live documentation; use it instead of training data for libraries and APIs.
|
|
14
|
+
- **resolve-library-id**: Returns Context7-compatible library IDs (e.g. `/vercel/next.js`) from a library name and query.
|
|
15
|
+
- **query-docs**: Fetches documentation and code snippets for a given library ID and question. Always call resolve-library-id first to get a valid library ID.
|
|
16
|
+
|
|
17
|
+
## When to use
|
|
18
|
+
|
|
19
|
+
Activate when the user:
|
|
20
|
+
|
|
21
|
+
- Asks setup or configuration questions (e.g. "How do I configure Next.js middleware?")
|
|
22
|
+
- Requests code that depends on a library ("Write a Prisma query for...")
|
|
23
|
+
- Needs API or reference information ("What are the Supabase auth methods?")
|
|
24
|
+
- Mentions specific frameworks or libraries (React, Vue, Svelte, Express, Tailwind, Prisma, Supabase, etc.)
|
|
25
|
+
|
|
26
|
+
Use this skill whenever the request depends on accurate, up-to-date behavior of a library, framework, or API. Applies across harnesses that have the Context7 MCP configured (e.g. Claude Code, Cursor, Codex).
|
|
27
|
+
|
|
28
|
+
## How it works
|
|
29
|
+
|
|
30
|
+
### Step 1: Resolve the Library ID
|
|
31
|
+
|
|
32
|
+
Call the **resolve-library-id** MCP tool with:
|
|
33
|
+
|
|
34
|
+
- **libraryName**: The library or product name taken from the user's question (e.g. `Next.js`, `Prisma`, `Supabase`).
|
|
35
|
+
- **query**: The user's full question. This improves relevance ranking of results.
|
|
36
|
+
|
|
37
|
+
You must obtain a Context7-compatible library ID (format `/org/project` or `/org/project/version`) before querying docs. Do not call query-docs without a valid library ID from this step.
|
|
38
|
+
|
|
39
|
+
### Step 2: Select the Best Match
|
|
40
|
+
|
|
41
|
+
From the resolution results, choose one result using:
|
|
42
|
+
|
|
43
|
+
- **Name match**: Prefer exact or closest match to what the user asked for.
|
|
44
|
+
- **Benchmark score**: Higher scores indicate better documentation quality (100 is highest).
|
|
45
|
+
- **Source reputation**: Prefer High or Medium reputation when available.
|
|
46
|
+
- **Version**: If the user specified a version (e.g. "React 19", "Next.js 15"), prefer a version-specific library ID if listed (e.g. `/org/project/v1.2.0`).
|
|
47
|
+
|
|
48
|
+
### Step 3: Fetch the Documentation
|
|
49
|
+
|
|
50
|
+
Call the **query-docs** MCP tool with:
|
|
51
|
+
|
|
52
|
+
- **libraryId**: The selected Context7 library ID from Step 2 (e.g. `/vercel/next.js`).
|
|
53
|
+
- **query**: The user's specific question or task. Be specific to get relevant snippets.
|
|
54
|
+
|
|
55
|
+
Limit: do not call query-docs (or resolve-library-id) more than 3 times per question. If the answer is unclear after 3 calls, state the uncertainty and use the best information you have rather than guessing.
|
|
56
|
+
|
|
57
|
+
### Step 4: Use the Documentation
|
|
58
|
+
|
|
59
|
+
- Answer the user's question using the fetched, current information.
|
|
60
|
+
- Include relevant code examples from the docs when helpful.
|
|
61
|
+
- Cite the library or version when it matters (e.g. "In Next.js 15...").
|
|
62
|
+
|
|
63
|
+
## Examples
|
|
64
|
+
|
|
65
|
+
### Example: Next.js middleware
|
|
66
|
+
|
|
67
|
+
1. Call **resolve-library-id** with `libraryName: "Next.js"`, `query: "How do I set up Next.js middleware?"`.
|
|
68
|
+
2. From results, pick the best match (e.g. `/vercel/next.js`) by name and benchmark score.
|
|
69
|
+
3. Call **query-docs** with `libraryId: "/vercel/next.js"`, `query: "How do I set up Next.js middleware?"`.
|
|
70
|
+
4. Use the returned snippets and text to answer; include a minimal `middleware.ts` example from the docs if relevant.
|
|
71
|
+
|
|
72
|
+
### Example: Prisma query
|
|
73
|
+
|
|
74
|
+
1. Call **resolve-library-id** with `libraryName: "Prisma"`, `query: "How do I query with relations?"`.
|
|
75
|
+
2. Select the official Prisma library ID (e.g. `/prisma/prisma`).
|
|
76
|
+
3. Call **query-docs** with that `libraryId` and the query.
|
|
77
|
+
4. Return the Prisma Client pattern (e.g. `include` or `select`) with a short code snippet from the docs.
|
|
78
|
+
|
|
79
|
+
### Example: Supabase auth methods
|
|
80
|
+
|
|
81
|
+
1. Call **resolve-library-id** with `libraryName: "Supabase"`, `query: "What are the auth methods?"`.
|
|
82
|
+
2. Pick the Supabase docs library ID.
|
|
83
|
+
3. Call **query-docs**; summarize the auth methods and show minimal examples from the fetched docs.
|
|
84
|
+
|
|
85
|
+
## Best Practices
|
|
86
|
+
|
|
87
|
+
- **Be specific**: Use the user's full question as the query where possible for better relevance.
|
|
88
|
+
- **Version awareness**: When users mention versions, use version-specific library IDs from the resolve step when available.
|
|
89
|
+
- **Prefer official sources**: When multiple matches exist, prefer official or primary packages over community forks.
|
|
90
|
+
- **No sensitive data**: Redact API keys, passwords, tokens, and other secrets from any query sent to Context7. Treat the user's question as potentially containing secrets before passing it to resolve-library-id or query-docs.
|