Skip to content

Commit 3bd1002

Browse files
Merge pull request #304 from contentstack/version/bump
DX | 18-05-2026 | Release
2 parents c122d3a + b838e63 commit 3bd1002

14 files changed

Lines changed: 596 additions & 1702 deletions

File tree

.cursor/rules/README.md

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,5 @@
1-
# Cursor rules for `contentstack-cli-tsgen`
1+
# Cursor (optional)
22

3-
This folder contains project-specific rules. Each `.mdc` file uses YAML frontmatter (`description`, `globs`, `alwaysApply`).
3+
**Cursor** users: start at **[AGENTS.md](../../AGENTS.md)**. All conventions live in **`skills/*/SKILL.md`**.
44

5-
| Rule file | `alwaysApply` | Globs | When it applies | Related skill |
6-
| --- | --- | --- | --- | --- |
7-
| [dev-workflow.mdc](dev-workflow.mdc) | No | `package.json`, `package-lock.json`, `.github/workflows/**/*`, `tsconfig.json`, `jest.config.js`, `.eslintrc.js`, `AGENTS.md` | Workflow, CI, release, package scripts | [testing](../../skills/testing/SKILL.md), [code-review](../../skills/code-review/SKILL.md) |
8-
| [typescript.mdc](typescript.mdc) | No | `src/**/*.ts`, `tests/**/*.ts` | TypeScript and ESLint conventions | [typescript-cli-tsgen](../../skills/typescript-cli-tsgen/SKILL.md) |
9-
| [oclif-tsgen.mdc](oclif-tsgen.mdc) | No | `src/commands/**`, `src/lib/**` | OCLIF command, flags, delegation to `@contentstack/types-generator` | [typescript-cli-tsgen](../../skills/typescript-cli-tsgen/SKILL.md) |
10-
| [testing.mdc](testing.mdc) | No | `tests/**`, `jest.config.js` | Jest and integration tests with `csdx` | [testing](../../skills/testing/SKILL.md) |
11-
| [code-review.mdc](code-review.mdc) | **Yes** || Every change | [code-review](../../skills/code-review/SKILL.md) |
12-
13-
## Referencing rules in Cursor
14-
15-
- Use **@** in chat (e.g. `@oclif-tsgen`, `@dev-workflow`) to pull in rule context.
16-
- `code-review.mdc` applies automatically (`alwaysApply: true`); others match globs or manual @-mentions.
5+
This folder only points contributors to **`AGENTS.md`** so editor-specific config does not duplicate the canonical docs.

.cursor/rules/code-review.mdc

Lines changed: 0 additions & 28 deletions
This file was deleted.

.cursor/rules/dev-workflow.mdc

Lines changed: 0 additions & 41 deletions
This file was deleted.

.cursor/rules/oclif-tsgen.mdc

Lines changed: 0 additions & 33 deletions
This file was deleted.

.cursor/rules/testing.mdc

Lines changed: 0 additions & 15 deletions
This file was deleted.

.cursor/rules/typescript.mdc

Lines changed: 0 additions & 13 deletions
This file was deleted.

.talismanrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@ fileignoreconfig:
33
ignore_detectors:
44
- filecontent
55
- filename: package-lock.json
6-
checksum: efa1707cdc8a6e76f32e183d53f098011d63f3855ebf81768dad394437f4e3fc
6+
checksum: 441f3236602015591582c23d01bf888c5935c3e9e7606bb67d25877d26eacf02
77
version: "1.0"

AGENTS.md

Lines changed: 34 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,54 @@
1-
# `contentstack-cli-tsgen`
1+
# contentstack-cli-tsgen – Agent guide
22

3-
**Purpose:** Contentstack CLI (**OCLIF**) plugin that adds **`csdx tsgen`** to generate TypeScript typings from a stack. Generation is delegated to the **`@contentstack/types-generator`** npm package (`generateTS` / `graphqlTS`); this repo owns the command surface (flags, auth alias, file output, CLI error formatting).
3+
**Universal entry point** for contributors and AI agents. Detailed conventions live in **`skills/*/SKILL.md`**.
44

5-
- **Repository:** [github.com/Contentstack-Solutions/contentstack-cli-tsgen](https://github.com/Contentstack-Solutions/contentstack-cli-tsgen)
6-
- **Homepage:** [https://github.com/Contentstack-Solutions/contentstack-cli-tsgen](https://github.com/Contentstack-Solutions/contentstack-cli-tsgen)
5+
## What this repo is
76

8-
**Library dependency (separate repo):** [`@contentstack/types-generator`](https://www.npmjs.com/package/@contentstack/types-generator) (see version in [package.json](package.json)). Source for the generator itself: [github.com/contentstack/types-generator](https://github.com/contentstack/types-generator). Do not assume a local sibling folder; treat it as an npm dependency only.
7+
| Field | Detail |
8+
| --- | --- |
9+
| **Name:** | [Contentstack-Solutions/contentstack-cli-tsgen](https://github.com/Contentstack-Solutions/contentstack-cli-tsgen) |
10+
| **Purpose:** | OCLIF plugin that adds **`csdx tsgen`** to generate TypeScript typings from a stack. Generation is delegated to **`@contentstack/types-generator`** (`generateTS` / `graphqlTS`); this repo owns flags, auth alias, file output, and CLI error formatting. |
11+
| **Out of scope (if any):** | Core type-generation logic belongs in **`@contentstack/types-generator`** ([npm](https://www.npmjs.com/package/@contentstack/types-generator)), not reimplemented here. |
912

10-
## Tech stack
13+
## Tech stack (at a glance)
1114

1215
| Area | Details |
1316
| --- | --- |
14-
| Language | TypeScript **5.9** (`strict` in [tsconfig.json](tsconfig.json)) |
15-
| Runtime | Node (CI **18.x** / **20.x**; release **22.x**) |
16-
| Build | **`tsc -b`****`lib/`**; **`npm run prepack`** runs `tsc -b`, **`oclif manifest`**, **`oclif readme`** |
17-
| CLI | **OCLIF** — commands compiled to **`lib/commands`** (see `oclif.commands` in [package.json](package.json)) |
18-
| Tests | **Jest** + **ts-jest** ([jest.config.js](jest.config.js)) |
19-
| Lint | **ESLint** runs in **`posttest`** after tests ([package.json](package.json) scripts) |
17+
| **Language** | TypeScript **5.9** (`strict` in [tsconfig.json](tsconfig.json)) |
18+
| **Build** | **`tsc -b`****`lib/`**; **`npm run prepack`** runs compile, **`oclif manifest`**, **`oclif readme`** |
19+
| **Tests** | **Jest** + **ts-jest** ([jest.config.js](jest.config.js)); integration tests under `tests/integration/` |
20+
| **Lint / coverage** | ESLint in **`posttest`** after **`npm test`** ([package.json](package.json)) |
21+
| **Other** | OCLIF, Node (CI **18.x** / **20.x**; release **22.x**) |
2022

2123
**Main dependencies:** `@contentstack/cli-command`, `@contentstack/cli-utilities`, `@contentstack/types-generator`, `dotenv`.
2224

23-
## Source layout
24-
25-
- **Commands:** [src/commands/](src/commands/) (e.g. `tsgen.ts`)
26-
- **Helpers / errors:** [src/lib/](src/lib/)
27-
- **Types:** [src/types/](src/types/)
28-
- **Build output:** **`lib/`** (not committed as source of truth; produced by `prepack`)
29-
30-
## Common commands
25+
## Commands (quick reference)
3126

32-
| Command | Purpose |
27+
| Command type | Command |
3328
| --- | --- |
34-
| `npm run prepack` | Clean `lib/`, compile TypeScript, generate OCLIF manifest and README |
35-
| `npm test` | Jest (`--testPathPattern=tests`); then **`posttest`** runs ESLint with fix |
36-
| `npm run test:integration` | Jest for `tests/integration` only |
29+
| **Build** | `npm run prepack` (canonical compile; no separate `build` script) |
30+
| **Test** | `npm test` (then **`posttest`** ESLint) |
31+
| **Lint** | via **`posttest`** after tests |
3732

38-
There is no dedicated `build` script; **`prepack`** is the canonical compile path. CI may run `npm run build --if-present` (no-op here if no `build` script).
33+
**Integration tests:** `npm run test:integration` — Jest for `tests/integration` only.
34+
35+
CI: [.github/workflows/node.js.yml](.github/workflows/node.js.yml); release: [.github/workflows/release.yml](.github/workflows/release.yml); SCA: [.github/workflows/sca-scan.yml](.github/workflows/sca-scan.yml).
3936

4037
## Credentials and integration tests
4138

42-
Integration tests spawn **`csdx tsgen`** and require a configured **delivery token alias**. Set **`TOKEN_ALIAS`** (e.g. in **`.env`** at the package root; see [tests/integration/tsgen.integration.test.ts](tests/integration/tsgen.integration.test.ts)).
39+
Integration tests spawn **`csdx tsgen`** and require a **delivery token alias**. Set **`TOKEN_ALIAS`** (e.g. **`.env`** at package root; see [tests/integration/tsgen.integration.test.ts](tests/integration/tsgen.integration.test.ts)). CI uses secrets such as **`REGION`**, **`TOKEN_ALIAS`**, **`APIKEY`**, **`DELIVERYKEY`**, **`ENVIRONMENT`**.
40+
41+
## Where the documentation lives: skills
4342

44-
CI uses GitHub secrets such as **`REGION`**, **`TOKEN_ALIAS`**, **`APIKEY`**, **`DELIVERYKEY`**, **`ENVIRONMENT`** (see [.github/workflows/node.js.yml](.github/workflows/node.js.yml)).
43+
| Skill | Path | What it covers |
44+
| --- | --- | --- |
45+
| Development workflow | [skills/dev-workflow/SKILL.md](skills/dev-workflow/SKILL.md) | Branches, CI, prepack, PRs, releases |
46+
| TypeScript CLI tsgen | [skills/typescript-cli-tsgen/SKILL.md](skills/typescript-cli-tsgen/SKILL.md) | OCLIF command, flags, delegation to the library |
47+
| Testing | [skills/testing/SKILL.md](skills/testing/SKILL.md) | Jest, ESLint posttest, integration env |
48+
| Code review | [skills/code-review/SKILL.md](skills/code-review/SKILL.md) | PR checklist, terminology, semver |
4549

46-
---
50+
An index with “when to use” hints is in [skills/README.md](skills/README.md).
4751

48-
## AI guidance index
52+
## Using Cursor (optional)
4953

50-
- [Cursor rules (overview)](.cursor/rules/README.md)
51-
- [Skills index](skills/README.md)
54+
If you use **Cursor**, [.cursor/rules/README.md](.cursor/rules/README.md) only points to **`AGENTS.md`**—same docs as everyone else.

0 commit comments

Comments
 (0)