dorkos 0.1.0 → 0.3.0

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
@@ -1,18 +1,15 @@
1
1
  # dorkos
2
2
 
3
- Web-based interface and REST/SSE API for [Claude Code](https://docs.anthropic.com/en/docs/claude-code), built with the [Claude Agent SDK](https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk).
3
+ [![npm version](https://img.shields.io/npm/v/dorkos)](https://www.npmjs.com/package/dorkos)
4
+ [![license](https://img.shields.io/npm/l/dorkos)](https://github.com/dork-labs/dorkos/blob/main/LICENSE)
4
5
 
5
- Provides a chat UI for interacting with Claude Code sessions, with tool approval flows, slash command discovery, and real-time session sync across multiple clients.
6
+ Web-based interface and REST/SSE API for Claude Code, built with the Claude Agent SDK.
6
7
 
7
- ## Prerequisites
8
+ ## What is DorkOS?
8
9
 
9
- - **Node.js** >= 18
10
- - **Claude Code CLI** installed and available in your PATH:
11
- ```bash
12
- npm install -g @anthropic-ai/claude-code
13
- ```
10
+ DorkOS provides a browser-based chat UI for interacting with Claude Code sessions. It includes tool approval flows, slash command discovery, cross-client session sync, and a full REST/SSE API — all powered by the Claude Agent SDK.
14
11
 
15
- ## Install
12
+ ## Installation
16
13
 
17
14
  ```bash
18
15
  npm install -g dorkos
@@ -21,58 +18,93 @@ npm install -g dorkos
21
18
  ## Usage
22
19
 
23
20
  ```bash
24
- # Start DorkOS (opens on http://localhost:6942)
25
21
  dorkos
22
+ ```
26
23
 
27
- # Custom port
28
- dorkos --port 8080
24
+ The server starts on port 4242 and opens your browser automatically. You'll see the DorkOS chat interface where you can start Claude Code sessions, approve tool calls, and use slash commands.
29
25
 
30
- # Set working directory
31
- dorkos --dir ~/projects/myapp
26
+ ## Updating
32
27
 
33
- # Enable ngrok tunnel for remote access
34
- NGROK_AUTHTOKEN=your_token dorkos --tunnel
28
+ ```bash
29
+ npm install -g dorkos@latest
35
30
  ```
36
31
 
37
- ## Options
32
+ DorkOS checks for updates automatically on startup and displays a notification when a new version is available. You can also check your current version with:
38
33
 
39
- | Flag | Short | Description | Default |
40
- |------|-------|-------------|---------|
41
- | `--port <port>` | `-p` | Port to listen on | `6942` |
42
- | `--tunnel` | `-t` | Enable ngrok tunnel | `false` |
43
- | `--dir <path>` | `-d` | Working directory | Current directory |
44
- | `--help` | `-h` | Show help message | |
45
- | `--version` | `-v` | Show version number | |
34
+ ```bash
35
+ dorkos --version
36
+ ```
46
37
 
47
- ## Environment Variables
38
+ ## CLI Flags
39
+
40
+ | Flag | Description |
41
+ |---|---|
42
+ | `-p, --port <port>` | Port to listen on (default: 4242) |
43
+ | `-d, --dir <path>` | Working directory (default: current directory) |
44
+ | `-b, --boundary <path>` | Directory boundary (default: home directory) |
45
+ | `-t, --tunnel` | Enable ngrok tunnel |
46
+ | `-l, --log-level <level>` | Log level (`fatal`, `error`, `warn`, `info`, `debug`, `trace`) |
47
+ | `-h, --help` | Show help message |
48
+ | `-v, --version` | Show version number |
49
+
50
+ ## Subcommands
51
+
52
+ | Command | Description |
53
+ |---|---|
54
+ | `dorkos config` | Show all effective settings |
55
+ | `dorkos config get <key>` | Get a single config value |
56
+ | `dorkos config set <key> <value>` | Set a single config value |
57
+ | `dorkos config list` | Full JSON output |
58
+ | `dorkos config reset [key]` | Reset to defaults |
59
+ | `dorkos config edit` | Open config in `$EDITOR` |
60
+ | `dorkos config path` | Print config file location |
61
+ | `dorkos config validate` | Check config validity |
62
+ | `dorkos init` | Interactive setup wizard |
63
+ | `dorkos init --yes` | Accept all defaults |
64
+
65
+ ## Configuration
66
+
67
+ ### Required
48
68
 
49
69
  | Variable | Description |
50
- |----------|-------------|
51
- | `NGROK_AUTHTOKEN` | ngrok auth token (required for `--tunnel`) |
52
- | `TUNNEL_AUTH` | HTTP basic auth for tunnel (`user:pass`) |
53
- | `TUNNEL_DOMAIN` | Custom ngrok domain |
70
+ |---|---|
71
+ | `ANTHROPIC_API_KEY` | Your Anthropic API key |
72
+
73
+ ### Optional
74
+
75
+ | Variable | Default | Description |
76
+ |---|---|---|
77
+ | `DORKOS_PORT` | `4242` | Server port |
78
+ | `DORKOS_DEFAULT_CWD` | Current directory | Default working directory for sessions |
79
+ | `DORKOS_BOUNDARY` | Home directory | Directory boundary root (restricts filesystem access) |
80
+ | `LOG_LEVEL` | `info` | Log verbosity (`fatal`, `error`, `warn`, `info`, `debug`, `trace`) |
81
+
82
+ ### Tunnel Configuration
83
+
84
+ DorkOS supports ngrok tunnels for remote access:
85
+
86
+ | Variable | Description |
87
+ |---|---|
88
+ | `TUNNEL_ENABLED` | Set to `true` to enable ngrok tunnel |
89
+ | `NGROK_AUTHTOKEN` | Your ngrok authentication token |
90
+ | `TUNNEL_DOMAIN` | Custom tunnel domain (optional) |
91
+ | `TUNNEL_AUTH` | Basic auth in `user:pass` format (optional) |
92
+
93
+ ## Config Directory
54
94
 
55
- ## Features
95
+ DorkOS creates a `~/.dork/` directory on startup for configuration storage. Log files are written to `~/.dork/logs/dorkos.log` as NDJSON.
56
96
 
57
- - Chat UI for Claude Code with rich markdown rendering
58
- - Tool approval/deny flow for safe AI interactions
59
- - Slash command discovery from `.claude/commands/`
60
- - SSE streaming for real-time responses
61
- - Session sync across multiple clients (including CLI)
62
- - REST API with OpenAPI docs at `/api/docs`
97
+ ## API Documentation
63
98
 
64
- ## API
99
+ When running, DorkOS serves interactive API documentation at `/api/docs` (powered by Scalar UI) and the raw OpenAPI spec at `/api/openapi.json`.
65
100
 
66
- Once running, DorkOS exposes:
101
+ ## Links
67
102
 
68
- - **`GET /api/sessions`** - List all sessions
69
- - **`POST /api/sessions`** - Create a new session
70
- - **`GET /api/sessions/:id/messages`** - Get message history
71
- - **`POST /api/sessions/:id/messages`** - Send a message (SSE stream)
72
- - **`GET /api/sessions/:id/stream`** - Subscribe to session changes (SSE)
73
- - **`GET /api/docs`** - Interactive API documentation (Scalar)
74
- - **`GET /api/openapi.json`** - OpenAPI specification
103
+ - [Documentation](https://dorkos.dev/docs)
104
+ - [Changelog](https://dorkos.dev/docs/changelog)
105
+ - [GitHub](https://github.com/dork-labs/dorkos)
106
+ - [Issues](https://github.com/dork-labs/dorkos/issues)
75
107
 
76
108
  ## License
77
109
 
78
- MIT
110
+ [MIT](https://github.com/dork-labs/dorkos/blob/main/LICENSE)