gkt-node 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +89 -0
- package/assets/.agent/brain/agent_index.json +208 -0
- package/assets/.agent/brain/project_context.json +31 -0
- package/assets/.agent/skills/ab-test-setup/SKILL.md +232 -0
- package/assets/.agent/skills/agent-evaluation/SKILL.md +64 -0
- package/assets/.agent/skills/agent-memory-mcp/SKILL.md +82 -0
- package/assets/.agent/skills/agent-memory-systems/SKILL.md +67 -0
- package/assets/.agent/skills/agent-orchestration-multi-agent-optimize/SKILL.md +239 -0
- package/assets/.agent/skills/agent-tool-builder/SKILL.md +53 -0
- package/assets/.agent/skills/ai-agents-architect/SKILL.md +90 -0
- package/assets/.agent/skills/ai-engineer/SKILL.md +171 -0
- package/assets/.agent/skills/ai-product/SKILL.md +54 -0
- package/assets/.agent/skills/ai-wrapper-product/SKILL.md +273 -0
- package/assets/.agent/skills/airflow-dag-patterns/SKILL.md +41 -0
- package/assets/.agent/skills/airflow-dag-patterns/resources/implementation-playbook.md +509 -0
- package/assets/.agent/skills/airtable-automation/SKILL.md +170 -0
- package/assets/.agent/skills/analytics-tracking/SKILL.md +404 -0
- package/assets/.agent/skills/api-design-principles/SKILL.md +37 -0
- package/assets/.agent/skills/api-design-principles/assets/__pycache__/rest-api-template.cpython-314.pyc +0 -0
- package/assets/.agent/skills/api-design-principles/assets/api-design-checklist.md +155 -0
- package/assets/.agent/skills/api-design-principles/assets/rest-api-template.py +182 -0
- package/assets/.agent/skills/api-design-principles/references/graphql-schema-design.md +583 -0
- package/assets/.agent/skills/api-design-principles/references/rest-best-practices.md +408 -0
- package/assets/.agent/skills/api-design-principles/resources/implementation-playbook.md +513 -0
- package/assets/.agent/skills/api-designer/SKILL.md +22 -0
- package/assets/.agent/skills/api-designer/data/api_patterns.json +107 -0
- package/assets/.agent/skills/api-designer/scripts/__pycache__/api_gen.cpython-314.pyc +0 -0
- package/assets/.agent/skills/api-designer/scripts/api_gen.py +80 -0
- package/assets/.agent/skills/api-documentation-generator/SKILL.md +484 -0
- package/assets/.agent/skills/api-documenter/SKILL.md +184 -0
- package/assets/.agent/skills/api-fuzzing-bug-bounty/SKILL.md +433 -0
- package/assets/.agent/skills/api-patterns/SKILL.md +81 -0
- package/assets/.agent/skills/api-patterns/api-style.md +42 -0
- package/assets/.agent/skills/api-patterns/auth.md +24 -0
- package/assets/.agent/skills/api-patterns/documentation.md +26 -0
- package/assets/.agent/skills/api-patterns/graphql.md +41 -0
- package/assets/.agent/skills/api-patterns/rate-limiting.md +31 -0
- package/assets/.agent/skills/api-patterns/response.md +37 -0
- package/assets/.agent/skills/api-patterns/rest.md +40 -0
- package/assets/.agent/skills/api-patterns/scripts/__pycache__/api_validator.cpython-314.pyc +0 -0
- package/assets/.agent/skills/api-patterns/scripts/api_validator.py +211 -0
- package/assets/.agent/skills/api-patterns/security-testing.md +122 -0
- package/assets/.agent/skills/api-patterns/trpc.md +41 -0
- package/assets/.agent/skills/api-patterns/versioning.md +22 -0
- package/assets/.agent/skills/api-security-best-practices/SKILL.md +907 -0
- package/assets/.agent/skills/api-testing-observability-api-mock/SKILL.md +46 -0
- package/assets/.agent/skills/api-testing-observability-api-mock/resources/implementation-playbook.md +1327 -0
- package/assets/.agent/skills/app-store-optimization/HOW_TO_USE.md +281 -0
- package/assets/.agent/skills/app-store-optimization/README.md +430 -0
- package/assets/.agent/skills/app-store-optimization/SKILL.md +403 -0
- package/assets/.agent/skills/app-store-optimization/__pycache__/ab_test_planner.cpython-314.pyc +0 -0
- package/assets/.agent/skills/app-store-optimization/__pycache__/aso_scorer.cpython-314.pyc +0 -0
- package/assets/.agent/skills/app-store-optimization/__pycache__/competitor_analyzer.cpython-314.pyc +0 -0
- package/assets/.agent/skills/app-store-optimization/__pycache__/keyword_analyzer.cpython-314.pyc +0 -0
- package/assets/.agent/skills/app-store-optimization/__pycache__/launch_checklist.cpython-314.pyc +0 -0
- package/assets/.agent/skills/app-store-optimization/__pycache__/localization_helper.cpython-314.pyc +0 -0
- package/assets/.agent/skills/app-store-optimization/__pycache__/metadata_optimizer.cpython-314.pyc +0 -0
- package/assets/.agent/skills/app-store-optimization/__pycache__/review_analyzer.cpython-314.pyc +0 -0
- package/assets/.agent/skills/app-store-optimization/ab_test_planner.py +662 -0
- package/assets/.agent/skills/app-store-optimization/aso_scorer.py +482 -0
- package/assets/.agent/skills/app-store-optimization/competitor_analyzer.py +577 -0
- package/assets/.agent/skills/app-store-optimization/expected_output.json +170 -0
- package/assets/.agent/skills/app-store-optimization/keyword_analyzer.py +406 -0
- package/assets/.agent/skills/app-store-optimization/launch_checklist.py +739 -0
- package/assets/.agent/skills/app-store-optimization/localization_helper.py +588 -0
- package/assets/.agent/skills/app-store-optimization/metadata_optimizer.py +581 -0
- package/assets/.agent/skills/app-store-optimization/review_analyzer.py +714 -0
- package/assets/.agent/skills/app-store-optimization/sample_input.json +30 -0
- package/assets/.agent/skills/architecture-auditor/SKILL.md +35 -0
- package/assets/.agent/skills/architecture-auditor/data/standards.json +45 -0
- package/assets/.agent/skills/architecture-auditor/scripts/__pycache__/auditor.cpython-314.pyc +0 -0
- package/assets/.agent/skills/architecture-auditor/scripts/auditor.py +69 -0
- package/assets/.agent/skills/architecture-decision-records/SKILL.md +441 -0
- package/assets/.agent/skills/architecture-patterns/SKILL.md +37 -0
- package/assets/.agent/skills/architecture-patterns/resources/implementation-playbook.md +479 -0
- package/assets/.agent/skills/asana-automation/SKILL.md +171 -0
- package/assets/.agent/skills/attack-tree-construction/SKILL.md +38 -0
- package/assets/.agent/skills/attack-tree-construction/resources/implementation-playbook.md +671 -0
- package/assets/.agent/skills/auth-implementation-patterns/SKILL.md +39 -0
- package/assets/.agent/skills/auth-implementation-patterns/resources/implementation-playbook.md +618 -0
- package/assets/.agent/skills/autonomous-agent-patterns/SKILL.md +761 -0
- package/assets/.agent/skills/aws-penetration-testing/SKILL.md +405 -0
- package/assets/.agent/skills/aws-penetration-testing/references/advanced-aws-pentesting.md +469 -0
- package/assets/.agent/skills/aws-serverless/SKILL.md +323 -0
- package/assets/.agent/skills/backend-architect/SKILL.md +333 -0
- package/assets/.agent/skills/billing-automation/SKILL.md +42 -0
- package/assets/.agent/skills/billing-automation/resources/implementation-playbook.md +544 -0
- package/assets/.agent/skills/broken-authentication/SKILL.md +476 -0
- package/assets/.agent/skills/bullmq-specialist/SKILL.md +57 -0
- package/assets/.agent/skills/business-analyst/SKILL.md +182 -0
- package/assets/.agent/skills/cc-skill-backend-patterns/SKILL.md +584 -0
- package/assets/.agent/skills/cc-skill-clickhouse-io/SKILL.md +431 -0
- package/assets/.agent/skills/cc-skill-coding-standards/SKILL.md +522 -0
- package/assets/.agent/skills/cc-skill-continuous-learning/SKILL.md +10 -0
- package/assets/.agent/skills/cc-skill-continuous-learning/config.json +18 -0
- package/assets/.agent/skills/cc-skill-continuous-learning/evaluate-session.sh +60 -0
- package/assets/.agent/skills/cc-skill-frontend-patterns/SKILL.md +633 -0
- package/assets/.agent/skills/cc-skill-project-guidelines-example/SKILL.md +352 -0
- package/assets/.agent/skills/cc-skill-security-review/SKILL.md +496 -0
- package/assets/.agent/skills/cc-skill-strategic-compact/SKILL.md +10 -0
- package/assets/.agent/skills/cc-skill-strategic-compact/suggest-compact.sh +52 -0
- package/assets/.agent/skills/ci-cd-setup/SKILL.md +14 -0
- package/assets/.agent/skills/ci-cd-setup/data/pipeline_templates.json +42 -0
- package/assets/.agent/skills/ci-cd-setup/scripts/__pycache__/ci_gen.cpython-314.pyc +0 -0
- package/assets/.agent/skills/ci-cd-setup/scripts/ci_gen.py +75 -0
- package/assets/.agent/skills/claude-code-guide/SKILL.md +68 -0
- package/assets/.agent/skills/clean-code/SKILL.md +94 -0
- package/assets/.agent/skills/clickup-automation/SKILL.md +234 -0
- package/assets/.agent/skills/cloud-architect/SKILL.md +135 -0
- package/assets/.agent/skills/cloud-penetration-testing/SKILL.md +501 -0
- package/assets/.agent/skills/cloud-penetration-testing/references/advanced-cloud-scripts.md +318 -0
- package/assets/.agent/skills/code-reviewer/SKILL.md +31 -0
- package/assets/.agent/skills/code-reviewer/data/review_rules.json +172 -0
- package/assets/.agent/skills/code-reviewer/scripts/__pycache__/reviewer.cpython-314.pyc +0 -0
- package/assets/.agent/skills/code-reviewer/scripts/reviewer.py +192 -0
- package/assets/.agent/skills/codebase-navigator/SKILL.md +37 -0
- package/assets/.agent/skills/codebase-navigator/data/codebase_index.json +577 -0
- package/assets/.agent/skills/codebase-navigator/scripts/__pycache__/navigator.cpython-314.pyc +0 -0
- package/assets/.agent/skills/codebase-navigator/scripts/navigator.py +240 -0
- package/assets/.agent/skills/color-palette-generator/SKILL.md +26 -0
- package/assets/.agent/skills/color-palette-generator/data/palettes.json +37 -0
- package/assets/.agent/skills/color-palette-generator/scripts/__pycache__/palette.cpython-314.pyc +0 -0
- package/assets/.agent/skills/color-palette-generator/scripts/palette.py +57 -0
- package/assets/.agent/skills/competitive-landscape/SKILL.md +34 -0
- package/assets/.agent/skills/competitive-landscape/resources/implementation-playbook.md +494 -0
- package/assets/.agent/skills/competitor-alternatives/SKILL.md +750 -0
- package/assets/.agent/skills/computer-use-agents/SKILL.md +315 -0
- package/assets/.agent/skills/content-creator/SKILL.md +248 -0
- package/assets/.agent/skills/content-creator/assets/content_calendar_template.md +99 -0
- package/assets/.agent/skills/content-creator/references/brand_guidelines.md +199 -0
- package/assets/.agent/skills/content-creator/references/content_frameworks.md +534 -0
- package/assets/.agent/skills/content-creator/references/social_media_optimization.md +317 -0
- package/assets/.agent/skills/content-creator/scripts/__pycache__/brand_voice_analyzer.cpython-314.pyc +0 -0
- package/assets/.agent/skills/content-creator/scripts/__pycache__/seo_optimizer.cpython-314.pyc +0 -0
- package/assets/.agent/skills/content-creator/scripts/brand_voice_analyzer.py +185 -0
- package/assets/.agent/skills/content-creator/scripts/seo_optimizer.py +419 -0
- package/assets/.agent/skills/content-marketer/SKILL.md +170 -0
- package/assets/.agent/skills/context-compression/SKILL.md +266 -0
- package/assets/.agent/skills/context-degradation/SKILL.md +238 -0
- package/assets/.agent/skills/context-driven-development/SKILL.md +400 -0
- package/assets/.agent/skills/context-fundamentals/SKILL.md +192 -0
- package/assets/.agent/skills/context-manager/SKILL.md +26 -0
- package/assets/.agent/skills/context-manager/scripts/__pycache__/minify.cpython-314.pyc +0 -0
- package/assets/.agent/skills/context-manager/scripts/minify.py +82 -0
- package/assets/.agent/skills/context-optimization/SKILL.md +186 -0
- package/assets/.agent/skills/context-router/SKILL.md +42 -0
- package/assets/.agent/skills/context-router/scripts/__pycache__/context_router.cpython-314.pyc +0 -0
- package/assets/.agent/skills/context-router/scripts/context_router.py +185 -0
- package/assets/.agent/skills/context-window-management/SKILL.md +53 -0
- package/assets/.agent/skills/conversation-memory/SKILL.md +61 -0
- package/assets/.agent/skills/copywriting/SKILL.md +225 -0
- package/assets/.agent/skills/cost-optimization/SKILL.md +286 -0
- package/assets/.agent/skills/cqrs-implementation/SKILL.md +35 -0
- package/assets/.agent/skills/cqrs-implementation/resources/implementation-playbook.md +540 -0
- package/assets/.agent/skills/crewai/SKILL.md +243 -0
- package/assets/.agent/skills/daily-news-report/SKILL.md +356 -0
- package/assets/.agent/skills/daily-news-report/cache.json +41 -0
- package/assets/.agent/skills/daily-news-report/sources.json +183 -0
- package/assets/.agent/skills/data-engineer/SKILL.md +224 -0
- package/assets/.agent/skills/data-engineering-data-driven-feature/SKILL.md +182 -0
- package/assets/.agent/skills/data-engineering-data-pipeline/SKILL.md +201 -0
- package/assets/.agent/skills/data-quality-frameworks/SKILL.md +40 -0
- package/assets/.agent/skills/data-quality-frameworks/resources/implementation-playbook.md +573 -0
- package/assets/.agent/skills/data-scientist/SKILL.md +199 -0
- package/assets/.agent/skills/data-storytelling/SKILL.md +465 -0
- package/assets/.agent/skills/database-admin/SKILL.md +165 -0
- package/assets/.agent/skills/database-architect/SKILL.md +268 -0
- package/assets/.agent/skills/database-cloud-optimization-cost-optimize/SKILL.md +44 -0
- package/assets/.agent/skills/database-cloud-optimization-cost-optimize/resources/implementation-playbook.md +1441 -0
- package/assets/.agent/skills/database-design/SKILL.md +52 -0
- package/assets/.agent/skills/database-design/database-selection.md +43 -0
- package/assets/.agent/skills/database-design/indexing.md +39 -0
- package/assets/.agent/skills/database-design/migrations.md +48 -0
- package/assets/.agent/skills/database-design/optimization.md +36 -0
- package/assets/.agent/skills/database-design/orm-selection.md +30 -0
- package/assets/.agent/skills/database-design/schema-design.md +56 -0
- package/assets/.agent/skills/database-design/scripts/__pycache__/schema_validator.cpython-314.pyc +0 -0
- package/assets/.agent/skills/database-design/scripts/schema_validator.py +172 -0
- package/assets/.agent/skills/database-migration/SKILL.md +436 -0
- package/assets/.agent/skills/database-migrations-migration-observability/SKILL.md +420 -0
- package/assets/.agent/skills/database-migrations-sql-migrations/SKILL.md +53 -0
- package/assets/.agent/skills/database-migrations-sql-migrations/resources/implementation-playbook.md +499 -0
- package/assets/.agent/skills/database-optimizer/SKILL.md +167 -0
- package/assets/.agent/skills/datadog-automation/SKILL.md +235 -0
- package/assets/.agent/skills/db-designer/SKILL.md +22 -0
- package/assets/.agent/skills/db-designer/data/schema_patterns.json +156 -0
- package/assets/.agent/skills/db-designer/scripts/__pycache__/sql_gen.cpython-314.pyc +0 -0
- package/assets/.agent/skills/db-designer/scripts/sql_gen.py +90 -0
- package/assets/.agent/skills/dbt-transformation-patterns/SKILL.md +34 -0
- package/assets/.agent/skills/dbt-transformation-patterns/resources/implementation-playbook.md +547 -0
- package/assets/.agent/skills/debugger/SKILL.md +49 -0
- package/assets/.agent/skills/debugging-strategies/SKILL.md +34 -0
- package/assets/.agent/skills/debugging-strategies/resources/implementation-playbook.md +511 -0
- package/assets/.agent/skills/deep-research/SKILL.md +114 -0
- package/assets/.agent/skills/deployment-engineer/SKILL.md +170 -0
- package/assets/.agent/skills/deployment-pipeline-design/SKILL.md +371 -0
- package/assets/.agent/skills/deployment-procedures/SKILL.md +241 -0
- package/assets/.agent/skills/diff-applier/SKILL.md +34 -0
- package/assets/.agent/skills/diff-applier/scripts/__pycache__/apply_patch.cpython-314.pyc +0 -0
- package/assets/.agent/skills/diff-applier/scripts/apply_patch.py +137 -0
- package/assets/.agent/skills/discord-automation/SKILL.md +187 -0
- package/assets/.agent/skills/distributed-debugging-debug-trace/SKILL.md +44 -0
- package/assets/.agent/skills/distributed-debugging-debug-trace/resources/implementation-playbook.md +1307 -0
- package/assets/.agent/skills/distributed-tracing/SKILL.md +450 -0
- package/assets/.agent/skills/doc-generator/SKILL.md +14 -0
- package/assets/.agent/skills/doc-generator/data/doc_templates.json +40 -0
- package/assets/.agent/skills/doc-generator/scripts/__pycache__/doc_gen.cpython-314.pyc +0 -0
- package/assets/.agent/skills/doc-generator/scripts/doc_gen.py +48 -0
- package/assets/.agent/skills/docker-expert/SKILL.md +409 -0
- package/assets/.agent/skills/docker-wizard/SKILL.md +14 -0
- package/assets/.agent/skills/docker-wizard/data/docker_templates.json +93 -0
- package/assets/.agent/skills/docker-wizard/scripts/__pycache__/docker_gen.cpython-314.pyc +0 -0
- package/assets/.agent/skills/docker-wizard/scripts/docker_gen.py +86 -0
- package/assets/.agent/skills/docs-architect/SKILL.md +98 -0
- package/assets/.agent/skills/e2e-testing-patterns/SKILL.md +41 -0
- package/assets/.agent/skills/e2e-testing-patterns/resources/implementation-playbook.md +531 -0
- package/assets/.agent/skills/email-sequence/SKILL.md +925 -0
- package/assets/.agent/skills/embedding-strategies/SKILL.md +491 -0
- package/assets/.agent/skills/employment-contract-templates/SKILL.md +39 -0
- package/assets/.agent/skills/employment-contract-templates/resources/implementation-playbook.md +493 -0
- package/assets/.agent/skills/env-manager/SKILL.md +33 -0
- package/assets/.agent/skills/env-manager/scripts/__pycache__/env_scanner.cpython-314.pyc +0 -0
- package/assets/.agent/skills/env-manager/scripts/env_scanner.py +181 -0
- package/assets/.agent/skills/error-detective/SKILL.md +53 -0
- package/assets/.agent/skills/error-diagnostics-error-analysis/SKILL.md +47 -0
- package/assets/.agent/skills/error-diagnostics-error-analysis/resources/implementation-playbook.md +1143 -0
- package/assets/.agent/skills/error-diagnostics-error-trace/SKILL.md +48 -0
- package/assets/.agent/skills/error-diagnostics-error-trace/resources/implementation-playbook.md +1371 -0
- package/assets/.agent/skills/error-handling-patterns/SKILL.md +35 -0
- package/assets/.agent/skills/error-handling-patterns/resources/implementation-playbook.md +635 -0
- package/assets/.agent/skills/ethical-hacking-methodology/SKILL.md +466 -0
- package/assets/.agent/skills/event-sourcing-architect/SKILL.md +58 -0
- package/assets/.agent/skills/event-store-design/SKILL.md +449 -0
- package/assets/.agent/skills/exa-search/SKILL.md +36 -0
- package/assets/.agent/skills/fastapi-pro/SKILL.md +192 -0
- package/assets/.agent/skills/fastapi-router-py/SKILL.md +52 -0
- package/assets/.agent/skills/fastapi-templates/SKILL.md +32 -0
- package/assets/.agent/skills/fastapi-templates/resources/implementation-playbook.md +566 -0
- package/assets/.agent/skills/free-tool-strategy/SKILL.md +576 -0
- package/assets/.agent/skills/freshdesk-automation/SKILL.md +219 -0
- package/assets/.agent/skills/frontend-developer/SKILL.md +171 -0
- package/assets/.agent/skills/gcp-cloud-run/SKILL.md +288 -0
- package/assets/.agent/skills/gemini-api-dev/SKILL.md +127 -0
- package/assets/.agent/skills/geo-fundamentals/SKILL.md +156 -0
- package/assets/.agent/skills/geo-fundamentals/scripts/__pycache__/geo_checker.cpython-314.pyc +0 -0
- package/assets/.agent/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
- package/assets/.agent/skills/git-advanced-workflows/SKILL.md +412 -0
- package/assets/.agent/skills/git-manager/SKILL.md +22 -0
- package/assets/.agent/skills/git-manager/data/git_conventions.json +84 -0
- package/assets/.agent/skills/git-manager/scripts/__pycache__/commit.cpython-314.pyc +0 -0
- package/assets/.agent/skills/git-manager/scripts/__pycache__/log.cpython-314.pyc +0 -0
- package/assets/.agent/skills/git-manager/scripts/commit.py +70 -0
- package/assets/.agent/skills/git-manager/scripts/log.py +29 -0
- package/assets/.agent/skills/github-actions-templates/SKILL.md +345 -0
- package/assets/.agent/skills/github-automation/SKILL.md +227 -0
- package/assets/.agent/skills/gitlab-ci-patterns/SKILL.md +283 -0
- package/assets/.agent/skills/gitops-workflow/SKILL.md +303 -0
- package/assets/.agent/skills/gitops-workflow/references/argocd-setup.md +134 -0
- package/assets/.agent/skills/gitops-workflow/references/sync-policies.md +131 -0
- package/assets/.agent/skills/gmail-automation/SKILL.md +270 -0
- package/assets/.agent/skills/google-calendar-automation/SKILL.md +176 -0
- package/assets/.agent/skills/google-drive-automation/SKILL.md +193 -0
- package/assets/.agent/skills/googlesheets-automation/SKILL.md +197 -0
- package/assets/.agent/skills/grafana-dashboards/SKILL.md +381 -0
- package/assets/.agent/skills/graphql/SKILL.md +68 -0
- package/assets/.agent/skills/graphql-architect/SKILL.md +182 -0
- package/assets/.agent/skills/helm-chart-scaffolding/SKILL.md +34 -0
- package/assets/.agent/skills/helm-chart-scaffolding/assets/Chart.yaml.template +42 -0
- package/assets/.agent/skills/helm-chart-scaffolding/assets/values.yaml.template +185 -0
- package/assets/.agent/skills/helm-chart-scaffolding/references/chart-structure.md +500 -0
- package/assets/.agent/skills/helm-chart-scaffolding/resources/implementation-playbook.md +543 -0
- package/assets/.agent/skills/helm-chart-scaffolding/scripts/validate-chart.sh +244 -0
- package/assets/.agent/skills/hr-pro/SKILL.md +126 -0
- package/assets/.agent/skills/hubspot-automation/SKILL.md +178 -0
- package/assets/.agent/skills/hubspot-integration/SKILL.md +42 -0
- package/assets/.agent/skills/hybrid-search-implementation/SKILL.md +32 -0
- package/assets/.agent/skills/hybrid-search-implementation/resources/implementation-playbook.md +567 -0
- package/assets/.agent/skills/incident-responder/SKILL.md +213 -0
- package/assets/.agent/skills/incident-response-incident-response/SKILL.md +168 -0
- package/assets/.agent/skills/incident-response-smart-fix/SKILL.md +29 -0
- package/assets/.agent/skills/incident-response-smart-fix/resources/implementation-playbook.md +838 -0
- package/assets/.agent/skills/incident-runbook-templates/SKILL.md +395 -0
- package/assets/.agent/skills/infinite-gratitude/SKILL.md +26 -0
- package/assets/.agent/skills/inngest/SKILL.md +55 -0
- package/assets/.agent/skills/instagram-automation/SKILL.md +192 -0
- package/assets/.agent/skills/intercom-automation/SKILL.md +248 -0
- package/assets/.agent/skills/javascript-mastery/SKILL.md +645 -0
- package/assets/.agent/skills/javascript-testing-patterns/SKILL.md +35 -0
- package/assets/.agent/skills/javascript-testing-patterns/resources/implementation-playbook.md +1024 -0
- package/assets/.agent/skills/jira-automation/SKILL.md +185 -0
- package/assets/.agent/skills/k8s-manifest-generator/SKILL.md +35 -0
- package/assets/.agent/skills/k8s-manifest-generator/assets/configmap-template.yaml +296 -0
- package/assets/.agent/skills/k8s-manifest-generator/assets/deployment-template.yaml +203 -0
- package/assets/.agent/skills/k8s-manifest-generator/assets/service-template.yaml +171 -0
- package/assets/.agent/skills/k8s-manifest-generator/references/deployment-spec.md +753 -0
- package/assets/.agent/skills/k8s-manifest-generator/references/service-spec.md +724 -0
- package/assets/.agent/skills/k8s-manifest-generator/resources/implementation-playbook.md +510 -0
- package/assets/.agent/skills/k8s-security-policies/SKILL.md +346 -0
- package/assets/.agent/skills/k8s-security-policies/assets/network-policy-template.yaml +177 -0
- package/assets/.agent/skills/k8s-security-policies/references/rbac-patterns.md +187 -0
- package/assets/.agent/skills/knowledge-guide/SKILL.md +34 -0
- package/assets/.agent/skills/knowledge-guide/scripts/__pycache__/note_taker.cpython-314.pyc +0 -0
- package/assets/.agent/skills/knowledge-guide/scripts/note_taker.py +50 -0
- package/assets/.agent/skills/kpi-dashboard-design/SKILL.md +440 -0
- package/assets/.agent/skills/kubernetes-architect/SKILL.md +170 -0
- package/assets/.agent/skills/langchain-architecture/SKILL.md +350 -0
- package/assets/.agent/skills/langfuse/SKILL.md +238 -0
- package/assets/.agent/skills/langgraph/SKILL.md +287 -0
- package/assets/.agent/skills/launch-strategy/SKILL.md +344 -0
- package/assets/.agent/skills/legal-advisor/SKILL.md +70 -0
- package/assets/.agent/skills/linkedin-automation/SKILL.md +175 -0
- package/assets/.agent/skills/linux-privilege-escalation/SKILL.md +504 -0
- package/assets/.agent/skills/llm-app-patterns/SKILL.md +760 -0
- package/assets/.agent/skills/llm-evaluation/SKILL.md +483 -0
- package/assets/.agent/skills/mailchimp-automation/SKILL.md +231 -0
- package/assets/.agent/skills/market-sizing-analysis/SKILL.md +425 -0
- package/assets/.agent/skills/market-sizing-analysis/examples/saas-market-sizing.md +349 -0
- package/assets/.agent/skills/market-sizing-analysis/references/data-sources.md +360 -0
- package/assets/.agent/skills/marketing-ideas/SKILL.md +221 -0
- package/assets/.agent/skills/marketing-psychology/SKILL.md +255 -0
- package/assets/.agent/skills/mcp-builder/LICENSE.txt +202 -0
- package/assets/.agent/skills/mcp-builder/SKILL.md +236 -0
- package/assets/.agent/skills/mcp-builder/reference/evaluation.md +602 -0
- package/assets/.agent/skills/mcp-builder/reference/mcp_best_practices.md +249 -0
- package/assets/.agent/skills/mcp-builder/reference/node_mcp_server.md +970 -0
- package/assets/.agent/skills/mcp-builder/reference/python_mcp_server.md +719 -0
- package/assets/.agent/skills/mcp-builder/scripts/__pycache__/connections.cpython-314.pyc +0 -0
- package/assets/.agent/skills/mcp-builder/scripts/__pycache__/evaluation.cpython-314.pyc +0 -0
- package/assets/.agent/skills/mcp-builder/scripts/connections.py +151 -0
- package/assets/.agent/skills/mcp-builder/scripts/evaluation.py +373 -0
- package/assets/.agent/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
- package/assets/.agent/skills/mcp-builder/scripts/requirements.txt +2 -0
- package/assets/.agent/skills/mermaid-expert/SKILL.md +59 -0
- package/assets/.agent/skills/meta-thinker/SKILL.md +41 -0
- package/assets/.agent/skills/meta-thinker/data/brainstorm_frameworks.json +614 -0
- package/assets/.agent/skills/meta-thinker/data/feature_ideas.json +352 -0
- package/assets/.agent/skills/meta-thinker/data/industry_database.json +1693 -0
- package/assets/.agent/skills/meta-thinker/data/monetization_models.json +570 -0
- package/assets/.agent/skills/meta-thinker/data/platform_guide.json +361 -0
- package/assets/.agent/skills/meta-thinker/data/product_archetypes.json +998 -0
- package/assets/.agent/skills/meta-thinker/scripts/__pycache__/idea_engine.cpython-314.pyc +0 -0
- package/assets/.agent/skills/meta-thinker/scripts/idea_engine.py +246 -0
- package/assets/.agent/skills/metasploit-framework/SKILL.md +478 -0
- package/assets/.agent/skills/micro-saas-launcher/SKILL.md +212 -0
- package/assets/.agent/skills/monday-automation/SKILL.md +233 -0
- package/assets/.agent/skills/multi-agent-patterns/SKILL.md +262 -0
- package/assets/.agent/skills/n8n-code-python/SKILL.md +750 -0
- package/assets/.agent/skills/n8n-mcp-tools-expert/SKILL.md +654 -0
- package/assets/.agent/skills/n8n-node-configuration/SKILL.md +796 -0
- package/assets/.agent/skills/neon-postgres/SKILL.md +56 -0
- package/assets/.agent/skills/nestjs-expert/SKILL.md +552 -0
- package/assets/.agent/skills/nextjs-best-practices/SKILL.md +203 -0
- package/assets/.agent/skills/nocobase-plugin-developer/SKILL.md +1289 -0
- package/assets/.agent/skills/nodejs-backend-patterns/SKILL.md +35 -0
- package/assets/.agent/skills/nodejs-backend-patterns/resources/implementation-playbook.md +1019 -0
- package/assets/.agent/skills/nodejs-best-practices/SKILL.md +333 -0
- package/assets/.agent/skills/nosql-expert/SKILL.md +111 -0
- package/assets/.agent/skills/notion-automation/SKILL.md +215 -0
- package/assets/.agent/skills/observability-engineer/SKILL.md +237 -0
- package/assets/.agent/skills/observability-monitoring-monitor-setup/SKILL.md +48 -0
- package/assets/.agent/skills/observability-monitoring-monitor-setup/resources/implementation-playbook.md +505 -0
- package/assets/.agent/skills/observability-monitoring-slo-implement/SKILL.md +43 -0
- package/assets/.agent/skills/observability-monitoring-slo-implement/resources/implementation-playbook.md +1077 -0
- package/assets/.agent/skills/on-call-handoff-patterns/SKILL.md +453 -0
- package/assets/.agent/skills/onboarding-cro/SKILL.md +433 -0
- package/assets/.agent/skills/openapi-spec-generation/SKILL.md +33 -0
- package/assets/.agent/skills/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
- package/assets/.agent/skills/page-cro/SKILL.md +343 -0
- package/assets/.agent/skills/paid-ads/SKILL.md +551 -0
- package/assets/.agent/skills/payment-integration/SKILL.md +77 -0
- package/assets/.agent/skills/paypal-integration/SKILL.md +479 -0
- package/assets/.agent/skills/paywall-upgrade-cro/SKILL.md +570 -0
- package/assets/.agent/skills/pentest-checklist/SKILL.md +334 -0
- package/assets/.agent/skills/pentest-commands/SKILL.md +438 -0
- package/assets/.agent/skills/pipedrive-automation/SKILL.md +224 -0
- package/assets/.agent/skills/plaid-fintech/SKILL.md +50 -0
- package/assets/.agent/skills/popup-cro/SKILL.md +346 -0
- package/assets/.agent/skills/postgresql/SKILL.md +230 -0
- package/assets/.agent/skills/postmortem-writing/SKILL.md +386 -0
- package/assets/.agent/skills/pricing-strategy/SKILL.md +356 -0
- package/assets/.agent/skills/prisma-expert/SKILL.md +355 -0
- package/assets/.agent/skills/product-manager-toolkit/SKILL.md +351 -0
- package/assets/.agent/skills/product-manager-toolkit/references/prd_templates.md +317 -0
- package/assets/.agent/skills/product-manager-toolkit/scripts/__pycache__/customer_interview_analyzer.cpython-314.pyc +0 -0
- package/assets/.agent/skills/product-manager-toolkit/scripts/__pycache__/rice_prioritizer.cpython-314.pyc +0 -0
- package/assets/.agent/skills/product-manager-toolkit/scripts/customer_interview_analyzer.py +441 -0
- package/assets/.agent/skills/product-manager-toolkit/scripts/rice_prioritizer.py +296 -0
- package/assets/.agent/skills/programmatic-seo/SKILL.md +351 -0
- package/assets/.agent/skills/project-scaffolder/SKILL.md +26 -0
- package/assets/.agent/skills/project-scaffolder/data/scaffold_templates.json +150 -0
- package/assets/.agent/skills/project-scaffolder/scripts/__pycache__/scaffold.cpython-314.pyc +0 -0
- package/assets/.agent/skills/project-scaffolder/scripts/scaffold.py +249 -0
- package/assets/.agent/skills/projection-patterns/SKILL.md +33 -0
- package/assets/.agent/skills/projection-patterns/resources/implementation-playbook.md +501 -0
- package/assets/.agent/skills/prometheus-configuration/SKILL.md +404 -0
- package/assets/.agent/skills/prompt-caching/SKILL.md +61 -0
- package/assets/.agent/skills/prompt-engineer/README.md +659 -0
- package/assets/.agent/skills/prompt-engineer/SKILL.md +252 -0
- package/assets/.agent/skills/prompt-engineering/SKILL.md +171 -0
- package/assets/.agent/skills/prompt-engineering-patterns/SKILL.md +213 -0
- package/assets/.agent/skills/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
- package/assets/.agent/skills/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
- package/assets/.agent/skills/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
- package/assets/.agent/skills/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
- package/assets/.agent/skills/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
- package/assets/.agent/skills/prompt-engineering-patterns/references/prompt-templates.md +470 -0
- package/assets/.agent/skills/prompt-engineering-patterns/references/system-prompts.md +189 -0
- package/assets/.agent/skills/prompt-engineering-patterns/scripts/__pycache__/optimize-prompt.cpython-314.pyc +0 -0
- package/assets/.agent/skills/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
- package/assets/.agent/skills/prompt-library/SKILL.md +322 -0
- package/assets/.agent/skills/rag-engineer/SKILL.md +90 -0
- package/assets/.agent/skills/rag-implementation/SKILL.md +421 -0
- package/assets/.agent/skills/react-patterns/SKILL.md +198 -0
- package/assets/.agent/skills/react-state-management/SKILL.md +441 -0
- package/assets/.agent/skills/react-ui-patterns/SKILL.md +289 -0
- package/assets/.agent/skills/readme-generator/SKILL.md +14 -0
- package/assets/.agent/skills/readme-generator/data/readme_templates.json +22 -0
- package/assets/.agent/skills/readme-generator/scripts/__pycache__/readme_gen.cpython-314.pyc +0 -0
- package/assets/.agent/skills/readme-generator/scripts/readme_gen.py +81 -0
- package/assets/.agent/skills/red-team-tactics/SKILL.md +199 -0
- package/assets/.agent/skills/red-team-tools/SKILL.md +310 -0
- package/assets/.agent/skills/reference-builder/SKILL.md +188 -0
- package/assets/.agent/skills/referral-program/SKILL.md +602 -0
- package/assets/.agent/skills/release-manager/SKILL.md +30 -0
- package/assets/.agent/skills/release-manager/scripts/__pycache__/release.cpython-314.pyc +0 -0
- package/assets/.agent/skills/release-manager/scripts/release.py +210 -0
- package/assets/.agent/skills/reliability-engineer/SKILL.md +30 -0
- package/assets/.agent/skills/reliability-engineer/data/reliability.json +57 -0
- package/assets/.agent/skills/reliability-engineer/scripts/__pycache__/sre.cpython-314.pyc +0 -0
- package/assets/.agent/skills/reliability-engineer/scripts/sre.py +94 -0
- package/assets/.agent/skills/saga-orchestration/SKILL.md +496 -0
- package/assets/.agent/skills/sales-automator/SKILL.md +55 -0
- package/assets/.agent/skills/salesforce-automation/SKILL.md +190 -0
- package/assets/.agent/skills/sast-configuration/SKILL.md +212 -0
- package/assets/.agent/skills/scanning-tools/SKILL.md +589 -0
- package/assets/.agent/skills/schema-markup/SKILL.md +360 -0
- package/assets/.agent/skills/search-specialist/SKILL.md +80 -0
- package/assets/.agent/skills/secrets-management/SKILL.md +364 -0
- package/assets/.agent/skills/security-auditor/SKILL.md +169 -0
- package/assets/.agent/skills/security-bluebook-builder/SKILL.md +22 -0
- package/assets/.agent/skills/security-requirement-extraction/SKILL.md +33 -0
- package/assets/.agent/skills/security-requirement-extraction/resources/implementation-playbook.md +676 -0
- package/assets/.agent/skills/security-scanner/SKILL.md +21 -0
- package/assets/.agent/skills/security-scanner/data/security_patterns.json +101 -0
- package/assets/.agent/skills/security-scanner/scripts/__pycache__/checklist_gen.cpython-314.pyc +0 -0
- package/assets/.agent/skills/security-scanner/scripts/__pycache__/vuln_scan.cpython-314.pyc +0 -0
- package/assets/.agent/skills/security-scanner/scripts/checklist_gen.py +49 -0
- package/assets/.agent/skills/security-scanner/scripts/vuln_scan.py +81 -0
- package/assets/.agent/skills/sendgrid-automation/SKILL.md +228 -0
- package/assets/.agent/skills/seo-audit/SKILL.md +487 -0
- package/assets/.agent/skills/seo-authority-builder/SKILL.md +136 -0
- package/assets/.agent/skills/seo-cannibalization-detector/SKILL.md +123 -0
- package/assets/.agent/skills/seo-content-auditor/SKILL.md +83 -0
- package/assets/.agent/skills/seo-content-planner/SKILL.md +108 -0
- package/assets/.agent/skills/seo-content-refresher/SKILL.md +118 -0
- package/assets/.agent/skills/seo-content-writer/SKILL.md +96 -0
- package/assets/.agent/skills/seo-fundamentals/SKILL.md +173 -0
- package/assets/.agent/skills/seo-fundamentals/scripts/__pycache__/seo_checker.cpython-314.pyc +0 -0
- package/assets/.agent/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
- package/assets/.agent/skills/seo-keyword-strategist/SKILL.md +95 -0
- package/assets/.agent/skills/seo-meta-optimizer/SKILL.md +92 -0
- package/assets/.agent/skills/seo-snippet-hunter/SKILL.md +114 -0
- package/assets/.agent/skills/seo-structure-architect/SKILL.md +108 -0
- package/assets/.agent/skills/service-mesh-observability/SKILL.md +395 -0
- package/assets/.agent/skills/shodan-reconnaissance/SKILL.md +503 -0
- package/assets/.agent/skills/shopify-apps/SKILL.md +42 -0
- package/assets/.agent/skills/shopify-automation/SKILL.md +168 -0
- package/assets/.agent/skills/signup-flow-cro/SKILL.md +355 -0
- package/assets/.agent/skills/similarity-search-patterns/SKILL.md +33 -0
- package/assets/.agent/skills/similarity-search-patterns/resources/implementation-playbook.md +557 -0
- package/assets/.agent/skills/skill-creator/LICENSE.txt +202 -0
- package/assets/.agent/skills/skill-creator/README.md +270 -0
- package/assets/.agent/skills/skill-creator/SKILL.md +593 -0
- package/assets/.agent/skills/skill-creator/references/output-patterns.md +82 -0
- package/assets/.agent/skills/skill-creator/references/workflows.md +28 -0
- package/assets/.agent/skills/skill-creator/scripts/__pycache__/init_skill.cpython-314.pyc +0 -0
- package/assets/.agent/skills/skill-creator/scripts/__pycache__/package_skill.cpython-314.pyc +0 -0
- package/assets/.agent/skills/skill-creator/scripts/__pycache__/quick_validate.cpython-314.pyc +0 -0
- package/assets/.agent/skills/skill-creator/scripts/init_skill.py +303 -0
- package/assets/.agent/skills/skill-creator/scripts/package_skill.py +110 -0
- package/assets/.agent/skills/skill-creator/scripts/quick_validate.py +95 -0
- package/assets/.agent/skills/skill-developer/ADVANCED.md +197 -0
- package/assets/.agent/skills/skill-developer/HOOK_MECHANISMS.md +306 -0
- package/assets/.agent/skills/skill-developer/PATTERNS_LIBRARY.md +152 -0
- package/assets/.agent/skills/skill-developer/SKILL.md +426 -0
- package/assets/.agent/skills/skill-developer/SKILL_RULES_REFERENCE.md +315 -0
- package/assets/.agent/skills/skill-developer/TRIGGER_TYPES.md +305 -0
- package/assets/.agent/skills/skill-developer/TROUBLESHOOTING.md +514 -0
- package/assets/.agent/skills/slack-automation/SKILL.md +189 -0
- package/assets/.agent/skills/slo-implementation/SKILL.md +341 -0
- package/assets/.agent/skills/social-content/SKILL.md +807 -0
- package/assets/.agent/skills/spark-optimization/SKILL.md +427 -0
- package/assets/.agent/skills/sql-injection-testing/SKILL.md +448 -0
- package/assets/.agent/skills/sql-optimization-patterns/SKILL.md +35 -0
- package/assets/.agent/skills/sql-optimization-patterns/resources/implementation-playbook.md +504 -0
- package/assets/.agent/skills/sql-pro/SKILL.md +173 -0
- package/assets/.agent/skills/ssh-penetration-testing/SKILL.md +488 -0
- package/assets/.agent/skills/startup-analyst/SKILL.md +328 -0
- package/assets/.agent/skills/startup-business-analyst-business-case/SKILL.md +487 -0
- package/assets/.agent/skills/startup-business-analyst-financial-projections/SKILL.md +353 -0
- package/assets/.agent/skills/startup-business-analyst-market-opportunity/SKILL.md +240 -0
- package/assets/.agent/skills/startup-financial-modeling/SKILL.md +467 -0
- package/assets/.agent/skills/startup-metrics-framework/SKILL.md +34 -0
- package/assets/.agent/skills/startup-metrics-framework/resources/implementation-playbook.md +500 -0
- package/assets/.agent/skills/stride-analysis-patterns/SKILL.md +33 -0
- package/assets/.agent/skills/stride-analysis-patterns/resources/implementation-playbook.md +655 -0
- package/assets/.agent/skills/stripe-automation/SKILL.md +198 -0
- package/assets/.agent/skills/stripe-integration/SKILL.md +454 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/AGENTS.md +1490 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/README.md +119 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/SKILL.md +57 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/metadata.json +13 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/_contributing.md +171 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/_sections.md +39 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/_template.md +34 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/advanced-full-text-search.md +55 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/advanced-jsonb-indexing.md +49 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/conn-idle-timeout.md +46 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/conn-limits.md +44 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/conn-pooling.md +41 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/conn-prepared-statements.md +46 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/data-batch-inserts.md +54 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/data-n-plus-one.md +53 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/data-pagination.md +50 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/data-upsert.md +50 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/lock-advisory.md +56 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/lock-deadlock-prevention.md +68 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/lock-short-transactions.md +50 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/lock-skip-locked.md +54 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/monitor-explain-analyze.md +45 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/monitor-pg-stat-statements.md +55 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/monitor-vacuum-analyze.md +55 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/query-composite-indexes.md +44 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/query-covering-indexes.md +40 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/query-index-types.md +45 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/query-missing-indexes.md +43 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/query-partial-indexes.md +45 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/schema-data-types.md +46 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/schema-foreign-key-indexes.md +59 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/schema-lowercase-identifiers.md +55 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/schema-partitioning.md +55 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/schema-primary-keys.md +61 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/security-privileges.md +54 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/security-rls-basics.md +50 -0
- package/assets/.agent/skills/supabase-postgres-best-practices/rules/security-rls-performance.md +57 -0
- package/assets/.agent/skills/system-diagrammer/SKILL.md +25 -0
- package/assets/.agent/skills/system-diagrammer/data/diagram_templates.json +69 -0
- package/assets/.agent/skills/system-diagrammer/scripts/__pycache__/diagram.cpython-314.pyc +0 -0
- package/assets/.agent/skills/system-diagrammer/scripts/diagram.py +81 -0
- package/assets/.agent/skills/system-strategist/SKILL.md +35 -0
- package/assets/.agent/skills/system-strategist/data/strategy_patterns.json +170 -0
- package/assets/.agent/skills/system-strategist/scripts/__pycache__/strategist.cpython-314.pyc +0 -0
- package/assets/.agent/skills/system-strategist/scripts/strategist.py +136 -0
- package/assets/.agent/skills/tavily-web/SKILL.md +36 -0
- package/assets/.agent/skills/team-composition-analysis/SKILL.md +413 -0
- package/assets/.agent/skills/tech-stack-advisor/SKILL.md +59 -0
- package/assets/.agent/skills/tech-stack-advisor/data/stacks.json +727 -0
- package/assets/.agent/skills/tech-stack-advisor/data/tech_data.json +1297 -0
- package/assets/.agent/skills/tech-stack-advisor/scripts/__pycache__/advisor.cpython-314.pyc +0 -0
- package/assets/.agent/skills/tech-stack-advisor/scripts/__pycache__/scanner.cpython-314.pyc +0 -0
- package/assets/.agent/skills/tech-stack-advisor/scripts/advisor.py +211 -0
- package/assets/.agent/skills/tech-stack-advisor/scripts/scanner.py +102 -0
- package/assets/.agent/skills/terraform-module-library/SKILL.md +261 -0
- package/assets/.agent/skills/terraform-module-library/references/aws-modules.md +63 -0
- package/assets/.agent/skills/terraform-skill/SKILL.md +517 -0
- package/assets/.agent/skills/terraform-specialist/SKILL.md +166 -0
- package/assets/.agent/skills/test-generator/SKILL.md +14 -0
- package/assets/.agent/skills/test-generator/data/test_patterns.json +39 -0
- package/assets/.agent/skills/test-generator/scripts/__pycache__/gen_skeleton.cpython-314.pyc +0 -0
- package/assets/.agent/skills/test-generator/scripts/gen_skeleton.py +61 -0
- package/assets/.agent/skills/testing-patterns/SKILL.md +259 -0
- package/assets/.agent/skills/threat-mitigation-mapping/SKILL.md +33 -0
- package/assets/.agent/skills/threat-mitigation-mapping/resources/implementation-playbook.md +744 -0
- package/assets/.agent/skills/threat-modeling-expert/SKILL.md +60 -0
- package/assets/.agent/skills/tool-design/SKILL.md +318 -0
- package/assets/.agent/skills/top-web-vulnerabilities/SKILL.md +543 -0
- package/assets/.agent/skills/trello-automation/SKILL.md +181 -0
- package/assets/.agent/skills/trigger-dev/SKILL.md +67 -0
- package/assets/.agent/skills/tutorial-engineer/SKILL.md +139 -0
- package/assets/.agent/skills/twitter-automation/SKILL.md +231 -0
- package/assets/.agent/skills/typescript-pro/SKILL.md +55 -0
- package/assets/.agent/skills/ui-ux-pro-max/SKILL.md +30 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/charts.csv +26 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/colors.csv +97 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/icons.csv +101 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/landing.csv +31 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/products.csv +97 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/styles.csv +68 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/typography.csv +58 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/assets/.agent/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/assets/.agent/skills/ui-ux-pro-max/scripts/__pycache__/core.cpython-314.pyc +0 -0
- package/assets/.agent/skills/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-314.pyc +0 -0
- package/assets/.agent/skills/ui-ux-pro-max/scripts/__pycache__/search.cpython-314.pyc +0 -0
- package/assets/.agent/skills/ui-ux-pro-max/scripts/core.py +253 -0
- package/assets/.agent/skills/ui-ux-pro-max/scripts/design_system.py +1110 -0
- package/assets/.agent/skills/ui-ux-pro-max/scripts/search.py +162 -0
- package/assets/.agent/skills/using-neon/SKILL.md +84 -0
- package/assets/.agent/skills/vector-database-engineer/SKILL.md +60 -0
- package/assets/.agent/skills/vector-index-tuning/SKILL.md +42 -0
- package/assets/.agent/skills/vector-index-tuning/resources/implementation-playbook.md +507 -0
- package/assets/.agent/skills/vercel-deployment/SKILL.md +79 -0
- package/assets/.agent/skills/voice-agents/SKILL.md +68 -0
- package/assets/.agent/skills/vulnerability-scanner/SKILL.md +276 -0
- package/assets/.agent/skills/vulnerability-scanner/checklists.md +121 -0
- package/assets/.agent/skills/vulnerability-scanner/scripts/__pycache__/security_scan.cpython-314.pyc +0 -0
- package/assets/.agent/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
- package/assets/.agent/skills/whatsapp-automation/SKILL.md +214 -0
- package/assets/.agent/skills/wiki-architect/SKILL.md +60 -0
- package/assets/.agent/skills/wiki-onboarding/SKILL.md +77 -0
- package/assets/.agent/skills/wiki-page-writer/SKILL.md +65 -0
- package/assets/.agent/skills/wiki-researcher/SKILL.md +65 -0
- package/assets/.agent/skills/windows-privilege-escalation/SKILL.md +496 -0
- package/assets/.agent/skills/wireshark-analysis/SKILL.md +497 -0
- package/assets/.agent/skills/wordpress-penetration-testing/SKILL.md +485 -0
- package/assets/.agent/skills/workflow-automation/SKILL.md +68 -0
- package/assets/.agent/skills/xss-html-injection/SKILL.md +499 -0
- package/assets/.agent/skills/zapier-make-patterns/SKILL.md +67 -0
- package/assets/.agent/skills/zendesk-automation/SKILL.md +215 -0
- package/assets/.agent/workflows/ai-agent-builder.md +93 -0
- package/assets/.agent/workflows/api-graphql-dev.md +45 -0
- package/assets/.agent/workflows/architect.md +43 -0
- package/assets/.agent/workflows/backend-dev.md +43 -0
- package/assets/.agent/workflows/claude-code-dev.md +51 -0
- package/assets/.agent/workflows/cloud-deployer.md +422 -0
- package/assets/.agent/workflows/code-reviewer.md +62 -0
- package/assets/.agent/workflows/context-data-eng.md +58 -0
- package/assets/.agent/workflows/database-eng.md +60 -0
- package/assets/.agent/workflows/deep-researcher.md +175 -0
- package/assets/.agent/workflows/designer.md +36 -0
- package/assets/.agent/workflows/devops.md +37 -0
- package/assets/.agent/workflows/doc-writer.md +211 -0
- package/assets/.agent/workflows/frontend-dev.md +63 -0
- package/assets/.agent/workflows/fullstack-coder.md +141 -0
- package/assets/.agent/workflows/image-creator.md +186 -0
- package/assets/.agent/workflows/knowledge-guide.md +48 -0
- package/assets/.agent/workflows/leader.md +238 -0
- package/assets/.agent/workflows/meta-thinker.md +204 -0
- package/assets/.agent/workflows/mobile-dev.md +26 -0
- package/assets/.agent/workflows/n8n-automator.md +114 -0
- package/assets/.agent/workflows/nocobase-plugin-build.md +291 -0
- package/assets/.agent/workflows/nocobase-plugin-expert.md +250 -0
- package/assets/.agent/workflows/observability-eng.md +54 -0
- package/assets/.agent/workflows/planner.md +48 -0
- package/assets/.agent/workflows/prompt-engineer.md +303 -0
- package/assets/.agent/workflows/qa-engineer.md +65 -0
- package/assets/.agent/workflows/quality-guardian.md +126 -0
- package/assets/.agent/workflows/quickstart.md +107 -0
- package/assets/.agent/workflows/release-manager.md +56 -0
- package/assets/.agent/workflows/research-analyst.md +483 -0
- package/assets/.agent/workflows/researcher.md +98 -0
- package/assets/.agent/workflows/saas-connector.md +86 -0
- package/assets/.agent/workflows/security-auditor.md +82 -0
- package/assets/.agent/workflows/security-engineer.md +48 -0
- package/assets/.agent/workflows/seo-marketer.md +91 -0
- package/assets/.agent/workflows/seo-specialist.md +27 -0
- package/assets/.agent/workflows/solution-architect.md +164 -0
- package/assets/.agent/workflows/startup-advisor.md +94 -0
- package/assets/.agent/workflows/tech-writer.md +43 -0
- package/assets/ide-adapters/cline/architect.md +43 -0
- package/assets/ide-adapters/cline/backend-dev.md +43 -0
- package/assets/ide-adapters/cline/designer.md +36 -0
- package/assets/ide-adapters/cline/devops.md +37 -0
- package/assets/ide-adapters/cline/frontend-dev.md +63 -0
- package/assets/ide-adapters/cline/knowledge-guide.md +48 -0
- package/assets/ide-adapters/cline/leader.md +88 -0
- package/assets/ide-adapters/cline/meta-thinker.md +87 -0
- package/assets/ide-adapters/cline/mobile-dev.md +26 -0
- package/assets/ide-adapters/cline/planner.md +48 -0
- package/assets/ide-adapters/cline/qa-engineer.md +65 -0
- package/assets/ide-adapters/cline/security-engineer.md +48 -0
- package/assets/ide-adapters/cline/seo-specialist.md +27 -0
- package/assets/ide-adapters/cline/tech-writer.md +43 -0
- package/assets/ide-adapters/copilot/architect.instructions.md +43 -0
- package/assets/ide-adapters/copilot/backend-dev.instructions.md +43 -0
- package/assets/ide-adapters/copilot/designer.instructions.md +36 -0
- package/assets/ide-adapters/copilot/devops.instructions.md +37 -0
- package/assets/ide-adapters/copilot/frontend-dev.instructions.md +63 -0
- package/assets/ide-adapters/copilot/knowledge-guide.instructions.md +48 -0
- package/assets/ide-adapters/copilot/leader.instructions.md +88 -0
- package/assets/ide-adapters/copilot/meta-thinker.instructions.md +87 -0
- package/assets/ide-adapters/copilot/mobile-dev.instructions.md +26 -0
- package/assets/ide-adapters/copilot/planner.instructions.md +48 -0
- package/assets/ide-adapters/copilot/qa-engineer.instructions.md +65 -0
- package/assets/ide-adapters/copilot/security-engineer.instructions.md +48 -0
- package/assets/ide-adapters/copilot/seo-specialist.instructions.md +27 -0
- package/assets/ide-adapters/copilot/tech-writer.instructions.md +43 -0
- package/assets/ide-adapters/cursor/architect.mdc +44 -0
- package/assets/ide-adapters/cursor/backend-dev.mdc +44 -0
- package/assets/ide-adapters/cursor/designer.mdc +37 -0
- package/assets/ide-adapters/cursor/devops.mdc +38 -0
- package/assets/ide-adapters/cursor/frontend-dev.mdc +64 -0
- package/assets/ide-adapters/cursor/knowledge-guide.mdc +49 -0
- package/assets/ide-adapters/cursor/leader.mdc +89 -0
- package/assets/ide-adapters/cursor/meta-thinker.mdc +88 -0
- package/assets/ide-adapters/cursor/mobile-dev.mdc +27 -0
- package/assets/ide-adapters/cursor/planner.mdc +49 -0
- package/assets/ide-adapters/cursor/qa-engineer.mdc +66 -0
- package/assets/ide-adapters/cursor/security-engineer.mdc +49 -0
- package/assets/ide-adapters/cursor/seo-specialist.mdc +28 -0
- package/assets/ide-adapters/cursor/tech-writer.mdc +44 -0
- package/assets/ide-adapters/kilocode/architect.md +43 -0
- package/assets/ide-adapters/kilocode/backend-dev.md +43 -0
- package/assets/ide-adapters/kilocode/designer.md +36 -0
- package/assets/ide-adapters/kilocode/devops.md +37 -0
- package/assets/ide-adapters/kilocode/frontend-dev.md +63 -0
- package/assets/ide-adapters/kilocode/knowledge-guide.md +48 -0
- package/assets/ide-adapters/kilocode/leader.md +88 -0
- package/assets/ide-adapters/kilocode/meta-thinker.md +87 -0
- package/assets/ide-adapters/kilocode/mobile-dev.md +26 -0
- package/assets/ide-adapters/kilocode/planner.md +48 -0
- package/assets/ide-adapters/kilocode/qa-engineer.md +65 -0
- package/assets/ide-adapters/kilocode/security-engineer.md +48 -0
- package/assets/ide-adapters/kilocode/seo-specialist.md +27 -0
- package/assets/ide-adapters/kilocode/tech-writer.md +43 -0
- package/assets/ide-adapters/kiro/hooks/auto-lint.json +8 -0
- package/assets/ide-adapters/kiro/hooks/auto-test.json +8 -0
- package/assets/ide-adapters/kiro/specs/.gitkeep +0 -0
- package/assets/ide-adapters/kiro/steering/product.md +23 -0
- package/assets/ide-adapters/kiro/steering/structure.md +23 -0
- package/assets/ide-adapters/kiro/steering/tech.md +27 -0
- package/assets/ide-adapters/windsurf/architect.md +41 -0
- package/assets/ide-adapters/windsurf/backend-dev.md +41 -0
- package/assets/ide-adapters/windsurf/designer.md +34 -0
- package/assets/ide-adapters/windsurf/devops.md +35 -0
- package/assets/ide-adapters/windsurf/frontend-dev.md +61 -0
- package/assets/ide-adapters/windsurf/knowledge-guide.md +46 -0
- package/assets/ide-adapters/windsurf/leader.md +86 -0
- package/assets/ide-adapters/windsurf/meta-thinker.md +85 -0
- package/assets/ide-adapters/windsurf/mobile-dev.md +24 -0
- package/assets/ide-adapters/windsurf/planner.md +46 -0
- package/assets/ide-adapters/windsurf/qa-engineer.md +63 -0
- package/assets/ide-adapters/windsurf/security-engineer.md +46 -0
- package/assets/ide-adapters/windsurf/seo-specialist.md +25 -0
- package/assets/ide-adapters/windsurf/tech-writer.md +41 -0
- package/assets/skill_groups.json +574 -0
- package/bin/cli.js +101 -0
- package/lib/commands.js +133 -0
- package/lib/constants.js +76 -0
- package/lib/download.js +165 -0
- package/lib/init.js +294 -0
- package/package.json +45 -0
- package/scripts/build-assets.js +177 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
# GitOps Sync Policies
|
|
2
|
+
|
|
3
|
+
## ArgoCD Sync Policies
|
|
4
|
+
|
|
5
|
+
### Automated Sync
|
|
6
|
+
```yaml
|
|
7
|
+
syncPolicy:
|
|
8
|
+
automated:
|
|
9
|
+
prune: true # Delete resources removed from Git
|
|
10
|
+
selfHeal: true # Reconcile manual changes
|
|
11
|
+
allowEmpty: false # Prevent empty sync
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
### Manual Sync
|
|
15
|
+
```yaml
|
|
16
|
+
syncPolicy:
|
|
17
|
+
syncOptions:
|
|
18
|
+
- PrunePropagationPolicy=foreground
|
|
19
|
+
- CreateNamespace=true
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### Sync Windows
|
|
23
|
+
```yaml
|
|
24
|
+
syncWindows:
|
|
25
|
+
- kind: allow
|
|
26
|
+
schedule: "0 8 * * *"
|
|
27
|
+
duration: 1h
|
|
28
|
+
applications:
|
|
29
|
+
- my-app
|
|
30
|
+
- kind: deny
|
|
31
|
+
schedule: "0 22 * * *"
|
|
32
|
+
duration: 8h
|
|
33
|
+
applications:
|
|
34
|
+
- '*'
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### Retry Policy
|
|
38
|
+
```yaml
|
|
39
|
+
syncPolicy:
|
|
40
|
+
retry:
|
|
41
|
+
limit: 5
|
|
42
|
+
backoff:
|
|
43
|
+
duration: 5s
|
|
44
|
+
factor: 2
|
|
45
|
+
maxDuration: 3m
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Flux Sync Policies
|
|
49
|
+
|
|
50
|
+
### Kustomization Sync
|
|
51
|
+
```yaml
|
|
52
|
+
apiVersion: kustomize.toolkit.fluxcd.io/v1
|
|
53
|
+
kind: Kustomization
|
|
54
|
+
metadata:
|
|
55
|
+
name: my-app
|
|
56
|
+
spec:
|
|
57
|
+
interval: 5m
|
|
58
|
+
prune: true
|
|
59
|
+
wait: true
|
|
60
|
+
timeout: 5m
|
|
61
|
+
retryInterval: 1m
|
|
62
|
+
force: false
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### Source Sync Interval
|
|
66
|
+
```yaml
|
|
67
|
+
apiVersion: source.toolkit.fluxcd.io/v1
|
|
68
|
+
kind: GitRepository
|
|
69
|
+
metadata:
|
|
70
|
+
name: my-app
|
|
71
|
+
spec:
|
|
72
|
+
interval: 1m
|
|
73
|
+
timeout: 60s
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## Health Assessment
|
|
77
|
+
|
|
78
|
+
### Custom Health Checks
|
|
79
|
+
```yaml
|
|
80
|
+
# ArgoCD
|
|
81
|
+
apiVersion: v1
|
|
82
|
+
kind: ConfigMap
|
|
83
|
+
metadata:
|
|
84
|
+
name: argocd-cm
|
|
85
|
+
namespace: argocd
|
|
86
|
+
data:
|
|
87
|
+
resource.customizations.health.MyCustomResource: |
|
|
88
|
+
hs = {}
|
|
89
|
+
if obj.status ~= nil then
|
|
90
|
+
if obj.status.conditions ~= nil then
|
|
91
|
+
for i, condition in ipairs(obj.status.conditions) do
|
|
92
|
+
if condition.type == "Ready" and condition.status == "False" then
|
|
93
|
+
hs.status = "Degraded"
|
|
94
|
+
hs.message = condition.message
|
|
95
|
+
return hs
|
|
96
|
+
end
|
|
97
|
+
if condition.type == "Ready" and condition.status == "True" then
|
|
98
|
+
hs.status = "Healthy"
|
|
99
|
+
hs.message = condition.message
|
|
100
|
+
return hs
|
|
101
|
+
end
|
|
102
|
+
end
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
hs.status = "Progressing"
|
|
106
|
+
hs.message = "Waiting for status"
|
|
107
|
+
return hs
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## Sync Options
|
|
111
|
+
|
|
112
|
+
### Common Sync Options
|
|
113
|
+
- `PrunePropagationPolicy=foreground` - Wait for pruned resources to be deleted
|
|
114
|
+
- `CreateNamespace=true` - Auto-create namespace
|
|
115
|
+
- `Validate=false` - Skip kubectl validation
|
|
116
|
+
- `PruneLast=true` - Prune resources after sync
|
|
117
|
+
- `RespectIgnoreDifferences=true` - Honor ignore differences
|
|
118
|
+
- `ApplyOutOfSyncOnly=true` - Only apply out-of-sync resources
|
|
119
|
+
|
|
120
|
+
## Best Practices
|
|
121
|
+
|
|
122
|
+
1. Use automated sync for non-production
|
|
123
|
+
2. Require manual approval for production
|
|
124
|
+
3. Configure sync windows for maintenance
|
|
125
|
+
4. Implement health checks for custom resources
|
|
126
|
+
5. Use selective sync for large applications
|
|
127
|
+
6. Configure appropriate retry policies
|
|
128
|
+
7. Monitor sync failures with alerts
|
|
129
|
+
8. Use prune with caution in production
|
|
130
|
+
9. Test sync policies in staging
|
|
131
|
+
10. Document sync behavior for teams
|
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gmail-automation
|
|
3
|
+
description: "Automate Gmail tasks via Rube MCP (Composio): send/reply, search, labels, drafts, attachments. Always search tools first for current schemas."
|
|
4
|
+
requires:
|
|
5
|
+
mcp: [rube]
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Gmail Automation via Rube MCP
|
|
9
|
+
|
|
10
|
+
Automate Gmail operations through Composio's Gmail toolkit via Rube MCP.
|
|
11
|
+
|
|
12
|
+
## Prerequisites
|
|
13
|
+
|
|
14
|
+
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
|
|
15
|
+
- Active Gmail connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `gmail`
|
|
16
|
+
- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas
|
|
17
|
+
|
|
18
|
+
## Setup
|
|
19
|
+
|
|
20
|
+
**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds
|
|
24
|
+
2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `gmail`
|
|
25
|
+
3. If connection is not ACTIVE, follow the returned auth link to complete Google OAuth
|
|
26
|
+
4. Confirm connection status shows ACTIVE before running any workflows
|
|
27
|
+
|
|
28
|
+
## Core Workflows
|
|
29
|
+
|
|
30
|
+
### 1. Send an Email
|
|
31
|
+
|
|
32
|
+
**When to use**: User wants to compose and send a new email
|
|
33
|
+
|
|
34
|
+
**Tool sequence**:
|
|
35
|
+
1. `GMAIL_SEARCH_PEOPLE` - Resolve contact name to email address [Optional]
|
|
36
|
+
2. `GMAIL_SEND_EMAIL` - Send the email [Required]
|
|
37
|
+
|
|
38
|
+
**Key parameters**:
|
|
39
|
+
- `recipient_email`: Email address or 'me' for self
|
|
40
|
+
- `subject`: Email subject line
|
|
41
|
+
- `body`: Email content (plain text or HTML)
|
|
42
|
+
- `is_html`: Must be `true` if body contains HTML markup
|
|
43
|
+
- `cc`/`bcc`: Arrays of email addresses
|
|
44
|
+
- `attachment`: Object with `{s3key, mimetype, name}` from prior download
|
|
45
|
+
|
|
46
|
+
**Pitfalls**:
|
|
47
|
+
- At least one of `recipient_email`, `cc`, or `bcc` required
|
|
48
|
+
- At least one of `subject` or `body` required
|
|
49
|
+
- Attachment `mimetype` MUST contain '/' (e.g., 'application/pdf', not 'pdf')
|
|
50
|
+
- Total message size limit ~25MB after base64 encoding
|
|
51
|
+
- Use `from_email` only for verified aliases in Gmail 'Send mail as' settings
|
|
52
|
+
|
|
53
|
+
### 2. Reply to a Thread
|
|
54
|
+
|
|
55
|
+
**When to use**: User wants to reply to an existing email conversation
|
|
56
|
+
|
|
57
|
+
**Tool sequence**:
|
|
58
|
+
1. `GMAIL_FETCH_EMAILS` - Find the email/thread to reply to [Prerequisite]
|
|
59
|
+
2. `GMAIL_REPLY_TO_THREAD` - Send reply within the thread [Required]
|
|
60
|
+
|
|
61
|
+
**Key parameters**:
|
|
62
|
+
- `thread_id`: Hex string from FETCH_EMAILS (e.g., '169eefc8138e68ca')
|
|
63
|
+
- `message_body`: Reply content
|
|
64
|
+
- `recipient_email`: Reply recipient
|
|
65
|
+
- `is_html`: Set `true` for HTML content
|
|
66
|
+
|
|
67
|
+
**Pitfalls**:
|
|
68
|
+
- `thread_id` must be hex string; prefixes like 'msg-f:' are auto-stripped
|
|
69
|
+
- Legacy Gmail web UI IDs (e.g., 'FMfcgz...') are NOT supported
|
|
70
|
+
- Subject is inherited from original thread; setting it creates a new thread instead
|
|
71
|
+
- Do NOT include subject parameter to stay within thread
|
|
72
|
+
|
|
73
|
+
### 3. Search and Filter Emails
|
|
74
|
+
|
|
75
|
+
**When to use**: User wants to find specific emails by sender, subject, date, label, etc.
|
|
76
|
+
|
|
77
|
+
**Tool sequence**:
|
|
78
|
+
1. `GMAIL_FETCH_EMAILS` - Search with Gmail query syntax [Required]
|
|
79
|
+
2. `GMAIL_FETCH_MESSAGE_BY_MESSAGE_ID` - Get full message details for selected results [Optional]
|
|
80
|
+
|
|
81
|
+
**Key parameters**:
|
|
82
|
+
- `query`: Gmail search syntax (from:, to:, subject:, is:unread, has:attachment, after:YYYY/MM/DD, before:YYYY/MM/DD)
|
|
83
|
+
- `max_results`: 1-500 messages per page
|
|
84
|
+
- `label_ids`: System IDs like 'INBOX', 'UNREAD'
|
|
85
|
+
- `include_payload`: Set `true` to get full message content
|
|
86
|
+
- `ids_only`: Set `true` for just message IDs
|
|
87
|
+
- `page_token`: For pagination (from `nextPageToken`)
|
|
88
|
+
|
|
89
|
+
**Pitfalls**:
|
|
90
|
+
- Returns max ~500 per page; follow `nextPageToken` via `page_token` until absent
|
|
91
|
+
- `resultSizeEstimate` is approximate, not exact count
|
|
92
|
+
- Use 'is:' for states (is:unread, is:snoozed, is:starred)
|
|
93
|
+
- Use 'label:' ONLY for user-created labels
|
|
94
|
+
- Common mistake: 'label:snoozed' is WRONG — use 'is:snoozed'
|
|
95
|
+
- `include_payload=true` on broad searches creates huge responses; default to metadata
|
|
96
|
+
- Custom labels require label ID (e.g., 'Label_123'), NOT label name
|
|
97
|
+
|
|
98
|
+
### 4. Manage Labels
|
|
99
|
+
|
|
100
|
+
**When to use**: User wants to create, modify, or organize labels
|
|
101
|
+
|
|
102
|
+
**Tool sequence**:
|
|
103
|
+
1. `GMAIL_LIST_LABELS` - List all labels to find IDs and detect conflicts [Required]
|
|
104
|
+
2. `GMAIL_CREATE_LABEL` - Create a new label [Optional]
|
|
105
|
+
3. `GMAIL_PATCH_LABEL` - Rename or change label colors/visibility [Optional]
|
|
106
|
+
4. `GMAIL_DELETE_LABEL` - Delete a user-created label (irreversible) [Optional]
|
|
107
|
+
|
|
108
|
+
**Key parameters**:
|
|
109
|
+
- `label_name`: Max 225 chars, no commas, '/' for nesting (e.g., 'Work/Projects')
|
|
110
|
+
- `background_color`/`text_color`: Hex values from Gmail's predefined palette
|
|
111
|
+
- `id`: Label ID for PATCH/DELETE operations
|
|
112
|
+
|
|
113
|
+
**Pitfalls**:
|
|
114
|
+
- 400/409 error if name is blank, duplicate, or reserved (INBOX, SPAM, CATEGORY_*)
|
|
115
|
+
- Color specs must use Gmail's predefined palette of 102 hex values
|
|
116
|
+
- DELETE is permanent and removes label from all messages
|
|
117
|
+
- Cannot delete system labels (INBOX, SENT, DRAFT, etc.)
|
|
118
|
+
|
|
119
|
+
### 5. Apply/Remove Labels on Messages
|
|
120
|
+
|
|
121
|
+
**When to use**: User wants to label, archive, or mark emails as read/unread
|
|
122
|
+
|
|
123
|
+
**Tool sequence**:
|
|
124
|
+
1. `GMAIL_LIST_LABELS` - Get label IDs for custom labels [Prerequisite]
|
|
125
|
+
2. `GMAIL_FETCH_EMAILS` - Find target messages [Prerequisite]
|
|
126
|
+
3. `GMAIL_BATCH_MODIFY_MESSAGES` - Bulk add/remove labels (up to 1000 messages) [Required]
|
|
127
|
+
4. `GMAIL_ADD_LABEL_TO_EMAIL` - Single-message label changes [Fallback]
|
|
128
|
+
|
|
129
|
+
**Key parameters**:
|
|
130
|
+
- `messageIds`: Array of message IDs (max 1000)
|
|
131
|
+
- `addLabelIds`: Array of label IDs to add
|
|
132
|
+
- `removeLabelIds`: Array of label IDs to remove
|
|
133
|
+
- `message_id`: 15-16 char hex string for single operations
|
|
134
|
+
|
|
135
|
+
**Pitfalls**:
|
|
136
|
+
- Max 1000 messageIds per BATCH call; chunk larger sets
|
|
137
|
+
- Use 'CATEGORY_UPDATES' not 'UPDATES'; full prefix required for category labels
|
|
138
|
+
- SENT, DRAFT, CHAT are immutable — cannot be added/removed
|
|
139
|
+
- To mark as read: REMOVE 'UNREAD'. To archive: REMOVE 'INBOX'
|
|
140
|
+
- `message_id` must be 15-16 char hex, NOT UUIDs or web UI IDs
|
|
141
|
+
|
|
142
|
+
### 6. Handle Drafts and Attachments
|
|
143
|
+
|
|
144
|
+
**When to use**: User wants to create, edit, or send email drafts, possibly with attachments
|
|
145
|
+
|
|
146
|
+
**Tool sequence**:
|
|
147
|
+
1. `GMAIL_CREATE_EMAIL_DRAFT` - Create a new draft [Required]
|
|
148
|
+
2. `GMAIL_UPDATE_DRAFT` - Edit draft content [Optional]
|
|
149
|
+
3. `GMAIL_LIST_DRAFTS` - List existing drafts [Optional]
|
|
150
|
+
4. `GMAIL_SEND_DRAFT` - Send a draft (requires explicit user approval) [Optional]
|
|
151
|
+
5. `GMAIL_GET_ATTACHMENT` - Download attachment from existing message [Optional]
|
|
152
|
+
|
|
153
|
+
**Key parameters**:
|
|
154
|
+
- `recipient_email`: Draft recipient
|
|
155
|
+
- `subject`: Draft subject (omit for reply drafts to stay in thread)
|
|
156
|
+
- `body`: Draft content
|
|
157
|
+
- `is_html`: Set `true` for HTML content
|
|
158
|
+
- `attachment`: Object with `{s3key, mimetype, name}`
|
|
159
|
+
- `thread_id`: For reply drafts (leave subject empty to stay in thread)
|
|
160
|
+
|
|
161
|
+
**Pitfalls**:
|
|
162
|
+
- Response includes `data.id` (draft_id) AND `data.message.id`; use `data.id` for draft operations
|
|
163
|
+
- Setting subject on a thread reply draft creates a NEW thread instead
|
|
164
|
+
- Attachment capped at ~25MB; base64 overhead can push near-limit files over
|
|
165
|
+
- UPDATE_DRAFT replaces entire content, not patches; include all fields you want to keep
|
|
166
|
+
- HTTP 429 on bulk draft creation; use exponential backoff
|
|
167
|
+
|
|
168
|
+
## Common Patterns
|
|
169
|
+
|
|
170
|
+
### ID Resolution
|
|
171
|
+
|
|
172
|
+
**Label name → Label ID**:
|
|
173
|
+
```
|
|
174
|
+
1. Call GMAIL_LIST_LABELS
|
|
175
|
+
2. Find label by name in response
|
|
176
|
+
3. Extract id field (e.g., 'Label_123')
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
**Contact name → Email**:
|
|
180
|
+
```
|
|
181
|
+
1. Call GMAIL_SEARCH_PEOPLE with query=contact_name
|
|
182
|
+
2. Extract emailAddresses from response
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
**Thread ID from search**:
|
|
186
|
+
```
|
|
187
|
+
1. Call GMAIL_FETCH_EMAILS or GMAIL_LIST_THREADS
|
|
188
|
+
2. Extract threadId (15-16 char hex string)
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
### Pagination
|
|
192
|
+
|
|
193
|
+
- Set `max_results` up to 500 per page
|
|
194
|
+
- Check response for `nextPageToken`
|
|
195
|
+
- Pass token as `page_token` in next request
|
|
196
|
+
- Continue until `nextPageToken` is absent or empty string
|
|
197
|
+
- `resultSizeEstimate` is approximate, not exact
|
|
198
|
+
|
|
199
|
+
### Gmail Query Syntax
|
|
200
|
+
|
|
201
|
+
**Operators**:
|
|
202
|
+
- `from:sender@example.com` - Emails from sender
|
|
203
|
+
- `to:recipient@example.com` - Emails to recipient
|
|
204
|
+
- `subject:"exact phrase"` - Subject contains exact phrase
|
|
205
|
+
- `is:unread` - Unread messages
|
|
206
|
+
- `is:starred` - Starred messages
|
|
207
|
+
- `is:snoozed` - Snoozed messages
|
|
208
|
+
- `has:attachment` - Has attachments
|
|
209
|
+
- `after:2024/01/01` - After date (YYYY/MM/DD)
|
|
210
|
+
- `before:2024/12/31` - Before date
|
|
211
|
+
- `label:custom_label` - User-created label (use label ID)
|
|
212
|
+
- `in:sent` - In sent folder
|
|
213
|
+
- `category:primary` - Primary category
|
|
214
|
+
|
|
215
|
+
**Combinators**:
|
|
216
|
+
- `AND` - Both conditions (default)
|
|
217
|
+
- `OR` - Either condition
|
|
218
|
+
- `NOT` - Exclude condition
|
|
219
|
+
- `()` - Group conditions
|
|
220
|
+
|
|
221
|
+
**Examples**:
|
|
222
|
+
- `from:boss@company.com is:unread` - Unread emails from boss
|
|
223
|
+
- `subject:invoice has:attachment after:2024/01/01` - Invoices with attachments this year
|
|
224
|
+
- `(from:alice OR from:bob) is:starred` - Starred emails from Alice or Bob
|
|
225
|
+
|
|
226
|
+
## Known Pitfalls
|
|
227
|
+
|
|
228
|
+
**ID Formats**:
|
|
229
|
+
- Custom label operations require label IDs (e.g., 'Label_123'), not display names
|
|
230
|
+
- Always call LIST_LABELS first to resolve names to IDs
|
|
231
|
+
- Message IDs are 15-16 char hex strings
|
|
232
|
+
- Do NOT use UUIDs, web UI IDs, or 'thread-f:' prefixes
|
|
233
|
+
|
|
234
|
+
**Query Syntax**:
|
|
235
|
+
- Use 'is:' for states (unread, snoozed, starred)
|
|
236
|
+
- Use 'label:' ONLY for user-created labels
|
|
237
|
+
- System labels use 'is:' or 'in:' (e.g., 'is:sent', 'in:inbox')
|
|
238
|
+
|
|
239
|
+
**Rate Limits**:
|
|
240
|
+
- BATCH_MODIFY_MESSAGES max 1000 messages per call
|
|
241
|
+
- Heavy use triggers 403/429 rate limits
|
|
242
|
+
- Implement exponential backoff for bulk operations
|
|
243
|
+
|
|
244
|
+
**Response Parsing**:
|
|
245
|
+
- Response data may be nested under `data_preview` or `data.messages`
|
|
246
|
+
- Parse defensively with fallbacks
|
|
247
|
+
- Timestamp `messageTimestamp` uses RFC3339 with 'Z' suffix
|
|
248
|
+
- Normalize to '+00:00' for parsing if needed
|
|
249
|
+
|
|
250
|
+
**Attachments**:
|
|
251
|
+
- Attachment `s3key` from prior download may expire
|
|
252
|
+
- Use promptly after retrieval
|
|
253
|
+
- Mimetype must include '/' separator
|
|
254
|
+
|
|
255
|
+
## Quick Reference
|
|
256
|
+
|
|
257
|
+
| Task | Tool Slug | Key Params |
|
|
258
|
+
|------|-----------|------------|
|
|
259
|
+
| Send email | GMAIL_SEND_EMAIL | recipient_email, subject, body, is_html |
|
|
260
|
+
| Reply to thread | GMAIL_REPLY_TO_THREAD | thread_id, message_body, recipient_email |
|
|
261
|
+
| Search emails | GMAIL_FETCH_EMAILS | query, max_results, label_ids, page_token |
|
|
262
|
+
| Get message details | GMAIL_FETCH_MESSAGE_BY_MESSAGE_ID | message_id |
|
|
263
|
+
| List labels | GMAIL_LIST_LABELS | (none) |
|
|
264
|
+
| Create label | GMAIL_CREATE_LABEL | label_name, background_color, text_color |
|
|
265
|
+
| Modify labels bulk | GMAIL_BATCH_MODIFY_MESSAGES | messageIds, addLabelIds, removeLabelIds |
|
|
266
|
+
| Create draft | GMAIL_CREATE_EMAIL_DRAFT | recipient_email, subject, body, thread_id |
|
|
267
|
+
| Send draft | GMAIL_SEND_DRAFT | draft_id |
|
|
268
|
+
| Get attachment | GMAIL_GET_ATTACHMENT | message_id, attachment_id |
|
|
269
|
+
| Search contacts | GMAIL_SEARCH_PEOPLE | query |
|
|
270
|
+
| Get profile | GMAIL_GET_PROFILE | (none) |
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: google-calendar-automation
|
|
3
|
+
description: "Automate Google Calendar events, scheduling, availability checks, and attendee management via Rube MCP (Composio). Create events, find free slots, manage attendees, and list calendars programmatically."
|
|
4
|
+
requires:
|
|
5
|
+
mcp: [rube]
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Google Calendar Automation via Rube MCP
|
|
9
|
+
|
|
10
|
+
Automate Google Calendar workflows including event creation, scheduling, availability checks, attendee management, and calendar browsing through Composio's Google Calendar toolkit.
|
|
11
|
+
|
|
12
|
+
## Prerequisites
|
|
13
|
+
|
|
14
|
+
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
|
|
15
|
+
- Active Google Calendar connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `googlecalendar`
|
|
16
|
+
- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas
|
|
17
|
+
|
|
18
|
+
## Setup
|
|
19
|
+
|
|
20
|
+
**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds
|
|
24
|
+
2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `googlecalendar`
|
|
25
|
+
3. If connection is not ACTIVE, follow the returned auth link to complete Google OAuth
|
|
26
|
+
4. Confirm connection status shows ACTIVE before running any workflows
|
|
27
|
+
|
|
28
|
+
## Core Workflows
|
|
29
|
+
|
|
30
|
+
### 1. Create and Manage Events
|
|
31
|
+
|
|
32
|
+
**When to use**: User wants to create, update, or delete calendar events
|
|
33
|
+
|
|
34
|
+
**Tool sequence**:
|
|
35
|
+
1. `GOOGLECALENDAR_LIST_CALENDARS` - Identify target calendar ID [Prerequisite]
|
|
36
|
+
2. `GOOGLECALENDAR_GET_CURRENT_DATE_TIME` - Get current time with proper timezone [Optional]
|
|
37
|
+
3. `GOOGLECALENDAR_FIND_FREE_SLOTS` - Check availability before booking [Optional]
|
|
38
|
+
4. `GOOGLECALENDAR_CREATE_EVENT` - Create the event [Required]
|
|
39
|
+
5. `GOOGLECALENDAR_PATCH_EVENT` - Update specific fields of an existing event [Alternative]
|
|
40
|
+
6. `GOOGLECALENDAR_UPDATE_EVENT` - Full replacement update of an event [Alternative]
|
|
41
|
+
7. `GOOGLECALENDAR_DELETE_EVENT` - Delete an event [Optional]
|
|
42
|
+
|
|
43
|
+
**Key parameters**:
|
|
44
|
+
- `calendar_id`: Use 'primary' for main calendar, or specific calendar ID
|
|
45
|
+
- `start_datetime`: ISO 8601 format 'YYYY-MM-DDTHH:MM:SS' (NOT natural language)
|
|
46
|
+
- `timezone`: IANA timezone name (e.g., 'America/New_York', NOT 'EST' or 'PST')
|
|
47
|
+
- `event_duration_hour`: Hours (0+)
|
|
48
|
+
- `event_duration_minutes`: Minutes (0-59 only; NEVER use 60+)
|
|
49
|
+
- `summary`: Event title
|
|
50
|
+
- `attendees`: Array of email addresses (NOT names)
|
|
51
|
+
- `location`: Free-form text for event location
|
|
52
|
+
|
|
53
|
+
**Pitfalls**:
|
|
54
|
+
- `start_datetime` must be ISO 8601; natural language like 'tomorrow' is rejected
|
|
55
|
+
- `event_duration_minutes` max is 59; use `event_duration_hour=1` instead of `event_duration_minutes=60`
|
|
56
|
+
- `timezone` must be IANA identifier; abbreviations like 'EST', 'PST' are NOT valid
|
|
57
|
+
- `attendees` only accepts email addresses, not names; resolve names first
|
|
58
|
+
- Google Meet link creation defaults to true; may fail on personal Gmail accounts (graceful fallback)
|
|
59
|
+
- Organizer is auto-added as attendee unless `exclude_organizer=true`
|
|
60
|
+
|
|
61
|
+
### 2. List and Search Events
|
|
62
|
+
|
|
63
|
+
**When to use**: User wants to find or browse events on their calendar
|
|
64
|
+
|
|
65
|
+
**Tool sequence**:
|
|
66
|
+
1. `GOOGLECALENDAR_LIST_CALENDARS` - Get available calendars [Prerequisite]
|
|
67
|
+
2. `GOOGLECALENDAR_FIND_EVENT` - Search by title/keyword with time bounds [Required]
|
|
68
|
+
3. `GOOGLECALENDAR_EVENTS_LIST` - List events in a time range [Alternative]
|
|
69
|
+
4. `GOOGLECALENDAR_EVENTS_INSTANCES` - List instances of a recurring event [Optional]
|
|
70
|
+
|
|
71
|
+
**Key parameters**:
|
|
72
|
+
- `query` / `q`: Free-text search (matches summary, description, location, attendees)
|
|
73
|
+
- `timeMin`: Lower bound (RFC3339 with timezone offset, e.g., '2024-01-01T00:00:00-08:00')
|
|
74
|
+
- `timeMax`: Upper bound (RFC3339 with timezone offset)
|
|
75
|
+
- `singleEvents`: true to expand recurring events into instances
|
|
76
|
+
- `orderBy`: 'startTime' (requires singleEvents=true) or 'updated'
|
|
77
|
+
- `maxResults`: Results per page (max 2500)
|
|
78
|
+
|
|
79
|
+
**Pitfalls**:
|
|
80
|
+
- **Timezone warning**: UTC timestamps (ending in 'Z') don't align with local dates; use local timezone offsets instead
|
|
81
|
+
- Example: '2026-01-19T00:00:00Z' covers 2026-01-18 4pm to 2026-01-19 4pm in PST
|
|
82
|
+
- Omitting `timeMin`/`timeMax` scans the full calendar and can be slow
|
|
83
|
+
- `pageToken` in response means more results; paginate until absent
|
|
84
|
+
- `orderBy='startTime'` requires `singleEvents=true`
|
|
85
|
+
|
|
86
|
+
### 3. Manage Attendees and Invitations
|
|
87
|
+
|
|
88
|
+
**When to use**: User wants to add, remove, or update event attendees
|
|
89
|
+
|
|
90
|
+
**Tool sequence**:
|
|
91
|
+
1. `GOOGLECALENDAR_FIND_EVENT` or `GOOGLECALENDAR_EVENTS_LIST` - Find the event [Prerequisite]
|
|
92
|
+
2. `GOOGLECALENDAR_PATCH_EVENT` - Add attendees (replaces entire attendees list) [Required]
|
|
93
|
+
3. `GOOGLECALENDAR_REMOVE_ATTENDEE` - Remove a specific attendee by email [Required]
|
|
94
|
+
|
|
95
|
+
**Key parameters**:
|
|
96
|
+
- `event_id`: Unique event identifier (opaque string, NOT the event title)
|
|
97
|
+
- `attendees`: Full list of attendee emails (PATCH replaces entire list)
|
|
98
|
+
- `attendee_email`: Email to remove
|
|
99
|
+
- `send_updates`: 'all', 'externalOnly', or 'none'
|
|
100
|
+
|
|
101
|
+
**Pitfalls**:
|
|
102
|
+
- `event_id` is a technical identifier, NOT the event title; always search first to get the ID
|
|
103
|
+
- `PATCH_EVENT` attendees field replaces the entire list; include existing attendees to avoid removing them
|
|
104
|
+
- Attendee names cannot be resolved; always use email addresses
|
|
105
|
+
- Use `GMAIL_SEARCH_PEOPLE` to resolve names to emails before managing attendees
|
|
106
|
+
|
|
107
|
+
### 4. Check Availability and Free/Busy Status
|
|
108
|
+
|
|
109
|
+
**When to use**: User wants to find available time slots or check busy periods
|
|
110
|
+
|
|
111
|
+
**Tool sequence**:
|
|
112
|
+
1. `GOOGLECALENDAR_LIST_CALENDARS` - Identify calendars to check [Prerequisite]
|
|
113
|
+
2. `GOOGLECALENDAR_GET_CURRENT_DATE_TIME` - Get current time with timezone [Optional]
|
|
114
|
+
3. `GOOGLECALENDAR_FIND_FREE_SLOTS` - Find free intervals across calendars [Required]
|
|
115
|
+
4. `GOOGLECALENDAR_FREE_BUSY_QUERY` - Get raw busy periods for computing gaps [Fallback]
|
|
116
|
+
5. `GOOGLECALENDAR_CREATE_EVENT` - Book a confirmed slot [Required]
|
|
117
|
+
|
|
118
|
+
**Key parameters**:
|
|
119
|
+
- `items`: List of calendar IDs to check (e.g., ['primary'])
|
|
120
|
+
- `time_min`/`time_max`: Query interval (defaults to current day if omitted)
|
|
121
|
+
- `timezone`: IANA timezone for interpreting naive timestamps
|
|
122
|
+
- `calendarExpansionMax`: Max calendars (1-50)
|
|
123
|
+
- `groupExpansionMax`: Max members per group (1-100)
|
|
124
|
+
|
|
125
|
+
**Pitfalls**:
|
|
126
|
+
- Maximum span ~90 days per Google Calendar freeBusy API limit
|
|
127
|
+
- Very long ranges or inaccessible calendars yield empty/invalid results
|
|
128
|
+
- Only calendars with at least freeBusyReader access are visible
|
|
129
|
+
- Free slots responses may normalize to UTC ('Z'); check offsets
|
|
130
|
+
- `GOOGLECALENDAR_FREE_BUSY_QUERY` requires RFC3339 timestamps with timezone
|
|
131
|
+
|
|
132
|
+
## Common Patterns
|
|
133
|
+
|
|
134
|
+
### ID Resolution
|
|
135
|
+
- **Calendar name -> calendar_id**: `GOOGLECALENDAR_LIST_CALENDARS` to enumerate all calendars
|
|
136
|
+
- **Event title -> event_id**: `GOOGLECALENDAR_FIND_EVENT` or `GOOGLECALENDAR_EVENTS_LIST`
|
|
137
|
+
- **Attendee name -> email**: `GMAIL_SEARCH_PEOPLE`
|
|
138
|
+
|
|
139
|
+
### Timezone Handling
|
|
140
|
+
- Always use IANA timezone identifiers (e.g., 'America/Los_Angeles')
|
|
141
|
+
- Use `GOOGLECALENDAR_GET_CURRENT_DATE_TIME` to get current time in user's timezone
|
|
142
|
+
- When querying events for a local date, use timestamps with local offset, NOT UTC
|
|
143
|
+
- Example: '2026-01-19T00:00:00-08:00' for PST, NOT '2026-01-19T00:00:00Z'
|
|
144
|
+
|
|
145
|
+
### Pagination
|
|
146
|
+
- `GOOGLECALENDAR_EVENTS_LIST` returns `nextPageToken`; iterate until absent
|
|
147
|
+
- `GOOGLECALENDAR_LIST_CALENDARS` also paginates; use `page_token`
|
|
148
|
+
|
|
149
|
+
## Known Pitfalls
|
|
150
|
+
|
|
151
|
+
- **Natural language dates**: NOT supported; all dates must be ISO 8601 or RFC3339
|
|
152
|
+
- **Timezone mismatch**: UTC timestamps don't align with local dates for filtering
|
|
153
|
+
- **Duration limits**: `event_duration_minutes` max 59; use hours for longer durations
|
|
154
|
+
- **IANA timezones only**: 'EST', 'PST', etc. are NOT valid; use 'America/New_York'
|
|
155
|
+
- **Event IDs are opaque**: Always search to get event_id; never guess or construct
|
|
156
|
+
- **Attendees as emails**: Names cannot be used; resolve with GMAIL_SEARCH_PEOPLE
|
|
157
|
+
- **PATCH replaces attendees**: Include all desired attendees in the array, not just new ones
|
|
158
|
+
- **Conference limitations**: Google Meet may fail on personal accounts (graceful fallback)
|
|
159
|
+
- **Rate limits**: High-volume searches can trigger 403/429; throttle between calls
|
|
160
|
+
|
|
161
|
+
## Quick Reference
|
|
162
|
+
|
|
163
|
+
| Task | Tool Slug | Key Params |
|
|
164
|
+
|------|-----------|------------|
|
|
165
|
+
| List calendars | `GOOGLECALENDAR_LIST_CALENDARS` | `max_results` |
|
|
166
|
+
| Create event | `GOOGLECALENDAR_CREATE_EVENT` | `start_datetime`, `timezone`, `summary` |
|
|
167
|
+
| Update event | `GOOGLECALENDAR_PATCH_EVENT` | `calendar_id`, `event_id`, fields to update |
|
|
168
|
+
| Delete event | `GOOGLECALENDAR_DELETE_EVENT` | `calendar_id`, `event_id` |
|
|
169
|
+
| Search events | `GOOGLECALENDAR_FIND_EVENT` | `query`, `timeMin`, `timeMax` |
|
|
170
|
+
| List events | `GOOGLECALENDAR_EVENTS_LIST` | `calendarId`, `timeMin`, `timeMax` |
|
|
171
|
+
| Recurring instances | `GOOGLECALENDAR_EVENTS_INSTANCES` | `calendarId`, `eventId` |
|
|
172
|
+
| Find free slots | `GOOGLECALENDAR_FIND_FREE_SLOTS` | `items`, `time_min`, `time_max`, `timezone` |
|
|
173
|
+
| Free/busy query | `GOOGLECALENDAR_FREE_BUSY_QUERY` | `timeMin`, `timeMax`, `items` |
|
|
174
|
+
| Remove attendee | `GOOGLECALENDAR_REMOVE_ATTENDEE` | `event_id`, `attendee_email` |
|
|
175
|
+
| Get current time | `GOOGLECALENDAR_GET_CURRENT_DATE_TIME` | `timezone` |
|
|
176
|
+
| Get calendar | `GOOGLECALENDAR_GET_CALENDAR` | `calendar_id` |
|