agileflow 4.0.0-alpha.20 → 4.0.0-alpha.22

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agileflow",
3
- "version": "4.0.0-alpha.20",
3
+ "version": "4.0.0-alpha.22",
4
4
  "description": "AI-driven agile development toolkit for Claude Code — skills-first architecture with opt-in plugins (v4)",
5
5
  "keywords": [
6
6
  "agile",
@@ -22,6 +22,8 @@ const {
22
22
  sessionExists,
23
23
  createSession,
24
24
  applyKeybindPreset,
25
+ applyTabFormat,
26
+ detectTmuxVersion,
25
27
  defaultRunner,
26
28
  } = require("./tmux.js");
27
29
  const { createWorktree, removeWorktree } = require("./worktree.js");
@@ -185,6 +187,14 @@ async function runParallelSpawn(opts) {
185
187
  }
186
188
  }
187
189
 
190
+ // Apply the tab strip styling to the new session — without this,
191
+ // Alt+s and Alt+n spawn sessions with tmux's default green status
192
+ // bar. Same call the engine does on every fresh-launch session.
193
+ runner.runSync(["set-option", "-t", sessionName, "status", "1"]);
194
+ applyTabFormat(sessionName, runner, {
195
+ tmuxVersion: detectTmuxVersion(runner),
196
+ });
197
+
188
198
  // Swap the user's tmux client to the new session. If switch-client
189
199
  // fails the session is still alive — surface its name so the user
190
200
  // can attach manually.
@@ -244,9 +244,16 @@ function applyTabFormat(sessionName, runner, opts = {}) {
244
244
  // Reduce escape-time so pressing Esc inside command-prompt (Alt+n
245
245
  // worktree-name prompt, etc.) cancels immediately. tmux's default
246
246
  // is 500ms — it waits for a follow-up key in case Esc is the start
247
- // of an Alt+key sequence. 25ms is the common "snappy Esc" value used
248
- // by tmux power-user configs (Oh My Tmux, gpakosz/.tmux, etc.).
249
- runner.runSync(["set-option", "-sg", "escape-time", "25"]);
247
+ // of an Alt+key sequence. 0ms is "treat Esc as Esc immediately"
248
+ // and matches what most modern terminals support.
249
+ runner.runSync(["set-option", "-sg", "escape-time", "0"]);
250
+ // Force emacs key bindings in the command-prompt so Esc cancels
251
+ // the prompt instead of entering vi-normal mode (which makes the
252
+ // prompt look like it changed color but never closes). If the
253
+ // user's .tmux.conf set status-keys vi globally, our per-session
254
+ // override wins for AgileFlow sessions.
255
+ runner.runSync(["set-option", "-g", "status-keys", "emacs"]);
256
+ runner.runSync(["set-option", "-g", "mode-keys", "emacs"]);
250
257
 
251
258
  // Apply each option with the correct tmux scope. Session-scope opts
252
259
  // (status-style, status-left/right, status-justify) take