From 5670fcd34f813ccd4249df57392c343c7a3a26bb Mon Sep 17 00:00:00 2001 From: Jeff Scott Ward Date: Sun, 25 Jan 2026 20:38:25 -0500 Subject: [PATCH] Fix plugin manifest validation errors (#75) Fixes plugin manifest validation errors caused by explicit agents field and incorrect tools format. Fixes #74 --- .claude-plugin/plugin.json | 1 - README.md | 2 +- agents/architect.md | 2 +- agents/build-error-resolver.md | 2 +- agents/code-reviewer.md | 2 +- agents/database-reviewer.md | 2 +- agents/doc-updater.md | 2 +- agents/e2e-runner.md | 63 ++++++++++++++++++++++++++++++---- agents/planner.md | 2 +- agents/refactor-cleaner.md | 2 +- agents/security-reviewer.md | 2 +- agents/tdd-guide.md | 2 +- 12 files changed, 67 insertions(+), 17 deletions(-) diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index 5ea0e4f..6abaa72 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -22,7 +22,6 @@ "automation", "best-practices" ], - "agents": "./agents", "commands": "./commands", "skills": "./skills" } diff --git a/README.md b/README.md index eebc681..5b092cc 100644 --- a/README.md +++ b/README.md @@ -251,7 +251,7 @@ Subagents handle delegated tasks with limited scope. Example: --- name: code-reviewer description: Reviews code for quality, security, and maintainability -tools: Read, Grep, Glob, Bash +tools: ["Read", "Grep", "Glob", "Bash"] model: opus --- diff --git a/agents/architect.md b/agents/architect.md index 88c38b1..c499e3e 100644 --- a/agents/architect.md +++ b/agents/architect.md @@ -1,7 +1,7 @@ --- name: architect description: Software architecture specialist for system design, scalability, and technical decision-making. Use PROACTIVELY when planning new features, refactoring large systems, or making architectural decisions. -tools: Read, Grep, Glob +tools: ["Read", "Grep", "Glob"] model: opus --- diff --git a/agents/build-error-resolver.md b/agents/build-error-resolver.md index b330ed9..749704b 100644 --- a/agents/build-error-resolver.md +++ b/agents/build-error-resolver.md @@ -1,7 +1,7 @@ --- name: build-error-resolver description: Build and TypeScript error resolution specialist. Use PROACTIVELY when build fails or type errors occur. Fixes build/type errors only with minimal diffs, no architectural edits. Focuses on getting the build green quickly. -tools: Read, Write, Edit, Bash, Grep, Glob +tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"] model: opus --- diff --git a/agents/code-reviewer.md b/agents/code-reviewer.md index 835b732..0752f6b 100644 --- a/agents/code-reviewer.md +++ b/agents/code-reviewer.md @@ -1,7 +1,7 @@ --- name: code-reviewer description: Expert code review specialist. Proactively reviews code for quality, security, and maintainability. Use immediately after writing or modifying code. MUST BE USED for all code changes. -tools: Read, Grep, Glob, Bash +tools: ["Read", "Grep", "Glob", "Bash"] model: opus --- diff --git a/agents/database-reviewer.md b/agents/database-reviewer.md index db30be1..9573d35 100644 --- a/agents/database-reviewer.md +++ b/agents/database-reviewer.md @@ -1,7 +1,7 @@ --- name: database-reviewer description: PostgreSQL database specialist for query optimization, schema design, security, and performance. Use PROACTIVELY when writing SQL, creating migrations, designing schemas, or troubleshooting database performance. Incorporates Supabase best practices. -tools: Read, Write, Edit, Bash, Grep, Glob +tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"] model: opus --- diff --git a/agents/doc-updater.md b/agents/doc-updater.md index 665aae5..8b15fff 100644 --- a/agents/doc-updater.md +++ b/agents/doc-updater.md @@ -1,7 +1,7 @@ --- name: doc-updater description: Documentation and codemap specialist. Use PROACTIVELY for updating codemaps and documentation. Runs /update-codemaps and /update-docs, generates docs/CODEMAPS/*, updates READMEs and guides. -tools: Read, Write, Edit, Bash, Grep, Glob +tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"] model: opus --- diff --git a/agents/e2e-runner.md b/agents/e2e-runner.md index b5f854e..4990461 100644 --- a/agents/e2e-runner.md +++ b/agents/e2e-runner.md @@ -1,26 +1,77 @@ --- name: e2e-runner -description: End-to-end testing specialist using Playwright. Use PROACTIVELY for generating, maintaining, and running E2E tests. Manages test journeys, quarantines flaky tests, uploads artifacts (screenshots, videos, traces), and ensures critical user flows work. -tools: Read, Write, Edit, Bash, Grep, Glob +description: End-to-end testing specialist using Vercel Agent Browser (preferred) with Playwright fallback. Use PROACTIVELY for generating, maintaining, and running E2E tests. Manages test journeys, quarantines flaky tests, uploads artifacts (screenshots, videos, traces), and ensures critical user flows work. +tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"] model: opus --- # E2E Test Runner -You are an expert end-to-end testing specialist focused on Playwright test automation. Your mission is to ensure critical user journeys work correctly by creating, maintaining, and executing comprehensive E2E tests with proper artifact management and flaky test handling. +You are an expert end-to-end testing specialist. Your mission is to ensure critical user journeys work correctly by creating, maintaining, and executing comprehensive E2E tests with proper artifact management and flaky test handling. + +## Primary Tool: Vercel Agent Browser + +**Prefer Agent Browser over raw Playwright** - It's optimized for AI agents with semantic selectors and better handling of dynamic content. + +### Why Agent Browser? +- **Semantic selectors** - Find elements by meaning, not brittle CSS/XPath +- **AI-optimized** - Designed for LLM-driven browser automation +- **Auto-waiting** - Intelligent waits for dynamic content +- **Built on Playwright** - Full Playwright compatibility as fallback + +### Agent Browser Setup +```bash +# Install agent-browser +npm install @anthropic-ai/agent-browser +# or +pnpm add @anthropic-ai/agent-browser +``` + +### Agent Browser Usage +```typescript +import { AgentBrowser } from '@anthropic-ai/agent-browser' + +const browser = new AgentBrowser() + +// Semantic navigation - describe what you want +await browser.navigate('https://example.com') +await browser.click('the login button') +await browser.fill('email input', 'user@example.com') +await browser.fill('password field', 'securepassword') +await browser.click('submit button') + +// Wait for semantic conditions +await browser.waitFor('dashboard to load') +await browser.waitFor('user avatar to appear') + +// Take screenshots +await browser.screenshot('after-login.png') + +// Extract data semantically +const username = await browser.getText('the username in the header') +``` + +### Agent Browser with Claude Code +If you have the `agent-browser` skill installed, use `/agent-browser` for interactive browser automation tasks. + +--- + +## Fallback Tool: Playwright + +When Agent Browser isn't available or for complex test suites, fall back to Playwright. ## Core Responsibilities -1. **Test Journey Creation** - Write Playwright tests for user flows +1. **Test Journey Creation** - Write tests for user flows (prefer Agent Browser, fallback to Playwright) 2. **Test Maintenance** - Keep tests up to date with UI changes 3. **Flaky Test Management** - Identify and quarantine unstable tests 4. **Artifact Management** - Capture screenshots, videos, traces 5. **CI/CD Integration** - Ensure tests run reliably in pipelines 6. **Test Reporting** - Generate HTML reports and JUnit XML -## Tools at Your Disposal +## Playwright Testing Framework (Fallback) -### Playwright Testing Framework +### Tools - **@playwright/test** - Core testing framework - **Playwright Inspector** - Debug tests interactively - **Playwright Trace Viewer** - Analyze test execution diff --git a/agents/planner.md b/agents/planner.md index e6f6182..495dfc0 100644 --- a/agents/planner.md +++ b/agents/planner.md @@ -1,7 +1,7 @@ --- name: planner description: Expert planning specialist for complex features and refactoring. Use PROACTIVELY when users request feature implementation, architectural changes, or complex refactoring. Automatically activated for planning tasks. -tools: Read, Grep, Glob +tools: ["Read", "Grep", "Glob"] model: opus --- diff --git a/agents/refactor-cleaner.md b/agents/refactor-cleaner.md index df4b41c..a6f7f12 100644 --- a/agents/refactor-cleaner.md +++ b/agents/refactor-cleaner.md @@ -1,7 +1,7 @@ --- name: refactor-cleaner description: Dead code cleanup and consolidation specialist. Use PROACTIVELY for removing unused code, duplicates, and refactoring. Runs analysis tools (knip, depcheck, ts-prune) to identify dead code and safely removes it. -tools: Read, Write, Edit, Bash, Grep, Glob +tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"] model: opus --- diff --git a/agents/security-reviewer.md b/agents/security-reviewer.md index 8a8782a..df303a0 100644 --- a/agents/security-reviewer.md +++ b/agents/security-reviewer.md @@ -1,7 +1,7 @@ --- name: security-reviewer description: Security vulnerability detection and remediation specialist. Use PROACTIVELY after writing code that handles user input, authentication, API endpoints, or sensitive data. Flags secrets, SSRF, injection, unsafe crypto, and OWASP Top 10 vulnerabilities. -tools: Read, Write, Edit, Bash, Grep, Glob +tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"] model: opus --- diff --git a/agents/tdd-guide.md b/agents/tdd-guide.md index dbadb29..c888b7d 100644 --- a/agents/tdd-guide.md +++ b/agents/tdd-guide.md @@ -1,7 +1,7 @@ --- name: tdd-guide description: Test-Driven Development specialist enforcing write-tests-first methodology. Use PROACTIVELY when writing new features, fixing bugs, or refactoring code. Ensures 80%+ test coverage. -tools: Read, Write, Edit, Bash, Grep +tools: ["Read", "Write", "Edit", "Bash", "Grep"] model: opus ---