acdev 1.0.4 → 1.0.5
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/bin/acdev.js +5 -10
- package/package.json +1 -1
- package/src/claude-auth.js +7 -13
- package/src/gh-auth.js +11 -10
package/bin/acdev.js
CHANGED
|
@@ -58,23 +58,18 @@ async function main() {
|
|
|
58
58
|
migrateLegacyWorktreesDir(repoRoot);
|
|
59
59
|
loadEnv(repoRoot);
|
|
60
60
|
|
|
61
|
-
// Soft auth:
|
|
62
|
-
//
|
|
61
|
+
// Soft auth: never exit for missing GitHub/Claude credentials.
|
|
62
|
+
// Always start the server so Settings can add tokens; job endpoints
|
|
63
|
+
// reject with a clear 4xx until auth is configured.
|
|
63
64
|
const ghAuth = checkGhAuth();
|
|
64
65
|
if (!ghAuth.ok) {
|
|
65
|
-
console.warn(formatGhAuthError(ghAuth)
|
|
66
|
-
console.warn(
|
|
67
|
-
'⚠ Continuing without GitHub auth — configure in Settings → Authentication, then enqueue jobs.'
|
|
68
|
-
);
|
|
66
|
+
console.warn(formatGhAuthError(ghAuth));
|
|
69
67
|
}
|
|
70
68
|
|
|
71
69
|
if (!opts.stubAgent) {
|
|
72
70
|
const claudeAuth = checkClaudeAuth();
|
|
73
71
|
if (!claudeAuth.ok) {
|
|
74
|
-
console.warn(formatClaudeAuthError(claudeAuth)
|
|
75
|
-
console.warn(
|
|
76
|
-
'⚠ Continuing without Claude auth — configure in Settings → Authentication (or pass --stub-agent).'
|
|
77
|
-
);
|
|
72
|
+
console.warn(formatClaudeAuthError(claudeAuth));
|
|
78
73
|
}
|
|
79
74
|
} else {
|
|
80
75
|
console.log('✓ Stub agent enabled (Claude auth not required)');
|
package/package.json
CHANGED
package/src/claude-auth.js
CHANGED
|
@@ -90,22 +90,16 @@ export function publicClaudeAuthMethod(result) {
|
|
|
90
90
|
}
|
|
91
91
|
|
|
92
92
|
/**
|
|
93
|
-
* Human-readable startup
|
|
93
|
+
* Human-readable startup warning for a failed {@link checkClaudeAuth}.
|
|
94
|
+
* Soft-auth: this is not fatal — the server still starts so Settings can configure auth.
|
|
94
95
|
* @param {ClaudeAuthResult} [_result]
|
|
95
96
|
*/
|
|
96
97
|
export function formatClaudeAuthError(_result) {
|
|
97
98
|
return [
|
|
98
|
-
'
|
|
99
|
-
'',
|
|
100
|
-
'
|
|
101
|
-
'
|
|
102
|
-
'
|
|
103
|
-
' needs the CLI on this machine.',
|
|
104
|
-
' 2. Subscription token: `claude setup-token`, then set CLAUDE_CODE_OAUTH_TOKEN',
|
|
105
|
-
' in Settings → Claude authentication or `.acdev/.env`',
|
|
106
|
-
' 3. Anthropic API key (API billing): set ANTHROPIC_API_KEY in Settings or `.acdev/.env`',
|
|
107
|
-
'',
|
|
108
|
-
'API keys take precedence over subscription login. For UI-only testing without',
|
|
109
|
-
'auth: pass `--stub-agent`.',
|
|
99
|
+
'⚠ Claude is not authenticated — server will still start.',
|
|
100
|
+
' Open Settings → Authentication to add an API key or OAuth token',
|
|
101
|
+
' (or set ANTHROPIC_API_KEY / CLAUDE_CODE_OAUTH_TOKEN in `.acdev/.env`).',
|
|
102
|
+
' Browser login still needs `claude auth login` on this machine.',
|
|
103
|
+
' For UI-only testing without auth: pass `--stub-agent`.',
|
|
110
104
|
].join('\n');
|
|
111
105
|
}
|
package/src/gh-auth.js
CHANGED
|
@@ -138,21 +138,22 @@ export function checkGhAuth() {
|
|
|
138
138
|
}
|
|
139
139
|
|
|
140
140
|
/**
|
|
141
|
-
* Human-readable startup
|
|
141
|
+
* Human-readable startup warning for a failed {@link checkGhAuth}.
|
|
142
|
+
* Soft-auth: this is not fatal — the server still starts so Settings can configure auth.
|
|
142
143
|
* @param {GhAuthResult} result
|
|
143
144
|
*/
|
|
144
145
|
export function formatGhAuthError(result) {
|
|
145
146
|
if (result.reason === 'not-found') {
|
|
146
|
-
return
|
|
147
|
+
return [
|
|
148
|
+
'⚠ GitHub CLI (gh) not found in PATH — server will still start.',
|
|
149
|
+
' Install it from https://cli.github.com/, then open Settings → Authentication',
|
|
150
|
+
' (or set GH_TOKEN in `.acdev/.env`) before enqueueing jobs.',
|
|
151
|
+
].join('\n');
|
|
147
152
|
}
|
|
148
153
|
return [
|
|
149
|
-
'
|
|
150
|
-
'',
|
|
151
|
-
'
|
|
152
|
-
'
|
|
153
|
-
' 2. Personal access token: Settings → GitHub / PR auth, or set GH_TOKEN in `.acdev/.env`',
|
|
154
|
-
' 3. Non-interactive CLI: echo YOUR_PAT | gh auth login --with-token -h github.com',
|
|
155
|
-
'',
|
|
156
|
-
'SSH remotes can push/fetch git, but do not authenticate gh for issues or PRs.',
|
|
154
|
+
'⚠ GitHub is not authenticated — server will still start.',
|
|
155
|
+
' Open Settings → Authentication to paste a PAT, or set GH_TOKEN in `.acdev/.env`.',
|
|
156
|
+
' Or run: gh auth login -h github.com',
|
|
157
|
+
' (SSH remotes push/fetch git but do not authenticate gh for issues/PRs.)',
|
|
157
158
|
].join('\n');
|
|
158
159
|
}
|