@indy2kro/agentenv 0.2.1 → 0.3.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 (92) hide show
  1. package/README.md +46 -39
  2. package/dist/adapters/cursor.d.ts +1 -1
  3. package/dist/adapters/cursor.d.ts.map +1 -1
  4. package/dist/adapters/cursor.js +5 -1
  5. package/dist/adapters/cursor.js.map +1 -1
  6. package/dist/adapters/gemini.d.ts +1 -1
  7. package/dist/adapters/gemini.js +1 -1
  8. package/dist/adapters/rtk-delegation.d.ts +7 -0
  9. package/dist/adapters/rtk-delegation.d.ts.map +1 -1
  10. package/dist/adapters/rtk-delegation.js +5 -3
  11. package/dist/adapters/rtk-delegation.js.map +1 -1
  12. package/dist/adapters/vibe.d.ts +1 -1
  13. package/dist/adapters/vibe.js +1 -1
  14. package/dist/adapters/windsurf.d.ts +1 -1
  15. package/dist/adapters/windsurf.js +1 -1
  16. package/dist/cli/exit.d.ts +19 -0
  17. package/dist/cli/exit.d.ts.map +1 -0
  18. package/dist/cli/exit.js +36 -0
  19. package/dist/cli/exit.js.map +1 -0
  20. package/dist/commands/apply.d.ts +2 -2
  21. package/dist/commands/apply.d.ts.map +1 -1
  22. package/dist/commands/apply.js +25 -1
  23. package/dist/commands/apply.js.map +1 -1
  24. package/dist/commands/completion.d.ts +30 -0
  25. package/dist/commands/completion.d.ts.map +1 -0
  26. package/dist/commands/completion.js +181 -0
  27. package/dist/commands/completion.js.map +1 -0
  28. package/dist/commands/doctor.d.ts +15 -1
  29. package/dist/commands/doctor.d.ts.map +1 -1
  30. package/dist/commands/doctor.js +79 -8
  31. package/dist/commands/doctor.js.map +1 -1
  32. package/dist/commands/setup.d.ts +4 -1
  33. package/dist/commands/setup.d.ts.map +1 -1
  34. package/dist/commands/setup.js +21 -64
  35. package/dist/commands/setup.js.map +1 -1
  36. package/dist/commands/status.d.ts +124 -1
  37. package/dist/commands/status.d.ts.map +1 -1
  38. package/dist/commands/status.js +440 -135
  39. package/dist/commands/status.js.map +1 -1
  40. package/dist/commands/uninstall.d.ts +54 -0
  41. package/dist/commands/uninstall.d.ts.map +1 -0
  42. package/dist/commands/uninstall.js +246 -0
  43. package/dist/commands/uninstall.js.map +1 -0
  44. package/dist/commands/update.d.ts.map +1 -1
  45. package/dist/commands/update.js +78 -34
  46. package/dist/commands/update.js.map +1 -1
  47. package/dist/commands/wizard.d.ts +8 -0
  48. package/dist/commands/wizard.d.ts.map +1 -0
  49. package/dist/commands/{configure.js → wizard.js} +83 -69
  50. package/dist/commands/wizard.js.map +1 -0
  51. package/dist/config/schema.d.ts +2 -3
  52. package/dist/config/schema.d.ts.map +1 -1
  53. package/dist/config/schema.js +2 -11
  54. package/dist/config/schema.js.map +1 -1
  55. package/dist/config/scopes.d.ts.map +1 -1
  56. package/dist/config/scopes.js +4 -0
  57. package/dist/config/scopes.js.map +1 -1
  58. package/dist/generate/agentsmd.d.ts.map +1 -1
  59. package/dist/generate/agentsmd.js +22 -5
  60. package/dist/generate/agentsmd.js.map +1 -1
  61. package/dist/index.js +35 -8
  62. package/dist/index.js.map +1 -1
  63. package/dist/shell/detector.js +1 -1
  64. package/dist/shell/detector.js.map +1 -1
  65. package/dist/toolchain/fallbacks.d.ts +1 -2
  66. package/dist/toolchain/fallbacks.d.ts.map +1 -1
  67. package/dist/toolchain/fallbacks.js +2 -22
  68. package/dist/toolchain/fallbacks.js.map +1 -1
  69. package/dist/toolchain/mise.d.ts +33 -2
  70. package/dist/toolchain/mise.d.ts.map +1 -1
  71. package/dist/toolchain/mise.js +65 -12
  72. package/dist/toolchain/mise.js.map +1 -1
  73. package/dist/toolchain/rtk.d.ts +1 -1
  74. package/dist/toolchain/rtk.d.ts.map +1 -1
  75. package/dist/toolchain/rtk.js +9 -5
  76. package/dist/toolchain/rtk.js.map +1 -1
  77. package/dist/ui/output.d.ts +29 -0
  78. package/dist/ui/output.d.ts.map +1 -0
  79. package/dist/ui/output.js +72 -0
  80. package/dist/ui/output.js.map +1 -0
  81. package/dist/ui/spinner.d.ts +5 -1
  82. package/dist/ui/spinner.d.ts.map +1 -1
  83. package/dist/ui/spinner.js +13 -2
  84. package/dist/ui/spinner.js.map +1 -1
  85. package/dist/wizard/build.d.ts +33 -3
  86. package/dist/wizard/build.d.ts.map +1 -1
  87. package/dist/wizard/build.js +86 -5
  88. package/dist/wizard/build.js.map +1 -1
  89. package/package.json +1 -1
  90. package/dist/commands/configure.d.ts +0 -14
  91. package/dist/commands/configure.d.ts.map +0 -1
  92. package/dist/commands/configure.js.map +0 -1
@@ -1,9 +1,132 @@
1
1
  import { Command } from 'commander';
2
- import type { AgentKey } from '../config/schema.js';
2
+ import { isAgentInstalled, resolveBinary } from '../adapters/detect.js';
3
+ import { getEnabledAgents, loadConfig, validateConfig } from '../config/schema.js';
4
+ import type { AgentKey, AgentenvConfig } from '../config/schema.js';
5
+ import { findConfigPath, resolveScopeDir } from '../config/scopes.js';
6
+ import { checkAgentShellConfiguration, detectShell } from '../shell/detector.js';
7
+ import type { IntegrationResult, IntegrationState } from '../integrations/base.js';
8
+ import { resolveGhAuthProbe } from '../toolchain/gh.js';
9
+ import { getInstalledToolState, getMiseVersion } from '../toolchain/mise.js';
3
10
  declare const AGENT_CONFIG_FILES: Record<AgentKey, {
4
11
  label: string;
5
12
  check: (baseDir: string) => string;
6
13
  }>;
7
14
  export { AGENT_CONFIG_FILES };
15
+ export interface StatusAgent {
16
+ key: string;
17
+ label: string;
18
+ installed: boolean;
19
+ configured: boolean;
20
+ drift: boolean;
21
+ }
22
+ export interface StatusTool {
23
+ key: string;
24
+ binary: string;
25
+ tier: number;
26
+ found: boolean;
27
+ drift: boolean;
28
+ /** Resolved explicit pin (`tool_versions` or agentenv's internal pin), or `null` for `latest`. */
29
+ pinned: string | null;
30
+ /** Best-match installed version from `mise ls --json`, or `null` when moot/unknown. */
31
+ installed: string | null;
32
+ }
33
+ export interface StatusCustomTool {
34
+ name: string;
35
+ status: string;
36
+ drift: boolean;
37
+ }
38
+ export interface StatusGenerated {
39
+ label: string;
40
+ exists: boolean;
41
+ managed: boolean;
42
+ }
43
+ export interface StatusIntegrationAgent {
44
+ agent: string;
45
+ state: IntegrationState;
46
+ detail: string | null;
47
+ }
48
+ export interface StatusIntegration {
49
+ key: string;
50
+ enabled: boolean;
51
+ source: string | null;
52
+ ref: string | null;
53
+ scope: string | null;
54
+ agents: string[];
55
+ states: StatusIntegrationAgent[];
56
+ drift: boolean;
57
+ }
58
+ export interface StatusJson {
59
+ command: 'status';
60
+ config: string | null;
61
+ scope: 'project' | 'user' | null;
62
+ baseDir: string | null;
63
+ exitCode: 0 | 1;
64
+ validation: {
65
+ errors: string[];
66
+ warnings: string[];
67
+ };
68
+ agents: StatusAgent[];
69
+ tools: StatusTool[];
70
+ customTools: StatusCustomTool[];
71
+ generated: StatusGenerated[];
72
+ integrations: StatusIntegration[];
73
+ }
74
+ /** Human-only fields that never appear in `--json`. */
75
+ export interface StatusReport extends StatusJson {
76
+ rtkEnabled: boolean;
77
+ tier0: Tier0Report | null;
78
+ ghAuth: string | null;
79
+ /** Resolved `mise --version` (or 'unknown') for human/bug-report context. */
80
+ miseVersion: string;
81
+ /**
82
+ * Per-integration lines the human renderer prints but `StatusJson` does not
83
+ * carry (the spec-pinned status JSON has no hooks/external/warning fields).
84
+ */
85
+ integrationDetails: StatusIntegrationDetail[];
86
+ }
87
+ export interface StatusIntegrationDetail {
88
+ key: string;
89
+ hooksAllowed: boolean | null;
90
+ externalRequestsAllowed: boolean | null;
91
+ warnings: string[];
92
+ }
93
+ export interface Tier0Report {
94
+ isWindows: boolean;
95
+ currentShell: string;
96
+ gitBashPath: string | null;
97
+ posixCompatible: boolean;
98
+ missingUtilities: string[];
99
+ agentChecks: Array<{
100
+ agent: string;
101
+ label: string;
102
+ needsFix: boolean;
103
+ }>;
104
+ needsFix: boolean;
105
+ }
106
+ export declare function computeStatusExitCode(report: StatusJson): 0 | 1;
107
+ export interface StatusDeps {
108
+ findConfigPath?: typeof findConfigPath;
109
+ loadConfig?: typeof loadConfig;
110
+ resolveScopeDir?: typeof resolveScopeDir;
111
+ validateConfig?: typeof validateConfig;
112
+ getMiseVersion?: typeof getMiseVersion;
113
+ getInstalledToolState?: typeof getInstalledToolState;
114
+ getEnabledAgents?: typeof getEnabledAgents;
115
+ isAgentInstalled?: typeof isAgentInstalled;
116
+ resolveBinary?: typeof resolveBinary;
117
+ detectShell?: typeof detectShell;
118
+ checkAgentShellConfiguration?: typeof checkAgentShellConfiguration;
119
+ fileExists?: (file: string) => boolean;
120
+ hasManagedMarker?: (file: string, config: AgentenvConfig) => boolean;
121
+ resolveGhAuthProbe?: typeof resolveGhAuthProbe;
122
+ superpowersStatus?: (baseDir: string, config: NonNullable<AgentenvConfig['integrations']>['superpowers']) => Promise<IntegrationResult>;
123
+ }
124
+ /** Gather the full status report (structured, no printing). */
125
+ export declare function gatherStatus(deps?: StatusDeps): Promise<StatusReport>;
126
+ export declare function statusToJson(report: StatusReport): StatusJson;
127
+ /** Collapsed one-line-per-area view for `status --short`. */
128
+ export declare function renderStatusShort(report: StatusReport): string;
129
+ /** Render the human report body (banners are emitted by the command). */
130
+ export declare function renderStatus(report: StatusReport): string;
8
131
  export declare const statusCommand: Command;
9
132
  //# sourceMappingURL=status.d.ts.map
@@ -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;AAcpC,OAAO,KAAK,EAAE,QAAQ,EAA8B,MAAM,qBAAqB,CAAC;AAOhF,QAAA,MAAM,kBAAkB,EAAE,MAAM,CAAC,QAAQ,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAA;CAAE,CAqB7F,CAAC;AAEJ,OAAO,EAAE,kBAAkB,EAAE,CAAC;AA+B9B,eAAO,MAAM,aAAa,SAyKtB,CAAC"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}