Install
$ agentstack add skill-vicoa-ai-app-business-skills-app-release-notes ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
app-release-notes
Set the App Store What's New (release notes) field for a version, across every active locale. Release notes render in each store's own language, so the default flow translates the source notes per locale before applying. Only the version's whatsNew is touched — the marketing Description, keywords, and URLs are left untouched. Works for any App Store app you can reach with asc; auth is whatever your asc CLI is configured with.
> What's New ≠ Description. "What's New" (whatsNew) is the short > per-version changelog. The App Store Description is the long marketing > copy — this skill never writes it. If the user's text reads like a changelog > ("Fixed…", "Improved…", "Added…") they almost always mean What's New; confirm > before writing anything else.
Workflow (auto-translate — the default)
- List the active locales and the version it will target:
``bash cd skills/app-release-notes/scripts python3 set_release_notes.py list --app --emit-json ` This auto-resolves the single editable version (state in PREPAREFORSUBMISSION etc.) and prints each locale's current What's New, plus a {locale: text}` scaffold.
- Translate the source notes into every active locale. You (the agent) do
this — write natural release notes in each store's language (e.g. es-ES → Spanish, zh-Hans → Simplified Chinese, ja → Japanese). Keep the source text's bullet style. Save as a JSON map: ``json { "en-US": "• Improve user experience and UI\n• Improve Chinese translation", "es-ES": "• Mejoras en la experiencia de usuario y la interfaz\n• Mejor traducción al chino", "zh-Hans": "• 优化用户体验和界面\n• 改进中文翻译" } ``
- Preview, then apply (the script verifies by reading every value back):
``bash python3 set_release_notes.py set --app --notes-file notes.json --dry-run python3 set_release_notes.py set --app --notes-file notes.json ``
That's it — the version stays in its editable state, ready to submit.
Other modes
- One locale only:
set --app --notes "…" --locale en-US - Same text everywhere (rarely right — reads oddly on non-English stores):
set --app --notes "…" --all
- Explicit version (skip auto-resolution, or when several are editable):
add --version to any command.
- Multiple ASC credentials: add
--profile(global, before the
subcommand internally — the script handles ordering).
Rules & gotchas
- Version must be editable. Only
PREPARE_FOR_SUBMISSION,
DEVELOPER_REJECTED, REJECTED, METADATA_REJECTED, INVALID_BINARY accept metadata edits. If none exist, create a new version first; if several do, the script asks you to pass --version.
- Locale strings must match ASC exactly:
zh-Hans(notzh-Hans-CN),
de-DE (not de), ar-SA (not ar). Unknown locales are rejected with the active list. Add a missing one with asc localizations create --version --locale .
- This is version localizations, not TestFlight. Build/beta release notes
are a different resource (asc build-localizations); this skill sets the public App Store "What's New in this version".
- Verify is built in.
setre-reads each locale after writing and exits
non-zero on any mismatch, so a green run means it actually stuck.
Script reference
scripts/set_release_notes.py
list --app [--version ] [--platform IOS] [--emit-json]set --app [--version ] [--platform IOS] (--notes-file | --notes "…" --all | --notes "…" --locale ) [--dry-run]
Prereqs: the asc CLI installed and authenticated (asc auth …), and python3 (stdlib only). The script shells out to asc; it never handles credentials or translates text itself.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: vicoa-ai
- Source: vicoa-ai/app-business-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.