shopify — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited shopify (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Comprehensive guide for building on Shopify platform: apps, extensions, themes, and API integrations.
Core Components:
Extension Points:
# Install Shopify CLI
npm install -g @shopify/cli@latest
# Verify installation
shopify version# Initialize app
shopify app init
# Start development server
shopify app dev
# Generate extension
shopify app generate extension --type checkout_ui_extension
# Deploy
shopify app deploy# Initialize theme
shopify theme init
# Start local preview
shopify theme dev
# Pull from store
shopify theme pull --live
# Push to store
shopify theme push --developmentSetup:
shopify app init
cd my-appConfigure Access Scopes (shopify.app.toml):
[access_scopes]
scopes = "read_products,write_products,read_orders"Start Development:
shopify app dev # Starts local server with tunnelAdd Extensions:
shopify app generate extension --type checkout_ui_extensionDeploy:
shopify app deploy # Builds and uploads to ShopifyAvailable Types:
checkout_ui_extensionadmin_actionadmin_blockpos_ui_extensionfunction (discounts, payment, delivery, validation)Workflow:
shopify app generate extension
# Select type, configure
shopify app dev # Test locally
shopify app deploy # PublishSetup:
shopify theme init
# Choose Dawn (reference theme) or start freshLocal Development:
shopify theme dev
# Preview at localhost:9292
# Auto-syncs to development themeDeployment:
shopify theme push --development # Push to dev theme
shopify theme publish --theme=123 # Set as liveApp + Theme Extension:
query GetProducts($first: Int!) {
products(first: $first) {
edges {
node {
id
title
handle
variants(first: 5) {
edges {
node {
id
price
inventoryQuantity
}
}
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}import { reactExtension, BlockStack, TextField, Checkbox } from '@shopify/ui-extensions-react/checkout';
export default reactExtension('purchase.checkout.block.render', () => <Extension />);
function Extension() {
const [message, setMessage] = useState('');
return (
<BlockStack>
<TextField label="Gift Message" value={message} onChange={setMessage} />
</BlockStack>
);
}{% for product in collection.products %}
<div class="product-card">
<img src="{{ product.featured_image | img_url: 'medium' }}" alt="{{ product.title }}">
<h3>{{ product.title }}</h3>
<p>{{ product.price | money }}</p>
<a href="{{ product.url }}">View Details</a>
</div>
{% endfor %}API Usage:
Security:
Performance:
Testing:
Detailed guides for advanced topics:
[shopify_init.py](scripts/shopify_init.py) - Initialize Shopify projects interactively
python scripts/shopify_init.pyRate Limit Errors:
X-Shopify-Shop-Api-Call-Limit headerAuthentication Failures:
Extension Not Appearing:
Webhook Not Receiving:
Official Documentation:
Tools:
API Versioning:
Note: This skill covers Shopify platform as of January 2025. Refer to official documentation for latest updates.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.