ワンクリックで
pre-release-check
Use before any production deployment. Verifies tasks, tests, configs, docs, translations, and iOS Apple-review readiness.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Use before any production deployment. Verifies tasks, tests, configs, docs, translations, and iOS Apple-review readiness.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Use when adding a feature to a production project. Full cycle: brainstorm, plan, implement, docs.
Use when fixing a bug in a production project. Full cycle: diagnose, fix, regression test, review, docs.
Use to batch-validate all skills in this plugin. Runs deterministic repo-wide static checks (frontmatter, command delegation, cross-references, Architect model= rule, orphan references, README<->MemPalace sync) and reports pass/fail per skill.
Use when creating a new project. Bare AI shell by default; interactive menu adds docs / backend-infra / agents on demand.
Use after init-project to fill docs/product/start-project.md with AI research on competitors, monetization, valuation, and marketing.
Use when unsure which skill to use. Lists all vladyslav skills, workflow, and integration.
| name | pre-release-check |
| description | Use before any production deployment. Verifies tasks, tests, configs, docs, translations, and iOS Apple-review readiness. |
Type: Engineer (light)
Final gate before deployment. Five cross-platform checks run as pure bash in scripts/pre-release-checks.sh (~0.5s, 0 LLM tokens). For iOS projects, one additional LLM-heavy check (Apple App Store review) is dispatched separately to the apple-appstore-reviewer skill — this is the only part that legitimately needs model reasoning.
This was a Heavy Engineer skill until v3.1.0. The dispatched Sonnet subagent spent most of its time running grep and counting [x]/[ ] checkboxes — pure mechanics. Now those run in bash; the model only interprets the JSON result and (if iOS) drives the Apple review.
Verify project root. Read CLAUDE.md from pwd. If missing → STOP: "No CLAUDE.md found — are you in the right project? Run /vladyslav:attach-project if this is an existing project without the AI workflow structure."
Verify required input. Confirm docs/plans/tasks.md exists. If missing, ask:
"Required input
docs/plans/tasks.mdis missing. Options: (a) create stub now / (b) abort. Which?"
# Tasks\n\n*to be filled*\n and proceed (the check will then report WARN, which is fine).Resolve plugin root. Glob ~/.claude/plugins/cache/vladyslav-marketplace/vladyslav/*/scripts/pre-release-checks.sh and take the directory two levels up. Fall back to /Volumes/DevSSD/Development/vladyslav-skills (dev clone).
Execute (via the Bash tool):
<plugin-root>/scripts/pre-release-checks.sh \
--pwd <project pwd> \
--plugin-root <plugin-root>
This runs in ~0.5 seconds. It writes docs/release/pre-release-report-<YYYY-MM-DD>.md AND emits JSON to stdout:
{
"status": "success",
"overall": "PASS" | "WARN" | "FAIL",
"platform": "ios" | "web" | "backend" | "plugin" | "other",
"needs_apple_check": true | false,
"report_file": "docs/release/pre-release-report-2026-05-11.md",
"checks": [
{"name": "tasks", "result": "PASS|WARN|FAIL", "severity": "low|medium|high|blocker", "evidence": "..."},
{"name": "tests", "result": "...", "severity": "...", "evidence": "..."},
{"name": "config", "result": "...", "severity": "...", "evidence": "..."},
{"name": "docs", "result": "...", "severity": "...", "evidence": "..."},
{"name": "translations", "result": "...", "severity": "...", "evidence": "..."}
]
}
What each check does (deterministic, no LLM):
tasks — counts - [x] vs - [ ] in docs/plans/tasks.md. PASS if all complete, WARN(high) if incomplete remain, FAIL(blocker) if file missing/empty/stub.tests — auto-detects the test runner (pytest / go test / flutter test / xcodebuild test / swift test / npm test), runs it with a 300s timeout, captures exit code. PASS on exit 0, FAIL(blocker) on non-zero, WARN(medium) if no runner detected.config — greps for REPLACE_ME / TBD / <PROJECT_NAME> / *to be filled* in production config files. FAIL(blocker) if any hits found.docs — checks four key docs (manual-qa.md, rollback.md, user-stories.md, changelog.md) for stub content. Auto-generates changelog.md from git log (since last tag) if missing/stubbed. WARN(low) for remaining stubs.translations — finds .xcstrings/Localizable.strings (iOS), or i18n//locales//messages/ (web). PASS if found, WARN(low) if not.needs_apple_check: true)If the JSON has needs_apple_check: true (platform = ios):
Read <plugin-root>/skills/pre-release-check/references/ios-apple-check.md and apply its checks. This part requires LLM — semantic review against the App Store Guidelines, severity calls based on app-specific facts. Use the apple-appstore-reviewer skill directly (it lives under ~/.claude/skills/apple-appstore-reviewer/) — that gives you the full review checklist.
Capture the Apple-check outcome as a 6th check result: {"name": "apple_review", "result": "...", "severity": "...", "evidence": "..."} and APPEND it to the report file written in Step 1.
For non-iOS projects (needs_apple_check: false) — skip this step entirely.
Print to the user:
═══ Pre-Release Check — <YYYY-MM-DD> ═══
Tasks: ✅/⚠️/❌ <RESULT> — <evidence>
Tests: ✅/⚠️/❌ <RESULT> — <evidence>
Config: ✅/⚠️/❌ <RESULT> — <evidence>
Docs: ✅/⚠️/❌ <RESULT> — <evidence>
Translations: ✅/⚠️/⏭ <RESULT> — <evidence>
Apple review: ✅/⚠️/❌/⏭ <RESULT> — <evidence> ← iOS only
Overall: <PASS | WARN | FAIL> — <one-line reason from the model>
Full report: <report_file from JSON>
Next step:
- PASS or WARN (no blockers) → /vladyslav:write-project-docs
- FAIL → fix blockers (listed above), then re-run /vladyslav:pre-release-check
The one-line reason at the bottom is the only part that genuinely benefits from the model — synthesize what's driving the overall result. Example: "FAIL because 1 task is incomplete and tests have 3 failures; address those before ship." Keep it under 25 words.
docs/release/pre-release-report-<date>.md) plus optionally docs/release/changelog.md (auto-generated). No risk of scope expansion.docs/release/pre-release-report-<YYYY-MM-DD>.md — always written by the script.docs/release/changelog.md — written by the script only if it was missing or contained only a stub. Auto-generated from git log since the last v* tag (via scripts/changelog-from-git.sh).docs/release/apple-review-submission.md — written by the model during Step 2 if the Apple-check produces a submission worksheet.