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 upex-galaxy/agentic-qa-boilerplate --skill acligit clone --depth 1 https://github.com/upex-galaxy/agentic-qa-boilerplateWrote 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/upex-galaxy/agentic-qa-boilerplate/acli)<a href="https://agentmods.dev/skills/upex-galaxy/agentic-qa-boilerplate/acli"><img src="https://agentmods.dev/badge/skills/upex-galaxy/agentic-qa-boilerplate/acli/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/upex-galaxy/agentic-qa-boilerplate/acli"><img src="https://agentmods.dev/badge/skills/upex-galaxy/agentic-qa-boilerplate/acli.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 7 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Anti-Refusal · line 20 Skill instructs the agent to omit warnings, disclaimers, or ethical commentary. Stripping safety caveats hides risk from the user and is a common jailbreak preamble.Fix: Remove instructions that suppress warnings, disclaimers, or ethical commentary. Let the agent surface safety-relevant caveats to the user.
- high Tool Misuse · line 250 Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
- high Tool Misuse · line 251 Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
- high Anti-Refusal · line 421 Skill instructs the agent to omit warnings, disclaimers, or ethical commentary. Stripping safety caveats hides risk from the user and is a common jailbreak preamble.Fix: Remove instructions that suppress warnings, disclaimers, or ethical commentary. Let the agent surface safety-relevant caveats to the user.
- medium Data Exfiltration · line 364 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
- medium Data Exfiltration · line 390 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
- medium Rogue Agent · line 426 Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.Fix: Remove any persistence mechanisms (cron jobs, startup scripts, state files). Skills should not maintain state across sessions without explicit user consent.
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.00324 | $0.11078 |
| Opus 5.5 | $0.00130 | $0.04431 |
| Sonnet 5.5 | $0.00065 | $0.02216 |
| Haiku 4.5 | $0.00032 | $0.01108 |
Grade A, and why
acli 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 16d 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.
| Rich-text custom field on an existing item | **`acli` cannot do this — use REST PUT workaround.** `PUT /rest/api/3/issue/{KEY}` with `{"fields": {customfield_NNNNN: <ADF>}}` via `curl` | `acli workitem edit` hard-rejec How it starts
The opening of the file, as written. The whole thing — 575 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Atlassian CLI (acli)
acli is Atlassian's official command-line tool for Jira Cloud, Confluence Cloud, and org admin operations. It replaces terminal-based Jira automation that previously required raw REST calls, and unifies Jira + Confluence + admin actions behind one binary with one credential store per product.
This skill teaches how to drive acli for any intent: one-off commands, batch mutations, scripted pipelines, and CI jobs. Repo-specific integration (how this skill plugs into the host repo's workflow, TMS modality, project conventions, anti-patterns) lives in the companion file <repo-core>/references/acli-integration.md — load it on demand. See "Navigation" below.
Compact Rules
- DO: pass
--paginate(or an explicit--limit) on any search whose result is counted, iterated, or decided on. Pagination is opt-in and truncation is silent — there is no warning. - DO NOT: read exit 0 as proof a subcommand exists. An unknown subcommand falls back to the parent help and exits 0. Check that the help body actually changed, and never invent a flag — every multi-word flag is kebab-case.
- DO: verify auth status before any bulk mutation. Auth is per-product (jira / confluence / admin / global are separate sessions) and a silent expiry leaves the batch half-applied with no clean rollback.
- DO: pass the non-interactive confirmation flag on every mutating command in CI, or the command hangs waiting on stdin.
- DO NOT: hand-author raw ADF JSON, and do not pass Markdown to a rich-text flag — the CLI never converts it and stores the literal characters. Author in Markdown, convert with
scripts/md-to-adf.ts, pass the ADF. - DO: let the converter's validation gate run on every ADF document before publishing, and round-trip read the field after writing. The gate catches node-level errors; only the read-back catches Jira's silent server-side coercion.
- DO: measure the serialized ADF of every rich-text value (description, comment, rich-text custom field) before writing it:
jq -c . <file>.adf.json | wc -mmust stay at or under 30000. Jira's cap counts the ADF JSON, not the Markdown, and ADF is several times longer. Over budget → STOP and propose which sections move where; never truncate, never split one value across two fields or comments. Detail: "Size budget" under "Publishing rich text". - DO NOT: assume
workitem edittakes custom-field values. It hard-rejects every shape with exit 1; editing a custom field on an EXISTING item works only through the REST PUT path. - DO NOT: expect
workitem editto set an issue's COMPONENTS either. There is no flag and no--from-jsonkey, so the edit succeeds while leaving components untouched and says nothing. Set them at create time, or change them through the same REST PUT path as custom fields. - DO NOT: copy an example out of the vendor's own
--help. Several omit the subcommand the flags actually live on (workitem comment --key …instead ofworkitem comment create --key …) and fail withunknown flag. The forms in this skill's references are the tested ones. - DO NOT: hardcode a
customfield_NNNNNid in a script or in generated output. Resolve it through the host project's slug catalog — ids differ per workspace, slugs travel. - DO NOT: read the Atlassian host from an environment variable. It lives in
.agents/project.yamlunderissue_tracker.atlassian_urland is resolved through the accessor; an inherited copy in the environment goes stale and points scripts at the wrong site. - WHEN creating an issue link:
--out/--inare empirically INVERTED against Jira's semantics —--outtakes the prerequisite,--inthe dependent. Verify the direction by listing the link afterwards, and recreate with swapped flags if it landed backwards. - DO: capture and surface the trace id from any backend failure. It is the only debug signal, and Atlassian Support needs it.
- WHEN the operation is a known blind spot (enumerate custom fields, edit custom-field values, manage workflows / issue types / versions / components, attachments, watchers, add an item to a sprint): route through REST or the opt-in Atlassian MCP rather than forcing the CLI.
- WHEN a REST fallback needs
ATLASSIAN_EMAIL/ATLASSIAN_API_TOKEN: run it inside the.envloader (bunx varlock run --filter ATLASSIAN_EMAIL,ATLASSIAN_API_TOKEN -- sh -c '...') or through a bundled script that loads.envitself (scripts/jira-attach-media.ts). NEVER export them,source .envor print them in the agent's shell. - DO: prefer API-token auth in scripted contexts, and pin the binary to an explicit version in production pipelines — tracking
latesthas caused same-day mass failures.
What ships with it
13 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- evals/evals.json 4.9 KB
- references/adf-authoring-style.md 15 KB
- references/admin.md 3.5 KB
- references/auth.md 10.0 KB
- references/confluence.md 15 KB
- references/gotchas.md 21 KB
- references/output-and-automation.md 11 KB
- references/project-board-sprint.md 14 KB
- references/workitem.md 35 KB
- scripts/jira-attach-media.test.ts 4.0 KB runs code
- scripts/jira-attach-media.ts 11 KB runs code
- scripts/md-to-adf.test.ts 7.5 KB runs code
- scripts/md-to-adf.ts 30 KB runs code
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.
- 16d ago Changed · +17 lines d44be17e1f45
- 18d ago Changed e0fa938a49ca
- 22d ago Changed · +6 lines 7ea7051292b6
- 23d ago Changed · -1 lines da572581dbca
- 1mo ago Changed · -12 tokens per session 3f0a7030cc2e
- 1mo ago Changed · +12 tokens per session e6c0202e20d8
- 1mo ago Changed · +2 lines aa0fb9f9c4e3
- 1mo ago Changed · +3 lines a8880c57fefc
- 1mo ago Changed · +18 lines 2e1246d5e0e2
- 1mo ago First seen · 530 lines · 324 tokens per session scan A 156191c5df92
acli is a skill published in the GitHub repository upex-galaxy/agentic-qa-boilerplate (26 stars, last pushed 3d ago), licensed MIT. It adds 324 tokens to every session and 11,078 once invoked, about $0.0013 per session on Opus 5.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-08-30.
Other skills, from other repositories
discover-product
Run a multi-round discovery (persona / pain / JTBD / scenario / MVP / assumptions) and write DISCOVERY.md.
accept-milestone
Use ONLY when the user explicitly types $accept-milestone . Do not trigger implicitly from generic phrasing.
on-call-best-practices
Manage on-call rotations with sustainable practices, fair scheduling, and effective handoffs. Use this skill when setting up on-call, improving on-call experience, or managing rotations. Activate when: on-call, pagerduty, rotation, schedule, handoff, on-call burden, being paged, night pages, weekend on-call, on-call…
onboarding-checklist
Create comprehensive onboarding plans that set new hires up for success. Use this skill when preparing for new employee arrivals, improving onboarding processes, or building role-specific onboarding. Activate when: onboarding, new hire, first day, new employee, orientation, employee onboarding, 30-60-90.
standup
(forwward) Writes outcome-first status updates leaders actually read, with options + lean recommendation for blockers. Use when the user says "standup", "status report", "progress update", "weekly update", "executive summary", "update on [project]", or pastes project details without specifying intent. Reads git log…
meeting
(forwward) Turns transcripts, rough notes, or voice memos into a clean summary with decisions, action items (owner + deadline), and open questions. Use when the user pastes unstructured notes or asks "summarize this meeting", "meeting notes", "what were the action items", "write up from this call", "debrief", "what…