Status: beta (v3.10.0.0). Skills work end-to-end and ship behind a versioned plugin, but expect rough edges and breaking changes between minor versions while we shake out the rest of the workflow with real instructional designers. See CHANGELOG.md for what's new in the current release. Tell us what's broken or missing.
Decades of research say elaborated feedback improves learning. Cognitive load theory has been replicated for 30 years. Constructive alignment measurably raises grades. The evidence is strong, but most course design tools don't make it easy to apply.
idstack is an open source set of skills for evidence-based instructional design that brings peer-reviewed research into your workflow. Runs in Claude Code. Rather than summarizing papers, idstack audits alignment matrices, flags cognitive load issues, classifies objectives against Bloom's taxonomy, and references the empirical evidence behind every recommendation.
Skills covering the full lifecycle: analyze, design, build, export. One shared project manifest that remembers your course across sessions. Every recommendation tagged with its evidence tier, from T1 (meta-analyses) to T5 (expert opinion), so you always know how strong the backing is.
Free, MIT licensed, open source. Available as a Claude Code plugin and a Chrome Extension. Have feedback or a feature request?
- Install idstack (30 seconds, see below). No terminal? Use the Claude desktop app.
- Run
/idstack:startin a folder for your course. It checks your setup and starts the correct skill. - If you imported a course, run
/idstack:course-quality-reviewto see what the evidence says. - Stop there. You'll know if this is for you.
You: /idstack:course-import
idstack: How do you want to import your course?
A) IMS Common Cartridge file (.imscc)
B) Paste course documents
C) Canvas API
D) PDF or document file
E) SCORM package (.zip)
You: C — here's my Canvas URL and access token.
idstack: Connected. Pulling course data...
Found: 12 modules, 8 assignments, 4 discussions, 6 outcomes.
## Import Quality Triage
Found 4 flags during import:
⚠ 12 modules, only 4 have stated learning objectives
⚠ All 8 assessments are auto-graded quizzes (no rubrics)
[Assessment-8] [T1] — elaborated feedback produces larger
learning gains than correctness-only
⚠ No collaborative activities beyond discussion forums
[Online-15] [T4] — low social presence predicts weaker outcomes
⚠ No accessibility information for video content
6 objectives pre-classified with Bloom's taxonomy.
12 modules mapped to task analysis.
Manifest saved to .idstack/project.json.
Run /idstack:course-quality-review for a full evidence-based audit.
You: /idstack:course-quality-review
idstack: Reading your manifest... I have 12 modules, 6 objectives,
and 8 assessments from your Canvas import.
## Course Quality Review
**Overall Score: 62/100**
### QM Structural Review
| Standard | Status | Finding |
|-----------------------|--------|----------------------------|
| Course Overview | pass | Clear syllabus, nav set |
| Learning Objectives | flag | 8 modules lack objectives |
| Assessment | flag | No rubrics, no alignment |
| Instructional Materials| pass | Materials current |
| Learning Activities | flag | No active learning design |
| Course Technology | pass | Tools used purposefully |
| Learner Support | flag | No support section found |
| Accessibility | flag | No alt formats for video |
### Community of Inquiry Presence
- Teaching Presence: 7/10 — strong content, weak facilitation
- Social Presence: 3/10 — no group work, minimal peer interaction
- Cognitive Presence: 5/10 — surface-level activities, no inquiry cycle
This course meets 3 of 8 QM standards but scores 3/10 on social
presence. Courses with low social presence show weaker learning
outcomes in online settings [Online-15] [T4].
### Top 3 Recommendations
1. Add rubrics to all assessments with elaborated feedback
[Assessment-8] [T1] — Run /idstack:learning-objectives
2. Design collaborative activities for at least 4 modules
[Online-15] [T4]
3. Add learner support section with office hours, tutoring,
and technical help resources
You had a course in Canvas. Now you have an evidence-based audit with specific recommendations, evidence tiers, and cross-references to the skills that fix each issue. Two commands. Or just run /idstack:pipeline and it chains the 8-skill linear pipeline automatically (course-import branches in for existing courses, learn is a separate cross-project memory utility, and start is the first-run guide. These three sit outside the linear chain, which is why pipeline runs 8 of the 12 skills).
Requirements: Claude Code — desktop app, web app, or CLI — and python3 3.9 or later.
Not using Claude Code? The idstack skills run in Claude Code only. Without Claude Code, use the Chrome extension. The skills are plain Markdown, so you can fork this repo and adapt it for a different agent, for example Codex or Antigravity. idstack does not support or test those forks.
Paste this into your terminal:
git clone https://github.com/savvides/idstack.git
cd idstack
./setup./setup registers the repo as a Claude Code plugin marketplace and installs it. Restart Claude Code if it was already running — plugins load at session start. You should see /idstack:<skill> commands in the slash picker.
Let Claude Code do it for you
If you'd rather not touch the terminal, paste this into Claude Code:
Install idstack: run
git clone https://github.com/savvides/idstack.git && cd idstack && ./setup, then tell me it's installed and show me the available skills.
Claude clones the repo, runs setup, and confirms the skills are registered.
Download ZIP (no git required)
- Click the green "Code" button on GitHub, then "Download ZIP"
- Unzip the file
- Open a bash shell: Terminal on macOS or Linux; WSL or Git Bash on Windows.
./setupis a bash script, so PowerShell andcmdcannot run it. - Navigate to the folder:
cd path/to/idstack - Run:
./setup
Project-scoped install (one project only)
./setup --localAll setup flags
./setup # Register the plugin with Claude Code at user scope
./setup --local # Install at project scope (./.claude/) instead of user scopeSetup is idempotent — re-run it any time.
You should see:
regenerated skill files
Setup installs idstack (scope: user)...
source: /path/to/idstack
Setup installed idstack in Claude Code (scope: user).
If Claude Code is open, close it and open it again.
Claude Code reads plugins only when a session starts.
To use a skill, run /idstack:<skill>
If you do not know where to start:
/idstack:start
If you have a course, import it and examine it:
/idstack:course-import -> /idstack:course-quality-review
To start a new course:
/idstack:needs-analysis
Run the full pipeline:
/idstack:pipeline
All skills: start, needs-analysis, learning-objectives, assessment-design,
course-builder, course-quality-review, accessibility-review,
red-team, course-export, course-import, pipeline, learn
More information: https://idstack.org
You can use idstack in the Code tab of the Claude desktop app on a Mac. You do not need a terminal.
- Open the Claude desktop app and select the Code tab.
- Make a folder for your course, for example
Documents/BIO-101. Start a new session and select that folder with the folder button below the message box. - Paste this line in the message box and press Return:
/plugin marketplace add savvides/idstack - Click + next to the message box, then Add plugins. Select idstack and install it.
- Start a new session. Select the course folder again with the folder button. Claude Code loads a plugin only when a session starts.
- Type
/idstack:startand press Return. idstack checks your setup, then asks how you want to start.
Each skill gives you a link to its report. Click the link to open the report in the app.
macOS asks you to install developer tools? idstack needs python3. Click Install in the macOS window. When the installation is complete, type /idstack:start again.
If you or your instructional designers don't use the terminal, idstack is available as a native Chrome Side Panel extension in the Chrome Web Store:
- Install idstack from the Chrome Web Store.
- Pin the extension to your Chrome toolbar.
- Navigate to any Canvas assignment, syllabus, or Google Doc and click the idstack icon to open the Side Panel.
- Click "Audit Page with Evidence" for instant Bloom's classification, constructive alignment reviews, and 1-click improved rubrics.
If you switch tabs while the panel is open, click the idstack icon again so it can read the new tab. This isn't needed on Canvas pages at instructure.com or on a Canvas site you've already allowed.
If developing or modifying the extension locally:
- Open Chrome and navigate to
chrome://extensions/. - Enable Developer mode in the top-right corner.
- Click Load unpacked and select the
extension/directory from this repo.
When viewing any Canvas course homepage or modules list (/courses/:id), idstack automatically detects the course environment and presents an "Audit Full Course" button:
- Zero Developer Tokens Required: Reads the course syllabus and assignment descriptions through Canvas's API using your active browser session. No Canvas API keys, LMS admin setup, or command line required.
- Course-level findings: Reviews the syllabus and assignments together for alignment gaps, cognitive demand across Bloom's levels, and prioritized fixes, shown in the same results view as a page audit.
- Export Ready: Add the course audit to your Course Dossier or export it as Markdown to share with instructional design teams and faculty stakeholders.
On Canvas hosted outside instructure.com (for example, a university's own domain), Chrome asks once, for that site only, when you first click "Audit Full Course".
Audit multiple pages across a course or syllabus and accumulate findings into a structured institutional deliverable:
- Incremental Dossier Accumulation: Click "Add to Dossier" on any page audit (assignments, pages, syllabi, rubrics, Google Docs). The header dossier badge tracks your collected course components across browsing sessions.
- 1-Click Compiled Markdown Export (
.md): Open the Dossier drawer to download a synthesized multi-page Markdown report (idstack-course-dossier-<title>.md) containing executive summaries, cognitive demand tables, itemized empirical citations (T1–T5), and improved rubric drafts. - Clipboard Ready: Copy the compiled Markdown report directly to your clipboard for pasting into LMS course notes, Google Docs, Notion, or faculty review tickets.
Without a key, the extension runs in demo mode: every audit returns the same sample findings, whatever the page says. To get real audits:
- Obtain a free API key from Google AI Studio.
- In the idstack Side Panel, click the Settings (gear) icon in the top header.
- Paste your API key into the input field and click Save Settings.
- Each audit sends the page's title and text (or, for a full-course audit, the syllabus and assignments) straight from your browser to Google's API; no idstack server is involved. On Google's free tier, Google may use that content to improve its products, so read PRIVACY.md before auditing anything that names students.
To create a distribution bundle:
./bin/package-extension.shProduces build/idstack-chrome-extension-v<version>.zip (version from extension/manifest.json), ready for submission to the Chrome Web Store Developer Console.
idstack turns Claude Code into an evidence-based instructional design team. Each skill is a specialist. All invoked via /idstack:<skill>.
| Skill | Your specialist | What they do |
|---|---|---|
/idstack:start |
Guide | The first skill to run in a course folder. It makes sure that idstack can run, then starts the correct skill: course import, needs analysis or the pipeline. It writes no report. |
/idstack:needs-analysis |
Needs Analyst | Three-level assessment before you build anything. Organizational analysis (is training even the right intervention?), task analysis (what must learners do?), learner profiling (prior knowledge, not learning styles). Creates the project manifest. Auto-detects imported courses and runs a design-fit check instead of the training-decision gate. Writes .idstack/exports/<course-slug>/needs-analysis.md. |
/idstack:learning-objectives |
Curriculum Designer | Writes measurable objectives with revised Bloom's taxonomy. Classifies on two dimensions (knowledge type + cognitive process). Bidirectional alignment check: does each objective have a matching activity AND assessment? Flags gaps. Writes .idstack/exports/<course-slug>/learning-objectives.md. |
/idstack:assessment-design |
Assessment Architect | Designs assessments aligned to Bloom's levels with evidence-based rubrics and feedback strategies. Applies Nicol's 7 principles of good feedback. Builds formative checkpoints before summative assessments. For imported courses, switches to audit mode: classifies existing rubric criteria on Bloom's, compares to ILOs, and surfaces alignment gaps without proposing new assessments. Writes .idstack/exports/<course-slug>/assessment-design.md. |
/idstack:course-import |
LMS Bridge | Imports your course from any LMS or authoring tool. Five input methods: IMS Common Cartridge, pasted documents, Canvas API, PDF upload (Articulate Rise, Storyline), or SCORM package. Quick-scan quality flags, auto-maps modules to task analysis, pre-classifies objectives with Bloom's. Writes .idstack/exports/<course-slug>/course-import.md. |
/idstack:course-builder |
Content Generator | Generates complete course content from the manifest: syllabus, module pages, assignment descriptions, and rubric documents. Content follows cognitive load principles. Includes adversarial spec review (auto-validates alignment). For imported courses, switches to gap-fill mode: generates only the artifacts upstream skills flagged as missing, instead of regenerating what already exists in the cartridge. Writes .idstack/exports/<course-slug>/course-builder.md. |
/idstack:course-export |
LMS Publisher | Exports to any LMS. Generates IMS Common Cartridge (.imscc), SCORM 1.2 packages, or pushes directly to Canvas via API. Shows readiness dashboard before export. The output IS the course. |
/idstack:course-quality-review |
Quality Auditor | Full QM-aligned audit plus Community of Inquiry presence layer. 8 structural standards, 3 presence dimensions (teaching, social, cognitive), constructive alignment audit. Parallel sub-agents for speed. Writes .idstack/exports/<course-slug>/course-quality-review.md. |
/idstack:accessibility-review |
Accessibility Reviewer | WCAG 2.1 AA compliance audit plus Universal Design for Learning (UDL 3.0) enhancement review. Two-tier output: "Necessary changes" for accessibility violations, "Recommended changes" for UDL recommendations. Parallel sub-agents for WCAG and UDL. Writes .idstack/exports/<course-slug>/accessibility-review.md. |
/idstack:red-team |
Adversarial Auditor | Assumes your course is broken and tries to prove it. Runs in a clean-context sub-agent so the audit can't inherit build-bias from the parent. Five dimensions in parallel: alignment stress test, evidence verification, cognitive load analysis, learner persona simulation, prerequisite chain integrity. Writes .idstack/exports/<course-slug>/red-team.md and returns to the parent for a triage-and-fix loop (Critical / Critical+High / All / Skip). Produces a confidence score. |
/idstack:pipeline |
Orchestrator | Chains the 8-skill linear pipeline automatically. Auto-skips completed skills. Shows pipeline status. Pause anytime, resume later. Produces .idstack/exports/<course-slug>/index.md, a Markdown course dashboard linking to every per-skill report, with readiness scores, top recurring issues, evidence themes, and where to start. |
/idstack:learn |
Memory Manager | Search, list, delete, promote, and export project learnings. Supports cross-project intelligence. |
Each skill feeds into the next. The project manifest is the thread.
Skill names in the diagram below are shown unprefixed to keep the columns readable. To run a skill, use the namespaced form: /idstack:<skill>.
EXISTING COURSE NEW COURSE
/course-import /needs-analysis
IMS Cartridge, SCORM, PDF, Canvas API Three-level needs assessment
Quick-scan quality flags Is training the right intervention?
Pre-classify objectives Task analysis + learner profile
│ │
└──────────────┬───────────────────────────┘
│
▼
/learning-objectives
Write measurable ILOs
Bloom's classification
Alignment check
│
▼
/assessment-design
Design assessments per Bloom's level
Evidence-based rubrics + feedback
Formative checkpoints
│
▼
/course-builder
Generate syllabus, modules, assignments
Content adapts to learner expertise
│
▼
/course-quality-review
QM structural audit (8 standards)
CoI presence analysis
Evidence-tiered recommendations
│
▼
/accessibility-review
WCAG 2.1 AA compliance
UDL 3.0 enhancement
Accessibility score (0-100)
│
▼
/red-team
Adversarial stress test
Persona simulation
Confidence score (0-100)
│
▼
/course-export
IMS Common Cartridge (.imscc)
SCORM 1.2 package
or Canvas API push
Any skill works independently. Run /idstack:pipeline to chain them all, or invoke any skill directly. The pipeline adds context but isn't required.
BUILD (contributors only; installs ship the generated SKILL.md files)
skills/<name>/SKILL.md.tmpl ──────────┐
templates/preamble.md ────────────────┤
templates/manifest-schema.md ─────────┼──▶ bin/idstack-gen-skills
templates/snippets/idstack-resolve.sh ┘ │
▼
skills/<name>/SKILL.md
INSTALL
./setup ──▶ registers .claude-plugin/plugin.json with Claude Code
└─▶ 12 skills, invoked as /idstack:<skill>
bin/idstack-doctor diagnoses the install
(bin/lib/plugin-status.sh)
RUN (Claude Code, inside your course project folder)
/idstack:<skill>
│
├─ preamble: update check (bin/idstack-update-check) · manifest check
│ (bin/idstack-migrate) · preferences · designer profile
│ (~/.idstack/profile.yaml) · context recovery (reads the
│ timeline and learnings below)
▼
workflow: one AskUserQuestion at a time
│ cites evidence/references.md as [Domain-N] [T1–T5]
│
├──▶ .idstack/project.json manifest: the system view (JSON)
│ written via bin/idstack-manifest-merge (atomic, one section);
│ needs-analysis and course-import write several sections directly
│ └─▶ read by later skills, /idstack:pipeline, bin/idstack-status
│
├──▶ .idstack/exports/<course-slug>/ (bin/idstack-slugify)
│ <skill>.md per-skill report: the human view
│ index.md course dashboard (/idstack:pipeline)
│ course-export.imscc, scorm-export.zip (/idstack:course-export)
│ skeletons: templates/report.md.tmpl, index.md.tmpl
│ content contract: templates/report-format.md
│
└──▶ .idstack/timeline.jsonl runs, scores (bin/idstack-timeline-log)
.idstack/learnings.jsonl discoveries (bin/idstack-learnings log)
└─ /idstack:learn promote ─▶ ~/.idstack/global/learnings.jsonl
CHROME EXTENSION (separate runtime: no Claude Code, no .idstack/ folder)
sidepanel ── injects content/extractor.js into the tab, reads page text
│
└─ RUN_AUDIT ──▶ background/service-worker
├─ canvas-crawler (whole-course audits)
└─ shared/prompts ──▶ Google AI API (your key;
demo findings without one)
◀── findings, saved to chrome.storage; dossier export as Markdown
Skills are plain Markdown files generated from templates. No build step for users, and no dependencies beyond bash and python3. ./setup registers the repo as a Claude Code plugin marketplace and installs it, which is what gives the namespaced /idstack:<skill> commands. Users invoke skills via /idstack:<skill>. Each skill reads the shared manifest and session history, runs its evidence-based workflow, writes back its section, and logs the session to the timeline. The pipeline adds context but every skill also works standalone.
idstack saves your design decisions in .idstack/project.json so each skill remembers your course context. You never edit this file directly. The skills manage it.
When you run /idstack:course-import, it creates the manifest with your course structure. When you run /idstack:learning-objectives, it reads the manifest and extends it with objectives and alignment data. /idstack:assessment-design adds rubrics and feedback strategies. /idstack:course-builder generates the actual content. /idstack:course-quality-review audits the full chain. /idstack:course-export packages it for your LMS. Each skill reads what came before and adds its layer. Or run /idstack:pipeline and it chains them all automatically.
idstack functions as a design partner rather than an automated content generator. When a skill finishes, it produces two artifacts:
- Markdown report at
.idstack/exports/<course-slug>/<skill>.md— the human view. The skill gives you a link to it. Every finding follows the same structure: what we saw in your course, what the evidence says (with a citation tag like[Assessment-8] [T1]), why it matters for learners, and a recommendation for what to change. Recommendations, not orders: the designer owns the course, while idstack provides the analytical review. - Manifest section at
.idstack/project.json— the system view. Same findings in JSON so other skills can read and act on them.
After each step, the skill shows its output as a table, with a justification and a citation for each row. You approve each section, and the skill adds it to the report at once.
The report skeleton lives in templates/report.md.tmpl. The content contract is in templates/report-format.md. Re-running a skill overwrites its report; the timeline at .idstack/timeline.jsonl carries the run history.
Every per-course artifact — every per-skill report, the pipeline dashboard, and any LMS packages — lands in the same self-describing folder: .idstack/exports/<course-slug>/. The <course-slug> is derived from your course's project_name (lowercased, kebab-cased). Zip the folder to hand the whole deliverable to a stakeholder.
When you run /idstack:pipeline, it also produces a course dashboard at .idstack/exports/<course-slug>/index.md — readiness scores, links to every per-skill report, top issues that recur across multiple stages, evidence themes, and where to start. Open this first if you've run multiple skills and want one entry point that synthesizes the whole audit.
idstack remembers your design sessions. Each skill logs what it did to .idstack/timeline.jsonl, and project-specific discoveries (LMS quirks, format issues, course patterns) are stored in .idstack/learnings.jsonl. When you start a new session, idstack tells you where you left off: quality score trends, which skills have been completed, and what the next step is. Run bin/idstack-status anytime to see your course health dashboard.
Every recommendation includes an evidence tier so you know how strong the backing is:
| Tier | What it means | Example |
|---|---|---|
| T1 | Meta-analyses and randomized controlled trials | "Elaborated feedback improves learning" (Wisniewski et al., 2020) |
| T2 | Quasi-experimental studies with controls | "Spaced practice beats massed practice" (Chen et al., 2018) |
| T3 | Systematic reviews of mixed evidence | "Multi-level needs analysis is necessary" (Ferreira & Abbad, 2013) |
| T4 | Observational studies without comparison groups | "QM peer review improves course quality" (Zimmerman et al., 2020) |
| T5 | Expert opinion and theoretical frameworks | "Constructive alignment improves learning" (Biggs, 1996) |
When the skill says "add elaborated feedback to your quizzes," it references T1 evidence from multiple meta-analyses rather than unverified opinion.
Any skill works on its own. /idstack:course-quality-review works without a manifest by asking you questions directly. /idstack:learning-objectives works without a needs analysis. The pipeline adds context and makes recommendations sharper, but every skill is self-contained.
idstack encodes findings from a literature synthesis spanning 11 domains of instructional design research. The full citation list (all 11 domains, 5 evidence tiers) is in evidence/references.md. A selection:
| Domain | Evidence Strength | Key Finding |
|---|---|---|
| Cognitive Load Theory | Very strong (T1) | Manage working memory load through sequencing, segmenting, and integration |
| Multimedia Learning | Very strong (T1) | Spatial contiguity, signaling, and coherence reliably improve learning |
| Formative Assessment | Strong (T1) | Feedback that explains what to do next outperforms correctness-only feedback |
| Constructive Alignment | Moderate-Strong (T2) | Objectives, activities, and assessments must form a coherent chain |
| Online Course Quality | Moderate (T2-T4) | QM standards + CoI presence predicts outcomes beyond compliance |
| Needs Analysis | Weak-Moderate (T3) | Multi-level analysis is necessary but rarely done |
| Accessibility & UDL | Moderate (T2-T3) | WCAG 2.1 AA is the legal baseline; UDL 3.0 extends to design for learner variation |
Cross-domain principles (appear in 3+ domains):
- Alignment is non-negotiable
- Expertise level changes which instructional moves help and which backfire
- Feedback quality matters more than feedback quantity
- Cognitive load is the central design constraint
- Context determines model selection (no universal "best" approach)
Do I need to know how to code? No. You interact with idstack through conversation in Claude Code. It is a chat interface. In the Claude desktop app you do not need a terminal at all.
What is Claude Code?
Claude Code is Anthropic's coding tool. It's available as a desktop app, web app, and CLI. You type /idstack:needs-analysis and have a conversation. No programming required.
Can I use this with Canvas?
Yes. /idstack:course-import connects to Canvas via API or reads Canvas course exports (.imscc files). It also works with Blackboard, Moodle, and D2L through the IMS Common Cartridge format.
Can I use this with Articulate Rise?
Yes. Export your Rise course as a PDF (hover over the course card > ... > Download as PDF), then run /idstack:course-import and choose "PDF or document file." Give it the file path and it reads the PDF directly, extracts the course structure, and maps it to the project manifest. From there, every skill works: quality review, accessibility audit, red team, everything. Note: interactive elements like Storyline blocks and flashcards don't render in PDFs, but course structure, objectives, and assessment descriptions come through fine.
What if I only want to run the quality review?
That works. /idstack:course-quality-review asks you about your course directly if there's no manifest.
How do I check my course health without re-running a skill?
Run bin/idstack-status from your project directory for the dashboard (quality score trends, dimensions, what skills have run, paths to every report under .idstack/exports/<course-slug>/). Add --readiness to get the pre-export readiness gate only (quality ≥ 70, accessibility ≥ 80, zero critical red-team findings, zero WCAG Level-A violations).
Do I need python3?
Yes, python3 3.9 or later. Every skill saves its results to the project manifest with it, and the status dashboard, learnings and timeline use it too. macOS and most Linux systems already have it. Run bin/idstack-doctor to check; it reports a missing or older python3 as a problem.
Is my data safe?
idstack runs locally on your machine. Course data stays in your project folder (.idstack/project.json). Session history (.idstack/timeline.jsonl) and learnings (.idstack/learnings.jsonl) are also local. In the Claude Code plugin, course data reaches external servers only when you explicitly invoke integration skills (such as Canvas API calls via /idstack:course-import or /idstack:course-export) or perform hourly update checks via git fetch. The Chrome extension sends page text to Google's API when you run an audit with your own API key saved; see PRIVACY.md. Claude Code's own privacy policy applies to the AI conversation.
Can I edit the project manifest directly? You can, but let the skills manage it. If you do edit it, keep the JSON valid.
How do I update idstack?
idstack checks for updates when you run any skill. If a newer version is available, you'll see a notification. Update manually: cd <your idstack clone> && git pull && ./setup
If you downloaded ZIP: download the latest version and run ./setup again.
How do I request a feature or report a bug? Fill out this form. No GitHub account needed. If you have a GitHub account, you can also open an issue.
Does idstack work offline? idstack itself is just text files. But it runs inside Claude Code, which requires an internet connection.
Skill not showing up? Claude Code loads skills at session start. If you installed while Claude Code was running, restart it (close and reopen). If that doesn't help, run setup again:
cd <your idstack clone> && ./setupCan't import a .imscc cartridge? Make sure the file is a valid ZIP. Try re-exporting from your LMS with "Course" selected (not just content).
Canvas API says "token rejected"? Generate a fresh token: Canvas -> Account -> Settings -> New Access Token. Tokens expire.
Claude says it can't find idstack skills? Make sure you've run ./setup after cloning. Setup registers the repo as a plugin marketplace and installs it so Claude Code discovers the namespaced /idstack:<skill> commands. Restart Claude Code after install — plugins load at session start.
Upgrading from v2.0? v2.0 installed under ~/.claude/skills/idstack, which only exposed /idstack (the dispatcher) — never the 11 namespaced sub-skills. Remove the old install, then clone fresh and run setup: rm -rf ~/.claude/skills/idstack && git clone https://github.com/savvides/idstack.git && cd idstack && ./setup. Setup no longer removes old installs for you; the CHANGELOG lists every path an older install can leave behind.
/idstack:<skill> won't autocomplete or returns "Unknown skill"? Run bin/idstack-doctor from your idstack clone. It checks the plugin + marketplace manifests, the Claude Code install state, all 12 SKILL.md files, and python3 — printing the exact remediation command for whatever it finds.
Have feedback or a feature request? Fill out this form — no GitHub account needed.
Found a bug? You can also open an issue on GitHub.
Want to add a new skill? See CONTRIBUTING.md for the full guide. The architecture is simple: create a directory with a SKILL.md.tmpl template, run bin/idstack-gen-skills to generate its SKILL.md, then ./setup.
- idstack.org — landing page
- CHANGELOG.md — full version history
- ROADMAP.md — what's coming next
- PRIVACY.md — privacy policy (idstack collects nothing)
- Why AI-native? — why idstack is built this way
MIT License. Free and open source.