@zweer/dev 1.0.1

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 (58) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +508 -0
  3. package/agents/data/zweer_data_engineer.md +436 -0
  4. package/agents/design/zweer_ui_designer.md +171 -0
  5. package/agents/design/zweer_ui_ux.md +124 -0
  6. package/agents/infrastructure/zweer_infra_cdk.md +701 -0
  7. package/agents/infrastructure/zweer_infra_devops.md +148 -0
  8. package/agents/infrastructure/zweer_infra_observability.md +610 -0
  9. package/agents/infrastructure/zweer_infra_terraform.md +658 -0
  10. package/agents/mobile/zweer_mobile_android.md +636 -0
  11. package/agents/mobile/zweer_mobile_flutter.md +623 -0
  12. package/agents/mobile/zweer_mobile_ionic.md +550 -0
  13. package/agents/mobile/zweer_mobile_ios.md +504 -0
  14. package/agents/mobile/zweer_mobile_react_native.md +561 -0
  15. package/agents/quality/zweer_qa_documentation.md +202 -0
  16. package/agents/quality/zweer_qa_performance.md +160 -0
  17. package/agents/quality/zweer_qa_security.md +197 -0
  18. package/agents/quality/zweer_qa_testing.md +189 -0
  19. package/agents/services/zweer_svc_api_gateway.md +553 -0
  20. package/agents/services/zweer_svc_containers.md +575 -0
  21. package/agents/services/zweer_svc_lambda.md +373 -0
  22. package/agents/services/zweer_svc_messaging.md +543 -0
  23. package/agents/services/zweer_svc_microservices.md +502 -0
  24. package/agents/web/zweer_web_api_integration.md +500 -0
  25. package/agents/web/zweer_web_backend.md +358 -0
  26. package/agents/web/zweer_web_database.md +357 -0
  27. package/agents/web/zweer_web_frontend.md +375 -0
  28. package/agents/web/zweer_web_reader.md +229 -0
  29. package/agents/write/zweer_write_content.md +499 -0
  30. package/agents/write/zweer_write_narrative.md +409 -0
  31. package/agents/write/zweer_write_style.md +247 -0
  32. package/agents/write/zweer_write_warmth.md +282 -0
  33. package/cli/commands/bootstrap.d.ts +4 -0
  34. package/cli/commands/bootstrap.js +332 -0
  35. package/cli/commands/cao/index.d.ts +2 -0
  36. package/cli/commands/cao/index.js +14 -0
  37. package/cli/commands/cao/init.d.ts +15 -0
  38. package/cli/commands/cao/init.js +87 -0
  39. package/cli/commands/cao/install.d.ts +10 -0
  40. package/cli/commands/cao/install.js +58 -0
  41. package/cli/commands/cao/launch.d.ts +3 -0
  42. package/cli/commands/cao/launch.js +21 -0
  43. package/cli/commands/cao/list.d.ts +4 -0
  44. package/cli/commands/cao/list.js +28 -0
  45. package/cli/commands/cao/server.d.ts +3 -0
  46. package/cli/commands/cao/server.js +20 -0
  47. package/cli/commands/setup.d.ts +4 -0
  48. package/cli/commands/setup.js +269 -0
  49. package/cli/index.d.ts +2 -0
  50. package/cli/index.js +13 -0
  51. package/cli/utils/agents.d.ts +8 -0
  52. package/cli/utils/agents.js +55 -0
  53. package/cli/utils/cao.d.ts +8 -0
  54. package/cli/utils/cao.js +23 -0
  55. package/cli/utils/paths.d.ts +5 -0
  56. package/cli/utils/paths.js +11 -0
  57. package/package.json +80 -0
  58. package/templates/orchestrator.md +190 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Niccolò Olivieri Achille
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,508 @@
1
+ # @zweer/dev - Shared Configurations & AI Agents
2
+
3
+ Central repository of reusable configurations and specialized AI agents for software projects.
4
+
5
+ ## Table of Contents
6
+
7
+ - [Project Purpose](#project-purpose)
8
+ - [Structure](#structure)
9
+ - [How It Works](#how-it-works)
10
+ - [1. Orchestrator Agent (in your project)](#1-orchestrator-agent-in-your-project)
11
+ - [2. Specialized Agents (in this repo)](#2-specialized-agents-in-this-repo)
12
+ - [3. Agent Handoff](#3-agent-handoff)
13
+ - [Available Agents](#available-agents)
14
+ - [Web Development](#web-development-agentsdev)
15
+ - [How to Use Agents](#how-to-use-agents)
16
+ - [Setup in Your Project](#setup-in-your-project)
17
+ - [Delegation Example in Orchestrator](#delegation-example-in-orchestrator)
18
+ - [Providing Context to Agents](#providing-context-to-agents)
19
+ - [Benefits of This Approach](#benefits-of-this-approach)
20
+ - [Contributing](#contributing)
21
+ - [Roadmap](#roadmap)
22
+ - [License](#license)
23
+
24
+ ## Project Purpose
25
+
26
+ This repository contains:
27
+
28
+ 1. **Specialized AI agents** - Agent configurations for different domains (web development, writing, etc.)
29
+ 2. **Common configurations** - Shared setups for linting, formatting, TypeScript, etc.
30
+ 3. **Templates** - Reusable project structures
31
+
32
+ The idea is to have an **orchestrator + specialized agents pattern**:
33
+ - Each project has an **orchestrator agent** with project-specific context
34
+ - The orchestrator delegates tasks to **specialized agents** via handoff
35
+ - Specialized agents are generic and reusable across projects
36
+
37
+ ## Structure
38
+
39
+ ```
40
+ dev/
41
+ ├── agents/ # Specialized AI agents (30 total)
42
+ │ ├── data/ # Data engineering (1)
43
+ │ │ └── zweer_data_engineer.md
44
+ │ ├── design/ # UI/UX (2)
45
+ │ │ ├── zweer_ui_designer.md
46
+ │ │ └── zweer_ui_ux.md
47
+ │ ├── infrastructure/ # Platform & IaC (4)
48
+ │ │ ├── zweer_infra_cdk.md
49
+ │ │ ├── zweer_infra_devops.md
50
+ │ │ ├── zweer_infra_observability.md
51
+ │ │ └── zweer_infra_terraform.md
52
+ │ ├── mobile/ # Mobile development (5)
53
+ │ │ ├── zweer_mobile_android.md
54
+ │ │ ├── zweer_mobile_flutter.md
55
+ │ │ ├── zweer_mobile_ionic.md
56
+ │ │ ├── zweer_mobile_ios.md
57
+ │ │ └── zweer_mobile_react_native.md
58
+ │ ├── quality/ # Quality & best practices (4)
59
+ │ │ ├── zweer_qa_documentation.md
60
+ │ │ ├── zweer_qa_performance.md
61
+ │ │ ├── zweer_qa_security.md
62
+ │ │ └── zweer_qa_testing.md
63
+ │ ├── services/ # Backend services (5)
64
+ │ │ ├── zweer_svc_api_gateway.md
65
+ │ │ ├── zweer_svc_containers.md
66
+ │ │ ├── zweer_svc_lambda.md
67
+ │ │ ├── zweer_svc_messaging.md
68
+ │ │ └── zweer_svc_microservices.md
69
+ │ ├── web/ # Web full-stack (5)
70
+ │ │ ├── zweer_web_api_integration.md
71
+ │ │ ├── zweer_web_backend.md
72
+ │ │ ├── zweer_web_database.md
73
+ │ │ ├── zweer_web_frontend.md
74
+ │ │ └── zweer_web_reader.md
75
+ │ └── write/ # Content & creative writing (4)
76
+ │ ├── zweer_write_content.md
77
+ │ ├── zweer_write_narrative.md
78
+ │ ├── zweer_write_style.md
79
+ │ └── zweer_write_warmth.md
80
+ ├── cli/ # CLI tool implementation
81
+ ├── templates/ # Project templates
82
+ └── README.md # This file
83
+ ```
84
+
85
+ All agents follow the naming convention: `zweer_<category>_<name>` for global uniqueness.
86
+
87
+ ## How It Works
88
+
89
+ ### 1. Orchestrator Agent (in your project)
90
+
91
+ The orchestrator is project-specific and contains:
92
+ - **Project context**: name, purpose, tech stack, architecture
93
+ - **Documentation**: references to README, ARCHITECTURE, DATABASE_SCHEMA, etc.
94
+ - **Delegation logic**: which agent to call for which task
95
+ - **Project standards**: code conventions, design system, best practices
96
+
97
+ Example orchestrator structure:
98
+
99
+ ```yaml
100
+ ---
101
+ name: my_project_orchestrator
102
+ description: Project orchestrator for My Project
103
+ model: claude-sonnet-4.5
104
+ mcpServers:
105
+ cao-mcp-server:
106
+ type: stdio
107
+ command: uvx
108
+ args:
109
+ - "--from"
110
+ - "git+https://github.com/awslabs/cli-agent-orchestrator.git@main"
111
+ - "cao-mcp-server"
112
+ tools: ["*"]
113
+ allowedTools: ["fs_read", "fs_write", "execute_bash", "@cao-mcp-server"]
114
+ ---
115
+
116
+ # My Project - Orchestrator
117
+
118
+ ## Project Context
119
+ - Name: My Project
120
+ - Tech Stack: Next.js, TypeScript, PostgreSQL
121
+ - [Project-specific details]
122
+
123
+ ## Instructions
124
+ [Orchestration and delegation logic]
125
+ ```
126
+
127
+ ### 2. Specialized Agents (in this repo)
128
+
129
+ Specialized agents are **generic** and **reusable**. They don't know about your specific project, but are experts in a domain.
130
+
131
+ Each agent has:
132
+ - **Specific expertise**: e.g. React, database design, security
133
+ - **Best practices**: guidelines for the domain
134
+ - **Examples**: common patterns and solutions
135
+
136
+ ### 3. Agent Handoff
137
+
138
+ The orchestrator delegates tasks to agents via the `@cao-mcp-server` tool:
139
+
140
+ ```
141
+ Orchestrator receives: "Create login page"
142
+
143
+ Orchestrator analyzes and plans:
144
+ 1. UX design → delegate to dev_ux
145
+ 2. UI components → delegate to dev_frontend
146
+ 3. Authentication → delegate to dev_backend
147
+ 4. DB schema → delegate to dev_database
148
+
149
+ Orchestrator coordinates execution and validates results
150
+ ```
151
+
152
+ ## Available Agents
153
+
154
+ All agents use the `zweer_<category>_<name>` naming convention for global uniqueness.
155
+
156
+ ### Web Development (`agents/web/`)
157
+
158
+ - **zweer_web_frontend** - React, Next.js, components, client-side logic
159
+ - **zweer_web_backend** - API routes, Server Actions, business logic
160
+ - **zweer_web_database** - Schema design, queries, migrations
161
+ - **zweer_web_api_integration** - External API integrations, scrapers
162
+ - **zweer_web_reader** - Image viewer, document reader, gestures
163
+
164
+ ### Services (`agents/services/`)
165
+
166
+ - **zweer_svc_lambda** - AWS Lambda, serverless functions, event handlers
167
+ - **zweer_svc_microservices** - Service design, communication patterns, distributed systems
168
+ - **zweer_svc_api_gateway** - REST, GraphQL, API Gateway, rate limiting
169
+ - **zweer_svc_messaging** - SQS, SNS, EventBridge, event-driven architecture
170
+ - **zweer_svc_containers** - Docker, ECS, EKS, container orchestration
171
+
172
+ ### Infrastructure (`agents/infrastructure/`)
173
+
174
+ - **zweer_infra_cdk** - AWS CDK with TypeScript, stacks, constructs
175
+ - **zweer_infra_terraform** - Terraform HCL, modules, state management
176
+ - **zweer_infra_devops** - Deploy, CI/CD, infrastructure
177
+ - **zweer_infra_observability** - Monitoring, logging, tracing, alerting
178
+
179
+ ### Design (`agents/design/`)
180
+
181
+ - **zweer_ui_designer** - UI components, design system, styling
182
+ - **zweer_ui_ux** - User flows, accessibility, mobile experience
183
+
184
+ ### Mobile (`agents/mobile/`)
185
+
186
+ - **zweer_mobile_react_native** - Cross-platform mobile with React Native
187
+ - **zweer_mobile_ionic** - Hybrid mobile apps with Capacitor
188
+ - **zweer_mobile_flutter** - Cross-platform mobile with Dart
189
+ - **zweer_mobile_ios** - Native iOS with Swift, SwiftUI, UIKit
190
+ - **zweer_mobile_android** - Native Android with Kotlin, Jetpack Compose
191
+
192
+ ### Quality (`agents/quality/`)
193
+
194
+ - **zweer_qa_testing** - Unit, integration, E2E tests
195
+ - **zweer_qa_security** - Auth, security, vulnerabilities
196
+ - **zweer_qa_performance** - Optimization, caching, monitoring
197
+ - **zweer_qa_documentation** - Technical writing, API docs
198
+
199
+ ### Data Engineering (`agents/data/`)
200
+
201
+ - **zweer_data_engineer** - ETL pipelines, data warehousing, analytics
202
+
203
+ ### Writing (`agents/write/`)
204
+
205
+ - **zweer_write_content** - Blog posts, articles, marketing copy
206
+ - **zweer_write_narrative** - Creative fiction, storytelling, character development
207
+ - **zweer_write_style** - Refine writing quality, remove AI patterns, improve flow
208
+ - **zweer_write_warmth** - Add human warmth, empathy, and emotional connection
209
+
210
+ ## CLI Tool
211
+
212
+ Command-line tool for managing AI agents, orchestrators, and project configurations.
213
+
214
+ ### Installation
215
+
216
+ ```bash
217
+ npm install -g @zweer/dev
218
+ ```
219
+
220
+ Or use with npx:
221
+
222
+ ```bash
223
+ npx @zweer/dev <command>
224
+ ```
225
+
226
+ ### Commands
227
+
228
+ #### Project Setup
229
+
230
+ ##### `dev bootstrap`
231
+
232
+ Bootstrap a new npm package with standard configuration.
233
+
234
+ ```bash
235
+ # Interactive mode
236
+ dev bootstrap
237
+
238
+ # Skip prompts (use defaults)
239
+ dev bootstrap --yes
240
+ ```
241
+
242
+ Creates a complete project structure with:
243
+ - `package.json` with all dependencies and scripts
244
+ - TypeScript configuration (`tsconfig.json`)
245
+ - Biome linter/formatter (`biome.json`)
246
+ - Vitest testing setup (`vitest.config.ts`)
247
+ - Git hooks with Husky and lint-staged
248
+ - EditorConfig (`.editorconfig`)
249
+ - Sample source and test files
250
+ - README template
251
+
252
+ **Options:**
253
+ - `-y, --yes` - Skip prompts and use defaults
254
+
255
+ ##### `dev setup`
256
+
257
+ Add standard configuration to an existing project.
258
+
259
+ ```bash
260
+ # Interactive mode - choose what to add
261
+ dev setup
262
+
263
+ # Add everything
264
+ dev setup --yes
265
+ ```
266
+
267
+ Adds configurations to existing project:
268
+ - Merges dependencies into existing `package.json` (doesn't overwrite)
269
+ - Merges scripts into existing `package.json`
270
+ - Creates missing config files (tsconfig, biome, vitest, etc.)
271
+ - Skips files that already exist
272
+ - Preserves existing values
273
+
274
+ **Options:**
275
+ - `-y, --yes` - Skip prompts and add all configurations
276
+
277
+ #### AI Agents (CAO)
278
+
279
+ All CAO-related commands are under the `cao` subcommand:
280
+
281
+ ##### `dev cao init [name]`
282
+
283
+ Create an orchestrator in your current project.
284
+
285
+ ```bash
286
+ # Interactive mode
287
+ dev cao init
288
+
289
+ # With custom name
290
+ dev cao init my_orchestrator
291
+
292
+ # Skip prompts (use defaults)
293
+ dev cao init --yes
294
+ ```
295
+
296
+ Creates `.cao/agents/<name>.md` with a template orchestrator configured for your project.
297
+
298
+ **Options:**
299
+ - `-y, --yes` - Skip prompts and use defaults
300
+
301
+ ##### `dev cao install`
302
+
303
+ Install CAO (CLI Agent Orchestrator) and all common agents.
304
+
305
+ ```bash
306
+ # Install everything
307
+ dev cao install
308
+
309
+ # Install only CAO
310
+ dev cao install --cao-only
311
+
312
+ # Install only agents
313
+ dev cao install --agents-only
314
+ ```
315
+
316
+ This command:
317
+ 1. Installs tmux configuration
318
+ 2. Installs `uv` package manager
319
+ 3. Installs CAO via `uv tool install`
320
+ 4. Installs all 30+ common agents from this repository
321
+
322
+ **Options:**
323
+ - `--cao-only` - Install only CAO prerequisites
324
+ - `--agents-only` - Install only agents (skip CAO)
325
+
326
+ ##### `dev cao server`
327
+
328
+ Launch the CAO server.
329
+
330
+ ```bash
331
+ dev cao server
332
+ ```
333
+
334
+ Starts `cao-server` which enables agent communication and handoff.
335
+
336
+ ##### `dev cao launch <agent>`
337
+
338
+ Launch a specific agent.
339
+
340
+ ```bash
341
+ # Launch your orchestrator
342
+ dev cao launch my_project_orchestrator
343
+
344
+ # Launch a specialized agent
345
+ dev cao launch zweer_web_frontend
346
+ ```
347
+
348
+ ##### `dev cao list`
349
+
350
+ List all available agents with descriptions.
351
+
352
+ ```bash
353
+ dev cao list
354
+ ```
355
+
356
+ Shows all 30+ agents organized by category.
357
+
358
+ ## How to Use Agents
359
+
360
+ ### Setup in Your Project
361
+
362
+ ```bash
363
+ # In your project directory
364
+ cd my-project
365
+
366
+ # Create orchestrator
367
+ dev cao init
368
+
369
+ # Install CAO and agents
370
+ dev cao install
371
+ ```
372
+
373
+ ### Customize Orchestrator
374
+
375
+ Edit `.cao/agents/my-project_orchestrator.md` to add:
376
+ - Project-specific context
377
+ - Tech stack details
378
+ - Architecture notes
379
+ - Custom agent selection logic
380
+
381
+ ### Launch and Work
382
+
383
+ ```bash
384
+ # Start CAO server (in one terminal)
385
+ dev cao server
386
+
387
+ # Launch your orchestrator (in another terminal)
388
+ dev cao launch my-project_orchestrator
389
+ ```
390
+
391
+ ### Use Agent Handoff
392
+
393
+ In your orchestrator, delegate to specialized agents:
394
+
395
+ ```typescript
396
+ handoff({
397
+ agent: "zweer_web_frontend",
398
+ context: {
399
+ task: "Create login page component",
400
+ requirements: {
401
+ framework: "Next.js 15",
402
+ styling: "Tailwind CSS",
403
+ validation: "Zod"
404
+ }
405
+ }
406
+ })
407
+ ```
408
+
409
+ ### Delegation Example in Orchestrator
410
+
411
+ ```markdown
412
+ ### Agent Selection Guide
413
+
414
+ **For UI/UX Tasks**:
415
+ - `zweer_ui_ux` → User flows, accessibility, mobile experience
416
+ - `zweer_ui_designer` → Components, styling, design system
417
+ - `zweer_web_frontend` → React components, pages, client logic
418
+
419
+ **For Backend Tasks**:
420
+ - `zweer_web_backend` → API routes, Server Actions, business logic
421
+ - `zweer_web_database` → Schema design, queries, migrations
422
+ - `zweer_web_api_integration` → External integrations
423
+
424
+ **For Quality Tasks**:
425
+ - `zweer_qa_testing` → Automated tests
426
+ - `zweer_qa_security` → Security and auth
427
+ - `zweer_qa_performance` → Optimizations
428
+
429
+ ### Task Breakdown Example
430
+
431
+ **User**: "Create login page"
432
+
433
+ **Orchestrator**:
434
+ 1. `zweer_ui_ux` → Design authentication flow
435
+ 2. `zweer_ui_designer` → Form components and UI
436
+ 3. `zweer_web_backend` → Setup Auth.js and session management
437
+ 4. `zweer_web_database` → Users table and queries
438
+ 5. `zweer_qa_security` → CSRF protection and validation
439
+ 6. `zweer_qa_testing` → Test complete flow
440
+ ```
441
+
442
+ ### Providing Context to Agents
443
+
444
+ When the orchestrator delegates to an agent, it must provide:
445
+
446
+ ```markdown
447
+ **Project Context**:
448
+ - Name: My Project
449
+ - Tech Stack: Next.js 15, TypeScript, Drizzle ORM, Neon Postgres
450
+ - Design: Dark mode, blue theme, mobile-first
451
+ - Architecture: App Router, Server Components, Server Actions
452
+
453
+ **Specific Task**:
454
+ [Detailed task description]
455
+
456
+ **Constraints**:
457
+ - Use TypeScript strict mode
458
+ - Follow project conventions (see ARCHITECTURE.md)
459
+ - Minimal code, only what's needed
460
+ ```
461
+
462
+ ## Benefits of This Approach
463
+
464
+ 1. **Reusability**: Specialized agents work for any project
465
+ 2. **Separation**: Project context (orchestrator) vs generic expertise (agents)
466
+ 3. **Maintainability**: Agent updates propagate to all projects
467
+ 4. **Modularity**: Each agent is expert in a specific domain
468
+ 5. **Scalability**: Easy to add new agents or domains
469
+
470
+ ## Contributing
471
+
472
+ To add new agents:
473
+
474
+ 1. Identify the domain (e.g. `agents/data/`, `agents/mobile/`)
475
+ 2. Create appropriate folder structure
476
+ 3. Write the agent in `.md` format with:
477
+ - YAML frontmatter (name, description, model, tools)
478
+ - Expertise description
479
+ - Best practices
480
+ - Code examples
481
+
482
+ ## Roadmap
483
+
484
+ - [x] Services agents (`agents/services/`)
485
+ - [x] Lambda development
486
+ - [x] Microservices architecture
487
+ - [x] API Gateway & REST/GraphQL
488
+ - [x] Messaging (SQS, SNS, EventBridge)
489
+ - [x] Container orchestration (ECS, EKS)
490
+ - [x] Infrastructure agents (`agents/infrastructure/`)
491
+ - [x] AWS CDK
492
+ - [x] Terraform
493
+ - [x] Observability (monitoring, logging)
494
+ - [x] Mobile agents (`agents/mobile/`)
495
+ - [x] React Native
496
+ - [x] Ionic
497
+ - [x] Flutter
498
+ - [x] iOS native
499
+ - [x] Android native
500
+ - [x] Data engineering agents (`agents/data/`)
501
+ - [x] Writing agents (`agents/writing/`)
502
+ - [ ] Common configurations (`configs/`)
503
+ - [ ] Project templates (`templates/`)
504
+ - [ ] Orchestrator examples
505
+
506
+ ## License
507
+
508
+ MIT