You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**`interactive: true` vs `stdin: true`** — these are distinct options:
262
+
263
+
-`interactive: true` — passes `-i` to the shell so it sources the user's RC file (`.zshrc`, `.bashrc`). Use this when the command needs PATH entries or shell aliases from the RC. It does **not** allow the user to type input.
264
+
-`stdin: true` — connects the user's terminal stdin directly to the spawned process. Use this when the command requires real user input (e.g. browser-based OAuth prompts, interactive wizards, password entry). Without this flag, interactive prompts will hang.
265
+
266
+
```typescript
267
+
// Command needs PATH from shell RC but no user input
**Never use `sudo` inside `$.spawn` or `$.spawnSafe`.** Use `{ requiresRoot: true }` in the options instead. The framework handles privilege escalation through the parent process.
Copy file name to clipboardExpand all lines: package.json
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
{
2
2
"name": "default",
3
-
"version": "1.11.0-beta.2",
3
+
"version": "1.11.0-beta.8",
4
4
"description": "Default plugin for Codify - provides 50+ declarative resources for managing development tools and system configuration across macOS and Linux",
title: 'Install GitHub CLI with SSH configuration',
5
-
description: 'Install gh and configure it to use SSH for git operations and vim as the default editor.',
4
+
title: 'Install GitHub CLI with interactive login',
5
+
description: 'Install gh and log in via browser — no token needed. Use interactiveLogin: true as a shortcut instead of a separate github-cli-auth block.',
6
6
configs: [
7
7
{
8
8
type: 'github-cli',
9
9
gitProtocol: 'ssh',
10
-
editor: 'vim',
10
+
interactiveLogin: true,
11
11
},
12
12
],
13
13
};
14
14
15
15
exportconstexampleGithubCliFull: ExampleConfig={
16
-
title: 'Full GitHub CLI setup with authentication',
17
-
description: 'Install gh, authenticate with a personal access token, and configure SSH as the default git protocol.',
16
+
title: 'GitHub CLI with token authentication',
17
+
description: 'Install gh, configure SSH as the default git protocol, and authenticate with a personal access token.',
Copy file name to clipboardExpand all lines: src/resources/github-cli/github-cli.ts
+10-1Lines changed: 10 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -36,13 +36,17 @@ export const schema = z
36
36
.string()
37
37
.optional()
38
38
.describe('Default web browser for opening URLs'),
39
+
interactiveLogin: z
40
+
.boolean()
41
+
.optional()
42
+
.describe('If true, runs gh auth login --web after installation for browser-based authentication. Use this as a shortcut instead of declaring a separate github-cli-auth block'),
0 commit comments