deepchat-release

Prepare and publish DeepChat releases with versioned branches, bilingual changelogs, and fast-forward tags.

6.3k|728|Updated Feb 14, 2025
One-click install
npx skills add https://github.com/ThinkInAIXYZ/deepchat --skill deepchat-release
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: deepchat-release
Source: https://github.com/ThinkInAIXYZ/deepchat/tree/main/.agents/skills/deepchat-release
Command: npx skills add https://github.com/ThinkInAIXYZ/deepchat --skill deepchat-release

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Releasing a new DeepChat version involves many error-prone manual steps: bumping package.json, writing a bilingual CHANGELOG.md entry, cutting a disposable release branch, running repo checks, and publishing via fast-forward instead of merge commits. This Skill encodes that exact repository workflow so releases are consistent and recoverable.

Core Features & Use Cases

  • Release Metadata Preparation: Updates package.json and CHANGELOG.md on the dev branch, with English bullets first and Chinese bullets second for v1.0.1 onward.
  • Branch and Tag Management: Creates or force-updates release/vX.Y.Z branches, publishes via pnpm run release:ff, creates version tags, and cleans up disposable branches.
  • Recovery Workflows: Handles half-finished releases, such as when the release branch exists but the tag was never created or the changelog was fixed after cutting the branch.
  • Use Case: You ask to "continue releasing 1.0.1, the release branch exists but no tag yet" and the Skill inspects git state, moves the branch to the fixed dev commit, force-pushes with --force-with-lease, and publishes after PR approval.

Quick Start

Ask the assistant to prepare and publish DeepChat release v1.0.2 by updating the version and changelog, cutting the release branch, and following the documented fast-forward flow.

Frequently Asked Questions about deepchat-release

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prepare a new DeepChat release version?

Switch to the dev branch, update package.json to the target version, and add a new CHANGELOG.md section at the top with the current date. Then run pnpm run format, i18n, and lint, commit with a chore(release) message, and push dev.

How do I publish a DeepChat release after PR approval?

Run pnpm run release:ff -- release/vX.Y.Z --tag vX.Y.Z to fast-forward main, then create and push the version tag. Never use the GitHub merge button or the Update branch option on the release PR.

What if the release branch exists but the changelog was fixed afterward?

Commit the metadata fix on dev, push dev, move release/vX.Y.Z to the new HEAD with git branch -f, and force-push with --force-with-lease. The existing PR to main updates in place, then publish normally after approval.

What changelog format does DeepChat require from v1.0.1 onward?

Each section starts with ## vX.Y.Z (YYYY-MM-DD) using the current local date, followed by English bullet points first and Chinese bullet points second. Older changelog sections are preserved unless explicitly rewritten.

When should I not replace an existing release tag?

If a local or remote tag already exists on the wrong commit, stop and ask before replacing or deleting it. The Skill verifies tags with git rev-parse and git ls-remote before taking any action.