@segosolutions/auto-task 1.7.3 → 1.7.4

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 (2) hide show
  1. package/dist/index.mjs +1 -1
  2. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -100,7 +100,7 @@ SEGO_PROJECT_ID=${s.projectId}
100
100
  `),e}async function Kd(s={}){let e=s.yes||!1;if(console.log(""),console.log("=".repeat(50)),console.log(" Sego Auto-Task Monitor Setup Wizard"),console.log("=".repeat(50)),console.log(""),e){console.log("Running in non-interactive mode (--yes flag)"),console.log("");let i=process.env.SEGO_API_KEY,a=process.env.SEGO_API_URL||"https://sego.pm",c=process.env.SEGO_PROJECT_ID;i||(console.error("Error: SEGO_API_KEY environment variable is required in non-interactive mode."),console.error(""),console.error("Usage:"),console.error(" SEGO_API_KEY=your_key sego-auto-task init --yes"),console.error(""),console.error("Or run without --yes for interactive setup."),process.exit(1)),console.log("Validating API key..."),await Wd(a,i)||(console.error(`
101
101
  Error: Invalid API key or unable to connect to the API.`),console.error("Please check:"),console.error(" 1. Your API key is correct"),console.error(` 2. You can reach ${a}`),console.error(" 3. Your API key has not expired"),process.exit(1)),console.log("API key validated successfully!");let p={apiKey:i,apiUrl:a,projectId:c||void 0},g=Fd(process.cwd(),".env"),m=Vd(p);Gd(g,m),zd(g);return}let t=Aw();try{console.log("Step 1: API Key"),console.log("Get your API key from: https://sego.pm/developer/api-keys"),console.log("");let i=await t.ask("Enter your Sego PM API key: ");i||(console.error(`
102
102
  Error: API key is required.`),process.exit(1)),console.log(""),console.log("Step 2: API URL");let c=await t.ask("Enter API URL (press Enter for https://sego.pm): ")||"https://sego.pm";console.log(""),console.log("Validating API key..."),await Wd(c,i)||(console.error(`
103
- Error: Invalid API key or unable to connect to the API.`),console.error("Please check:"),console.error(" 1. Your API key is correct"),console.error(` 2. You can reach ${c}`),console.error(" 3. Your API key has not expired"),process.exit(1)),console.log("API key validated successfully!"),console.log(""),console.log("Step 3: Project ID (Optional)"),console.log("You can filter to a specific project, or monitor all projects.");let p=await t.ask("Enter Project ID (press Enter to skip): "),g={apiKey:i,apiUrl:c,projectId:p||void 0};console.log(""),console.log("Step 4: Save Configuration");let m=Fd(process.cwd(),".env");if(Tw(m)&&(console.log(`Warning: .env file already exists at ${m}`),(await t.ask("Overwrite? (y/N): ")).toLowerCase()!=="y")){console.log(""),console.log("Configuration not saved. You can set these environment variables manually:"),console.log(""),console.log(`export SEGO_API_KEY="${g.apiKey}"`),console.log(`export SEGO_API_URL="${g.apiUrl}"`),g.projectId&&console.log(`export SEGO_PROJECT_ID="${g.projectId}"`),console.log(""),t.close();return}let w=Vd(g);Gd(m,w),zd(m)}finally{t.close()}}function zd(s){console.log(""),console.log("=".repeat(50)),console.log(" Setup Complete!"),console.log("=".repeat(50)),console.log(""),console.log(`Configuration saved to: ${s}`),console.log(""),console.log("Next steps:"),console.log(" 1. Make sure Claude Code CLI is installed and authenticated:"),console.log(" npm install -g @anthropic-ai/claude-code"),console.log(" claude auth login"),console.log(""),console.log(" 2. Start the monitor:"),console.log(" sego-auto-task"),console.log(""),console.log(" 3. Or run in dry-run mode to test:"),console.log(" sego-auto-task --dry-run"),console.log("")}import{existsSync as Yd,mkdirSync as Rw,readFileSync as Pw,writeFileSync as Iw}from"fs";import{homedir as Mw}from"os";import{join as Qd}from"path";var Xd="@segosolutions/auto-task",Ro=Qd(Mw(),".sego-auto-task"),Po=Qd(Ro,"version-check.json"),xw=24*60*60*1e3;function Jd(s,e){let t=s.replace(/^v/,"").split(".").map(Number),i=e.replace(/^v/,"").split(".").map(Number);for(let a=0;a<Math.max(t.length,i.length);a++){let c=t[a]||0,u=i[a]||0;if(c<u)return-1;if(c>u)return 1}return 0}function Nw(){try{if(!Yd(Po))return null;let s=JSON.parse(Pw(Po,"utf-8"));return Date.now()-s.checkedAt<xw?s:null}catch{return null}}function Lw(s){try{Yd(Ro)||Rw(Ro,{recursive:!0});let e={latestVersion:s,checkedAt:Date.now()};Iw(Po,JSON.stringify(e,null,2))}catch{}}async function Dw(){try{let s=new AbortController,e=setTimeout(()=>s.abort(),5e3),t=await fetch(`https://registry.npmjs.org/${encodeURIComponent(Xd)}/latest`,{signal:s.signal});return clearTimeout(e),t.ok&&(await t.json()).version||null}catch{return null}}async function Zd(s){let e=Nw();if(e)return{currentVersion:s,latestVersion:e.latestVersion,updateAvailable:Jd(s,e.latestVersion)<0};let t=await Dw();return t&&Lw(t),{currentVersion:s,latestVersion:t,updateAvailable:t?Jd(s,t)<0:!1}}function ef(s){!s.updateAvailable||!s.latestVersion||(console.log(""),console.log("\x1B[33m"+"=".repeat(60)+"\x1B[0m"),console.log("\x1B[33m Update available!\x1B[0m"),console.log(` Current version: \x1B[90m${s.currentVersion}\x1B[0m`),console.log(` Latest version: \x1B[32m${s.latestVersion}\x1B[0m`),console.log(""),console.log(" Run to update:"),console.log(` \x1B[36m npm update -g ${Xd}\x1B[0m`),console.log("\x1B[33m"+"=".repeat(60)+"\x1B[0m"),console.log(""))}var nf="1.7.3",Io=null;fs.name("sego-auto-task").description(`Background task monitor for Sego PM - automatically processes high-confidence tasks using Claude.
103
+ Error: Invalid API key or unable to connect to the API.`),console.error("Please check:"),console.error(" 1. Your API key is correct"),console.error(` 2. You can reach ${c}`),console.error(" 3. Your API key has not expired"),process.exit(1)),console.log("API key validated successfully!"),console.log(""),console.log("Step 3: Project ID (Optional)"),console.log("You can filter to a specific project, or monitor all projects.");let p=await t.ask("Enter Project ID (press Enter to skip): "),g={apiKey:i,apiUrl:c,projectId:p||void 0};console.log(""),console.log("Step 4: Save Configuration");let m=Fd(process.cwd(),".env");if(Tw(m)&&(console.log(`Warning: .env file already exists at ${m}`),(await t.ask("Overwrite? (y/N): ")).toLowerCase()!=="y")){console.log(""),console.log("Configuration not saved. You can set these environment variables manually:"),console.log(""),console.log(`export SEGO_API_KEY="${g.apiKey}"`),console.log(`export SEGO_API_URL="${g.apiUrl}"`),g.projectId&&console.log(`export SEGO_PROJECT_ID="${g.projectId}"`),console.log(""),t.close();return}let w=Vd(g);Gd(m,w),zd(m)}finally{t.close()}}function zd(s){console.log(""),console.log("=".repeat(50)),console.log(" Setup Complete!"),console.log("=".repeat(50)),console.log(""),console.log(`Configuration saved to: ${s}`),console.log(""),console.log("Next steps:"),console.log(" 1. Make sure Claude Code CLI is installed and authenticated:"),console.log(" npm install -g @anthropic-ai/claude-code"),console.log(" claude auth login"),console.log(""),console.log(" 2. Start the monitor:"),console.log(" sego-auto-task"),console.log(""),console.log(" 3. Or run in dry-run mode to test:"),console.log(" sego-auto-task --dry-run"),console.log("")}import{existsSync as Yd,mkdirSync as Rw,readFileSync as Pw,writeFileSync as Iw}from"fs";import{homedir as Mw}from"os";import{join as Qd}from"path";var Xd="@segosolutions/auto-task",Ro=Qd(Mw(),".sego-auto-task"),Po=Qd(Ro,"version-check.json"),xw=24*60*60*1e3;function Jd(s,e){let t=s.replace(/^v/,"").split(".").map(Number),i=e.replace(/^v/,"").split(".").map(Number);for(let a=0;a<Math.max(t.length,i.length);a++){let c=t[a]||0,u=i[a]||0;if(c<u)return-1;if(c>u)return 1}return 0}function Nw(){try{if(!Yd(Po))return null;let s=JSON.parse(Pw(Po,"utf-8"));return Date.now()-s.checkedAt<xw?s:null}catch{return null}}function Lw(s){try{Yd(Ro)||Rw(Ro,{recursive:!0});let e={latestVersion:s,checkedAt:Date.now()};Iw(Po,JSON.stringify(e,null,2))}catch{}}async function Dw(){try{let s=new AbortController,e=setTimeout(()=>s.abort(),5e3),t=await fetch(`https://registry.npmjs.org/${encodeURIComponent(Xd)}/latest`,{signal:s.signal});return clearTimeout(e),t.ok&&(await t.json()).version||null}catch{return null}}async function Zd(s){let e=Nw();if(e)return{currentVersion:s,latestVersion:e.latestVersion,updateAvailable:Jd(s,e.latestVersion)<0};let t=await Dw();return t&&Lw(t),{currentVersion:s,latestVersion:t,updateAvailable:t?Jd(s,t)<0:!1}}function ef(s){!s.updateAvailable||!s.latestVersion||(console.log(""),console.log("\x1B[33m"+"=".repeat(60)+"\x1B[0m"),console.log("\x1B[33m Update available!\x1B[0m"),console.log(` Current version: \x1B[90m${s.currentVersion}\x1B[0m`),console.log(` Latest version: \x1B[32m${s.latestVersion}\x1B[0m`),console.log(""),console.log(" Run to update:"),console.log(` \x1B[36m npm update -g ${Xd}\x1B[0m`),console.log("\x1B[33m"+"=".repeat(60)+"\x1B[0m"),console.log(""))}var nf="1.7.4",Io=null;fs.name("sego-auto-task").description(`Background task monitor for Sego PM - automatically processes high-confidence tasks using Claude.
104
104
 
105
105
  Runs in hybrid mode:
106
106
  - SSE: Listens for client request events and processes them with local Claude
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@segosolutions/auto-task",
3
- "version": "1.7.3",
3
+ "version": "1.7.4",
4
4
  "description": "Background task monitor for Sego PM - automatically processes high-confidence tasks using Claude",
5
5
  "type": "module",
6
6
  "main": "dist/index.mjs",