opencode-claude-auth 0.1.0 → 0.2.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.
- package/README.md +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +23 -1
- package/dist/index.js.map +1 -1
- package/installation.md +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# opencode-claude-auth
|
|
2
2
|
|
|
3
|
+
[](https://www.npmjs.com/package/opencode-claude-auth)
|
|
4
|
+
|
|
3
5
|
OpenCode plugin that uses your existing Claude Code credentials — no separate login needed.
|
|
4
6
|
|
|
5
7
|
## How it works
|
|
@@ -26,7 +28,7 @@ Fetch https://raw.githubusercontent.com/griffinmartin/opencode-claude-auth/main/
|
|
|
26
28
|
### Manual install
|
|
27
29
|
|
|
28
30
|
```bash
|
|
29
|
-
npm install
|
|
31
|
+
npm install opencode-claude-auth
|
|
30
32
|
```
|
|
31
33
|
|
|
32
34
|
Then add to the `plugin` array in your `opencode.json`:
|
|
@@ -37,8 +39,6 @@ Then add to the `plugin` array in your `opencode.json`:
|
|
|
37
39
|
}
|
|
38
40
|
```
|
|
39
41
|
|
|
40
|
-
> npm package coming soon. Until then, install directly from GitHub.
|
|
41
|
-
|
|
42
42
|
## Usage
|
|
43
43
|
|
|
44
44
|
Just run OpenCode. The plugin reads your Claude Code credentials automatically and handles token refresh in the background.
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAY,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAY,MAAM,qBAAqB,CAAA;AAqF3D,QAAA,MAAM,MAAM,EAAE,MAuDb,CAAA;AAED,eAAe,MAAM,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,29 @@
|
|
|
1
1
|
import { execSync } from "node:child_process";
|
|
2
|
-
import { readFileSync } from "node:fs";
|
|
2
|
+
import { existsSync, readFileSync, writeFileSync } from "node:fs";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
4
|
import { dirname, join } from "node:path";
|
|
5
|
+
import { homedir } from "node:os";
|
|
5
6
|
import { readClaudeCredentials } from "./keychain.js";
|
|
7
|
+
function clearOpencodeAuth() {
|
|
8
|
+
const authPaths = [
|
|
9
|
+
join(homedir(), ".local", "share", "opencode", "auth.json"),
|
|
10
|
+
join(process.env.APPDATA ?? homedir(), "opencode", "auth.json"),
|
|
11
|
+
join(homedir(), ".opencode", "auth.json"),
|
|
12
|
+
];
|
|
13
|
+
for (const path of authPaths) {
|
|
14
|
+
try {
|
|
15
|
+
if (existsSync(path)) {
|
|
16
|
+
const raw = readFileSync(path, "utf-8");
|
|
17
|
+
const auth = JSON.parse(raw);
|
|
18
|
+
delete auth.anthropic;
|
|
19
|
+
writeFileSync(path, JSON.stringify(auth), "utf-8");
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
// Non-fatal: may not have write permissions
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
6
27
|
function refreshViaCli() {
|
|
7
28
|
try {
|
|
8
29
|
execSync("claude -p . --model claude-haiku-4-5-20250514", {
|
|
@@ -61,6 +82,7 @@ const plugin = async (input) => {
|
|
|
61
82
|
const auth = {
|
|
62
83
|
provider: "anthropic",
|
|
63
84
|
loader: async (_getAuth, _provider) => {
|
|
85
|
+
clearOpencodeAuth();
|
|
64
86
|
const initialCreds = readClaudeCredentials();
|
|
65
87
|
if (!initialCreds) {
|
|
66
88
|
throw new Error("opencode-claude-auth: Claude Code credentials not found. " +
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/installation.md
CHANGED
|
@@ -45,7 +45,7 @@ This will prompt you to log in and store credentials in Keychain (macOS) or `~/.
|
|
|
45
45
|
### Step 1: Install the package
|
|
46
46
|
|
|
47
47
|
```bash
|
|
48
|
-
npm install
|
|
48
|
+
npm install opencode-claude-auth
|
|
49
49
|
```
|
|
50
50
|
|
|
51
51
|
### Step 2: Add to OpenCode configuration
|