@indy2kro/agentenv 0.1.1 → 0.2.0

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 (45) hide show
  1. package/README.md +66 -51
  2. package/dist/commands/apply.d.ts +3 -0
  3. package/dist/commands/apply.d.ts.map +1 -1
  4. package/dist/commands/apply.js +26 -7
  5. package/dist/commands/apply.js.map +1 -1
  6. package/dist/commands/configure.d.ts +2 -1
  7. package/dist/commands/configure.d.ts.map +1 -1
  8. package/dist/commands/configure.js +71 -16
  9. package/dist/commands/configure.js.map +1 -1
  10. package/dist/commands/doctor.d.ts.map +1 -1
  11. package/dist/commands/doctor.js +9 -3
  12. package/dist/commands/doctor.js.map +1 -1
  13. package/dist/commands/setup.d.ts.map +1 -1
  14. package/dist/commands/setup.js +26 -16
  15. package/dist/commands/setup.js.map +1 -1
  16. package/dist/commands/status.d.ts.map +1 -1
  17. package/dist/commands/status.js +77 -21
  18. package/dist/commands/status.js.map +1 -1
  19. package/dist/index.js +12 -1
  20. package/dist/index.js.map +1 -1
  21. package/dist/integrations/index.d.ts +1 -0
  22. package/dist/integrations/index.d.ts.map +1 -1
  23. package/dist/integrations/index.js +1 -0
  24. package/dist/integrations/index.js.map +1 -1
  25. package/dist/integrations/render.d.ts +15 -0
  26. package/dist/integrations/render.d.ts.map +1 -0
  27. package/dist/integrations/render.js +51 -0
  28. package/dist/integrations/render.js.map +1 -0
  29. package/dist/shell/detector.d.ts +8 -2
  30. package/dist/shell/detector.d.ts.map +1 -1
  31. package/dist/shell/detector.js +86 -81
  32. package/dist/shell/detector.js.map +1 -1
  33. package/dist/ui/spinner.d.ts +19 -0
  34. package/dist/ui/spinner.d.ts.map +1 -0
  35. package/dist/ui/spinner.js +27 -0
  36. package/dist/ui/spinner.js.map +1 -0
  37. package/dist/ui/theme.d.ts +22 -0
  38. package/dist/ui/theme.d.ts.map +1 -0
  39. package/dist/ui/theme.js +42 -0
  40. package/dist/ui/theme.js.map +1 -0
  41. package/dist/wizard/build.d.ts +2 -1
  42. package/dist/wizard/build.d.ts.map +1 -1
  43. package/dist/wizard/build.js +1 -0
  44. package/dist/wizard/build.js.map +1 -1
  45. package/package.json +4 -2
@@ -2,11 +2,13 @@ import { Command } from 'commander';
2
2
  import { checkbox, confirm, select } from '@inquirer/prompts';
3
3
  import * as fs from 'fs';
4
4
  import { detectInstalledAgents } from '../adapters/detect.js';
5
- import { loadConfig, saveConfig, validateConfig } from '../config/schema.js';
5
+ import { DEFAULT_CONFIG, loadConfig, saveConfig, validateConfig } from '../config/schema.js';
6
6
  import { configFilePath, resolveScopeDir } from '../config/scopes.js';
7
7
  import { applyConfiguration } from './apply.js';
8
8
  import { AGENT_OPTIONS, buildConfigFromSelections, buildDefaultSimpleConfig, parseAgentsInput, simpleToolSelection, } from '../wizard/build.js';
9
9
  import { getMiseVersion, isMiseInstalled, miseInstallInstructions } from '../toolchain/mise.js';
10
+ import { colorizeLine, theme } from '../ui/theme.js';
11
+ import { withSpinner } from '../ui/spinner.js';
10
12
  function agentLabel(agent) {
11
13
  return AGENT_OPTIONS.find((option) => option.value === agent)?.label ?? agent;
12
14
  }
@@ -15,7 +17,7 @@ function misePrereqCheck() {
15
17
  console.log(`Prerequisite: mise ${getMiseVersion()}\n`);
16
18
  return true;
17
19
  }
18
- console.error('agentenv requires mise to install and manage tools, but mise was not found.');
20
+ console.error(theme.fail('agentenv requires mise to install and manage tools, but mise was not found.'));
19
21
  for (const line of miseInstallInstructions())
20
22
  console.error(` ${line}`);
21
23
  console.error('\nInstall mise first, then re-run `agentenv setup`.');
@@ -28,16 +30,16 @@ async function saveAndApply(config, file) {
28
30
  }
29
31
  saveConfig(config, file);
30
32
  console.log(`Saved configuration: ${file}\n`);
31
- const result = await applyConfiguration(config, resolveScopeDir(config.scope ?? 'project'));
33
+ const result = await withSpinner('Applying configuration...', () => applyConfiguration(config, resolveScopeDir(config.scope ?? 'project')));
32
34
  for (const message of result.messages)
33
- console.log(message);
35
+ console.log(colorizeLine(message));
34
36
  for (const error of result.errors)
35
- console.error(error);
37
+ console.error(theme.fail(error));
36
38
  if (!result.success) {
37
39
  process.exitCode = 1;
38
40
  return;
39
41
  }
40
- console.log('\nSetup complete!\n');
42
+ console.log(theme.ok('\nSetup complete!\n'));
41
43
  }
42
44
  /**
43
45
  * Unattended, single-command setup: `agentenv setup --yes`. Resolves the
@@ -48,7 +50,7 @@ async function saveAndApply(config, file) {
48
50
  * --agents / --no-tier2 / --no-rtk / --scope.
49
51
  */
50
52
  async function unattendedSetup(options) {
51
- console.log('\n=== agentenv Setup (Unattended) ===\n');
53
+ console.log(theme.heading('\n=== agentenv Setup (Unattended) ===\n'));
52
54
  if (!misePrereqCheck()) {
53
55
  process.exitCode = 1;
54
56
  return;
@@ -60,17 +62,17 @@ async function unattendedSetup(options) {
60
62
  config = loadConfig(options.config);
61
63
  }
62
64
  catch (error) {
63
- console.error(error instanceof Error ? error.message : String(error));
65
+ console.error(theme.fail(error instanceof Error ? error.message : String(error)));
64
66
  process.exitCode = 1;
65
67
  return;
66
68
  }
67
69
  const report = validateConfig(config);
68
70
  for (const warning of report.warnings)
69
- console.log(`warning: ${warning}`);
71
+ console.log(theme.warn(`warning: ${warning}`));
70
72
  if (report.errors.length > 0) {
71
73
  for (const error of report.errors)
72
- console.error(`error: ${error}`);
73
- console.error(`Configuration at ${options.config} is invalid; not applying.`);
74
+ console.error(theme.fail(`error: ${error}`));
75
+ console.error(theme.fail(`Configuration at ${options.config} is invalid; not applying.`));
74
76
  process.exitCode = 1;
75
77
  return;
76
78
  }
@@ -84,10 +86,10 @@ async function unattendedSetup(options) {
84
86
  config = loadConfig(file);
85
87
  const report = validateConfig(config);
86
88
  for (const warning of report.warnings)
87
- console.log(`warning: ${warning}`);
89
+ console.log(theme.warn(`warning: ${warning}`));
88
90
  if (report.errors.length > 0) {
89
91
  for (const error of report.errors)
90
- console.error(`error: ${error}`);
92
+ console.error(theme.fail(`error: ${error}`));
91
93
  process.exitCode = 1;
92
94
  return;
93
95
  }
@@ -99,7 +101,7 @@ async function unattendedSetup(options) {
99
101
  agents = parseAgentsInput(options.agents);
100
102
  }
101
103
  catch (error) {
102
- console.error(error instanceof Error ? error.message : String(error));
104
+ console.error(theme.fail(error instanceof Error ? error.message : String(error)));
103
105
  process.exitCode = 1;
104
106
  return;
105
107
  }
@@ -135,9 +137,9 @@ export const setupCommand = new Command()
135
137
  await unattendedSetup(options);
136
138
  return;
137
139
  }
138
- console.log('\n=== agentenv Setup (Simple Mode) ===\n');
140
+ console.log(theme.heading('\n=== agentenv Setup (Simple Mode) ===\n'));
139
141
  if (!process.stdin.isTTY || !process.stdout.isTTY) {
140
- console.error('Setup is interactive; in a non-TTY run `agentenv setup --yes` or `agentenv apply`.');
142
+ console.error(theme.fail('Setup is interactive; in a non-TTY run `agentenv setup --yes` or `agentenv apply`.'));
141
143
  process.exitCode = 1;
142
144
  return;
143
145
  }
@@ -173,12 +175,20 @@ export const setupCommand = new Command()
173
175
  { name: 'User/global-level', value: 'user' },
174
176
  ],
175
177
  }));
178
+ let existing;
179
+ try {
180
+ existing = loadConfig();
181
+ }
182
+ catch {
183
+ existing = DEFAULT_CONFIG;
184
+ }
176
185
  const config = buildConfigFromSelections({
177
186
  agents: selectedAgents,
178
187
  tools: simpleToolSelection(installTier2),
179
188
  customTools: [],
180
189
  scope,
181
190
  rtkEnabled: true,
191
+ integrations: existing.integrations,
182
192
  });
183
193
  await saveAndApply(config, configFilePath(scope));
184
194
  });
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgEpC,eAAO,MAAM,aAAa,SA+GtB,CAAC"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoEpC,eAAO,MAAM,aAAa,SAyKtB,CAAC"}
@@ -2,9 +2,12 @@ import { Command } from 'commander';
2
2
  import * as fs from 'fs';
3
3
  import * as path from 'path';
4
4
  import { isAgentInstalled, resolveBinary } from '../adapters/detect.js';
5
- import { BINARY_MAP, TOOL_DESCRIPTIONS, TOOL_KEYS, TOOL_TIERS, getEnabledAgents, loadConfig, validateConfig, } from '../config/schema.js';
5
+ import { BINARY_MAP, TOOL_DESCRIPTIONS, TOOL_KEYS, TOOL_TIERS, getEnabledAgents, loadConfig, resolveIntegrationScope, validateConfig, } from '../config/schema.js';
6
6
  import { findConfigPath, resolveScopeDir } from '../config/scopes.js';
7
- import { detectShell } from '../shell/detector.js';
7
+ import { checkAgentShellConfiguration, detectShell } from '../shell/detector.js';
8
+ import { SuperpowersAdapter, ghAuthLine } from '../integrations/index.js';
9
+ import { resolveGhAuthProbe } from '../toolchain/gh.js';
10
+ import { colorizeLine, theme } from '../ui/theme.js';
8
11
  const AGENT_CONFIG_FILES = {
9
12
  claude_code: {
10
13
  label: 'Claude Code',
@@ -53,8 +56,8 @@ function pathForPlatform(tool) {
53
56
  export const statusCommand = new Command()
54
57
  .name('status')
55
58
  .description('Show current configuration and environment status')
56
- .action(() => {
57
- console.log('\n=== agentenv status ===\n');
59
+ .action(async () => {
60
+ console.log(theme.heading('\n=== agentenv status ===\n'));
58
61
  const configPath = findConfigPath();
59
62
  if (!configPath) {
60
63
  console.log('No agentenv.toml found (project or user scope).');
@@ -67,7 +70,7 @@ export const statusCommand = new Command()
67
70
  config = loadConfig();
68
71
  }
69
72
  catch (error) {
70
- console.error(error instanceof Error ? error.message : String(error));
73
+ console.error(theme.fail(error instanceof Error ? error.message : String(error)));
71
74
  process.exitCode = 1;
72
75
  return;
73
76
  }
@@ -76,19 +79,40 @@ export const statusCommand = new Command()
76
79
  console.log(`Scope: ${config.scope ?? 'project'}`);
77
80
  console.log(`Base directory: ${baseDir}`);
78
81
  const report = validateConfig(config);
79
- console.log(`Validation: ${report.errors.length === 0 ? 'valid' : `${report.errors.length} error(s)`}${report.warnings.length > 0 ? `, ${report.warnings.length} warning(s)` : ''}`);
82
+ const validationSummary = `Validation: ${report.errors.length === 0 ? 'valid' : `${report.errors.length} error(s)`}${report.warnings.length > 0 ? `, ${report.warnings.length} warning(s)` : ''}`;
83
+ console.log(report.errors.length === 0 ? theme.ok(validationSummary) : theme.fail(validationSummary));
80
84
  for (const warning of report.warnings)
81
- console.log(` warning: ${warning}`);
85
+ console.log(theme.warn(` warning: ${warning}`));
82
86
  console.log(`RTK command rewriting: ${config.rtk?.enabled ? 'enabled' : 'disabled'}`);
83
87
  // Tier 0 shell status
84
88
  const shell = detectShell();
85
- console.log('\nTier 0 (shell):');
89
+ console.log(theme.heading('\nTier 0 (shell):'));
86
90
  if (shell.isWindows) {
87
- console.log(` Windows, POSIX-compatible: ${shell.isPosixCompatible ? 'yes' : 'NO'}`);
91
+ // shell.isPosixCompatible reflects THIS interactive shell (PowerShell,
92
+ // almost always not bash) — that's expected and isn't what `apply`
93
+ // fixes. What apply actually manages is each enabled agent's own
94
+ // config pointing at Git Bash, so that's what decides whether a fix
95
+ // is actually needed.
96
+ console.log(` Current shell: ${shell.currentShell}`);
88
97
  if (shell.gitBashPath)
89
98
  console.log(` Git Bash: ${shell.gitBashPath}`);
90
- if (!shell.isPosixCompatible)
91
- console.log(' Fix: run `agentenv apply` (Tier 0 shell fix)');
99
+ else
100
+ console.log(' Git Bash: NOT FOUND');
101
+ const shellHome = process.env.HOME || process.env.USERPROFILE || '';
102
+ const agentShellChecks = getEnabledAgents(config).map((agent) => ({
103
+ agent,
104
+ check: checkAgentShellConfiguration(agent, shellHome),
105
+ }));
106
+ if (agentShellChecks.length > 0) {
107
+ console.log(' Agent shell overrides:');
108
+ for (const { agent, check } of agentShellChecks) {
109
+ const label = AGENT_CONFIG_FILES[agent]?.label ?? agent;
110
+ console.log(colorizeLine(` ${check.needsFix ? '✗' : '✓'} ${label}`));
111
+ }
112
+ }
113
+ if (!shell.gitBashPath || agentShellChecks.some(({ check }) => check.needsFix)) {
114
+ console.log(theme.warn(' Fix: run `agentenv apply` (Tier 0 shell fix)'));
115
+ }
92
116
  }
93
117
  else {
94
118
  console.log(` ${shell.isPosixCompatible ? 'POSIX-compatible' : 'non-POSIX'} (not Windows; Tier 0 N/A)`);
@@ -98,7 +122,7 @@ export const statusCommand = new Command()
98
122
  }
99
123
  // Agents
100
124
  const enabledAgents = getEnabledAgents(config);
101
- console.log('\nAgents:');
125
+ console.log(theme.heading('\nAgents:'));
102
126
  if (enabledAgents.length === 0) {
103
127
  console.log(' (none enabled)');
104
128
  }
@@ -107,24 +131,28 @@ export const statusCommand = new Command()
107
131
  const installed = isAgentInstalled(agent);
108
132
  const configured = fs.existsSync(meta.check(baseDir));
109
133
  const drift = installed && !configured;
110
- console.log(` ${meta.label.padEnd(16)} installed: ${installed ? 'yes' : 'no'} ` +
111
- `configured: ${configured ? 'yes' : 'no'}${drift ? ' <- drift: installed but not configured' : ''}`);
134
+ const line = ` ${meta.label.padEnd(16)} installed: ${installed ? 'yes' : 'no'} ` +
135
+ `configured: ${configured ? 'yes' : 'no'}${drift ? ' <- drift: installed but not configured' : ''}`;
136
+ console.log(drift ? theme.warn(line) : line);
112
137
  }
113
138
  // Tools
114
139
  const enabledTools = TOOL_KEYS.filter((key) => config.tools?.[key] === true);
115
- console.log('\nTools:');
140
+ console.log(theme.heading('\nTools:'));
116
141
  for (const key of enabledTools) {
117
142
  const binary = BINARY_MAP[key];
118
143
  const found = resolveBinary(binary) !== null;
119
144
  const tier = TOOL_TIERS[key] ?? '?';
120
145
  const desc = TOOL_DESCRIPTIONS[key] ?? '';
121
- console.log(` ${found ? '✓' : '✗'} ${binary.padEnd(12)} ${key} (Tier ${tier})${found ? '' : ' <- drift: enabled in config but not on PATH'} — ${desc}`);
146
+ console.log(colorizeLine(` ${found ? '✓' : '✗'} ${binary.padEnd(12)} ${key} (Tier ${tier})${found ? '' : ' <- drift: enabled in config but not on PATH'} — ${desc}`));
147
+ if (key === 'gh' && found) {
148
+ console.log(colorizeLine(` ${ghAuthLine(resolveGhAuthProbe()().status)}`));
149
+ }
122
150
  }
123
151
  if (enabledTools.length === 0)
124
152
  console.log(' (none enabled)');
125
153
  // Custom tools
126
154
  const customTools = config.custom_tools ?? [];
127
- console.log('\nCustom tools:');
155
+ console.log(theme.heading('\nCustom tools:'));
128
156
  if (customTools.length === 0) {
129
157
  console.log(' (none)');
130
158
  }
@@ -132,7 +160,7 @@ export const statusCommand = new Command()
132
160
  console.log(` ${tool.name}: ${customToolStatus(tool)}`);
133
161
  }
134
162
  // Generated files
135
- console.log('\nGenerated files:');
163
+ console.log(theme.heading('\nGenerated files:'));
136
164
  const generated = [
137
165
  ['mise.toml', path.join(baseDir, 'mise.toml'), false],
138
166
  ['AGENTS.md', path.join(baseDir, 'AGENTS.md'), true],
@@ -141,12 +169,40 @@ export const statusCommand = new Command()
141
169
  for (const [label, file, markerCheck] of generated) {
142
170
  const exists = fs.existsSync(file);
143
171
  if (!exists) {
144
- console.log(` ✗ ${label} (missing)`);
172
+ console.log(theme.fail(` ✗ ${label} (missing)`));
145
173
  continue;
146
174
  }
147
175
  const managed = markerCheck ? containsManagedMarker(file, config) : true;
148
- console.log(` ✓ ${label}${managed ? '' : ' (managed marker block missing)'}`);
176
+ console.log(colorizeLine(` ✓ ${label}${managed ? '' : ' (managed marker block missing)'}`));
177
+ }
178
+ // Integrations
179
+ console.log(theme.heading('\nIntegrations:'));
180
+ const superpowersConfig = config.integrations?.superpowers;
181
+ console.log(' Superpowers');
182
+ if (!superpowersConfig || superpowersConfig.enabled !== true) {
183
+ console.log(' enabled: no');
184
+ }
185
+ else {
186
+ // Resolve against the top-level scope before calling the adapter — the
187
+ // adapter only ever sees an IntegrationConfig, not the full
188
+ // AgentenvConfig, so it can't fall back to the top-level scope itself
189
+ // (see the matching resolution in apply.ts).
190
+ const scope = resolveIntegrationScope(config, superpowersConfig);
191
+ const adapter = new SuperpowersAdapter();
192
+ const result = await adapter.status(resolveScopeDir(scope), { ...superpowersConfig, scope });
193
+ console.log(' enabled: yes');
194
+ console.log(` source: ${result.source ?? '(unset)'}`);
195
+ console.log(` ref: ${result.ref ?? '(unset)'}`);
196
+ console.log(` scope: ${result.scope}`);
197
+ for (const agentState of result.agents) {
198
+ const label = AGENT_CONFIG_FILES[agentState.agent]?.label ?? agentState.agent;
199
+ console.log(` ${label.padEnd(16)} ${agentState.state}${agentState.detail ? ` (${agentState.detail})` : ''}`);
200
+ }
201
+ console.log(` hooks allowed: ${superpowersConfig.allow_hooks ? 'yes' : 'no'}`);
202
+ console.log(` external requests allowed: ${superpowersConfig.allow_external_requests ? 'yes' : 'no'}`);
203
+ for (const warning of result.warnings)
204
+ console.log(theme.warn(` warning: ${warning}`));
149
205
  }
150
- console.log('\n=== Status complete ===\n');
206
+ console.log(theme.heading('\n=== Status complete ===\n'));
151
207
  });
152
208
  //# sourceMappingURL=status.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -3,6 +3,7 @@
3
3
  * agentenv CLI - Main entrypoint
4
4
  * Configure a consistent, capable shell environment for AI coding agents
5
5
  */
6
+ import { readFileSync } from 'node:fs';
6
7
  import { Command } from 'commander';
7
8
  import { setupCommand } from './commands/setup.js';
8
9
  import { configureCommand } from './commands/configure.js';
@@ -10,12 +11,22 @@ import { applyCommand } from './commands/apply.js';
10
11
  import { statusCommand } from './commands/status.js';
11
12
  import { updateCommand } from './commands/update.js';
12
13
  import { doctorCommand } from './commands/doctor.js';
14
+ import { setColorEnabled } from './ui/theme.js';
15
+ const { version } = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf-8'));
13
16
  // Create the CLI
14
17
  const program = new Command();
15
18
  program
16
19
  .name('agentenv')
17
20
  .description('Configure a consistent, capable shell environment for AI coding agents')
18
- .version('0.1.0');
21
+ .version(version)
22
+ .option('--no-color', 'disable colored output (also honors the NO_COLOR env var)');
23
+ // Color auto-detects from TTY + NO_COLOR/FORCE_COLOR by default (chalk);
24
+ // --no-color is the only explicit override, checked before any command runs.
25
+ program.hook('preAction', (_thisCommand, actionCommand) => {
26
+ const { color } = actionCommand.optsWithGlobals();
27
+ if (color === false)
28
+ setColorEnabled(false);
29
+ });
19
30
  // Add commands
20
31
  program.addCommand(setupCommand);
21
32
  program.addCommand(configureCommand);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,iBAAiB;AACjB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,UAAU,CAAC;KAChB,WAAW,CAAC,wEAAwE,CAAC;KACrF,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,eAAe;AACf,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;AACrC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAElC,oBAAoB;AACpB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAEnG,iBAAiB;AACjB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,UAAU,CAAC;KAChB,WAAW,CAAC,wEAAwE,CAAC;KACrF,OAAO,CAAC,OAAO,CAAC;KAChB,MAAM,CAAC,YAAY,EAAE,2DAA2D,CAAC,CAAC;AAErF,yEAAyE;AACzE,6EAA6E;AAC7E,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,EAAE;IACxD,MAAM,EAAE,KAAK,EAAE,GAAG,aAAa,CAAC,eAAe,EAAuB,CAAC;IACvE,IAAI,KAAK,KAAK,KAAK;QAAE,eAAe,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC;AAEH,eAAe;AACf,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;AACrC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAElC,oBAAoB;AACpB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -3,5 +3,6 @@
3
3
  */
4
4
  export type { IntegrationAdapter, IntegrationAgentState, IntegrationResult, IntegrationState, } from './base.js';
5
5
  export { SuperpowersAdapter, SUPERPOWERS_MARKETPLACE_REPO, SUPERPOWERS_PLUGIN_ID, } from './superpowers.js';
6
+ export { integrationResultLines, integrationStateLine, ghAuthLine } from './render.js';
6
7
  export type { ClaudeCliRunner, SuperpowersAdapterDeps } from './superpowers.js';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/integrations/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EACV,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/integrations/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EACV,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACvF,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -2,4 +2,5 @@
2
2
  * Optional Integration Adapters Index
3
3
  */
4
4
  export { SuperpowersAdapter, SUPERPOWERS_MARKETPLACE_REPO, SUPERPOWERS_PLUGIN_ID, } from './superpowers.js';
5
+ export { integrationResultLines, integrationStateLine, ghAuthLine } from './render.js';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integrations/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integrations/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Rendering helpers for integration results, shared by `apply` and `status`.
3
+ */
4
+ import type { IntegrationAgentState, IntegrationResult } from './base.js';
5
+ /** Render a single integration/agent pair as a one-line status string. */
6
+ export declare function integrationStateLine(state: IntegrationAgentState): string;
7
+ /**
8
+ * Render an IntegrationResult into display lines: agent states first, then
9
+ * the native commands that were run, changed files, and warnings. Errors are
10
+ * intentionally excluded — callers decide how to surface them.
11
+ */
12
+ export declare function integrationResultLines(result: IntegrationResult): string[];
13
+ /** Render the gh auth result as a single display line. */
14
+ export declare function ghAuthLine(status: 'authenticated' | 'unauthenticated' | 'unknown' | 'not_installed'): string;
15
+ //# sourceMappingURL=render.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/integrations/render.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAS1E,0EAA0E;AAC1E,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAIzE;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAU1E;AAED,0DAA0D;AAC1D,wBAAgB,UAAU,CACxB,MAAM,EAAE,eAAe,GAAG,iBAAiB,GAAG,SAAS,GAAG,eAAe,GACxE,MAAM,CAkBR"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Rendering helpers for integration results, shared by `apply` and `status`.
3
+ */
4
+ const STATE_GLYPH = {
5
+ installed: '✓',
6
+ missing: '✗',
7
+ unsupported: '·',
8
+ drifted: '!',
9
+ };
10
+ /** Render a single integration/agent pair as a one-line status string. */
11
+ export function integrationStateLine(state) {
12
+ const glyph = STATE_GLYPH[state.state];
13
+ const detail = state.detail ? ` (${state.detail})` : '';
14
+ return `${glyph} ${state.agent}: ${state.state}${detail}`;
15
+ }
16
+ /**
17
+ * Render an IntegrationResult into display lines: agent states first, then
18
+ * the native commands that were run, changed files, and warnings. Errors are
19
+ * intentionally excluded — callers decide how to surface them.
20
+ */
21
+ export function integrationResultLines(result) {
22
+ const lines = result.agents.map(integrationStateLine);
23
+ if (result.nativeCommands.length > 0) {
24
+ lines.push(`ran: ${result.nativeCommands.join('; ')}`);
25
+ }
26
+ if (result.changedFiles.length > 0) {
27
+ lines.push(`wrote: ${result.changedFiles.join(', ')}`);
28
+ }
29
+ for (const warning of result.warnings)
30
+ lines.push(`warning: ${warning}`);
31
+ return lines;
32
+ }
33
+ /** Render the gh auth result as a single display line. */
34
+ export function ghAuthLine(status) {
35
+ const glyph = status === 'authenticated'
36
+ ? '✓'
37
+ : status === 'unauthenticated'
38
+ ? '✗'
39
+ : status === 'not_installed'
40
+ ? '·'
41
+ : '?';
42
+ const label = status === 'authenticated'
43
+ ? 'authenticated'
44
+ : status === 'unauthenticated'
45
+ ? 'not authenticated'
46
+ : status === 'not_installed'
47
+ ? 'gh not installed'
48
+ : 'unknown';
49
+ return `${glyph} github.com: ${label}`;
50
+ }
51
+ //# sourceMappingURL=render.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/integrations/render.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,WAAW,GAAmD;IAClE,SAAS,EAAE,GAAG;IACd,OAAO,EAAE,GAAG;IACZ,WAAW,EAAE,GAAG;IAChB,OAAO,EAAE,GAAG;CACb,CAAC;AAEF,0EAA0E;AAC1E,MAAM,UAAU,oBAAoB,CAAC,KAA4B;IAC/D,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,OAAO,GAAG,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC;AAC5D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAyB;IAC9D,MAAM,KAAK,GAAa,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAChE,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;IACzE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,UAAU,CACxB,MAAyE;IAEzE,MAAM,KAAK,GACT,MAAM,KAAK,eAAe;QACxB,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,MAAM,KAAK,iBAAiB;YAC5B,CAAC,CAAC,GAAG;YACL,CAAC,CAAC,MAAM,KAAK,eAAe;gBAC1B,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,GAAG,CAAC;IACd,MAAM,KAAK,GACT,MAAM,KAAK,eAAe;QACxB,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,MAAM,KAAK,iBAAiB;YAC5B,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,MAAM,KAAK,eAAe;gBAC1B,CAAC,CAAC,kBAAkB;gBACpB,CAAC,CAAC,SAAS,CAAC;IACpB,OAAO,GAAG,KAAK,gBAAgB,KAAK,EAAE,CAAC;AACzC,CAAC"}
@@ -82,9 +82,15 @@ export declare function fixShellConfiguration(_baseDir?: string, agents?: AgentK
82
82
  results?: ShellFixResult[];
83
83
  };
84
84
  /**
85
- * Check if a specific agent is configured to use a POSIX shell
85
+ * Check whether a specific agent's own config already points it at a POSIX
86
+ * (bash) shell — i.e. whether Tier 0's per-agent fix (applyAgentShellFix) has
87
+ * actually taken effect for that agent. Reads exactly the field each
88
+ * patch*ShellFix writes, so this stays in sync with what `apply` can affect;
89
+ * it deliberately does not look at the current process's own shell/env,
90
+ * since that's the interactive shell the user is running agentenv from, not
91
+ * the target agent's configuration.
86
92
  */
87
- export declare function checkAgentShellConfiguration(agent: string): {
93
+ export declare function checkAgentShellConfiguration(agent: AgentKey, home?: string): {
88
94
  isConfigured: boolean;
89
95
  shell?: string;
90
96
  needsFix: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../../src/shell/detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,eAAO,MAAM,eAAe,UAgB3B,CAAC;AAGF,eAAO,MAAM,cAAc,UAK1B,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,SAAS,CAyEvC;AAsHD;;;GAGG;AACH,iBAAS,wBAAwB,IAAI,MAAM,GAAG,SAAS,CA6BtD;AA4BD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,GAAG;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAkDA;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CASvE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAMvE;AAGD,OAAO,EAAE,wBAAwB,EAAE,CAAC;AAEpC,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAE7E,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,QAAQ,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAS1D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAgBjG;AAoJD;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,GAAE,MAAY,EACtB,MAAM,GAAE,QAAQ,EAAoB,GACnC;IACD,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;CAC5B,CAmFA;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG;IAC3D,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB,CAyBA"}
1
+ {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../../src/shell/detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,eAAO,MAAM,eAAe,UAgB3B,CAAC;AAGF,eAAO,MAAM,cAAc,UAK1B,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,SAAS,CAyEvC;AAsHD;;;GAGG;AACH,iBAAS,wBAAwB,IAAI,MAAM,GAAG,SAAS,CA6BtD;AA4BD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,GAAG;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAkDA;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CASvE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAMvE;AAGD,OAAO,EAAE,wBAAwB,EAAE,CAAC;AAEpC,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAE7E,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,QAAQ,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAS1D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAgBjG;AAoJD;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,GAAE,MAAY,EACtB,MAAM,GAAE,QAAQ,EAAoB,GACnC;IACD,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;CAC5B,CAmFA;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,QAAQ,EACf,IAAI,GAAE,MAA0D,GAC/D;IAAE,YAAY,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAW9D"}