mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-10-09 08:59:40 +02:00
chore: bump version to 0.1644
This commit is contained in:
@@ -35,7 +35,7 @@ When user says "COM":
|
|||||||
1. Increment version in BOTH `package.json` AND `CLAUDE.md` (verify they match with `grep version package.json && grep Version CLAUDE.md`)
|
1. Increment version in BOTH `package.json` AND `CLAUDE.md` (verify they match with `grep version package.json && grep Version CLAUDE.md`)
|
||||||
2. Run: `git add -A && git commit -m "chore: bump version to X.XXXX" && git push && npm run build && systemctl --user restart claudeman-web`
|
2. Run: `git add -A && git commit -m "chore: bump version to X.XXXX" && git push && npm run build && systemctl --user restart claudeman-web`
|
||||||
|
|
||||||
**Version**: 0.1643 (must match `package.json`)
|
**Version**: 0.1644 (must match `package.json`)
|
||||||
|
|
||||||
## Project Overview
|
## Project Overview
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "claudeman",
|
"name": "claudeman",
|
||||||
"version": "0.1643",
|
"version": "0.1644",
|
||||||
"description": "The missing control plane for Claude Code - run 20 autonomous agents with real-time monitoring and session persistence",
|
"description": "The missing control plane for Claude Code - run 20 autonomous agents with real-time monitoring and session persistence",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
|
|||||||
+14
-5
@@ -11378,13 +11378,14 @@ class ClaudemanApp {
|
|||||||
this.saveAppSettingsToStorage(settings);
|
this.saveAppSettingsToStorage(settings);
|
||||||
this._updateLocalEchoState();
|
this._updateLocalEchoState();
|
||||||
|
|
||||||
// Save voice settings to localStorage (never sent to server)
|
// Save voice settings to localStorage + include in server payload for cross-device sync
|
||||||
VoiceInput._saveDeepgramConfig({
|
const voiceSettings = {
|
||||||
apiKey: document.getElementById('voiceDeepgramKey').value.trim(),
|
apiKey: document.getElementById('voiceDeepgramKey').value.trim(),
|
||||||
language: document.getElementById('voiceLanguage').value,
|
language: document.getElementById('voiceLanguage').value,
|
||||||
keyterms: document.getElementById('voiceKeyterms').value.trim(),
|
keyterms: document.getElementById('voiceKeyterms').value.trim(),
|
||||||
insertMode: document.getElementById('voiceInsertMode').value,
|
insertMode: document.getElementById('voiceInsertMode').value,
|
||||||
});
|
};
|
||||||
|
VoiceInput._saveDeepgramConfig(voiceSettings);
|
||||||
|
|
||||||
// Save notification preferences separately
|
// Save notification preferences separately
|
||||||
const notifPrefsToSave = {
|
const notifPrefsToSave = {
|
||||||
@@ -11470,7 +11471,7 @@ class ClaudemanApp {
|
|||||||
await fetch('/api/settings', {
|
await fetch('/api/settings', {
|
||||||
method: 'PUT',
|
method: 'PUT',
|
||||||
headers: { 'Content-Type': 'application/json' },
|
headers: { 'Content-Type': 'application/json' },
|
||||||
body: JSON.stringify({ ...serverSettings, notificationPreferences: notifPrefsToSave })
|
body: JSON.stringify({ ...serverSettings, notificationPreferences: notifPrefsToSave, voiceSettings })
|
||||||
});
|
});
|
||||||
|
|
||||||
// Save model configuration separately
|
// Save model configuration separately
|
||||||
@@ -11816,7 +11817,7 @@ class ClaudemanApp {
|
|||||||
const settings = settingsPromise ? await settingsPromise : await fetch('/api/settings').then(r => r.ok ? r.json() : null);
|
const settings = settingsPromise ? await settingsPromise : await fetch('/api/settings').then(r => r.ok ? r.json() : null);
|
||||||
if (settings) {
|
if (settings) {
|
||||||
// Extract notification prefs before merging app settings
|
// Extract notification prefs before merging app settings
|
||||||
const { notificationPreferences, ...appSettings } = settings;
|
const { notificationPreferences, voiceSettings, ...appSettings } = settings;
|
||||||
// Filter out display settings — these are device-specific (mobile vs desktop)
|
// Filter out display settings — these are device-specific (mobile vs desktop)
|
||||||
// and should not be synced from the server to avoid overriding mobile defaults.
|
// and should not be synced from the server to avoid overriding mobile defaults.
|
||||||
// NOTE: Feature toggles (subagentTrackingEnabled, imageWatcherEnabled, ralphTrackerEnabled)
|
// NOTE: Feature toggles (subagentTrackingEnabled, imageWatcherEnabled, ralphTrackerEnabled)
|
||||||
@@ -11853,6 +11854,14 @@ class ClaudemanApp {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Sync voice settings from server (seed localStorage if no local API key)
|
||||||
|
if (voiceSettings) {
|
||||||
|
const localVoice = localStorage.getItem('claudeman-voice-settings');
|
||||||
|
if (!localVoice || !JSON.parse(localVoice).apiKey) {
|
||||||
|
VoiceInput._saveDeepgramConfig(voiceSettings);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return merged;
|
return merged;
|
||||||
}
|
}
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
|||||||
Reference in New Issue
Block a user