@ghl-ai/aw 0.1.42-beta.30 → 0.1.42-beta.32

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/commands/init.mjs CHANGED
@@ -179,11 +179,11 @@ function installIdeTasks() {
179
179
  existing.tasks = existing.tasks || [];
180
180
  existing.tasks.push(vscodeTask.tasks[0]);
181
181
  writeFileSync(tasksPath, JSON.stringify(existing, null, 2) + '\n');
182
- fmt.logStep(`Added auto-pull task to ${ide}`);
182
+ fmt.logStep(`Auto-sync task added to ${ide}`);
183
183
  } catch { /* corrupted tasks.json, skip */ }
184
184
  } else {
185
185
  writeFileSync(tasksPath, JSON.stringify(vscodeTask, null, 2) + '\n');
186
- fmt.logStep(`Added auto-pull task to ${ide}`);
186
+ fmt.logStep(`Auto-sync task added to ${ide}`);
187
187
  }
188
188
  }
189
189
  }
@@ -374,11 +374,13 @@ export async function initCommand(args) {
374
374
 
375
375
  // Wire ~/.claude/.cursor/.codex to the project's registry when in a project,
376
376
  // so edits to project/.aw/.aw_registry/ are instantly visible in global IDE dirs.
377
+ if (!silent) fmt.logStep('Wiring IDE symlinks...');
377
378
  const projectRegistryDir = cwd !== HOME ? join(cwd, '.aw', REGISTRY_DIR) : null;
378
379
  const awDirForLinks = (projectRegistryDir && existsSync(projectRegistryDir)) ? projectRegistryDir : null;
379
380
  const symlinks = linkWorkspace(HOME, awDirForLinks, { silent: true });
380
381
  const commands = generateCommands(HOME, { silent: true });
381
382
  if (cwd !== HOME) installLocalCommitHook(cwd);
383
+ if (!silent) fmt.logStep(`IDE wired — ${chalk.bold(symlinks)} symlinks · ${chalk.bold(commands)} commands`);
382
384
 
383
385
  // Write hook manifest after all hook installation is complete
384
386
  try { writeHookManifest({ eccVersion: AW_ECC_TAG, awVersion: VERSION }); } catch { /* best effort */ }
@@ -429,7 +431,6 @@ export async function initCommand(args) {
429
431
  }
430
432
 
431
433
  fmt.note([
432
- `${chalk.dim('source:')} ~/.aw/ → ~/.aw_registry/ (symlink)`,
433
434
  folderName ? `${chalk.dim('namespace:')} ${folderName}` : `${chalk.dim('namespace:')} ${chalk.dim('none')}`,
434
435
  user ? `${chalk.dim('user:')} ${user}` : null,
435
436
  `${chalk.dim('version:')} v${VERSION}`,
@@ -525,8 +526,7 @@ export async function initCommand(args) {
525
526
 
526
527
  // Step 5: Wire ~/.claude/.cursor/.codex to the project's registry when in a project,
527
528
  // so edits to project/.aw/.aw_registry/ are instantly visible in global IDE dirs.
528
- const ideSpinner = fmt.spinner();
529
- ideSpinner.start('Wiring IDE symlinks...');
529
+ if (!silent) fmt.logStep('Wiring IDE symlinks...');
530
530
  const projectRegistryDir = cwd !== HOME ? join(cwd, '.aw', REGISTRY_DIR) : null;
531
531
  const awDirForLinks = (projectRegistryDir && existsSync(projectRegistryDir)) ? projectRegistryDir : null;
532
532
  // Parallel batch C: symlinks + commands are independent
@@ -535,7 +535,7 @@ export async function initCommand(args) {
535
535
  linkWorkspace(HOME, awDirForLinks, { silent: true }),
536
536
  generateCommands(HOME, { silent: true }),
537
537
  ];
538
- ideSpinner.stop(`IDE wired — ${chalk.bold(symlinks)} symlinks · ${chalk.bold(commands)} commands`);
538
+ if (!silent) fmt.logStep(`IDE wired — ${chalk.bold(symlinks)} symlinks · ${chalk.bold(commands)} commands`);
539
539
 
540
540
  // Write hook manifest after all hook installation is complete
541
541
  try { writeHookManifest({ eccVersion: AW_ECC_TAG, awVersion: VERSION }); } catch { /* best effort */ }
package/hooks.mjs CHANGED
@@ -181,11 +181,11 @@ export function installGlobalHooks() {
181
181
 
182
182
  if (previousPath && previousPath !== HOOKS_DIR) {
183
183
  writeFileSync(PREV_PATH_FILE, previousPath);
184
- fmt.logStep(`Saved previous core.hooksPath (${previousPath}) for chaining`);
184
+ fmt.logStep(`Chained existing git hooks (${previousPath})`);
185
185
  }
186
186
 
187
187
  execSync(`git config --global core.hooksPath "${HOOKS_DIR}"`, { stdio: 'pipe' });
188
- fmt.logStep('Global git hooks installed (auto-sync on pull/clone)');
188
+ fmt.logStep('Git hooks installed');
189
189
  return true;
190
190
  } catch (e) {
191
191
  fmt.logWarn(`Could not install global hooks: ${e.message}`);
package/integrate.mjs CHANGED
@@ -246,7 +246,7 @@ export function copyInstructions(cwd, tempDir, namespace) {
246
246
 
247
247
  if (updated !== existing) {
248
248
  writeFileSync(dest, updated);
249
- fmt.logStep(`Stripped aw-managed sections from ${file} (now in ~/.claude/CLAUDE.md / ~/.codex/AGENTS.md)`);
249
+ fmt.logStep(`Migrated ${file} to global config`);
250
250
  }
251
251
  continue;
252
252
  }
@@ -643,7 +643,7 @@ No active tasks. Tasks are created during workflow execution.
643
643
  // _pending-sync.jsonl — sync queue (empty)
644
644
  writeFileSync(join(awDocsDir, 'learnings', '_pending-sync.jsonl'), '');
645
645
 
646
- fmt.logSuccess('Created .aw_docs/ (local orchestration state)');
646
+ fmt.logSuccess('Orchestration state ready');
647
647
  }
648
648
 
649
649
  /**
package/mcp.mjs CHANGED
@@ -52,7 +52,7 @@ function resolveGitHubToken(silent = false) {
52
52
  timeout: 5000,
53
53
  }).trim();
54
54
  if (token && (token.startsWith('ghp_') || token.startsWith('gho_') || token.startsWith('github_pat_'))) {
55
- if (!silent) fmt.logStep('Using GitHub token from gh CLI');
55
+ if (!silent) fmt.logStep('GitHub token found');
56
56
  return token;
57
57
  }
58
58
  } catch { /* not authenticated yet */ }
@@ -312,7 +312,8 @@ export async function setupMcp(cwd, namespace, { silent = false } = {}) {
312
312
  const unique = [...new Set(updatedFiles)];
313
313
 
314
314
  if (unique.length > 0) {
315
- fmt.logSuccess(`MCP configured in ${unique.map(f => fmt.chalk.cyan(f)).join(', ')}`);
315
+ const shortNames = unique.map(f => fmt.chalk.cyan(f.replace(HOME, '~')));
316
+ fmt.logSuccess(`MCP configured (${shortNames.join(', ')})`);
316
317
  } else {
317
318
  fmt.logInfo('MCP servers already configured — no changes needed');
318
319
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ghl-ai/aw",
3
- "version": "0.1.42-beta.30",
3
+ "version": "0.1.42-beta.32",
4
4
  "description": "Agentic Workspace CLI — pull, push & manage agents, skills and commands from the registry",
5
5
  "type": "module",
6
6
  "bin": {
package/telemetry.mjs CHANGED
@@ -192,7 +192,7 @@ export async function startSpan(command, args) {
192
192
  notice() {
193
193
  if (disabled || config.noticed) return;
194
194
  if (args?.['--silent'] || !process.stderr.isTTY) return;
195
- console.error('\u2139 Telemetry is on \u2014 anonymous usage stats help improve aw. Opt out: aw telemetry disable');
195
+ // Telemetry notice suppressed opt-out via `aw telemetry disable`
196
196
  config.noticed = true;
197
197
  saveConfig(config);
198
198
  },