12 Commits

Author SHA1 Message Date
Bryan Lackey ca6b7e7ec8 feat: modernize agent skill for v5 (#47)
* feat: modernize agent skill for v5

* fix: address review findings for v5 refresh

- Restore $SKILL_DIR path resolution in SKILL.md with explicit export
- Fix -e stdout/stderr truncation at 64KB pipe buffer (flush both before exit)
- Spawn child in caller's cwd so relative paths resolve against the project
- Re-raise signals so shells see interrupt status (SIGINT -> 130)
- Escalate to SIGKILL after 2s when child traps SIGINT/SIGTERM
- handleCookieBanner: .filter({ visible: true }).first() avoids hidden matches
- launchBrowser: --no-sandbox only for Chromium as root, merged with caller args
- takeScreenshot: skip mkdirSync when custom path given
- detectDevServers: numeric sort for customPorts of varying digit counts
- PW_HEADLESS='' now falls through to visible default
- SLOW_MO non-numeric input maps to 0 instead of NaN
- CI: npm ci, smoke via run.js, validate path corrected
- Tests: 4 new executor cases + stderr flush + cwd preservation + smoke cookie banner
2026-08-11 08:30:28 -04:00
Bryan Lackey c82d6e5a39 feat: add custom HTTP headers support (#17)
* feat(helpers): add env-based HTTP header injection

* feat(run): expose header utility in wrapper

* docs(skill): document custom headers feature

* docs: add headers API reference

* chore: bump version to 4.1.0
2025-12-02 07:44:46 -05:00
Bryan Lackey 2687009f83 chore: bump version to 4.0.2 2025-10-21 11:18:26 -04:00
Bryan Lackey 42cf6ed91e docs: improve README clarity and professionalism (v4.0.1)
- Remove gimmicky elements (checkmarks, tagline footer)
- Streamline installation and verification instructions
- Condense all sections for better readability
- Remove changelog section
- Move "What is a Claude Skill?" to end for better flow
- Bump version to 4.0.1

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-19 20:30:27 -04:00
Bryan Lackey def9a4f872 feat: add auto-detection and smart test management (v4.0.0)
Major workflow improvements to eliminate manual configuration:

✨ New Features:
- Auto-detect running dev servers on common ports (3000-3001, 5173, 8080, etc.)
- Smart workflow: use detected server, ask if multiple, or help start one
- Write test scripts to /tmp for automatic cleanup (no project clutter)
- URL parameterization in all examples via TARGET_URL constant

🔧 Changes:
- Added detectDevServers() helper function to lib/helpers.js
- Complete rewrite of SKILL.md with new workflow guidance
- Updated all code examples to use /tmp and parameterized URLs
- Added inline execution documentation for simple tasks
- Enhanced error handling and server detection logic

📖 Documentation:
- New critical workflow section with step-by-step guidance
- Updated execution patterns with server detection
- Improved examples showing auto-detection in action
- Added tips for /tmp usage and URL parameterization

Breaking Changes:
- Skill now expects to run server detection before localhost testing
- Test files written to /tmp instead of skill directory

This eliminates the common issues of hardcoded ports, manual edits,
and test file clutter that users previously experienced.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-19 18:55:36 -04:00
Bryan Lackey 136d685b51 chore: bump version to 3.2.0
Updated version in plugin.json and package.json for new release with corrected plugin structure.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-19 18:33:45 -04:00
Bryan Lackey d8581c04c6 fix: restructure plugin to match Claude Code schema requirements
- Remove invalid skills field from plugin.json
- Create proper skills/playwright-skill/ directory structure
- Move SKILL.md, run.js, lib/, and package.json into skill directory
- Plugin now follows standard Claude Code plugin structure

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-19 18:26:28 -04:00
Bryan Lackey 0072fb1d2a fix: correct plugin.json schema to match Claude Code validation requirements
Updated plugin.json to fix validation errors:
- Changed author from string to object with name field
- Changed repository from object to string URL
- Removed unsupported fields: displayName, dependencies, engines

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-19 18:21:47 -04:00
Bryan Lackey ca6713d72e chore: bump version to 3.1.0
- Update package.json version to 3.1.0
- Update plugin.json version to 3.1.0
- Update marketplace.json plugin version to 3.1.0

New release includes marketplace.json for direct GitHub installation.
2025-10-19 18:07:49 -04:00
Bryan Lackey d1a9ec49c6 feat: add marketplace.json for direct GitHub installation
- Create .claude-plugin/marketplace.json to enable GitHub marketplace installation
- Update README.md with direct installation instructions via /plugin marketplace
- Users can now install with: /plugin marketplace add lackeyjb/playwright-skill
- Update plugin.json version to 3.0.1 to match latest release
- Simplify README by removing plugin management commands section

Installation now works with:
/plugin marketplace add lackeyjb/playwright-skill
/plugin install playwright-skill@playwright-skill
2025-10-19 18:04:07 -04:00
Bryan Lackey 76f42cd405 docs: update to reflect Claude Skill and Plugin terminology
- Update README.md to properly describe this as a Claude Code Skill
- Add 'What is a Claude Code Skill?' section explaining model-invoked behavior
- Update installation instructions to clarify global vs project-specific
- Update project structure to show .claude-plugin/ directory
- Add links to official Claude Skills and Plugins documentation
- Update plugin.json descriptions to emphasize skill nature
- Add claude-skill and model-invoked keywords
- Replace 'plugin' with 'skill' terminology where appropriate

References:
- https://www.anthropic.com/news/skills
- https://docs.claude.com/en/docs/claude-code/skills
- https://docs.claude.com/en/docs/claude-code/plugins
2025-10-19 17:42:53 -04:00
Bryan Lackey abf72b8d19 feat: initial release of Playwright Skill plugin v3.0.0
General-purpose browser automation for Claude Code with:
- Universal executor with proper module resolution
- Visible browser by default for better debugging
- Progressive disclosure pattern (314-line SKILL.md)
- Comprehensive API reference documentation
- Smart temp file cleanup
- Helper library for common tasks
2025-10-19 17:31:15 -04:00