agent-skill-kit 3.9.135
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/.agent/global.d.ts +80 -0
- package/.agent/rules/GEMINI.md +210 -0
- package/.agent/rules/autopilot.md +287 -0
- package/.agent/rules/code-rules.md +227 -0
- package/.agent/scripts/audit_workflows.ts +23 -0
- package/.agent/scripts/auto_preview.ts +170 -0
- package/.agent/scripts/checklist.ts +180 -0
- package/.agent/scripts/compile-agents.ts +237 -0
- package/.agent/scripts/fix_skills.ts +49 -0
- package/.agent/scripts/session_manager.ts +222 -0
- package/.agent/scripts/skill-audit.ts +255 -0
- package/.agent/scripts/sync_workflows.ts +54 -0
- package/.agent/scripts/utils/colors.ts +58 -0
- package/.agent/scripts/utils/process-manager.ts +131 -0
- package/.agent/scripts/utils/reporter.ts +192 -0
- package/.agent/scripts/utils/runner.ts +128 -0
- package/.agent/scripts/verify_all.ts +243 -0
- package/.agent/scripts/version-sync.ts +256 -0
- package/.agent/skills/SKILL_INDEX.md +129 -0
- package/.agent/skills/agent-browser/AGENTS.md +728 -0
- package/.agent/skills/agent-browser/SKILL.md +193 -0
- package/.agent/skills/agent-browser/rules/_sections.md +15 -0
- package/.agent/skills/agent-browser/rules/_template.md +32 -0
- package/.agent/skills/agent-browser/rules/engineering-spec.md +528 -0
- package/.agent/skills/agent-browser/scripts/browser_cli.ts +52 -0
- package/.agent/skills/agent-browser/scripts/session_manager.ts +166 -0
- package/.agent/skills/ai-artist/AGENTS.md +1082 -0
- package/.agent/skills/ai-artist/SKILL.md +186 -0
- package/.agent/skills/ai-artist/rules/_sections.md +30 -0
- package/.agent/skills/ai-artist/rules/_template.md +32 -0
- package/.agent/skills/ai-artist/rules/domain-code.md +118 -0
- package/.agent/skills/ai-artist/rules/domain-marketing.md +105 -0
- package/.agent/skills/ai-artist/rules/engineering-spec.md +519 -0
- package/.agent/skills/ai-artist/rules/image-prompts.md +195 -0
- package/.agent/skills/ai-artist/rules/model-syntax.md +115 -0
- package/.agent/skills/ai-artist/scripts/prompt_compiler.ts +72 -0
- package/.agent/skills/ai-artist/templates/image-core.txt +1 -0
- package/.agent/skills/ai-artist/templates/llm-core.txt +6 -0
- package/.agent/skills/api-architect/AGENTS.md +1896 -0
- package/.agent/skills/api-architect/SKILL.md +173 -0
- package/.agent/skills/api-architect/rules/_sections.md +35 -0
- package/.agent/skills/api-architect/rules/_template.md +32 -0
- package/.agent/skills/api-architect/rules/api-style.md +115 -0
- package/.agent/skills/api-architect/rules/auth.md +134 -0
- package/.agent/skills/api-architect/rules/documentation.md +131 -0
- package/.agent/skills/api-architect/rules/engineering-spec.md +505 -0
- package/.agent/skills/api-architect/rules/graphql.md +154 -0
- package/.agent/skills/api-architect/rules/rate-limiting.md +76 -0
- package/.agent/skills/api-architect/rules/response.md +138 -0
- package/.agent/skills/api-architect/rules/rest.md +113 -0
- package/.agent/skills/api-architect/rules/security-testing.md +146 -0
- package/.agent/skills/api-architect/rules/trpc.md +129 -0
- package/.agent/skills/api-architect/rules/versioning.md +100 -0
- package/.agent/skills/api-architect/scripts/api_validator.ts +413 -0
- package/.agent/skills/auth-patterns/AGENTS.md +1830 -0
- package/.agent/skills/auth-patterns/SKILL.md +163 -0
- package/.agent/skills/auth-patterns/rules/_sections.md +30 -0
- package/.agent/skills/auth-patterns/rules/_template.md +32 -0
- package/.agent/skills/auth-patterns/rules/engineering-spec.md +515 -0
- package/.agent/skills/auth-patterns/rules/jwt-deep.md +196 -0
- package/.agent/skills/auth-patterns/rules/mfa.md +174 -0
- package/.agent/skills/auth-patterns/rules/oauth2.md +134 -0
- package/.agent/skills/auth-patterns/rules/passkey.md +243 -0
- package/.agent/skills/auth-patterns/rules/rbac-abac.md +206 -0
- package/.agent/skills/auth-patterns/rules/session.md +183 -0
- package/.agent/skills/auth-patterns/scripts/auth_validator.ts +121 -0
- package/.agent/skills/chrome-devtools/AGENTS.md +952 -0
- package/.agent/skills/chrome-devtools/SKILL.md +160 -0
- package/.agent/skills/chrome-devtools/rules/_sections.md +25 -0
- package/.agent/skills/chrome-devtools/rules/_template.md +32 -0
- package/.agent/skills/chrome-devtools/rules/aria-snapshot.md +95 -0
- package/.agent/skills/chrome-devtools/rules/engineering-spec.md +510 -0
- package/.agent/skills/chrome-devtools/rules/scripts-guide.md +174 -0
- package/.agent/skills/chrome-devtools/scripts/aria-snapshot.ts +3 -0
- package/.agent/skills/chrome-devtools/scripts/click.ts +3 -0
- package/.agent/skills/chrome-devtools/scripts/console.ts +3 -0
- package/.agent/skills/chrome-devtools/scripts/core_cli.ts +79 -0
- package/.agent/skills/chrome-devtools/scripts/evaluate.ts +3 -0
- package/.agent/skills/chrome-devtools/scripts/fill.ts +3 -0
- package/.agent/skills/chrome-devtools/scripts/navigate.ts +3 -0
- package/.agent/skills/chrome-devtools/scripts/network.ts +3 -0
- package/.agent/skills/chrome-devtools/scripts/performance.ts +3 -0
- package/.agent/skills/chrome-devtools/scripts/screenshot.ts +3 -0
- package/.agent/skills/chrome-devtools/scripts/select-ref.ts +3 -0
- package/.agent/skills/cicd-pipeline/AGENTS.md +809 -0
- package/.agent/skills/cicd-pipeline/SKILL.md +164 -0
- package/.agent/skills/cicd-pipeline/rules/_sections.md +15 -0
- package/.agent/skills/cicd-pipeline/rules/_template.md +32 -0
- package/.agent/skills/cicd-pipeline/rules/engineering-spec.md +477 -0
- package/.agent/skills/cicd-pipeline/scripts/flag-manager.ts +253 -0
- package/.agent/skills/cicd-pipeline/scripts/pipeline_validator.ts +133 -0
- package/.agent/skills/code-constitution/AGENTS.md +597 -0
- package/.agent/skills/code-constitution/CHANGELOG.md +216 -0
- package/.agent/skills/code-constitution/SKILL.md +191 -0
- package/.agent/skills/code-constitution/VERSION +3 -0
- package/.agent/skills/code-constitution/examples/violation-backend-mutation/after.tsx +59 -0
- package/.agent/skills/code-constitution/examples/violation-backend-mutation/before.tsx +42 -0
- package/.agent/skills/code-constitution/examples/violation-backend-mutation/explanation.md +91 -0
- package/.agent/skills/code-constitution/examples/violation-chart-injection/after.tsx +99 -0
- package/.agent/skills/code-constitution/examples/violation-chart-injection/before.tsx +57 -0
- package/.agent/skills/code-constitution/examples/violation-chart-injection/explanation.md +120 -0
- package/.agent/skills/code-constitution/knowledge/lessons-learned.yaml +3 -0
- package/.agent/skills/code-constitution/metadata/precedence.yaml +117 -0
- package/.agent/skills/code-constitution/metadata/scope-map.yaml +156 -0
- package/.agent/skills/code-constitution/proposals/v1.1-change-proposal-template.md +201 -0
- package/.agent/skills/code-constitution/resources/AUTHORITY_MODEL.md +115 -0
- package/.agent/skills/code-constitution/resources/ENFORCEMENT_GUIDE.md +246 -0
- package/.agent/skills/code-constitution/resources/LOAD_ORDER.md +86 -0
- package/.agent/skills/code-constitution/rules/_sections.md +15 -0
- package/.agent/skills/code-constitution/rules/_template.md +32 -0
- package/.agent/skills/code-constitution/rules/constitution/master-constitution.md +210 -0
- package/.agent/skills/code-constitution/rules/doctrines/architecture/architecture-doctrine.md +188 -0
- package/.agent/skills/code-constitution/rules/doctrines/backend/backend-data-engine-doctrine.md +218 -0
- package/.agent/skills/code-constitution/rules/doctrines/commercial/commercial-guardrails-doctrine.md +196 -0
- package/.agent/skills/code-constitution/rules/doctrines/data/data-integrity-doctrine.md +202 -0
- package/.agent/skills/code-constitution/rules/doctrines/frontend/frontend-mobile-doctrine.md +169 -0
- package/.agent/skills/code-constitution/rules/doctrines/frontend/interaction-patterns-doctrine.md +176 -0
- package/.agent/skills/code-constitution/rules/doctrines/learning/learning-engine-doctrine.md +192 -0
- package/.agent/skills/code-constitution/rules/doctrines/performance/performance-doctrine.md +180 -0
- package/.agent/skills/code-constitution/rules/doctrines/review/code-review-doctrine.md +174 -0
- package/.agent/skills/code-constitution/rules/enforcement/agents/agent-enforcement-protocol.md +218 -0
- package/.agent/skills/code-constitution/rules/enforcement/agents/agent-system-prompt.md +196 -0
- package/.agent/skills/code-constitution/rules/enforcement/checklists/backend-api-review-checklist.md +131 -0
- package/.agent/skills/code-constitution/rules/enforcement/checklists/chart-component-review-checklist.md +147 -0
- package/.agent/skills/code-constitution/rules/enforcement/checklists/frontend-review-checklist.md +194 -0
- package/.agent/skills/code-constitution/rules/enforcement/playbooks/doctrine-violation-playbook.md +236 -0
- package/.agent/skills/code-constitution/rules/engineering-spec.md +561 -0
- package/.agent/skills/code-constitution/scripts/audit_pr.ts +219 -0
- package/.agent/skills/code-constitution/scripts/check_boundaries.ts +134 -0
- package/.agent/skills/code-constitution/scripts/learn.ts +202 -0
- package/.agent/skills/code-constitution/scripts/validate_doctrine.ts +287 -0
- package/.agent/skills/code-craft/AGENTS.md +803 -0
- package/.agent/skills/code-craft/SKILL.md +170 -0
- package/.agent/skills/code-craft/rules/_sections.md +20 -0
- package/.agent/skills/code-craft/rules/_template.md +32 -0
- package/.agent/skills/code-craft/rules/engineering-spec.md +447 -0
- package/.agent/skills/code-craft/rules/verification-scripts.md +83 -0
- package/.agent/skills/code-craft/scripts/code_quality_checker.ts +193 -0
- package/.agent/skills/code-review/AGENTS.md +1664 -0
- package/.agent/skills/code-review/SKILL.md +152 -0
- package/.agent/skills/code-review/rules/_sections.md +15 -0
- package/.agent/skills/code-review/rules/_template.md +32 -0
- package/.agent/skills/code-review/rules/engineering-spec.md +466 -0
- package/.agent/skills/code-review/scripts/lint_runner.ts +213 -0
- package/.agent/skills/code-review/scripts/type_coverage.ts +118 -0
- package/.agent/skills/context-engineering/AGENTS.md +499 -0
- package/.agent/skills/context-engineering/SKILL.md +147 -0
- package/.agent/skills/context-engineering/rules/_sections.md +15 -0
- package/.agent/skills/context-engineering/rules/_template.md +32 -0
- package/.agent/skills/context-engineering/rules/engineering-spec.md +463 -0
- package/.agent/skills/context-engineering/scripts/context_analyzer.ts +127 -0
- package/.agent/skills/copywriting/AGENTS.md +501 -0
- package/.agent/skills/copywriting/SKILL.md +188 -0
- package/.agent/skills/copywriting/rules/_sections.md +15 -0
- package/.agent/skills/copywriting/rules/_template.md +32 -0
- package/.agent/skills/copywriting/rules/engineering-spec.md +465 -0
- package/.agent/skills/copywriting/scripts/copy_validator.ts +185 -0
- package/.agent/skills/data-modeler/AGENTS.md +814 -0
- package/.agent/skills/data-modeler/SKILL.md +195 -0
- package/.agent/skills/data-modeler/rules/_sections.md +15 -0
- package/.agent/skills/data-modeler/rules/_template.md +32 -0
- package/.agent/skills/data-modeler/rules/database-selection.md +124 -0
- package/.agent/skills/data-modeler/rules/engineering-spec.md +479 -0
- package/.agent/skills/data-modeler/rules/indexing.md +166 -0
- package/.agent/skills/data-modeler/rules/migrations.md +176 -0
- package/.agent/skills/data-modeler/rules/optimization.md +161 -0
- package/.agent/skills/data-modeler/rules/orm-selection.md +155 -0
- package/.agent/skills/data-modeler/rules/schema-design.md +162 -0
- package/.agent/skills/data-modeler/scripts/schema_validator.ts +357 -0
- package/.agent/skills/debug-pro/AGENTS.md +798 -0
- package/.agent/skills/debug-pro/SKILL.md +193 -0
- package/.agent/skills/debug-pro/defense-in-depth/SKILL.md +148 -0
- package/.agent/skills/debug-pro/root-cause-tracing/SKILL.md +196 -0
- package/.agent/skills/debug-pro/root-cause-tracing/find-polluter.sh +63 -0
- package/.agent/skills/debug-pro/rules/_sections.md +15 -0
- package/.agent/skills/debug-pro/rules/_template.md +32 -0
- package/.agent/skills/debug-pro/rules/engineering-spec.md +491 -0
- package/.agent/skills/debug-pro/scripts/debug_verifier.ts +148 -0
- package/.agent/skills/debug-pro/verification-before-completion/SKILL.md +160 -0
- package/.agent/skills/design-system/AGENTS.md +4216 -0
- package/.agent/skills/design-system/SKILL.md +186 -0
- package/.agent/skills/design-system/rules/_sections.md +65 -0
- package/.agent/skills/design-system/rules/_template.md +32 -0
- package/.agent/skills/design-system/rules/animation-guide.md +355 -0
- package/.agent/skills/design-system/rules/color-system.md +335 -0
- package/.agent/skills/design-system/rules/color-systems.md +133 -0
- package/.agent/skills/design-system/rules/decision-trees.md +442 -0
- package/.agent/skills/design-system/rules/design-extraction.md +152 -0
- package/.agent/skills/design-system/rules/engineering-spec.md +484 -0
- package/.agent/skills/design-system/rules/motion-design.md +161 -0
- package/.agent/skills/design-system/rules/motion-graphics.md +330 -0
- package/.agent/skills/design-system/rules/spatial-composition.md +184 -0
- package/.agent/skills/design-system/rules/typography-system.md +369 -0
- package/.agent/skills/design-system/rules/typography.md +124 -0
- package/.agent/skills/design-system/rules/ux-psychology.md +565 -0
- package/.agent/skills/design-system/rules/visual-effects.md +407 -0
- package/.agent/skills/design-system/scripts/accessibility_checker.ts +292 -0
- package/.agent/skills/design-system/scripts/ux_audit.ts +356 -0
- package/.agent/skills/doc-templates/AGENTS.md +820 -0
- package/.agent/skills/doc-templates/SKILL.md +260 -0
- package/.agent/skills/doc-templates/rules/_sections.md +20 -0
- package/.agent/skills/doc-templates/rules/_template.md +32 -0
- package/.agent/skills/doc-templates/rules/doc.md +355 -0
- package/.agent/skills/doc-templates/rules/engineering-spec.md +422 -0
- package/.agent/skills/doc-templates/scripts/editor-server.ts +162 -0
- package/.agent/skills/doc-templates/scripts/inject_otel.ts +22 -0
- package/.agent/skills/doc-templates/scripts/kanban-server.ts +171 -0
- package/.agent/skills/doc-templates/scripts/markdown-server.ts +185 -0
- package/.agent/skills/e2e-automation/AGENTS.md +882 -0
- package/.agent/skills/e2e-automation/SKILL.md +175 -0
- package/.agent/skills/e2e-automation/rules/_sections.md +20 -0
- package/.agent/skills/e2e-automation/rules/_template.md +32 -0
- package/.agent/skills/e2e-automation/rules/aria-snapshot.md +185 -0
- package/.agent/skills/e2e-automation/rules/engineering-spec.md +501 -0
- package/.agent/skills/e2e-automation/scripts/playwright_runner.ts +208 -0
- package/.agent/skills/execution-reporter/AGENTS.md +419 -0
- package/.agent/skills/execution-reporter/SKILL.md +152 -0
- package/.agent/skills/execution-reporter/rules/_sections.md +15 -0
- package/.agent/skills/execution-reporter/rules/_template.md +32 -0
- package/.agent/skills/execution-reporter/rules/engineering-spec.md +389 -0
- package/.agent/skills/game-development/2d-games/SKILL.md +140 -0
- package/.agent/skills/game-development/3d-games/SKILL.md +156 -0
- package/.agent/skills/game-development/AGENTS.md +783 -0
- package/.agent/skills/game-development/SKILL.md +178 -0
- package/.agent/skills/game-development/game-art/SKILL.md +207 -0
- package/.agent/skills/game-development/game-audio/SKILL.md +211 -0
- package/.agent/skills/game-development/game-design/SKILL.md +151 -0
- package/.agent/skills/game-development/mobile-games/SKILL.md +130 -0
- package/.agent/skills/game-development/multiplayer/SKILL.md +154 -0
- package/.agent/skills/game-development/pc-games/SKILL.md +167 -0
- package/.agent/skills/game-development/rules/_sections.md +15 -0
- package/.agent/skills/game-development/rules/_template.md +32 -0
- package/.agent/skills/game-development/rules/engineering-spec.md +480 -0
- package/.agent/skills/game-development/vr-ar/SKILL.md +144 -0
- package/.agent/skills/game-development/web-games/SKILL.md +173 -0
- package/.agent/skills/git-workflow/AGENTS.md +554 -0
- package/.agent/skills/git-workflow/SKILL.md +181 -0
- package/.agent/skills/git-workflow/rules/_sections.md +15 -0
- package/.agent/skills/git-workflow/rules/_template.md +32 -0
- package/.agent/skills/git-workflow/rules/engineering-spec.md +518 -0
- package/.agent/skills/gitops/AGENTS.md +921 -0
- package/.agent/skills/gitops/SKILL.md +163 -0
- package/.agent/skills/gitops/rules/_sections.md +25 -0
- package/.agent/skills/gitops/rules/_template.md +32 -0
- package/.agent/skills/gitops/rules/argocd-setup.md +148 -0
- package/.agent/skills/gitops/rules/engineering-spec.md +450 -0
- package/.agent/skills/gitops/rules/sync-policies.md +145 -0
- package/.agent/skills/google-adk-python/AGENTS.md +1054 -0
- package/.agent/skills/google-adk-python/SKILL.md +168 -0
- package/.agent/skills/google-adk-python/rules/_sections.md +25 -0
- package/.agent/skills/google-adk-python/rules/_template.md +32 -0
- package/.agent/skills/google-adk-python/rules/deployment.md +138 -0
- package/.agent/skills/google-adk-python/rules/engineering-spec.md +451 -0
- package/.agent/skills/google-adk-python/rules/multi-agent.md +146 -0
- package/.agent/skills/google-adk-python/rules/tools.md +131 -0
- package/.agent/skills/idea-storm/AGENTS.md +995 -0
- package/.agent/skills/idea-storm/SKILL.md +160 -0
- package/.agent/skills/idea-storm/rules/_sections.md +25 -0
- package/.agent/skills/idea-storm/rules/_template.md +32 -0
- package/.agent/skills/idea-storm/rules/architecture-debate.md +122 -0
- package/.agent/skills/idea-storm/rules/dynamic-questioning.md +374 -0
- package/.agent/skills/idea-storm/rules/engineering-spec.md +466 -0
- package/.agent/skills/knowledge-compiler/SKILL.md +320 -0
- package/.agent/skills/knowledge-graph/AGENTS.md +762 -0
- package/.agent/skills/knowledge-graph/SKILL.md +157 -0
- package/.agent/skills/knowledge-graph/rules/_sections.md +15 -0
- package/.agent/skills/knowledge-graph/rules/_template.md +32 -0
- package/.agent/skills/knowledge-graph/rules/engineering-spec.md +439 -0
- package/.agent/skills/knowledge-linter/SKILL.md +217 -0
- package/.agent/skills/lifecycle-orchestrator/AGENTS.md +989 -0
- package/.agent/skills/lifecycle-orchestrator/SKILL.md +169 -0
- package/.agent/skills/lifecycle-orchestrator/rules/_sections.md +15 -0
- package/.agent/skills/lifecycle-orchestrator/rules/_template.md +32 -0
- package/.agent/skills/lifecycle-orchestrator/rules/engineering-spec.md +525 -0
- package/.agent/skills/lifecycle-orchestrator/scripts/state_manager.ts +189 -0
- package/.agent/skills/mcp-builder/AGENTS.md +1653 -0
- package/.agent/skills/mcp-builder/SKILL.md +166 -0
- package/.agent/skills/mcp-builder/rules/_sections.md +40 -0
- package/.agent/skills/mcp-builder/rules/_template.md +32 -0
- package/.agent/skills/mcp-builder/rules/best-practices.md +157 -0
- package/.agent/skills/mcp-builder/rules/design-principles.md +105 -0
- package/.agent/skills/mcp-builder/rules/engineering-spec.md +473 -0
- package/.agent/skills/mcp-builder/rules/evaluation.md +103 -0
- package/.agent/skills/mcp-builder/rules/python-implementation.md +249 -0
- package/.agent/skills/mcp-builder/rules/quickstart.md +111 -0
- package/.agent/skills/mcp-builder/rules/typescript-implementation.md +280 -0
- package/.agent/skills/mcp-management/AGENTS.md +837 -0
- package/.agent/skills/mcp-management/SKILL.md +164 -0
- package/.agent/skills/mcp-management/rules/_sections.md +25 -0
- package/.agent/skills/mcp-management/rules/_template.md +32 -0
- package/.agent/skills/mcp-management/rules/cli-usage.md +146 -0
- package/.agent/skills/mcp-management/rules/engineering-spec.md +501 -0
- package/.agent/skills/mcp-management/rules/protocol.md +159 -0
- package/.agent/skills/media-processing/AGENTS.md +479 -0
- package/.agent/skills/media-processing/SKILL.md +176 -0
- package/.agent/skills/media-processing/rules/_sections.md +15 -0
- package/.agent/skills/media-processing/rules/_template.md +32 -0
- package/.agent/skills/media-processing/rules/engineering-spec.md +452 -0
- package/.agent/skills/media-processing/scripts/convert-video.ts +155 -0
- package/.agent/skills/media-processing/scripts/optimize-image.ts +127 -0
- package/.agent/skills/mobile-design/AGENTS.md +6531 -0
- package/.agent/skills/mobile-design/SKILL.md +165 -0
- package/.agent/skills/mobile-design/rules/_sections.md +45 -0
- package/.agent/skills/mobile-design/rules/_template.md +32 -0
- package/.agent/skills/mobile-design/rules/decision-trees.md +540 -0
- package/.agent/skills/mobile-design/rules/engineering-spec.md +467 -0
- package/.agent/skills/mobile-design/rules/mobile-backend.md +516 -0
- package/.agent/skills/mobile-design/rules/mobile-color-system.md +436 -0
- package/.agent/skills/mobile-design/rules/mobile-debugging.md +146 -0
- package/.agent/skills/mobile-design/rules/mobile-design-thinking.md +381 -0
- package/.agent/skills/mobile-design/rules/mobile-navigation.md +474 -0
- package/.agent/skills/mobile-design/rules/mobile-performance.md +783 -0
- package/.agent/skills/mobile-design/rules/mobile-testing.md +380 -0
- package/.agent/skills/mobile-design/rules/mobile-typography.md +449 -0
- package/.agent/skills/mobile-design/rules/platform-android.md +682 -0
- package/.agent/skills/mobile-design/rules/platform-ios.md +577 -0
- package/.agent/skills/mobile-design/rules/touch-psychology.md +553 -0
- package/.agent/skills/mobile-design/scripts/mobile_audit.ts +309 -0
- package/.agent/skills/mobile-developer/AGENTS.md +904 -0
- package/.agent/skills/mobile-developer/SKILL.md +194 -0
- package/.agent/skills/mobile-developer/rules/_sections.md +75 -0
- package/.agent/skills/mobile-developer/rules/_template.md +32 -0
- package/.agent/skills/mobile-developer/rules/anti-patterns.md +70 -0
- package/.agent/skills/mobile-developer/rules/app-store-optimization.md +319 -0
- package/.agent/skills/mobile-developer/rules/decision-trees.md +545 -0
- package/.agent/skills/mobile-developer/rules/deep-linking.md +441 -0
- package/.agent/skills/mobile-developer/rules/engineering-spec.md +477 -0
- package/.agent/skills/mobile-developer/rules/flutter.md +475 -0
- package/.agent/skills/mobile-developer/rules/mobile-backend.md +516 -0
- package/.agent/skills/mobile-developer/rules/mobile-color-system.md +444 -0
- package/.agent/skills/mobile-developer/rules/mobile-debugging.md +428 -0
- package/.agent/skills/mobile-developer/rules/mobile-design-thinking.md +367 -0
- package/.agent/skills/mobile-developer/rules/mobile-navigation.md +483 -0
- package/.agent/skills/mobile-developer/rules/mobile-performance.md +778 -0
- package/.agent/skills/mobile-developer/rules/mobile-testing.md +382 -0
- package/.agent/skills/mobile-developer/rules/mobile-typography.md +457 -0
- package/.agent/skills/mobile-developer/rules/native.md +572 -0
- package/.agent/skills/mobile-developer/rules/platform-android.md +676 -0
- package/.agent/skills/mobile-developer/rules/platform-ios.md +571 -0
- package/.agent/skills/mobile-developer/rules/push-notifications.md +599 -0
- package/.agent/skills/mobile-developer/rules/react-native.md +422 -0
- package/.agent/skills/mobile-developer/rules/touch-psychology.md +547 -0
- package/.agent/skills/mobile-developer/scripts/mobile_audit.ts +701 -0
- package/.agent/skills/nextjs-pro/AGENTS.md +3932 -0
- package/.agent/skills/nextjs-pro/SKILL.md +171 -0
- package/.agent/skills/nextjs-pro/rules/_sections.md +50 -0
- package/.agent/skills/nextjs-pro/rules/_template.md +32 -0
- package/.agent/skills/nextjs-pro/rules/advanced-event-handler-refs.md +59 -0
- package/.agent/skills/nextjs-pro/rules/advanced-init-once.md +46 -0
- package/.agent/skills/nextjs-pro/rules/advanced-use-latest.md +43 -0
- package/.agent/skills/nextjs-pro/rules/async-api-routes.md +42 -0
- package/.agent/skills/nextjs-pro/rules/async-defer-await.md +84 -0
- package/.agent/skills/nextjs-pro/rules/async-dependencies.md +55 -0
- package/.agent/skills/nextjs-pro/rules/async-parallel.md +32 -0
- package/.agent/skills/nextjs-pro/rules/async-suspense-boundaries.md +103 -0
- package/.agent/skills/nextjs-pro/rules/bundle-barrel-imports.md +63 -0
- package/.agent/skills/nextjs-pro/rules/bundle-conditional.md +35 -0
- package/.agent/skills/nextjs-pro/rules/bundle-defer-third-party.md +53 -0
- package/.agent/skills/nextjs-pro/rules/bundle-dynamic-imports.md +39 -0
- package/.agent/skills/nextjs-pro/rules/bundle-preload.md +54 -0
- package/.agent/skills/nextjs-pro/rules/client-event-listeners.md +78 -0
- package/.agent/skills/nextjs-pro/rules/client-localstorage-schema.md +75 -0
- package/.agent/skills/nextjs-pro/rules/client-passive-event-listeners.md +52 -0
- package/.agent/skills/nextjs-pro/rules/client-swr-dedup.md +60 -0
- package/.agent/skills/nextjs-pro/rules/engineering-spec.md +440 -0
- package/.agent/skills/nextjs-pro/rules/js-batch-dom-css.md +111 -0
- package/.agent/skills/nextjs-pro/rules/js-cache-function-results.md +84 -0
- package/.agent/skills/nextjs-pro/rules/js-cache-property-access.md +32 -0
- package/.agent/skills/nextjs-pro/rules/js-cache-storage.md +74 -0
- package/.agent/skills/nextjs-pro/rules/js-combine-iterations.md +36 -0
- package/.agent/skills/nextjs-pro/rules/js-early-exit.md +54 -0
- package/.agent/skills/nextjs-pro/rules/js-hoist-regexp.md +49 -0
- package/.agent/skills/nextjs-pro/rules/js-index-maps.md +41 -0
- package/.agent/skills/nextjs-pro/rules/js-length-check-first.md +53 -0
- package/.agent/skills/nextjs-pro/rules/js-min-max-loop.md +86 -0
- package/.agent/skills/nextjs-pro/rules/js-set-map-lookups.md +28 -0
- package/.agent/skills/nextjs-pro/rules/js-tosorted-immutable.md +61 -0
- package/.agent/skills/nextjs-pro/rules/rendering-activity.md +30 -0
- package/.agent/skills/nextjs-pro/rules/rendering-animate-svg-wrapper.md +51 -0
- package/.agent/skills/nextjs-pro/rules/rendering-conditional-render.md +44 -0
- package/.agent/skills/nextjs-pro/rules/rendering-content-visibility.md +42 -0
- package/.agent/skills/nextjs-pro/rules/rendering-hoist-jsx.md +50 -0
- package/.agent/skills/nextjs-pro/rules/rendering-hydration-no-flicker.md +86 -0
- package/.agent/skills/nextjs-pro/rules/rendering-hydration-suppress-warning.md +34 -0
- package/.agent/skills/nextjs-pro/rules/rendering-svg-precision.md +32 -0
- package/.agent/skills/nextjs-pro/rules/rendering-usetransition-loading.md +79 -0
- package/.agent/skills/nextjs-pro/rules/rerender-defer-reads.md +43 -0
- package/.agent/skills/nextjs-pro/rules/rerender-dependencies.md +49 -0
- package/.agent/skills/nextjs-pro/rules/rerender-derived-state-no-effect.md +44 -0
- package/.agent/skills/nextjs-pro/rules/rerender-derived-state.md +33 -0
- package/.agent/skills/nextjs-pro/rules/rerender-functional-setstate.md +78 -0
- package/.agent/skills/nextjs-pro/rules/rerender-lazy-state-init.md +62 -0
- package/.agent/skills/nextjs-pro/rules/rerender-memo-with-default-value.md +42 -0
- package/.agent/skills/nextjs-pro/rules/rerender-memo.md +48 -0
- package/.agent/skills/nextjs-pro/rules/rerender-move-effect-to-event.md +49 -0
- package/.agent/skills/nextjs-pro/rules/rerender-simple-expression-in-memo.md +39 -0
- package/.agent/skills/nextjs-pro/rules/rerender-transitions.md +44 -0
- package/.agent/skills/nextjs-pro/rules/rerender-use-ref-transient-values.md +77 -0
- package/.agent/skills/nextjs-pro/rules/schema.json +34 -0
- package/.agent/skills/nextjs-pro/rules/server-after-nonblocking.md +77 -0
- package/.agent/skills/nextjs-pro/rules/server-auth-actions.md +100 -0
- package/.agent/skills/nextjs-pro/rules/server-cache-lru.md +45 -0
- package/.agent/skills/nextjs-pro/rules/server-cache-react.md +80 -0
- package/.agent/skills/nextjs-pro/rules/server-dedup-props.md +69 -0
- package/.agent/skills/nextjs-pro/rules/server-parallel-fetching.md +87 -0
- package/.agent/skills/nextjs-pro/rules/server-serialization.md +42 -0
- package/.agent/skills/nodejs-pro/AGENTS.md +866 -0
- package/.agent/skills/nodejs-pro/SKILL.md +172 -0
- package/.agent/skills/nodejs-pro/rules/_sections.md +50 -0
- package/.agent/skills/nodejs-pro/rules/_template.md +32 -0
- package/.agent/skills/nodejs-pro/rules/architecture-patterns.md +229 -0
- package/.agent/skills/nodejs-pro/rules/async-patterns.md +246 -0
- package/.agent/skills/nodejs-pro/rules/engineering-spec.md +438 -0
- package/.agent/skills/nodejs-pro/rules/error-handling.md +257 -0
- package/.agent/skills/nodejs-pro/rules/framework-selection.md +220 -0
- package/.agent/skills/nodejs-pro/rules/runtime-modules.md +176 -0
- package/.agent/skills/nodejs-pro/rules/testing-strategy.md +266 -0
- package/.agent/skills/nodejs-pro/rules/validation-security.md +205 -0
- package/.agent/skills/observability/AGENTS.md +607 -0
- package/.agent/skills/observability/SKILL.md +178 -0
- package/.agent/skills/observability/rules/_sections.md +15 -0
- package/.agent/skills/observability/rules/_template.md +32 -0
- package/.agent/skills/observability/rules/engineering-spec.md +440 -0
- package/.agent/skills/offensive-sec/AGENTS.md +849 -0
- package/.agent/skills/offensive-sec/SKILL.md +191 -0
- package/.agent/skills/offensive-sec/rules/_sections.md +15 -0
- package/.agent/skills/offensive-sec/rules/_template.md +32 -0
- package/.agent/skills/offensive-sec/rules/engineering-spec.md +470 -0
- package/.agent/skills/perf-optimizer/AGENTS.md +870 -0
- package/.agent/skills/perf-optimizer/SKILL.md +189 -0
- package/.agent/skills/perf-optimizer/rules/_sections.md +15 -0
- package/.agent/skills/perf-optimizer/rules/_template.md +32 -0
- package/.agent/skills/perf-optimizer/rules/backend-patterns.md +312 -0
- package/.agent/skills/perf-optimizer/rules/engineering-spec.md +428 -0
- package/.agent/skills/perf-optimizer/scripts/lighthouse_audit.ts +201 -0
- package/.agent/skills/problem-checker/AGENTS.md +519 -0
- package/.agent/skills/problem-checker/SKILL.md +189 -0
- package/.agent/skills/problem-checker/rules/_sections.md +15 -0
- package/.agent/skills/problem-checker/rules/_template.md +32 -0
- package/.agent/skills/problem-checker/rules/engineering-spec.md +483 -0
- package/.agent/skills/problem-checker/scripts/check_problems.ts +396 -0
- package/.agent/skills/project-planner/AGENTS.md +2698 -0
- package/.agent/skills/project-planner/SKILL.md +166 -0
- package/.agent/skills/project-planner/rules/_sections.md +15 -0
- package/.agent/skills/project-planner/rules/_template.md +32 -0
- package/.agent/skills/project-planner/rules/engineering-spec.md +420 -0
- package/.agent/skills/python-pro/AGENTS.md +1871 -0
- package/.agent/skills/python-pro/SKILL.md +182 -0
- package/.agent/skills/python-pro/rules/_sections.md +50 -0
- package/.agent/skills/python-pro/rules/_template.md +32 -0
- package/.agent/skills/python-pro/rules/async-patterns.md +168 -0
- package/.agent/skills/python-pro/rules/django-patterns.md +194 -0
- package/.agent/skills/python-pro/rules/engineering-spec.md +442 -0
- package/.agent/skills/python-pro/rules/fastapi-patterns.md +179 -0
- package/.agent/skills/python-pro/rules/framework-selection.md +167 -0
- package/.agent/skills/python-pro/rules/project-structure.md +181 -0
- package/.agent/skills/python-pro/rules/testing-patterns.md +212 -0
- package/.agent/skills/python-pro/rules/type-hints.md +159 -0
- package/.agent/skills/react-pro/AGENTS.md +963 -0
- package/.agent/skills/react-pro/SKILL.md +232 -0
- package/.agent/skills/react-pro/rules/_sections.md +40 -0
- package/.agent/skills/react-pro/rules/_template.md +32 -0
- package/.agent/skills/react-pro/rules/component-patterns.md +145 -0
- package/.agent/skills/react-pro/rules/composition-compound.md +82 -0
- package/.agent/skills/react-pro/rules/data-fetching.md +133 -0
- package/.agent/skills/react-pro/rules/engineering-spec.md +453 -0
- package/.agent/skills/react-pro/rules/error-boundary.md +61 -0
- package/.agent/skills/react-pro/rules/file-organization.md +158 -0
- package/.agent/skills/react-pro/rules/hooks-custom.md +61 -0
- package/.agent/skills/react-pro/rules/mui-styling.md +138 -0
- package/.agent/skills/react-pro/rules/patterns.md +24 -0
- package/.agent/skills/react-pro/rules/performance-optimization.md +65 -0
- package/.agent/skills/react-pro/rules/performance.md +137 -0
- package/.agent/skills/react-pro/rules/react19-hooks.md +85 -0
- package/.agent/skills/react-pro/rules/state-management.md +90 -0
- package/.agent/skills/react-pro/rules/testing-patterns.md +52 -0
- package/.agent/skills/registry.json +1251 -0
- package/.agent/skills/security-scanner/AGENTS.md +851 -0
- package/.agent/skills/security-scanner/SKILL.md +182 -0
- package/.agent/skills/security-scanner/rules/_sections.md +15 -0
- package/.agent/skills/security-scanner/rules/_template.md +32 -0
- package/.agent/skills/security-scanner/rules/auth-patterns.md +281 -0
- package/.agent/skills/security-scanner/rules/checklists.md +186 -0
- package/.agent/skills/security-scanner/rules/engineering-spec.md +440 -0
- package/.agent/skills/security-scanner/scripts/security_scan.ts +513 -0
- package/.agent/skills/seo-optimizer/AGENTS.md +839 -0
- package/.agent/skills/seo-optimizer/SKILL.md +180 -0
- package/.agent/skills/seo-optimizer/rules/_sections.md +15 -0
- package/.agent/skills/seo-optimizer/rules/_template.md +32 -0
- package/.agent/skills/seo-optimizer/rules/engineering-spec.md +433 -0
- package/.agent/skills/seo-optimizer/scripts/geo_checker.ts +109 -0
- package/.agent/skills/seo-optimizer/scripts/seo_checker.ts +308 -0
- package/.agent/skills/server-ops/AGENTS.md +643 -0
- package/.agent/skills/server-ops/SKILL.md +194 -0
- package/.agent/skills/server-ops/rules/_sections.md +15 -0
- package/.agent/skills/server-ops/rules/_template.md +32 -0
- package/.agent/skills/server-ops/rules/engineering-spec.md +450 -0
- package/.agent/skills/shell-script/AGENTS.md +499 -0
- package/.agent/skills/shell-script/SKILL.md +205 -0
- package/.agent/skills/shell-script/rules/_sections.md +15 -0
- package/.agent/skills/shell-script/rules/_template.md +32 -0
- package/.agent/skills/shell-script/rules/engineering-spec.md +463 -0
- package/.agent/skills/skill-generator/SKILL.md +147 -0
- package/.agent/skills/smart-router/SKILL.md +95 -0
- package/.agent/skills/studio/AGENTS.md +636 -0
- package/.agent/skills/studio/SKILL.md +178 -0
- package/.agent/skills/studio/data/charts.csv +26 -0
- package/.agent/skills/studio/data/colors.csv +97 -0
- package/.agent/skills/studio/data/icons.csv +101 -0
- package/.agent/skills/studio/data/landing.csv +31 -0
- package/.agent/skills/studio/data/products.csv +97 -0
- package/.agent/skills/studio/data/prompts.csv +24 -0
- package/.agent/skills/studio/data/react-performance.csv +45 -0
- package/.agent/skills/studio/data/stacks/flutter.csv +52 -0
- package/.agent/skills/studio/data/stacks/html-tailwind.csv +56 -0
- package/.agent/skills/studio/data/stacks/jetpack-compose.csv +53 -0
- package/.agent/skills/studio/data/stacks/nextjs.csv +53 -0
- package/.agent/skills/studio/data/stacks/nuxt-ui.csv +51 -0
- package/.agent/skills/studio/data/stacks/nuxtjs.csv +59 -0
- package/.agent/skills/studio/data/stacks/react-native.csv +52 -0
- package/.agent/skills/studio/data/stacks/react.csv +54 -0
- package/.agent/skills/studio/data/stacks/shadcn.csv +61 -0
- package/.agent/skills/studio/data/stacks/svelte.csv +54 -0
- package/.agent/skills/studio/data/stacks/swiftui.csv +51 -0
- package/.agent/skills/studio/data/stacks/vue.csv +50 -0
- package/.agent/skills/studio/data/styles.csv +59 -0
- package/.agent/skills/studio/data/typography.csv +58 -0
- package/.agent/skills/studio/data/ui-reasoning.csv +101 -0
- package/.agent/skills/studio/data/ux-guidelines.csv +100 -0
- package/.agent/skills/studio/data/web-interface.csv +31 -0
- package/.agent/skills/studio/rules/_sections.md +15 -0
- package/.agent/skills/studio/rules/_template.md +32 -0
- package/.agent/skills/studio/rules/engineering-spec.md +455 -0
- package/.agent/skills/studio/scripts/core.ts +345 -0
- package/.agent/skills/studio/scripts/design_system.ts +953 -0
- package/.agent/skills/studio/scripts/search.ts +197 -0
- package/.agent/skills/studio/scripts/types.ts +147 -0
- package/.agent/skills/studio/scripts/utils/component-specs.ts +154 -0
- package/.agent/skills/studio/scripts/utils/config-loader.ts +165 -0
- package/.agent/skills/studio/scripts/utils/css-templates.ts +169 -0
- package/.agent/skills/studio/scripts/utils/css-validator.ts +95 -0
- package/.agent/skills/studio/scripts/utils/csv-loader.ts +52 -0
- package/.agent/skills/studio/scripts/utils/intelligent-overrides.ts +129 -0
- package/.agent/skills/studio/scripts/utils/page-override-formatter.ts +143 -0
- package/.agent/skills/studio/scripts/utils/page-type-detector.ts +124 -0
- package/.agent/skills/studio/scripts/utils/search-cache.ts +165 -0
- package/.agent/skills/studio/scripts/utils/text-utils.ts +44 -0
- package/.agent/skills/system-design/AGENTS.md +597 -0
- package/.agent/skills/system-design/SKILL.md +153 -0
- package/.agent/skills/system-design/rules/_sections.md +15 -0
- package/.agent/skills/system-design/rules/_template.md +32 -0
- package/.agent/skills/system-design/rules/context-discovery.md +117 -0
- package/.agent/skills/system-design/rules/engineering-spec.md +437 -0
- package/.agent/skills/system-design/rules/examples.md +180 -0
- package/.agent/skills/system-design/rules/pattern-selection.md +130 -0
- package/.agent/skills/system-design/rules/patterns-reference.md +110 -0
- package/.agent/skills/system-design/rules/trade-off-analysis.md +169 -0
- package/.agent/skills/tailwind-kit/AGENTS.md +1135 -0
- package/.agent/skills/tailwind-kit/SKILL.md +171 -0
- package/.agent/skills/tailwind-kit/rules/_sections.md +20 -0
- package/.agent/skills/tailwind-kit/rules/_template.md +32 -0
- package/.agent/skills/tailwind-kit/rules/components.md +232 -0
- package/.agent/skills/tailwind-kit/rules/engineering-spec.md +435 -0
- package/.agent/skills/tailwind-kit/rules/responsive.md +221 -0
- package/.agent/skills/tailwind-kit/rules/v4-config.md +72 -0
- package/.agent/skills/test-architect/AGENTS.md +851 -0
- package/.agent/skills/test-architect/SKILL.md +176 -0
- package/.agent/skills/test-architect/rules/_sections.md +15 -0
- package/.agent/skills/test-architect/rules/_template.md +32 -0
- package/.agent/skills/test-architect/rules/engineering-spec.md +434 -0
- package/.agent/skills/test-architect/scripts/test_runner.ts +265 -0
- package/.agent/skills/typescript-expert/AGENTS.md +1045 -0
- package/.agent/skills/typescript-expert/SKILL.md +200 -0
- package/.agent/skills/typescript-expert/rules/_sections.md +20 -0
- package/.agent/skills/typescript-expert/rules/_template.md +32 -0
- package/.agent/skills/typescript-expert/rules/engineering-spec.md +433 -0
- package/.agent/skills/typescript-expert/rules/tsconfig-strict.json +92 -0
- package/.agent/skills/typescript-expert/rules/typescript-cheatsheet.md +407 -0
- package/.agent/skills/typescript-expert/rules/utility-types.ts +264 -0
- package/.agent/skills/typescript-expert/scripts/ts_diagnostic.ts +321 -0
- package/.agent/skills/vercel-deploy/AGENTS.md +490 -0
- package/.agent/skills/vercel-deploy/SKILL.md +175 -0
- package/.agent/skills/vercel-deploy/rules/_sections.md +15 -0
- package/.agent/skills/vercel-deploy/rules/_template.md +32 -0
- package/.agent/skills/vercel-deploy/rules/engineering-spec.md +463 -0
- package/.agent/skills/vercel-deploy/scripts/deploy.sh +310 -0
- package/.agent/workflows/api.md +377 -0
- package/.agent/workflows/autopilot.md +344 -0
- package/.agent/workflows/build.md +338 -0
- package/.agent/workflows/chronicle.md +279 -0
- package/.agent/workflows/cook.md +217 -0
- package/.agent/workflows/diagnose.md +302 -0
- package/.agent/workflows/fix.md +253 -0
- package/.agent/workflows/game.md +329 -0
- package/.agent/workflows/inspect.md +276 -0
- package/.agent/workflows/knowledge.md +212 -0
- package/.agent/workflows/launch.md +345 -0
- package/.agent/workflows/mobile.md +354 -0
- package/.agent/workflows/monitor.md +239 -0
- package/.agent/workflows/optimize.md +269 -0
- package/.agent/workflows/plan.md +278 -0
- package/.agent/workflows/stage.md +286 -0
- package/.agent/workflows/studio.md +276 -0
- package/.agent/workflows/think.md +262 -0
- package/.agent/workflows/validate.md +289 -0
- package/.agentignore +161 -0
- package/.gitattributes +16 -0
- package/CHANGELOG.md +198 -0
- package/LICENSE +40 -0
- package/README.md +173 -0
- package/docs/SKILL_DESIGN_GUIDE.md +561 -0
- package/docs/The-Complete-Guide-to-Building-Skills-for-Claude.md +1207 -0
- package/docs/WORKFLOW_DESIGN_GUIDE.md +325 -0
- package/package.json +33 -0
- package/tsconfig.json +28 -0
|
@@ -0,0 +1,451 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Google ADK Python — Engineering Specification
|
|
3
|
+
impact: MEDIUM
|
|
4
|
+
tags: google-adk-python
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Google ADK Python — Engineering Specification
|
|
8
|
+
|
|
9
|
+
> Production-grade specification for building AI agents with Google's Agent Development Kit at FAANG scale.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## 1. Overview
|
|
14
|
+
|
|
15
|
+
Google ADK Python provides structured decision frameworks for building, composing, and deploying AI agents using Google's Agent Development Kit: agent type selection (4 types), model selection (3 tiers), tool integration (built-in + custom), multi-agent orchestration (delegation + sub-agents), and deployment patterns. The skill operates as an expert knowledge base with 3 reference files — it produces agent architecture decisions and code patterns. It does not execute agents, configure cloud projects, or manage API keys.
|
|
16
|
+
|
|
17
|
+
**Contract Version:** 2.0.0
|
|
18
|
+
**Backward Compatibility:** breaking (first hardened version)
|
|
19
|
+
**Breaking Changes:** None — new spec for first hardening
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## 2. Problem Statement
|
|
24
|
+
|
|
25
|
+
AI agent development at scale faces four quantified problems:
|
|
26
|
+
|
|
27
|
+
| Problem | Measurement | Impact |
|
|
28
|
+
|---------|-------------|--------|
|
|
29
|
+
| Wrong agent type selection | 40% of multi-step workflows use LlmAgent instead of SequentialAgent | Unreliable execution order |
|
|
30
|
+
| Over-powered model choice | 55% of simple tasks use pro-high when flash suffices | 10x cost increase |
|
|
31
|
+
| Monolithic agent design | 45% of agents combine all responsibilities | Cannot scale or test independently |
|
|
32
|
+
| Missing tool type hints | 50% of custom tools lack proper signatures | LLM cannot infer parameters |
|
|
33
|
+
|
|
34
|
+
Google ADK Python eliminates these with deterministic agent type selection, cost-based model routing, modular multi-agent patterns, and strict tool function contracts.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## 3. Design Goals
|
|
39
|
+
|
|
40
|
+
| ID | Goal | Measurable Constraint |
|
|
41
|
+
|----|------|-----------------------|
|
|
42
|
+
| G1 | Agent type selection | Task type → agent type (4 types, deterministic mapping) |
|
|
43
|
+
| G2 | Model cost routing | Complexity → model tier (3 tiers, fixed rules) |
|
|
44
|
+
| G3 | Modular agent design | Max 5 tools per agent; delegate for more |
|
|
45
|
+
| G4 | Tool function contracts | Typed parameters, docstring, return type mandatory |
|
|
46
|
+
| G5 | Multi-agent composition | Coordinator + specialist pattern with ≤ 5 sub-agents |
|
|
47
|
+
| G6 | Code-first definition | All agents defined in Python; no JSON/YAML config |
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 4. Non-Goals
|
|
52
|
+
|
|
53
|
+
| ID | Excluded | Rationale |
|
|
54
|
+
|----|----------|-----------|
|
|
55
|
+
| NG1 | Python project setup | Owned by `python-pro` skill |
|
|
56
|
+
| NG2 | API architecture | Owned by `api-architect` skill |
|
|
57
|
+
| NG3 | Google Cloud project configuration | Infrastructure concern |
|
|
58
|
+
| NG4 | LLM prompt engineering | Owned by `ai-artist` skill |
|
|
59
|
+
| NG5 | Agent hosting/serving | Deployment infrastructure |
|
|
60
|
+
| NG6 | Fine-tuning models | ML engineering concern |
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## 5. System Boundaries
|
|
65
|
+
|
|
66
|
+
| Boundary | Owned | Not Owned |
|
|
67
|
+
|----------|-------|-----------|
|
|
68
|
+
| Agent type selection (4 types) | Decision criteria | Agent execution runtime |
|
|
69
|
+
| Model selection (3 tiers) | Cost/complexity routing | Model hosting |
|
|
70
|
+
| Tool integration (built-in + custom) | Tool creation patterns | Tool implementation logic |
|
|
71
|
+
| Multi-agent orchestration | Composition patterns | Agent communication infrastructure |
|
|
72
|
+
| Deployment patterns | Architecture guidance | Cloud deployment execution |
|
|
73
|
+
| Quick start templates | Code patterns | Package installation |
|
|
74
|
+
|
|
75
|
+
**Side-effect boundary:** Google ADK Python produces agent architecture decisions and code patterns. It does not execute agents, install packages, or configure cloud services.
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## 6. Integration Model
|
|
80
|
+
|
|
81
|
+
### 6.1 Agent Contract
|
|
82
|
+
|
|
83
|
+
#### Input Schema
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
Request_Type: string # "agent-type" | "model-select" | "tool-create" |
|
|
87
|
+
# "multi-agent" | "deployment" | "quick-start" | "full-guide"
|
|
88
|
+
Context: {
|
|
89
|
+
task_type: string # "conversational" | "pipeline" | "fan-out" | "iterative"
|
|
90
|
+
complexity: string # "simple" | "balanced" | "complex"
|
|
91
|
+
tool_count: number # Number of tools needed
|
|
92
|
+
needs_sub_agents: boolean # Whether multi-agent is needed
|
|
93
|
+
target_environment: string | null # "local" | "cloud-run" | "vertex-ai"
|
|
94
|
+
}
|
|
95
|
+
contract_version: string # "2.0.0"
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
#### Output Schema
|
|
99
|
+
|
|
100
|
+
```
|
|
101
|
+
Status: "success" | "error"
|
|
102
|
+
Data: {
|
|
103
|
+
agent_type: {
|
|
104
|
+
type: string # "LlmAgent" | "SequentialAgent" | "ParallelAgent" | "LoopAgent"
|
|
105
|
+
rationale: string
|
|
106
|
+
code_template: string # Python code snippet
|
|
107
|
+
} | null
|
|
108
|
+
model: {
|
|
109
|
+
name: string # "gemini-3-flash" | "gemini-3-pro-low" | "gemini-3-pro-high"
|
|
110
|
+
tier: string # "fast" | "balanced" | "reasoning"
|
|
111
|
+
rationale: string
|
|
112
|
+
} | null
|
|
113
|
+
tool: {
|
|
114
|
+
pattern: string # "function" | "built-in" | "mcp"
|
|
115
|
+
code_template: string
|
|
116
|
+
requirements: Array<string> # typed params, docstring, return type
|
|
117
|
+
} | null
|
|
118
|
+
multi_agent: {
|
|
119
|
+
pattern: string # "coordinator-specialist" | "sequential-pipeline" | "parallel-fan-out"
|
|
120
|
+
max_sub_agents: number # Always ≤ 5
|
|
121
|
+
code_template: string
|
|
122
|
+
} | null
|
|
123
|
+
deployment: {
|
|
124
|
+
target: string
|
|
125
|
+
steps: Array<string>
|
|
126
|
+
} | null
|
|
127
|
+
reference_file: string | null
|
|
128
|
+
metadata: {
|
|
129
|
+
contract_version: string
|
|
130
|
+
backward_compatibility: string
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
Error: ErrorSchema | null
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
#### Error Schema
|
|
137
|
+
|
|
138
|
+
```
|
|
139
|
+
Code: string # From Error Taxonomy (Section 11)
|
|
140
|
+
Message: string
|
|
141
|
+
Request_Type: string
|
|
142
|
+
Recoverable: boolean
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
#### Deterministic Guarantees
|
|
146
|
+
|
|
147
|
+
- Agent type selection is deterministic: conversational → LlmAgent, pipeline → SequentialAgent, fan-out → ParallelAgent, iterative → LoopAgent.
|
|
148
|
+
- Model selection is deterministic: simple → gemini-3-flash, balanced → gemini-3-pro-low, complex → gemini-3-pro-high.
|
|
149
|
+
- Tool count > 5 → multi-agent with delegation.
|
|
150
|
+
- Sub-agent count ≤ 5 per coordinator.
|
|
151
|
+
- Custom tools always require: typed parameters, docstring, return type annotation.
|
|
152
|
+
- Code patterns always use `from google.adk.agents import` (never raw API).
|
|
153
|
+
|
|
154
|
+
#### What Agents May Assume
|
|
155
|
+
|
|
156
|
+
- Agent type maps directly from task type.
|
|
157
|
+
- Model tier maps directly from complexity.
|
|
158
|
+
- Code templates are syntactically valid Python.
|
|
159
|
+
- Tool patterns follow Google ADK conventions.
|
|
160
|
+
|
|
161
|
+
#### What Agents Must NOT Assume
|
|
162
|
+
|
|
163
|
+
- `google-adk` package is installed.
|
|
164
|
+
- API keys or cloud credentials are configured.
|
|
165
|
+
- Agents will execute successfully (depends on model availability).
|
|
166
|
+
- Custom tools will produce correct results (logic is caller's responsibility).
|
|
167
|
+
|
|
168
|
+
#### Side-Effect Boundaries
|
|
169
|
+
|
|
170
|
+
| Operation | Side Effects |
|
|
171
|
+
|-----------|-------------|
|
|
172
|
+
| Agent type select | None; decision output |
|
|
173
|
+
| Model select | None; recommendation |
|
|
174
|
+
| Tool create | None; code template |
|
|
175
|
+
| Multi-agent | None; composition pattern |
|
|
176
|
+
| Quick start | None; code template |
|
|
177
|
+
| Deployment | None; architecture guidance |
|
|
178
|
+
|
|
179
|
+
### 6.2 Workflow Contract
|
|
180
|
+
|
|
181
|
+
#### Invocation Pattern
|
|
182
|
+
|
|
183
|
+
```
|
|
184
|
+
1. Define task type, complexity, tool count
|
|
185
|
+
2. Invoke agent-type for agent selection
|
|
186
|
+
3. Invoke model-select for cost-appropriate model
|
|
187
|
+
4. Invoke tool-create for custom tools (if needed)
|
|
188
|
+
5. Invoke multi-agent for composition (if tool_count > 5 or needs_sub_agents)
|
|
189
|
+
6. Invoke deployment for production architecture
|
|
190
|
+
7. Implement agent (caller's responsibility)
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
#### Execution Guarantees
|
|
194
|
+
|
|
195
|
+
- Each invocation produces a complete recommendation with code template.
|
|
196
|
+
- No dependencies between request types (can invoke any individually).
|
|
197
|
+
|
|
198
|
+
#### Failure Propagation Model
|
|
199
|
+
|
|
200
|
+
| Failure Severity | Propagation | Workflow Action |
|
|
201
|
+
|-----------------|-------------|-----------------|
|
|
202
|
+
| Invalid request type | Return error to caller | Use supported type |
|
|
203
|
+
| Missing task type | Return error to caller | Supply task type |
|
|
204
|
+
| Invalid complexity | Return error to caller | Use simple/balanced/complex |
|
|
205
|
+
| Tool count > 20 | Return warning | Split into sub-agents |
|
|
206
|
+
|
|
207
|
+
#### Retry Boundaries
|
|
208
|
+
|
|
209
|
+
- Zero internal retries. Deterministic output.
|
|
210
|
+
|
|
211
|
+
#### Isolation Model
|
|
212
|
+
|
|
213
|
+
- Each invocation is stateless and independent.
|
|
214
|
+
|
|
215
|
+
#### Idempotency Expectations
|
|
216
|
+
|
|
217
|
+
| Operation | Idempotent | Notes |
|
|
218
|
+
|-----------|-----------|-------|
|
|
219
|
+
| Agent type | Yes | Same task_type = same agent |
|
|
220
|
+
| Model select | Yes | Same complexity = same model |
|
|
221
|
+
| Tool create | Yes | Same input = same template |
|
|
222
|
+
| Multi-agent | Yes | Same context = same pattern |
|
|
223
|
+
| Deployment | Yes | Same target = same steps |
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## 7. Execution Model
|
|
228
|
+
|
|
229
|
+
### 2-Phase Lifecycle
|
|
230
|
+
|
|
231
|
+
| Phase | Action | Output |
|
|
232
|
+
|-------|--------|--------|
|
|
233
|
+
| **Parse** | Validate request type, task type, complexity | Validated input or error |
|
|
234
|
+
| **Emit** | Generate pattern recommendation with code template | Complete output schema |
|
|
235
|
+
|
|
236
|
+
All phases synchronous. No async pipeline.
|
|
237
|
+
|
|
238
|
+
---
|
|
239
|
+
|
|
240
|
+
## 8. Deterministic Design Principles
|
|
241
|
+
|
|
242
|
+
| Principle | Enforcement |
|
|
243
|
+
|-----------|-------------|
|
|
244
|
+
| Fixed agent type mapping | conversational → LlmAgent, pipeline → Sequential, fan-out → Parallel, iterative → Loop |
|
|
245
|
+
| Fixed model routing | simple → flash, balanced → pro-low, complex → pro-high |
|
|
246
|
+
| Fixed tool limit | ≤ 5 tools per agent; > 5 → multi-agent delegation |
|
|
247
|
+
| Fixed sub-agent limit | ≤ 5 sub-agents per coordinator |
|
|
248
|
+
| Mandatory tool contract | Typed params + docstring + return type |
|
|
249
|
+
| Code-first | Python definitions; no JSON/YAML agent config |
|
|
250
|
+
| ADK imports only | `from google.adk.agents import`; never raw REST API |
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
## 9. State & Idempotency Model
|
|
255
|
+
|
|
256
|
+
Stateless. Fully idempotent. No persistent state.
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
## 10. Failure Handling Strategy
|
|
261
|
+
|
|
262
|
+
| Failure Class | Behavior | Caller Recovery |
|
|
263
|
+
|---------------|----------|-----------------|
|
|
264
|
+
| Unknown request type | Return `ERR_INVALID_REQUEST_TYPE` | Use supported type |
|
|
265
|
+
| Missing task type | Return `ERR_MISSING_TASK_TYPE` | Supply task type |
|
|
266
|
+
| Invalid complexity | Return `ERR_INVALID_COMPLEXITY` | Use simple/balanced/complex |
|
|
267
|
+
| Tool count exceeds 20 | Return `WARN_TOOL_LIMIT` | Split into sub-agents |
|
|
268
|
+
| Reference file missing | Return `ERR_REFERENCE_NOT_FOUND` | Verify installation |
|
|
269
|
+
| Package not installed | Return `ERR_PACKAGE_MISSING` | `pip install google-adk` |
|
|
270
|
+
|
|
271
|
+
**Invariant:** Every failure returns a structured error. No partial code templates.
|
|
272
|
+
|
|
273
|
+
---
|
|
274
|
+
|
|
275
|
+
## 11. Error Taxonomy
|
|
276
|
+
|
|
277
|
+
| Code | Category | Recoverable | Description |
|
|
278
|
+
|------|----------|-------------|-------------|
|
|
279
|
+
| `ERR_INVALID_REQUEST_TYPE` | Validation | No | Request type not supported |
|
|
280
|
+
| `ERR_MISSING_TASK_TYPE` | Validation | Yes | Task type not provided |
|
|
281
|
+
| `ERR_INVALID_COMPLEXITY` | Validation | Yes | Complexity not simple/balanced/complex |
|
|
282
|
+
| `ERR_REFERENCE_NOT_FOUND` | Infrastructure | No | Reference file missing |
|
|
283
|
+
| `ERR_PACKAGE_MISSING` | Infrastructure | Yes | google-adk not installed |
|
|
284
|
+
| `WARN_TOOL_LIMIT` | Advisory | Yes | Tool count exceeds 20 |
|
|
285
|
+
|
|
286
|
+
---
|
|
287
|
+
|
|
288
|
+
## 12. Timeout & Retry Policy
|
|
289
|
+
|
|
290
|
+
| Parameter | Default | Maximum | Rationale |
|
|
291
|
+
|-----------|---------|---------|-----------|
|
|
292
|
+
| Decision timeout | N/A | N/A | Synchronous; < 50ms |
|
|
293
|
+
| Internal retries | Zero | Zero | Deterministic output |
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
## 13. Observability & Logging Schema
|
|
298
|
+
|
|
299
|
+
### OpenTelemetry Observability (MANDATORY)
|
|
300
|
+
|
|
301
|
+
- **Agent Delegation Telemetry**: Every time a Coordinator Agent delegates a sub-task to a Specialist Agent, the orchestration framework MUST wrap the call in an OpenTelemetry Span (`agent_delegation_duration`) to track multi-agent communication latency.
|
|
302
|
+
- **Tool Invocation Tracking**: Any time an Agent invokes a tool, the framework MUST emit an OTel Event (`TOOL_INVOKED`) containing the tool name and input context. This is required for tracking tool usage frequency and failure rates.
|
|
303
|
+
|
|
304
|
+
### Log Entry Format
|
|
305
|
+
|
|
306
|
+
```json
|
|
307
|
+
{
|
|
308
|
+
"trace_id": "uuid",
|
|
309
|
+
"skill_name": "google-adk-python",
|
|
310
|
+
"contract_version": "2.0.0",
|
|
311
|
+
"execution_id": "uuid",
|
|
312
|
+
"timestamp": "ISO-8601",
|
|
313
|
+
"request_type": "string",
|
|
314
|
+
"task_type": "string|null",
|
|
315
|
+
"complexity": "string|null",
|
|
316
|
+
"agent_type_selected": "string|null",
|
|
317
|
+
"model_selected": "string|null",
|
|
318
|
+
"tool_count": "number|null",
|
|
319
|
+
"status": "success|error",
|
|
320
|
+
"error_code": "string|null",
|
|
321
|
+
"duration_ms": "number"
|
|
322
|
+
}
|
|
323
|
+
```
|
|
324
|
+
|
|
325
|
+
### Required Log Points
|
|
326
|
+
|
|
327
|
+
| Event | Log Level | Fields |
|
|
328
|
+
|-------|-----------|--------|
|
|
329
|
+
| Agent type selected | INFO | agent_type_selected, task_type |
|
|
330
|
+
| Model selected | INFO | model_selected, complexity |
|
|
331
|
+
| Tool limit warning | WARN | tool_count |
|
|
332
|
+
| Decision failed | ERROR | error_code, message |
|
|
333
|
+
|
|
334
|
+
### Metrics
|
|
335
|
+
|
|
336
|
+
| Metric | Type | Unit |
|
|
337
|
+
|--------|------|------|
|
|
338
|
+
| `googleadk.decision.duration` | Histogram | ms |
|
|
339
|
+
| `googleadk.agent_type.distribution` | Counter | per type |
|
|
340
|
+
| `googleadk.model.distribution` | Counter | per model |
|
|
341
|
+
| `googleadk.tool_count.distribution` | Histogram | per invocation |
|
|
342
|
+
|
|
343
|
+
---
|
|
344
|
+
|
|
345
|
+
## 14. Security & Trust Model
|
|
346
|
+
|
|
347
|
+
### Data Handling
|
|
348
|
+
|
|
349
|
+
- Google ADK Python does not access API keys, credentials, or cloud projects.
|
|
350
|
+
- Code templates contain no secrets; API key configuration is caller's responsibility.
|
|
351
|
+
- Model names are public identifiers.
|
|
352
|
+
|
|
353
|
+
### Credential Safety
|
|
354
|
+
|
|
355
|
+
| Rule | Enforcement |
|
|
356
|
+
|------|-------------|
|
|
357
|
+
| No API keys in code templates | Templates use env vars: `GEMINI_API_KEY` |
|
|
358
|
+
| No cloud project IDs in templates | Templates use env vars: `GOOGLE_CLOUD_PROJECT` |
|
|
359
|
+
|
|
360
|
+
---
|
|
361
|
+
|
|
362
|
+
## 15. Scalability Model
|
|
363
|
+
|
|
364
|
+
| Dimension | Constraint | Mitigation |
|
|
365
|
+
|-----------|-----------|------------|
|
|
366
|
+
| Throughput | CPU-bound decision tree | < 50ms; scales linearly |
|
|
367
|
+
| Concurrency | Stateless invocations | Unlimited parallel |
|
|
368
|
+
| Reference storage | 3 files (~10 KB total) | Static; no growth |
|
|
369
|
+
| Memory per invocation | < 1 MB | No accumulation |
|
|
370
|
+
| Network | Zero network calls | No external dependency |
|
|
371
|
+
|
|
372
|
+
---
|
|
373
|
+
|
|
374
|
+
## 16. Concurrency Model
|
|
375
|
+
|
|
376
|
+
Fully parallel. No shared state. No coordination required.
|
|
377
|
+
|
|
378
|
+
---
|
|
379
|
+
|
|
380
|
+
## 17. Resource Lifecycle Management
|
|
381
|
+
|
|
382
|
+
All resources scoped to invocation. No persistent handles.
|
|
383
|
+
|
|
384
|
+
---
|
|
385
|
+
|
|
386
|
+
## 18. Performance Constraints
|
|
387
|
+
|
|
388
|
+
| Operation | P50 Target | P99 Target | Hard Limit |
|
|
389
|
+
|-----------|-----------|-----------|------------|
|
|
390
|
+
| Agent type selection | < 2 ms | < 5 ms | 20 ms |
|
|
391
|
+
| Full guide | < 10 ms | < 30 ms | 50 ms |
|
|
392
|
+
| Code template | ≤ 500 chars | ≤ 2,000 chars | 3,000 chars |
|
|
393
|
+
| Output size | ≤ 1,000 chars | ≤ 3,000 chars | 5,000 chars |
|
|
394
|
+
|
|
395
|
+
---
|
|
396
|
+
|
|
397
|
+
## 19. Operational Risks
|
|
398
|
+
|
|
399
|
+
| Risk | Likelihood | Impact | Mitigation |
|
|
400
|
+
|------|-----------|--------|------------|
|
|
401
|
+
| ADK API breaking changes | Medium | Templates incompatible | Version-pinned import patterns |
|
|
402
|
+
| Model name deprecation | Medium | Template fails | Fixed model tier mapping |
|
|
403
|
+
| Over-scoped agents | Medium | Poor performance | ≤ 5 tools/agent rule |
|
|
404
|
+
| Missing tool annotations | High | LLM cannot call tool | Mandatory typed params + docstring |
|
|
405
|
+
| Cloud auth misconfiguration | Medium | Agent fails to start | Templates use env vars only |
|
|
406
|
+
|
|
407
|
+
---
|
|
408
|
+
|
|
409
|
+
## 20. Compliance with skill-design-guide.md
|
|
410
|
+
|
|
411
|
+
| Requirement | Status | Evidence |
|
|
412
|
+
|-------------|--------|----------|
|
|
413
|
+
| YAML frontmatter complete | ✅ | name, description, metadata with category, version, triggers, coordinates_with, success_metrics |
|
|
414
|
+
| SKILL.md < 200 lines | ✅ | Entry point under 200 lines |
|
|
415
|
+
| Prerequisites documented | ✅ | google-adk, API key or Cloud credentials |
|
|
416
|
+
| When to Use section | ✅ | Situation-based routing table |
|
|
417
|
+
| Core content matches skill type | ✅ | Expert type: decision trees, code patterns |
|
|
418
|
+
| Troubleshooting section | ✅ | Anti-patterns table |
|
|
419
|
+
| Related section | ✅ | Cross-links to python-pro, api-architect |
|
|
420
|
+
| Content Map for multi-file | ✅ | Links to 3 reference files + engineering-spec.md |
|
|
421
|
+
| Contract versioning | ✅ | contract_version, backward_compatibility, breaking_changes |
|
|
422
|
+
| Compliance matrix structured | ✅ | This table with ✅/❌ + evidence |
|
|
423
|
+
|
|
424
|
+
---
|
|
425
|
+
|
|
426
|
+
## 21. Production Readiness Checklist
|
|
427
|
+
|
|
428
|
+
| Category | Check | Status |
|
|
429
|
+
|----------|-------|--------|
|
|
430
|
+
| **Functionality** | 4 agent types with deterministic selection | ✅ |
|
|
431
|
+
| **Functionality** | 3 model tiers with cost-based routing | ✅ |
|
|
432
|
+
| **Functionality** | Tool creation patterns (function + built-in) | ✅ |
|
|
433
|
+
| **Functionality** | Multi-agent composition (≤ 5 sub-agents) | ✅ |
|
|
434
|
+
| **Functionality** | Deployment guidance (local/cloud-run/vertex-ai) | ✅ |
|
|
435
|
+
| **Functionality** | Quick start code template | ✅ |
|
|
436
|
+
| **Contracts** | Input/output/error schemas in pseudo-schema format | ✅ |
|
|
437
|
+
| **Contracts** | Contract versioning with semver | ✅ |
|
|
438
|
+
| **Failure** | Error taxonomy with 6 categorized codes | ✅ |
|
|
439
|
+
| **Failure** | No partial code templates on error | ✅ |
|
|
440
|
+
| **Failure** | Zero internal retries | ✅ |
|
|
441
|
+
| **Determinism** | Fixed type mapping, fixed model routing, fixed tool limits | ✅ |
|
|
442
|
+
| **Security** | No credentials in templates | ✅ |
|
|
443
|
+
| **Observability** | Structured log schema with 5 mandatory fields | ✅ |
|
|
444
|
+
| **Observability** | 4 metrics defined | ✅ |
|
|
445
|
+
| **Performance** | P50/P99 targets for all operations | ✅ |
|
|
446
|
+
| **Scalability** | Stateless; unlimited parallel | ✅ |
|
|
447
|
+
| **Compliance** | All skill-design-guide.md sections mapped with evidence | ✅ |
|
|
448
|
+
|
|
449
|
+
---
|
|
450
|
+
|
|
451
|
+
⚡ PikaKit v3.9.134
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Multi-Agent Orchestration
|
|
3
|
+
impact: MEDIUM
|
|
4
|
+
tags: google-adk-python
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Multi-Agent Orchestration
|
|
8
|
+
|
|
9
|
+
> Coordinate specialized agents for complex tasks.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Coordinator Pattern
|
|
14
|
+
|
|
15
|
+
```python
|
|
16
|
+
from google.adk.agents import LlmAgent
|
|
17
|
+
from google.adk.tools import google_search
|
|
18
|
+
|
|
19
|
+
# Specialized agents
|
|
20
|
+
researcher = LlmAgent(
|
|
21
|
+
name="Researcher",
|
|
22
|
+
model="gemini-3-flash",
|
|
23
|
+
instruction="Research topics thoroughly. Provide detailed summaries with sources.",
|
|
24
|
+
tools=[google_search]
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
writer = LlmAgent(
|
|
28
|
+
name="Writer",
|
|
29
|
+
model="gemini-3-flash",
|
|
30
|
+
instruction="Write clear, engaging content."
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
editor = LlmAgent(
|
|
34
|
+
name="Editor",
|
|
35
|
+
model="gemini-3-flash",
|
|
36
|
+
instruction="Review and improve writing quality."
|
|
37
|
+
)
|
|
38
|
+
|
|
39
|
+
# Coordinator delegates to specialists
|
|
40
|
+
coordinator = LlmAgent(
|
|
41
|
+
name="Coordinator",
|
|
42
|
+
model="gemini-3-flash",
|
|
43
|
+
instruction="""You coordinate a content team:
|
|
44
|
+
1. Delegate research to Researcher
|
|
45
|
+
2. Send findings to Writer
|
|
46
|
+
3. Have Editor review final output""",
|
|
47
|
+
sub_agents=[researcher, writer, editor]
|
|
48
|
+
)
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Sequential Workflow
|
|
54
|
+
|
|
55
|
+
```python
|
|
56
|
+
from google.adk.agents import SequentialAgent
|
|
57
|
+
|
|
58
|
+
# Pipeline: each agent processes output from previous
|
|
59
|
+
pipeline = SequentialAgent(
|
|
60
|
+
name="content_pipeline",
|
|
61
|
+
agents=[researcher, writer, editor]
|
|
62
|
+
)
|
|
63
|
+
|
|
64
|
+
result = pipeline.run("Create article about AI agents")
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Use when:** Order matters, each stage depends on previous.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Parallel Execution
|
|
72
|
+
|
|
73
|
+
```python
|
|
74
|
+
from google.adk.agents import ParallelAgent
|
|
75
|
+
|
|
76
|
+
# All agents run simultaneously
|
|
77
|
+
parallel = ParallelAgent(
|
|
78
|
+
name="parallel_research",
|
|
79
|
+
agents=[web_researcher, paper_researcher, expert_researcher]
|
|
80
|
+
)
|
|
81
|
+
|
|
82
|
+
results = parallel.run("Gather data on quantum computing")
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**Use when:** Tasks are independent, reduce latency.
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Loop Agent
|
|
90
|
+
|
|
91
|
+
```python
|
|
92
|
+
from google.adk.agents import LoopAgent
|
|
93
|
+
|
|
94
|
+
# Repeat until condition met
|
|
95
|
+
refiner = LoopAgent(
|
|
96
|
+
name="quality_refiner",
|
|
97
|
+
agent=editor,
|
|
98
|
+
max_iterations=3,
|
|
99
|
+
stop_condition="Quality score > 0.9"
|
|
100
|
+
)
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**Use when:** Iterative improvement needed.
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Customer Support Router
|
|
108
|
+
|
|
109
|
+
```python
|
|
110
|
+
billing_agent = LlmAgent(
|
|
111
|
+
name="BillingAgent",
|
|
112
|
+
instruction="Handle billing, refunds, payments.",
|
|
113
|
+
tools=[check_invoice, process_refund]
|
|
114
|
+
)
|
|
115
|
+
|
|
116
|
+
technical_agent = LlmAgent(
|
|
117
|
+
name="TechnicalAgent",
|
|
118
|
+
instruction="Troubleshoot technical issues.",
|
|
119
|
+
tools=[check_status, create_ticket]
|
|
120
|
+
)
|
|
121
|
+
|
|
122
|
+
router = LlmAgent(
|
|
123
|
+
name="SupportRouter",
|
|
124
|
+
instruction="Route queries to appropriate specialist.",
|
|
125
|
+
sub_agents=[billing_agent, technical_agent]
|
|
126
|
+
)
|
|
127
|
+
|
|
128
|
+
# Router auto-delegates based on query
|
|
129
|
+
response = router.run("I was charged twice")
|
|
130
|
+
# → Routes to billing_agent
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## Best Practices
|
|
136
|
+
|
|
137
|
+
| Practice | Application |
|
|
138
|
+
|----------|-------------|
|
|
139
|
+
| Named agents | Use descriptive names in instructions |
|
|
140
|
+
| Clear delegation | Explicit routing in coordinator |
|
|
141
|
+
| Error handling | Handle agent failures gracefully |
|
|
142
|
+
| State management | Pass context between agents |
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
⚡ PikaKit v3.9.134
|