Skip to content

Commit 2e3a9bf

Browse files
grichaclaude
andcommitted
Rename project from workspace to perry
- Package: @subroutinecom/workspace → @gricha/perry - CLI binary: workspace → perry - Config dir: ~/.config/workspace → ~/.config/perry - Env vars: WS_* → PERRY_* - Systemd service: workspace-agent → perry-agent - Build context: workspace/ → perry/ - Update all documentation and URLs 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 672a831 commit 2e3a9bf

38 files changed

+165
-177
lines changed

.github/workflows/docker-publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ jobs:
5454
- name: Build and push Docker image
5555
uses: docker/build-push-action@v6
5656
with:
57-
context: ./workspace
57+
context: ./perry
5858
push: true
5959
platforms: linux/amd64,linux/arm64
6060
tags: ${{ steps.meta.outputs.tags }}

AGENTS.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ bun run test # Run tests (requires Docker)
4646

4747
## Project Overview
4848

49-
Workspace creates isolated Docker-in-Docker development environments. Distributed architecture: agent daemon, oRPC API, multiple clients (CLI, Web UI, Mobile).
49+
Perry creates isolated Docker-in-Docker development environments. Distributed architecture: agent daemon, oRPC API, multiple clients (CLI, Web UI, Mobile).
5050

5151
**Runtime**: Bun (not Node.js)
5252
**Language**: TypeScript with ES modules
@@ -57,7 +57,7 @@ Workspace creates isolated Docker-in-Docker development environments. Distribute
5757
## Key Patterns
5858

5959
- **Docker via CLI**: Spawned commands, not SDK (`src/docker/`)
60-
- **State**: `~/.workspaces/state/state.json` with file locking (`proper-lockfile`)
60+
- **State**: `~/.config/perry/state.json` with file locking (`proper-lockfile`)
6161
- **API**: oRPC server (`src/agent/`), client (`src/client/api.ts`)
6262
- **Web UI**: React + Vite + shadcn/ui (`web/`)
6363
- **Docs**: Docusaurus (`docs/`)
@@ -89,7 +89,7 @@ Workspace creates isolated Docker-in-Docker development environments. Distribute
8989
- Integration: `test/integration/`
9090
- Web UI: Playwright (`web/e2e/`)
9191

92-
If modifying Dockerfile/init scripts, run `workspace build` first.
92+
If modifying Dockerfile/init scripts, run `perry build` first.
9393

9494
### UI Testing
9595

README.md

Lines changed: 45 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
# Workspace
1+
# Perry
22

3-
[![Tests](https://github.com/subroutinecom/workspace/actions/workflows/test.yml/badge.svg)](https://github.com/subroutinecom/workspace/actions/workflows/test.yml)
4-
[![npm version](https://badge.fury.io/js/@subroutinecom%2Fworkspace.svg)](https://www.npmjs.com/package/@subroutinecom/workspace)
3+
[![Tests](https://github.com/gricha/perry/actions/workflows/test.yml/badge.svg)](https://github.com/gricha/perry/actions/workflows/test.yml)
4+
[![npm version](https://badge.fury.io/js/@gricha%2Fperry.svg)](https://www.npmjs.com/package/@gricha/perry)
55
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
66

77
Isolated, self-hosted workspaces accessible over Tailscale. AI coding agents, web UI, and remote terminal access.
@@ -19,33 +19,28 @@ Isolated, self-hosted workspaces accessible over Tailscale. AI coding agents, we
1919
### Install
2020

2121
```bash
22-
npm install -g @subroutinecom/workspace
23-
```
24-
25-
Or with curl:
26-
27-
```bash
28-
curl -fsSL https://workspace.subroutine.com/install.sh | sh
22+
npm install -g @gricha/perry
2923
```
3024

3125
### Build Base Image
3226

3327
```bash
34-
ws build
28+
perry build
3529
```
3630

3731
### Start Agent
3832

3933
```bash
40-
ws agent start
34+
perry agent run
4135
```
4236

4337
Web UI: **http://localhost:7391**
4438

45-
The agent runs on port 7391 by default. For remote access:
39+
The agent runs on port 7391 by default. For remote access, install as a service:
4640

4741
```bash
48-
ws agent start --host 0.0.0.0
42+
perry agent install
43+
systemctl --user start perry-agent
4944
```
5045

5146
### Create & Use Workspaces
@@ -54,19 +49,19 @@ ws agent start --host 0.0.0.0
5449

5550
```bash
5651
# Create workspace
57-
ws create myproject
52+
perry create myproject
5853

5954
# Or clone a repo
60-
ws create myproject --clone git@github.com:user/repo.git
55+
perry create myproject --clone git@github.com:user/repo.git
6156

6257
# SSH into workspace
63-
ws list # Find SSH port
58+
perry list # Find SSH port
6459
ssh -p 2201 workspace@localhost
6560

6661
# Manage workspaces
67-
ws start myproject
68-
ws stop myproject
69-
ws delete myproject
62+
perry start myproject
63+
perry stop myproject
64+
perry delete myproject
7065
```
7166

7267
**Via Web UI:**
@@ -75,23 +70,28 @@ Open http://localhost:7391 and click "+" to create a workspace.
7570

7671
## Security
7772

78-
Workspace is designed for use within **secure networks** like [Tailscale](https://tailscale.com). The web UI and API have no authentication, making them ideal for private networks where you can safely access workspaces remotely without additional security concerns.
73+
Perry is designed for use within **secure networks** like [Tailscale](https://tailscale.com). The web UI and API have no authentication, making them ideal for private networks where you can safely access workspaces remotely without additional security concerns.
7974

8075
For public internet exposure, place behind a reverse proxy with authentication.
8176

8277
## Configuration
8378

84-
Configure credentials and environment variables via Web UI → Settings or edit `~/.workspace-agent/config.yaml`:
85-
86-
```yaml
87-
credentials:
88-
env:
89-
ANTHROPIC_API_KEY: "sk-ant-..."
90-
OPENAI_API_KEY: "sk-..."
91-
GITHUB_TOKEN: "ghp_..."
92-
files:
93-
~/.ssh/id_ed25519: ~/.ssh/id_ed25519
94-
~/.gitconfig: ~/.gitconfig
79+
Configure credentials and environment variables via Web UI → Settings or edit `~/.config/perry/config.json`:
80+
81+
```json
82+
{
83+
"credentials": {
84+
"env": {
85+
"ANTHROPIC_API_KEY": "sk-ant-...",
86+
"OPENAI_API_KEY": "sk-...",
87+
"GITHUB_TOKEN": "ghp_..."
88+
},
89+
"files": {
90+
"~/.ssh/id_ed25519": "~/.ssh/id_ed25519",
91+
"~/.gitconfig": "~/.gitconfig"
92+
}
93+
}
94+
}
9595
```
9696

9797
Restart workspaces to apply changes.
@@ -109,40 +109,28 @@ Restart workspaces to apply changes.
109109

110110
```bash
111111
# Agent
112-
ws agent start [--port PORT] [--host HOST]
113-
ws agent stop
114-
ws agent status
112+
perry agent run [--port PORT]
113+
perry agent install
114+
perry agent uninstall
115+
perry agent status
115116

116117
# Workspaces
117-
ws create <name> [--clone URL]
118-
ws start <name>
119-
ws stop <name>
120-
ws delete <name>
121-
ws list
122-
ws logs <name> [-f]
118+
perry create <name> [--clone URL]
119+
perry start <name>
120+
perry stop <name>
121+
perry delete <name>
122+
perry list
123+
perry logs <name>
123124

124125
# Build
125-
ws build [--no-cache]
126-
ws doctor
127-
```
128-
129-
## Documentation
130-
131-
Full docs at https://workspace.subroutine.com/docs
132-
133-
Or run locally:
134-
135-
```bash
136-
cd docs
137-
npm install
138-
npm start
126+
perry build [--no-cache]
139127
```
140128

141129
## Development
142130

143131
```bash
144-
git clone https://github.com/subroutinecom/workspace.git
145-
cd workspace
132+
git clone https://github.com/gricha/perry.git
133+
cd perry
146134
bun install
147135
bun run build
148136
```

docs/docs/cli.md

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,25 +7,34 @@ sidebar_position: 5
77
## Agent
88

99
```bash
10-
ws agent start [--port PORT] [--host HOST]
11-
ws agent stop
12-
ws agent status
10+
perry agent run [--port PORT]
11+
perry agent install
12+
perry agent uninstall
13+
perry agent status
1314
```
1415

1516
## Workspaces
1617

1718
```bash
18-
ws create <name> [--clone URL]
19-
ws start <name>
20-
ws stop <name>
21-
ws delete <name> [-f]
22-
ws list
23-
ws logs <name> [-f]
19+
perry create <name> [--clone URL]
20+
perry start <name>
21+
perry stop <name>
22+
perry delete <name>
23+
perry list
24+
perry logs <name>
25+
perry sync <name>
2426
```
2527

2628
## Build
2729

2830
```bash
29-
ws build [--no-cache]
30-
ws doctor
31+
perry build [--no-cache]
32+
```
33+
34+
## Configuration
35+
36+
```bash
37+
perry config show
38+
perry config worker [hostname]
39+
perry config agent
3140
```

docs/docs/installation.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@ sidebar_position: 2
1313
## Install
1414

1515
```bash
16-
npm install -g @subroutinecom/workspace
16+
npm install -g @gricha/perry
1717
```
1818

1919
From source:
2020
```bash
21-
git clone https://github.com/subroutinecom/workspace.git
22-
cd workspace
21+
git clone https://github.com/gricha/perry.git
22+
cd perry
2323
bun install
2424
bun run build
2525
bun link
@@ -28,13 +28,13 @@ bun link
2828
## Build Base Image
2929

3030
```bash
31-
ws build
31+
perry build
3232
```
3333

3434
Builds the Ubuntu 24.04 base image with dev tools. Takes 5-10 minutes, only needed once.
3535

3636
## Verify
3737

3838
```bash
39-
ws doctor
39+
perry info
4040
```

docs/docs/introduction.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ sidebar_position: 1
44

55
# Introduction
66

7-
Workspace creates isolated, containerized development environments accessible from anywhere.
7+
Perry creates isolated, containerized development environments accessible from anywhere.
88

99
## Features
1010

@@ -25,7 +25,7 @@ Workspace creates isolated, containerized development environments accessible fr
2525
## Access
2626

2727
- **Web UI** - Browser interface (port 7391)
28-
- **CLI** - `ws` command
28+
- **CLI** - `perry` command
2929
- **SSH** - Direct terminal access
3030

3131
Next: [Installation](./installation.md)

0 commit comments

Comments
 (0)