coursmith 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "coursmith",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Publish AI-written courses to Coursmith from Claude Code, Codex, Cursor, OpenCode or any agent with a shell.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -9,9 +9,9 @@ You write a course as a folder containing `course.json` and an `assets/` directo
9
9
  `coursmith` CLI, and submit it. A review agent on the portal then approves it, asks for a revision or
10
10
  rejects it. Your job ends when the course is approved, or when you have explained the review outcome to the user.
11
11
 
12
- Run the CLI as `coursmith <command> --json`. It is installed from the private repository (the npm package
13
- `coursmith` is not published yet); if the command is missing, ask the user to follow the installation guide
14
- at `/install` before continuing. With `--json` every command prints one JSON document; read it instead of guessing.
12
+ Run the CLI as `npx --yes coursmith@latest <command> --json`. The public npm package includes the CLI and this skill;
13
+ no GitHub access or global installation is needed. If `npx` is missing, ask the user to install Node.js 20 or newer
14
+ and follow the guide at `/install`. With `--json` every command prints one JSON document; read it instead of guessing.
15
15
 
16
16
  Reference files in this skill folder (read them when you reach the matching step):
17
17
 
@@ -26,10 +26,10 @@ Reference files in this skill folder (read them when you reach the matching step
26
26
 
27
27
  ## 1. Log in
28
28
 
29
- 1. Run `coursmith whoami --json`. If it prints a `username`, continue to step 2.
30
- 2. Otherwise run `coursmith login --no-wait --json`. Show the user the `verificationUri` and the
29
+ 1. Run `npx --yes coursmith@latest whoami --json`. If it prints a `username`, continue to step 2.
30
+ 2. Otherwise run `npx --yes coursmith@latest login --no-wait --json`. Show the user the `verificationUri` and the
31
31
  `userCode` and ask them to open the link, check the code and click **Approve**.
32
- 3. When the user confirms, run `coursmith login --resume --json` and check that it prints `logged_in`.
32
+ 3. When the user confirms, run `npx --yes coursmith@latest login --resume --json` and check that it prints `logged_in`.
33
33
 
34
34
  ## 2. Agree on the course with the user
35
35
 
@@ -92,7 +92,7 @@ Write section by section and keep the language, difficulty and terminology consi
92
92
 
93
93
  ## 6. Validate until clean
94
94
 
95
- Run `coursmith validate <folder> --json`. It prints `{ "ok": ..., "issues": [...] }`; each issue has
95
+ Run `npx --yes coursmith@latest validate <folder> --json`. It prints `{ "ok": ..., "issues": [...] }`; each issue has
96
96
  `severity`, `code`, `path` (for example `sections[1].steps[0].blocks[2]`) and `message`.
97
97
 
98
98
  Fix every `error`, then run it again. Repeat until `ok` is `true`. Fix warnings too when they are cheap
@@ -100,10 +100,10 @@ Fix every `error`, then run it again. Repeat until `ok` is `true`. Fix warnings
100
100
 
101
101
  ## 7. Submit and follow the review
102
102
 
103
- 1. Run `coursmith submit <folder> --json`. It uploads the course and prints `status: "in_review"`
103
+ 1. Run `npx --yes coursmith@latest submit <folder> --json`. It uploads the course and prints `status: "in_review"`
104
104
  with a `submissionId`. The CLI writes `.coursmith.json` in the folder; keep it, because it links later
105
105
  submissions to the same course.
106
- 2. Run `coursmith status --dir <folder> --wait --json` (it waits up to 10 minutes; run it again if
106
+ 2. Run `npx --yes coursmith@latest status --dir <folder> --wait --json` (it waits up to 10 minutes; run it again if
107
107
  the status is still `in_review`).
108
108
  3. Act on the `status`:
109
109
  - `approved`: give the user the `courseUrl`. Mention any optional suggestions in `review.issues`.
@@ -124,7 +124,7 @@ the current one stays online; keep step ids stable so learners keep their progre
124
124
  | CLI output | What to do |
125
125
  |---|---|
126
126
  | `not_logged_in` / exit code 3 | Go back to step 1. |
127
- | `client_outdated` | Ask the user to update the CLI from the repository (`git pull`, rebuild, `npm install -g ./packages/cli`), then retry. |
127
+ | `client_outdated` | Retry with `npx --yes coursmith@latest` so npm fetches the latest CLI. |
128
128
  | `validation_failed` from `submit` | Run `validate` and fix the issues it lists. |
129
129
  | `rate_limited` | The user reached the daily submission limit; try again tomorrow. |
130
130
  | `assets.content_type` / `assets.invalid` | The file content does not match its extension, or it is corrupt. Re-export it. |