myte 0.0.2 → 0.0.4

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.
Files changed (2) hide show
  1. package/README.md +117 -8
  2. package/package.json +7 -2
package/README.md CHANGED
@@ -1,12 +1,121 @@
1
1
  # myte (CLI)
2
2
 
3
- Canonical npm package name for the Myte developer CLI.
3
+ Canonical npm package for the Myte developer CLI.
4
4
 
5
- Usage:
6
- - `npx myte@latest query "What changed in logging?" --with-diff`
7
- - `npm i -g myte` then `myte query "..." --with-diff`
5
+ ## Install and run
8
6
 
9
- Requirements:
10
- - Node 18+
11
- - `git` in PATH (for `--with-diff`)
12
- - Root `.env` (or env var) contains `MYTE_API_KEY=<project_api_key>`
7
+ Use one of these flows:
8
+
9
+ - Local dependency in your project:
10
+ - `npm install myte`
11
+ - then run `npx myte config --json`
12
+ - then run `npx myte query "What changed in logging?" --with-diff`
13
+ - or `npm exec myte -- query "What changed in logging?" --with-diff`
14
+ - Global install:
15
+ - `npm i -g myte`
16
+ - then run `myte query "What changed in logging?" --with-diff`
17
+ - No install:
18
+ - `npx myte@latest query "What changed in logging?" --with-diff`
19
+
20
+ `npm install myte` by itself does not put `myte` on your shell PATH. Use `npx myte` or `npm exec myte -- ...` unless you installed globally.
21
+
22
+ Important:
23
+ - `npm install myte` gives the user everything needed locally.
24
+ - The normal local command is `npx myte ...` or `npm exec myte -- ...`.
25
+ - Bare `myte ...` only works after `npm i -g myte`.
26
+
27
+ ## Requirements
28
+
29
+ - Node `18+`
30
+ - macOS, Linux, and Windows are supported
31
+ - `git` available in `PATH` for `--with-diff`
32
+ - `MYTE_API_KEY=<project_api_key>` available in your shell or in a `.env`
33
+ - the CLI searches for `.env` in the current folder and then up parent directories
34
+ - For deterministic diff capture, run from:
35
+ - a configured repo folder, or
36
+ - a parent workspace that contains the configured repo folders by name
37
+
38
+ Important: repo folder names on disk must match the project repo names configured in Myte, including casing on case-sensitive filesystems. If the API says the repos are `Mytegroup-api-mytecody` and `Mytegroup-web-mytecody`, the local folders must use those names for automatic diff discovery.
39
+
40
+ ## Verify setup
41
+
42
+ Run this first when onboarding on a new machine:
43
+
44
+ - `npx myte config --json`
45
+ - or `npm exec myte -- config --json`
46
+ - or `npx myte@latest config --json`
47
+
48
+ It confirms:
49
+ - the API key resolves to the expected project
50
+ - which repo names the project is configured with
51
+ - which of those repos were found locally
52
+
53
+ ## Query with deterministic diff context
54
+
55
+ Example:
56
+
57
+ - `npx myte query "What changed in logging?" --with-diff`
58
+ - or `npm exec myte -- query "What changed in logging?" --with-diff`
59
+ - or `npx myte@latest query "What changed in logging?" --with-diff`
60
+
61
+ When `--with-diff` is enabled, the CLI:
62
+ - resolves project config from the API using your project API key
63
+ - finds the configured repos locally
64
+ - compares the current branch against `origin/main` or `origin/master`
65
+ - includes committed branch changes, staged changes, unstaged changes, and untracked files
66
+
67
+ If diff context is missing, run `myte config --json` and check:
68
+ - repo folder names match the configured repo names
69
+ - you are running inside the repo or a parent workspace
70
+ - `git` is installed and the repo has `origin/main` or `origin/master` available
71
+
72
+ If only part of your repos are resolved, the CLI still runs and includes that status in:
73
+ - command output warnings (`Repo "<name>": ...`)
74
+ - payload `diff_diagnostics` (in `--print-context` and sent with `--with-diff`)
75
+ - a structured message in additional context that explains per-repo outcomes.
76
+
77
+ ## Deterministic PRD upload
78
+
79
+ Create the PRD locally first, then upload it directly to Myte Cody as feedback.
80
+
81
+ Examples:
82
+
83
+ - File path:
84
+ - `npx myte create-prd ./drafts/auth-prd.md`
85
+ - or `npm exec myte -- create-prd ./drafts/auth-prd.md`
86
+ - or `npx myte@latest create-prd ./drafts/auth-prd.md`
87
+ - From stdin on macOS/Linux:
88
+ - `cat ./drafts/auth-prd.md | npx myte create-prd --stdin`
89
+ - From stdin on PowerShell:
90
+ - `Get-Content -Raw .\drafts\auth-prd.md | npx myte create-prd --stdin`
91
+
92
+ This path is deterministic. It does not generate a PRD with an LLM.
93
+
94
+ Preferred file format matches `script/MyteCodyPRD.py`:
95
+
96
+ ````markdown
97
+ ```myte-kanban
98
+ {
99
+ "title": "Authentication PRD",
100
+ "priority": "Medium",
101
+ "assigned_user_email": "dev@mytegroup.com",
102
+ "tags": ["mission-board"],
103
+ "feedback_text": "Short card summary"
104
+ }
105
+ ```
106
+
107
+ # PRD
108
+
109
+ Detailed markdown body here.
110
+ ````
111
+
112
+ Raw markdown also works:
113
+ - include a top-level `# Title`
114
+ - or pass `--title "..."` when using `--stdin`
115
+
116
+ ## Common commands
117
+
118
+ - `npm install myte`
119
+ - `npx myte config --json`
120
+ - `npx myte query "Summarize the current branch changes" --with-diff`
121
+ - `npx myte create-prd ./drafts/auth-prd.md`
package/package.json CHANGED
@@ -1,9 +1,14 @@
1
1
  {
2
2
  "name": "myte",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "description": "Myte developer CLI (Project Assistant + deterministic diffs).",
5
5
  "type": "commonjs",
6
6
  "license": "MIT",
7
+ "files": [
8
+ "README.md",
9
+ "bin",
10
+ "package.json"
11
+ ],
7
12
  "bin": {
8
13
  "myte": "bin/myte.js"
9
14
  },
@@ -11,6 +16,6 @@
11
16
  "node": ">=18"
12
17
  },
13
18
  "dependencies": {
14
- "@mytegroupinc/myte-core": "0.0.2"
19
+ "@mytegroupinc/myte-core": "0.0.4"
15
20
  }
16
21
  }