vibes-plug 2.14.1 → 3.9.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.
Files changed (151) hide show
  1. package/.claude/rules/vibes-plug-core.md +5 -0
  2. package/.cursor/rules/vibes-plug-core.mdc +7 -2
  3. package/.cursorrules +8 -2
  4. package/AGENTS.md +23 -2
  5. package/CHANGELOG.md +114 -0
  6. package/CLAUDE.md +10 -3
  7. package/README.md +216 -611
  8. package/bin/vibes.mjs +1104 -0
  9. package/package.json +11 -3
  10. package/plugin.json +4 -3
  11. package/scripts/check-anti-slop.mjs +53 -0
  12. package/scripts/install.js +3 -1
  13. package/scripts/update_skills.js +1 -1
  14. package/scripts/update_skills.mjs +86 -0
  15. package/scripts/validate-skills.mjs +111 -0
  16. package/skills/accessibility-testing-expert/SKILL.md +117 -116
  17. package/skills/affective-computing-emotion-ai/SKILL.md +83 -0
  18. package/skills/agentic-coding-workflow-expert/SKILL.md +297 -0
  19. package/skills/agentic-memory-architect/SKILL.md +52 -0
  20. package/skills/agentic-micro-economy-architect/SKILL.md +92 -0
  21. package/skills/ai-llm-integration-expert/SKILL.md +330 -194
  22. package/skills/ai-media-generation-expert/SKILL.md +173 -172
  23. package/skills/ai-prompt-engineering-expert/SKILL.md +204 -134
  24. package/skills/ai-safety-governance-expert/SKILL.md +223 -0
  25. package/skills/angular-expert/SKILL.md +149 -148
  26. package/skills/anti-slop/SKILL.md +134 -133
  27. package/skills/api-design-expert/SKILL.md +4 -3
  28. package/skills/api-gateway-proxy-expert/SKILL.md +3 -2
  29. package/skills/app-analyzer-optimizer/SKILL.md +4 -3
  30. package/skills/apple-ecosystem-expert/SKILL.md +6 -5
  31. package/skills/astro-framework-expert/SKILL.md +201 -200
  32. package/skills/async-queue-temporal-expert/SKILL.md +218 -217
  33. package/skills/authentication-identity-expert/SKILL.md +174 -173
  34. package/skills/autonomous-red-teamer/SKILL.md +338 -203
  35. package/skills/autonomous-tdd-debugger/SKILL.md +6 -5
  36. package/skills/biome-linter-formatter-expert/SKILL.md +90 -89
  37. package/skills/blockchain-web3-expert/SKILL.md +116 -115
  38. package/skills/brainstorming/SKILL.md +392 -377
  39. package/skills/browser-automation-expert/SKILL.md +260 -222
  40. package/skills/bun-runtime-expert/SKILL.md +5 -4
  41. package/skills/chatbot-messaging-expert/SKILL.md +115 -114
  42. package/skills/ci-cd-devops-architect/SKILL.md +3 -2
  43. package/skills/cloud-hosting-expert/SKILL.md +5 -4
  44. package/skills/coderabbit/SKILL.md +5 -4
  45. package/skills/compliance-gdpr-privacy-expert/SKILL.md +3 -2
  46. package/skills/composable-mach-architect/SKILL.md +338 -0
  47. package/skills/cron-scheduler-expert/SKILL.md +5 -4
  48. package/skills/data-pipeline-etl-expert/SKILL.md +3 -2
  49. package/skills/data-telemetry-expert/SKILL.md +5 -4
  50. package/skills/data-visualization-expert/SKILL.md +155 -154
  51. package/skills/database-orm-expert/SKILL.md +166 -165
  52. package/skills/deep-research-analyst/SKILL.md +182 -136
  53. package/skills/dependency-upgrade-migrator/SKILL.md +11 -10
  54. package/skills/design-system-architect/SKILL.md +4 -3
  55. package/skills/desktop-electron-expert/SKILL.md +129 -128
  56. package/skills/documentation-site-expert/SKILL.md +60 -59
  57. package/skills/doku-mcp-server/SKILL.md +5 -4
  58. package/skills/doku-payment-gateway/SKILL.md +250 -232
  59. package/skills/domain-driven-design-expert/SKILL.md +3 -2
  60. package/skills/e2e-testing-expert/SKILL.md +5 -4
  61. package/skills/ecommerce-expert/SKILL.md +88 -87
  62. package/skills/email-notification-expert/SKILL.md +5 -4
  63. package/skills/ephemeral-generative-ui-architect/SKILL.md +88 -0
  64. package/skills/error-resilience-expert/SKILL.md +14 -13
  65. package/skills/event-driven-architect/SKILL.md +5 -4
  66. package/skills/feature-flag-analytics-expert/SKILL.md +3 -2
  67. package/skills/file-upload-media-expert/SKILL.md +5 -4
  68. package/skills/firebase-security-expert/SKILL.md +5 -4
  69. package/skills/form-validation-expert/SKILL.md +7 -6
  70. package/skills/frontier-ai-models-expert/SKILL.md +116 -0
  71. package/skills/fullstack-expert/SKILL.md +185 -184
  72. package/skills/gemini-agent-booster/SKILL.md +248 -172
  73. package/skills/geospatial-maps-expert/SKILL.md +81 -80
  74. package/skills/global-a11y-i18n-expert/SKILL.md +5 -4
  75. package/skills/glsl-shader-expert/SKILL.md +191 -190
  76. package/skills/go-programming-expert/SKILL.md +5 -4
  77. package/skills/graph-rag-knowledge-expert/SKILL.md +201 -200
  78. package/skills/graphql-apollo-expert/SKILL.md +5 -4
  79. package/skills/headless-cms-expert/SKILL.md +182 -181
  80. package/skills/hig/SKILL.md +5 -4
  81. package/skills/js-backend-expert/SKILL.md +219 -218
  82. package/skills/legacy-code-translator/SKILL.md +6 -5
  83. package/skills/llm-finops-router/SKILL.md +52 -0
  84. package/skills/local-slm-edge-ai-expert/SKILL.md +168 -167
  85. package/skills/logging-error-tracking-expert/SKILL.md +5 -4
  86. package/skills/mcp-server-architect/SKILL.md +315 -307
  87. package/skills/micro-frontend-architect/SKILL.md +5 -4
  88. package/skills/mobile-expo-expert/SKILL.md +5 -4
  89. package/skills/modern-css-native-expert/SKILL.md +190 -189
  90. package/skills/monorepo-architect/SKILL.md +5 -4
  91. package/skills/mpa-orchestrator/SKILL.md +41 -4
  92. package/skills/multi-agent-orchestration/SKILL.md +388 -254
  93. package/skills/mvc-expert/SKILL.md +5 -4
  94. package/skills/n8n-automation-expert/SKILL.md +90 -89
  95. package/skills/nextjs-app-router-expert/SKILL.md +3 -2
  96. package/skills/openapi-swagger-codegen-expert/SKILL.md +4 -3
  97. package/skills/payment-gateway-expert/SKILL.md +131 -128
  98. package/skills/pdf-document-generation-expert/SKILL.md +92 -91
  99. package/skills/performance-web-vitals/SKILL.md +5 -4
  100. package/skills/post-quantum-crypto-migrator/SKILL.md +3 -2
  101. package/skills/prd-architect/SKILL.md +183 -182
  102. package/skills/proactive-background-watcher/SKILL.md +5 -4
  103. package/skills/production-ready-hardener/SKILL.md +10 -9
  104. package/skills/pwa-offline-first-expert/SKILL.md +227 -226
  105. package/skills/pydantic-ai-expert/SKILL.md +162 -161
  106. package/skills/python-programming-expert/SKILL.md +5 -4
  107. package/skills/rate-limit-abuse-prevention/SKILL.md +5 -4
  108. package/skills/realtime-collaboration-expert/SKILL.md +3 -2
  109. package/skills/rich-text-editor-expert/SKILL.md +178 -177
  110. package/skills/rust-programming-expert/SKILL.md +5 -4
  111. package/skills/saas-architect/SKILL.md +155 -154
  112. package/skills/saas-billing/SKILL.md +394 -382
  113. package/skills/saas-multi-tenant/SKILL.md +7 -6
  114. package/skills/scalability-clean-code/SKILL.md +5 -4
  115. package/skills/search-engine-expert/SKILL.md +90 -89
  116. package/skills/self-healing-cloud-orchestrator/SKILL.md +3 -2
  117. package/skills/senior-frontend/SKILL.md +14 -9
  118. package/skills/seo/SKILL.md +4 -4
  119. package/skills/session-memory-manager/SKILL.md +129 -128
  120. package/skills/solidjs-expert/SKILL.md +81 -80
  121. package/skills/spa-orchestrator/SKILL.md +5 -4
  122. package/skills/sse-websocket-streaming-expert/SKILL.md +3 -2
  123. package/skills/state-management-expert/SKILL.md +5 -4
  124. package/skills/supabase-security-expert/SKILL.md +5 -4
  125. package/skills/svelte-sveltekit-expert/SKILL.md +92 -91
  126. package/skills/svg-animation-motion-expert/SKILL.md +3 -2
  127. package/skills/synthetic-data-finetuning-expert/SKILL.md +156 -155
  128. package/skills/tailwind-expert/SKILL.md +62 -5
  129. package/skills/tanstack-query-expert/SKILL.md +5 -4
  130. package/skills/tauri-expert/SKILL.md +5 -4
  131. package/skills/typescript-expert/SKILL.md +5 -4
  132. package/skills/ui-ux-pro-max/SKILL.md +7 -6
  133. package/skills/vector-db-rag-expert/SKILL.md +209 -208
  134. package/skills/vercel-ai-sdk-expert/SKILL.md +226 -181
  135. package/skills/voice-ai-realtime-agent/SKILL.md +243 -242
  136. package/skills/vue-frontend-expert/SKILL.md +5 -4
  137. package/skills/wasm-edge-computing-expert/SKILL.md +3 -2
  138. package/skills/web-3d-graphics-expert/SKILL.md +314 -313
  139. package/skills/web-game-engine-expert/SKILL.md +330 -329
  140. package/skills/web-scraper/SKILL.md +158 -157
  141. package/skills/website-design-cloner/SKILL.md +5 -4
  142. package/skills/webxr-ar-vr-expert/SKILL.md +163 -162
  143. package/skills/wordpress-headless-expert/SKILL.md +145 -144
  144. package/skills/zero-tech-debt-auditor/SKILL.md +115 -0
  145. package/skills/zero-to-prod-orchestrator/SKILL.md +281 -229
  146. package/skills/zero-trust-secret-vault/SKILL.md +3 -2
  147. package/BLUEPRINT.md +0 -319
  148. package/skills/bootstrap-to-modern/SKILL.md +0 -94
  149. package/skills/multiple-entry-points/SKILL.md +0 -91
  150. package/skills/secure-fuzz-testing/SKILL.md +0 -207
  151. package/skills/visual-qa-vision-agent/SKILL.md +0 -71
@@ -1,161 +1,162 @@
1
- ---
2
- name: pydantic-ai-expert
3
- description: "Expert guide for type-safe Python AI agent development with Pydantic AI — dependency injection, structured outputs, model-agnostic routing, and graph workflows / Panduan ahli pengembangan agen AI Python type-safe dengan Pydantic AI."
4
- author: vibes-plug-swarm
5
- ---
6
-
7
- # Pydantic AI Expert (Type-Safe Python Agent Engineering)
8
-
9
- [English](#english) | [Bahasa Indonesia](#bahasa-indonesia)
10
-
11
- ---
12
-
13
- <a name="english"></a>
14
- ## English
15
-
16
- ### Orchestration & Integration
17
- Connects and orchestrates with domain skills like `python-programming-expert`, `multi-agent-orchestration`, `ai-llm-integration-expert`, `ai-evals-benchmark-expert`, and `database-orm-expert` to engineer type-safe, resilient backend AI agents.
18
-
19
- ### Description
20
- Production-grade guide for building enterprise AI agents using **Pydantic AI** (from the creators of Pydantic). Unlike untyped or fragile agent libraries, Pydantic AI provides strict static typing (`Agent[DepsType, ReturnType]`), first-class dependency injection (`RunContext[Deps]`), automatic tool parameter validation via Pydantic v2 schemas, model-agnostic provider switching (Anthropic, OpenAI, Gemini, Groq, Ollama), dynamic system prompts, and deterministic structured outputs.
21
-
22
- **Swarm Synergy:** Within the **Backend & APIs Swarm**, this skill serves as the Lead Python Agent Engineer. It executes critical business operations, runs data pipelines, and integrates with SQL databases with compile-time type safety in Phase 4.
23
-
24
- ### Trigger Conditions
25
- - Engineering Python-based autonomous agents requiring strict type safety and schema validation.
26
- - Implementing dependency injection (passing database connections, API clients, or user sessions) into agent tools.
27
- - Extracting guaranteed structured outputs from frontier reasoning models without JSON parsing errors.
28
- - Designing multi-agent delegation or agent handoffs in Python microservices.
29
- - Running unit tests and deterministic evals on agent logic using mock models (`TestModel`).
30
-
31
- ### Pydantic AI Architecture
32
-
33
- ```
34
- ┌─────────────────────────────────────────────────────────────┐
35
- │ AGENT DEFINITION │
36
- │ Agent[DatabaseDeps, AuditReport]( │
37
- │ model='anthropic:claude-3-7-sonnet-latest', │
38
- │ result_type=AuditReport, │
39
- │ ) │
40
- └──────────────────────────────┬──────────────────────────────┘
41
- │
42
- ┌───────────────────────┴───────────────────────┐
43
- ▼ ▼
44
- ┌──────────────────────────────┐ ┌──────────────────────────────┐
45
- │ DEPENDENCY INJECTION │ │ TOOL EXECUTION LOOP │
46
- │ RunContext[DatabaseDeps] │ │ @agent.tool │
47
- │ • Async DB connection pool │ │ • Auto Pydantic validation │
48
- │ • Tenant & session auth │ │ • Structured error return │
49
- └──────────────────────────────┘ └──────────────────────────────┘
50
- │
51
- ▼
52
- ┌─────────────────────────────────────────────────────────────┐
53
- │ DETERMINISTIC STRUCTURED RESULT │
54
- │ result.data -> Pydantic BaseModel instance (Validated) │
55
- └─────────────────────────────────────────────────────────────┘
56
- ```
57
-
58
- ### Core Implementation Guidelines
59
-
60
- #### 1. Type-Safe Agent with Dependency Injection
61
- Pass database pools or HTTP clients directly into tools without global state:
62
- ```python
63
- from dataclasses import dataclass
64
- import asyncpg
65
- from pydantic import BaseModel, Field
66
- from pydantic_ai import Agent, RunContext
67
-
68
- @dataclass
69
- class DatabaseDeps:
70
- pool: asyncpg.Pool
71
- tenant_id: str
72
-
73
- class UserAnomalyReport(BaseModel):
74
- user_id: str
75
- risk_score: float = Field(ge=0.0, le=1.0)
76
- anomalous_events: list[str]
77
- action_recommended: str
78
-
79
- # Typed agent: Agent[DependencyType, ResultType]
80
- security_agent = Agent[DatabaseDeps, UserAnomalyReport](
81
- model='google-gla:gemini-2.5-flash',
82
- result_type=UserAnomalyReport,
83
- system_prompt=(
84
- "You are an automated SecOps auditor. Analyze the user access logs provided "
85
- "and generate a strictly structured anomaly assessment."
86
- ),
87
- )
88
-
89
- @security_agent.system_prompt
90
- async def add_tenant_context(ctx: RunContext[DatabaseDeps]) -> str:
91
- return f"Active Tenant ID: {ctx.deps.tenant_id}. Only audit records matching this tenant."
92
-
93
- @security_agent.tool
94
- async def query_audit_logs(ctx: RunContext[DatabaseDeps], user_id: str, limit: int = 50) -> list[dict]:
95
- """Retrieve raw authentication events for a given user from the audit store."""
96
- async with ctx.deps.pool.acquire() as conn:
97
- rows = await conn.fetch(
98
- "SELECT event_time, ip_address, action, status FROM audit_logs "
99
- "WHERE tenant_id = $1 AND user_id = $2 ORDER BY event_time DESC LIMIT $3",
100
- ctx.deps.tenant_id, user_id, limit
101
- )
102
- return [dict(r) for r in rows]
103
-
104
- # Execution:
105
- async def run_audit(pool: asyncpg.Pool, tenant_id: str, target_user: str) -> UserAnomalyReport:
106
- deps = DatabaseDeps(pool=pool, tenant_id=tenant_id)
107
- result = await security_agent.run(f"Audit user activity for {target_user}", deps=deps)
108
- return result.data # Guaranteed instance of UserAnomalyReport
109
- ```
110
-
111
- #### 2. Model-Agnostic Switching & Local SLM Fallback
112
- Pydantic AI allows switching between cloud APIs and local Ollama models effortlessly:
113
- ```python
114
- import os
115
- from pydantic_ai.models.anthropic import AnthropicModel
116
- from pydantic_ai.models.ollama import OllamaModel
117
-
118
- def get_agent_model():
119
- if os.getenv("ENV") == "production":
120
- return AnthropicModel('claude-3-7-sonnet-20250219')
121
- else:
122
- # Zero cost local development with Ollama
123
- return OllamaModel(model_name='qwen2.5-coder:7b')
124
- ```
125
-
126
- #### 3. Deterministic Testing with `TestModel`
127
- Write unit tests that verify tool invocations and structured output parsing without calling live LLMs:
128
- ```python
129
- import pytest
130
- from pydantic_ai.models.test import TestModel
131
-
132
- @pytest.mark.asyncio
133
- async def test_security_agent_tool_dispatch():
134
- # TestModel can simulate deterministic responses or tool calls
135
- test_model = TestModel(call_tools=['query_audit_logs'])
136
-
137
- with security_agent.override(model=test_model):
138
- deps = DatabaseDeps(pool=mock_pool, tenant_id="tenant_123")
139
- result = await security_agent.run("Audit user 456", deps=deps)
140
- assert result.data is not None
141
- ```
142
-
143
- ---
144
-
145
- <a name="bahasa-indonesia"></a>
146
- ## Bahasa Indonesia
147
-
148
- ### Integrasi Orkestrasi
149
- Terhubung dan mengorkestrasi skill domain yang relevan seperti `python-programming-expert`, `multi-agent-orchestration`, `ai-llm-integration-expert`, `ai-evals-benchmark-expert`, dan `database-orm-expert` untuk membangun agen AI backend yang aman secara tipe (*type-safe*) dan tangguh.
150
-
151
- ### Deskripsi
152
- Panduan produksi untuk membangun agen AI kelas perusahaan menggunakan **Pydantic AI** (dari pembuat library Pydantic). Tidak seperti library agen yang tidak bertipe statis atau mudah mengalami galat runtime, Pydantic AI menyediakan sistem tipe statis yang ketat (`Agent[DepsType, ReturnType]`), *dependency injection* bawaan kelas satu (`RunContext[Deps]`), validasi parameter tool otomatis melalui skema Pydantic v2, fleksibilitas pergantian model (*model-agnostic*), dan hasil output terstruktur yang terjamin validitasnya.
153
-
154
- **Sinergi Swarm:** Di dalam **Backend & APIs Swarm**, skill ini bertindak sebagai Insinyur Agen AI Python Utama. Bertanggung jawab atas eksekusi logika bisnis kritis, orkestrasi pipeline data, dan query database SQL dengan keamanan tipe kompilasi pada Fase 4.
155
-
156
- ### Kondisi Pemicu
157
- - Membangun agen otonom Python yang menuntut keamanan tipe statis dan validasi skema data ketat.
158
- - Menerapkan injeksi dependensi (koneksi database, klien HTTP, session user) ke dalam tool agen tanpa variabel global.
159
- - Mengekstrak data terstruktur yang dijamin valid dari model penalaran tanpa kegagalan parsing JSON.
160
- - Merancang delegasi tugas antar agen (*agent handoffs*) pada arsitektur microservices berbasis Python.
161
- - Menjalankan unit test deterministik dan evaluasi agen dengan `TestModel` tanpa konsumsi token API nyata.
1
+ ---
2
+ name: pydantic-ai-expert
3
+ description: "Expert guide for type-safe Python AI agent development with Pydantic AI — dependency injection, structured outputs, model-agnostic routing, and graph workflows / Panduan ahli pengembangan agen AI Python type-safe dengan Pydantic AI."
4
+ author: vibes-plug-swarm
5
+ version: "3.0.0"
6
+ ---
7
+
8
+ # Pydantic AI Expert (Type-Safe Python Agent Engineering)
9
+
10
+ [English](#english) | [Bahasa Indonesia](#bahasa-indonesia)
11
+
12
+ ---
13
+
14
+ <a name="english"></a>
15
+ ## English
16
+
17
+ ### Orchestration & Integration
18
+ Connects and orchestrates with domain skills like `python-programming-expert`, `multi-agent-orchestration`, `ai-llm-integration-expert`, `ai-evals-benchmark-expert`, and `database-orm-expert` to engineer type-safe, resilient backend AI agents.
19
+
20
+ ### Description
21
+ Production-grade guide for building enterprise AI agents using **Pydantic AI** (from the creators of Pydantic). Unlike untyped or fragile agent libraries, Pydantic AI provides strict static typing (`Agent[DepsType, ReturnType]`), first-class dependency injection (`RunContext[Deps]`), automatic tool parameter validation via Pydantic v2 schemas, model-agnostic provider switching (Anthropic, OpenAI, Gemini, Groq, Ollama), dynamic system prompts, and deterministic structured outputs.
22
+
23
+ **Swarm Synergy:** Within the **Backend & APIs Swarm**, this skill serves as the Lead Python Agent Engineer. It executes critical business operations, runs data pipelines, and integrates with SQL databases with compile-time type safety in Phase 4.
24
+
25
+ ### Trigger Conditions
26
+ - Engineering Python-based autonomous agents requiring strict type safety and schema validation.
27
+ - Implementing dependency injection (passing database connections, API clients, or user sessions) into agent tools.
28
+ - Extracting guaranteed structured outputs from frontier reasoning models without JSON parsing errors.
29
+ - Designing multi-agent delegation or agent handoffs in Python microservices.
30
+ - Running unit tests and deterministic evals on agent logic using mock models (`TestModel`).
31
+
32
+ ### Pydantic AI Architecture
33
+
34
+ ```
35
+ ┌─────────────────────────────────────────────────────────────┐
36
+ │ AGENT DEFINITION │
37
+ │ Agent[DatabaseDeps, AuditReport]( │
38
+ │ model='anthropic:claude-3-7-sonnet-latest', │
39
+ │ result_type=AuditReport, │
40
+ │ ) │
41
+ └──────────────────────────────┬──────────────────────────────┘
42
+ │
43
+ ┌───────────────────────┴───────────────────────┐
44
+ ▼ ▼
45
+ ┌──────────────────────────────┐ ┌──────────────────────────────┐
46
+ │ DEPENDENCY INJECTION │ │ TOOL EXECUTION LOOP │
47
+ │ RunContext[DatabaseDeps] │ │ @agent.tool │
48
+ │ • Async DB connection pool │ │ • Auto Pydantic validation │
49
+ │ • Tenant & session auth │ │ • Structured error return │
50
+ └──────────────────────────────┘ └──────────────────────────────┘
51
+ │
52
+ ▼
53
+ ┌─────────────────────────────────────────────────────────────┐
54
+ │ DETERMINISTIC STRUCTURED RESULT │
55
+ │ result.data -> Pydantic BaseModel instance (Validated) │
56
+ └─────────────────────────────────────────────────────────────┘
57
+ ```
58
+
59
+ ### Core Implementation Guidelines
60
+
61
+ #### 1. Type-Safe Agent with Dependency Injection
62
+ Pass database pools or HTTP clients directly into tools without global state:
63
+ ```python
64
+ from dataclasses import dataclass
65
+ import asyncpg
66
+ from pydantic import BaseModel, Field
67
+ from pydantic_ai import Agent, RunContext
68
+
69
+ @dataclass
70
+ class DatabaseDeps:
71
+ pool: asyncpg.Pool
72
+ tenant_id: str
73
+
74
+ class UserAnomalyReport(BaseModel):
75
+ user_id: str
76
+ risk_score: float = Field(ge=0.0, le=1.0)
77
+ anomalous_events: list[str]
78
+ action_recommended: str
79
+
80
+ # Typed agent: Agent[DependencyType, ResultType]
81
+ security_agent = Agent[DatabaseDeps, UserAnomalyReport](
82
+ model='google-gla:gemini-2.5-flash',
83
+ result_type=UserAnomalyReport,
84
+ system_prompt=(
85
+ "You are an automated SecOps auditor. Analyze the user access logs provided "
86
+ "and generate a strictly structured anomaly assessment."
87
+ ),
88
+ )
89
+
90
+ @security_agent.system_prompt
91
+ async def add_tenant_context(ctx: RunContext[DatabaseDeps]) -> str:
92
+ return f"Active Tenant ID: {ctx.deps.tenant_id}. Only audit records matching this tenant."
93
+
94
+ @security_agent.tool
95
+ async def query_audit_logs(ctx: RunContext[DatabaseDeps], user_id: str, limit: int = 50) -> list[dict]:
96
+ """Retrieve raw authentication events for a given user from the audit store."""
97
+ async with ctx.deps.pool.acquire() as conn:
98
+ rows = await conn.fetch(
99
+ "SELECT event_time, ip_address, action, status FROM audit_logs "
100
+ "WHERE tenant_id = $1 AND user_id = $2 ORDER BY event_time DESC LIMIT $3",
101
+ ctx.deps.tenant_id, user_id, limit
102
+ )
103
+ return [dict(r) for r in rows]
104
+
105
+ # Execution:
106
+ async def run_audit(pool: asyncpg.Pool, tenant_id: str, target_user: str) -> UserAnomalyReport:
107
+ deps = DatabaseDeps(pool=pool, tenant_id=tenant_id)
108
+ result = await security_agent.run(f"Audit user activity for {target_user}", deps=deps)
109
+ return result.data # Guaranteed instance of UserAnomalyReport
110
+ ```
111
+
112
+ #### 2. Model-Agnostic Switching & Local SLM Fallback
113
+ Pydantic AI allows switching between cloud APIs and local Ollama models effortlessly:
114
+ ```python
115
+ import os
116
+ from pydantic_ai.models.anthropic import AnthropicModel
117
+ from pydantic_ai.models.ollama import OllamaModel
118
+
119
+ def get_agent_model():
120
+ if os.getenv("ENV") == "production":
121
+ return AnthropicModel('claude-3-7-sonnet-20250219')
122
+ else:
123
+ # Zero cost local development with Ollama
124
+ return OllamaModel(model_name='qwen2.5-coder:7b')
125
+ ```
126
+
127
+ #### 3. Deterministic Testing with `TestModel`
128
+ Write unit tests that verify tool invocations and structured output parsing without calling live LLMs:
129
+ ```python
130
+ import pytest
131
+ from pydantic_ai.models.test import TestModel
132
+
133
+ @pytest.mark.asyncio
134
+ async def test_security_agent_tool_dispatch():
135
+ # TestModel can simulate deterministic responses or tool calls
136
+ test_model = TestModel(call_tools=['query_audit_logs'])
137
+
138
+ with security_agent.override(model=test_model):
139
+ deps = DatabaseDeps(pool=mock_pool, tenant_id="tenant_123")
140
+ result = await security_agent.run("Audit user 456", deps=deps)
141
+ assert result.data is not None
142
+ ```
143
+
144
+ ---
145
+
146
+ <a name="bahasa-indonesia"></a>
147
+ ## Bahasa Indonesia
148
+
149
+ ### Integrasi Orkestrasi
150
+ Terhubung dan mengorkestrasi skill domain yang relevan seperti `python-programming-expert`, `multi-agent-orchestration`, `ai-llm-integration-expert`, `ai-evals-benchmark-expert`, dan `database-orm-expert` untuk membangun agen AI backend yang aman secara tipe (*type-safe*) dan tangguh.
151
+
152
+ ### Deskripsi
153
+ Panduan produksi untuk membangun agen AI kelas perusahaan menggunakan **Pydantic AI** (dari pembuat library Pydantic). Tidak seperti library agen yang tidak bertipe statis atau mudah mengalami galat runtime, Pydantic AI menyediakan sistem tipe statis yang ketat (`Agent[DepsType, ReturnType]`), *dependency injection* bawaan kelas satu (`RunContext[Deps]`), validasi parameter tool otomatis melalui skema Pydantic v2, fleksibilitas pergantian model (*model-agnostic*), dan hasil output terstruktur yang terjamin validitasnya.
154
+
155
+ **Sinergi Swarm:** Di dalam **Backend & APIs Swarm**, skill ini bertindak sebagai Insinyur Agen AI Python Utama. Bertanggung jawab atas eksekusi logika bisnis kritis, orkestrasi pipeline data, dan query database SQL dengan keamanan tipe kompilasi pada Fase 4.
156
+
157
+ ### Kondisi Pemicu
158
+ - Membangun agen otonom Python yang menuntut keamanan tipe statis dan validasi skema data ketat.
159
+ - Menerapkan injeksi dependensi (koneksi database, klien HTTP, session user) ke dalam tool agen tanpa variabel global.
160
+ - Mengekstrak data terstruktur yang dijamin valid dari model penalaran tanpa kegagalan parsing JSON.
161
+ - Merancang delegasi tugas antar agen (*agent handoffs*) pada arsitektur microservices berbasis Python.
162
+ - Menjalankan unit test deterministik dan evaluasi agen dengan `TestModel` tanpa konsumsi token API nyata.
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  name: python-programming-expert
3
3
  description: "Expert-level skill for Python programming (Python 3.13/3.14+). Covers type safety, generic syntax (PEP 695), async/await TaskGroups, FastAPI 0.115+, Pydantic v2, uv package manager, Ruff, and pytest in English and Indonesian."
4
- author: "Roedy Rustam"
4
+ author: "Roedy Rustam"
5
+ version: "3.0.0"
5
6
  ---
6
7
 
7
8
  # Python Programming Expert (3.14 Edition)
@@ -14,7 +15,7 @@ author: "Roedy Rustam"
14
15
  ## English
15
16
 
16
17
  ### Orchestration & Integration
17
- Connects and orchestrates with relevant domain skills like `brainstorming`, `zero-to-prod-orchestrator`, and `project-context-mapper` to ensure cohesive execution.
18
+ Connects and orchestrates with relevant domain skills like `brainstorming`, `zero-to-prod-orchestrator`, and `session-memory-manager` to ensure cohesive execution.
18
19
 
19
20
  ### Description
20
21
  Expert-level Python development guidance for **Python 3.13 / 3.14+** covering JIT compilation, free-threaded (no-GIL) mode, modern type safety patterns, async architecture, and the full production stack: **FastAPI 0.115+**, **Pydantic v2**, **SQLAlchemy 2.x / SQLModel**, **uv**, **Ruff**, and **pytest-asyncio**.
@@ -365,7 +366,7 @@ async def test_create_user(client: AsyncClient):
365
366
  ## Bahasa Indonesia
366
367
 
367
368
  ### Integrasi Orkestrasi
368
- Terhubung dan mengorkestrasi skill domain yang relevan seperti `brainstorming`, `zero-to-prod-orchestrator`, dan `project-context-mapper` untuk memastikan eksekusi yang kohesif.
369
+ Terhubung dan mengorkestrasi skill domain yang relevan seperti `brainstorming`, `zero-to-prod-orchestrator`, dan `session-memory-manager` untuk memastikan eksekusi yang kohesif.
369
370
 
370
371
  ### Deskripsi
371
372
  Panduan pengembangan Python tingkat ahli untuk **Python 3.13/3.14+** mencakup JIT compilation, mode free-threaded (tanpa GIL), pola keamanan tipe modern, arsitektur async, dan stack produksi lengkap: **FastAPI 0.115+**, **Pydantic v2**, **SQLAlchemy 2.x**, **uv**, **Ruff**, dan **pytest-asyncio**.
@@ -405,4 +406,4 @@ Python 3.13 JIT: Aktifkan dengan `PYTHON_JIT=1` untuk kode CPU-bound. Free-threa
405
406
 
406
407
  ### Pengujian
407
408
 
408
- Gunakan `pytest-asyncio` dengan `asyncio_mode = "auto"` di `pyproject.toml`. Gunakan `AsyncClient` dari `httpx` dengan `ASGITransport` untuk pengujian endpoint async yang bersih dan terisolasi tanpa perlu menjalankan server.
409
+ Gunakan `pytest-asyncio` dengan `asyncio_mode = "auto"` di `pyproject.toml`. Gunakan `AsyncClient` dari `httpx` dengan `ASGITransport` untuk pengujian endpoint async yang bersih dan terisolasi tanpa perlu menjalankan server.
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  name: rate-limit-abuse-prevention
3
3
  description: "Expert guide for API rate limiting, bot protection, DDoS mitigation, brute-force prevention, and abuse detection / Panduan ahli untuk rate limiting API, perlindungan bot, mitigasi DDoS, pencegahan brute-force, dan deteksi penyalahgunaan."
4
- author: "Roedy Rustam"
4
+ author: "Roedy Rustam"
5
+ version: "3.0.0"
5
6
  ---
6
7
 
7
8
  # Rate Limit & Abuse Prevention (2026 Edition)
@@ -14,7 +15,7 @@ author: "Roedy Rustam"
14
15
  ## English
15
16
 
16
17
  ### Orchestration & Integration
17
- Connects and orchestrates with relevant domain skills like `brainstorming`, `zero-to-prod-orchestrator`, and `project-context-mapper` to ensure cohesive execution.
18
+ Connects and orchestrates with relevant domain skills like `brainstorming`, `zero-to-prod-orchestrator`, and `session-memory-manager` to ensure cohesive execution.
18
19
 
19
20
  ### Description
20
21
  Production-grade guide for protecting APIs and web applications from abuse, overuse, and attacks. Covers **rate limiting algorithms** (Token Bucket, Sliding Window), **Upstash Ratelimit**, **bot protection** (Cloudflare Turnstile, hCaptcha), **DDoS mitigation** at edge, **brute-force login prevention**, **API key management & usage quotas**, and **response headers** (X-RateLimit, Retry-After).
@@ -354,7 +355,7 @@ export async function validateApiKey(rawKey: string) {
354
355
  ## Bahasa Indonesia
355
356
 
356
357
  ### Integrasi Orkestrasi
357
- Terhubung dan mengorkestrasi skill domain yang relevan seperti `brainstorming`, `zero-to-prod-orchestrator`, dan `project-context-mapper` untuk memastikan eksekusi yang kohesif.
358
+ Terhubung dan mengorkestrasi skill domain yang relevan seperti `brainstorming`, `zero-to-prod-orchestrator`, dan `session-memory-manager` untuk memastikan eksekusi yang kohesif.
358
359
 
359
360
  ### Deskripsi
360
361
  Panduan tingkat produksi untuk melindungi API dan aplikasi web dari penyalahgunaan, penggunaan berlebihan, dan serangan. Mencakup **algoritma rate limiting** (Token Bucket, Sliding Window), **Upstash Ratelimit**, **perlindungan bot** (Cloudflare Turnstile, hCaptcha), **mitigasi DDoS** di edge, **pencegahan brute-force login**, **manajemen API key & kuota penggunaan**, dan **header respons** (X-RateLimit, Retry-After).
@@ -374,4 +375,4 @@ Aktifkan skill ini ketika:
374
375
  - `js-backend-expert` — Integrasi middleware Express/Fastify/Hono
375
376
  - `saas-billing` — Rate limit bertingkat per paket langganan
376
377
  - `production-ready-hardener` — Audit keamanan pra-peluncuran
377
- - `cloud-hosting-expert` — Perlindungan WAF dan DDoS di edge
378
+ - `cloud-hosting-expert` — Perlindungan WAF dan DDoS di edge
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  name: realtime-collaboration-expert
3
3
  description: "Expert guide for building real-time collaboration features using WebSockets, WebRTC, CRDTs (Yjs, Automerge), and Liveblocks / Panduan ahli untuk fitur kolaborasi real-time."
4
- author: "Roedy Rustam"
4
+ author: "Roedy Rustam"
5
+ version: "3.0.0"
5
6
  ---
6
7
 
7
8
  # Real-Time Collaboration Expert / Ahli Kolaborasi Real-Time
@@ -96,4 +97,4 @@ yarray.observe(event => {
96
97
  - Terintegrasi dengan: `state-management-expert`, `event-driven-architect`, `mcp-server-architect`.
97
98
 
98
99
  ### Kondisi Pemicu
99
- Aktif setiap kali pengguna sedang membangun fitur *multiplayer*, kursor langsung (live cursors), pengeditan dokumen bersama, obrolan real-time, atau bekerja dengan WebSockets, Yjs, atau WebRTC.
100
+ Aktif setiap kali pengguna sedang membangun fitur *multiplayer*, kursor langsung (live cursors), pengeditan dokumen bersama, obrolan real-time, atau bekerja dengan WebSockets, Yjs, atau WebRTC.