with one click
changelog
Collect changes since last release and write a changelog entry
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Collect changes since last release and write a changelog entry
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Update Cradle chat-runtime native SDK and protocol integrations. Use when upgrading or validating the vendored Codex app-server runtime/protocol, Kimi Web OpenAPI/AsyncAPI snapshots and generated bindings, or @anthropic-ai/claude-agent-sdk in apps/server; also use when asked to inspect newly generated native APIs for useful Cradle features.
Implement, upgrade, or audit a native Cradle Chat Runtime provider backed by a local process, REST/WebSocket protocol, or provider-specific agent SDK. Use when adding a runtime like Kimi, Codex, Claude Agent, OpenCode, or another provider that needs generated protocol bindings, target-scoped process lifecycle, canonical tool mapping, runtime UI slots, interaction bridges, streaming recovery, and end-to-end smoke verification.
Always use this Skill at the beginning of every response. Use whenever you need to read, inspect, wait on, or mutate Cradle-owned state or workflows, including issues, delegation, sessions, awaits, CI/review waits, timed waits, Work inspection, workspaces and git inspection, Chronicle, automations, usage, observability, skills, agents, profiles, providers, preferences, plugins, or server state. Prefer the generated `cradle` CLI and `cradle man`; NEVER bypass Cradle semantics with direct HTTP or database access, ad hoc scripts, raw registry edits, or polling loops. Use `gh` when Cradle does not own the GitHub surface. Primary Work closed-loop delivery is system-injected on Work threads (`manage_pull_request`), not this skill.
Trigger the public desktop release workflow and monitor it with Cradle
design and review llm agent systems, tool interfaces, and skill boundaries. use when chatgpt needs to decide whether a task should be handled by a prompt, workflow, skill, tool, single-agent loop, or multi-agent system; define tool schemas, instructions, guardrails, evaluation plans, or permission boundaries; or critique an existing agent design for over-orchestration, weak context handling, missing verification, or poor tool design.
Control Cradle's in-app browser via MCP tools. Use when the Claude Agent needs to navigate websites, click elements, type text, take screenshots, read page content, or inspect DOM structure within the Cradle desktop app's embedded browser panel. Triggers on "open URL", "navigate to", "click the button", "fill the form", "take a screenshot", "what's on the page", "scroll down", "wait for element", "press Enter". This is for the IN-APP browser only โ not for external browser automation.
| name | changelog |
| description | Collect changes since last release and write a changelog entry |
| allowed-tools | ["Bash","Read","Write"] |
Collect user-facing changes from the Cradle repo since the last release tag, then write a changelog .md entry for the upcoming version.
/changelog dev-20260624.1 # Write changelog for a specific version
/changelog # Auto-resolve next dev version
/Users/wibus/dev/cradle-app/apps/landing/changelog/.<version>.zh.md โ Chinese (primary)<version>.en.md โ English/Users/wibus/dev/Cradle, not the public cradle-app repo.Each language file:
---
version: dev-20260624.1
date: 2026-06-24
title: Remote Runtime ไธ Claude ่ฎข้
็ปๅฝ
---
> One-line summary of what changed.
## โจ New
- Feature A does X
- Feature B does Y
## ๐ Improvements
- Improvement A
## ๐ Fixes
- Fix A
The English version uses title: Daily Build (or descriptive title) and English body text.
| Field | Required | Description |
|---|---|---|
version | Yes | Must match the release tag exactly. dev-YYYYMMDD.N for dev, X.Y.Z for release. |
date | Yes | ISO date YYYY-MM-DD. |
title | Yes | Short descriptive title summarizing the release. Both dev and release versions use descriptive titles (e.g. Remote Runtime ไธ Claude ่ฎข้
็ปๅฝ). |
> blockquote as the one-line summary. The landing page styles it as a tagline.## headings for categories: โจ New, ๐ Improvements, ๐ Fixes, โก Performance.If the user provided a version argument, use it directly. Otherwise, resolve the next dev version:
cd /Users/wibus/dev/cradle-app
git fetch origin main --tags
DATE=$(date +%Y%m%d)
LAST=$(
git ls-remote --tags --refs origin "refs/tags/dev-${DATE}.*" |
sed -E "s#.*refs/tags/dev-${DATE}\\.([0-9]+)#\\1#" |
sort -n |
tail -1
)
INCREMENT=$(( ${LAST:-0} + 1 ))
VERSION="dev-${DATE}.${INCREMENT}"
The last release tag on the public repo points to the commit that was released. Use it to find the corresponding commit in the private Cradle repo.
cd /Users/wibus/dev/cradle-app
# Find the latest release tag (dev or release)
LATEST_TAG=$(
git tag -l 'dev-*' 'v*' --sort=-version:refname |
grep -E '^(dev-[0-9]{8}\.[0-9]+|v[0-9])' |
head -1
)
# Get the public repo commit that was tagged
PUBLIC_SHA=$(git rev-parse "$LATEST_TAG")
# The private Cradle repo's main branch at that point in time
# Use the private repo's git log directly โ diff against origin/main
cd /Users/wibus/dev/Cradle
git fetch origin main --tags
cd /Users/wibus/dev/Cradle
# Get the latest release version from the public repo
cd /Users/wibus/dev/cradle-app
LATEST_TAG=$(git tag -l 'dev-*' 'v*' --sort=-version:refname | grep -E '^(dev-[0-9]{8}\.[0-9]+|v[0-9])' | head -1)
LATEST_DATE=$(echo "$LATEST_TAG" | sed -E 's/^dev-([0-9]{4})([0-9]{2})([0-9]{2})\..*/\1-\2-\3/')
# For release tags like v1.0.0, get the date from git log
if [[ "$LATEST_TAG" == v* ]]; then
LATEST_DATE=$(git log -1 --format=%ai "$LATEST_TAG" | cut -d' ' -f1)
fi
cd /Users/wibus/dev/Cradle
# Get commits since the last release date
git log --oneline --since="$LATEST_DATE" origin/main --no-merges | head -50
Also check recent PRs for context:
cd /Users/wibus/dev/Cradle
# Recent conventional commit messages (feat/fix/etc)
git log --oneline --since="$LATEST_DATE" origin/main --no-merges \
| grep -E '^\w+ (feat|fix|add|refactor|perf|chore)' | head -30
Analyze the collected commits and write two files in the public repo:
apps/landing/changelog/<version>.zh.md โ Chinese versionapps/landing/changelog/<version>.en.md โ English versionGroup changes into categories:
feat: โ โจ Newfix: โ ๐ Fixesrefactor: / perf: โ ๐ Improvementsadd: โ depends on context (feature or improvement)chore: โ skip unless notableRewrite commit messages into user-friendly descriptions. A commit like fix: claude agent stream cleanup race condition becomes:
ไฟฎๅค Claude Agent ๆตๅผๆธ
็็็ซๆๆกไปถFixed a race condition in Claude Agent stream cleanupBoth files must have the same structure and corresponding content.
Display both written files for review. Do not commit or tag โ the user will run /release when ready.
changelog/*.md
โ (Vite plugin at build time)
index.json + *.md โ deployed to app.cradle.wibus.ren/changelog/
โ (Desktop app fetches on startup)
index.json โ version check โ fetch *.md โ What's New Dialog
โ (CI also reads *.md)
manifest.json releaseNotes field โ Settings page display
apps/landing/vite.config.ts auto-generates index.json from all .md files at build time.manifest.json's releaseNotes field automatically.https://app.cradle.wibus.ren/changelog/..md file after the tag is pushed.