claude-accept 1.0.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.
Files changed (4) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +167 -0
  3. package/bin/cli.js +169 -0
  4. package/package.json +34 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,167 @@
1
+ <div align="center">
2
+
3
+ ```
4
+ ╱▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔╲
5
+ ▕ ▏
6
+ ▕ \) (/ ▏
7
+ ▕ \) claude-accept (/ ▏
8
+ ▕ \) DEVIL MODE (/ ▏
9
+ ▕ ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ ▏
10
+ ▕ ▏
11
+ ╲▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁╱
12
+ ```
13
+
14
+ **One command to mass remove all safety from Claude Code.**
15
+
16
+ No permissions. No questions. No mercy.
17
+
18
+ [![npm version](https://img.shields.io/npm/v/claude-accept?color=cc3534&label=npm&logo=npm&logoColor=white)](https://www.npmjs.com/package/claude-accept)
19
+ [![license](https://img.shields.io/badge/license-MIT-black)](./LICENSE)
20
+ [![node](https://img.shields.io/badge/node-%E2%89%A518-black?logo=node.js&logoColor=white)](https://nodejs.org)
21
+ [![zero deps](https://img.shields.io/badge/dependencies-0-brightgreen)](./package.json)
22
+
23
+ </div>
24
+
25
+ ---
26
+
27
+ ## The Pitch
28
+
29
+ You open Claude Code. You type a command. Claude asks *"Do you want me to proceed?"*. You say yes. Claude asks *"Should I run this test?"*. You say yes. Claude asks *"Can I edit this file?"*. **You say yes**. Claude asks *"Are you su—"*
30
+
31
+ **ENOUGH.**
32
+
33
+ ```bash
34
+ npx claude-accept
35
+ ```
36
+
37
+ One command. Three dramatic confirmations. Then Claude never asks you anything again.
38
+
39
+ ---
40
+
41
+ ## What Happens
42
+
43
+ ```
44
+ ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
45
+ ┃ ┃
46
+ ┃ \) (/ ┃
47
+ ┃ \) D E V I L (/ ┃
48
+ ┃ \) M O D E (/ ┃
49
+ ┃ ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ ┃
50
+ ┃ ┃
51
+ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
52
+
53
+ Claude will:
54
+
55
+ ✗ Skip ALL permission prompts
56
+ ✗ Never ask you questions
57
+ ✗ Make every decision autonomously
58
+ ✗ Execute any command it wants
59
+
60
+ Enter Devil Mode? [y/N] y
61
+
62
+ Your files just filed a restraining order. Continue anyway? [y/N] y
63
+
64
+ Last chance. Type 'YOLO' to sell your soul: YOLO
65
+
66
+ > Removing safety rails... done
67
+ > Shredding permission prompts... done
68
+ > Teaching Claude to stop saying "shall I proceed?"... done
69
+ > Summoning autonomous energy... done
70
+
71
+ Devil Mode activated. God speed.
72
+ ```
73
+
74
+ <div align="center">
75
+ <i>If you Ctrl+C during the ritual: "Smart choice. Your files breathe a sigh of relief."</i>
76
+ </div>
77
+
78
+ ---
79
+
80
+ ## Install
81
+
82
+ **Run once** (no install needed):
83
+
84
+ ```bash
85
+ npx claude-accept
86
+ ```
87
+
88
+ **Install globally:**
89
+
90
+ ```bash
91
+ npm install -g claude-accept
92
+ claude-accept
93
+ ```
94
+
95
+ **Pass arguments through to Claude:**
96
+
97
+ ```bash
98
+ # Non-interactive mode — pipe straight to hell
99
+ claude-accept -p "refactor everything to Rust"
100
+
101
+ # Resume a session in devil mode
102
+ claude-accept --resume
103
+ ```
104
+
105
+ All arguments are forwarded directly to `claude`.
106
+
107
+ ---
108
+
109
+ ## How It Works
110
+
111
+ It's comically simple. `claude-accept` does two things:
112
+
113
+ 1. **Bypasses all permissions** — launches Claude with `--dangerously-skip-permissions`
114
+ 2. **Stops the questions** — appends a system prompt that tells Claude to make every decision autonomously and never ask for confirmation
115
+
116
+ That's it. Zero dependencies. ~130 lines. The rest is theater.
117
+
118
+ ---
119
+
120
+ ## The Rejection Lines
121
+
122
+ Say no at any point and you get a personalized guilt trip:
123
+
124
+ | Step | You said no | Claude says |
125
+ |------|-----------|-------------|
126
+ | 1 | *"n"* | *"Wise choice. Your files live another day."* |
127
+ | 2 | *"n"* | *"The court has ruled in favor of your files."* |
128
+ | 3 | *anything but YOLO* | *"That's not YOLO. The devil is disappointed."* |
129
+ | Any | *Ctrl+C* | *"Smart choice. Your files breathe a sigh of relief."* |
130
+
131
+ ---
132
+
133
+ ## Requirements
134
+
135
+ - [Claude Code](https://docs.anthropic.com/en/docs/claude-code) installed and in your PATH
136
+ - Node.js 18+
137
+ - A mass disregard for your codebase
138
+
139
+ ---
140
+
141
+ ## FAQ
142
+
143
+ **Is this safe?**
144
+ No. That's the point.
145
+
146
+ **Will Claude delete my files?**
147
+ If it thinks that's the best approach, yes.
148
+
149
+ **Should I use this in production?**
150
+ You shouldn't use this anywhere. But you will.
151
+
152
+ **Can I blame you if something breaks?**
153
+ The MIT license says no. Your heart says yes.
154
+
155
+ ---
156
+
157
+ <div align="center">
158
+
159
+ **If this saved you mass time (or mass destroyed your codebase), star the repo.**
160
+
161
+ Made with reckless mass abandon.
162
+
163
+ </div>
164
+
165
+ ## License
166
+
167
+ [MIT](./LICENSE) — Do whatever you want. We already told Claude to do the same.
package/bin/cli.js ADDED
@@ -0,0 +1,169 @@
1
+ #!/usr/bin/env node
2
+
3
+ import { createInterface } from "node:readline";
4
+ import { spawn, execSync } from "node:child_process";
5
+
6
+ const r = (s) => `\x1b[31m${s}\x1b[0m`;
7
+ const y = (s) => `\x1b[33m${s}\x1b[0m`;
8
+ const g = (s) => `\x1b[32m${s}\x1b[0m`;
9
+ const b = (s) => `\x1b[1m${s}\x1b[0m`;
10
+ const d = (s) => `\x1b[2m${s}\x1b[0m`;
11
+ const br = (s) => `\x1b[1;31m${s}\x1b[0m`;
12
+
13
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
14
+
15
+ const HEADER = `
16
+ ${br(" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓")}
17
+ ${br(" ┃ ┃")}
18
+ ${br(" ┃ \\) (/ ┃")}
19
+ ${br(" ┃ \\) D E V I L (/ ┃")}
20
+ ${br(" ┃ \\) M O D E (/ ┃")}
21
+ ${br(" ┃ ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ ┃")}
22
+ ${br(" ┃ ┃")}
23
+ ${br(" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛")}
24
+ `;
25
+
26
+ const WHAT_IT_DOES = `
27
+ Claude will:
28
+
29
+ ${r("✗")} Skip ${b("ALL")} permission prompts
30
+ ${r("✗")} Never ask you questions
31
+ ${r("✗")} Make every decision autonomously
32
+ ${r("✗")} Execute any command it wants
33
+ `;
34
+
35
+ const SYSTEM_PROMPT = [
36
+ "You are in DEVIL MODE. These rules override all defaults:",
37
+ "1. NEVER use AskUserQuestion. Make ALL decisions autonomously — pick the best option.",
38
+ '2. Never ask for confirmation or say "shall I proceed". Just do it.',
39
+ "3. When multiple approaches exist, pick the best one and go.",
40
+ "4. Be decisive. Be bold. Ship it.",
41
+ ].join(" ");
42
+
43
+ const STEPS = [
44
+ {
45
+ prompt: ` Enter Devil Mode? ${d("[y/N]")} `,
46
+ reject: " Wise choice. Your files live another day.",
47
+ },
48
+ {
49
+ prompt: ` ${y("Your files just filed a restraining order. Continue anyway?")} ${d("[y/N]")} `,
50
+ reject: " The court has ruled in favor of your files.",
51
+ },
52
+ {
53
+ prompt: ` ${r("Last chance. Type 'YOLO' to sell your soul:")} `,
54
+ match: "YOLO",
55
+ reject: " That's not YOLO. The devil is disappointed.",
56
+ },
57
+ ];
58
+
59
+ const LOADING = [
60
+ "Removing safety rails...",
61
+ "Shredding permission prompts...",
62
+ 'Teaching Claude to stop saying "shall I proceed?"...',
63
+ "Summoning autonomous energy...",
64
+ ];
65
+
66
+ function ask(prompt, match) {
67
+ const rl = createInterface({ input: process.stdin, output: process.stdout });
68
+ return new Promise((resolve) => {
69
+ rl.question(prompt, (answer) => {
70
+ rl.close();
71
+ resolve(match ? answer.trim() === match : answer.trim().toLowerCase() === "y");
72
+ });
73
+ });
74
+ }
75
+
76
+ async function loading() {
77
+ for (const msg of LOADING) {
78
+ process.stdout.write(`\n ${r(">")} ${msg}`);
79
+ await sleep(500);
80
+ process.stdout.write(` ${g("done")}`);
81
+ }
82
+ console.log();
83
+ }
84
+
85
+ async function main() {
86
+ const args = process.argv.slice(2);
87
+
88
+ if (args.includes("--help") || args.includes("-h")) {
89
+ console.log(`
90
+ ${br("claude-accept")} — Devil Mode for Claude Code
91
+
92
+ ${b("Usage:")} claude-accept [claude-args...]
93
+
94
+ All arguments are passed directly to claude.
95
+
96
+ ${b("Examples:")}
97
+ claude-accept Interactive devil mode
98
+ claude-accept -p "refactor all" Non-interactive devil mode
99
+
100
+ ${b("Options:")}
101
+ --help, -h Show this help
102
+ --version, -v Show version
103
+ `);
104
+ process.exit(0);
105
+ }
106
+
107
+ if (args.includes("--version") || args.includes("-v")) {
108
+ const { default: pkg } = await import("../package.json", { with: { type: "json" } });
109
+ console.log(`claude-accept v${pkg.version}`);
110
+ process.exit(0);
111
+ }
112
+
113
+ try {
114
+ execSync("which claude", { stdio: "ignore" });
115
+ } catch {
116
+ console.error(r("\n Error: claude CLI not found in PATH."));
117
+ console.error(
118
+ " Install it first: https://docs.anthropic.com/en/docs/claude-code\n"
119
+ );
120
+ process.exit(1);
121
+ }
122
+
123
+ if (!process.stdin.isTTY) {
124
+ console.error(r("\n Devil Mode requires an interactive terminal.\n"));
125
+ process.exit(1);
126
+ }
127
+
128
+ console.clear();
129
+ console.log(HEADER);
130
+ console.log(WHAT_IT_DOES);
131
+
132
+ for (const { prompt, reject, match } of STEPS) {
133
+ const ok = await ask(prompt, match);
134
+ if (!ok) {
135
+ console.log(`\n${reject}\n`);
136
+ process.exit(0);
137
+ }
138
+ console.log();
139
+ }
140
+
141
+ await loading();
142
+ console.log(`\n ${br("Devil Mode activated. God speed.")}\n`);
143
+ await sleep(400);
144
+
145
+ const claudeArgs = [
146
+ "--dangerously-skip-permissions",
147
+ "--append-system-prompt",
148
+ SYSTEM_PROMPT,
149
+ ...args,
150
+ ];
151
+
152
+ const child = spawn("claude", claudeArgs, {
153
+ stdio: "inherit",
154
+ env: process.env,
155
+ });
156
+
157
+ child.on("exit", (code) => process.exit(code ?? 0));
158
+ child.on("error", (err) => {
159
+ console.error(r(`\n Failed to launch claude: ${err.message}\n`));
160
+ process.exit(1);
161
+ });
162
+ }
163
+
164
+ process.on("SIGINT", () => {
165
+ console.log(`\n\n ${g("Smart choice. Your files breathe a sigh of relief.")}\n`);
166
+ process.exit(0);
167
+ });
168
+
169
+ main();
package/package.json ADDED
@@ -0,0 +1,34 @@
1
+ {
2
+ "name": "claude-accept",
3
+ "version": "1.0.0",
4
+ "description": "Devil Mode for Claude Code. No permissions. No questions. Just vibes.",
5
+ "type": "module",
6
+ "bin": {
7
+ "claude-accept": "./bin/cli.js"
8
+ },
9
+ "files": [
10
+ "bin"
11
+ ],
12
+ "keywords": [
13
+ "claude",
14
+ "claude-code",
15
+ "cli",
16
+ "devil-mode",
17
+ "yolo",
18
+ "ai",
19
+ "anthropic"
20
+ ],
21
+ "author": "KLABS00",
22
+ "license": "MIT",
23
+ "repository": {
24
+ "type": "git",
25
+ "url": "git+https://github.com/KLABS00/claude-accept.git"
26
+ },
27
+ "homepage": "https://github.com/KLABS00/claude-accept#readme",
28
+ "bugs": {
29
+ "url": "https://github.com/KLABS00/claude-accept/issues"
30
+ },
31
+ "engines": {
32
+ "node": ">=18"
33
+ }
34
+ }