@oaklandzoo/ostup 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/README.md CHANGED
@@ -54,32 +54,35 @@ through creating them when you reach that step.
54
54
 
55
55
  ## Install
56
56
 
57
- Two paths. Pick the one that matches how you got ostup.
58
-
59
- ### Path A: from npm (after `ostup` is published)
57
+ The fastest path:
60
58
 
61
59
  ```
62
- npx ostup init
60
+ npx @oaklandzoo/ostup init
63
61
  ```
64
62
 
65
- That is the whole install. `npx` downloads ostup on first run.
63
+ That is the whole install. `npx` downloads ostup on first run, nothing
64
+ to install permanently.
65
+
66
+ If you'd rather install it globally so the command is just `ostup`:
66
67
 
67
- As of right now, `ostup` is not yet published to npm. Use Path B below.
68
+ ```
69
+ npm install -g @oaklandzoo/ostup
70
+ ostup --version # should print 0.1.0
71
+ ostup init
72
+ ```
68
73
 
69
- ### Path B: from source (today's path)
74
+ ### Alternate: install from source
70
75
 
71
- If you cloned or downloaded https://github.com/DubsFan/goodshin:
76
+ If you cloned https://github.com/DubsFan/goodshin and want to run from
77
+ your local checkout:
72
78
 
73
79
  ```
74
80
  cd /path/to/goodshin/ostup
75
- npm install # downloads ostup's own dependencies
76
- npm link # adds `ostup` to your PATH globally
77
- ostup --version # should print 0.1.0
81
+ npm install
82
+ npm link
83
+ ostup --version
78
84
  ```
79
85
 
80
- After `npm link` you can run `ostup` from any folder. You only do this
81
- once per machine.
82
-
83
86
  ## Use
84
87
 
85
88
  In Terminal, navigate to the parent folder where you want the new
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oaklandzoo/ostup",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Scaffolds a new repo with the Ostup Agent Kit pre-installed: slash commands, doc templates, and a clean working state.",
5
5
  "type": "module",
6
6
  "bin": {
package/src/mvp-flow.mjs CHANGED
@@ -57,14 +57,14 @@ export async function runMvp({ flags = {}, cwd = process.cwd() } = {}) {
57
57
  await ensureFreshTarget(targetDir, flags.force);
58
58
  await mkdir(targetDir, { recursive: true });
59
59
 
60
+ await maybeScaffoldStack({ stack: answers.stack, projectName: answers.projectName, targetDir });
61
+
60
62
  await ingestMaterials({
61
63
  targetDir,
62
64
  ingestPath: answers.ingestPath,
63
65
  isDryRun: isDryRun(),
64
66
  });
65
67
 
66
- await maybeScaffoldStack({ stack: answers.stack, projectName: answers.projectName, targetDir });
67
-
68
68
  const tokens = buildTokenMap({
69
69
  projectName: answers.projectName,
70
70
  displayName: answers.displayName,
package/src/summary.mjs CHANGED
@@ -22,7 +22,10 @@ export function renderSummary({ targetDir, repoUrl, deployUrl, profile, projectN
22
22
  lines.push(
23
23
  ` Profile: ${profile || 'goodshin'}`,
24
24
  '================================================',
25
- ` Next: cd ${projectName} && claude`,
25
+ ` Next steps:`,
26
+ ` 1. cd ${projectName}`,
27
+ ` 2. claude (or codex, gemini, your preferred CLI agent)`,
28
+ ` 3. Open START_HERE.md and paste the prompt as your first message`,
26
29
  '================================================',
27
30
  ''
28
31
  );
package/src/templates.mjs CHANGED
@@ -23,6 +23,7 @@ export const REGISTRY = [
23
23
  { src: '.claude/commands/generate-tasks.md', dest: '.claude/commands/generate-tasks.md' },
24
24
  { src: 'CLAUDE.md', dest: 'CLAUDE.md' },
25
25
  { src: 'AGENTS.md', dest: 'AGENTS.md' },
26
+ { src: 'START_HERE.md', dest: 'START_HERE.md' },
26
27
  { src: 'HANDOFF.md', dest: 'HANDOFF.md' },
27
28
  { src: 'docs/PROJECT_STATE.md', dest: 'docs/PROJECT_STATE.md' },
28
29
  { src: 'docs/MANUAL_TASKS.md', dest: 'docs/MANUAL_TASKS.md' },
@@ -0,0 +1,41 @@
1
+ # Start here
2
+
3
+ You just scaffolded **{{DISPLAY_NAME}}** with ostup. This file tells you exactly what to do next.
4
+
5
+ ## Step 1: open this folder in your CLI agent
6
+
7
+ In Terminal, from inside this folder:
8
+
9
+ ```
10
+ claude
11
+ ```
12
+
13
+ (Or `codex`, `gemini`, or whichever CLI agent you use.)
14
+
15
+ ## Step 2: paste this as your first message
16
+
17
+ Copy the entire block between the lines and paste it as your first message to the agent:
18
+
19
+ ---
20
+
21
+ Read everything in `{{INPUTS_PATH}}` thoroughly. The operator dropped source materials there: research, reference repos, brand assets, notes. Also read `CLAUDE.md` and `AGENTS.md` for project rules.
22
+
23
+ Then, based on what is in `{{INPUTS_PATH}}`, ask the operator up to 3 clarifying questions about what to build. After the operator answers, propose a 30 to 60 minute MVP scope as a numbered list. Do not write code until the operator approves the scope.
24
+
25
+ If `{{INPUTS_PATH}}` is empty or has only a README, ask the operator what they want to build instead.
26
+
27
+ ---
28
+
29
+ ## What happens after that
30
+
31
+ 1. The agent reads your project rules + your source material.
32
+ 2. The agent asks you a few questions.
33
+ 3. You answer.
34
+ 4. The agent proposes a scope.
35
+ 5. You approve (or push back).
36
+ 6. The agent builds the MVP and pushes commits to your GitHub repo.
37
+ 7. Vercel auto-deploys each push, so your live URL updates as the agent works.
38
+
39
+ ## When you no longer need this file
40
+
41
+ Delete it. It is for first-session orientation only and does not affect your app.