一键导入
course-ops
Course lifecycle guidance — create courses, add modules, manage teachers, import content, and publish. CLI-first with API alternatives.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Course lifecycle guidance — create courses, add modules, manage teachers, import content, and publish. CLI-first with API alternatives.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
The public front door for contributing to Andamio's public repos. Show what's open across public repos, orient contributors, and help file new issues — reflecting only public state.
Welcome to Andamio Dev. Detect what the developer needs, whether they're learning or operating, and route to the right skill.
Calculate ADA costs for Andamio operations. Estimate total cost for courses, projects, and user scenarios with four-component breakdowns.
Project lifecycle guidance — create projects, manage tasks, handle contributors, fund treasury, and issue credentials. CLI-first with API alternatives.
Compatibility wrapper for the portable Build on Andamio assignment assessment protocol. Canonical instructions live in skills/assess-assignment/SKILL.md.
Compatibility wrapper for the portable Build on Andamio lesson delivery protocol. Canonical instructions live in skills/deliver-lesson/SKILL.md.
| name | course-ops |
| description | Course lifecycle guidance — create courses, add modules, manage teachers, import content, and publish. CLI-first with API alternatives. |
| license | MIT |
| compatibility | Requires the Andamio CLI for most operations. Install via brew install andamio-platform/tap/andamio. |
| metadata | {"author":"Andamio","version":"0.1.0"} |
Guides developers through the complete course lifecycle on Andamio. Defaults to CLI-based workflows (simpler), with API alternatives for each step.
${CLAUDE_PLUGIN_ROOT} is set): Read specs from ${CLAUDE_PLUGIN_ROOT}/specs/, reference from ${CLAUDE_PLUGIN_ROOT}/reference/.specs/ and reference/ relative to project root.specs/andamio-api.yaml for course endpoint details.reference/andamio-cli-context.md for CLI command reference.andamio user status 2>/dev/null
If no JWT is detected, redirect: "Course operations require wallet authentication (JWT). Let me walk you through that first." Then execute /auth-setup inline.
A Cardano transaction. Costs ~130 ADA for 1 teacher (see /cost-estimator).
Via API (Gateway):
POST /v2/tx/instance/owner/course/create
Auth: API Key + JWT
Body: { alias, teachers: [alias1, alias2], ... }
The API returns an unsigned transaction. The developer must sign and submit it (see Transaction Flow below).
Planning tip: Set all initial teachers at creation — adding teachers later costs ~10.3 ADA each.
Each module is a Cardano transaction. Costs ~1.86 ADA each (no service fee).
Via CLI:
# Create module shell
andamio course create-module <course-id> \
--code 101 \
--title "Introduction to Andamio" \
--sort-order 1
Module statuses:
The CLI handles Markdown-to-Tiptap conversion automatically.
Export existing module (to edit):
andamio course export <course-id> 101
# Creates: compiled/<slug>/101/outline.md, lesson-N.md, assignment.md, introduction.md
Edit locally, then re-import:
andamio course import <course-id> 101
Bulk import all modules:
andamio course import-all <course-id>
File format rules:
outline.md: Title from YAML frontmatter, SLTs listed as numbered itemslesson-N.md: Must start with # H1 title, content belowintroduction.md: # H1 becomes intro titleassignment.md: # H1 becomes assignment titleSLT hash workflow: As of v0.10.2, course import automatically computes the SLT hash (Blake2b-256) and includes it in the API payload. This means the recommended workflow is:
--create flag (creates DRAFT module with SLTs and computed hash)tx run (gateway matches DB record by hash)andamio course teacher register-module --course-id <id> --module-code <code> --slt-hash <hash>andamio course teacher publish-module --course-id <id> --module-code <code>You can pre-compute the hash without importing:
andamio course credential compute-hash --slt "Learner can explain..." --slt "Learner can demonstrate..."
andamio course credential compute-hash --file ./compiled/my-course/101/outline.md
See andamio-cli/docs/COURSE-LIFECYCLE.md for the complete step-by-step workflow.
Status gotcha: register-module sets status to APPROVED, which locks SLTs. If you need to re-import SLTs after registering, first run: andamio course teacher update-module-status --course-id <id> --module-code <code> --status DRAFT
Via API:
POST /v2/tx/course/owner/teachers/manage
Auth: API Key + JWT
Body: { alias, course_id, teachers_to_add: [alias], teachers_to_remove: [alias] }
Costs ~10.3 ADA per update transaction. The governance token tracks the teacher roster on-chain.
Students interact through the app or API:
POST /v2/course/student/commitment/createPOST /v2/course/student/commitment/submitPOST /v2/tx/course/student/assignment/commit (~2.14 ADA)POST /v2/course/student/commitment/update (~0.33 ADA per update)POST /v2/tx/course/teacher/assignments/assess (~0.21 ADA)POST /v2/tx/course/student/credential/claim (nets +1.03 ADA)Status transitions: DRAFT → APPROVED → PENDING_TX → ON_CHAIN (→ DEPRECATED / ARCHIVED)
modules_manage TX; the DB marks the module pending, awaiting on-chain confirmation.PENDING_TX before it will set ON_CHAIN — the off-chain flow must advance to PENDING_TX first.# Check module status
andamio course modules <course-id> --output json | jq '.data[] | {code: .content.course_module_code, status: .content.module_status}'
Course operations that modify on-chain state require Cardano transactions:
# 1. Build (returns unsigned tx hex)
TX_HEX=$(andamio tx build /v2/tx/instance/owner/course/create \
--body '{"alias":"my-alias","teachers":["teacher1"]}' \
--output json | jq -r '.tx_hex')
# 2. Sign
SIGNED=$(andamio tx sign --tx "$TX_HEX" --skey payment.skey \
--output json | jq -r '.tx_hex')
# 3. Submit
andamio tx submit --tx "$SIGNED"
# 4. Register for tracking
andamio tx register --tx-hash "$TX_HASH" --tx-type course_create
# 5. Monitor status
andamio tx status "$TX_HASH" --output json
/cost-estimator/auth-setup/project-ops/troubleshoot