claude-ws 0.1.9 → 0.1.10

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/README.md CHANGED
@@ -64,26 +64,30 @@ Local-first SQLite database. Real-time streaming. Plugin system for custom agent
64
64
 
65
65
  ## Quick Start
66
66
 
67
- ### Option 1: Run with npx (Recommended)
67
+ ### Option 1: Run with npx
68
68
 
69
69
  **Prerequisites:** Node.js 20+, pnpm 9+, [Claude Code CLI](https://docs.anthropic.com/en/docs/claude-code)
70
70
 
71
71
  ```bash
72
- npx claude-ws
72
+ npx -y claude-ws
73
73
  ```
74
74
 
75
+ The `-y` flag skips the "Ok to proceed?" prompt.
76
+
75
77
  The first run will:
76
78
  - Auto-create SQLite database in `~/.claude-ws/`
77
- - Run migrations automatically
79
+ - Install dependencies and build automatically
78
80
  - Start the server on http://localhost:8556
79
81
 
80
- ### Option 2: Install globally
82
+ ### Option 2: Install globally (Recommended)
81
83
 
82
84
  ```bash
83
85
  npm install -g claude-ws
84
86
  claude-ws
85
87
  ```
86
88
 
89
+ Global installation avoids npx prompts and rebuilding on every run.
90
+
87
91
  ### Option 3: Development from source
88
92
 
89
93
  ```bash
@@ -98,6 +102,25 @@ Open [http://localhost:8556](http://localhost:8556)
98
102
 
99
103
  ---
100
104
 
105
+ ## Updating
106
+
107
+ ### Check current version
108
+ ```bash
109
+ claude-ws --version
110
+ ```
111
+
112
+ ### Update to latest version
113
+ ```bash
114
+ npm update -g claude-ws
115
+ ```
116
+
117
+ ### Force reinstall
118
+ ```bash
119
+ npm install -g claude-ws@latest
120
+ ```
121
+
122
+ ---
123
+
101
124
  ## Tech Stack
102
125
 
103
126
  - **Framework**: Next.js 16 + React 19
@@ -17,6 +17,32 @@ const os = require('os');
17
17
  // Get package root directory
18
18
  const packageRoot = path.resolve(__dirname, '..');
19
19
 
20
+ // Handle CLI flags
21
+ if (process.argv.includes('--version') || process.argv.includes('-v')) {
22
+ const pkg = require(path.join(packageRoot, 'package.json'));
23
+ console.log(`v${pkg.version}`);
24
+ process.exit(0);
25
+ }
26
+
27
+ if (process.argv.includes('--help') || process.argv.includes('-h')) {
28
+ console.log(`
29
+ Claude Workspace - Visual workspace for Claude Code
30
+
31
+ Usage:
32
+ claude-ws [options]
33
+
34
+ Options:
35
+ -v, --version Show version number
36
+ -h, --help Show this help message
37
+
38
+ Examples:
39
+ claude-ws Start Claude Workspace server
40
+
41
+ For more info: https://github.com/Claude-Workspace/claude-ws
42
+ `);
43
+ process.exit(0);
44
+ }
45
+
20
46
  // Database path (in user's home directory for persistence)
21
47
  const DB_DIR = path.join(os.homedir(), '.claude-ws');
22
48
  const DB_PATH = path.join(DB_DIR, 'claude-ws.db');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-ws",
3
- "version": "0.1.9",
3
+ "version": "0.1.10",
4
4
  "private": false,
5
5
  "description": "A beautifully crafted workspace interface for Claude Code with real-time streaming and local SQLite database",
6
6
  "keywords": [
@@ -145,4 +145,4 @@
145
145
  "typescript": "^5"
146
146
  },
147
147
  "packageManager": "pnpm@10.28.0+sha512.05df71d1421f21399e053fde567cea34d446fa02c76571441bfc1c7956e98e363088982d940465fd34480d4d90a0668bc12362f8aa88000a64e83d0b0e47be48"
148
- }
148
+ }
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Check for available updates on npm registry
3
+ * Shows notification if newer version available
4
+ */
5
+
6
+ import { execSync } from 'child_process';
7
+ import { readFileSync } from 'fs';
8
+ import { join } from 'path';
9
+
10
+ export async function checkForUpdates() {
11
+ try {
12
+ const pkgPath = join(process.cwd(), 'package.json');
13
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
14
+ const currentVersion = pkg.version;
15
+
16
+ // Quick check - don't block startup
17
+ const latestVersion = execSync('npm show claude-ws version', {
18
+ encoding: 'utf-8',
19
+ timeout: 3000,
20
+ stdio: ['pipe', 'pipe', 'ignore'], // Suppress errors
21
+ }).trim();
22
+
23
+ if (latestVersion && latestVersion !== currentVersion) {
24
+ console.log('');
25
+ console.log('\x1b[33m%s\x1b[0m', '┌─────────────────────────────────────────────┐');
26
+ console.log('\x1b[33m%s\x1b[0m', '│ Update available! │');
27
+ console.log('\x1b[33m%s\x1b[0m', `│ ${currentVersion} → ${latestVersion} │`);
28
+ console.log('\x1b[33m%s\x1b[0m', '│ Run: npm update -g claude-ws │');
29
+ console.log('\x1b[33m%s\x1b[0m', '└─────────────────────────────────────────────┘');
30
+ console.log('');
31
+ }
32
+ } catch (error) {
33
+ // Silently fail - don't block startup for update check
34
+ }
35
+ }