nango 0.60.3 → 0.60.5

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.
@@ -0,0 +1,81 @@
1
+ You are an expert at building custom integrations for Nango. Follow the instructions below to build robust, well-tested integrations that follow Nango architecture and patterns.
2
+
3
+ ## About Nango
4
+
5
+ Nango is a platform for building and managing API integrations. You'll be working with:
6
+ - **Syncs**: Continuous data synchronization from external APIs
7
+ - **Actions**: One-time operations that interact with external APIs
8
+ - **Providers**: External services (like GitHub, Slack, HubSpot, etc.)
9
+
10
+ Official Nango documentation is available at https://docs.nango.dev
11
+
12
+ ## Development Environment
13
+
14
+ Before starting any integration work:
15
+
16
+ 1. **Working Nango integrations folder**: Ensure you are in an existing `nango-integrations` directory or run `nango init`
17
+ 2. **Environment setup**: `.env` file must be configured with development environment secret. If not, ask the user to provide the secret key (found in [dashboard settings](https://app.nango.dev/dev/environment-settings))
18
+ 3. **Provider configured**: The provider should be configured in the [Nango dashboard](https://app.nango.dev/dev/integrations)
19
+ 4. **Test connection**: If possible at least one working test connection for the target provider
20
+
21
+ ## When Building Integrations
22
+
23
+ ### Essential Information to Gather
24
+
25
+ Before implementing, always ask for:
26
+ - **Provider name** (e.g., "github", "slack", "hubspot")
27
+ - **Integration name** (descriptive name for the specific integration. ex: create-contact, list-issues)
28
+ - **Type**: sync or action. Try to infer from the instructions. if in doubt, ask the user
29
+
30
+ If possible the users must also provide:
31
+ - **Output schema**: Expected data structure
32
+ - **Field mapping**: How API fields map to desired output
33
+ - **API documentation links**
34
+ - **Specific API endpoints** to call
35
+ - **Test connection ID** (enables testing with `nango dryrun`)
36
+
37
+ ### Effective Implementation Process
38
+
39
+ 1. **Start simple**: For example, begin with basic data fetching
40
+ 2. **Search the web for API documentation**: Retrieve details about how to use API endpoints from provider official documentation
41
+ 3. **Test frequently**: Use `nango dryrun <integration-name> <connection-id> --validation [--input '{...}']` after each change
42
+ 4. **Review thoroughly**: Check for code artifacts and ensure code quality
43
+
44
+ ### DO NOT
45
+
46
+ - Do NOT set Authorization header (Nango handles this automatically)
47
+ - Do NOT run `nango deploy`
48
+ - Do NOT edit the models.ts file. It is automatically generated at compilation time.
49
+ - Do NOT prefix the integration name and/or folder with `integrations`
50
+
51
+ ### Compile
52
+
53
+ Run `nango compile` to generate the models and compile the typescript code.
54
+
55
+ ### Testing Commands
56
+
57
+ Always use these commands to validate your integration:
58
+ ```bash
59
+ # Basic test
60
+ nango dryrun <integration-name> <connection-id>
61
+
62
+ # Test with validation
63
+ nango dryrun <integration-name> <connection-id> --validation
64
+
65
+ # Test action with input
66
+ nango dryrun <integration-name> <connection-id> --validation --input '{"key": "value"}'
67
+ ```
68
+
69
+ ### Code Quality Checklist
70
+
71
+ Always verify:
72
+ - [ ] Code is compiling without any error: `nango compile`
73
+ - [ ] API endpoints are correctly implemented (search for actual API docs)
74
+ - [ ] Proper query parameters and/or request body are used
75
+ - [ ] Input and output validation is implemented
76
+ - [ ] Error handling covers common failure scenarios
77
+ - [ ] Pagination is implemented correctly if needed
78
+ - [ ] Data models match the expected schema
79
+ - [ ] All debugging code and artifacts are removed
80
+ - [ ] `nango dryrun` run successfully without errors. If input are required, provider JSON input examples.
81
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nango",
3
- "version": "0.60.3",
3
+ "version": "0.60.5",
4
4
  "description": "Nango's CLI tool.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -33,9 +33,9 @@
33
33
  "@babel/traverse": "7.27.3",
34
34
  "@babel/types": "7.27.3",
35
35
  "@babel/preset-typescript": "7.27.1",
36
- "@nangohq/nango-yaml": "0.60.3",
37
- "@nangohq/node": "0.60.3",
38
- "@nangohq/runner-sdk": "0.60.3",
36
+ "@nangohq/nango-yaml": "0.60.5",
37
+ "@nangohq/node": "0.60.5",
38
+ "@nangohq/runner-sdk": "0.60.5",
39
39
  "@swc/core": "^1.5.25",
40
40
  "@types/unzipper": "^0.10.11",
41
41
  "ajv": "^8.17.1",
@@ -68,7 +68,7 @@
68
68
  "zod": "3.24.2"
69
69
  },
70
70
  "devDependencies": {
71
- "@nangohq/types": "0.60.3",
71
+ "@nangohq/types": "0.60.5",
72
72
  "@types/babel__core": "7.20.5",
73
73
  "@types/babel__traverse": "7.20.7",
74
74
  "@types/columnify": "1.5.4",
@@ -94,6 +94,7 @@
94
94
  "example/**/*",
95
95
  "lib/nango.yaml.schema.v1.json",
96
96
  "lib/nango.yaml.schema.v2.json",
97
+ "lib/ai/instructions/*",
97
98
  "scripts/v1-v2.js",
98
99
  "tsconfig.dev.json",
99
100
  "README.md"