coursecast 0.2.0 → 0.2.2
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/README.md +2 -3
- package/bin/coursecast.mjs +2 -2
- package/package.json +1 -1
- package/src/engines/gemini.mjs +2 -2
package/README.md
CHANGED
|
@@ -37,19 +37,18 @@ The engine is what writes the content. Pick with `--engine`:
|
|
|
37
37
|
| `claude-code` *(default)* | your [Claude Code](https://claude.com/claude-code) CLI | `claude` on PATH |
|
|
38
38
|
| `codex` | your Codex CLI | `codex` on PATH |
|
|
39
39
|
| `gemini` | Google Gemini API, search-grounded | `GEMINI_API_KEY` ([free key](https://aistudio.google.com/apikey)) |
|
|
40
|
-
| `stub` | nothing — offline placeholder content | nothing |
|
|
41
40
|
|
|
42
41
|
```bash
|
|
43
42
|
coursecast "learn rust" --engine gemini
|
|
44
43
|
```
|
|
45
44
|
|
|
46
|
-
Gemini extras: `GEMINI_MODEL` overrides the model (default `gemini-
|
|
45
|
+
Gemini extras: `GEMINI_MODEL` overrides the model (default `gemini-3.5-flash`);
|
|
47
46
|
`COURSECAST_RESEARCH=0` skips the web-search research pass (faster, cheaper, less current).
|
|
48
47
|
|
|
49
48
|
## All flags
|
|
50
49
|
|
|
51
50
|
```
|
|
52
|
-
--engine <id> claude-code (default) | gemini | codex
|
|
51
|
+
--engine <id> claude-code (default) | gemini | codex
|
|
53
52
|
--model <id> model hint passed to the engine
|
|
54
53
|
--storage <id> progress storage: local (default) | cloud
|
|
55
54
|
--provider <id> deploy target: vercel (default) | netlify
|
package/bin/coursecast.mjs
CHANGED
|
@@ -25,7 +25,7 @@ USAGE
|
|
|
25
25
|
|
|
26
26
|
OPTIONS
|
|
27
27
|
--engine <id> generation engine: claude-code (default), gemini, codex, stub
|
|
28
|
-
--model <id> model hint passed to the engine (e.g. gemini-
|
|
28
|
+
--model <id> model hint passed to the engine (e.g. gemini-3.5-flash)
|
|
29
29
|
--storage <id> progress storage: local (default, no setup), cloud (sync across devices)
|
|
30
30
|
--provider <id> deploy target: vercel (default), netlify
|
|
31
31
|
--lessons <n> target number of lessons (default ~12)
|
|
@@ -37,7 +37,7 @@ OPTIONS
|
|
|
37
37
|
-h, --help show this help
|
|
38
38
|
|
|
39
39
|
EXAMPLES
|
|
40
|
-
coursecast "kubernetes basics"
|
|
40
|
+
coursecast "kubernetes basics" # default engine (claude-code)
|
|
41
41
|
coursecast "how DNS works" --engine gemini # cheap, search-grounded
|
|
42
42
|
coursecast "intro to nuclear power" --deploy # generate + ship to your Vercel
|
|
43
43
|
`);
|
package/package.json
CHANGED
package/src/engines/gemini.mjs
CHANGED
|
@@ -4,14 +4,14 @@
|
|
|
4
4
|
// schema rather than inventing them from stale training data.
|
|
5
5
|
//
|
|
6
6
|
// Requires: GEMINI_API_KEY (free tier works — https://aistudio.google.com/apikey)
|
|
7
|
-
// Optional: GEMINI_MODEL (default "gemini-
|
|
7
|
+
// Optional: GEMINI_MODEL (default "gemini-3.5-flash"), COURSECAST_RESEARCH=0 to skip search.
|
|
8
8
|
|
|
9
9
|
import { buildSyllabusPrompt, buildLessonPrompt, finalizeLesson, extractJsonObject } from './shared-prompts.mjs'
|
|
10
10
|
|
|
11
11
|
export const name = 'gemini'
|
|
12
12
|
|
|
13
13
|
const API = 'https://generativelanguage.googleapis.com/v1beta/models'
|
|
14
|
-
const DEFAULT_MODEL = process.env.GEMINI_MODEL || 'gemini-
|
|
14
|
+
const DEFAULT_MODEL = process.env.GEMINI_MODEL || 'gemini-3.5-flash'
|
|
15
15
|
const RESEARCH_ON = process.env.COURSECAST_RESEARCH !== '0'
|
|
16
16
|
|
|
17
17
|
function apiKey() {
|