# Publish

> Publish a new version via GitHub Actions. Use when user says "publish", "release", or "bump version".

- **Type:** Skill
- **Install:** `agentstack add skill-skilluse-skilluse-publish`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [skilluse](https://agentstack.voostack.com/s/skilluse)
- **Installs:** 0
- **Category:** [Developer Tools](https://agentstack.voostack.com/c/developer-tools)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [skilluse](https://github.com/skilluse)
- **Source:** https://github.com/skilluse/skilluse/tree/main/.claude/skills/publish
- **Website:** https://skilluse.dev

## Install

```sh
agentstack add skill-skilluse-skilluse-publish
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Publish Release

Automate version bumping and release via GitHub Actions workflow.

## Arguments

```
/publish [version-type]
```

- `/publish` - Auto-detect version type from commits (default: patch)
- `/publish patch` - Bug fixes (0.0.X)
- `/publish minor` - New features (0.X.0)
- `/publish major` - Breaking changes (X.0.0)
- `/publish 1.2.3` - Specific version number

## Workflow

```
1. PRE-FLIGHT CHECK    →  Verify clean working tree, on main branch
       ↓
2. ANALYZE CHANGES     →  Review commits since last tag to suggest version
       ↓
3. BUMP VERSION        →  Update package.json version
       ↓
4. COMMIT & TAG        →  Create release commit and git tag
       ↓
5. PUSH                →  Push commit and tag to trigger CI/CD
```

## Instructions

### 1. Pre-flight Check

```bash
# Verify clean state
git status --porcelain
git branch --show-current

# Get current version and last tag
cat packages/cli/package.json | grep '"version"'
git describe --tags --abbrev=0 2>/dev/null || echo "No tags yet"
```

**STOP if:**
- Working tree has uncommitted changes
- Not on main branch (unless user confirms)

### 2. Analyze Changes Since Last Release

```bash
# Show commits since last tag
git log $(git describe --tags --abbrev=0 2>/dev/null || echo "HEAD~10")..HEAD --oneline

# Look for version indicators
# - "feat:" or "feat!:" → minor or major
# - "fix:" → patch
# - "BREAKING CHANGE" → major
```

Suggest version type based on conventional commits:
| Commit Type | Version Bump |
|-------------|--------------|
| `fix:` | PATCH |
| `feat:` | MINOR |
| `feat!:` or `BREAKING CHANGE` | MAJOR |

### 3. Bump Version

```bash
# Read current version
CURRENT=$(grep '"version"' packages/cli/package.json | sed 's/.*"version": "\(.*\)".*/\1/')
echo "Current version: $CURRENT"

# Calculate new version (or use user-specified)
# For patch: 0.1.5 → 0.1.6
# For minor: 0.1.5 → 0.2.0
# For major: 0.1.5 → 1.0.0
```

Edit `packages/cli/package.json` to update the version.

### 4. Commit and Tag

Use conventional commit format:

```bash
git add packages/cli/package.json
git commit -m "chore(cli): bump version to X.Y.Z"
git tag vX.Y.Z
```

**DO NOT** add Claude Code references or co-author tags.

### 5. Push to Trigger Release

```bash
git push origin main vX.Y.Z
```

Provide the GitHub Actions URL for monitoring:
```
https://github.com/skilluse/skilluse/actions
```

## Version Calculation Helper

```javascript
// Parse semver: "0.1.5" → [0, 1, 5]
const [major, minor, patch] = version.split('.').map(Number);

// Bump logic
patch: `${major}.${minor}.${patch + 1}`
minor: `${major}.${minor + 1}.0`
major: `${major + 1}.0.0`
```

## Error Handling

| Issue | Action |
|-------|--------|
| Uncommitted changes | Ask user to commit or stash first |
| Not on main | Warn and ask for confirmation |
| Tag already exists | Suggest next version |
| Push fails | Check remote access, show error |

## Post-Publish

After workflow completes, users can verify:
```bash
npm install -g skilluse
skilluse --version
```

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [skilluse](https://github.com/skilluse)
- **Source:** [skilluse/skilluse](https://github.com/skilluse/skilluse)
- **License:** MIT
- **Homepage:** https://skilluse.dev

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-skilluse-skilluse-publish
- Seller: https://agentstack.voostack.com/s/skilluse
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
