devsh 0.1.2 → 0.1.3

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.
@@ -0,0 +1,151 @@
1
+ ---
2
+ name: devsh
3
+ description: CLI for cloud dev VMs. Install via npm for production, or build from local source for development/testing.
4
+ ---
5
+
6
+ # devsh - Cloud VMs for Development
7
+
8
+ > **Note**: `devsh` can be installed via npm for production use, or built from local source (`packages/devsh`) when developing or testing the CLI itself.
9
+
10
+ | Install | Purpose | Command |
11
+ |--------|---------|--------------|
12
+ | npm | Production CLI | `npm install -g devsh` |
13
+ | source | Development build | `make install-devsh-dev` |
14
+
15
+ ## Pre-flight Check
16
+
17
+ Before using `devsh` commands, verify installation:
18
+
19
+ ```bash
20
+ which devsh || ~/.local/bin/devsh --version
21
+
22
+ # If not found, build and install from source:
23
+ make install-devsh-dev
24
+ ```
25
+
26
+ ## Quick Start
27
+
28
+ ```bash
29
+ devsh auth login # Authenticate (opens browser)
30
+ devsh start ./my-project # Create VM, sync directory
31
+ devsh start -p pve-lxc . # Create VM with PVE LXC provider
32
+ devsh code <id> # Open VS Code in browser
33
+ devsh ssh <id> # SSH into VM
34
+ devsh exec <id> "npm run dev" # Run commands
35
+ devsh pause <id> # Pause VM
36
+ devsh resume <id> # Resume VM
37
+ devsh delete <id> # Delete VM
38
+ devsh ls # List all VMs
39
+ ```
40
+
41
+ ## Provider Selection
42
+
43
+ ```bash
44
+ # Explicit provider
45
+ devsh start -p morph . # Use Morph
46
+ devsh start -p pve-lxc . # Use PVE LXC (self-hosted)
47
+
48
+ # Auto-detect from environment
49
+ export PVE_API_URL=https://pve.example.com
50
+ export PVE_API_TOKEN=root@pam!token=secret
51
+ devsh start . # Auto-selects pve-lxc when PVE env vars are set
52
+ ```
53
+
54
+ ## Commands
55
+
56
+ ### Authentication
57
+ - `devsh auth login` - Login via browser
58
+ - `devsh auth logout` - Clear credentials
59
+ - `devsh auth status` - Show authentication status
60
+ - `devsh auth whoami` - Show current user
61
+ - `devsh login` - Shorthand for `auth login`
62
+ - `devsh logout` - Shorthand for `auth logout`
63
+ - `devsh whoami` - Shorthand for `auth whoami`
64
+
65
+ ### VM Lifecycle
66
+ - `devsh start [path]` - Create VM, optionally sync directory
67
+ - `devsh start -p <provider>` - Specify provider (`morph`, `pve-lxc`)
68
+ - `devsh pause <id>` - Pause VM
69
+ - `devsh resume <id>` - Resume VM
70
+ - `devsh delete <id>` - Delete VM
71
+ - `devsh ls` - List VMs
72
+ - `devsh status <id>` - Show VM status and URLs
73
+
74
+ ### Access VM
75
+ - `devsh code <id>` - Open VS Code in browser
76
+ - `devsh vnc <id>` - Open VNC desktop
77
+ - `devsh ssh <id>` - SSH into VM
78
+
79
+ ### Work with VM
80
+ - `devsh exec <id> "<cmd>"` - Run command
81
+ - `devsh sync <id> <path>` - Sync files to VM
82
+ - `devsh sync <id> <path> --pull` - Pull files from VM
83
+
84
+ ### Task Management
85
+ Tasks are the same as in the web app dashboard. CLI and web sync through Convex.
86
+
87
+ - `devsh task list` - List active tasks
88
+ - `devsh task list --archived` - List archived tasks
89
+ - `devsh task create --repo owner/repo --agent claude-code "prompt"` - Create task
90
+ - `devsh task create --cloud-workspace ...` - Create as cloud workspace (appears in Workspaces section)
91
+ - `devsh task show <task-id>` - Get task details and runs
92
+ - `devsh task stop <task-id>` - Stop/archive task
93
+ - `devsh task memory <task-run-id>` - View agent memory for a task run
94
+
95
+ ### Agent Memory
96
+ View agent memory snapshots synced from sandboxes when agents complete.
97
+
98
+ ```bash
99
+ devsh task memory <task-id> # View memory (uses latest run)
100
+ devsh task memory <task-run-id> # View specific run's memory
101
+ devsh task memory <task-id> -t knowledge # Filter by type
102
+ devsh task memory <task-id> -t daily # Daily logs only
103
+ devsh task memory <task-id> --json # JSON output
104
+ ```
105
+
106
+ Accepts either task ID (`p17...`) or task run ID (`ns7...`).
107
+ Memory types: `knowledge`, `daily`, `tasks`, `mailbox`
108
+
109
+ ### Team Management
110
+ - `devsh team list` - List your teams
111
+ - `devsh team switch <team-slug>` - Switch to a different team
112
+
113
+ ### Agent Management
114
+ - `devsh agent list` - List available coding agents
115
+
116
+ ### Browser Automation
117
+ - `devsh computer snapshot <id>` - Get accessibility tree
118
+ - `devsh computer open <id> <url>` - Navigate browser
119
+ - `devsh computer click <id> @e1` - Click element
120
+ - `devsh computer screenshot <id>` - Take screenshot
121
+
122
+ ## Building from Source
123
+
124
+ ```bash
125
+ # From repo root
126
+ make install-devsh-dev
127
+
128
+ # Or manually
129
+ cd packages/devsh
130
+ make build-dev
131
+ cp bin/devsh ~/.local/bin/
132
+ ```
133
+
134
+ ## Environment Variables
135
+
136
+ | Variable | Description |
137
+ | --- | --- |
138
+ | `PVE_API_URL` | Proxmox VE API URL |
139
+ | `PVE_API_TOKEN` | Proxmox VE API token |
140
+ | `PVE_PUBLIC_DOMAIN` | Public domain for Cloudflare Tunnel (optional) |
141
+ | `PVE_NODE` | Proxmox node name (optional, auto-detected) |
142
+ | `PVE_VERIFY_TLS` | Set to `1` to verify PVE TLS certs (optional) |
143
+ | `MORPH_API_KEY` | Morph Cloud API key |
144
+ | `DEVSH_DEV=1` | Use development backend defaults |
145
+
146
+ ## Create Symlinks for Other Agents
147
+
148
+ ```bash
149
+ mkdir -p .claude/skills
150
+ ln -s ../../.agents/skills/devsh .claude/skills/devsh
151
+ ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "devsh",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "Cloud VMs for development - spawn isolated dev environments instantly",
5
5
  "keywords": [
6
6
  "cli",
@@ -34,11 +34,11 @@
34
34
  "postinstall": "node lib/postinstall.js"
35
35
  },
36
36
  "optionalDependencies": {
37
- "devsh-darwin-arm64": "0.1.2",
38
- "devsh-darwin-x64": "0.1.2",
39
- "devsh-linux-arm64": "0.1.2",
40
- "devsh-linux-x64": "0.1.2",
41
- "devsh-win32-x64": "0.1.2"
37
+ "devsh-darwin-arm64": "0.1.3",
38
+ "devsh-darwin-x64": "0.1.3",
39
+ "devsh-linux-arm64": "0.1.3",
40
+ "devsh-linux-x64": "0.1.3",
41
+ "devsh-win32-x64": "0.1.3"
42
42
  },
43
43
  "engines": {
44
44
  "node": ">=16"