Developer Changelog / Sidekick

Sidekick now considers extensions with "intents only"
for suggestions

Previously, Sidekick only picked up extensions that declared tools. Now extensions that declare only intents are eligible too. However, extensions_summary is missing, the next deploy will fail validation.

On this page
  1. What's changing, in 30 seconds
  2. How it works: the change in Sidekick eligibility
  3. Apps affected vs. not affected
  4. Before vs. after
  5. What to do before your next deploy (4 steps)
  6. Example config: extensions_summary
  7. 5 key points for developers
  8. 3 business use cases
  9. One-line summary for proposals

1What's changing

Previously, for an extension to be eligible for Sidekick, declaring tools was required.
Now, it qualifies if it declares either tools or intents (or both). Extensions with only intents will also be suggested by Sidekick.

Before: intents alone were ignored

admin.app.intent.link / admin.app.intent.render extensions that registered only intents were excluded, so Sidekick did not suggest the app.

After: intents alone are enough

The already-declared [[extensions.targeting.intents]] block alone makes it eligible. The configuration format itself hasn't changed.

2How it works: the change in Sidekick eligibility

Before After Has tools (with or without intents) Intents only No tools Sidekick suggests Skipped App is not suggested Only tools are checked With tools (with or without intents) Intents only No tools Suggested by Sidekick Suggested by Sidekick Eligible immediately extensions_summary required Missing it causes a validation error on deploy Either tools / intents: either one works
Eligible targets are both admin.app.intent.link and admin.app.intent.render .
intents is what you already declare for app actions: [[extensions.targeting.intents]] the same block. No new syntax needed.

3Affected and unaffected apps

Affected

Has intents-only extensions

At least one extension declares intents without tools. It becomes eligible for Sidekick immediately.shopify.app.toml without extensions_summary will make your next deploy fail with a validation error naming that field.

Not affected

All extensions already declare tools

Already eligible, and extensions_summary was already required. Nothing changes.

Not affected

No Sidekick extensions

Apps without Sidekick extensions are unaffected.

There's no way to opt out.There are no feature preview, permission, or scope requirements; it applies to all apps and all stores at once. It isn't tied to an API version either, so pinning an older version won't avoid it.

4Before vs. after

ItemBeforeAfter
Sidekick eligibility requirement tools required Either tools or intents
Intents-only extensions Skipped, not suggested Immediately eligible for suggestions
Configuration format [[extensions.targeting.intents]] No change (the same block is sufficient)
extensions_summary Required only for apps that declare tools Required even with intents only deploy fails without it
Scope — All apps and all stores. Independent of API version; no opt-in required

5What to do before your next deploy (4 steps)

Most apps need no changes. Only if you have an intents-only extension, do the following before your next deploy.

1

Inspect extension.toml

In each shopify.extension.toml , look for intent.link / intent.render entries that have a [[extensions.targeting.intents]] but no tools file.

2

Check extensions_summary

If any match, check inshopify.app.toml , under [sidekick] , for extensions_summary . If it's missing, add it.

3

Deploy to a development store

Against a development store, run shopify app deploy .

4

Verify in Sidekick

Ask Sidekick a question that matches your registered intent and check whether your app is suggested.

6Example config: extensions_summary

Example of shopify.app.toml shown in the article:

[sidekick] extensions_summary = "Search and analyze product reviews, create review request campaigns, and manage review display settings"
Location: not the per-extension shopify.extension.toml , but the app-wide shopify.app.toml , in the [sidekick] section. For details on how to write the text, see the related doc "Add an extensions summary to your app" (not covered in this article).

75 key points for developers

T I

1. Eligibility is now "tools OR intents"

Only the eligibility logic changed; the configuration format did not. intents declarations written for app actions now qualify an app for Sidekick as-is.

2. What breaks is validation at deploy time

Intents only +extensions_summary missing: your next shopify app deploy fails with a validation error naming the missing field. If you deploy automatically via CI/CD, fix this beforehand.

API ver

3. Pinning an API version won't get you out of it

It isn't tied to an API version and has no feature preview or scope conditions. It applies to all stores at once, so the answer to "when will this affect me?" is "your next deploy."

4. Visible immediately, without waiting for a deploy

Intents-only extensions become visible to Sidekick immediately. To be safe, check on a development store how your app appears in suggestions before this matters.

5. Check for three conditions: "target × intents block × no tools file"

admin.app.intent.link or admin.app.intent.render target that has [[extensions.targeting.intents]] , andwith no tools file alongside itare affected. For apps with multiple extensions, check each shopify.extension.toml one by one.

8Three use cases for your business

USE CASE 1

Prevent a failed next deploy in apps you maintain

Challenge
A custom or public app in production has an intents-only extension, so the deploy for the next update release may suddenly fail validation.
Approach
Turn the article's 4 steps into an inspection checklist and review all the apps you maintain. In each affected app's shopify.app.toml add [sidekick] of extensions_summary ahead of time.
Impact
Avoid failed deploys and emergency fixes on release day.
Technical notes
The error on failure names the missing fields. Adding a CI step that deploys to a development store first makes the problem easier to catch.
App
USE CASE 2

Get your app discovered through Sidekick without building tools

Challenge
For apps that only open or render a specific admin screen, building tools just to support Sidekick isn't worth the effort.
Approach
Provide only the intents for app actions (admin.app.intent.link / admin.app.intent.render) and extensions_summary .
Impact
Without implementing tools, your app gets suggested when merchants ask Sidekick questions.
Technical notes
The intent contents and the extensions_summary wording are what Sidekick uses to decide which questions should surface your app. How suggestion accuracy and ranking work isn't documented.
"Analyze reviews "
USE CASE 3

Add a pre-release "Sidekick suggestion test" to your acceptance checks

Challenge
Intents-only extensions became visible to Sidekick immediately, so it hasn't been confirmed whether your app is suggested in the situations you intended.
Action
Add a step to the acceptance checklist: after deploying to a development store, ask Sidekick questions that match the registered intents and confirm that it suggests the app.
Impact
You can show clients and internal teams evidence that the Sidekick entry point is working.
Technical notes
Verify the same way as Step 4 in the article. To avoid gaps, base your sample questions on the features described in extensions_summary (e.g., searching and analyzing reviews).

9One-line summary for proposals

"Sidekick can now suggest apps based on intents alone, even without tools.
It applies to all stores at once, can't be opted out of, and doesn't depend on the API version.
If you have an extension with intents only, before your next deploy, add extensions_summary ."