colana 1.0.0-beta.73 → 1.0.0-beta.75

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "colana",
3
- "version": "1.0.0-beta.73",
3
+ "version": "1.0.0-beta.75",
4
4
  "description": "Agent-First. Multiplied. Multi-agent command center for AI coding agents.",
5
5
  "type": "module",
6
6
  "main": "server/index.js",
package/public/app.js CHANGED
@@ -826,6 +826,14 @@ let _personalAgentAutoStartTimer = null;
826
826
  async function launchPersonalAgent() {
827
827
  // Guard: don't launch if a personal agent session is already running
828
828
  if (state.personalAgent.sessionId) return;
829
+ // Guard: no API key configured — open the panel in setup mode so the user
830
+ // can enter a key inline, instead of spawning and hitting a preflight error.
831
+ // Subscription auth (Claude login, Gemini OAuth) doesn't carry over to the
832
+ // personal agent — it needs an actual API key.
833
+ if (state.personalAgent.installed && !state.personalAgent.chatEnabled) {
834
+ openPersonalPanel();
835
+ return;
836
+ }
829
837
  // Guard: don't launch if another launch call is already in-flight
830
838
  if (_personalAgentLaunching) return;
831
839
  _personalAgentLaunching = true;
@@ -869,6 +877,12 @@ async function launchPersonalAgent() {
869
877
  task: 'Personal Assistant',
870
878
  mode: 'pty',
871
879
  }, { repair: err.code === 'BROKEN_INSTALL' });
880
+ } else if (err.code === 'GATEWAY_AUTH_MISSING') {
881
+ showToast(err.message || 'The Personal Agent needs an API key. Open Settings to add one.', 'warning', 8000);
882
+ openSettingsModal().then(() => {
883
+ const el = document.getElementById('settings-openclaw-model');
884
+ if (el) el.scrollIntoView({ behavior: 'smooth', block: 'center' });
885
+ });
872
886
  } else {
873
887
  showToast('Failed to start personal agent: ' + (err.message || err), 'error');
874
888
  }
@@ -226,8 +226,8 @@ function checkOpenClawConfig() {
226
226
  ok: false,
227
227
  code: 'GATEWAY_AUTH_MISSING',
228
228
  httpStatus: 400,
229
- message: 'No API key configured for the Personal Agent.',
230
- fix: 'Add a key in Settings > Personal AI Agents.',
229
+ message: 'The Personal Agent needs an API key to call AI models. Subscription auth (Claude, Gemini) doesn\'t carry over — add an Anthropic or OpenAI API key in Settings.',
230
+ fix: 'Open Settings > Personal AI Agents and enter an API key.',
231
231
  };
232
232
  }
233
233