@ccdevkit/ccyolo 0.24.0 → 0.25.1

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.
Files changed (2) hide show
  1. package/README.md +88 -9
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -43,28 +43,35 @@ All `claude` flags work as expected.
43
43
  ccyolo flags go before `--`, claude flags go after:
44
44
 
45
45
  ```bash
46
+ ccyolo [ccyolo-flags] -- [claude-args]
47
+ ccyolo [claude-args]
48
+
46
49
  ccyolo -v -- -p "hello" # Verbose mode
47
50
  ccyolo --log /tmp/debug.log -- -c # Log to file
48
- ccyolo --pt git -- -p "git status" # Run git on host instead of container
51
+ ccyolo -pt:git -- -p "git status" # Run git on host instead of container
52
+ ccyolo --use 2.1.16 -- # Use specific Claude Code version
49
53
  ```
50
54
 
51
- | Flag | Description |
52
- | ----------------------------------- | ------------------------------------------------- |
53
- | `-v`, `--verbose` | Enable debug logging to stderr |
54
- | `--log <path>` | Write debug logs to file |
55
- | `--pt <cmd>`, `--passthrough <cmd>` | Run commands matching prefix on host (repeatable) |
55
+ | Flag | Description |
56
+ | ------------------------------------- | ------------------------------------------------- |
57
+ | `-v`, `--verbose` | Enable debug logging to stderr |
58
+ | `--log <path>` | Write debug logs to file (implies -v) |
59
+ | `-c`, `--claudePath <path>` | Path to claude CLI (default: claude in PATH) |
60
+ | `--use <version>` | Use specific Claude Code version (e.g., 2.1.16) |
61
+ | `-pt:<cmd>`, `--passthrough:<cmd>` | Run commands matching prefix on host (repeatable) |
62
+ | `--version` | Print ccyolo version |
56
63
 
57
64
  ### Passthrough
58
65
 
59
66
  By default, all commands run inside the container. This is usually fine, but some commands need to run on your host machine - things like `docker`, `gh`, or commands that need access to host resources.
60
67
 
61
- Use `--pt` to specify command prefixes that should run on the host:
68
+ Use `-pt:` to specify command prefixes that should run on the host:
62
69
 
63
70
  ```bash
64
- ccyolo --pt git --pt docker -- -p "build and push the image"
71
+ ccyolo -pt:git -pt:docker -- -p "build and push the image"
65
72
  ```
66
73
 
67
- This runs `git` and `docker` commands on your host, while everything else runs in the container. You can specify `--pt` multiple times.
74
+ This runs `git` and `docker` commands on your host, while everything else runs in the container. You can specify `-pt:` multiple times.
68
75
 
69
76
  ## Clipboard & Drag-Drop
70
77
 
@@ -88,6 +95,78 @@ When you paste or drag a file, ccyolo intercepts the input, copies the file into
88
95
 
89
96
  If you need clipboard support on ARM64, you can build from source on a native ARM64 machine with CGO enabled.
90
97
 
98
+ ## Settings
99
+
100
+ ccyolo can be configured using a settings file in your project or home directory. Settings files are discovered by walking up from your current directory to root.
101
+
102
+ ### Settings file location
103
+
104
+ Create a settings file at `.ccdevkit/ccyolo/settings.json` (or `.yaml`/`.yml`) in your project directory or home directory:
105
+
106
+ ```
107
+ your-project/
108
+ .ccdevkit/
109
+ ccyolo/
110
+ settings.json # Project-specific settings
111
+ ```
112
+
113
+ Or in your home directory for global settings:
114
+
115
+ ```
116
+ ~/.ccdevkit/
117
+ ccyolo/
118
+ settings.json # Global settings
119
+ ```
120
+
121
+ ### Available settings
122
+
123
+ ```json
124
+ {
125
+ "claudePath": "/path/to/claude",
126
+ "passthrough": ["git", "docker", "gh"]
127
+ }
128
+ ```
129
+
130
+ | Setting | Type | Description |
131
+ |---------|------|-------------|
132
+ | `claudePath` | string | Path to the claude CLI executable (default: `claude` in PATH) |
133
+ | `passthrough` | array | List of command prefixes to run on the host instead of in the container |
134
+
135
+ ### Settings priority
136
+
137
+ Settings are merged with the following priority (highest to lowest):
138
+
139
+ 1. Command-line flags
140
+ 2. Project settings (`.ccdevkit/ccyolo/settings.json` in current directory or ancestors)
141
+ 3. Global settings (`~/.ccdevkit/ccyolo/settings.json`)
142
+ 4. Defaults
143
+
144
+ ### Example configurations
145
+
146
+ **Minimal setup:**
147
+ ```json
148
+ {
149
+ "passthrough": ["git"]
150
+ }
151
+ ```
152
+
153
+ **Advanced setup:**
154
+ ```json
155
+ {
156
+ "claudePath": "/usr/local/bin/claude",
157
+ "passthrough": ["git", "docker", "gh", "npm"]
158
+ }
159
+ ```
160
+
161
+ **YAML format:**
162
+ ```yaml
163
+ claudePath: /usr/local/bin/claude
164
+ passthrough:
165
+ - git
166
+ - docker
167
+ - gh
168
+ ```
169
+
91
170
  ## Requirements
92
171
 
93
172
  - Docker
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ccdevkit/ccyolo",
3
- "version": "0.24.0",
3
+ "version": "0.25.1",
4
4
  "description": "Run Claude Code in a Docker container with YOLO mode enabled",
5
5
  "bin": {
6
6
  "ccyolo": "bin/ccyolo"