@harness-forge/cli 1.0.1 → 1.1.1

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/AGENTS.md CHANGED
@@ -2,74 +2,112 @@
2
2
 
3
3
  Use the thin visible bridge surfaces first in installed workspaces:
4
4
 
5
- - `.agents/skills/` for auto-discoverable wrappers
5
+ - `AGENTS.md` for the thin human-readable guidance bridge
6
6
  - `.hforge/agent-manifest.json` for the machine-readable custom-agent contract
7
- - `.specify/` for spec → plan → tasks
7
+ - `.agents/skills/` for auto-discoverable wrappers
8
+ - `.specify/` for spec -> plan -> tasks flow state and templates
8
9
  - `.hforge/library/skills/` for canonical installed skills
9
- - `.hforge/library/rules/` plus the matching language directory for implementation guidance
10
+ - `.hforge/library/rules/` and `.hforge/library/knowledge/` for canonical installed implementation guidance
11
+ - `.hforge/templates/` for canonical installed task and workflow templates
12
+ - `.hforge/runtime/index.json` and `.hforge/runtime/README.md` for shared runtime state and bridge resolution
13
+ - `.hforge/generated/agent-command-catalog.json` for safe command discovery
14
+
15
+ ## Mode awareness
16
+
17
+ - when working inside an installed consumer workspace, prefer the hidden canonical AI layer under `.hforge/` plus the thin visible bridges at the repo root
18
+ - when working inside the Harness Forge source repository itself, the authored source-of-truth surfaces still live in `skills/`, `rules/`, `knowledge-bases/`, `templates/`, `manifests/`, `targets/`, and `src/`
19
+ - do not assume the source repository layout and the installed workspace layout are the same thing
20
+ - in installed workspaces, treat `.hforge/` as canonical and the root bridge files as discovery and compatibility surfaces
21
+ - in the package source repository, treat `.hforge/` as generated or local runtime state rather than the authored source of truth
22
+
23
+ ## Resolution rule
24
+
25
+ - treat `AGENTS.md` as the primary human-readable entrypoint
26
+ - load `.hforge/agent-manifest.json` first when a machine-readable contract is preferred
27
+ - use `.agents/skills/<skill>/SKILL.md` only for discovery
28
+ - use `.hforge/library/skills/<skill>/SKILL.md` as the canonical execution contract in installed workspaces
29
+ - use `.hforge/library/skills/<skill>/references/` for deeper runtime-facing heuristics and templates
30
+ - treat `.hforge/library/`, `.hforge/templates/`, `.hforge/runtime/`, `.hforge/state/`, and `.hforge/generated/` as extracted AI-layer surfaces, not product source code
31
+ - treat any surface marked `treatAsProductCode: false` in `.hforge/agent-manifest.json` as non-product AI-layer content
32
+
33
+ ## Installed runtime map
34
+
35
+ - use `.hforge/runtime/repo/repo-map.json` for baseline repo topology and boundary context
36
+ - use `.hforge/runtime/repo/recommendations.json` for evidence-backed bundle, profile, and validation recommendations
37
+ - use `.hforge/runtime/repo/instruction-plan.json` for target-aware instruction synthesis outputs
38
+ - use `.hforge/runtime/findings/validation-gaps.json` and `.hforge/runtime/findings/risk-signals.json` for cautionary runtime signals
39
+ - use `.hforge/runtime/tasks/<taskId>/` for task-runtime artifacts such as file-interest, impact-analysis, and task-pack linkage
40
+ - use `.hforge/runtime/decisions/` for ASR and ADR records plus machine-readable decision indexes when governance support is installed
41
+ - use `.hforge/runtime/recursive/sessions/` for recursive-session state, handles, and promotion traces when recursive mode is enabled
42
+ - use `.hforge/observability/` for local-only effectiveness summaries and recommendation or maintenance signals
43
+ - use `.hforge/generated/bin/` for workspace-local launchers when bare `hforge` is not already available on `PATH`
10
44
 
11
45
  ## Language discovery
12
46
 
13
- - prefer `.hforge/library/knowledge/seeded/typescript/` when the repo is TypeScript or JavaScript heavy in an installed workspace
14
- - prefer `skills/javascript-engineering/` when the repo is JavaScript-first and the task is not primarily about TypeScript typing
15
- - prefer `.hforge/library/knowledge/seeded/java/` for Java services and libraries in an installed workspace
16
- - prefer `.hforge/library/knowledge/seeded/dotnet/` for .NET repos in an installed workspace
17
- - prefer `.hforge/library/knowledge/seeded/lua/` for Lua work in an installed workspace
18
- - prefer `.hforge/library/knowledge/seeded/powershell/` for PowerShell and Windows automation in an installed workspace
19
- - use the structured packs under `.hforge/library/knowledge/structured/` for Python, Go, Kotlin, Rust, C++, PHP, Perl, Swift, and Shell in an installed workspace
47
+ - prefer `.hforge/library/knowledge/seeded/typescript/` with `.hforge/library/rules/common/` and `.hforge/library/rules/typescript/` when the repo is TypeScript-heavy or JavaScript-heavy with strong typing needs
48
+ - prefer `.hforge/library/skills/javascript-engineering/` when the repo is JavaScript-first and the task is not primarily about TypeScript typing
49
+ - prefer `.hforge/library/knowledge/seeded/java/` with `.hforge/library/rules/common/` and `.hforge/library/rules/java/` for Java services and libraries
50
+ - prefer `.hforge/library/knowledge/seeded/dotnet/` with `.hforge/library/rules/common/` and `.hforge/library/rules/dotnet/` for .NET repos
51
+ - prefer `.hforge/library/knowledge/seeded/lua/` with `.hforge/library/rules/common/` and `.hforge/library/rules/lua/` for Lua work
52
+ - prefer `.hforge/library/knowledge/seeded/powershell/` with `.hforge/library/rules/common/` and `.hforge/library/rules/powershell/` for PowerShell and Windows automation
53
+ - use the structured packs under `.hforge/library/knowledge/structured/` with the matching `.hforge/library/rules/<language>/` directory for Python, Go, Kotlin, Rust, C++, PHP, Perl, Swift, and Shell
54
+ - use `.hforge/library/manifests/catalog/language-assets.json` when the installed language surface is not obvious from the repo layout alone
20
55
 
21
56
  ## Specialized skills
22
57
 
23
- - prefer `.hforge/library/skills/cloud-architect/` when the task is about deployment topology, distributed systems, reliability, observability, or cloud trade-offs across services in an installed workspace
24
- - prefer `.hforge/library/skills/engineering-assistant/` when the task needs architecture plus implementation orchestration, option framing, or explicit project-memory and change-discipline guidance in one surface in an installed workspace
58
+ - prefer `.hforge/library/skills/cloud-architect/` when the task is about deployment topology, distributed systems, reliability, observability, or cloud trade-offs across services
59
+ - prefer `.hforge/library/skills/engineering-assistant/` when the task needs architecture plus implementation orchestration, option framing, or explicit project-memory and change-discipline guidance in one surface
60
+ - use `.hforge/library/manifests/catalog/framework-assets.json` and `.hforge/runtime/repo/recommendations.json` when framework or bundle matching is more reliable than guessing from file extensions
25
61
 
26
62
  ## Imported skill governance
27
63
 
28
- - treat `manifests/catalog/engineering-assistant-import-inventory.json` as the
29
- review ledger for the single-skill engineering-assistant port
30
- - keep maintainer-facing provenance for that port in
31
- `docs/authoring/engineering-assistant-port.md`
32
- - treat `manifests/catalog/enhanced-skill-import-inventory.json` as the review
33
- ledger for embedded skill packs and use it before changing imported skill
34
- surfaces
35
- - treat `.agents/skills/` as the discovery layer and `.hforge/library/skills/`
36
- as the canonical installed execution layer
37
- - keep maintainer-facing provenance in
38
- `docs/authoring/enhanced-skill-import.md`
39
- - use `RESEARCH-SOURCES.md` and `VALIDATION.md` only as additional provenance,
40
- not as replacements for the canonical skill surfaces
41
- - prefer the project-owned canonical `skills/` surfaces over any raw imported
42
- archive layout
64
+ - treat `.hforge/library/manifests/catalog/engineering-assistant-import-inventory.json` as the review ledger for the single-skill engineering-assistant port
65
+ - keep maintainer-facing provenance for that port in `.hforge/library/docs/authoring/engineering-assistant-port.md`
66
+ - treat `.hforge/library/manifests/catalog/enhanced-skill-import-inventory.json` as the review ledger for embedded skill packs and use it before changing imported skill surfaces
67
+ - treat `.agents/skills/` as the discovery layer and `.hforge/library/skills/` as the canonical installed execution layer
68
+ - keep maintainer-facing provenance in `.hforge/library/docs/authoring/enhanced-skill-import.md`
69
+ - use `RESEARCH-SOURCES.md` and `VALIDATION.md` only as additional provenance, not as replacements for the canonical installed skill surfaces
70
+ - prefer the project-owned canonical `.hforge/library/skills/` surfaces over any raw imported archive layout
71
+
72
+ ## Target support posture
73
+
74
+ - treat Codex and Claude Code as first-class targets
75
+ - treat Cursor and OpenCode as partial targets unless the capability matrix says otherwise
76
+ - prefer `hforge target inspect <target> --json` or `.hforge/library/manifests/catalog/harness-capability-matrix.json` before claiming a target supports a runtime-native behavior
77
+ - do not imply hook-native, workflow-native, or recursive-native parity where support is only translated, bridged, or documentation-driven
78
+ - use `.codex/` and `.claude/` as target-facing bridges, not as replacements for the shared `.hforge/` runtime
43
79
 
44
80
  ## Runtime notes
45
81
 
46
82
  - Claude Code installs map target runtime files into `.claude/`
47
83
  - Codex installs map target runtime files into `.codex/`
48
- - installed workspaces compile the shared intelligence runtime into
49
- `.hforge/runtime/`
50
- - both targets still use `.agents/skills/`, `.specify/`, and the package validation surfaces
51
-
52
- ## Repo intelligence
53
-
54
- - use `node dist/cli/index.js recommend <repo>` when the right pack, profile,
55
- or skill is not obvious from file extensions alone
56
- - use `node dist/cli/index.js commands --json` or
57
- `.hforge/generated/agent-command-catalog.json` to discover the shipped CLI
58
- commands and npm scripts before inventing your own execution path
59
- - use `.hforge/agent-manifest.json` when a custom agent needs one stable
60
- machine-readable file describing bridge files, canonical roots, local
61
- launchers, and safe command discovery
62
- - use `.hforge/library/` as the canonical installed AI layer and avoid treating
63
- root-visible bridge files as the full source of truth
64
- - use `.hforge/runtime/index.json` and `.hforge/runtime/README.md` to inspect
65
- the installed shared runtime and its target discovery bridges before treating
66
- target-specific files as authoritative in isolation
67
- - use `node dist/cli/index.js bootstrap --root . --yes` when the repository
68
- needs target autodiscovery and one-pass Harness Forge setup
69
- - treat framework matches and validation gaps as first-class signals, not just
70
- bundle decoration
71
- - prefer recommendation evidence over guessing from a single config file
84
+ - installed workspaces compile the shared intelligence runtime into `.hforge/runtime/`
85
+ - target-facing files such as `AGENTS.md`, `.agents/skills/`, `.codex/`, and `.claude/` are thin bridges back to the hidden canonical AI layer rather than separate knowledge systems
86
+ - recursive runtime state, when present, lives under `.hforge/runtime/recursive/sessions/` and should be treated as hidden operational state rather than product code
87
+
88
+ ## Command discovery and execution
89
+
90
+ - for first use in a repo, prefer `npx @harness-forge/cli`
91
+ - prefer `hforge commands --json` or `.hforge/generated/agent-command-catalog.json` to discover shipped CLI commands and npm scripts before inventing a command path
92
+ - prefer `hforge status --root . --json` to inspect the installed workspace state
93
+ - prefer `hforge catalog --json` to review installed bundles, packs, and profiles
94
+ - prefer `hforge bootstrap --root . --yes` when the repository needs target autodiscovery and one-pass Harness Forge setup
95
+ - prefer `hforge task list --root . --json`, `hforge task inspect <taskId> --root . --json`, and `hforge pack inspect <taskId> --root . --json` when task-runtime artifacts are relevant
96
+ - prefer `hforge flow status --root . --json` when flow recovery state matters
97
+ - prefer `hforge review --root . --json`, `hforge export --root . --json`, `hforge doctor --root . --json`, and `hforge audit --root . --json` for runtime health and handoff checks
98
+ - when bare `hforge` is unavailable, use the workspace-local launcher under `.hforge/generated/bin/` instead of reaching for package-source entrypoints such as `node dist/cli/index.js`
99
+ - `hforge shell setup --yes` is the preferred way to make bare `hforge` available without forcing a global npm mutation
100
+ - `npm install -g @harness-forge/cli` is optional convenience, not the default requirement
101
+ - use `.hforge/runtime/repo/repo-map.json`, `.hforge/runtime/repo/instruction-plan.json`, `.hforge/runtime/repo/recommendations.json`, and `.hforge/runtime/findings/risk-signals.json` as the extracted runtime intelligence surfaces
102
+ - treat framework matches, recommendation evidence, and validation gaps as first-class signals, not as optional decoration
103
+
104
+ ## Trust and scope rules
105
+
106
+ - do not treat `.hforge/` runtime state, task state, recursive state, or generated manifests as product application code unless the task is explicitly about Harness Forge itself
107
+ - prefer the machine-readable command catalog and capability matrix over guessing or prose-only interpretation
108
+ - treat stale or missing runtime artifacts as signals to run `status`, `refresh`, `doctor`, or `audit` rather than inventing a recovery path
109
+ - keep support claims honest: if a target or surface is partial, translated, or non-authoritative, say so explicitly
72
110
 
73
111
  ## Release gate
74
112
 
75
- Run `npm run validate:release` before publish or handoff.
113
+ - run `npm run validate:release` before publish, handoff, or release-signoff work
@@ -0,0 +1,10 @@
1
+ export interface GlobalCliInstallResult {
2
+ attempted: boolean;
3
+ succeeded: boolean;
4
+ command: string;
5
+ stdout: string;
6
+ stderr: string;
7
+ status: number | null;
8
+ }
9
+ export declare function installHarnessForgeGlobally(packageName?: string, platform?: NodeJS.Platform, env?: NodeJS.ProcessEnv): GlobalCliInstallResult;
10
+ //# sourceMappingURL=global-cli-install.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-cli-install.d.ts","sourceRoot":"","sources":["../../../src/application/install/global-cli-install.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAMD,wBAAgB,2BAA2B,CACzC,WAAW,SAAuB,EAClC,QAAQ,GAAE,MAAM,CAAC,QAA2B,EAC5C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,sBAAsB,CAiBxB"}
@@ -0,0 +1,22 @@
1
+ import { spawnSync } from "node:child_process";
2
+ function resolveNpmCommand(platform) {
3
+ return platform === "win32" ? "npm.cmd" : "npm";
4
+ }
5
+ export function installHarnessForgeGlobally(packageName = "@harness-forge/cli", platform = process.platform, env = process.env) {
6
+ const npmCommand = resolveNpmCommand(platform);
7
+ const args = ["install", "-g", packageName];
8
+ const result = spawnSync(npmCommand, args, {
9
+ encoding: "utf8",
10
+ stdio: "pipe",
11
+ env
12
+ });
13
+ return {
14
+ attempted: true,
15
+ succeeded: (result.status ?? 1) === 0,
16
+ command: `${npmCommand} ${args.join(" ")}`,
17
+ stdout: result.stdout ?? "",
18
+ stderr: result.stderr ?? "",
19
+ status: result.status
20
+ };
21
+ }
22
+ //# sourceMappingURL=global-cli-install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-cli-install.js","sourceRoot":"","sources":["../../../src/application/install/global-cli-install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAW/C,SAAS,iBAAiB,CAAC,QAAyB;IAClD,OAAO,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,WAAW,GAAG,oBAAoB,EAClC,WAA4B,OAAO,CAAC,QAAQ,EAC5C,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE;QACzC,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,MAAM;QACb,GAAG;KACJ,CAAC,CAAC;IAEH,OAAO;QACL,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC;QACrC,OAAO,EAAE,GAAG,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QAC1C,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;QAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;QAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"plan-install.d.ts","sourceRoot":"","sources":["../../../src/application/install/plan-install.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EACV,WAAW,EACX,gBAAgB,EAGjB,MAAM,yCAAyC,CAAC;AAyBjD,UAAU,wBAAwB;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAkFD,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,gBAAgB,EAC3B,OAAO,EAAE,cAAc,EAAE,EACzB,QAAQ,EAAE,eAAe,EAAE,EAC3B,MAAM,EAAE,aAAa,EACrB,OAAO,GAAE,wBAA6B,GACrC,WAAW,CAyDb"}
1
+ {"version":3,"file":"plan-install.d.ts","sourceRoot":"","sources":["../../../src/application/install/plan-install.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EACV,WAAW,EACX,gBAAgB,EAGjB,MAAM,yCAAyC,CAAC;AAyBjD,UAAU,wBAAwB;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAwGD,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,gBAAgB,EAC3B,OAAO,EAAE,cAAc,EAAE,EACzB,QAAQ,EAAE,eAAe,EAAE,EAC3B,MAAM,EAAE,aAAa,EACrB,OAAO,GAAE,wBAA6B,GACrC,WAAW,CAyDb"}
@@ -46,8 +46,8 @@ function createVisibilityPolicy(workspaceRoot, target) {
46
46
  visibleBridgePaths
47
47
  };
48
48
  }
49
- function createOperation(contentRoot, workspaceRoot, target, bundle, assetPath) {
50
- const destinationHint = target.pathMappings[assetPath] ?? mapCanonicalAssetPath(assetPath);
49
+ function createOperation(contentRoot, workspaceRoot, target, bundle, assetPath, destinationHint) {
50
+ const resolvedDestination = destinationHint ?? target.pathMappings[assetPath] ?? mapCanonicalAssetPath(assetPath);
51
51
  const mergeStrategy = target.mergeRules[assetPath] ?? "copy";
52
52
  return {
53
53
  type: mergeStrategy === "append-once"
@@ -61,13 +61,23 @@ function createOperation(contentRoot, workspaceRoot, target, bundle, assetPath)
61
61
  : "copy",
62
62
  bundleId: bundle.id,
63
63
  sourcePath: path.join(contentRoot, assetPath),
64
- destinationPath: normalizeTargetPath(workspaceRoot, destinationHint),
64
+ destinationPath: normalizeTargetPath(workspaceRoot, resolvedDestination),
65
65
  mergeStrategy,
66
66
  reason: `${bundle.id}:${assetPath}`,
67
67
  riskLevel: "low",
68
68
  backupRequired: true
69
69
  };
70
70
  }
71
+ function createOperationsForAsset(contentRoot, workspaceRoot, target, bundle, assetPath) {
72
+ const primaryDestination = target.pathMappings[assetPath] ?? mapCanonicalAssetPath(assetPath);
73
+ const operations = [createOperation(contentRoot, workspaceRoot, target, bundle, assetPath, primaryDestination)];
74
+ if (assetPath === "AGENTS.md" &&
75
+ primaryDestination !== "AGENTS.md" &&
76
+ target.sharedRuntimeBridge?.visibleBridgePaths?.includes("AGENTS.md")) {
77
+ operations.push(createOperation(contentRoot, workspaceRoot, target, bundle, assetPath, "AGENTS.md"));
78
+ }
79
+ return operations;
80
+ }
71
81
  export function createInstallPlan(root, selection, bundles, profiles, target, options = {}) {
72
82
  const contentRoot = root;
73
83
  const workspaceRoot = options.workspaceRoot ?? selection.rootPath ?? root;
@@ -87,7 +97,7 @@ export function createInstallPlan(root, selection, bundles, profiles, target, op
87
97
  resolved.warnings.push(`${bundle.id} does not target ${selection.targetId} and was skipped.`);
88
98
  return [];
89
99
  }
90
- return bundle.paths.map((assetPath) => createOperation(contentRoot, workspaceRoot, target, bundle, assetPath));
100
+ return bundle.paths.flatMap((assetPath) => createOperationsForAsset(contentRoot, workspaceRoot, target, bundle, assetPath));
91
101
  });
92
102
  const visibilityPolicy = createVisibilityPolicy(workspaceRoot, target);
93
103
  const sharedRuntime = createSharedRuntimePlan(workspaceRoot, selection.targetId, target);
@@ -1 +1 @@
1
- {"version":3,"file":"plan-install.js","sourceRoot":"","sources":["../../../src/application/install/plan-install.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,IAAI,MAAM,WAAW,CAAC;AAU7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,0DAA0D,CAAC;AAC/F,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,+BAA+B,GAChC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAM9D,MAAM,8BAA8B,GAAG;IACrC,EAAE,MAAM,EAAE,qBAAqB,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,EAAE;IAC9F,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,EAAE;IACtF,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;IACxD,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE;IACtD,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,wBAAwB,EAAE;IACpE,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;IACxD,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,uBAAuB,EAAE;IAC5D,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,uBAAuB,EAAE;IAC5D,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,EAAE;IACpD,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE;IACtD,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,wBAAwB,EAAE;IAC9D,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE;IAClD,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,uBAAuB,EAAE;IAC5D,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,sBAAsB,EAAE;IAC1D,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,sBAAsB,EAAE;IAC1D,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,sBAAsB,EAAE;CAClD,CAAC;AAEX,SAAS,qBAAqB,CAAC,SAAiB;IAC9C,KAAK,MAAM,OAAO,IAAI,8BAA8B,EAAE,CAAC;QACrD,IAAI,SAAS,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;YACjC,OAAO,OAAO,CAAC,WAAW,CAAC;QAC7B,CAAC;QAED,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,sBAAsB,CAAC,aAAqB,EAAE,MAAqB;IAC1E,MAAM,MAAM,GAAG,MAAM,CAAC,mBAAmB,CAAC;IAC1C,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,qBAAqB,IAAI,CAAC,GAAG,+BAA+B,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACnH,mBAAmB,CAAC,aAAa,EAAE,OAAO,CAAC,CAC5C,CAAC;IACF,MAAM,kBAAkB,GAAG;QACzB,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,kBAAkB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,mBAAmB,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC;KAC5H,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,mBAAmB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;IAEhE,OAAO;QACL,IAAI,EAAE,MAAM,EAAE,cAAc,IAAI,qBAAqB;QACrD,WAAW,EAAE,mBAAmB,CAAC,aAAa,EAAE,iBAAiB,CAAC;QAClE,oBAAoB;QACpB,kBAAkB;KACnB,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,WAAmB,EACnB,aAAqB,EACrB,MAAqB,EACrB,MAAsB,EACtB,SAAiB;IAEjB,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC3F,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC;IAC7D,OAAO;QACL,IAAI,EACF,aAAa,KAAK,aAAa;YAC7B,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,aAAa,KAAK,QAAQ;gBAC1B,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,aAAa,KAAK,MAAM;oBACxB,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC;wBACjC,CAAC,CAAC,OAAO;wBACT,CAAC,CAAC,MAAM;QAClB,QAAQ,EAAE,MAAM,CAAC,EAAE;QACnB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC;QAC7C,eAAe,EAAE,mBAAmB,CAAC,aAAa,EAAE,eAAe,CAAC;QACpE,aAAa;QACb,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,SAAS,EAAE;QACnC,SAAS,EAAE,KAAK;QAChB,cAAc,EAAE,IAAI;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,IAAY,EACZ,SAA2B,EAC3B,OAAyB,EACzB,QAA2B,EAC3B,MAAqB,EACrB,UAAoC,EAAE;IAEtC,MAAM,WAAW,GAAG,IAAI,CAAC;IACzB,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC;IAE1E,MAAM,kBAAkB,GAAG;QACzB,GAAG,SAAS,CAAC,SAAS;QACtB,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;QAClD,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC;QACxD,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC;KAC3D,CAAC;IAEF,MAAM,mBAAmB,GAAG,kBAAkB,SAAS,CAAC,QAAQ,EAAE,CAAC;IACnE,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACrH,kBAAkB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;IAC5F,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QACtD,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9E,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,EAAE,oBAAoB,SAAS,CAAC,QAAQ,mBAAmB,CAAC,CAAC;YAC9F,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IACjH,CAAC,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACvE,MAAM,aAAa,GAAG,uBAAuB,CAAC,aAAa,EAAE,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzF,MAAM,IAAI,GAAG,MAAM;SAChB,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CACL,IAAI,CAAC,SAAS,CAAC;QACb,SAAS,EAAE,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE;QACpD,UAAU;QACV,gBAAgB;QAChB,aAAa;KACd,CAAC,CACH;SACA,MAAM,CAAC,KAAK,CAAC,CAAC;IAEjB,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE;QAC3B,SAAS,EAAE,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE;QACpD,UAAU;QACV,gBAAgB;QAChB,aAAa;QACb,QAAQ,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACzC,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,kBAAkB,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC;QACxG,IAAI;QACJ,iBAAiB,EAAE;YACjB,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,mBAAmB;YAC9C,GAAG,UAAU,CAAC,MAAM,qBAAqB;YACzC,iBAAiB,WAAW,EAAE;YAC9B,mBAAmB,aAAa,EAAE;YAClC,eAAe,gBAAgB,CAAC,IAAI,EAAE;YACtC,mBAAmB,aAAa,CAAC,OAAO,EAAE;SAC3C;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"plan-install.js","sourceRoot":"","sources":["../../../src/application/install/plan-install.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"onboarding-flow.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/onboarding-flow.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAO3D,wBAAsB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAsG3F"}
1
+ {"version":3,"file":"onboarding-flow.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/onboarding-flow.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAO3D,wBAAsB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA0I3F"}
@@ -1,4 +1,6 @@
1
1
  import path from "node:path";
2
+ import { installHarnessForgeGlobally } from "../../application/install/global-cli-install.js";
3
+ import { getShellIntegrationStatus } from "../../application/install/shell-integration.js";
2
4
  import { createRecoveryNotice } from "./recovery-notices.js";
3
5
  import { applySetupIntent, buildReviewPlan } from "./review-plan.js";
4
6
  import { createPromptSession } from "./prompt-io.js";
@@ -70,6 +72,34 @@ export async function runInteractiveOnboarding(startRoot) {
70
72
  applyChanges: !dryRun,
71
73
  source: "interactive"
72
74
  });
75
+ if (summary.status === "success" && !dryRun) {
76
+ const shellStatus = await getShellIntegrationStatus();
77
+ if (!shellStatus.bareHforgeResolvable) {
78
+ const globalInstallAction = await promptSession.askChoice("globalInstallAction", "Harness Forge is not available as a global command yet. Install the published package globally with npm now?", [
79
+ {
80
+ value: "skip",
81
+ label: "Skip (Recommended)",
82
+ description: "Keep using the workspace launcher or run shell setup later."
83
+ },
84
+ {
85
+ value: "install-global",
86
+ label: "Install globally",
87
+ description: "Run npm install -g @harness-forge/cli now."
88
+ }
89
+ ], "skip");
90
+ if (globalInstallAction === "install-global") {
91
+ const installResult = installHarnessForgeGlobally();
92
+ if (installResult.succeeded) {
93
+ summary.operatorMessage = `${summary.operatorMessage} Global npm install completed.`;
94
+ summary.nextSuggestedCommands = summary.nextSuggestedCommands.filter((command) => command !== "npm install -g @harness-forge/cli");
95
+ summary.nextSuggestedCommands.unshift("hforge --help");
96
+ }
97
+ else {
98
+ summary.operatorMessage = `${summary.operatorMessage} Global npm install failed; keep using the workspace launcher or run shell setup.`;
99
+ }
100
+ }
101
+ }
102
+ }
73
103
  completed = true;
74
104
  }
75
105
  if (!summary) {
@@ -1 +1 @@
1
- {"version":3,"file":"onboarding-flow.js","sourceRoot":"","sources":["../../../src/cli/interactive/onboarding-flow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onboarding-flow.js","sourceRoot":"","sources":["../../../src/cli/interactive/onboarding-flow.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ type PromptChoiceInput = string | PromptChoiceOption;
12
12
  export interface PromptSession {
13
13
  script: PromptScript;
14
14
  capabilities: TerminalCapabilityProfile;
15
+ scripted: boolean;
15
16
  askText(stepId: string, prompt: string, fallback?: string): Promise<string>;
16
17
  askChoice(stepId: string, prompt: string, choices: readonly PromptChoiceInput[], fallback: string): Promise<string>;
17
18
  askMultiChoice(stepId: string, prompt: string, choices: readonly PromptChoiceInput[], fallback: string[]): Promise<string[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-io.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/prompt-io.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE5E,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,GAAG,IAAI,CAAC;AAEnE,UAAU,YAAY;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,KAAK,iBAAiB,GAAG,MAAM,GAAG,kBAAkB,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,EAAE,yBAAyB,CAAC;IACxC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5E,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACpH,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7H,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAClF;AAqED,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,yBAAyB,GAAG,aAAa,CA+E1F;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGxE"}
1
+ {"version":3,"file":"prompt-io.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/prompt-io.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE5E,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,GAAG,IAAI,CAAC;AAEnE,UAAU,YAAY;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,KAAK,iBAAiB,GAAG,MAAM,GAAG,kBAAkB,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,EAAE,yBAAyB,CAAC;IACxC,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5E,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACpH,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7H,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAClF;AAqED,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,yBAAyB,GAAG,aAAa,CA6F1F;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGxE"}
@@ -60,14 +60,19 @@ function normalizeChoice(value, choices, fallback) {
60
60
  }
61
61
  export function createPromptSession(capabilities) {
62
62
  const script = parsePromptScript();
63
+ const scripted = Object.keys(script).length > 0;
63
64
  return {
64
65
  script,
65
66
  capabilities,
67
+ scripted,
66
68
  async askText(stepId, prompt, fallback = "") {
67
69
  const scripted = script[stepId];
68
70
  if (typeof scripted === "string") {
69
71
  return scripted;
70
72
  }
73
+ if (scripted && fallback) {
74
+ return fallback;
75
+ }
71
76
  if (!capabilities.supportsInteractiveInput) {
72
77
  if (fallback) {
73
78
  return fallback;
@@ -83,6 +88,9 @@ export function createPromptSession(capabilities) {
83
88
  if (typeof scripted === "string") {
84
89
  return normalizeChoice(scripted, normalizedChoices, fallback);
85
90
  }
91
+ if (scripted && fallback) {
92
+ return fallback;
93
+ }
86
94
  if (!capabilities.supportsInteractiveInput) {
87
95
  return fallback;
88
96
  }
@@ -106,6 +114,9 @@ export function createPromptSession(capabilities) {
106
114
  .filter((item) => normalizedChoices.some((choice) => choice.value === item));
107
115
  return values.length > 0 ? [...new Set(values)] : fallback;
108
116
  }
117
+ if (scripted) {
118
+ return fallback;
119
+ }
109
120
  if (!capabilities.supportsInteractiveInput) {
110
121
  return fallback;
111
122
  }
@@ -126,6 +137,9 @@ export function createPromptSession(capabilities) {
126
137
  if (typeof scripted === "string") {
127
138
  return ["1", "true", "yes", "y", "confirm"].includes(scripted.toLowerCase());
128
139
  }
140
+ if (scripted) {
141
+ return fallback;
142
+ }
129
143
  if (!capabilities.supportsInteractiveInput) {
130
144
  return fallback;
131
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-io.js","sourceRoot":"","sources":["../../../src/cli/interactive/prompt-io.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-io.js","sourceRoot":"","sources":["../../../src/cli/interactive/prompt-io.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AA2BxD,SAAS,oBAAoB,CAAC,KAAwB,EAAE,QAAgB;IACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,iBAAiB;IACxB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;IAClD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAiB,CAAC;QAC/C,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,MAAc;IAC1C,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAClD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAyB;IACtD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAc,EAAE,OAA6B,EAAE,KAAK,GAAG,KAAK;IACpF,MAAM,KAAK,GAAG;QACZ,MAAM;QACN,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,OAAO,KAAK,KAAK,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC;QACpD,CAAC,CAAC;QACF,KAAK,CAAC,CAAC,CAAC,gDAAgD,CAAC,CAAC,CAAC,iBAAiB;KAC7E,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,OAA6B,EAAE,QAAgB;IACrF,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CACxB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE;QAClD,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CACrD,CAAC;IACF,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,KAAK,CAAC,KAAK,CAAC;IACrB,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAChD,IAAI,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,YAAY,IAAI,CAAC,IAAI,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1F,OAAO,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC,EAAE,KAAK,IAAI,QAAQ,CAAC;IACtD,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,YAAuC;IACzE,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAEhD,OAAO;QACL,MAAM;QACN,YAAY;QACZ,QAAQ;QACR,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,EAAE;YACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBACzB,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,CAAC;gBAC3C,IAAI,QAAQ,EAAE,CAAC;oBACb,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBACD,MAAM,IAAI,eAAe,CAAC,kCAAkC,MAAM,4DAA4D,CAAC,CAAC;YAClI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;YAC5C,OAAO,MAAM,IAAI,QAAQ,CAAC;QAC5B,CAAC;QACD,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;YAC/C,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YAC7D,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,OAAO,eAAe,CAAC,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,CAAC,CAAC;YAChE,CAAC;YACD,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBACzB,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,CAAC;gBAC3C,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;YACjF,OAAO,eAAe,CAAC,MAAM,EAAE,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAC9D,CAAC;QACD,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;YACpD,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YAC7D,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,QAAQ;qBACtB,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC;qBAC1D,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;qBAC7D,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC;gBAC/E,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACjE,CAAC;YACD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,QAAQ;qBACpB,KAAK,CAAC,GAAG,CAAC;qBACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,iBAAiB,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;qBAC3E,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC;gBAC/E,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC7D,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,CAAC;gBAC3C,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC,CAAC;YACvF,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,OAAO,MAAM;iBACV,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,iBAAiB,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;iBAC3E,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC;QACjF,CAAC;QACD,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,KAAK;YAC/C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,OAAO,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAClC,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,CAAC;gBAC3C,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;YAC/E,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAClE,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,QAAgB;IAC9D,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACnC,OAAO,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACpE,CAAC"}
@@ -33,7 +33,7 @@ export function detectTerminalCapabilities(options = {}) {
33
33
  const forcedTty = parseForcedTty(env.HFORGE_FORCE_TTY);
34
34
  const stdinIsTTY = forcedTty ?? options.stdinIsTTY ?? process.stdin.isTTY ?? false;
35
35
  const stdoutIsTTY = forcedTty ?? options.stdoutIsTTY ?? process.stdout.isTTY ?? false;
36
- const supportsInteractiveInput = stdinIsTTY && stdoutIsTTY && env.CI !== "true";
36
+ const supportsInteractiveInput = stdinIsTTY && stdoutIsTTY && (env.CI !== "true" || forcedTty === true);
37
37
  const terminalWidth = Number.parseInt(env.HFORGE_TERM_WIDTH ?? `${options.columns ?? process.stdout.columns ?? 80}`, 10);
38
38
  const colorLevel = detectColorLevel(env, stdoutIsTTY);
39
39
  const platform = options.platform ?? process.platform;
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-capabilities.js","sourceRoot":"","sources":["../../../src/cli/interactive/terminal-capabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-capabilities.js","sourceRoot":"","sources":["../../../src/cli/interactive/terminal-capabilities.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "generatedAt": "2026-03-27T22:06:46.163Z",
2
+ "generatedAt": "2026-03-28T16:55:31.339Z",
3
3
  "entries": [
4
4
  {
5
5
  "subjectType": "language",
@@ -62,7 +62,8 @@
62
62
  "capabilitySupportRef": "manifests/catalog/harness-capability-matrix.json",
63
63
  "supportLevel": "full",
64
64
  "supportNotes": [
65
- "Claude Code is a first-class target for packaged skills, hooks, repo intelligence, maintenance commands, and flow recovery."
65
+ "Claude Code is a first-class target for packaged skills, hooks, repo intelligence, maintenance commands, and flow recovery.",
66
+ "Claude installs keep both CLAUDE.md and AGENTS.md available so Claude-native and cross-agent entrypoints stay discoverable."
66
67
  ]
67
68
  },
68
69
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@harness-forge/cli",
3
- "version": "1.0.1",
3
+ "version": "1.1.1",
4
4
  "description": "Harness Forge: modular agentic AI workspace installer, catalog, and workflow runtime.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -27,6 +27,7 @@
27
27
  },
28
28
  "sharedRuntimeBridge": {
29
29
  "instructionSurfaces": [
30
+ "AGENTS.md",
30
31
  "CLAUDE.md",
31
32
  ".agents/skills",
32
33
  ".claude/settings.json"
@@ -45,6 +46,7 @@
45
46
  ".hforge/runtime"
46
47
  ],
47
48
  "visibleBridgePaths": [
49
+ "AGENTS.md",
48
50
  "CLAUDE.md",
49
51
  ".agents/skills",
50
52
  ".specify",