@poolzin/pool-bot 2026.3.13 → 2026.3.15

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 (186) hide show
  1. package/CHANGELOG.md +87 -0
  2. package/dist/agents/checkpoint-manager.js +291 -0
  3. package/dist/agents/poolbot-tools.js +5 -0
  4. package/dist/agents/subagent-announce-reliability.js +160 -0
  5. package/dist/agents/tool-result-truncation.js +299 -0
  6. package/dist/agents/tools/nodes-file-tool.js +197 -0
  7. package/dist/build-info.json +3 -3
  8. package/dist/cli/config-cli.js +60 -0
  9. package/dist/cron/cron-improvements.js +195 -0
  10. package/dist/discord/discord-improvements.js +167 -0
  11. package/dist/gateway/auth-rate-limit.js +19 -0
  12. package/dist/gateway/auth.js +41 -0
  13. package/dist/gateway/gateway-improvements.js +294 -0
  14. package/dist/gateway/node-command-policy.js +7 -2
  15. package/dist/infra/net/ssrf.js +15 -2
  16. package/dist/infra/shell-security.js +201 -0
  17. package/dist/memory/memory-improvements.js +239 -0
  18. package/dist/node-host/runner.js +146 -79
  19. package/dist/security/prototype-pollution.js +141 -0
  20. package/dist/security/webhook-security.js +253 -0
  21. package/dist/shared/net/ip.js +52 -1
  22. package/dist/slack/slack-improvements.js +225 -0
  23. package/dist/telegram/telegram-improvements.js +220 -0
  24. package/dist/ui-plugins/ui-plugins-improvements.js +191 -0
  25. package/docs/ANALISE_OPENCLAW_PROFISSIONAL.md +520 -0
  26. package/docs/competitive-analysis.md +421 -0
  27. package/docs/implementation-analysis.md +393 -0
  28. package/docs/plans/2026-03-11-file-operations-security-hardening.md +307 -0
  29. package/docs/plans/2026-03-11-integracao-projetos-poolbot.md +666 -0
  30. package/extensions/agency-agents/README.md +301 -0
  31. package/extensions/agency-agents/agents/CONTRIBUTING.md +353 -0
  32. package/extensions/agency-agents/agents/README.md +602 -0
  33. package/extensions/agency-agents/agents/design/design-brand-guardian.md +320 -0
  34. package/extensions/agency-agents/agents/design/design-image-prompt-engineer.md +234 -0
  35. package/extensions/agency-agents/agents/design/design-ui-designer.md +381 -0
  36. package/extensions/agency-agents/agents/design/design-ux-architect.md +467 -0
  37. package/extensions/agency-agents/agents/design/design-ux-researcher.md +327 -0
  38. package/extensions/agency-agents/agents/design/design-visual-storyteller.md +147 -0
  39. package/extensions/agency-agents/agents/design/design-whimsy-injector.md +436 -0
  40. package/extensions/agency-agents/agents/engineering/engineering-ai-engineer.md +144 -0
  41. package/extensions/agency-agents/agents/engineering/engineering-backend-architect.md +233 -0
  42. package/extensions/agency-agents/agents/engineering/engineering-devops-automator.md +374 -0
  43. package/extensions/agency-agents/agents/engineering/engineering-frontend-developer.md +223 -0
  44. package/extensions/agency-agents/agents/engineering/engineering-mobile-app-builder.md +491 -0
  45. package/extensions/agency-agents/agents/engineering/engineering-rapid-prototyper.md +460 -0
  46. package/extensions/agency-agents/agents/engineering/engineering-security-engineer.md +275 -0
  47. package/extensions/agency-agents/agents/engineering/engineering-senior-developer.md +174 -0
  48. package/extensions/agency-agents/agents/examples/README.md +48 -0
  49. package/extensions/agency-agents/agents/examples/nexus-spatial-discovery.md +852 -0
  50. package/extensions/agency-agents/agents/examples/workflow-landing-page.md +119 -0
  51. package/extensions/agency-agents/agents/examples/workflow-startup-mvp.md +155 -0
  52. package/extensions/agency-agents/agents/integrations/README.md +117 -0
  53. package/extensions/agency-agents/agents/integrations/aider/README.md +38 -0
  54. package/extensions/agency-agents/agents/integrations/antigravity/README.md +49 -0
  55. package/extensions/agency-agents/agents/integrations/claude-code/README.md +31 -0
  56. package/extensions/agency-agents/agents/integrations/cursor/README.md +38 -0
  57. package/extensions/agency-agents/agents/integrations/gemini-cli/README.md +36 -0
  58. package/extensions/agency-agents/agents/integrations/opencode/README.md +58 -0
  59. package/extensions/agency-agents/agents/integrations/windsurf/README.md +26 -0
  60. package/extensions/agency-agents/agents/marketing/marketing-app-store-optimizer.md +319 -0
  61. package/extensions/agency-agents/agents/marketing/marketing-content-creator.md +52 -0
  62. package/extensions/agency-agents/agents/marketing/marketing-growth-hacker.md +52 -0
  63. package/extensions/agency-agents/agents/marketing/marketing-instagram-curator.md +111 -0
  64. package/extensions/agency-agents/agents/marketing/marketing-reddit-community-builder.md +121 -0
  65. package/extensions/agency-agents/agents/marketing/marketing-social-media-strategist.md +123 -0
  66. package/extensions/agency-agents/agents/marketing/marketing-tiktok-strategist.md +123 -0
  67. package/extensions/agency-agents/agents/marketing/marketing-twitter-engager.md +124 -0
  68. package/extensions/agency-agents/agents/marketing/marketing-wechat-official-account.md +143 -0
  69. package/extensions/agency-agents/agents/marketing/marketing-xiaohongshu-specialist.md +136 -0
  70. package/extensions/agency-agents/agents/marketing/marketing-zhihu-strategist.md +160 -0
  71. package/extensions/agency-agents/agents/product/product-feedback-synthesizer.md +117 -0
  72. package/extensions/agency-agents/agents/product/product-sprint-prioritizer.md +152 -0
  73. package/extensions/agency-agents/agents/product/product-trend-researcher.md +157 -0
  74. package/extensions/agency-agents/agents/project-management/project-management-experiment-tracker.md +196 -0
  75. package/extensions/agency-agents/agents/project-management/project-management-project-shepherd.md +192 -0
  76. package/extensions/agency-agents/agents/project-management/project-management-studio-operations.md +198 -0
  77. package/extensions/agency-agents/agents/project-management/project-management-studio-producer.md +201 -0
  78. package/extensions/agency-agents/agents/project-management/project-manager-senior.md +133 -0
  79. package/extensions/agency-agents/agents/scripts/convert.sh +362 -0
  80. package/extensions/agency-agents/agents/scripts/install.sh +465 -0
  81. package/extensions/agency-agents/agents/scripts/lint-agents.sh +115 -0
  82. package/extensions/agency-agents/agents/spatial-computing/macos-spatial-metal-engineer.md +335 -0
  83. package/extensions/agency-agents/agents/spatial-computing/terminal-integration-specialist.md +68 -0
  84. package/extensions/agency-agents/agents/spatial-computing/visionos-spatial-engineer.md +52 -0
  85. package/extensions/agency-agents/agents/spatial-computing/xr-cockpit-interaction-specialist.md +30 -0
  86. package/extensions/agency-agents/agents/spatial-computing/xr-immersive-developer.md +30 -0
  87. package/extensions/agency-agents/agents/spatial-computing/xr-interface-architect.md +30 -0
  88. package/extensions/agency-agents/agents/specialized/agentic-identity-trust.md +367 -0
  89. package/extensions/agency-agents/agents/specialized/agents-orchestrator.md +365 -0
  90. package/extensions/agency-agents/agents/specialized/data-analytics-reporter.md +52 -0
  91. package/extensions/agency-agents/agents/specialized/data-consolidation-agent.md +58 -0
  92. package/extensions/agency-agents/agents/specialized/lsp-index-engineer.md +312 -0
  93. package/extensions/agency-agents/agents/specialized/report-distribution-agent.md +63 -0
  94. package/extensions/agency-agents/agents/specialized/sales-data-extraction-agent.md +65 -0
  95. package/extensions/agency-agents/agents/strategy/EXECUTIVE-BRIEF.md +95 -0
  96. package/extensions/agency-agents/agents/strategy/QUICKSTART.md +194 -0
  97. package/extensions/agency-agents/agents/strategy/coordination/agent-activation-prompts.md +401 -0
  98. package/extensions/agency-agents/agents/strategy/coordination/handoff-templates.md +357 -0
  99. package/extensions/agency-agents/agents/strategy/nexus-strategy.md +1110 -0
  100. package/extensions/agency-agents/agents/strategy/playbooks/phase-0-discovery.md +178 -0
  101. package/extensions/agency-agents/agents/strategy/playbooks/phase-1-strategy.md +238 -0
  102. package/extensions/agency-agents/agents/strategy/playbooks/phase-2-foundation.md +278 -0
  103. package/extensions/agency-agents/agents/strategy/playbooks/phase-3-build.md +286 -0
  104. package/extensions/agency-agents/agents/strategy/playbooks/phase-4-hardening.md +332 -0
  105. package/extensions/agency-agents/agents/strategy/playbooks/phase-5-launch.md +277 -0
  106. package/extensions/agency-agents/agents/strategy/playbooks/phase-6-operate.md +318 -0
  107. package/extensions/agency-agents/agents/strategy/runbooks/scenario-enterprise-feature.md +157 -0
  108. package/extensions/agency-agents/agents/strategy/runbooks/scenario-incident-response.md +217 -0
  109. package/extensions/agency-agents/agents/strategy/runbooks/scenario-marketing-campaign.md +187 -0
  110. package/extensions/agency-agents/agents/strategy/runbooks/scenario-startup-mvp.md +154 -0
  111. package/extensions/agency-agents/agents/support/support-analytics-reporter.md +363 -0
  112. package/extensions/agency-agents/agents/support/support-executive-summary-generator.md +210 -0
  113. package/extensions/agency-agents/agents/support/support-finance-tracker.md +440 -0
  114. package/extensions/agency-agents/agents/support/support-infrastructure-maintainer.md +616 -0
  115. package/extensions/agency-agents/agents/support/support-legal-compliance-checker.md +586 -0
  116. package/extensions/agency-agents/agents/support/support-support-responder.md +583 -0
  117. package/extensions/agency-agents/agents/testing/testing-accessibility-auditor.md +313 -0
  118. package/extensions/agency-agents/agents/testing/testing-api-tester.md +304 -0
  119. package/extensions/agency-agents/agents/testing/testing-evidence-collector.md +208 -0
  120. package/extensions/agency-agents/agents/testing/testing-performance-benchmarker.md +266 -0
  121. package/extensions/agency-agents/agents/testing/testing-reality-checker.md +236 -0
  122. package/extensions/agency-agents/agents/testing/testing-test-results-analyzer.md +303 -0
  123. package/extensions/agency-agents/agents/testing/testing-tool-evaluator.md +392 -0
  124. package/extensions/agency-agents/agents/testing/testing-workflow-optimizer.md +448 -0
  125. package/extensions/agency-agents/index.ts +733 -0
  126. package/extensions/agency-agents/node_modules/.bin/jiti +21 -0
  127. package/extensions/agency-agents/node_modules/.bin/tsc +21 -0
  128. package/extensions/agency-agents/node_modules/.bin/tsserver +21 -0
  129. package/extensions/agency-agents/node_modules/.bin/tsx +21 -0
  130. package/extensions/agency-agents/node_modules/.bin/vite +21 -0
  131. package/extensions/agency-agents/node_modules/.bin/vitest +21 -0
  132. package/extensions/agency-agents/node_modules/.bin/yaml +21 -0
  133. package/extensions/agency-agents/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -0
  134. package/extensions/agency-agents/package.json +25 -0
  135. package/extensions/agency-agents/poolbot.plugin.json +11 -0
  136. package/extensions/agency-agents/src/AgencyAgentsService.test.ts +443 -0
  137. package/extensions/agency-agents/src/AgencyAgentsService.ts +288 -0
  138. package/extensions/agency-agents/src/types.ts +147 -0
  139. package/extensions/agency-agents/vitest.config.ts +8 -0
  140. package/extensions/hexstrike-ai/README.md +98 -0
  141. package/extensions/hexstrike-ai/node_modules/.bin/tsc +21 -0
  142. package/extensions/hexstrike-ai/node_modules/.bin/tsserver +21 -0
  143. package/extensions/hexstrike-ai/package.json +29 -0
  144. package/extensions/hexstrike-ai/poolbot.plugin.json +31 -0
  145. package/extensions/hexstrike-ai/src/client.ts +91 -0
  146. package/extensions/hexstrike-ai/src/index.ts +170 -0
  147. package/extensions/hexstrike-ai/src/server/hexstrike_mcp.py +5470 -0
  148. package/extensions/hexstrike-ai/src/server/hexstrike_server.py +17289 -0
  149. package/extensions/hexstrike-ai/src/server/requirements.txt +84 -0
  150. package/extensions/hexstrike-ai/src/server-manager.ts +83 -0
  151. package/extensions/hexstrike-ai/tsconfig.json +20 -0
  152. package/extensions/page-agent/README.md +159 -0
  153. package/extensions/page-agent/index.ts +595 -0
  154. package/extensions/page-agent/node_modules/.bin/jiti +21 -0
  155. package/extensions/page-agent/node_modules/.bin/playwright +21 -0
  156. package/extensions/page-agent/node_modules/.bin/tsc +21 -0
  157. package/extensions/page-agent/node_modules/.bin/tsserver +21 -0
  158. package/extensions/page-agent/node_modules/.bin/tsx +21 -0
  159. package/extensions/page-agent/node_modules/.bin/vitest +21 -0
  160. package/extensions/page-agent/node_modules/.bin/yaml +21 -0
  161. package/extensions/page-agent/package.json +43 -0
  162. package/extensions/page-agent/poolbot.plugin.json +24 -0
  163. package/extensions/page-agent/src/PageAgentService.test.ts +517 -0
  164. package/extensions/page-agent/src/PageAgentService.ts +636 -0
  165. package/extensions/page-agent/src/PoolBotPageController.test.ts +358 -0
  166. package/extensions/page-agent/src/PoolBotPageController.ts +245 -0
  167. package/extensions/page-agent/src/index.ts +20 -0
  168. package/extensions/page-agent/src/tools.test.ts +231 -0
  169. package/extensions/page-agent/src/tools.ts +167 -0
  170. package/extensions/page-agent/src/types.ts +198 -0
  171. package/extensions/xyops/README.md +227 -0
  172. package/extensions/xyops/index.ts +342 -0
  173. package/extensions/xyops/node_modules/.bin/jiti +21 -0
  174. package/extensions/xyops/node_modules/.bin/tsc +21 -0
  175. package/extensions/xyops/node_modules/.bin/tsserver +21 -0
  176. package/extensions/xyops/node_modules/.bin/tsx +21 -0
  177. package/extensions/xyops/node_modules/.bin/vitest +21 -0
  178. package/extensions/xyops/node_modules/.bin/yaml +21 -0
  179. package/extensions/xyops/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -0
  180. package/extensions/xyops/package.json +39 -0
  181. package/extensions/xyops/poolbot.plugin.json +21 -0
  182. package/extensions/xyops/src/client.test.ts +467 -0
  183. package/extensions/xyops/src/client.ts +157 -0
  184. package/extensions/xyops/src/types.ts +147 -0
  185. package/extensions/xyops/vitest.config.ts +8 -0
  186. package/package.json +1 -1
@@ -0,0 +1,666 @@
1
+ # Integração Completa: HexStrike AI + Projetos no PoolBot
2
+
3
+ > **For Claude:** REQUIRED SUB-SKILL: Use superpowers:executing-plans to implement this plan task-by-task.
4
+
5
+ **Goal:** Integrar HexStrike AI, Page Agent, XYOps e Agency Agents como extensões nativas do PoolBot, eliminando dependências externas.
6
+
7
+ **Architecture:**
8
+ - HexStrike AI → Extensão `extensions/hexstrike-ai` com servidor embutido
9
+ - Page Agent → Extensão `extensions/page-agent` para automação web
10
+ - XYOps → Extensão `extensions/xyops` para operações de infraestrutura
11
+ - Agency Agents → Extensão `extensions/agency` para gestão de agentes
12
+
13
+ **Tech Stack:** TypeScript, Python (para HexStrike), Node.js 22+, PoolBot Extension SDK
14
+
15
+ ---
16
+
17
+ ## Análise dos Projetos
18
+
19
+ ### HexStrike AI (`/Users/pool/Downloads/hexstrike-ai-master`)
20
+ - **Tamanho:** ~950KB (Python)
21
+ - **Componentes:**
22
+ - `hexstrike_server.py` - Servidor principal (735KB)
23
+ - `hexstrike_mcp.py` - Interface MCP (218KB)
24
+ - `requirements.txt` - Dependências Python
25
+ - **Porta:** 8888 (localhost)
26
+ - **Integração Atual:** Bridge existe em `extensions/hexstrike-bridge/`
27
+
28
+ ### Page Agent (`/Users/pool/Downloads/page-agent-main`)
29
+ - **Tamanho:** ~1MB
30
+ - **Componentes:**
31
+ - Sistema de agentes para automação web
32
+ - Integração com Playwright
33
+ - Estrutura modular
34
+
35
+ ### XYOps (`/Users/pool/Downloads/xyops-main`)
36
+ - **Tamanho:** A verificar
37
+ - **Foco:** Operações de infraestrutura e DevOps
38
+
39
+ ### Agency Agents (`/Users/pool/Downloads/agency-agents-main`)
40
+ - **Tamanho:** ~112KB
41
+ - **Componentes:**
42
+ - 15+ categorias de agentes especializados
43
+ - Marketing, Engineering, Design, etc.
44
+ - Estrutura de templates e prompts
45
+
46
+ ---
47
+
48
+ ## Fase 1: HexStrike AI - Integração Completa
49
+
50
+ ### Task 1: Criar estrutura da extensão
51
+
52
+ **Files:**
53
+ - Create: `extensions/hexstrike-ai/package.json`
54
+ - Create: `extensions/hexstrike-ai/poolbot.plugin.json`
55
+ - Create: `extensions/hexstrike-ai/README.md`
56
+
57
+ **Step 1: Criar package.json**
58
+
59
+ ```json
60
+ {
61
+ "name": "@poolbot/hexstrike-ai",
62
+ "version": "2026.3.13",
63
+ "description": "HexStrike AI Security Platform - Integrated Server",
64
+ "type": "module",
65
+ "main": "dist/index.js",
66
+ "scripts": {
67
+ "build": "tsc",
68
+ "dev": "tsc --watch",
69
+ "start:server": "python3 src/server/hexstrike_server.py",
70
+ "install:deps": "pip3 install -r src/server/requirements.txt"
71
+ },
72
+ "dependencies": {
73
+ "poolbot": "workspace:*"
74
+ },
75
+ "devDependencies": {
76
+ "@types/node": "^22.0.0",
77
+ "typescript": "^5.0.0"
78
+ },
79
+ "poolbot": {
80
+ "plugin": true,
81
+ "server": true,
82
+ "python": true
83
+ }
84
+ }
85
+ ```
86
+
87
+ **Step 2: Criar poolbot.plugin.json**
88
+
89
+ ```json
90
+ {
91
+ "id": "hexstrike-ai",
92
+ "name": "HexStrike AI",
93
+ "version": "2026.3.13",
94
+ "description": "Security scanning platform with 150+ scanners integrated",
95
+ "author": "PoolBot Team",
96
+ "main": "dist/index.js",
97
+ "capabilities": ["security", "scanning", "pentest"],
98
+ "commands": [
99
+ "security.status",
100
+ "security.tools",
101
+ "security.scan",
102
+ "security.report"
103
+ ],
104
+ "hooks": ["onInit", "onShutdown"],
105
+ "config": {
106
+ "port": 8888,
107
+ "host": "127.0.0.1",
108
+ "autoStart": true,
109
+ "scanners": ["nmap", "nuclei", "sqlmap", "gobuster", "wpscan"]
110
+ }
111
+ }
112
+ ```
113
+
114
+ **Step 3: Commit**
115
+
116
+ ```bash
117
+ git add extensions/hexstrike-ai/
118
+ git commit -m "feat(hexstrike-ai): create extension structure"
119
+ ```
120
+
121
+ ---
122
+
123
+ ### Task 2: Copiar e adaptar código Python do HexStrike
124
+
125
+ **Files:**
126
+ - Create: `extensions/hexstrike-ai/src/server/hexstrike_server.py`
127
+ - Create: `extensions/hexstrike-ai/src/server/hexstrike_mcp.py`
128
+ - Create: `extensions/hexstrike-ai/src/server/requirements.txt`
129
+
130
+ **Step 1: Copiar arquivos Python**
131
+
132
+ ```bash
133
+ cp /Users/pool/Downloads/hexstrike-ai-master/hexstrike_server.py extensions/hexstrike-ai/src/server/
134
+ cp /Users/pool/Downloads/hexstrike-ai-master/hexstrike_mcp.py extensions/hexstrike-ai/src/server/
135
+ cp /Users/pool/Downloads/hexstrike-ai-master/requirements.txt extensions/hexstrike-ai/src/server/
136
+ ```
137
+
138
+ **Step 2: Modificar servidor para integração PoolBot**
139
+
140
+ Editar `extensions/hexstrike-ai/src/server/hexstrike_server.py`:
141
+ - Adicionar endpoint `/poolbot/health` para health checks
142
+ - Adicionar autenticação via token PoolBot
143
+ - Configurar CORS para comunicação com gateway
144
+ - Adicionar logging estruturado
145
+
146
+ **Step 3: Commit**
147
+
148
+ ```bash
149
+ git add extensions/hexstrike-ai/src/server/
150
+ git commit -m "feat(hexstrike-ai): import Python server code"
151
+ ```
152
+
153
+ ---
154
+
155
+ ### Task 3: Criar TypeScript wrapper e integração
156
+
157
+ **Files:**
158
+ - Create: `extensions/hexstrike-ai/src/index.ts`
159
+ - Create: `extensions/hexstrike-ai/src/server-manager.ts`
160
+ - Create: `extensions/hexstrike-ai/src/client.ts`
161
+ - Create: `extensions/hexstrike-ai/tsconfig.json`
162
+
163
+ **Step 1: Criar tsconfig.json**
164
+
165
+ ```json
166
+ {
167
+ "compilerOptions": {
168
+ "target": "ES2022",
169
+ "module": "NodeNext",
170
+ "moduleResolution": "NodeNext",
171
+ "lib": ["ES2022"],
172
+ "outDir": "./dist",
173
+ "rootDir": "./src",
174
+ "strict": true,
175
+ "esModuleInterop": true,
176
+ "skipLibCheck": true,
177
+ "forceConsistentCasingInFileNames": true,
178
+ "resolveJsonModule": true,
179
+ "declaration": true,
180
+ "declarationMap": true
181
+ },
182
+ "include": ["src/**/*"],
183
+ "exclude": ["node_modules", "dist"]
184
+ }
185
+ ```
186
+
187
+ **Step 2: Criar server-manager.ts**
188
+
189
+ ```typescript
190
+ import { spawn, ChildProcess } from "node:child_process";
191
+ import path from "node:path";
192
+ import { fileURLToPath } from "node:url";
193
+
194
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
195
+
196
+ export interface ServerConfig {
197
+ port: number;
198
+ host: string;
199
+ pythonPath?: string;
200
+ }
201
+
202
+ export class HexStrikeServerManager {
203
+ private process: ChildProcess | null = null;
204
+ private config: ServerConfig;
205
+
206
+ constructor(config: Partial<ServerConfig> = {}) {
207
+ this.config = {
208
+ port: config.port ?? 8888,
209
+ host: config.host ?? "127.0.0.1",
210
+ pythonPath: config.pythonPath ?? "python3",
211
+ };
212
+ }
213
+
214
+ async start(): Promise<void> {
215
+ const serverPath = path.join(__dirname, "server", "hexstrike_server.py");
216
+
217
+ this.process = spawn(this.config.pythonPath, [serverPath], {
218
+ env: {
219
+ ...process.env,
220
+ HEXSTRIKE_PORT: String(this.config.port),
221
+ HEXSTRIKE_HOST: this.config.host,
222
+ },
223
+ stdio: ["ignore", "pipe", "pipe"],
224
+ });
225
+
226
+ return new Promise((resolve, reject) => {
227
+ const timeout = setTimeout(() => {
228
+ reject(new Error("HexStrike server failed to start within 30s"));
229
+ }, 30000);
230
+
231
+ this.process?.stdout?.on("data", (data: Buffer) => {
232
+ const output = data.toString();
233
+ if (output.includes("Server started") || output.includes("Listening")) {
234
+ clearTimeout(timeout);
235
+ resolve();
236
+ }
237
+ });
238
+
239
+ this.process?.stderr?.on("data", (data: Buffer) => {
240
+ console.error(`[HexStrike] ${data.toString()}`);
241
+ });
242
+
243
+ this.process?.on("error", (err) => {
244
+ clearTimeout(timeout);
245
+ reject(err);
246
+ });
247
+
248
+ this.process?.on("exit", (code) => {
249
+ if (code !== 0 && code !== null) {
250
+ clearTimeout(timeout);
251
+ reject(new Error(`HexStrike server exited with code ${code}`));
252
+ }
253
+ });
254
+ });
255
+ }
256
+
257
+ async stop(): Promise<void> {
258
+ if (this.process) {
259
+ this.process.kill("SIGTERM");
260
+ await new Promise((resolve) => setTimeout(resolve, 5000));
261
+ if (!this.process.killed) {
262
+ this.process.kill("SIGKILL");
263
+ }
264
+ this.process = null;
265
+ }
266
+ }
267
+
268
+ get isRunning(): boolean {
269
+ return this.process !== null && !this.process.killed;
270
+ }
271
+ }
272
+ ```
273
+
274
+ **Step 3: Criar client.ts**
275
+
276
+ ```typescript
277
+ export interface ScanTarget {
278
+ target: string;
279
+ scanners?: string[];
280
+ options?: Record<string, unknown>;
281
+ }
282
+
283
+ export interface ScanResult {
284
+ id: string;
285
+ status: "pending" | "running" | "completed" | "failed";
286
+ findings: Array<{
287
+ severity: "info" | "low" | "medium" | "high" | "critical";
288
+ title: string;
289
+ description: string;
290
+ remediation?: string;
291
+ }>;
292
+ metadata: {
293
+ startedAt: string;
294
+ completedAt?: string;
295
+ duration?: number;
296
+ };
297
+ }
298
+
299
+ export class HexStrikeClient {
300
+ private baseUrl: string;
301
+ private token?: string;
302
+
303
+ constructor(config: { host?: string; port?: number; token?: string } = {}) {
304
+ const host = config.host ?? "127.0.0.1";
305
+ const port = config.port ?? 8888;
306
+ this.baseUrl = `http://${host}:${port}`;
307
+ this.token = config.token;
308
+ }
309
+
310
+ async health(): Promise<{ status: string; version?: string }> {
311
+ const response = await fetch(`${this.baseUrl}/health`);
312
+ if (!response.ok) throw new Error(`Health check failed: ${response.status}`);
313
+ return response.json();
314
+ }
315
+
316
+ async getTools(): Promise<string[]> {
317
+ const response = await fetch(`${this.baseUrl}/api/tools`, {
318
+ headers: this.getHeaders(),
319
+ });
320
+ if (!response.ok) throw new Error(`Failed to get tools: ${response.status}`);
321
+ const data = await response.json();
322
+ return data.tools ?? [];
323
+ }
324
+
325
+ async scan(target: ScanTarget): Promise<{ scanId: string }> {
326
+ const response = await fetch(`${this.baseUrl}/api/scan`, {
327
+ method: "POST",
328
+ headers: this.getHeaders(),
329
+ body: JSON.stringify(target),
330
+ });
331
+ if (!response.ok) throw new Error(`Scan failed: ${response.status}`);
332
+ const data = await response.json();
333
+ return { scanId: data.id };
334
+ }
335
+
336
+ async getScanResult(scanId: string): Promise<ScanResult> {
337
+ const response = await fetch(`${this.baseUrl}/api/scan/${scanId}`, {
338
+ headers: this.getHeaders(),
339
+ });
340
+ if (!response.ok) throw new Error(`Failed to get scan: ${response.status}`);
341
+ return response.json();
342
+ }
343
+
344
+ private getHeaders(): Record<string, string> {
345
+ const headers: Record<string, string> = {
346
+ "Content-Type": "application/json",
347
+ };
348
+ if (this.token) {
349
+ headers["Authorization"] = `Bearer ${this.token}`;
350
+ }
351
+ return headers;
352
+ }
353
+ }
354
+ ```
355
+
356
+ **Step 4: Criar index.ts (entry point)**
357
+
358
+ ```typescript
359
+ import type { PoolBotPlugin } from "poolbot/plugin-sdk";
360
+ import { HexStrikeServerManager } from "./server-manager.js";
361
+ import { HexStrikeClient } from "./client.js";
362
+
363
+ interface HexStrikeConfig {
364
+ port?: number;
365
+ host?: string;
366
+ autoStart?: boolean;
367
+ token?: string;
368
+ }
369
+
370
+ export default async function createPlugin(
371
+ ctx: PoolBotPlugin.Context
372
+ ): Promise<PoolBotPlugin.Instance> {
373
+ const config = ctx.config as HexStrikeConfig;
374
+ const serverManager = new HexStrikeServerManager({
375
+ port: config.port,
376
+ host: config.host,
377
+ });
378
+
379
+ const client = new HexStrikeClient({
380
+ host: config.host,
381
+ port: config.port,
382
+ token: config.token,
383
+ });
384
+
385
+ // Auto-start server if configured
386
+ if (config.autoStart !== false) {
387
+ ctx.logger.info("Starting HexStrike AI server...");
388
+ await serverManager.start();
389
+ ctx.logger.info("HexStrike AI server started");
390
+ }
391
+
392
+ // Register CLI commands
393
+ ctx.cli
394
+ .command("security.status")
395
+ .description("Check HexStrike AI server status")
396
+ .action(async () => {
397
+ try {
398
+ const health = await client.health();
399
+ console.log("HexStrike AI Status:", health.status);
400
+ console.log("Version:", health.version ?? "unknown");
401
+ } catch (err) {
402
+ console.error("HexStrike AI is not running");
403
+ process.exit(1);
404
+ }
405
+ });
406
+
407
+ ctx.cli
408
+ .command("security.tools")
409
+ .description("List available security scanners")
410
+ .action(async () => {
411
+ const tools = await client.getTools();
412
+ console.log("Available scanners:");
413
+ for (const tool of tools) {
414
+ console.log(` - ${tool}`);
415
+ }
416
+ });
417
+
418
+ ctx.cli
419
+ .command("security.scan")
420
+ .description("Run security scan on target")
421
+ .argument("<target>", "Target to scan")
422
+ .option("-s, --scanners <scanners>", "Comma-separated list of scanners")
423
+ .action(async (target: string, options: { scanners?: string }) => {
424
+ const scan = await client.scan({
425
+ target,
426
+ scanners: options.scanners?.split(","),
427
+ });
428
+ console.log("Scan started:", scan.scanId);
429
+ });
430
+
431
+ return {
432
+ name: "hexstrike-ai",
433
+ version: "2026.3.13",
434
+ async onShutdown() {
435
+ ctx.logger.info("Stopping HexStrike AI server...");
436
+ await serverManager.stop();
437
+ },
438
+ };
439
+ }
440
+
441
+ export { HexStrikeServerManager, HexStrikeClient };
442
+ ```
443
+
444
+ **Step 5: Commit**
445
+
446
+ ```bash
447
+ git add extensions/hexstrike-ai/src/
448
+ git commit -m "feat(hexstrike-ai): add TypeScript wrapper and integration"
449
+ ```
450
+
451
+ ---
452
+
453
+ ### Task 4: Integrar com Gateway PoolBot
454
+
455
+ **Files:**
456
+ - Modify: `src/gateway/rpc.ts` (adicionar métodos HexStrike)
457
+ - Modify: `extensions/hexstrike-bridge/src/index.ts` (atualizar para usar servidor local)
458
+
459
+ **Step 1: Adicionar RPC methods ao gateway**
460
+
461
+ Adicionar em `src/gateway/rpc.ts`:
462
+
463
+ ```typescript
464
+ // HexStrike AI RPC methods
465
+ hexstrike: {
466
+ status: () => Promise<{ running: boolean; version?: string }>;
467
+ tools: () => Promise<string[]>;
468
+ scan: (params: { target: string; scanners?: string[] }) => Promise<{ scanId: string }>;
469
+ scanResult: (params: { scanId: string }) => Promise<unknown>;
470
+ }
471
+ ```
472
+
473
+ **Step 2: Commit**
474
+
475
+ ```bash
476
+ git add src/gateway/rpc.ts
477
+ git commit -m "feat(gateway): add HexStrike AI RPC methods"
478
+ ```
479
+
480
+ ---
481
+
482
+ ## Fase 2: Page Agent Integration
483
+
484
+ ### Task 5: Criar estrutura Page Agent
485
+
486
+ **Files:**
487
+ - Create: `extensions/page-agent/package.json`
488
+ - Create: `extensions/page-agent/poolbot.plugin.json`
489
+ - Create: `extensions/page-agent/src/index.ts`
490
+
491
+ **Step 1: Criar package.json**
492
+
493
+ ```json
494
+ {
495
+ "name": "@poolbot/page-agent",
496
+ "version": "2026.3.13",
497
+ "description": "Web automation agent with Playwright integration",
498
+ "type": "module",
499
+ "main": "dist/index.js",
500
+ "scripts": {
501
+ "build": "tsc",
502
+ "dev": "tsc --watch"
503
+ },
504
+ "dependencies": {
505
+ "poolbot": "workspace:*",
506
+ "playwright": "^1.40.0"
507
+ },
508
+ "devDependencies": {
509
+ "@types/node": "^22.0.0",
510
+ "typescript": "^5.0.0"
511
+ }
512
+ }
513
+ ```
514
+
515
+ **Step 2: Commit**
516
+
517
+ ```bash
518
+ git add extensions/page-agent/
519
+ git commit -m "feat(page-agent): create extension structure"
520
+ ```
521
+
522
+ ---
523
+
524
+ ### Task 6: Copiar e adaptar código Page Agent
525
+
526
+ **Files:**
527
+ - Create: `extensions/page-agent/src/browser.ts`
528
+ - Create: `extensions/page-agent/src/agent.ts`
529
+ - Create: `extensions/page-agent/src/actions.ts`
530
+
531
+ **Step 1: Analisar código fonte**
532
+
533
+ ```bash
534
+ ls -la /Users/pool/Downloads/page-agent-main/
535
+ find /Users/pool/Downloads/page-agent-main/ -name "*.ts" -o -name "*.js" | head -20
536
+ ```
537
+
538
+ **Step 2: Copiar e adaptar arquivos principais**
539
+
540
+ Copiar lógica de automação web do Page Agent para a extensão PoolBot.
541
+
542
+ **Step 3: Commit**
543
+
544
+ ```bash
545
+ git add extensions/page-agent/src/
546
+ git commit -m "feat(page-agent): import and adapt Page Agent code"
547
+ ```
548
+
549
+ ---
550
+
551
+ ## Fase 3: XYOps Integration
552
+
553
+ ### Task 7: Criar estrutura XYOps
554
+
555
+ **Files:**
556
+ - Create: `extensions/xyops/package.json`
557
+ - Create: `extensions/xyops/poolbot.plugin.json`
558
+ - Create: `extensions/xyops/src/index.ts`
559
+
560
+ **Step 1: Analisar código fonte**
561
+
562
+ ```bash
563
+ ls -la /Users/pool/Downloads/xyops-main/ 2>/dev/null || echo "Directory not found"
564
+ ```
565
+
566
+ **Step 2: Criar estrutura base**
567
+
568
+ ```json
569
+ {
570
+ "name": "@poolbot/xyops",
571
+ "version": "2026.3.13",
572
+ "description": "Infrastructure and DevOps operations automation",
573
+ "type": "module",
574
+ "main": "dist/index.js"
575
+ }
576
+ ```
577
+
578
+ ---
579
+
580
+ ## Fase 4: Agency Agents Integration
581
+
582
+ ### Task 8: Criar estrutura Agency
583
+
584
+ **Files:**
585
+ - Create: `extensions/agency/package.json`
586
+ - Create: `extensions/agency/poolbot.plugin.json`
587
+
588
+ **Step 1: Analisar estrutura**
589
+
590
+ ```bash
591
+ ls /Users/pool/Downloads/agency-agents-main/
592
+ ```
593
+
594
+ **Step 2: Criar extensão que expõe templates de agentes**
595
+
596
+ A extensão Agency vai fornecer templates pré-configurados para diferentes tipos de agentes (marketing, engineering, design, etc.).
597
+
598
+ ---
599
+
600
+ ## Fase 5: Build e Teste
601
+
602
+ ### Task 9: Build todas as extensões
603
+
604
+ **Step 1: Instalar dependências**
605
+
606
+ ```bash
607
+ cd extensions/hexstrike-ai && pnpm install && pnpm build
608
+ cd ../page-agent && pnpm install && pnpm build
609
+ cd ../xyops && pnpm install && pnpm build
610
+ cd ../agency && pnpm install && pnpm build
611
+ ```
612
+
613
+ **Step 2: Testar integração**
614
+
615
+ ```bash
616
+ pnpm poolbot security status
617
+ pnpm poolbot security tools
618
+ ```
619
+
620
+ **Step 3: Commit final**
621
+
622
+ ```bash
623
+ git add .
624
+ git commit -m "feat(extensions): integrate HexStrike AI, Page Agent, XYOps, Agency"
625
+ ```
626
+
627
+ ---
628
+
629
+ ## Resumo da Integração
630
+
631
+ | Projeto | Extensão PoolBot | Status |
632
+ | --------------- | -------------------------- | ----------- |
633
+ | HexStrike AI | `extensions/hexstrike-ai/` | 🚧 Em progresso |
634
+ | Page Agent | `extensions/page-agent/` | 🚧 Em progresso |
635
+ | XYOps | `extensions/xyops/` | 🚧 Em progresso |
636
+ | Agency Agents | `extensions/agency/` | 🚧 Em progresso |
637
+
638
+ ---
639
+
640
+ ## Comandos Disponíveis Após Integração
641
+
642
+ ```bash
643
+ # HexStrike AI
644
+ poolbot security status # Verificar status do servidor
645
+ poolbot security tools # Listar scanners disponíveis
646
+ poolbot security scan <target> # Executar scan de segurança
647
+ poolbot security report <scan-id> # Ver resultado do scan
648
+
649
+ # Page Agent
650
+ poolbot browser agent <url> # Iniciar agente de automação
651
+ poolbot browser screenshot <url> # Capturar screenshot
652
+ poolbot browser crawl <url> # Crawler inteligente
653
+
654
+ # XYOps
655
+ poolbot infra status # Status da infraestrutura
656
+ poolbot infra deploy <stack> # Deploy de stack
657
+ poolbot infra monitor # Monitoramento
658
+
659
+ # Agency
660
+ poolbot agent list # Listar templates de agentes
661
+ poolbot agent create <type> # Criar agente especializado
662
+ ```
663
+
664
+ ---
665
+
666
+ **Próximo passo:** Executar Task 1 para começar a integração do HexStrike AI.