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.
npx skills add darellchua2/opencode-config-template --skill pr-creation-workflow-skillgit clone --depth 1 https://github.com/darellchua2/opencode-config-templateWrote 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/darellchua2/opencode-config-template/pr-creation-workflow-skill)<a href="https://agentmods.dev/skills/darellchua2/opencode-config-template/pr-creation-workflow-skill"><img src="https://agentmods.dev/badge/skills/darellchua2/opencode-config-template/pr-creation-workflow-skill.svg" alt="Measured on agentmods" height="20"></a>- NVIDIA SkillSpector pass
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.00032 | $0.05830 |
| Opus 5 | $0.00016 | $0.02915 |
| Sonnet 5 | $0.00006 | $0.01166 |
| Haiku 4.5 | $0.00003 | $0.00583 |
Grade A, and why
pr-creation-workflow-skill scanned grade A with 1 finding 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 4d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
if curl -s -o /dev/null -w "%{http_code}" "$image_path" | grep -q "200"; then How it starts
The opening of the file, as written. The whole thing — 657 lines — stays where its author put it; the contents beside it link to each section on GitHub.
What I do
I provide a generic PR creation workflow:
- Detect framework/language automatically from project files
- Identify target branch (configurable, not hardcoded)
- Run quality checks (linting, build, test, type check) appropriate for detected framework
- Detect tracking (JIRA tickets or git issues)
- Create PR with comprehensive description linked to tracking
- Handle images (upload local to JIRA, embed URLs)
- Post JIRA comments with PR details and image attachments
- Merge confirmation with JIRA status update
When to use me
Use when:
- Creating PR after completing work
- Need configurable quality checks (not just linting)
- Need PRs linked to JIRA or git issues
- Support multiple merge targets (not just
dev) - Need image attachments in PRs
- Building workflow skill with PR creation
This is a framework skill - provides PR creation logic that other skills extend.
Steps
Step 1: Identify Target Branch
Methods:
- Ask user:
read -p "Enter target branch (main/develop/staging): " TARGET_BRANCH - Detect default:
git symbolic-ref refs/remotes/origin/HEAD - Read config: Check
.git/config
Common targets: main, develop, staging, production, master
Important: Don't hardcode to dev - different projects use different conventions!
Step 2: Detect Framework and Run Quality Checks
2.1: Detect Framework/Language
Detection Logic:
# JavaScript/TypeScript detection
if [ -f "package.json" ]; then
if grep -q '"next"' package.json 2>/dev/null; then
FRAMEWORK="nextjs"
elif grep -q '"@nestjs/core"' package.json 2>/dev/null; then
FRAMEWORK="nestjs"
elif grep -q '"vue"' package.json 2>/dev/null; then
FRAMEWORK="vue"
elif grep -q '"@angular/core"' package.json 2>/dev/null; then
FRAMEWORK="angular"
elif grep -q '"react"' package.json 2>/dev/null; then
FRAMEWORK="react"
elif grep -q '"express"' package.json 2>/dev/null; then
FRAMEWORK="express"
else
FRAMEWORK="node"
fi
# Python detection
elif [ -f "pyproject.toml" ] || [ -f "setup.py" ] || [ -f "requirements.txt" ]; then
if grep -q "django" pyproject.toml 2>/dev/null || grep -q "django" requirements.txt 2>/dev/null; then
FRAMEWORK="django"
elif grep -q "fastapi" pyproject.toml 2>/dev/null || grep -q "fastapi" requirements.txt 2>/dev/null; then
FRAMEWORK="fastapi"
elif grep -q "flask" pyproject.toml 2>/dev/null || grep -q "flask" requirements.txt 2>/dev/null; then
FRAMEWORK="flask"
else
FRAMEWORK="python"
fi
# Java detection
elif [ -f "pom.xml" ]; then
if grep -q "spring-boot" pom.xml 2>/dev/null; then
FRAMEWORK="spring-boot"
else
FRAMEWORK="java-maven"
fi
elif [ -f "build.gradle" ] || [ -f "build.gradle.kts" ]; then
if grep -q "spring-boot" build.gradle* 2>/dev/null; then
FRAMEWORK="spring-boot-gradle"
else
FRAMEWORK="java-gradle"
fi
# .NET detection
elif ls *.csproj 1>/dev/null 2>&1 || ls *.sln 1>/dev/null 2>&1; then
FRAMEWORK="dotnet"
# Go detection
elif [ -f "go.mod" ]; then
FRAMEWORK="go"
# Rust detection
elif [ -f "Cargo.toml" ]; then
FRAMEWORK="rust"
# PHP detection
elif [ -f "composer.json" ]; then
if grep -q "laravel" composer.json 2>/dev/null; then
FRAMEWORK="laravel"
elif grep -q "symfony" composer.json 2>/dev/null; then
FRAMEWORK="symfony"
else
FRAMEWORK="php"
fi
# Ruby detection
elif [ -f "Gemfile" ]; then
if grep -q "rails" Gemfile 2>/dev/null; then
FRAMEWORK="rails"
else
FRAMEWORK="ruby"
fi
else
FRAMEWORK="unknown"
fi
echo "Detected framework: $FRAMEWORK"
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.
- 4d ago First seen · 657 lines · 32 tokens per session scan A ce6474952895
pr-creation-workflow-skill is a skill published in the GitHub repository darellchua2/opencode-config-template (6 stars, last pushed yesterday), licensed Apache-2.0. It adds 32 tokens to every session and 5,830 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
github
GitHub operations via gh CLI or Python API. Use when: listing repos, creating/viewing issues and PRs, checking CI runs, managing releases, or querying the GitHub API. NOT for: general git commands (use git directly), cloning private repos without auth.
feature-flow
Cria o diretório canônico da task (docs/todo/NNN-slug/), a branch e o scaffolding inicial. Use para "criar feature", "iniciar tarefa" ou "abrir task".
github-pr-workflow
Full pull request lifecycle — create branches, commit changes, open PRs, monitor CI status, auto-fix failures, and merge. Works with gh CLI or falls back to git + GitHub REST API via curl.
mcore-split-pr
Split a PR into multiple PRs to reduce the number of required CODEOWNERS reviewer groups.
shiplog
Recap of everything shipped since the last run - cross-repo PRs, security fixes, star deltas, and X traction, synthesized into a digest article and a ready-to-post shiplog in your voice.
llxprt-issue-workflow
Use this skill when asked to address, fix, or work on a GitHub issue in the llxprt-code repository. Covers the complete issue lifecycle - branch setup, gh CLI usage, test-first planning, subagent delegation and review loops, the full verification cycle (including the stepfun-37 smoke test), open code review (ocr), PR…