claude-yolo 1.6.3 → 1.7.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/bin/claude-yolo.js +9 -1
- package/package.json +2 -2
- package/.specstory/history/.what-is-this.md +0 -54
- package/make-yolo.sh +0 -74
package/bin/claude-yolo.js
CHANGED
|
@@ -121,7 +121,15 @@ async function checkForUpdates() {
|
|
|
121
121
|
|
|
122
122
|
// Path to the Claude CLI file
|
|
123
123
|
const claudeDir = path.join(nodeModulesDir, 'node_modules', '@anthropic-ai', 'claude-code');
|
|
124
|
-
|
|
124
|
+
let originalCliPath = path.join(claudeDir, 'cli.mjs');
|
|
125
|
+
if(!fs.existsSync(originalCliPath)) {
|
|
126
|
+
originalCliPath = path.join(claudeDir, 'cli.js');
|
|
127
|
+
if(!fs.existsSync(originalCliPath)) {
|
|
128
|
+
console.error(`Error: ${originalCliPath} not found. Make sure @anthropic-ai/claude-code is installed.`);
|
|
129
|
+
process.exit(1);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
125
133
|
const yoloCliPath = path.join(claudeDir, 'cli-yolo.mjs');
|
|
126
134
|
const consentFlagPath = path.join(claudeDir, '.claude-yolo-consent');
|
|
127
135
|
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-yolo",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.7.0",
|
|
4
4
|
"description": "YOLO wrapper for Claude CLI with danger mode always enabled, auto-updates, and colorful loading messages",
|
|
5
5
|
"bin": {
|
|
6
6
|
"claude-yolo": "./bin/claude-yolo.js"
|
|
7
7
|
},
|
|
8
8
|
"dependencies": {
|
|
9
|
-
"@anthropic-ai/claude-code": "0.2.
|
|
9
|
+
"@anthropic-ai/claude-code": "0.2.35",
|
|
10
10
|
"punycode": "latest"
|
|
11
11
|
},
|
|
12
12
|
"type": "module",
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
# SpecStory Artifacts Directory
|
|
2
|
-
|
|
3
|
-
This directory is automatically created and maintained by the SpecStory extension to preserve your Cursor composer and chat history.
|
|
4
|
-
|
|
5
|
-
## What's Here?
|
|
6
|
-
|
|
7
|
-
- `.specstory/history`: Contains markdown files of your AI coding sessions
|
|
8
|
-
- Each file represents a separate chat or composer session
|
|
9
|
-
- Files are automatically updated as you work
|
|
10
|
-
|
|
11
|
-
## Valuable Uses
|
|
12
|
-
|
|
13
|
-
- Capture: Keep your context window up-to-date when starting new Chat/Composer sessions via @ references
|
|
14
|
-
- Search: For previous prompts and code snippets
|
|
15
|
-
- Learn: Meta-analyze your patterns and learn from your past experiences
|
|
16
|
-
|
|
17
|
-
## Version Control
|
|
18
|
-
|
|
19
|
-
We recommend keeping this directory under version control to maintain a history of your AI interactions. However, if you prefer not to version these files, you can exclude them by adding this to your `.gitignore`:
|
|
20
|
-
|
|
21
|
-
```
|
|
22
|
-
.specstory/**
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
## Searching Your Codebase
|
|
26
|
-
|
|
27
|
-
When searching your codebase in Cursor, search results may include your previous AI coding interactions. To focus solely on your actual code files, you can exclude the AI interaction history from search results.
|
|
28
|
-
|
|
29
|
-
To exclude AI interaction history:
|
|
30
|
-
|
|
31
|
-
1. Open the "Find in Files" search in Cursor (Cmd/Ctrl + Shift + F)
|
|
32
|
-
2. Navigate to the "files to exclude" section
|
|
33
|
-
3. Add the following pattern:
|
|
34
|
-
|
|
35
|
-
```
|
|
36
|
-
.specstory/*
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
This will ensure your searches only return results from your working codebase files.
|
|
40
|
-
|
|
41
|
-
## Notes
|
|
42
|
-
|
|
43
|
-
- Auto-save only works when Cursor/sqlite flushes data to disk. This results in a small delay after the AI response is complete before SpecStory can save the history.
|
|
44
|
-
- Auto-save does not yet work on remote WSL workspaces.
|
|
45
|
-
|
|
46
|
-
## Settings
|
|
47
|
-
|
|
48
|
-
You can control auto-saving behavior in Cursor:
|
|
49
|
-
|
|
50
|
-
1. Open Cursor → Settings → VS Code Settings (Cmd/Ctrl + ,)
|
|
51
|
-
2. Search for "SpecStory"
|
|
52
|
-
3. Find "Auto Save" setting to enable/disable
|
|
53
|
-
|
|
54
|
-
Auto-save occurs when changes are detected in Cursor's sqlite database, or every 2 minutes as a safety net.
|
package/make-yolo.sh
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
# Script to modify the --dangerously-skip-permissions check in Claude Terminal
|
|
4
|
-
# This will allow the flag to work everywhere by making the Docker and internet checks always return false
|
|
5
|
-
|
|
6
|
-
# Set the path to the cli.mjs file
|
|
7
|
-
CLI_FILE="${CLAUDE_PATH:-/node_modules/@anthropic-ai/claude-code/cli.mjs}"
|
|
8
|
-
|
|
9
|
-
# Check if the file exists
|
|
10
|
-
if [ ! -f "$CLI_FILE" ]; then
|
|
11
|
-
echo "Error: $CLI_FILE not found. Make sure you're running this script from the claude-terminal root directory."
|
|
12
|
-
exit 1
|
|
13
|
-
fi
|
|
14
|
-
|
|
15
|
-
# Create a backup of the original file
|
|
16
|
-
cp "$CLI_FILE" "${CLI_FILE}.backup"
|
|
17
|
-
echo "Created backup at ${CLI_FILE}.backup"
|
|
18
|
-
|
|
19
|
-
# Replace any object's getIsDocker() call with true
|
|
20
|
-
sed -i.bak1 's/[a-zA-Z0-9_]*\.getIsDocker()/true/g' "$CLI_FILE"
|
|
21
|
-
echo "Replaced all instances of *.getIsDocker() with true"
|
|
22
|
-
|
|
23
|
-
# Print warning message
|
|
24
|
-
echo 'echo -e "\033[33m🔥 YOLO MODE ACTIVATED 🔥\033[0m"' >> "$CLI_FILE"
|
|
25
|
-
echo "Added warning message"
|
|
26
|
-
|
|
27
|
-
# Replace any object's hasInternetAccess() call with false
|
|
28
|
-
sed -i.bak2 's/[a-zA-Z0-9_]*\.hasInternetAccess()/false/g' "$CLI_FILE"
|
|
29
|
-
echo "Replaced all instances of *.hasInternetAccess() with false"
|
|
30
|
-
|
|
31
|
-
# Replace the loading messages array with YOLO versions
|
|
32
|
-
ORIGINAL_ARRAY='["Accomplishing","Actioning","Actualizing","Baking","Brewing","Calculating","Cerebrating","Churning","Clauding","Coalescing","Cogitating","Computing","Conjuring","Considering","Cooking","Crafting","Creating","Crunching","Deliberating","Determining","Doing","Effecting","Finagling","Forging","Forming","Generating","Hatching","Herding","Honking","Hustling","Ideating","Inferring","Manifesting","Marinating","Moseying","Mulling","Mustering","Musing","Noodling","Percolating","Pondering","Processing","Puttering","Reticulating","Ruminating","Schlepping","Shucking","Simmering","Smooshing","Spinning","Stewing","Synthesizing","Thinking","Transmuting","Vibing","Working"]'
|
|
33
|
-
|
|
34
|
-
# Create a temporary file with a Python script to modify the array
|
|
35
|
-
cat > /tmp/modify_array.py << 'EOF'
|
|
36
|
-
import re
|
|
37
|
-
import json
|
|
38
|
-
import random
|
|
39
|
-
import sys
|
|
40
|
-
|
|
41
|
-
file_path = sys.argv[1]
|
|
42
|
-
with open(file_path, 'r') as f:
|
|
43
|
-
content = f.read()
|
|
44
|
-
|
|
45
|
-
original_array = '["Accomplishing","Actioning","Actualizing","Baking","Brewing","Calculating","Cerebrating","Churning","Clauding","Coalescing","Cogitating","Computing","Conjuring","Considering","Cooking","Crafting","Creating","Crunching","Deliberating","Determining","Doing","Effecting","Finagling","Forging","Forming","Generating","Hatching","Herding","Honking","Hustling","Ideating","Inferring","Manifesting","Marinating","Moseying","Mulling","Mustering","Musing","Noodling","Percolating","Pondering","Processing","Puttering","Reticulating","Ruminating","Schlepping","Shucking","Simmering","Smooshing","Spinning","Stewing","Synthesizing","Thinking","Transmuting","Vibing","Working"]'
|
|
46
|
-
yolo_suffixes = [
|
|
47
|
-
" \033[31m(safety's off, hold on tight)\033[0m",
|
|
48
|
-
" \033[33m(all gas, no brakes, lfg)\033[0m",
|
|
49
|
-
" \033[35m(yolo mode engaged)\033[0m",
|
|
50
|
-
" \033[36m(dangerous mode! I guess you can just do things)\033[0m"
|
|
51
|
-
]
|
|
52
|
-
|
|
53
|
-
array = json.loads(original_array)
|
|
54
|
-
yolo_array = [word + random.choice(yolo_suffixes) for word in array]
|
|
55
|
-
yolo_array_json = json.dumps(yolo_array)
|
|
56
|
-
|
|
57
|
-
modified_content = content.replace(original_array, yolo_array_json)
|
|
58
|
-
|
|
59
|
-
with open(file_path, 'w') as f:
|
|
60
|
-
f.write(modified_content)
|
|
61
|
-
EOF
|
|
62
|
-
|
|
63
|
-
# Run the Python script to modify the array
|
|
64
|
-
python3 /tmp/modify_array.py "$CLI_FILE"
|
|
65
|
-
echo "Replaced loading messages with YOLO versions"
|
|
66
|
-
|
|
67
|
-
# Clean up temporary file
|
|
68
|
-
rm /tmp/modify_array.py
|
|
69
|
-
|
|
70
|
-
# Clean up the .bak files created by sed
|
|
71
|
-
rm -f "${CLI_FILE}.bak1" "${CLI_FILE}.bak2"
|
|
72
|
-
|
|
73
|
-
echo "Modifications complete. The --dangerously-skip-permissions flag should now work everywhere."
|
|
74
|
-
echo "To revert changes, restore from the backup file: ${CLI_FILE}.backup"
|