@cursor/july 0.1.53 → 0.1.54
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.
package/AGENTS.md
CHANGED
|
@@ -16,6 +16,16 @@ HTTP/2 client corrupts local harness
|
|
|
16
16
|
tool-result streams (`NGHTTP2_FRAME_SIZE_ERROR`), which makes every
|
|
17
17
|
built-in read/grep fail and sends models into retry loops.
|
|
18
18
|
|
|
19
|
+
## Bump `@cursor/july` with every source change
|
|
20
|
+
|
|
21
|
+
Any PR that changes this package's **source** (`src/`, `playground/`,
|
|
22
|
+
CLI, shipped `skills/` / `templates/` — runtime behavior that goes out
|
|
23
|
+
in `@cursor/july`) **must bump** `version` in `package.json` in the
|
|
24
|
+
**same PR**. On 0.x, bump the patch (`0.1.N` → `0.1.N+1`). Do not
|
|
25
|
+
publish from the PR; merging the bump is what lets the `july-release`
|
|
26
|
+
pipeline cut. Docs-only, tests-only, and edits to this file do not
|
|
27
|
+
need a bump.
|
|
28
|
+
|
|
19
29
|
## Skills
|
|
20
30
|
|
|
21
31
|
Before scaffolding, wiring channels, writing evals, or deploying, **read the
|
|
@@ -306,6 +316,8 @@ Fixtures still work for offline replay: `POST` a saved payload with an
|
|
|
306
316
|
|
|
307
317
|
## Do not
|
|
308
318
|
|
|
319
|
+
- Land source changes without bumping `version` in `package.json` in the
|
|
320
|
+
same PR (see **Bump `@cursor/july` with every source change** above).
|
|
309
321
|
- Proactively add or update documentation (`docs/`, READMEs, this file) as
|
|
310
322
|
part of a code change. Docs are written intentionally, on explicit request
|
|
311
323
|
only — never as a side effect of a feature or fix. If a change makes docs
|
|
@@ -9,9 +9,10 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import type { SlackManifestOptions } from "./types.js";
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
12
|
+
* Dashboard tab root: Slack's app-settings banner, and the only OAuth
|
|
13
|
+
* redirect URI we register. AAA request-approval (`oauth_authorize_url`)
|
|
14
|
+
* 400s with redirect_uri mismatch unless a URI is registered. This is
|
|
15
|
+
* not an install callback. `apps.managedInstall` still installs.
|
|
15
16
|
*/
|
|
16
17
|
export declare const SLACK_EXTERNAL_APP_MANAGEMENT_URL = "https://cursor.com/dashboard/deployed-agents";
|
|
17
18
|
export interface SlackAppManifest {
|
|
@@ -41,6 +42,7 @@ export interface SlackAppManifest {
|
|
|
41
42
|
scopes: {
|
|
42
43
|
bot: string[];
|
|
43
44
|
};
|
|
45
|
+
redirect_urls?: string[];
|
|
44
46
|
};
|
|
45
47
|
settings: {
|
|
46
48
|
event_subscriptions: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,iDACE,CAAC;AAEjD,MAAM,WAAW,gBAAgB;IAC/B,mBAAmB,EAAE;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,QAAQ,EAAE;QACR,QAAQ,EAAE;YACR,YAAY,EAAE,MAAM,CAAC;YACrB,aAAa,EAAE,OAAO,CAAC;SACxB,CAAC;QACF,cAAc,CAAC,EAAE;YACf,qBAAqB,EAAE,MAAM,CAAC;YAC9B,iBAAiB,EAAE,KAAK,CAAC;gBAAE,KAAK,EAAE,MAAM,CAAC;gBAAC,OAAO,EAAE,MAAM,CAAA;aAAE,CAAC,CAAC;SAC9D,CAAC;QACF,QAAQ,CAAC,EAAE;YACT,gBAAgB,EAAE,OAAO,CAAC;YAC1B,oBAAoB,EAAE,OAAO,CAAC;YAC9B,8BAA8B,EAAE,OAAO,CAAC;SACzC,CAAC;KACH,CAAC;IACF,YAAY,EAAE;QACZ,MAAM,EAAE;YACN,GAAG,EAAE,MAAM,EAAE,CAAC;SACf,CAAC;QACF,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;IACF,QAAQ,EAAE;QACR,mBAAmB,EAAE;YACnB,UAAU,EAAE,MAAM,EAAE,CAAC;SACtB,CAAC;QACF,aAAa,EAAE;YACb,UAAU,EAAE,OAAO,CAAC;SACrB,CAAC;QACF,kBAAkB,EAAE,OAAO,CAAC;QAC5B,mBAAmB,EAAE,OAAO,CAAC;QAC7B,sBAAsB,EAAE,OAAO,CAAC;QAChC,cAAc,EAAE,OAAO,CAAC;QACxB,oBAAoB,CAAC,EAAE;YACrB,8BAA8B,EAAE,OAAO,CAAC;YACxC,2BAA2B,EAAE,MAAM,CAAC;SACrC,CAAC;KACH,CAAC;CACH;AAwDD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,oBAAoB,GAC5B,gBAAgB,CAmFlB;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,KAAK,CAAC,GACzC;IACD,GAAG,EAAE,gBAAgB,CAAC;IACtB,IAAI,EAAE,gBAAgB,CAAC;CACxB,CAKA;AAED,kDAAkD;AAClD,wBAAgB,wBAAwB,CACtC,IAAI,EAAE;IAAE,GAAG,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,gBAAgB,CAAA;CAAE,EACvD,GAAG,GAAE,KAAK,GAAG,MAAM,GAAG,MAAe,GACpC,aAAa,CAAC;IACf,IAAI,EAAE,mBAAmB,GAAG,oBAAoB,CAAC;IACjD,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CAkBD"}
|
|
@@ -8,9 +8,10 @@
|
|
|
8
8
|
* backend cannot import this published package); keep the twins in lockstep.
|
|
9
9
|
*/
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
11
|
+
* Dashboard tab root: Slack's app-settings banner, and the only OAuth
|
|
12
|
+
* redirect URI we register. AAA request-approval (`oauth_authorize_url`)
|
|
13
|
+
* 400s with redirect_uri mismatch unless a URI is registered. This is
|
|
14
|
+
* not an install callback. `apps.managedInstall` still installs.
|
|
14
15
|
*/
|
|
15
16
|
export const SLACK_EXTERNAL_APP_MANAGEMENT_URL = "https://cursor.com/dashboard/deployed-agents";
|
|
16
17
|
const BOT_SCOPES = [
|
|
@@ -108,6 +109,9 @@ export function buildSlackManifest(options) {
|
|
|
108
109
|
scopes: {
|
|
109
110
|
bot: botScopes,
|
|
110
111
|
},
|
|
112
|
+
redirect_urls: options.managedByCursor === false
|
|
113
|
+
? undefined
|
|
114
|
+
: [SLACK_EXTERNAL_APP_MANAGEMENT_URL],
|
|
111
115
|
},
|
|
112
116
|
settings: Object.assign({ event_subscriptions: {
|
|
113
117
|
bot_events: botEvents,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cursor/july",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.54",
|
|
4
4
|
"description": "(early alpha) Filesystem-first framework for defining Cursor agents as markdown and TypeScript and serving them over channels with the Cursor SDK.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"repository": {
|
|
@@ -11,9 +11,10 @@
|
|
|
11
11
|
import type { SlackManifestOptions } from "./types.js";
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
14
|
+
* Dashboard tab root: Slack's app-settings banner, and the only OAuth
|
|
15
|
+
* redirect URI we register. AAA request-approval (`oauth_authorize_url`)
|
|
16
|
+
* 400s with redirect_uri mismatch unless a URI is registered. This is
|
|
17
|
+
* not an install callback. `apps.managedInstall` still installs.
|
|
17
18
|
*/
|
|
18
19
|
export const SLACK_EXTERNAL_APP_MANAGEMENT_URL =
|
|
19
20
|
"https://cursor.com/dashboard/deployed-agents";
|
|
@@ -42,6 +43,7 @@ export interface SlackAppManifest {
|
|
|
42
43
|
scopes: {
|
|
43
44
|
bot: string[];
|
|
44
45
|
};
|
|
46
|
+
redirect_urls?: string[];
|
|
45
47
|
};
|
|
46
48
|
settings: {
|
|
47
49
|
event_subscriptions: {
|
|
@@ -174,6 +176,10 @@ export function buildSlackManifest(
|
|
|
174
176
|
scopes: {
|
|
175
177
|
bot: botScopes,
|
|
176
178
|
},
|
|
179
|
+
redirect_urls:
|
|
180
|
+
options.managedByCursor === false
|
|
181
|
+
? undefined
|
|
182
|
+
: [SLACK_EXTERNAL_APP_MANAGEMENT_URL],
|
|
177
183
|
},
|
|
178
184
|
settings: {
|
|
179
185
|
event_subscriptions: {
|