@zweer/dev 1.2.0 → 2.0.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 (125) hide show
  1. package/README.md +68 -467
  2. package/configs/_biome.json +38 -0
  3. package/configs/commitlint.config.ts +1 -0
  4. package/configs/editorconfig +16 -0
  5. package/configs/lefthook.yml +38 -0
  6. package/configs/lockfile-lintrc.json +6 -0
  7. package/configs/npmpackagejsonlintrc.json +34 -0
  8. package/configs/tsconfig.json +9 -0
  9. package/configs/tsdown.config.ts +8 -0
  10. package/configs/vitest.config.ts +12 -0
  11. package/dist/index.d.mts +1 -0
  12. package/dist/index.mjs +247 -0
  13. package/dist/index.mjs.map +1 -0
  14. package/kiro/agents/zweer-setup.json +38 -0
  15. package/kiro/prompts/zweer-setup.md +55 -0
  16. package/kiro/skills/agent-template/SKILL.md +22 -0
  17. package/kiro/skills/agent-template/references/base.json +38 -0
  18. package/kiro/skills/agent-template/references/example-monorepo-library.json +60 -0
  19. package/kiro/skills/agent-template/references/example-webapp-vercel.json +54 -0
  20. package/kiro/skills/prompt-template/SKILL.md +23 -0
  21. package/kiro/skills/prompt-template/references/example-library.md +56 -0
  22. package/kiro/skills/prompt-template/references/example-webapp.md +57 -0
  23. package/kiro/skills/skill-templates/SKILL.md +23 -0
  24. package/kiro/skills/skill-templates/references/new-package.md +72 -0
  25. package/kiro/skills/steering-templates/SKILL.md +31 -0
  26. package/kiro/skills/steering-templates/references/build-tooling.md +62 -0
  27. package/kiro/skills/steering-templates/references/code-style.md +83 -0
  28. package/kiro/skills/steering-templates/references/commit-conventions.md +58 -0
  29. package/kiro/skills/steering-templates/references/interaction.md +41 -0
  30. package/kiro/skills/steering-templates/references/testing.md +61 -0
  31. package/kiro/steering/build-tooling.md +62 -0
  32. package/kiro/steering/code-style.md +83 -0
  33. package/kiro/steering/commit-conventions.md +58 -0
  34. package/kiro/steering/interaction.md +41 -0
  35. package/kiro/steering/testing.md +61 -0
  36. package/package.json +42 -57
  37. package/templates/monorepo/CHANGELOG.md +5 -0
  38. package/templates/monorepo/README.md +22 -0
  39. package/templates/monorepo/package.json +30 -0
  40. package/templates/monorepo/packages/core/CHANGELOG.md +5 -0
  41. package/templates/monorepo/packages/core/README.md +21 -0
  42. package/templates/monorepo/packages/core/package.json +28 -0
  43. package/templates/monorepo/packages/core/src/index.ts +3 -0
  44. package/templates/monorepo/packages/core/test/index.test.ts +9 -0
  45. package/templates/monorepo/tsdown.config.ts +12 -0
  46. package/templates/monorepo/vitest.config.ts +12 -0
  47. package/templates/single/CHANGELOG.md +5 -0
  48. package/templates/single/README.md +30 -0
  49. package/templates/single/package.json +38 -0
  50. package/templates/single/src/index.ts +3 -0
  51. package/templates/single/test/index.test.ts +9 -0
  52. package/templates/single/tsdown.config.ts +11 -0
  53. package/workflows/base/ci.yml +24 -0
  54. package/workflows/base/dependabot-auto-merge.yml +43 -0
  55. package/workflows/base/dependabot-lockfile.yml +34 -0
  56. package/workflows/base/dependabot.yml +39 -0
  57. package/workflows/base/pr.yml +41 -0
  58. package/workflows/base/security.yml +25 -0
  59. package/workflows/docs/docs.yml +47 -0
  60. package/workflows/library/npm.yml +45 -0
  61. package/agents/data/zweer_data_engineer.md +0 -436
  62. package/agents/design/zweer_ui_designer.md +0 -171
  63. package/agents/design/zweer_ui_ux.md +0 -124
  64. package/agents/infrastructure/zweer_infra_cdk.md +0 -701
  65. package/agents/infrastructure/zweer_infra_devops.md +0 -148
  66. package/agents/infrastructure/zweer_infra_observability.md +0 -610
  67. package/agents/infrastructure/zweer_infra_terraform.md +0 -658
  68. package/agents/mobile/zweer_mobile_android.md +0 -636
  69. package/agents/mobile/zweer_mobile_flutter.md +0 -623
  70. package/agents/mobile/zweer_mobile_ionic.md +0 -550
  71. package/agents/mobile/zweer_mobile_ios.md +0 -504
  72. package/agents/mobile/zweer_mobile_react_native.md +0 -561
  73. package/agents/quality/zweer_qa_documentation.md +0 -202
  74. package/agents/quality/zweer_qa_performance.md +0 -160
  75. package/agents/quality/zweer_qa_security.md +0 -197
  76. package/agents/quality/zweer_qa_testing.md +0 -189
  77. package/agents/services/zweer_svc_api_gateway.md +0 -553
  78. package/agents/services/zweer_svc_containers.md +0 -575
  79. package/agents/services/zweer_svc_lambda.md +0 -373
  80. package/agents/services/zweer_svc_messaging.md +0 -543
  81. package/agents/services/zweer_svc_microservices.md +0 -502
  82. package/agents/web/zweer_web_api_integration.md +0 -500
  83. package/agents/web/zweer_web_backend.md +0 -358
  84. package/agents/web/zweer_web_database.md +0 -357
  85. package/agents/web/zweer_web_frontend.md +0 -375
  86. package/agents/web/zweer_web_reader.md +0 -229
  87. package/agents/write/zweer_write_content.md +0 -499
  88. package/agents/write/zweer_write_narrative.md +0 -409
  89. package/agents/write/zweer_write_style.md +0 -247
  90. package/agents/write/zweer_write_warmth.md +0 -282
  91. package/cli/commands/bootstrap.d.ts +0 -4
  92. package/cli/commands/bootstrap.js +0 -377
  93. package/cli/commands/cao/agent/create.d.ts +0 -17
  94. package/cli/commands/cao/agent/create.js +0 -89
  95. package/cli/commands/cao/agent/index.d.ts +0 -2
  96. package/cli/commands/cao/agent/index.js +0 -8
  97. package/cli/commands/cao/agent/list.d.ts +0 -3
  98. package/cli/commands/cao/agent/list.js +0 -29
  99. package/cli/commands/cao/agent/remove.d.ts +0 -5
  100. package/cli/commands/cao/agent/remove.js +0 -39
  101. package/cli/commands/cao/index.d.ts +0 -2
  102. package/cli/commands/cao/index.js +0 -18
  103. package/cli/commands/cao/init.d.ts +0 -15
  104. package/cli/commands/cao/init.js +0 -87
  105. package/cli/commands/cao/install.d.ts +0 -10
  106. package/cli/commands/cao/install.js +0 -59
  107. package/cli/commands/cao/launch.d.ts +0 -3
  108. package/cli/commands/cao/launch.js +0 -21
  109. package/cli/commands/cao/list.d.ts +0 -4
  110. package/cli/commands/cao/list.js +0 -28
  111. package/cli/commands/cao/server.d.ts +0 -3
  112. package/cli/commands/cao/server.js +0 -20
  113. package/cli/commands/cao/sync.d.ts +0 -6
  114. package/cli/commands/cao/sync.js +0 -52
  115. package/cli/commands/setup.d.ts +0 -4
  116. package/cli/commands/setup.js +0 -346
  117. package/cli/index.d.ts +0 -2
  118. package/cli/index.js +0 -13
  119. package/cli/utils/agents.d.ts +0 -8
  120. package/cli/utils/agents.js +0 -55
  121. package/cli/utils/cao.d.ts +0 -9
  122. package/cli/utils/cao.js +0 -40
  123. package/cli/utils/paths.d.ts +0 -5
  124. package/cli/utils/paths.js +0 -11
  125. package/templates/orchestrator.md +0 -190
package/README.md CHANGED
@@ -1,508 +1,109 @@
1
- # @zweer/dev - Shared Configurations & AI Agents
1
+ # @zweer/dev
2
2
 
3
- Central repository of reusable configurations and specialized AI agents for software projects.
3
+ Shared configurations, golden configs & Kiro AI templates for software projects.
4
4
 
5
- ## Table of Contents
5
+ ## What's Inside
6
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)
7
+ | Directory | Purpose |
8
+ |-----------|---------|
9
+ | `cli/` | CLI tool (`dev bootstrap`, `dev setup`, `dev init-kiro`) |
10
+ | `configs/` | Golden config files copied to target projects |
11
+ | `kiro/` | Kiro agent, prompt, steering & skill templates |
12
+ | `workflows/` | GitHub Actions workflow templates |
23
13
 
24
- ## Project Purpose
14
+ ## Quick Start
25
15
 
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.
16
+ ### New project
258
17
 
259
18
  ```bash
260
- # Interactive mode - choose what to add
261
- dev setup
262
-
263
- # Add everything
264
- dev setup --yes
19
+ npx @zweer/dev bootstrap my-project
20
+ cd my-project
21
+ npx @zweer/dev init-kiro
265
22
  ```
266
23
 
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.
24
+ ### Existing project
284
25
 
285
26
  ```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
27
+ npx @zweer/dev setup
28
+ npx @zweer/dev init-kiro
294
29
  ```
295
30
 
296
- Creates `.cao/agents/<name>.md` with a template orchestrator configured for your project.
31
+ ## CLI Commands
297
32
 
298
- **Options:**
299
- - `-y, --yes` - Skip prompts and use defaults
33
+ ### `dev bootstrap [name]`
300
34
 
301
- ##### `dev cao install`
35
+ Scaffolds a new project with all golden configs, scripts, and dependencies.
302
36
 
303
- Install CAO (CLI Agent Orchestrator) and all common agents.
37
+ ### `dev setup`
304
38
 
305
- ```bash
306
- # Install everything
307
- dev cao install
39
+ Adds golden configs to an existing project. Merges deps and scripts into `package.json`, copies config files (won't overwrite existing), installs base GitHub Actions workflows.
308
40
 
309
- # Install only CAO
310
- dev cao install --cao-only
41
+ ### `dev init-kiro`
311
42
 
312
- # Install only agents
313
- dev cao install --agents-only
314
- ```
43
+ Installs the `zweer-setup` agent globally for Kiro-powered project configuration. After running, launch `kiro-cli chat` and use `/agent swap zweer-setup` to configure the project.
315
44
 
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
45
+ ## Golden Configs
321
46
 
322
- **Options:**
323
- - `--cao-only` - Install only CAO prerequisites
324
- - `--agents-only` - Install only agents (skip CAO)
47
+ All projects get these configs (via `dev bootstrap` or `dev setup`):
325
48
 
326
- ##### `dev cao server`
49
+ | Config | Tool |
50
+ |--------|------|
51
+ | `biome.json` | Biome (linter + formatter) |
52
+ | `tsconfig.json` | TypeScript (`@tsconfig/node22`) |
53
+ | `tsdown.config.ts` | tsdown (build) |
54
+ | `vitest.config.ts` | Vitest (testing + v8 coverage) |
55
+ | `lefthook.yml` | Lefthook (git hooks) |
56
+ | `commitlint.config.ts` | Commitlint (conventional commits) |
57
+ | `.editorconfig` | EditorConfig |
58
+ | `.lockfile-lintrc.json` | Lockfile-lint (security) |
59
+ | `.npmpackagejsonlintrc.json` | npm-package-json-lint |
327
60
 
328
- Launch the CAO server.
61
+ ## Project Templates
329
62
 
330
- ```bash
331
- dev cao server
332
- ```
63
+ `dev bootstrap` uses these templates:
333
64
 
334
- Starts `cao-server` which enables agent communication and handoff.
65
+ | Template | Use case | Example repos |
66
+ |----------|----------|---------------|
67
+ | `single` (default) | Single npm package | utils (if single-pkg) |
68
+ | `monorepo` | npm workspaces with `packages/*` | bonvoy, FlowRAG, utils |
335
69
 
336
- ##### `dev cao launch <agent>`
70
+ For web apps (Next.js, SvelteKit, etc.), use the framework's own scaffolding tool first, then run `dev setup` to add golden configs.
337
71
 
338
- Launch a specific agent.
72
+ ## Kiro Templates
339
73
 
340
- ```bash
341
- # Launch your orchestrator
342
- dev cao launch my_project_orchestrator
74
+ The `zweer-setup` agent generates `.kiro/` config for any project:
343
75
 
344
- # Launch a specialized agent
345
- dev cao launch zweer_web_frontend
346
- ```
76
+ - **5 steering files**: code-style, build-tooling, testing, interaction, commit-conventions
77
+ - **Agent config**: Tailored `dev.json` with project-specific write paths
78
+ - **Prompt**: Project-specific system prompt
79
+ - **Skills**: Monorepo scaffolding, etc.
347
80
 
348
- ##### `dev cao list`
81
+ ## Workflow Templates
349
82
 
350
- List all available agents with descriptions.
83
+ | Tier | Workflows | When |
84
+ |------|-----------|------|
85
+ | Base | ci, pr, security, dependabot-auto-merge | Always |
86
+ | Library | npm release | npm packages |
87
+ | Docs | VitePress deploy | Projects with docs/ |
351
88
 
352
- ```bash
353
- dev cao list
354
- ```
355
-
356
- Shows all 30+ agents organized by category.
89
+ ## Stack Decisions
357
90
 
358
- ## How to Use Agents
91
+ - **Biome** today, Oxc when stable
92
+ - **Lefthook** (not husky + lint-staged)
93
+ - **tsdown** (not tsc for build)
94
+ - **bonvoy** (not semantic-release)
95
+ - **@tsconfig/node22** (LTS)
96
+ - **Copy** config distribution (not extends)
359
97
 
360
- ### Setup in Your Project
98
+ ## Development
361
99
 
362
100
  ```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
101
+ npm install
102
+ npm run build
103
+ npm test
104
+ npm run lint
371
105
  ```
372
106
 
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
107
  ## License
507
108
 
508
109
  MIT
@@ -0,0 +1,38 @@
1
+ {
2
+ "$schema": "https://biomejs.dev/schemas/2.4.8/schema.json",
3
+ "vcs": { "enabled": true, "clientKind": "git", "useIgnoreFile": true },
4
+ "files": { "ignoreUnknown": false },
5
+ "formatter": { "enabled": true, "useEditorconfig": true, "lineWidth": 100 },
6
+ "linter": {
7
+ "enabled": true,
8
+ "rules": {
9
+ "recommended": true,
10
+ "suspicious": { "noUnknownAtRules": "off" }
11
+ },
12
+ "domains": { "test": "recommended" }
13
+ },
14
+ "javascript": { "formatter": { "quoteStyle": "single" } },
15
+ "assist": {
16
+ "enabled": true,
17
+ "actions": {
18
+ "source": {
19
+ "organizeImports": {
20
+ "level": "on",
21
+ "options": {
22
+ "groups": [
23
+ ":URL:",
24
+ ":BLANK_LINE:",
25
+ [":BUN:", ":NODE:"],
26
+ ":BLANK_LINE:",
27
+ [":PACKAGE_WITH_PROTOCOL:", ":PACKAGE:"],
28
+ ":BLANK_LINE:",
29
+ ":ALIAS:",
30
+ ":BLANK_LINE:",
31
+ ":PATH:"
32
+ ]
33
+ }
34
+ }
35
+ }
36
+ }
37
+ }
38
+ }
@@ -0,0 +1 @@
1
+ export default { extends: ['@commitlint/config-conventional'] };
@@ -0,0 +1,16 @@
1
+ # http://editorconfig.org/
2
+ root = true
3
+
4
+ [*]
5
+ charset = utf-8
6
+ end_of_line = lf
7
+ insert_final_newline = true
8
+ indent_style = space
9
+ indent_size = 2
10
+ trim_trailing_whitespace = true
11
+
12
+ [*.md]
13
+ trim_trailing_whitespace = false
14
+
15
+ [Makefile]
16
+ indent_style = tab
@@ -0,0 +1,38 @@
1
+ pre-commit:
2
+ piped: true
3
+ commands:
4
+ biome:
5
+ glob: "*.{ts,json,yaml,md,css,html}"
6
+ run: npx biome check --write --no-errors-on-unmatched --files-ignore-unknown=true {staged_files}
7
+ stage_fixed: true
8
+ priority: 1
9
+ lockfile:
10
+ glob: "package-lock.json"
11
+ run: npx lockfile-lint
12
+ priority: 1
13
+ package-lint:
14
+ glob: "package.json"
15
+ run: npx npmPkgJsonLint .
16
+ priority: 1
17
+ package-sort:
18
+ glob: "package.json"
19
+ run: npx sort-package-json "package.json"
20
+ stage_fixed: true
21
+ priority: 1
22
+ build:
23
+ glob: "*.ts"
24
+ run: npm run build
25
+ priority: 2
26
+ typecheck:
27
+ glob: "*.ts"
28
+ run: tsc --noEmit
29
+ priority: 3
30
+ test:
31
+ glob: "*.ts"
32
+ run: npx vitest run --reporter=dot
33
+ priority: 3
34
+
35
+ commit-msg:
36
+ commands:
37
+ commitlint:
38
+ run: npx --no -- commitlint --edit {1}
@@ -0,0 +1,6 @@
1
+ {
2
+ "path": "package-lock.json",
3
+ "type": "npm",
4
+ "validate-https": true,
5
+ "allowed-hosts": ["npm"]
6
+ }