@detergent-software/atk 8.0.1 → 8.0.2-dev.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.
Files changed (3) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +28 -17
  3. package/package.json +5 -11
package/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## [8.0.2-dev.1](https://emergentcode.visualstudio.com/Emergent%20Software/_git/Emergent.AgenticToolkit/branchCompare?baseVersion=GTv8.0.1&targetVersion=GTv8.0.2-dev.1) (2026-10-01)
2
+
3
+ ### Documentation
4
+
5
+ * **cli:** describe the Azure Pipelines release with npm staging ([ba1e08a](https://emergentcode.visualstudio.com/Emergent%20Software/_git/Emergent.AgenticToolkit/commit/ba1e08a12f9d96a2e3101ab28a82f66460ebfbd2))
6
+
1
7
  ## [8.0.1](https://github.com/EmergentSoftware/agentic-toolkit-cli/compare/v8.0.0...v8.0.1) (2026-10-01)
2
8
 
3
9
  ### Bug Fixes
package/README.md CHANGED
@@ -302,15 +302,19 @@ atk config org --reset
302
302
 
303
303
  ### Setup
304
304
 
305
+ The CLI lives in `apps/cli` of the `Emergent.AgenticToolkit` monorepo in Azure DevOps. Install from the repository root (pnpm workspace), then run the commands from `apps/cli` or with `pnpm -C apps/cli <command>`:
306
+
305
307
  ```bash
306
- git clone https://github.com/EmergentSoftware/agentic-toolkit-cli.git
307
- cd agentic-toolkit-cli
308
+ git clone https://emergentcode.visualstudio.com/Emergent%20Software/_git/Emergent.AgenticToolkit
309
+ cd Emergent.AgenticToolkit
308
310
  pnpm install
309
- pnpm build
311
+ pnpm -C apps/cli build
310
312
  ```
311
313
 
312
314
  ### Commands
313
315
 
316
+ Run from `apps/cli`:
317
+
314
318
  ```bash
315
319
  pnpm dev # Watch mode (tsc --watch)
316
320
  pnpm build # Full TypeScript build
@@ -357,20 +361,19 @@ All commits must follow the Conventional Commits format. The commit type determi
357
361
  | `chore:` | No release | `chore: update dev dependencies` |
358
362
  | `feat!:` / `BREAKING CHANGE:` | Major (`x.0.0`) | `feat!: redesign config format` |
359
363
 
360
- #### Commitlint
364
+ Only commits that change files under `apps/cli/` count toward a CLI release. Commits elsewhere in the monorepo (the API, infra, pipelines) never release the CLI.
361
365
 
362
- Commit messages are validated by [commitlint](https://commitlint.js.org/) (extending `@commitlint/config-conventional`) in two places:
366
+ #### Commitlint
363
367
 
364
- - **Locally** — via a commit-msg Git hook that checks messages before they are committed
365
- - **CI** — the Validate workflow lints all commit messages in a PR against the base branch
368
+ Commit messages are validated by [commitlint](https://commitlint.js.org/) (extending `@commitlint/config-conventional`, config at the repository root). The `atk-ci` pipeline lints every commit in a pull request. Non-conforming commits fail the PR build.
366
369
 
367
- Non-conforming commits will be rejected.
370
+ Complete pull requests with **Merge (no fast-forward)**, not squash. The squash commit message (`Merged PR 1234: …`) is not a conventional commit, so semantic-release would ignore the change.
368
371
 
369
372
  #### Semantic Release
370
373
 
371
- [semantic-release](https://semantic-release.gitbook.io/) automates versioning, changelog generation, npm publishing, git tagging, and GitHub Releases based on commit messages. No manual version bumps are needed — the version in `package.json` is managed entirely by the pipeline.
374
+ [semantic-release](https://semantic-release.gitbook.io/) automates versioning, changelog generation and git tagging from commit messages. No manual version bumps are needed: the pipeline manages the version in `package.json`.
372
375
 
373
- The release workflow runs on two branches:
376
+ The `atk-cli-release` Azure Pipeline (`pipelines/release-cli.yml`) runs on push to two branches:
374
377
 
375
378
  | Branch | Trigger | npm Tag | Version Format | Example |
376
379
  | --------- | ------------------------ | -------- | -------------- | ------------- |
@@ -379,17 +382,25 @@ The release workflow runs on two branches:
379
382
 
380
383
  **Pipeline steps:**
381
384
 
382
- 1. **Release** — on push to `main` or `develop`, invokes `semantic-release` which:
383
- - Analyzes commits since the last release to determine the version bump
385
+ 1. Lint, type check, test and build the CLI.
386
+ 2. Run `semantic-release`, which:
387
+ - Analyzes the `apps/cli/` commits since the last release to determine the version bump
384
388
  - Generates release notes grouped by type (Features, Bug Fixes, Performance, etc.)
385
- - Updates `CHANGELOG.md`
386
- - Publishes the package to npm
387
- - Creates a git tag and GitHub Release
388
- - Commits the updated changelog and `package.json` version
389
+ - Updates `CHANGELOG.md` and the `package.json` version, commits them as `chore(release): x.y.z [skip ci]` and tags `vx.y.z`
390
+ 3. **Stage** the version on npm with `npm stage publish`. The run summary prints the stage id.
391
+
392
+ A staged version is not installable until an npm maintainer approves it with two-factor authentication:
393
+
394
+ ```bash
395
+ npm stage view <stage-id> # inspect it first
396
+ npm stage approve <stage-id> --otp=<code> # publish it to the dist-tag
397
+ ```
398
+
399
+ Rejecting a stage (`npm stage reject <stage-id> --otp=<code>`) leaves its git tag in place, so the next release takes the next number. Never delete release tags.
389
400
 
390
401
  #### PR Validation
391
402
 
392
- Pull requests targeting `main` or `develop` run linting, type checking, tests, and commitlint.
403
+ Pull requests targeting `main` or `develop` that touch `apps/cli/` run the `atk-cli-ci` pipeline: linting, type checking, tests, build, and a check that every release tag still has a `CHANGELOG.md` section. Keep both sides' `CHANGELOG.md` sections when merging `main` back into `develop`.
393
404
 
394
405
  ## Tech Stack
395
406
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@detergent-software/atk",
3
- "version": "8.0.1",
3
+ "version": "8.0.2-dev.1",
4
4
  "description": "Agentic Tool Kit — CLI for managing AI coding tool assets.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -28,7 +28,8 @@
28
28
  },
29
29
  "repository": {
30
30
  "type": "git",
31
- "url": "https://github.com/EmergentSoftware/agentic-toolkit-cli.git"
31
+ "url": "https://emergentcode.visualstudio.com/Emergent%20Software/_git/Emergent.AgenticToolkit",
32
+ "directory": "apps/cli"
32
33
  },
33
34
  "publishConfig": {
34
35
  "registry": "https://registry.npmjs.org",
@@ -37,13 +38,6 @@
37
38
  "engines": {
38
39
  "node": ">=24.0.0"
39
40
  },
40
- "packageManager": "pnpm@10.5.2",
41
- "pnpm": {
42
- "patchedDependencies": {
43
- "pastel@4.0.0": "patches/pastel@4.0.0.patch",
44
- "ink-testing-library": "patches/ink-testing-library.patch"
45
- }
46
- },
47
41
  "dependencies": {
48
42
  "@azure/msal-node": "^6.0.0",
49
43
  "chalk": "^5.4.0",
@@ -58,12 +52,12 @@
58
52
  "zod": "^4.0.0"
59
53
  },
60
54
  "devDependencies": {
61
- "@commitlint/cli": "^20.4.2",
62
- "@commitlint/config-conventional": "^20.4.2",
63
55
  "@eslint/js": "^9.0.0",
64
56
  "@hey-api/openapi-ts": "0.99.0",
65
57
  "@semantic-release/changelog": "^6.0.3",
58
+ "@semantic-release/commit-analyzer": "^13.0.1",
66
59
  "@semantic-release/git": "^10.0.1",
60
+ "@semantic-release/release-notes-generator": "^14.1.0",
67
61
  "@testing-library/react": "^16.0.0",
68
62
  "@types/diff": "^7.0.0",
69
63
  "@types/node": "^24.0.0",