CtrlK
BlogDocsLog inGet started
Tessl Logo

pakistan-payments-stack

Design and implement production-grade Pakistani payment integrations (JazzCash, Easypaisa, bank/PSP rails, optional Raast) for SaaS with PKR billing, webhook reliability, and reconciliation.

56

Quality

64%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Medium

Suggest reviewing before use

Fix and improve this skill with Tessl

tessl review fix ./plugins/AI-Agents-Safe-Coding-Skills-claude/skills/pakistan-payments-stack/SKILL.md

The canonical home for this skill is pakistan-payments-stack in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

59%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a well-thought-out domain skill that provides genuinely useful, Pakistan-specific payment integration guidance with strong safety rails (requiring verified docs, refusing to fabricate API details). Its main strengths are the concrete data model, webhook handling rules, and reconciliation workflow. Its weaknesses are verbosity in contextual/explanatory sections and a monolithic structure that would benefit from splitting into separate reference files for the data model, provider contract, and operational checklists.

Suggestions

Split the data model, TypeScript interfaces, and reconciliation workflow into separate bundle files (e.g., DATA_MODEL.md, PROVIDER_CONTRACT.md, RECONCILIATION.md) and reference them from the main SKILL.md to improve progressive disclosure.

Trim the 'Verified Context', 'When to Use', and 'Do Not Use' sections—Claude can infer most of these from the skill description and content. Keep only non-obvious constraints.

Add an explicit feedback loop for reconciliation: what actions to take when unresolved items are found (alert thresholds, escalation steps, retry logic).

Consider adding a concrete example of a webhook verification flow (even pseudocode with placeholders for provider-specific fields) to make the webhook handling rules more immediately actionable.

DimensionReasoningScore

Conciseness

The skill contains useful domain-specific information but is verbose in places—explaining what SBP/Raast are at a high level, listing 'when to use' and 'when not to use' sections that are somewhat obvious, and including a compliance note that could be a single line. The data model and interface definitions earn their place, but the overall document could be tightened by ~30%.

3 / 5

Actionability

Provides concrete TypeScript interfaces, a clear data model schema with specific fields, explicit webhook handling steps, and a reconciliation workflow. However, it deliberately avoids providing executable provider-specific code (by design, requiring user-supplied docs), which means Claude can't copy-paste a working integration. The abstraction contract and webhook rules are concrete and actionable.

4 / 5

Workflow Clarity

The webhook handling rules are clearly sequenced with 6 numbered steps including validation. The reconciliation workflow has clear steps with mismatch classification. The overall architecture flow is well-diagrammed. However, the go-live checklist is mentioned as an output format item but not fully specified, and there's no explicit error recovery feedback loop for the reconciliation process (e.g., what happens after unresolved items are found).

4 / 5

Progressive Disclosure

The entire skill is a monolithic document with no bundle files. The data model, provider abstraction, webhook rules, reconciliation logic, security checklist, and compliance notes are all inlined. References to related skills (@stripe-integration, etc.) are mentioned but not linked to actual files. Content like the full data model, the provider abstraction interface, and the reconciliation workflow would benefit from being in separate referenced files.

2 / 5

Total

13

/

20

Passed

Description

70%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is strong in specificity and distinctiveness, clearly carving out a niche for Pakistani payment integrations with named providers and concrete technical concerns. Its main weakness is the absence of an explicit 'Use when...' clause, which would help Claude know precisely when to select this skill. Adding a few more natural trigger synonyms would also improve discoverability.

Suggestions

Add an explicit 'Use when...' clause, e.g., 'Use when the user needs to integrate Pakistani payment gateways, process PKR transactions, or mentions JazzCash, Easypaisa, or Raast.'

Include additional natural trigger synonyms such as 'mobile wallet integration', 'payment gateway Pakistan', or 'online payments Pakistan' to improve matching.

DimensionReasoningScore

Specificity

Lists several specific actions and technologies: 'Design and implement production-grade Pakistani payment integrations' with named providers (JazzCash, Easypaisa, bank/PSP rails, Raast), and mentions specific concerns like 'PKR billing, webhook reliability, and reconciliation.' Minor gaps remain—e.g., it doesn't detail specific sub-actions like refund handling, transaction status polling, or retry logic.

4 / 5

Completeness

The 'what' is clearly stated—design and implement Pakistani payment integrations with specific providers and concerns. However, there is no explicit 'when' clause (e.g., 'Use when...'), which per the rubric guidelines caps this dimension at 3.

3 / 5

Trigger Term Quality

Includes strong natural trigger terms like 'JazzCash', 'Easypaisa', 'Raast', 'PKR', 'Pakistani payment', 'webhook', 'reconciliation', and 'SaaS'. A user asking about Pakistani payment gateways would likely mention these terms. Missing some synonyms like 'mobile wallet', 'payment gateway Pakistan', or 'online payments Pakistan'.

4 / 5

Distinctiveness Conflict Risk

This is a highly specific niche: Pakistani payment integrations with named local providers (JazzCash, Easypaisa, Raast) and PKR currency. It is very unlikely to conflict with generic payment skills or other country-specific payment skills.

5 / 5

Total

16

/

20

Passed

Validation

90%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

10

/

11

Passed

Repository
administrakt0r/AI-Agents-Safe-Coding-Skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.