instar 0.7.18 → 0.7.19

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/dist/cli.js CHANGED
File without changes
@@ -127,24 +127,20 @@ export class SessionManager extends EventEmitter {
127
127
  if (this.tmuxSessionExists(tmuxSession)) {
128
128
  throw new Error(`tmux session "${tmuxSession}" already exists`);
129
129
  }
130
- // Build Claude CLI arguments via bash wrapper.
131
- // Must unset CLAUDECODE to prevent "cannot be launched inside another Claude Code session"
132
- // error when instar itself runs inside Claude Code.
130
+ // Build Claude CLI arguments no shell intermediary.
131
+ // tmux new-session executes the command directly (no bash -c needed)
132
+ // when given as separate arguments after the session options.
133
133
  const claudeArgs = ['--dangerously-skip-permissions'];
134
134
  if (options.model) {
135
135
  claudeArgs.push('--model', options.model);
136
136
  }
137
137
  claudeArgs.push('-p', options.prompt);
138
- const claudeCmd = [this.config.claudePath, ...claudeArgs]
139
- .map(a => a.replace(/'/g, "'\\''"))
140
- .map(a => `'${a}'`)
141
- .join(' ');
142
138
  try {
143
139
  execFileSync(this.config.tmuxPath, [
144
140
  'new-session', '-d',
145
141
  '-s', tmuxSession,
146
142
  '-c', this.config.projectDir,
147
- 'bash', '-c', `unset CLAUDECODE; exec ${claudeCmd}`,
143
+ this.config.claudePath, ...claudeArgs,
148
144
  ], { encoding: 'utf-8' });
149
145
  }
150
146
  catch (err) {
@@ -375,14 +371,11 @@ export class SessionManager extends EventEmitter {
375
371
  ];
376
372
  if (options?.telegramTopicId) {
377
373
  // Wrap in bash shell to export env var before Claude starts
378
- // Also unset CLAUDECODE to prevent nested Claude Code errors
379
374
  const claudeCmd = `${this.config.claudePath} --dangerously-skip-permissions`;
380
- tmuxArgs.push('bash', '-c', `unset CLAUDECODE; export INSTAR_TELEGRAM_TOPIC=${options.telegramTopicId} && exec ${claudeCmd}`);
375
+ tmuxArgs.push('bash', '-c', `export INSTAR_TELEGRAM_TOPIC=${options.telegramTopicId} && exec ${claudeCmd}`);
381
376
  }
382
377
  else {
383
- // Unset CLAUDECODE to prevent nested Claude Code errors
384
- const claudeCmd = `${this.config.claudePath} --dangerously-skip-permissions`;
385
- tmuxArgs.push('bash', '-c', `unset CLAUDECODE; exec ${claudeCmd}`);
378
+ tmuxArgs.push(this.config.claudePath, '--dangerously-skip-permissions');
386
379
  }
387
380
  execFileSync(this.config.tmuxPath, tmuxArgs, { encoding: 'utf-8' });
388
381
  }
@@ -406,12 +406,6 @@ export class JobScheduler {
406
406
  else {
407
407
  summary += '\n_No output captured (session already closed)_';
408
408
  }
409
- // Skip Telegram notification for successful jobs with no meaningful output
410
- // Prevents empty notification spam (e.g., dispatch-check when dispatch is unconfigured)
411
- if (!failed && (!output || !output.trim())) {
412
- console.log(`[scheduler] Skipping notification for ${job.slug} — no meaningful output`);
413
- return;
414
- }
415
409
  // Send to the job's dedicated topic if available, otherwise fall back to generic messenger
416
410
  if (this.telegram && job.topicId) {
417
411
  try {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "instar",
3
- "version": "0.7.18",
3
+ "version": "0.7.19",
4
4
  "description": "Persistent autonomy infrastructure for AI agents",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,11 +0,0 @@
1
- > Why do I have a folder named ".vercel" in my project?
2
- The ".vercel" folder is created when you link a directory to a Vercel project.
3
-
4
- > What does the "project.json" file contain?
5
- The "project.json" file contains:
6
- - The ID of the Vercel project that you linked ("projectId")
7
- - The ID of the user or team your Vercel project is owned by ("orgId")
8
-
9
- > Should I commit the ".vercel" folder?
10
- No, you should not share the ".vercel" folder with anyone.
11
- Upon creation, it will be automatically added to your ".gitignore" file.
@@ -1 +0,0 @@
1
- {"projectId":"prj_evM5LcItYL3IAmw8zNvEPGrHeaya","orgId":"team_dHctwIDcV3X9ydapQlCPHFGI","projectName":"claude-agent-kit"}