release

A release workflow for the pyatlan SDK, a Python software library. It calculates a new version, writes release notes to HISTORY.md, creates a release branch, and commits the changes.

In plain words
What is it for?
Use it for patch, minor, major, or explicitly numbered releases after reviewing and confirming the new version.
Why use it?
It turns several release tasks into a repeatable process and keeps the version, change history, branch, and commit aligned.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/atlanhq/atlan-python/release
Any agent
npx skills add atlanhq/atlan-python --skill release
Clone the repo
git clone --depth 1 https://github.com/atlanhq/atlan-python

Made for: Claude Code, Codex.

Per session 21 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,168 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00021 $0.01168
Opus 5 $0.00010 $0.00584
Sonnet 5 $0.00004 $0.00234
Haiku 4.5 $0.00002 $0.00117

Measured yesterday against content hash e9fe52e5deae, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

release scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/release/SKILL.md · 145 lines

How it starts

The opening of the file, as written. The whole thing — 145 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Create SDK Release

Bumps the SDK version, generates release notes in HISTORY.md, and commits on a dedicated release branch.

Usage

  • /release patch — bump patch version (e.g., 9.2.1 → 9.2.2)
  • /release minor — bump minor version (e.g., 9.2.1 → 9.3.0)
  • /release major — bump major version (e.g., 9.2.1 → 10.0.0)
  • /release 9.3.0 — set an explicit version

If no argument is provided, default to patch.

Instructions

1. Determine the new version

Read the current version from pyatlan/version.txt. Parse the argument to compute the new version:

  • patch: increment the third number, e.g., 9.2.19.2.2
  • minor: increment the second number, reset patch, e.g., 9.2.19.3.0
  • major: increment the first number, reset minor and patch, e.g., 9.2.110.0.0
  • If the argument matches a semver pattern (e.g., 9.3.0), use it directly

Confirm the new version with the user before proceeding.


2. Gather changes since last release

Always gather from origin/main — that's where PRs are merged. The current working branch is irrelevant here.

Step 1 — find the last release commit on main and list everything since it:

git fetch origin main --quiet
git log --oneline $(git log --oneline origin/main | grep "\[release\]" | head -1 | awk '{print $1}')..origin/main

Step 2 — extract PR numbers from merge commits and fetch details for each:

git log --oneline $(git log --oneline origin/main | grep "\[release\]" | head -1 | awk '{print $1}')..origin/main | grep "Merge pull request" | grep -oE '#[0-9]+' | tr -d '#'

Then for each PR number, run:

gh pr view <number> --json title,labels,body,mergedAt

If gh is not authenticated, fall back to the commit subjects alone — do NOT skip this step or silently use an empty list. Note any PRs you couldn't fetch so the user knows the notes may be incomplete.

Step 3 — also run this to catch non-merge commits (direct pushes, fixups, etc.):

git log --oneline --no-merges $(git log --oneline origin/main | grep "\[release\]" | head -1 | awk '{print $1}')..origin/main

Read the full file on GitHub · 145 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 145 lines · 21 tokens per session scan A e9fe52e5deae

Subscribe to this mod's changes

release is a skill published in the GitHub repository atlanhq/atlan-python (22 stars, last pushed 4d ago), licensed Apache-2.0. It adds 21 tokens to every session and 1,168 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

notebooklm

Complete API for Google NotebookLM - full programmatic access including features not in the web UI. Create notebooks, add sources, generate all artifact types, download in multiple formats. Activates on explicit /notebooklm or intent like "create a podcast about X".

teng-lin/notebooklm-py · 57 tokens

vulners-api-python-sdk

Use when modifying, testing, documenting, or reviewing the Vulners Python SDK. Covers the v4 architecture (typed sync/async clients, resource namespaces, bulletin model hierarchy, unasync codegen), the preserved legacy v3 surface, uv-based tooling, the 100% branch-coverage gate, safe API-key handling, and defensive…

vulnersCom/api · 79 tokens

zapier-sdk

Zapier SDK for TypeScript. Programmatic access to 9,000+ apps on a user's behalf via Zapier's OAuth and audit layer. Use when writing code that needs to run actions in third-party apps (send an email, upsert a CRM record, look up a spreadsheet row, post to a chat) without managing per-app OAuth or vendor SDKs.…

zapier/sdk · 151 tokens

servicenow-sdk-docs-builder

Automation skill to generate or update the servicenow-sdk-docs documentation skill by fetching and processing the ServiceNow SDK and Examples repositories. It combines READMEs, extracts code samples, harvests the SDK CLI/auth docs, and creates a self-contained, portable documentation skill.

Knuckles-Team/servicenow-api · 65 tokens

servicenow-sdk-docs

A comprehensive, self-contained collection of ServiceNow SDK (Fluent API) examples and core documentation. Use this when the agent needs to reference how to use the ServiceNow SDK for various components like Tables, REST APIs, UI Actions, Script Includes, etc. All source code is bundled within the skill for…

Knuckles-Team/servicenow-api · 70 tokens

writing-python-code

Enforces Python 3.14 code style, logging rules, type annotations, design patterns, testing strategy, and clean code principles for the appkit project. Use when writing, reviewing, or refactoring Python code, creating new modules, or adding tests.

jenreh/harmonyhub-py · 56 tokens