@raycast/api 1.104.10 → 1.104.11

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.
@@ -1 +1 @@
1
- "use strict";var G=Object.create;var m=Object.defineProperty;var D=Object.getOwnPropertyDescriptor;var O=Object.getOwnPropertyNames;var L=Object.getPrototypeOf,R=Object.prototype.hasOwnProperty;var A=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),S=(n,t)=>{for(var i in t)m(n,i,{get:t[i],enumerable:!0})},I=(n,t,i,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of O(t))!R.call(n,a)&&a!==i&&m(n,a,{get:()=>t[a],enumerable:!(o=D(t,a))||o.enumerable});return n};var h=(n,t,i)=>(i=n!=null?G(L(n)):{},I(t||!n||!n.__esModule?m(i,"default",{value:n,enumerable:!0}):i,n)),F=n=>I(m({},"__esModule",{value:!0}),n);var B=A((re,k)=>{var J=require("node:tty"),q=J?.WriteStream?.prototype?.hasColors?.()??!1,r=(n,t)=>{if(!q)return a=>a;let i=`\x1B[${n}m`,o=`\x1B[${t}m`;return a=>{let u=a+"",d=u.indexOf(o);if(d===-1)return i+u+o;let x=i,g=0,P=(t===22?o:"")+i;for(;d!==-1;)x+=u.slice(g,d)+P,g=d+o.length,d=u.indexOf(o,g);return x+=u.slice(g)+o,x}},e={};e.reset=r(0,0);e.bold=r(1,22);e.dim=r(2,22);e.italic=r(3,23);e.underline=r(4,24);e.overline=r(53,55);e.inverse=r(7,27);e.hidden=r(8,28);e.strikethrough=r(9,29);e.black=r(30,39);e.red=r(31,39);e.green=r(32,39);e.yellow=r(33,39);e.blue=r(34,39);e.magenta=r(35,39);e.cyan=r(36,39);e.white=r(37,39);e.gray=r(90,39);e.bgBlack=r(40,49);e.bgRed=r(41,49);e.bgGreen=r(42,49);e.bgYellow=r(43,49);e.bgBlue=r(44,49);e.bgMagenta=r(45,49);e.bgCyan=r(46,49);e.bgWhite=r(47,49);e.bgGray=r(100,49);e.redBright=r(91,39);e.greenBright=r(92,39);e.yellowBright=r(93,39);e.blueBright=r(94,39);e.magentaBright=r(95,39);e.cyanBright=r(96,39);e.whiteBright=r(97,39);e.bgRedBright=r(101,49);e.bgGreenBright=r(102,49);e.bgYellowBright=r(103,49);e.bgBlueBright=r(104,49);e.bgMagentaBright=r(105,49);e.bgCyanBright=r(106,49);e.bgWhiteBright=r(107,49);k.exports=e});var $=A((ce,K)=>{K.exports={name:"ray",description:"Build extensions for Raycast with React and Node.js.",version:"1.104.10",author:"mathieudutour",private:!0,bin:{ray:"./bin/run.js"},dependencies:{"@oclif/core":"^4.8.4","@oclif/plugin-autocomplete":"^3.2.40","@oclif/plugin-help":"^6.2.37","@oclif/plugin-not-found":"^3.2.74","@raycast/eslint-plugin":"^2.1.1",ajv:"^8.18.0",archiver:"^7.0.1",camelcase:"^8.0.0",chokidar:"^4.0.3","cli-progress":"^3.12.0",clipboardy:"^2.3.0",execa:"^9.6.1","json-source-map":"^0.6.1",json5:"^2.2.3","node-fetch-cjs":"^3.3.2",open:"^8.4.2",ora:"^8.2.0",tail:"^2.2.6","terminal-link":"^3.0.0",yaml:"^2.8.2","yoctocolors-cjs":"^2.1.3"},devDependencies:{"@raycast/eslint-config":"^2.1.1","@types/archiver":"^7.0.0","@types/cli-progress":"^3.11.6","@types/node":"22.10.10","@types/tail":"^2.2.3",esbuild:"^0.27.3",eslint:"^9","json-schema-to-typescript":"^15.0.4",oclif:"^4.22.87",typescript:"^5.6.3"},files:["/bin","/dist","/oclif.manifest.json"],license:"MIT",main:"dist/index.js",oclif:{bin:"ray",dirname:"ray",commands:"./dist/commands",plugins:["@oclif/plugin-autocomplete","@oclif/plugin-help","@oclif/plugin-not-found"]},scripts:{"json-schema-to-ts":"json2ts ../../api/schema.json -y > src/types/manifest-schema.d.ts","build-scripts":'tsc "./scripts/build.ts" "./scripts/build-command.ts" "./scripts/dev-command.ts" --outDir ./scripts/dist --esModuleInterop',prebuild:"npm run json-schema-to-ts && npm run build-scripts",build:"node ./scripts/dist/build-command.js",predev:"npm run json-schema-to-ts && npm run build-scripts",dev:"node ./scripts/dist/dev-command.js",lint:"eslint . --ext .ts"},types:"dist/index.d.ts"}});var V={};S(V,{default:()=>b});module.exports=F(V);var l=require("@oclif/core");var f=h(require("node:fs")),v=h(require("node:path")),C=h(require("node:os"));var T={production:{url:"https://www.raycast.com",clientID:"KqAdcGhNfBKiUpfjD3nU3VNgh1t0iMPoX2hYEkN9d4I"},staging:{url:"https://www.rayca.st",clientID:"KqAdcGhNfBKiUpfjD3nU3VNgh1t0iMPoX2hYEkN9d4I"},development:{url:"http://localhost:3000",clientID:"rOCD_LhnXFObSLu9v7788qOGu25FZDqEzGjet4Q45ZY"}}[process.env.API_ENV||"production"],U="e69bae0ec90f5e838555",c={},E;function N(n){E=n;try{c=JSON.parse(f.readFileSync(v.join(Y(),"config.json"),"utf8"))}catch(t){if(t instanceof Error&&t.code==="ENOENT")return;throw new Error(`Failed to read config file: ${t}`)}}function _(n){switch(n){case"raycastApiURL":return process.env.RAY_APIURL||c.APIURL||T.url;case"raycastAccessToken":return process.env.RAY_TOKEN||c.Token||c.AccessToken||"";case"raycastClientId":return process.env.RAY_CLIENT_ID||c.ClientID||T.clientID;case"githubClientId":return process.env.RAY_GithubClientID||c.GithubClientID||U;case"githubAccessToken":return process.env.GITHUB_ACCESS_TOKEN||c.GithubAccessToken||"";case"flavorName":return process.env.RAY_Target?process.env.RAY_Target:typeof c.Target<"u"?c.Target:w(process.platform==="win32"?"x":"release")}}function w(n){switch(n){case"debug":return"debug";case"internal":return"internal";case"release":return"";case"x":return"x";case"x-internal":return"x-internal";case"x-development":return"x-development";case void 0:return _("flavorName")}}function M(){let n=w(E);return n==""?"raycast":`raycast-${n}`}function Y(){let n=v.join(C.default.homedir(),".config",M());return f.mkdirSync(n,{recursive:!0}),n}var s=h(B());var te=(0,s.blue)((0,s.dim)("internal only"));var p={wait:`\u{1F550}${(0,s.blue)("wait")} - `,info:`${process.env.GITHUB_ACTIONS==="true"?"\u2139\uFE0F":"\u2139\uFE0F "}${(0,s.cyan)("info")} - `,success:`\u2705${(0,s.green)("ready")} - `,warn:`${process.env.GITHUB_ACTIONS==="true"?"\u26A0\uFE0F":"\u26A0\uFE0F "}${(0,s.yellow)("warn")} - `,error:`\u{1F4A5}${(0,s.red)("error")} - `,event:`\u26A1\uFE0F${(0,s.magenta)("event")} - `,paymentPrompt:`\u{1F4B0}${(0,s.yellowBright)("plan")} - `},H=!0;function j(n,t){n||(p.wait=`${(0,s.blue)("wait")} - `,p.info=`${(0,s.cyan)("info")} - `,p.success=`${(0,s.green)("ready")} - `,p.warn=`${(0,s.yellow)("warn")} - `,p.error=`${(0,s.red)("error")} - `,p.event=`${(0,s.magenta)("event")} - `,p.paymentPrompt=`${(0,s.yellowBright)("plan")} - `),t&&(H=!1)}var y=class extends l.Command{static baseFlags={"exit-on-error":l.Flags.boolean({default:!0,helpGroup:"GLOBAL",aliases:["exitOnError"],deprecateAliases:!0,summary:"Always exit with non-zero code on error",allowNo:!0}),emoji:l.Flags.boolean({default:!1,helpGroup:"GLOBAL",summary:"Prefix output with emojis \u{1F308}"}),help:l.Flags.boolean({default:!1,helpGroup:"GLOBAL",summary:"Show the help message for the command"}),"non-interactive":l.Flags.boolean({char:"I",default:!1,helpGroup:"GLOBAL",summary:"Disable interactive outputs, useful for CI"}),target:l.Flags.option({char:"t",description:"Raycast app target",helpGroup:"GLOBAL",multiple:!1,options:["debug","internal","release","x","x-development","x-internal"],hidden:!0})()};flags;args;async init(){await super.init(),process.on("SIGINT",()=>process.exit(1));let{args:t,flags:i}=await this.parse({flags:this.ctor.flags,baseFlags:super.ctor.baseFlags,enableJsonFlag:this.ctor.enableJsonFlag,args:this.ctor.args,strict:this.ctor.strict});this.flags=i,this.args=t,N(this.flags.target),j(this.flags.emoji,this.flags["non-interactive"])}error(t,i){return i?.message&&t instanceof Error&&(t.message=`${i.message} (${t.message})`,delete i.message),super.error(t,i)}async catch(t){return super.catch(t)}async finally(t){return super.finally(t)}};var b=class n extends y{static description="Print the version number";async run(){await this.parse(n),this.log(`${$().version}`)}};
1
+ "use strict";var G=Object.create;var m=Object.defineProperty;var D=Object.getOwnPropertyDescriptor;var O=Object.getOwnPropertyNames;var L=Object.getPrototypeOf,R=Object.prototype.hasOwnProperty;var A=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),S=(n,t)=>{for(var i in t)m(n,i,{get:t[i],enumerable:!0})},I=(n,t,i,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of O(t))!R.call(n,a)&&a!==i&&m(n,a,{get:()=>t[a],enumerable:!(o=D(t,a))||o.enumerable});return n};var h=(n,t,i)=>(i=n!=null?G(L(n)):{},I(t||!n||!n.__esModule?m(i,"default",{value:n,enumerable:!0}):i,n)),F=n=>I(m({},"__esModule",{value:!0}),n);var B=A((re,k)=>{var J=require("node:tty"),q=J?.WriteStream?.prototype?.hasColors?.()??!1,r=(n,t)=>{if(!q)return a=>a;let i=`\x1B[${n}m`,o=`\x1B[${t}m`;return a=>{let u=a+"",d=u.indexOf(o);if(d===-1)return i+u+o;let x=i,g=0,P=(t===22?o:"")+i;for(;d!==-1;)x+=u.slice(g,d)+P,g=d+o.length,d=u.indexOf(o,g);return x+=u.slice(g)+o,x}},e={};e.reset=r(0,0);e.bold=r(1,22);e.dim=r(2,22);e.italic=r(3,23);e.underline=r(4,24);e.overline=r(53,55);e.inverse=r(7,27);e.hidden=r(8,28);e.strikethrough=r(9,29);e.black=r(30,39);e.red=r(31,39);e.green=r(32,39);e.yellow=r(33,39);e.blue=r(34,39);e.magenta=r(35,39);e.cyan=r(36,39);e.white=r(37,39);e.gray=r(90,39);e.bgBlack=r(40,49);e.bgRed=r(41,49);e.bgGreen=r(42,49);e.bgYellow=r(43,49);e.bgBlue=r(44,49);e.bgMagenta=r(45,49);e.bgCyan=r(46,49);e.bgWhite=r(47,49);e.bgGray=r(100,49);e.redBright=r(91,39);e.greenBright=r(92,39);e.yellowBright=r(93,39);e.blueBright=r(94,39);e.magentaBright=r(95,39);e.cyanBright=r(96,39);e.whiteBright=r(97,39);e.bgRedBright=r(101,49);e.bgGreenBright=r(102,49);e.bgYellowBright=r(103,49);e.bgBlueBright=r(104,49);e.bgMagentaBright=r(105,49);e.bgCyanBright=r(106,49);e.bgWhiteBright=r(107,49);k.exports=e});var $=A((ce,K)=>{K.exports={name:"ray",description:"Build extensions for Raycast with React and Node.js.",version:"1.104.11",author:"mathieudutour",private:!0,bin:{ray:"./bin/run.js"},dependencies:{"@oclif/core":"^4.8.4","@oclif/plugin-autocomplete":"^3.2.40","@oclif/plugin-help":"^6.2.37","@oclif/plugin-not-found":"^3.2.74","@raycast/eslint-plugin":"^2.1.1",ajv:"^8.18.0",archiver:"^7.0.1",camelcase:"^8.0.0",chokidar:"^4.0.3","cli-progress":"^3.12.0",clipboardy:"^2.3.0",execa:"^9.6.1","json-source-map":"^0.6.1",json5:"^2.2.3","node-fetch-cjs":"^3.3.2",open:"^8.4.2",ora:"^8.2.0",tail:"^2.2.6","terminal-link":"^3.0.0",yaml:"^2.8.2","yoctocolors-cjs":"^2.1.3"},devDependencies:{"@raycast/eslint-config":"^2.1.1","@types/archiver":"^7.0.0","@types/cli-progress":"^3.11.6","@types/node":"22.10.10","@types/tail":"^2.2.3",esbuild:"^0.27.3",eslint:"^9","json-schema-to-typescript":"^15.0.4",oclif:"^4.22.87",typescript:"^5.6.3"},files:["/bin","/dist","/oclif.manifest.json"],license:"MIT",main:"dist/index.js",oclif:{bin:"ray",dirname:"ray",commands:"./dist/commands",plugins:["@oclif/plugin-autocomplete","@oclif/plugin-help","@oclif/plugin-not-found"]},scripts:{"json-schema-to-ts":"json2ts ../../api/schema.json -y > src/types/manifest-schema.d.ts","build-scripts":'tsc "./scripts/build.ts" "./scripts/build-command.ts" "./scripts/dev-command.ts" --outDir ./scripts/dist --esModuleInterop',prebuild:"npm run json-schema-to-ts && npm run build-scripts",build:"node ./scripts/dist/build-command.js",predev:"npm run json-schema-to-ts && npm run build-scripts",dev:"node ./scripts/dist/dev-command.js",lint:"eslint . --ext .ts"},types:"dist/index.d.ts"}});var V={};S(V,{default:()=>b});module.exports=F(V);var l=require("@oclif/core");var f=h(require("node:fs")),v=h(require("node:path")),C=h(require("node:os"));var T={production:{url:"https://www.raycast.com",clientID:"KqAdcGhNfBKiUpfjD3nU3VNgh1t0iMPoX2hYEkN9d4I"},staging:{url:"https://www.rayca.st",clientID:"KqAdcGhNfBKiUpfjD3nU3VNgh1t0iMPoX2hYEkN9d4I"},development:{url:"http://localhost:3000",clientID:"rOCD_LhnXFObSLu9v7788qOGu25FZDqEzGjet4Q45ZY"}}[process.env.API_ENV||"production"],U="e69bae0ec90f5e838555",c={},E;function N(n){E=n;try{c=JSON.parse(f.readFileSync(v.join(Y(),"config.json"),"utf8"))}catch(t){if(t instanceof Error&&t.code==="ENOENT")return;throw new Error(`Failed to read config file: ${t}`)}}function _(n){switch(n){case"raycastApiURL":return process.env.RAY_APIURL||c.APIURL||T.url;case"raycastAccessToken":return process.env.RAY_TOKEN||c.Token||c.AccessToken||"";case"raycastClientId":return process.env.RAY_CLIENT_ID||c.ClientID||T.clientID;case"githubClientId":return process.env.RAY_GithubClientID||c.GithubClientID||U;case"githubAccessToken":return process.env.GITHUB_ACCESS_TOKEN||c.GithubAccessToken||"";case"flavorName":return process.env.RAY_Target?process.env.RAY_Target:typeof c.Target<"u"?c.Target:w(process.platform==="win32"?"x":"release")}}function w(n){switch(n){case"debug":return"debug";case"internal":return"internal";case"release":return"";case"x":return"x";case"x-internal":return"x-internal";case"x-development":return"x-development";case void 0:return _("flavorName")}}function M(){let n=w(E);return n==""?"raycast":`raycast-${n}`}function Y(){let n=v.join(C.default.homedir(),".config",M());return f.mkdirSync(n,{recursive:!0}),n}var s=h(B());var te=(0,s.blue)((0,s.dim)("internal only"));var p={wait:`\u{1F550}${(0,s.blue)("wait")} - `,info:`${process.env.GITHUB_ACTIONS==="true"?"\u2139\uFE0F":"\u2139\uFE0F "}${(0,s.cyan)("info")} - `,success:`\u2705${(0,s.green)("ready")} - `,warn:`${process.env.GITHUB_ACTIONS==="true"?"\u26A0\uFE0F":"\u26A0\uFE0F "}${(0,s.yellow)("warn")} - `,error:`\u{1F4A5}${(0,s.red)("error")} - `,event:`\u26A1\uFE0F${(0,s.magenta)("event")} - `,paymentPrompt:`\u{1F4B0}${(0,s.yellowBright)("plan")} - `},H=!0;function j(n,t){n||(p.wait=`${(0,s.blue)("wait")} - `,p.info=`${(0,s.cyan)("info")} - `,p.success=`${(0,s.green)("ready")} - `,p.warn=`${(0,s.yellow)("warn")} - `,p.error=`${(0,s.red)("error")} - `,p.event=`${(0,s.magenta)("event")} - `,p.paymentPrompt=`${(0,s.yellowBright)("plan")} - `),t&&(H=!1)}var y=class extends l.Command{static baseFlags={"exit-on-error":l.Flags.boolean({default:!0,helpGroup:"GLOBAL",aliases:["exitOnError"],deprecateAliases:!0,summary:"Always exit with non-zero code on error",allowNo:!0}),emoji:l.Flags.boolean({default:!1,helpGroup:"GLOBAL",summary:"Prefix output with emojis \u{1F308}"}),help:l.Flags.boolean({default:!1,helpGroup:"GLOBAL",summary:"Show the help message for the command"}),"non-interactive":l.Flags.boolean({char:"I",default:!1,helpGroup:"GLOBAL",summary:"Disable interactive outputs, useful for CI"}),target:l.Flags.option({char:"t",description:"Raycast app target",helpGroup:"GLOBAL",multiple:!1,options:["debug","internal","release","x","x-development","x-internal"],hidden:!0})()};flags;args;async init(){await super.init(),process.on("SIGINT",()=>process.exit(1));let{args:t,flags:i}=await this.parse({flags:this.ctor.flags,baseFlags:super.ctor.baseFlags,enableJsonFlag:this.ctor.enableJsonFlag,args:this.ctor.args,strict:this.ctor.strict});this.flags=i,this.args=t,N(this.flags.target),j(this.flags.emoji,this.flags["non-interactive"])}error(t,i){return i?.message&&t instanceof Error&&(t.message=`${i.message} (${t.message})`,delete i.message),super.error(t,i)}async catch(t){return super.catch(t)}async finally(t){return super.finally(t)}};var b=class n extends y{static description="Print the version number";async run(){await this.parse(n),this.log(`${$().version}`)}};
@@ -204,10 +204,10 @@
204
204
  "index.js"
205
205
  ]
206
206
  },
207
- "lint": {
207
+ "evals": {
208
208
  "aliases": [],
209
209
  "args": {},
210
- "description": "Validate the extension manifest and metadata, and lint its source code",
210
+ "description": "Run AI evals defined in extension package.json",
211
211
  "flags": {
212
212
  "exit-on-error": {
213
213
  "aliases": [
@@ -260,26 +260,37 @@
260
260
  ],
261
261
  "type": "option"
262
262
  },
263
- "fix": {
264
- "char": "f",
265
- "description": "Attempt to fix linting issues",
266
- "name": "fix",
263
+ "skipBuild": {
264
+ "char": "s",
265
+ "description": "Skip extension build step",
266
+ "name": "skipBuild",
267
267
  "allowNo": false,
268
268
  "type": "boolean"
269
269
  },
270
- "relaxed": {
271
- "char": "r",
272
- "description": "Use relaxed linting mode to skip validation of: package.json schema, icons and metadata.",
273
- "name": "relaxed",
274
- "allowNo": false,
275
- "type": "boolean"
270
+ "extension": {
271
+ "char": "e",
272
+ "description": "Path to extension. Current directory is used by default",
273
+ "name": "extension",
274
+ "default": "./",
275
+ "hasDynamicHelp": false,
276
+ "multiple": false,
277
+ "type": "option"
276
278
  },
277
- "schema": {
278
- "char": "s",
279
- "description": "Path to JSON schema for package.json validation \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
279
+ "apiEndpoint": {
280
+ "char": "a",
281
+ "description": "AI Evals API endpoint",
280
282
  "hidden": true,
281
- "name": "schema",
282
- "default": "https://www.raycast.com/schemas/extension.json",
283
+ "name": "apiEndpoint",
284
+ "default": "https://ai-evals.raycast.com/run-evals",
285
+ "hasDynamicHelp": false,
286
+ "multiple": false,
287
+ "type": "option"
288
+ },
289
+ "only": {
290
+ "char": "o",
291
+ "description": "Only run specified evals (0-2, 1, 1,2,3)",
292
+ "name": "only",
293
+ "default": "",
283
294
  "hasDynamicHelp": false,
284
295
  "multiple": false,
285
296
  "type": "option"
@@ -287,7 +298,7 @@
287
298
  },
288
299
  "hasDynamicHelp": false,
289
300
  "hiddenAliases": [],
290
- "id": "lint",
301
+ "id": "evals",
291
302
  "pluginAlias": "ray",
292
303
  "pluginName": "ray",
293
304
  "pluginType": "core",
@@ -297,14 +308,14 @@
297
308
  "relativePath": [
298
309
  "dist",
299
310
  "commands",
300
- "lint",
311
+ "evals",
301
312
  "index.js"
302
313
  ]
303
314
  },
304
- "evals": {
315
+ "lint": {
305
316
  "aliases": [],
306
317
  "args": {},
307
- "description": "Run AI evals defined in extension package.json",
318
+ "description": "Validate the extension manifest and metadata, and lint its source code",
308
319
  "flags": {
309
320
  "exit-on-error": {
310
321
  "aliases": [
@@ -357,37 +368,26 @@
357
368
  ],
358
369
  "type": "option"
359
370
  },
360
- "skipBuild": {
361
- "char": "s",
362
- "description": "Skip extension build step",
363
- "name": "skipBuild",
371
+ "fix": {
372
+ "char": "f",
373
+ "description": "Attempt to fix linting issues",
374
+ "name": "fix",
364
375
  "allowNo": false,
365
376
  "type": "boolean"
366
377
  },
367
- "extension": {
368
- "char": "e",
369
- "description": "Path to extension. Current directory is used by default",
370
- "name": "extension",
371
- "default": "./",
372
- "hasDynamicHelp": false,
373
- "multiple": false,
374
- "type": "option"
378
+ "relaxed": {
379
+ "char": "r",
380
+ "description": "Use relaxed linting mode to skip validation of: package.json schema, icons and metadata.",
381
+ "name": "relaxed",
382
+ "allowNo": false,
383
+ "type": "boolean"
375
384
  },
376
- "apiEndpoint": {
377
- "char": "a",
378
- "description": "AI Evals API endpoint",
385
+ "schema": {
386
+ "char": "s",
387
+ "description": "Path to JSON schema for package.json validation \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
379
388
  "hidden": true,
380
- "name": "apiEndpoint",
381
- "default": "https://ai-evals.raycast.com/run-evals",
382
- "hasDynamicHelp": false,
383
- "multiple": false,
384
- "type": "option"
385
- },
386
- "only": {
387
- "char": "o",
388
- "description": "Only run specified evals (0-2, 1, 1,2,3)",
389
- "name": "only",
390
- "default": "",
389
+ "name": "schema",
390
+ "default": "https://www.raycast.com/schemas/extension.json",
391
391
  "hasDynamicHelp": false,
392
392
  "multiple": false,
393
393
  "type": "option"
@@ -395,7 +395,7 @@
395
395
  },
396
396
  "hasDynamicHelp": false,
397
397
  "hiddenAliases": [],
398
- "id": "evals",
398
+ "id": "lint",
399
399
  "pluginAlias": "ray",
400
400
  "pluginName": "ray",
401
401
  "pluginType": "core",
@@ -405,7 +405,7 @@
405
405
  "relativePath": [
406
406
  "dist",
407
407
  "commands",
408
- "evals",
408
+ "lint",
409
409
  "index.js"
410
410
  ]
411
411
  },
@@ -820,18 +820,11 @@
820
820
  "index.js"
821
821
  ]
822
822
  },
823
- "token": {
823
+ "pull-contributions": {
824
824
  "aliases": [],
825
825
  "args": {},
826
- "description": "Display the access token",
826
+ "description": "Pull contributions of the extension",
827
827
  "flags": {
828
- "json": {
829
- "description": "Format output as json.",
830
- "helpGroup": "GLOBAL",
831
- "name": "json",
832
- "allowNo": false,
833
- "type": "boolean"
834
- },
835
828
  "exit-on-error": {
836
829
  "aliases": [
837
830
  "exitOnError"
@@ -882,36 +875,36 @@
882
875
  "x-internal"
883
876
  ],
884
877
  "type": "option"
885
- },
886
- "clipboard": {
887
- "char": "C",
888
- "description": "Copy the token to the clipboard",
889
- "name": "clipboard",
890
- "allowNo": false,
891
- "type": "boolean"
892
878
  }
893
879
  },
894
880
  "hasDynamicHelp": false,
895
881
  "hiddenAliases": [],
896
- "id": "token",
882
+ "id": "pull-contributions",
897
883
  "pluginAlias": "ray",
898
884
  "pluginName": "ray",
899
885
  "pluginType": "core",
900
886
  "strict": true,
901
- "enableJsonFlag": true,
887
+ "enableJsonFlag": false,
902
888
  "isESM": false,
903
889
  "relativePath": [
904
890
  "dist",
905
891
  "commands",
906
- "token",
892
+ "pull-contributions",
907
893
  "index.js"
908
894
  ]
909
895
  },
910
- "validate": {
896
+ "token": {
911
897
  "aliases": [],
912
898
  "args": {},
913
- "description": "Validate the extension so that it can be published - \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
899
+ "description": "Display the access token",
914
900
  "flags": {
901
+ "json": {
902
+ "description": "Format output as json.",
903
+ "helpGroup": "GLOBAL",
904
+ "name": "json",
905
+ "allowNo": false,
906
+ "type": "boolean"
907
+ },
915
908
  "exit-on-error": {
916
909
  "aliases": [
917
910
  "exitOnError"
@@ -963,44 +956,34 @@
963
956
  ],
964
957
  "type": "option"
965
958
  },
966
- "schema": {
967
- "char": "s",
968
- "description": "Path to JSON schema for package.json validation ",
969
- "name": "schema",
970
- "default": "https://www.raycast.com/schemas/extension.json",
971
- "hasDynamicHelp": false,
972
- "multiple": false,
973
- "type": "option"
974
- },
975
- "skip-owner": {
976
- "description": "Skip owner checks",
977
- "name": "skip-owner",
959
+ "clipboard": {
960
+ "char": "C",
961
+ "description": "Copy the token to the clipboard",
962
+ "name": "clipboard",
978
963
  "allowNo": false,
979
964
  "type": "boolean"
980
965
  }
981
966
  },
982
967
  "hasDynamicHelp": false,
983
- "hidden": true,
984
968
  "hiddenAliases": [],
985
- "id": "validate",
969
+ "id": "token",
986
970
  "pluginAlias": "ray",
987
971
  "pluginName": "ray",
988
972
  "pluginType": "core",
989
973
  "strict": true,
990
- "summary": "Validate the extension - \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
991
- "enableJsonFlag": false,
974
+ "enableJsonFlag": true,
992
975
  "isESM": false,
993
976
  "relativePath": [
994
977
  "dist",
995
978
  "commands",
996
- "validate",
979
+ "token",
997
980
  "index.js"
998
981
  ]
999
982
  },
1000
- "version": {
983
+ "validate": {
1001
984
  "aliases": [],
1002
985
  "args": {},
1003
- "description": "Print the version number",
986
+ "description": "Validate the extension so that it can be published - \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
1004
987
  "flags": {
1005
988
  "exit-on-error": {
1006
989
  "aliases": [
@@ -1052,28 +1035,45 @@
1052
1035
  "x-internal"
1053
1036
  ],
1054
1037
  "type": "option"
1038
+ },
1039
+ "schema": {
1040
+ "char": "s",
1041
+ "description": "Path to JSON schema for package.json validation ",
1042
+ "name": "schema",
1043
+ "default": "https://www.raycast.com/schemas/extension.json",
1044
+ "hasDynamicHelp": false,
1045
+ "multiple": false,
1046
+ "type": "option"
1047
+ },
1048
+ "skip-owner": {
1049
+ "description": "Skip owner checks",
1050
+ "name": "skip-owner",
1051
+ "allowNo": false,
1052
+ "type": "boolean"
1055
1053
  }
1056
1054
  },
1057
1055
  "hasDynamicHelp": false,
1056
+ "hidden": true,
1058
1057
  "hiddenAliases": [],
1059
- "id": "version",
1058
+ "id": "validate",
1060
1059
  "pluginAlias": "ray",
1061
1060
  "pluginName": "ray",
1062
1061
  "pluginType": "core",
1063
1062
  "strict": true,
1063
+ "summary": "Validate the extension - \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
1064
1064
  "enableJsonFlag": false,
1065
1065
  "isESM": false,
1066
1066
  "relativePath": [
1067
1067
  "dist",
1068
1068
  "commands",
1069
- "version",
1069
+ "validate",
1070
1070
  "index.js"
1071
1071
  ]
1072
1072
  },
1073
- "pull-contributions": {
1073
+ "version": {
1074
1074
  "aliases": [],
1075
1075
  "args": {},
1076
- "description": "Pull contributions of the extension",
1076
+ "description": "Print the version number",
1077
1077
  "flags": {
1078
1078
  "exit-on-error": {
1079
1079
  "aliases": [
@@ -1129,7 +1129,7 @@
1129
1129
  },
1130
1130
  "hasDynamicHelp": false,
1131
1131
  "hiddenAliases": [],
1132
- "id": "pull-contributions",
1132
+ "id": "version",
1133
1133
  "pluginAlias": "ray",
1134
1134
  "pluginName": "ray",
1135
1135
  "pluginType": "core",
@@ -1139,10 +1139,10 @@
1139
1139
  "relativePath": [
1140
1140
  "dist",
1141
1141
  "commands",
1142
- "pull-contributions",
1142
+ "version",
1143
1143
  "index.js"
1144
1144
  ]
1145
1145
  }
1146
1146
  },
1147
- "version": "1.104.10"
1147
+ "version": "1.104.11"
1148
1148
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@raycast/api",
3
- "version": "1.104.10",
3
+ "version": "1.104.11",
4
4
  "description": "Build extensions for Raycast with React and Node.js.",
5
5
  "author": "Raycast Technologies Ltd.",
6
6
  "homepage": "https://developers.raycast.com",
package/types/index.d.ts CHANGED
@@ -513,6 +513,8 @@ export declare namespace AI {
513
513
  "OpenAI_GPT-5.3_Instant" = "openai-gpt-5.3-instant",
514
514
  "OpenAI_GPT-5.3_Codex" = "openai-gpt-5.3-codex",
515
515
  "OpenAI_GPT-5.4" = "openai-gpt-5.4",
516
+ "OpenAI_GPT-5.4_mini" = "openai-gpt-5.4-mini",
517
+ "OpenAI_GPT-5.4_nano" = "openai-gpt-5.4-nano",
516
518
  "OpenAI_o3" = "openai_o1-o3",
517
519
  "OpenAI_o4-mini" = "openai_o1-o4-mini",
518
520
  "OpenAI_o1" = "openai_o1-o1",
@@ -548,6 +550,7 @@ export declare namespace AI {
548
550
  "Together_AI_DeepSeek-V3" = "together-deepseek-ai/DeepSeek-V3",
549
551
  "Together_AI_Kimi_K2.5" = "together-moonshotai/Kimi-K2.5",
550
552
  "xAI_Grok-4.1_Fast" = "xai-grok-4-1-fast",
553
+ "xAI_Grok-4.20" = "xai-grok-4.20",
551
554
  "xAI_Grok-4" = "xai-grok-4",
552
555
  "xAI_Grok-4_Fast" = "xai-grok-4-fast",
553
556
  "xAI_Grok_Code_Fast_1" = "xai-grok-code-fast",