@dk/jolly 0.1.8 → 0.1.10

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 (49) hide show
  1. package/README.md +16 -92
  2. package/bin/jolly +2 -0
  3. package/package.json +27 -24
  4. package/src/index.ts +2095 -0
  5. package/src/lib/cloud-api.ts +527 -0
  6. package/src/lib/env-file.ts +68 -0
  7. package/src/lib/saleor-url.ts +37 -0
  8. package/.env.example +0 -3
  9. package/.mcp.json +0 -7
  10. package/.sisyphus/boulder.json +0 -13
  11. package/.sisyphus/notepads/saleor-agent-cli/decisions.md +0 -11
  12. package/.sisyphus/notepads/saleor-agent-cli/issues.md +0 -6
  13. package/.sisyphus/notepads/saleor-agent-cli/learnings.md +0 -6
  14. package/.sisyphus/plans/saleor-agent-cli.md +0 -600
  15. package/AGENTS.md +0 -46
  16. package/bun.lock +0 -123
  17. package/bunfig.toml +0 -8
  18. package/dist/agent.js +0 -258
  19. package/dist/bootstrap.js +0 -184
  20. package/dist/index.js +0 -722
  21. package/src/agents/index.ts +0 -1
  22. package/src/agents/setup.ts +0 -210
  23. package/src/api/auth.ts +0 -75
  24. package/src/api/client.ts +0 -152
  25. package/src/api/endpoints.ts +0 -8
  26. package/src/api/index.ts +0 -4
  27. package/src/cli/agent.ts +0 -26
  28. package/src/cli/bootstrap.ts +0 -24
  29. package/src/cli/commands/agent.ts +0 -40
  30. package/src/cli/commands/app.ts +0 -61
  31. package/src/cli/commands/config.ts +0 -38
  32. package/src/cli/commands/store.ts +0 -75
  33. package/src/cli/index.ts +0 -16
  34. package/src/commands/app.ts +0 -126
  35. package/src/commands/index.ts +0 -1
  36. package/src/commands/store.ts +0 -64
  37. package/src/test/command-handlers.test.ts +0 -232
  38. package/src/test/e2e-flows.test.ts +0 -231
  39. package/src/test/entry-points.test.ts +0 -126
  40. package/src/test/error-handling.test.ts +0 -137
  41. package/src/test/helpers.ts +0 -49
  42. package/src/test/index.ts +0 -1
  43. package/src/test/mocks.ts +0 -172
  44. package/src/test/setup.ts +0 -29
  45. package/src/tui/components.ts +0 -77
  46. package/src/tui/index.ts +0 -3
  47. package/src/tui/renderer.ts +0 -34
  48. package/src/tui/theme.ts +0 -38
  49. package/tsconfig.json +0 -20
package/README.md CHANGED
@@ -1,121 +1,45 @@
1
- # Jolly - Saleor CLI for AI Agents
1
+ # Jolly
2
2
 
3
- Bootstraps Saleor projects and configures AI agents with Saleor skills.
3
+ Ahoy, agent. Go build a store.
4
4
 
5
- ## Installation
5
+ Jolly is a homepage + `npx` CLI + agent setup workflow that helps a customer's own agent set up and iterate on an end-to-end Saleor Cloud storefront.
6
6
 
7
- ```bash
8
- npm install -g @saleor/jolly
9
- ```
10
-
11
- ## Commands
12
-
13
- ### Store Management
14
-
15
- ```bash
16
- # Create a new Saleor Cloud store
17
- jolly store create --name my-store
18
-
19
- # Create with specific region
20
- jolly store create --name my-store --region eu-west-1
21
-
22
- # List your stores
23
- jolly store list
24
-
25
- # Create environment
26
- jolly store env create --store <store-id> --name production
27
- ```
28
-
29
- ### App Scaffolding
30
-
31
- ```bash
32
- # Create a dashboard extension
33
- jolly app create --name my-dashboard --type dashboard-extension
34
-
35
- # Create a payment app (hosted)
36
- jolly app create --name my-payment --type payment --provider stripe
37
-
38
- # Create a webhook handler
39
- jolly app create --name my-webhook --type webhook
40
- ```
7
+ ## Agent workflow
41
8
 
42
- ### Agent Setup
9
+ This repository uses Shipshape for its three-role, spec-driven agent workflow.
43
10
 
44
- ```bash
45
- # Setup AI agent with Saleor skills and MCP
46
- jolly agent setup
47
-
48
- # Install skills only
49
- jolly agent skills install
50
-
51
- # Setup in specific directory
52
- jolly agent setup --path /my/project
53
- ```
54
-
55
- ### Configuration
11
+ Before substantive agent work, install or load Shipshape:
56
12
 
57
13
  ```bash
58
- # Deploy configuration to store
59
- jolly config deploy --store <store-id>
60
-
61
- # Introspect current configuration
62
- jolly config introspect --store <store-id>
14
+ npx skills add dmytri/shipshape --skill '*'
63
15
  ```
64
16
 
65
- ## npm Entry Points
17
+ For Claude Code:
66
18
 
67
19
  ```bash
68
- # Bootstrap new Saleor project
69
- npm create @saleor/jolly my-project
70
-
71
- # Configure AI agent for Saleor
72
- npm init @saleor/jolly
20
+ npx skills add dmytri/shipshape --agent claude-code --skill '*'
73
21
  ```
74
22
 
75
- ## Environment Variables
76
-
77
- You can set environment variables via a `.env` file:
23
+ For Zed:
78
24
 
79
25
  ```bash
80
- # Copy the example file
81
- cp .env.example .env
82
-
83
- # Edit with your token
84
- SALEOR_CLOUD_TOKEN=your-token-here
26
+ npx skills add dmytri/shipshape --agent zed --skill '*'
85
27
  ```
86
28
 
87
- Or export directly:
29
+ For Pi:
88
30
 
89
31
  ```bash
90
- export SALEOR_CLOUD_TOKEN=your-token-here
32
+ pi install npm:pi-shipshape
91
33
  ```
92
34
 
93
- Get your token at: https://cloud.saleor.io/settings/api-tokens
35
+ Read `AGENTS.md` for Jolly-specific constraints and `HANDOVER.md` for current state.
94
36
 
95
37
  ## Development
96
38
 
97
39
  ```bash
98
- # Install dependencies
99
40
  bun install
100
-
101
- # Build
102
- bun run build
103
-
104
- # Run tests
105
41
  bun test
106
-
107
- # Type check
42
+ bun run test:logic
43
+ bun run test:bdd
108
44
  bun run typecheck
109
45
  ```
110
-
111
- ## Architecture
112
-
113
- - **CLI Framework**: yargs for argument parsing
114
- - **Runtime**: Bun
115
- - **API Client**: Direct Saleor Cloud API integration
116
- - **Agent Skills**: saleor/agent-skills from GitHub
117
- - **MCP**: Official saleor-mcp at mcp.saleor.app
118
-
119
- ## License
120
-
121
- MIT
package/bin/jolly ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env bun
2
+ import "../src/index.ts";
package/package.json CHANGED
@@ -1,34 +1,37 @@
1
1
  {
2
2
  "name": "@dk/jolly",
3
- "version": "0.1.8",
4
- "description": "Saleor project bootstrapper and agent configurator",
3
+ "version": "0.1.10",
4
+ "description": "Ahoy, agent. Go build a Saleor storefront.",
5
5
  "type": "module",
6
6
  "bin": {
7
- "jolly": "./dist/index.js",
8
- "create-jolly": "./dist/bootstrap.js",
9
- "init-jolly": "./dist/agent.js"
7
+ "jolly": "./bin/jolly"
10
8
  },
11
- "scripts": {
12
- "build": "bun build src/cli/index.ts --outdir=dist --target=node --external yargs --external @dotenvx/dotenvx && bun build src/cli/bootstrap.ts --outdir=dist --target=node --external yargs --external @dotenvx/dotenvx && bun build src/cli/agent.ts --outdir=dist --target=node --external yargs --external @dotenvx/dotenvx",
13
- "prepublishOnly": "bun run build",
14
- "jolly": "bun src/cli/index.ts",
15
- "dev": "bun --watch src/cli/index.ts",
16
- "test": "bun test",
17
- "typecheck": "bun tsc --noEmit",
18
- "release": "npm version patch --no-git-tag-version && npm publish",
19
- "release:minor": "npm version minor --no-git-tag-version && npm publish",
20
- "release:major": "npm version major --no-git-tag-version && npm publish"
9
+ "files": [
10
+ "bin/",
11
+ "src/",
12
+ "README.md"
13
+ ],
14
+ "publishConfig": {
15
+ "access": "public"
21
16
  },
22
- "dependencies": {
23
- "@dotenvx/dotenvx": "^1.59.1",
24
- "yargs": "^17.7.2"
17
+ "engines": {
18
+ "bun": ">=1.1.0"
25
19
  },
26
- "devDependencies": {
27
- "@types/yargs": "^17.0.32",
28
- "bun-types": "^1.3.11",
29
- "typescript": "^5.4.0"
20
+ "scripts": {
21
+ "dev": "bun run --watch src/index.ts",
22
+ "start": "bun run src/index.ts",
23
+ "test": "bun test tests/",
24
+ "test:bdd": "bun x --bun cucumber-js",
25
+ "test:logic": "bun x --bun cucumber-js -p logic",
26
+ "test:sandbox": "bun x --bun cucumber-js -p sandbox",
27
+ "typecheck": "bun x tsc --noEmit"
30
28
  },
31
- "publishConfig": {
32
- "access": "public"
29
+ "devDependencies": {
30
+ "@cucumber/cucumber": "^11.3.0",
31
+ "@earendil-works/pi-coding-agent": "^0.79.1",
32
+ "@types/bun": "^1.3.14",
33
+ "@types/node": "^22.10.0",
34
+ "happy-dom": "^15.11.0",
35
+ "typescript": "^5.7.0"
33
36
  }
34
37
  }