You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: AGENTS.md
+5-3Lines changed: 5 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -200,6 +200,7 @@ When adding a command:
200
200
4. Add the command to the README command model
201
201
5. Add a stable JSON result shape to `docs/automation.md`
202
202
6. Call out breaking JSON or exit-code changes in `CHANGELOG.md` and migration notes in `docs/automation.md` when behavior is intentional.
203
+
7. If the command is exposed through MCP, update `mcpTools()` and refresh the compact tool-surface summary in `docs/llms.txt`.
203
204
204
205
## CI and Release
205
206
@@ -209,7 +210,7 @@ When adding a command:
209
210
|`release.yml`|`v*` tag | Builds cross-platform binaries, publishes GitHub release and package channels |
210
211
|`apt-repo.yml`| published release | Updates the signed apt repository |
211
212
212
-
Tagging `v0.2.0` (or any `v*` semver tag) triggers the release workflow automatically.
213
+
Tagging `v0.2.1` (or any `v*` semver tag) triggers the release workflow automatically.
213
214
214
215
## Gotchas
215
216
@@ -219,7 +220,8 @@ Tagging `v0.2.0` (or any `v*` semver tag) triggers the release workflow automati
219
220
| Headless OAuth | Use `--no-browser` to print a URL instead of opening a browser |
220
221
|`quickstart env write` ≠ `project env write`| Template-aware paths and variable names vs generic dotenv block |
221
222
|`add` namespace | Reserved and hidden; must behave as not-found from the user's perspective |
222
-
|`doctor --deep`| Flag exists but deep checks are not fully implemented; don't document as stable yet |
223
+
|`doctor --deep`| Stable workspace checks for `.agora` metadata and quickstart env consistency; prefer `--deep --json` in repo-bound automation. |
224
+
|`open` browser launch | Auto-open happens only in interactive pretty TTY sessions outside CI. Use `--browser` to force opening or `--no-browser` for URL-only behavior. |
223
225
| App certificate required |`quickstart env write` and `init` fail env injection if the project has no certificate |
224
226
225
227
## npm Distribution (Node Wrapper)
@@ -248,7 +250,7 @@ packaging/npm/
248
250
3. If the platform package is missing, the shim prints a helpful error pointing to Homebrew or GitHub releases
249
251
250
252
**Release flow (automated and active):** the `publish-npm` job in `release.yml`:
251
-
1. Downloads release archives and `checksums.txt` from the GitHub release
253
+
1. Downloads release archives (`agora-cli_v*`, v0.2.1+) and `checksums.txt` from the GitHub release
252
254
2. Verifies SHA-256 of every archive against `checksums.txt`; fails the job on mismatch
253
255
3. Extracts the binary for each platform into the corresponding package's `bin/`
254
256
4. Stamps the tag version into all `package.json` files (wrapper + 6 platform packages, including `optionalDependencies` values)
Copy file name to clipboardExpand all lines: CHANGELOG.md
+63-1Lines changed: 63 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,6 +15,67 @@ Earlier entries pre-date this convention and only carry their version's compare
15
15
16
16
## [Unreleased]
17
17
18
+
## [0.2.1] - 2026-05-20
19
+
20
+
Automation hardening, quickstart reliability fixes, agent introspection and MCP progress improvements, and release-artifact rename.
21
+
22
+
### Added
23
+
24
+
- Emit a `clone:override` progress event when `AGORA_QUICKSTART_<TEMPLATE>_REPO_URL` overrides the clone URL, so workshop and CI runs can confirm which fork they cloned.
25
+
- Document `AGORA_QUICKSTART_<TEMPLATE>_REPO_URL` in `agora env-help` and the automation reference.
26
+
- Add MCP `notifications/progress` forwarding for long-running tools when clients pass `_meta.progressToken`.
27
+
- Add `headlessSafe` and `interactivity` metadata to `agora introspect --json` command records.
28
+
- Add automation contract tests for representative `docs/automation.md` examples.
29
+
30
+
### Changed
31
+
32
+
-`agora open` now defaults to URL-only behavior in CI and non-TTY sessions (unless `--browser` is explicitly passed), and adds explicit `--browser` / `--no-browser` conflict validation.
33
+
-`agora init` now requires `--template` in non-interactive (`--yes`) runs instead of silently selecting the first available template; init JSON output now includes `projectSelectionReason` for deterministic agent branching.
34
+
- Block installer-managed `agora upgrade` in CI unless `AGORA_ALLOW_UPGRADE_IN_CI=1` is set; blocked runs return `status: "manual"` with `ciBlocked: true` and suggest `agora upgrade --check --json`.
35
+
- Align `go.mod` module path with the public repository: `github.com/AgoraIO/cli` (replaces the workspace-only `github.com/agora/cli-workspace/agora-cli-go` path).
36
+
- Rename GitHub release archives from `agora-cli-go_v*` to `agora-cli_v*` starting in v0.2.1 (install scripts and docs use the new name). `agora upgrade` selects the archive prefix from the target release version: `agora-cli-go_*` for v0.1.7–v0.2.0, `agora-cli_*` for v0.2.1+.
37
+
38
+
### Fixed
39
+
40
+
- Disable git credential helpers for quickstart clone subprocesses so `agora init` and `agora quickstart create` succeed in non-interactive agent and CI environments without macOS keychain access.
41
+
- Pass `--` before the repo URL and target directory on `git clone` so values starting with `-` cannot be parsed as git options.
42
+
- Fail fast with `QUICKSTART_GIT_MISSING` when `git` is not on `PATH`, with `QUICKSTART_REF_INVALID` for malformed `--ref` values, and with `QUICKSTART_REPO_OVERRIDE_INVALID` when the env override URL is malformed, instead of surfacing cryptic git errors.
43
+
44
+
### Upgrade notes
45
+
46
+
**Direct installer (`install.sh` / `install.ps1`):** Fresh installs and re-runs of the installer fetch the correct archive name automatically. If you are on v0.1.7 through v0.2.0 and `agora upgrade` fails to download v0.2.1+, re-run the installer once:
47
+
48
+
```bash
49
+
curl -fsSL https://raw.githubusercontent.com/AgoraIO/cli/main/install.sh | sh
50
+
```
51
+
52
+
Those older binaries only know the `agora-cli-go_*` archive prefix; after one reinstall, future upgrades use `agora-cli_*`.
53
+
54
+
**npm / package managers:** Use your package manager as usual (`npm update -g agoraio-cli`, etc.). Archive naming does not affect npm installs.
|`agora upgrade` in CI jobs |`agora upgrade --check --json` (non-mutating) |
62
+
|`agora open --target docs` in CI | URL-only by default; pass `--browser` to force launch |
63
+
64
+
Set `AGORA_ALLOW_UPGRADE_IN_CI=1` only when a CI job intentionally needs to mutate the installed binary.
65
+
66
+
### Documentation
67
+
68
+
- Align `AGENTS.md` with shipped `project doctor --deep` behavior and document current `agora open` browser-launch rules.
69
+
- Expand `docs/automation.md` and `docs/llms.txt` with MCP transport/auth caveats, headless CI guidance, init/upgrade automation fields, and `agora env-help` discovery pointers.
70
+
- Update agent quickstart rule and skills examples to include deterministic init (`--new-project`) defaults.
71
+
- Document MCP progress notifications (`_meta.progressToken`) in `docs/automation.md`, `docs/llms.txt`, `agora mcp serve` help, and the skills catalog.
72
+
- Document envelope versioning policy, login NDJSON parsing, raw `project env` hints, and boolean config flag syntax (`--flag=false`) in automation and troubleshooting docs.
73
+
- Surface enterprise install paths for locked-down environments in `README.md` and `docs/install.md`.
74
+
- Fix contributor clone path in `CONTRIBUTING.md` to match the canonical `git clone … && cd cli/` layout.
75
+
- Align npm package `repository.directory` paths with the repo root layout and update the issue template docs link.
76
+
- Document archive naming and upgrade migration in `docs/install.md` and `docs/troubleshooting.md`.
77
+
- Add a GitHub Pages skip link for keyboard navigation.
78
+
18
79
## [0.2.0] - 2026-05-05
19
80
20
81
### Added
@@ -199,7 +260,8 @@ Earlier entries pre-date this convention and only carry their version's compare
199
260
- Support machine-readable JSON output for automation and agent workflows.
200
261
- Ship automated release packaging through GoReleaser, including cross-platform archives, Linux packages, Homebrew, Scoop, npm wrapper packages, Docker images, and install scripts.
0 commit comments