
adk-git
Writes commit messages and pull request descriptions for the adk-python repository: Conventional Commits types and scopes, subject lines that say why a change was made, and the linked-issue and testing-plan sections the PR template requires. Use when writing or rewording a commit message, squashing commits before a pull request, drafting a PR description, or checking that a change is shaped to land. Don't use for generic git mechanics such as rebasing, resolving conflicts, cherry-picking, or branch surgery; those need no skill. Don't use to judge the content of a change (use adk-review) or for code style and naming (use adk-style).
- Installs
- 84
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/google/adk-python --skill adk-git- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads adk-git automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Commit and Pull Request Conventions
Commit message format
Conventional Commits:
<type>(<scope>): <description>
The type decides where the commit lands in CHANGELOG.md. release-please
generates the changelog from merged commit subjects, so the wrong type either
files the change under the wrong heading or drops it from the release notes
entirely.
| Type | Changelog section |
|---|---|
feat | Features |
fix | Bug Fixes |
perf | Performance Improvements |
docs | Documentation |
refactor, test, build, ci, style, chore | hidden, no entry |
The mapping lives in .github/release-please-config.json. A type that is not
listed there produces no changelog entry at all.
Scope is optional. Use a short module name with no underscores
(fix(cli):, feat(a2a):, fix(sessions):) or leave it off.
Subject line
Say why the change exists, not which lines moved. A reviewer who reads only the subject should understand the motivation.
| Write | Not |
|---|---|
fix(sessions): prevent duplicate events when resuming HITL | fix(sessions): check interrupt_id before appending |
feat(workflow): support parallel tool execution | feat(workflow): add asyncio.gather call in execute_tools_node |
refactor: make graph public for dev UI serialization | refactor: make graph a public field on Workflow |
Rules:
- Imperative mood:
add, notadded. - Lowercase the first word after the colon.
release-pleasecopies the subject intoCHANGELOG.mdverbatim, and the great majority of merged commits are lowercase, so capitalizing makes one line stand out. - No trailing period.
- Keep the subject under about 72 characters. Nothing enforces this, but each commit renders as one changelog line.
- Reference the issue in the body, not the subject:
Fixes #1234orCloses #1234, or the full issue URL when the issue lives in another repository.
Self-check: read the subject back and ask whether it says why someone made the change. If it only names the edit, rewrite it.
Commit body
Add a blank line, then a short concrete explanation. For a feature, show the new capability or a usage line. For a fix, say what caused the failure and how the change addresses it.
feat(workflow): support JSON string parsing in schema validation
Parse JSON strings into dicts or Pydantic models when input_schema or
output_schema is defined on a node.
fix(sessions): prevent duplicate events when resuming HITL
interrupt_id was not checked before appending, so resuming twice appended the
same event twice. Ignore interrupts that were already processed.
Fixes #1234
Before committing
pre-commit reformats and checks staged files, and the same hooks run again in
CI on every pull request, so a commit made with hooks skipped fails there.
pre-commit install # once per clone
pre-commit run --files {paths} # check only what changed
The hooks include isort, pyink, addlicense, mdformat, ruff,
codespell, and repository-local compliance checks; see
.pre-commit-config.yaml. If pre-commit is not installed, point the user at
the adk-setup skill rather than committing unformatted code.
Pull requests
- Every PR except a small documentation or typo fix needs a linked issue.
Put
Closes: #{issue_number}in the PR description, or describe the problem and solution inline following the issue templates. - Fill in the Testing Plan section of
.github/pull_request_template.md, including a summary of passingpytestresults. - Do not merge on GitHub. The
Do Not Merge on GitHubcheck fails on every PR tomainby design; a maintainer lands the change and it is synced back to the repository. GitHub then shows the PR as closed with amergedlabel rather than merged, and the landed commit carries the original authorship. That red check is expected and is not something to fix.
FAQ
What does the adk-git skill do?
Writes commit messages and pull request descriptions for the adk-python repository: Conventional Commits types and scopes, subject lines that say why a change was made, and the linked-issue and testing-plan sections the PR template requires. Use when writing or rewording a commit message, squashing commits before a pull request, drafting a PR description, or checking that a change is shaped to land. Don't use for generic git mechanics such as rebasing, resolving conflicts, cherry-picking, or branch surgery; those need no skill. Don't use to judge the content of a change (use adk-review) or for code style and naming (use adk-style).
How do I install adk-git?
Run npx skills add https://github.com/google/adk-python --skill adk-git in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/adk-git/ (personal) or .claude/skills/adk-git/ (project).
Which AI agents can use adk-git?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is adk-git safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains adk-git?
It is published by google in google/adk-python. It has 84 recorded installs.
More from google/adk-python
adk-debug
google/adk-python
Diagnoses misbehaving ADK agents by inspecting sessions, events, tool calls, and the exact request that reached the model. Covers the adk run CLI and the adk web dev server with its session, trace, and debug HTTP endpoints. Use when an agent returns the wrong answer, ignores a tool or swallows a tool error, hangs, loops, emits raw JSON instead of calling tools, is not discovered by adk web, when a sub-agent cannot see the parent conversation, or when you need the LLM request/response, token counts, or logs for a run. Don't use for how ADK is designed internally (use adk-architecture), for building a new agent or workflow (use adk-agent-builder), for environment or dependency setup failures (use adk-setup), or for lint and style nits (use adk-style).
adk-architecture
google/adk-python
Open the skill to read its SKILL.md instructions.
Popular code quality & workflow skills
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
improve-codebase-architecture
mattpocock/skills
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
handoff
mattpocock/skills
Compact the current conversation into a handoff document for another agent to pick up.
domain-modeling
mattpocock/skills
Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.
codebase-design
mattpocock/skills
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
diagnosing-bugs
mattpocock/skills
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.