auditing
Use when reviewing a bundle-plugin for structural issues, version drift, skill quality, workflow integration, or security risks —…
Use when testing a bundle-plugin locally before release — generating dev-marketplace environments, verifying component discovery, running hook smoke tests, and validating cross-platform readiness
Claude Code
$ npx -y skills add OdradekAI/bundles-forge --skill testing --agent claude-code
Codex
$ npx skills add OdradekAI/bundles-forge --skill testing -a codex -y
Cursor
$ npx skills add OdradekAI/bundles-forge --skill testing -a cursor -y
Gemini CLI
$ npx skills add OdradekAI/bundles-forge --skill testing -a gemini-cli -y
GitHub Copilot
$ npx skills add OdradekAI/bundles-forge --skill testing -a github-copilot -y
OpenCode
$ npx skills add OdradekAI/bundles-forge --skill testing -a opencode -y
Windsurf
$ npx skills add OdradekAI/bundles-forge --skill testing -a windsurf -y
name: testing description: "Use when testing a bundle-plugin locally before release — generating dev-marketplace environments, verifying component discovery, running hook smoke tests, and validating cross-platform readiness"
Dynamic verification of a bundle-plugin project: install it locally, confirm components are discoverable, validate hooks fire correctly, and run cross-platform smoke tests. Complements `bundles-forge:auditing` (static analysis) with runtime validation.
**Core principle:** Audit tells you if the structure is correct; testing tells you if it actually works.
**Skill type:** Flexible — adapt the test scope based on target platforms and project maturity.
**Announce at start:** "I'm using the testing skill to verify this plugin works correctly."
The target must be a local bundle-plugin project (has `package.json` + `skills/`). Remote URLs and archives are not supported — testing requires a local working directory.
| Target | Mode | |--------|------| | Project root with multiple platforms | **Full testing** — all 5 test phases | | Project root with single platform | **Platform testing** — phases 1-4 for the target platform | | Single skill directory | **Skill-only testing** — phase 3 (component discovery) only |
---
Generate a temporary dev-marketplace for local installation testing.
1. Create `../dev-marketplace/` adjacent to the project directory 2. Generate `.claude-plugin/marketplace.json` pointing to the project:
{
"name": "<project-name>-dev",
"owner": { "name": "dev" },
"plugins": [
{
"name": "<project-name>",
"source": "../<project-directory-name>"
}
]
}3. Instruct the user:
Dev marketplace created at ../dev-marketplace/ To install locally: /plugin marketplace add ./dev-marketplace /plugin install <project-name>@<project-name>-dev To reload after changes: /plugin marketplace update <project-name>-dev To clean up when done: /plugin marketplace remove <project-name>-dev
Cursor plugins are installed from local paths directly:
To test locally in Cursor: 1. Open Cursor Settings → Extensions → Install from Path 2. Select the project root directory 3. Reload Cursor to pick up changes
See `references/platform-test-guides.md` for platform-specific setup instructions.
---
Verify hooks execute without errors by running them directly.
bash hooks/session-start
**Expected:** Exits 0, prints a one-line prompt containing the project name and available skills. No stderr output.
**Verify output format:**
If the project defines `PreToolUse` or `PostToolUse` hooks in `hooks.json`, run each referenced script directly and verify:
Verify `hooks/openclaw-bootstrap/HOOK.md` has valid YAML frontmatter with `events` declaration, and `handler.js` uses ESM `export default`.
---
Verify that all declared components can be found by the host platform.
For each directory under `skills/`:
For each `.md` file under `agents/`:
For each target platform:
---
Generate a platform-specific test checklist based on `references/platform-test-guides.md` and known limitations from `bundles-forge:scaffolding` — `references/platform-adapters.md`.
| Platform | Limitation | Test | |----------|-----------|------| | Claude Code | Plugin caching breaks `../` paths | Verify no `../` in hook commands or manifest paths | | Cursor | Bootstrap lost after `/clear` | Verify session-start runs independently of prior context | | Codex | No hook bootstrap | Verify AGENTS.md or INSTALL.md has manual setup instructions | | OpenCode | Plugin JS must use ESM | Verify `export default` in `.opencode/plugins/*.js` | | Gemini CLI | Extension needs `contextFileName` | Verify `gemini-extension.json` has `contextFileName` field | | OpenClaw | Hook-pack wiring uncertain | Document as known risk in test report |
---
Generate a test report summarizing all findings.
# Test Report: <project-name> **Date:** YYYY-MM-DD **Scope:** [Full / Platform / Skill-only] **Platforms tested:** [list] ## Results | Phase | Status | Details | |-------|--------|---------| | 1. Local Environment | PASS/FAIL/SKIP | ... | | 2. Hook Smoke Tests | PASS/FAIL/SKIP | ... | | 3. Component Discovery | PASS/FAIL/SKIP | N skills, K agents | | 4. Cross-Platform | PASS/FAIL/SKIP | ... | ## Issues Found ### Critical - (blocks release) ### Warnings - (should fix before release) ## Recommendations - ...
**Report location:** `.bundles-forge/audits/<timestamp>-test-report.md`
---
A toolkit for building bundle-plugins — AI coding plugins organized around collaborative skill workflows — across Claude Code, Cursor, Codex, OpenCode, Gemini CLI, and OpenClaw.
Use when reviewing a bundle-plugin for structural issues, version drift, skill quality, workflow integration, or security risks —…
Use when writing, completing, improving, or adapting SKILL.md and agents/*.md in a bundle-plugin — integrating external skills,…
Use when planning new bundle-plugins, splitting complex skills, combining skills into bundles, or exploring a vague idea about…
Use when optimizing a bundle-plugin or single skill — improving descriptions, reducing tokens, fixing audit findings,…
Use when releasing a bundle-plugin, bumping versions, fixing version drift across manifests, setting up version sync…
Use when generating project structure for new bundle-plugins, adding or removing platform support (Claude Code, Cursor, Codex,…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.