Borrowing it
Nothing to install: this file belongs to alfredoperez/speckit-companion. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/alfredoperez/speckit-companion/main/.agents/skills/speckit-git-feature/SKILL.mdgit clone --depth 1 https://github.com/alfredoperez/speckit-companionWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/alfredoperez/speckit-companion/speckit-git-feature)<a href="https://agentmods.dev/skills/alfredoperez/speckit-companion/speckit-git-feature"><img src="https://agentmods.dev/badge/skills/alfredoperez/speckit-companion/speckit-git-feature/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/alfredoperez/speckit-companion/speckit-git-feature"><img src="https://agentmods.dev/badge/skills/alfredoperez/speckit-companion/speckit-git-feature.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00016 | $0.00794 |
| Opus 5 | $0.00008 | $0.00397 |
| Sonnet 5 | $0.00003 | $0.00159 |
| Haiku 4.5 | $0.00002 | $0.00079 |
Grade A, and why
speckit-git-feature 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 11d ago.
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.
This is a copy
100% identical to speckit-git-feature — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 72 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Create Feature Branch
Create and switch to a new git feature branch for the given specification. This command handles branch creation only — the spec directory and files are created by the core /speckit.specify workflow.
User Input
$ARGUMENTS
You MUST consider the user input before proceeding (if not empty).
Environment Variable Override
If the user explicitly provided GIT_BRANCH_NAME (e.g., via environment variable, argument, or in their request), pass it through to the script by setting the GIT_BRANCH_NAME environment variable before invoking the script. When GIT_BRANCH_NAME is set:
- The script uses the exact value as the branch name, bypassing all prefix/suffix generation
--short-name,--number, and--timestampflags are ignoredFEATURE_NUMis extracted from the name if it starts with a numeric prefix, otherwise set to the full branch name
Prerequisites
- Verify Git is available by running
git rev-parse --is-inside-work-tree 2>/dev/null - If Git is not available, warn the user and skip branch creation
Branch Numbering Mode
Determine the branch numbering strategy by checking configuration in this order:
- Check
.specify/extensions/git/git-config.ymlforbranch_numberingvalue - Check
.specify/init-options.jsonforbranch_numberingvalue (backward compatibility) - Default to
sequentialif neither exists
Execution
Generate a concise short name (2-4 words) for the branch:
- Analyze the feature description and extract the most meaningful keywords
- Use action-noun format when possible (e.g., "add-user-auth", "fix-payment-bug")
- Preserve technical terms and acronyms (OAuth2, API, JWT, etc.)
Run the appropriate script based on your platform:
- Bash:
.specify/extensions/git/scripts/bash/create-new-feature.sh --json --short-name "<short-name>" "<feature description>" - Bash (timestamp):
.specify/extensions/git/scripts/bash/create-new-feature.sh --json --timestamp --short-name "<short-name>" "<feature description>" - PowerShell:
.specify/extensions/git/scripts/powershell/create-new-feature.ps1 -Json -ShortName "<short-name>" "<feature description>" - PowerShell (timestamp):
.specify/extensions/git/scripts/powershell/create-new-feature.ps1 -Json -Timestamp -ShortName "<short-name>" "<feature description>"
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.
- 11d ago First seen · 72 lines · 16 tokens per session scan A 5a4e239e3c29
speckit-git-feature is a skill published in the GitHub repository alfredoperez/speckit-companion (90 stars, last pushed today), licensed MIT. It adds 16 tokens to every session and 794 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to speckit-git-feature, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
fest-execution
Execute active festival tasks. Use when finding the next task, marking tasks completed/blocked/reset, committing with festival traceability, advancing workflow steps, and validating sequence progress.
campaign-commit
Choose the correct commit command in a camp, also called a campaign. Use when you are about to commit and need to select camp commit, camp p commit, fest commit, or intentional root pointer sync via camp refs-sync.
camp-projects
Manage a camp's projects. Use when committing inside projects/, deciding status/pull/push scope (root vs submodule vs all), or creating/removing project worktrees.
brpr
(devtools plugin) Create a branch, commit changes, push, and open a PR — or just commit+push+PR if already on a feature branch. Links related issues from GitHub or Linear based on project tracker config.
merge
Merge or squash-merge a pull request and report best-effort remote and local source-branch cleanup. Use when user says "merge this PR", "squash merge", "md", "smd", or anything about merging pull requests.
release
Automate the release process. Use when user says "cut a release", "new version", "bump version", "publish release", or anything about versioning and publishing.