Set up with a coding assistant
What the Copy prompt button gives your coding assistant, and how to install the skill it follows.
The fastest setup is one prompt. Copy prompt, on your Home, gives you a text to paste into your coding assistant (Claude Code, Codex, Cursor, GitHub Copilot or another), inside your project.
What the prompt does
The dialog has two steps. First you choose what the assistant should do: a new setup, just the SDK, or a migration from another recitation SDK or an older Quran Lab setup. Then you copy the prompt.
Copying it creates a key for the app and a setup token that is valid for 24 hours. Both go only into the copied text. With them, in a new setup, the assistant:
- finds which of the four SDKs your project needs and installs the newest version;
- puts the key where your platform keeps secrets, out of your repository;
- names the key after your app and registers the setup with Quran Lab;
- explains recording sharing and drafts your directory listing for you to review;
- runs the setup check and tells you in a few lines what it did.
Your Home follows along while it works: prompt copied, assistant signed in, setting up, ready.
The assistant asks you only what your project cannot answer. It can create keys and register a setup; it can never revoke, move or delete anything.
The skill
The prompt links Quran Lab's skill for coding assistants: the whole setup in one file that the assistant follows step by step. The prompt works on its own, and better with the skill installed, which also keeps it current: an installed copy compares its first line with the published version and fetches the file again when it changed.
The skill is version 2026-11-11.5:
https://sdk.quranlab.ai/skills/quranlab-sdk/SKILL.md
It never contains a key.
Install the skill
Run one line from your project's folder.
Claude Code
mkdir -p .claude/skills/quranlab-sdk && curl -fsSL https://sdk.quranlab.ai/skills/quranlab-sdk/SKILL.md -o .claude/skills/quranlab-sdk/SKILL.md
New-Item -ItemType Directory -Force .claude\skills\quranlab-sdk | Out-Null; Invoke-WebRequest https://sdk.quranlab.ai/skills/quranlab-sdk/SKILL.md -OutFile .claude\skills\quranlab-sdk\SKILL.md
Codex
mkdir -p .agents/skills/quranlab-sdk && curl -fsSL https://sdk.quranlab.ai/skills/quranlab-sdk/SKILL.md -o .agents/skills/quranlab-sdk/SKILL.md
New-Item -ItemType Directory -Force .agents\skills\quranlab-sdk | Out-Null; Invoke-WebRequest https://sdk.quranlab.ai/skills/quranlab-sdk/SKILL.md -OutFile .agents\skills\quranlab-sdk\SKILL.md
Cursor
mkdir -p .cursor/skills/quranlab-sdk && curl -fsSL https://sdk.quranlab.ai/skills/quranlab-sdk/SKILL.md -o .cursor/skills/quranlab-sdk/SKILL.md
New-Item -ItemType Directory -Force .cursor\skills\quranlab-sdk | Out-Null; Invoke-WebRequest https://sdk.quranlab.ai/skills/quranlab-sdk/SKILL.md -OutFile .cursor\skills\quranlab-sdk\SKILL.md
GitHub Copilot
mkdir -p .github/skills/quranlab-sdk && curl -fsSL https://sdk.quranlab.ai/skills/quranlab-sdk/SKILL.md -o .github/skills/quranlab-sdk/SKILL.md
New-Item -ItemType Directory -Force .github\skills\quranlab-sdk | Out-Null; Invoke-WebRequest https://sdk.quranlab.ai/skills/quranlab-sdk/SKILL.md -OutFile .github\skills\quranlab-sdk\SKILL.md
Any other assistant: give it the skill's link above.
Projects set up as a Cursor rule or a Copilot instructions file keep working: those files stay at https://sdk.quranlab.ai/skills/quranlab-sdk/quranlab-sdk.mdc and https://sdk.quranlab.ai/skills/quranlab-sdk/quranlab-sdk.instructions.md.
Later changes
The same assistant makes later changes when you ask it: upgrading the SDK when your app's page says an update is out, choosing another response time, pinning a model version, or restricting a key to your app's identity. Each of those has its own Copy prompt button on the app's page.