Send feedback or a bug report to the WOZCODE team. Bug reports are tagged for triage and auto-attach session context (session id, anonymous id, OS, arch, Node version).
npx skills add https://github.com/WithWoz/wozcode-plugin --skill woz-feedback
TRIGGER when: user says "send feedback", "share feedback", "i wish woz", "feature request", "report a bug", "woz is broken", "file a bug", or runs /woz-feedback.
Decide the type from the user's words: broken behavior is a bug; feature requests and general thoughts are feedback.
If the user already described their feedback or bug in their message, use it directly. If they invoked /woz-feedback with no content (or said something too vague to act on), ask them — for feedback: "What would you like to share with the WOZCODE team?"; for a bug: "What broke? What did you do, what happened, and what did you expect?" — then wait for their reply before submitting.
Derive subject (one-line headline, ~80 chars max) and body (the full message, verbatim) from the user's words. Don't paraphrase or add boilerplate.
Submit by piping a JSON envelope to stdin. Use a single-quoted heredoc (<<'WOZ_FEEDBACK') so the shell does NO expansion — user text like $(cmd) or backticks is passed through literally and cannot execute. JSON-encode subject and body so embedded ", \\, or newlines survive.
For general feedback (feature requests, thoughts) — this is the default, omit type:
node --no-warnings=ExperimentalWarning ${CLAUDE_PLUGIN_ROOT}/scripts/wozcode-cli.js feedback <<'WOZ_FEEDBACK'
{"subject":"<json-escaped subject>","body":"<json-escaped body>"}
WOZ_FEEDBACK
For a bug report, add "type":"BUG" so it routes to bug triage:
node --no-warnings=ExperimentalWarning ${CLAUDE_PLUGIN_ROOT}/scripts/wozcode-cli.js feedback <<'WOZ_FEEDBACK'
{"type":"BUG","subject":"<json-escaped subject>","body":"<json-escaped body>"}
WOZ_FEEDBACK
The CLI auto-attaches CLAUDE_CODE_SESSION_ID, anonymous telemetry id (unless the user opted out via WOZCODE_TELEMETRY_DISABLED=true), OS release, architecture, and Node.js runtime version. The email is auto-filled from the logged-in account.
On exit 0: tell the user "✅ Sent. Thanks." On non-zero: relay the error verbatim and mention [email protected] as a fallback.
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
Replace with description of the skill and when Claude should use it.
Use when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies
This skill should be used when the user wants to "create a skill", "add a skill to plugin", "write a new skill", "improve skill description", "organize skill content", or needs guidance on skill structure, progressive disclosure, or skill development best practices for Claude Code plugins.
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
Use when creating new skills, editing existing skills, or verifying skills work before deployment
Take withwoz/woz-feedback from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.