@bugzy-ai/bugzy 1.9.3 → 1.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +273 -273
- package/dist/cli/index.cjs +25 -57
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.js +24 -56
- package/dist/cli/index.js.map +1 -1
- package/dist/index.cjs +22 -53
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +22 -53
- package/dist/index.js.map +1 -1
- package/dist/subagents/index.cjs.map +1 -1
- package/dist/subagents/index.js.map +1 -1
- package/dist/subagents/metadata.cjs.map +1 -1
- package/dist/subagents/metadata.js.map +1 -1
- package/dist/tasks/index.cjs +20 -9
- package/dist/tasks/index.cjs.map +1 -1
- package/dist/tasks/index.js +20 -9
- package/dist/tasks/index.js.map +1 -1
- package/dist/templates/init/.bugzy/runtime/knowledge-base.md +61 -0
- package/dist/templates/init/.bugzy/runtime/knowledge-maintenance-guide.md +97 -0
- package/dist/templates/init/.bugzy/runtime/project-context.md +35 -0
- package/dist/templates/init/.bugzy/runtime/subagent-memory-guide.md +87 -0
- package/dist/templates/init/.bugzy/runtime/templates/test-plan-template.md +50 -0
- package/dist/templates/init/.bugzy/runtime/templates/test-result-schema.md +498 -0
- package/dist/templates/init/.bugzy/runtime/test-execution-strategy.md +535 -0
- package/dist/templates/init/.bugzy/runtime/testing-best-practices.md +632 -0
- package/dist/templates/init/.gitignore-template +25 -0
- package/package.json +95 -95
- package/templates/init/.bugzy/runtime/knowledge-base.md +61 -61
- package/templates/init/.bugzy/runtime/knowledge-maintenance-guide.md +97 -97
- package/templates/init/.bugzy/runtime/project-context.md +35 -35
- package/templates/init/.bugzy/runtime/subagent-memory-guide.md +87 -87
- package/templates/init/.bugzy/runtime/templates/test-plan-template.md +50 -50
- package/templates/init/.bugzy/runtime/templates/test-result-schema.md +498 -498
- package/templates/init/.bugzy/runtime/test-execution-strategy.md +535 -535
- package/templates/init/.bugzy/runtime/testing-best-practices.md +724 -724
- package/templates/init/.env.testdata +18 -18
- package/templates/init/.gitignore-template +24 -24
- package/templates/init/AGENTS.md +155 -155
- package/templates/init/CLAUDE.md +157 -157
- package/templates/init/test-runs/README.md +45 -45
- package/templates/playwright/BasePage.template.ts +190 -190
- package/templates/playwright/auth.setup.template.ts +89 -89
- package/templates/playwright/dataGenerators.helper.template.ts +148 -148
- package/templates/playwright/dateUtils.helper.template.ts +96 -96
- package/templates/playwright/pages.fixture.template.ts +50 -50
- package/templates/playwright/playwright.config.template.ts +97 -97
- package/templates/playwright/reporters/bugzy-reporter.ts +454 -454
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2025 Bugzy Team
|
|
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.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Bugzy Team
|
|
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
CHANGED
|
@@ -1,273 +1,273 @@
|
|
|
1
|
-
# Bugzy
|
|
2
|
-
|
|
3
|
-
[](https://www.npmjs.com/package/@bugzy-ai/bugzy)
|
|
4
|
-
[](https://opensource.org/licenses/MIT)
|
|
5
|
-
[](https://nodejs.org)
|
|
6
|
-
|
|
7
|
-
> Open-source AI agent configuration for QA automation
|
|
8
|
-
|
|
9
|
-
Bugzy is a CLI tool that manages AI agent configuration for your AI coding assistant, providing properly configured subagents, tasks, and MCP servers for test automation.
|
|
10
|
-
|
|
11
|
-
## Supported Tools
|
|
12
|
-
|
|
13
|
-
| Tool | Status | Description |
|
|
14
|
-
|------|--------|-------------|
|
|
15
|
-
| **Claude Code** | Recommended | Anthropic's official CLI - full feature support |
|
|
16
|
-
| **Cursor** | Experimental | VS Code-based AI editor |
|
|
17
|
-
| **Codex CLI** | Experimental | OpenAI's terminal-based agent |
|
|
18
|
-
|
|
19
|
-
> **Note**: Cursor and Codex support is experimental. Some features may not work as expected. Claude Code is the recommended and fully tested option.
|
|
20
|
-
|
|
21
|
-
## Features
|
|
22
|
-
|
|
23
|
-
- ✅ **Complete Task Library** - 8 pre-built QA automation tasks
|
|
24
|
-
- ✅ **Flexible Subagents** - Test Runner, Test Code Generator, Test Debugger & Fixer, Team Communicator, Documentation Researcher, Issue Tracker
|
|
25
|
-
- ✅ **Easy Setup** - Interactive CLI configuration (`bugzy setup`)
|
|
26
|
-
- ✅ **Local Execution** - Runs entirely on your machine with Claude Code
|
|
27
|
-
- ✅ **Version Control Friendly** - Configuration stored in git-friendly files
|
|
28
|
-
- ✅ **Language Agnostic** - Works with any project type (Python, Ruby, Go, JavaScript, etc.)
|
|
29
|
-
- ✅ **No Vendor Lock-in** - Full control over customization
|
|
30
|
-
- ✅ **MCP Integration** - Automatic MCP server configuration
|
|
31
|
-
|
|
32
|
-
## Quick Start
|
|
33
|
-
|
|
34
|
-
```bash
|
|
35
|
-
# Install globally
|
|
36
|
-
npm install -g @bugzy-ai/bugzy
|
|
37
|
-
|
|
38
|
-
# Navigate to your project
|
|
39
|
-
cd my-project
|
|
40
|
-
|
|
41
|
-
# Run interactive setup
|
|
42
|
-
bugzy setup
|
|
43
|
-
|
|
44
|
-
# Configure your MCP secrets
|
|
45
|
-
cp .env.example .env
|
|
46
|
-
vim .env # Add your MCP API tokens (Slack, Notion, etc.)
|
|
47
|
-
|
|
48
|
-
# Generate test plan (creates .env.testdata with test data)
|
|
49
|
-
bugzy "/generate-test-plan for [your feature]"
|
|
50
|
-
|
|
51
|
-
# Start a Claude Code session
|
|
52
|
-
bugzy
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
## Example Usage
|
|
56
|
-
|
|
57
|
-
```bash
|
|
58
|
-
# Generate a test plan
|
|
59
|
-
bugzy "generate test plan for user authentication"
|
|
60
|
-
|
|
61
|
-
# Or use slash commands in Claude Code
|
|
62
|
-
/generate-test-plan for checkout flow
|
|
63
|
-
/run-tests for payment processing
|
|
64
|
-
/verify-changes deployed new feature
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
## What Gets Created
|
|
68
|
-
|
|
69
|
-
After running `bugzy setup`, your project will have:
|
|
70
|
-
|
|
71
|
-
```
|
|
72
|
-
your-project/
|
|
73
|
-
├── .bugzy/
|
|
74
|
-
│ ├── config.json # Your subagent configuration (includes selected tool)
|
|
75
|
-
│ └── runtime/
|
|
76
|
-
│ ├── project-context.md # Project information
|
|
77
|
-
│ └── templates/ # Customizable templates
|
|
78
|
-
├── .<tool>/ # Tool-specific directory (.claude/, .cursor/, or .codex/)
|
|
79
|
-
│ ├── commands/ # Task commands (or prompts/ for Codex)
|
|
80
|
-
│ ├── agents/ # Configured subagent prompts
|
|
81
|
-
│ └── mcp.json # MCP server configuration
|
|
82
|
-
├── .env.example # MCP secrets template (empty values)
|
|
83
|
-
├── .env.testdata # Test data with actual values (from /generate-test-plan)
|
|
84
|
-
└── .env # Your actual secrets (gitignored)
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
> **Note**: The directory structure varies by tool. Claude Code uses `.claude/`, Cursor uses `.cursor/`, and Codex uses `.codex/`.
|
|
88
|
-
|
|
89
|
-
## Available Subagents
|
|
90
|
-
|
|
91
|
-
| Subagent | Purpose | Integrations | Required |
|
|
92
|
-
|----------|---------|--------------|----------|
|
|
93
|
-
| **Test Runner** | Execute automated browser tests | Playwright | ✅ Yes |
|
|
94
|
-
| **Test Code Generator** | Generate Playwright test scripts and Page Objects | Playwright | ✅ Yes |
|
|
95
|
-
| **Test Debugger & Fixer** | Debug and fix failing tests automatically | Playwright | ✅ Yes |
|
|
96
|
-
| **Team Communicator** | Send team notifications | Slack, Teams, Email, Local (CLI) | ✅ Yes (auto-configured) |
|
|
97
|
-
| **Documentation Researcher** | Search documentation | Notion | ❌ Optional |
|
|
98
|
-
| **Issue Tracker** | Create and track bugs | Jira Server, Notion, Slack | ❌ Optional |
|
|
99
|
-
|
|
100
|
-
## Available Tasks
|
|
101
|
-
|
|
102
|
-
| Task | Command | Description |
|
|
103
|
-
|------|---------|-------------|
|
|
104
|
-
| Explore Application | `/explore-application` | Explore and document application features |
|
|
105
|
-
| Generate Test Plan | `/generate-test-plan` | Create comprehensive test plans |
|
|
106
|
-
| Generate Test Cases | `/generate-test-cases` | Generate executable test cases |
|
|
107
|
-
| Run Tests | `/run-tests` | Execute automated tests and analyze failures |
|
|
108
|
-
| Verify Changes | `/verify-changes` | Verify product changes via automated testing |
|
|
109
|
-
| Onboard Testing | `/onboard-testing` | Complete workflow: explore → plan → cases → test → fix → report |
|
|
110
|
-
| Handle Message | `/handle-message` | Process team messages from Slack/Teams |
|
|
111
|
-
| Process Event | `/process-event` | Handle automated webhooks and events |
|
|
112
|
-
|
|
113
|
-
## Configuration
|
|
114
|
-
|
|
115
|
-
Bugzy uses a simple configuration format:
|
|
116
|
-
|
|
117
|
-
```json
|
|
118
|
-
{
|
|
119
|
-
"version": "1.0.0",
|
|
120
|
-
"tool": "claude-code",
|
|
121
|
-
"project": {
|
|
122
|
-
"name": "my-project"
|
|
123
|
-
},
|
|
124
|
-
"subagents": {
|
|
125
|
-
"test-runner": "playwright",
|
|
126
|
-
"team-communicator": "slack",
|
|
127
|
-
"documentation-researcher": "notion",
|
|
128
|
-
"issue-tracker": "jira-server"
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
The `tool` field can be `"claude-code"` (default), `"cursor"` (experimental), or `"codex"` (experimental).
|
|
134
|
-
|
|
135
|
-
**Don't edit `config.json` manually** - use `bugzy setup` to reconfigure.
|
|
136
|
-
|
|
137
|
-
> **Note**: When using CLI (`bugzy`), the `team-communicator` is automatically configured to use terminal-based communication. No setup required.
|
|
138
|
-
|
|
139
|
-
## Environment Variables
|
|
140
|
-
|
|
141
|
-
Bugzy loads environment variables for MCP servers and test configuration:
|
|
142
|
-
|
|
143
|
-
```bash
|
|
144
|
-
# MCP Secrets
|
|
145
|
-
SLACK_BOT_TOKEN=xoxb-...
|
|
146
|
-
NOTION_TOKEN=secret_...
|
|
147
|
-
RESEND_API_KEY=re_...
|
|
148
|
-
|
|
149
|
-
# Test Configuration
|
|
150
|
-
TEST_BASE_URL=http://localhost:3000
|
|
151
|
-
TEST_USER_EMAIL=test@example.com
|
|
152
|
-
TEST_USER_PASSWORD=secure-password
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
See [Configuration Guide](./docs/configuration.md) for complete details.
|
|
156
|
-
|
|
157
|
-
## Documentation
|
|
158
|
-
|
|
159
|
-
- 📚 [Getting Started Guide](./docs/getting-started.md) - Installation and first-time setup
|
|
160
|
-
- ⚙️ [Configuration Guide](./docs/configuration.md) - Subagent and environment setup
|
|
161
|
-
- 🤖 [Subagents Guide](./docs/subagents.md) - Available subagents and integrations
|
|
162
|
-
- 📋 [Task Library](./docs/tasks.md) - All available tasks and usage
|
|
163
|
-
- 🏗️ [Architecture](./docs/architecture.md) - How Bugzy works under the hood
|
|
164
|
-
|
|
165
|
-
## Examples
|
|
166
|
-
|
|
167
|
-
Check out example configurations:
|
|
168
|
-
- [Basic Setup](./examples/basic/) - Minimal configuration with just Test Runner
|
|
169
|
-
- [Full Setup](./examples/full/) - All subagents configured
|
|
170
|
-
|
|
171
|
-
## Requirements
|
|
172
|
-
|
|
173
|
-
- **Node.js** v18 or higher
|
|
174
|
-
- **AI Coding Tool**: One of the following installed and configured:
|
|
175
|
-
- **Claude Code** (recommended) - Anthropic's official CLI
|
|
176
|
-
- **Cursor** (experimental) - VS Code-based AI editor
|
|
177
|
-
- **Codex CLI** (experimental) - OpenAI's terminal-based agent
|
|
178
|
-
- **npm** or **yarn** package manager
|
|
179
|
-
|
|
180
|
-
## Breaking Changes (v0.2.0)
|
|
181
|
-
|
|
182
|
-
### New Test Execution Output Format
|
|
183
|
-
|
|
184
|
-
**This is a breaking change.** Bugzy now uses a hierarchical test execution format with custom Playwright reporter:
|
|
185
|
-
|
|
186
|
-
**What's New:**
|
|
187
|
-
- **Custom Bugzy Reporter**: Automatically creates `test-runs/YYYYMMDD-HHMMSS/` structure with `manifest.json`
|
|
188
|
-
- **Execution Retries**: Tracks multiple attempts per test (`exec-1/`, `exec-2/`, `exec-3/`)
|
|
189
|
-
- **Comprehensive Artifacts**: Videos for all tests, traces/screenshots for failures only
|
|
190
|
-
- **Manifest Format**: New `manifest.json` provides complete test run summary and per-test execution details
|
|
191
|
-
|
|
192
|
-
**Migration Path:**
|
|
193
|
-
1. Update to v0.2.0: `npm update -g bugzy`
|
|
194
|
-
2. Run `bugzy setup` in your project to regenerate configuration files
|
|
195
|
-
3. New files will be created:
|
|
196
|
-
- `playwright.config.ts` - Uses custom Bugzy reporter
|
|
197
|
-
- `reporters/bugzy-reporter.ts` - Custom reporter implementation
|
|
198
|
-
- `.bugzy/runtime/templates/test-result-schema.md` - Complete schema documentation
|
|
199
|
-
|
|
200
|
-
**Key Changes:**
|
|
201
|
-
- `/run-tests` now reads `manifest.json` instead of `.last-run.json`
|
|
202
|
-
- Test artifacts organized in `test-runs/{timestamp}/{testId}/exec-{num}/` structure
|
|
203
|
-
- Environment variable `BUGZY_EXECUTION_NUM` controls retry attempts
|
|
204
|
-
- Videos recorded for ALL tests (not just failures)
|
|
205
|
-
- Trace/screenshots only for failures (more efficient)
|
|
206
|
-
|
|
207
|
-
See `.bugzy/runtime/templates/test-result-schema.md` for complete format documentation.
|
|
208
|
-
|
|
209
|
-
## Reconfiguration
|
|
210
|
-
|
|
211
|
-
Need to change your setup? Just run:
|
|
212
|
-
|
|
213
|
-
```bash
|
|
214
|
-
bugzy setup
|
|
215
|
-
```
|
|
216
|
-
|
|
217
|
-
Bugzy will detect your existing configuration and allow you to make changes.
|
|
218
|
-
|
|
219
|
-
## Troubleshooting
|
|
220
|
-
|
|
221
|
-
### Command Not Found
|
|
222
|
-
|
|
223
|
-
```bash
|
|
224
|
-
npm install -g @bugzy-ai/bugzy
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
### Missing Secrets
|
|
228
|
-
|
|
229
|
-
```
|
|
230
|
-
✗ Missing required MCP secrets: SLACK_BOT_TOKEN
|
|
231
|
-
```
|
|
232
|
-
|
|
233
|
-
Add the missing secret to your `.env` file.
|
|
234
|
-
|
|
235
|
-
### AI Tool Not Found
|
|
236
|
-
|
|
237
|
-
Install your selected AI coding tool and ensure it's in your PATH:
|
|
238
|
-
- **Claude Code**: Install from [claude.ai/code](https://claude.ai/code)
|
|
239
|
-
- **Cursor**: Install from [cursor.com](https://cursor.com)
|
|
240
|
-
- **Codex CLI**: Install from [OpenAI](https://github.com/openai/codex)
|
|
241
|
-
|
|
242
|
-
See the [Getting Started Guide](./docs/getting-started.md) for more troubleshooting tips.
|
|
243
|
-
|
|
244
|
-
## FAQ
|
|
245
|
-
|
|
246
|
-
**Q: Do I need a package.json?**
|
|
247
|
-
A: No! Bugzy works with any project type.
|
|
248
|
-
|
|
249
|
-
**Q: Can I use this with Python/Ruby/Go projects?**
|
|
250
|
-
A: Yes! Bugzy is language-agnostic.
|
|
251
|
-
|
|
252
|
-
**Q: Where are my secrets stored?**
|
|
253
|
-
A: In `.env` which is gitignored. `.env.example` (MCP secrets template) and `.env.testdata` (test data) are committed.
|
|
254
|
-
|
|
255
|
-
**Q: Can I customize the tasks?**
|
|
256
|
-
A: You can customize templates in `.bugzy/runtime/templates/`.
|
|
257
|
-
|
|
258
|
-
**Q: How do I update to get new tasks?**
|
|
259
|
-
A: Run `npm update -g @bugzy-ai/bugzy && bugzy setup`
|
|
260
|
-
|
|
261
|
-
## License
|
|
262
|
-
|
|
263
|
-
MIT © Bugzy Team
|
|
264
|
-
|
|
265
|
-
## Contributing
|
|
266
|
-
|
|
267
|
-
Contributions are welcome! Please read our contributing guidelines (coming soon).
|
|
268
|
-
|
|
269
|
-
## Support
|
|
270
|
-
|
|
271
|
-
- **Issues**: [github.com/bugzy-ai/bugzy/issues](https://github.com/bugzy-ai/bugzy/issues)
|
|
272
|
-
- **Discussions**: [github.com/bugzy-ai/bugzy/discussions](https://github.com/bugzy-ai/bugzy/discussions)
|
|
273
|
-
- **Documentation**: [docs.bugzy.dev](https://docs.bugzy.dev)
|
|
1
|
+
# Bugzy
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/@bugzy-ai/bugzy)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
[](https://nodejs.org)
|
|
6
|
+
|
|
7
|
+
> Open-source AI agent configuration for QA automation
|
|
8
|
+
|
|
9
|
+
Bugzy is a CLI tool that manages AI agent configuration for your AI coding assistant, providing properly configured subagents, tasks, and MCP servers for test automation.
|
|
10
|
+
|
|
11
|
+
## Supported Tools
|
|
12
|
+
|
|
13
|
+
| Tool | Status | Description |
|
|
14
|
+
|------|--------|-------------|
|
|
15
|
+
| **Claude Code** | Recommended | Anthropic's official CLI - full feature support |
|
|
16
|
+
| **Cursor** | Experimental | VS Code-based AI editor |
|
|
17
|
+
| **Codex CLI** | Experimental | OpenAI's terminal-based agent |
|
|
18
|
+
|
|
19
|
+
> **Note**: Cursor and Codex support is experimental. Some features may not work as expected. Claude Code is the recommended and fully tested option.
|
|
20
|
+
|
|
21
|
+
## Features
|
|
22
|
+
|
|
23
|
+
- ✅ **Complete Task Library** - 8 pre-built QA automation tasks
|
|
24
|
+
- ✅ **Flexible Subagents** - Test Runner, Test Code Generator, Test Debugger & Fixer, Team Communicator, Documentation Researcher, Issue Tracker
|
|
25
|
+
- ✅ **Easy Setup** - Interactive CLI configuration (`bugzy setup`)
|
|
26
|
+
- ✅ **Local Execution** - Runs entirely on your machine with Claude Code
|
|
27
|
+
- ✅ **Version Control Friendly** - Configuration stored in git-friendly files
|
|
28
|
+
- ✅ **Language Agnostic** - Works with any project type (Python, Ruby, Go, JavaScript, etc.)
|
|
29
|
+
- ✅ **No Vendor Lock-in** - Full control over customization
|
|
30
|
+
- ✅ **MCP Integration** - Automatic MCP server configuration
|
|
31
|
+
|
|
32
|
+
## Quick Start
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
# Install globally
|
|
36
|
+
npm install -g @bugzy-ai/bugzy
|
|
37
|
+
|
|
38
|
+
# Navigate to your project
|
|
39
|
+
cd my-project
|
|
40
|
+
|
|
41
|
+
# Run interactive setup
|
|
42
|
+
bugzy setup
|
|
43
|
+
|
|
44
|
+
# Configure your MCP secrets
|
|
45
|
+
cp .env.example .env
|
|
46
|
+
vim .env # Add your MCP API tokens (Slack, Notion, etc.)
|
|
47
|
+
|
|
48
|
+
# Generate test plan (creates .env.testdata with test data)
|
|
49
|
+
bugzy "/generate-test-plan for [your feature]"
|
|
50
|
+
|
|
51
|
+
# Start a Claude Code session
|
|
52
|
+
bugzy
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Example Usage
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# Generate a test plan
|
|
59
|
+
bugzy "generate test plan for user authentication"
|
|
60
|
+
|
|
61
|
+
# Or use slash commands in Claude Code
|
|
62
|
+
/generate-test-plan for checkout flow
|
|
63
|
+
/run-tests for payment processing
|
|
64
|
+
/verify-changes deployed new feature
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## What Gets Created
|
|
68
|
+
|
|
69
|
+
After running `bugzy setup`, your project will have:
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
your-project/
|
|
73
|
+
├── .bugzy/
|
|
74
|
+
│ ├── config.json # Your subagent configuration (includes selected tool)
|
|
75
|
+
│ └── runtime/
|
|
76
|
+
│ ├── project-context.md # Project information
|
|
77
|
+
│ └── templates/ # Customizable templates
|
|
78
|
+
├── .<tool>/ # Tool-specific directory (.claude/, .cursor/, or .codex/)
|
|
79
|
+
│ ├── commands/ # Task commands (or prompts/ for Codex)
|
|
80
|
+
│ ├── agents/ # Configured subagent prompts
|
|
81
|
+
│ └── mcp.json # MCP server configuration
|
|
82
|
+
├── .env.example # MCP secrets template (empty values)
|
|
83
|
+
├── .env.testdata # Test data with actual values (from /generate-test-plan)
|
|
84
|
+
└── .env # Your actual secrets (gitignored)
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
> **Note**: The directory structure varies by tool. Claude Code uses `.claude/`, Cursor uses `.cursor/`, and Codex uses `.codex/`.
|
|
88
|
+
|
|
89
|
+
## Available Subagents
|
|
90
|
+
|
|
91
|
+
| Subagent | Purpose | Integrations | Required |
|
|
92
|
+
|----------|---------|--------------|----------|
|
|
93
|
+
| **Test Runner** | Execute automated browser tests | Playwright | ✅ Yes |
|
|
94
|
+
| **Test Code Generator** | Generate Playwright test scripts and Page Objects | Playwright | ✅ Yes |
|
|
95
|
+
| **Test Debugger & Fixer** | Debug and fix failing tests automatically | Playwright | ✅ Yes |
|
|
96
|
+
| **Team Communicator** | Send team notifications | Slack, Teams, Email, Local (CLI) | ✅ Yes (auto-configured) |
|
|
97
|
+
| **Documentation Researcher** | Search documentation | Notion | ❌ Optional |
|
|
98
|
+
| **Issue Tracker** | Create and track bugs | Jira Server, Notion, Slack | ❌ Optional |
|
|
99
|
+
|
|
100
|
+
## Available Tasks
|
|
101
|
+
|
|
102
|
+
| Task | Command | Description |
|
|
103
|
+
|------|---------|-------------|
|
|
104
|
+
| Explore Application | `/explore-application` | Explore and document application features |
|
|
105
|
+
| Generate Test Plan | `/generate-test-plan` | Create comprehensive test plans |
|
|
106
|
+
| Generate Test Cases | `/generate-test-cases` | Generate executable test cases |
|
|
107
|
+
| Run Tests | `/run-tests` | Execute automated tests and analyze failures |
|
|
108
|
+
| Verify Changes | `/verify-changes` | Verify product changes via automated testing |
|
|
109
|
+
| Onboard Testing | `/onboard-testing` | Complete workflow: explore → plan → cases → test → fix → report |
|
|
110
|
+
| Handle Message | `/handle-message` | Process team messages from Slack/Teams |
|
|
111
|
+
| Process Event | `/process-event` | Handle automated webhooks and events |
|
|
112
|
+
|
|
113
|
+
## Configuration
|
|
114
|
+
|
|
115
|
+
Bugzy uses a simple configuration format:
|
|
116
|
+
|
|
117
|
+
```json
|
|
118
|
+
{
|
|
119
|
+
"version": "1.0.0",
|
|
120
|
+
"tool": "claude-code",
|
|
121
|
+
"project": {
|
|
122
|
+
"name": "my-project"
|
|
123
|
+
},
|
|
124
|
+
"subagents": {
|
|
125
|
+
"test-runner": "playwright",
|
|
126
|
+
"team-communicator": "slack",
|
|
127
|
+
"documentation-researcher": "notion",
|
|
128
|
+
"issue-tracker": "jira-server"
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
The `tool` field can be `"claude-code"` (default), `"cursor"` (experimental), or `"codex"` (experimental).
|
|
134
|
+
|
|
135
|
+
**Don't edit `config.json` manually** - use `bugzy setup` to reconfigure.
|
|
136
|
+
|
|
137
|
+
> **Note**: When using CLI (`bugzy`), the `team-communicator` is automatically configured to use terminal-based communication. No setup required.
|
|
138
|
+
|
|
139
|
+
## Environment Variables
|
|
140
|
+
|
|
141
|
+
Bugzy loads environment variables for MCP servers and test configuration:
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
# MCP Secrets
|
|
145
|
+
SLACK_BOT_TOKEN=xoxb-...
|
|
146
|
+
NOTION_TOKEN=secret_...
|
|
147
|
+
RESEND_API_KEY=re_...
|
|
148
|
+
|
|
149
|
+
# Test Configuration
|
|
150
|
+
TEST_BASE_URL=http://localhost:3000
|
|
151
|
+
TEST_USER_EMAIL=test@example.com
|
|
152
|
+
TEST_USER_PASSWORD=secure-password
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
See [Configuration Guide](./docs/configuration.md) for complete details.
|
|
156
|
+
|
|
157
|
+
## Documentation
|
|
158
|
+
|
|
159
|
+
- 📚 [Getting Started Guide](./docs/getting-started.md) - Installation and first-time setup
|
|
160
|
+
- ⚙️ [Configuration Guide](./docs/configuration.md) - Subagent and environment setup
|
|
161
|
+
- 🤖 [Subagents Guide](./docs/subagents.md) - Available subagents and integrations
|
|
162
|
+
- 📋 [Task Library](./docs/tasks.md) - All available tasks and usage
|
|
163
|
+
- 🏗️ [Architecture](./docs/architecture.md) - How Bugzy works under the hood
|
|
164
|
+
|
|
165
|
+
## Examples
|
|
166
|
+
|
|
167
|
+
Check out example configurations:
|
|
168
|
+
- [Basic Setup](./examples/basic/) - Minimal configuration with just Test Runner
|
|
169
|
+
- [Full Setup](./examples/full/) - All subagents configured
|
|
170
|
+
|
|
171
|
+
## Requirements
|
|
172
|
+
|
|
173
|
+
- **Node.js** v18 or higher
|
|
174
|
+
- **AI Coding Tool**: One of the following installed and configured:
|
|
175
|
+
- **Claude Code** (recommended) - Anthropic's official CLI
|
|
176
|
+
- **Cursor** (experimental) - VS Code-based AI editor
|
|
177
|
+
- **Codex CLI** (experimental) - OpenAI's terminal-based agent
|
|
178
|
+
- **npm** or **yarn** package manager
|
|
179
|
+
|
|
180
|
+
## Breaking Changes (v0.2.0)
|
|
181
|
+
|
|
182
|
+
### New Test Execution Output Format
|
|
183
|
+
|
|
184
|
+
**This is a breaking change.** Bugzy now uses a hierarchical test execution format with custom Playwright reporter:
|
|
185
|
+
|
|
186
|
+
**What's New:**
|
|
187
|
+
- **Custom Bugzy Reporter**: Automatically creates `test-runs/YYYYMMDD-HHMMSS/` structure with `manifest.json`
|
|
188
|
+
- **Execution Retries**: Tracks multiple attempts per test (`exec-1/`, `exec-2/`, `exec-3/`)
|
|
189
|
+
- **Comprehensive Artifacts**: Videos for all tests, traces/screenshots for failures only
|
|
190
|
+
- **Manifest Format**: New `manifest.json` provides complete test run summary and per-test execution details
|
|
191
|
+
|
|
192
|
+
**Migration Path:**
|
|
193
|
+
1. Update to v0.2.0: `npm update -g bugzy`
|
|
194
|
+
2. Run `bugzy setup` in your project to regenerate configuration files
|
|
195
|
+
3. New files will be created:
|
|
196
|
+
- `playwright.config.ts` - Uses custom Bugzy reporter
|
|
197
|
+
- `reporters/bugzy-reporter.ts` - Custom reporter implementation
|
|
198
|
+
- `.bugzy/runtime/templates/test-result-schema.md` - Complete schema documentation
|
|
199
|
+
|
|
200
|
+
**Key Changes:**
|
|
201
|
+
- `/run-tests` now reads `manifest.json` instead of `.last-run.json`
|
|
202
|
+
- Test artifacts organized in `test-runs/{timestamp}/{testId}/exec-{num}/` structure
|
|
203
|
+
- Environment variable `BUGZY_EXECUTION_NUM` controls retry attempts
|
|
204
|
+
- Videos recorded for ALL tests (not just failures)
|
|
205
|
+
- Trace/screenshots only for failures (more efficient)
|
|
206
|
+
|
|
207
|
+
See `.bugzy/runtime/templates/test-result-schema.md` for complete format documentation.
|
|
208
|
+
|
|
209
|
+
## Reconfiguration
|
|
210
|
+
|
|
211
|
+
Need to change your setup? Just run:
|
|
212
|
+
|
|
213
|
+
```bash
|
|
214
|
+
bugzy setup
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
Bugzy will detect your existing configuration and allow you to make changes.
|
|
218
|
+
|
|
219
|
+
## Troubleshooting
|
|
220
|
+
|
|
221
|
+
### Command Not Found
|
|
222
|
+
|
|
223
|
+
```bash
|
|
224
|
+
npm install -g @bugzy-ai/bugzy
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
### Missing Secrets
|
|
228
|
+
|
|
229
|
+
```
|
|
230
|
+
✗ Missing required MCP secrets: SLACK_BOT_TOKEN
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
Add the missing secret to your `.env` file.
|
|
234
|
+
|
|
235
|
+
### AI Tool Not Found
|
|
236
|
+
|
|
237
|
+
Install your selected AI coding tool and ensure it's in your PATH:
|
|
238
|
+
- **Claude Code**: Install from [claude.ai/code](https://claude.ai/code)
|
|
239
|
+
- **Cursor**: Install from [cursor.com](https://cursor.com)
|
|
240
|
+
- **Codex CLI**: Install from [OpenAI](https://github.com/openai/codex)
|
|
241
|
+
|
|
242
|
+
See the [Getting Started Guide](./docs/getting-started.md) for more troubleshooting tips.
|
|
243
|
+
|
|
244
|
+
## FAQ
|
|
245
|
+
|
|
246
|
+
**Q: Do I need a package.json?**
|
|
247
|
+
A: No! Bugzy works with any project type.
|
|
248
|
+
|
|
249
|
+
**Q: Can I use this with Python/Ruby/Go projects?**
|
|
250
|
+
A: Yes! Bugzy is language-agnostic.
|
|
251
|
+
|
|
252
|
+
**Q: Where are my secrets stored?**
|
|
253
|
+
A: In `.env` which is gitignored. `.env.example` (MCP secrets template) and `.env.testdata` (test data) are committed.
|
|
254
|
+
|
|
255
|
+
**Q: Can I customize the tasks?**
|
|
256
|
+
A: You can customize templates in `.bugzy/runtime/templates/`.
|
|
257
|
+
|
|
258
|
+
**Q: How do I update to get new tasks?**
|
|
259
|
+
A: Run `npm update -g @bugzy-ai/bugzy && bugzy setup`
|
|
260
|
+
|
|
261
|
+
## License
|
|
262
|
+
|
|
263
|
+
MIT © Bugzy Team
|
|
264
|
+
|
|
265
|
+
## Contributing
|
|
266
|
+
|
|
267
|
+
Contributions are welcome! Please read our contributing guidelines (coming soon).
|
|
268
|
+
|
|
269
|
+
## Support
|
|
270
|
+
|
|
271
|
+
- **Issues**: [github.com/bugzy-ai/bugzy/issues](https://github.com/bugzy-ai/bugzy/issues)
|
|
272
|
+
- **Discussions**: [github.com/bugzy-ai/bugzy/discussions](https://github.com/bugzy-ai/bugzy/discussions)
|
|
273
|
+
- **Documentation**: [docs.bugzy.dev](https://docs.bugzy.dev)
|