@makerbi/openclaude 0.14.2 → 0.14.3
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 +6 -6
- package/dist/cli.mjs +98 -80
- package/dist/sdk.mjs +27 -27
- package/package.json +2 -1
- package/src/entrypoints/sdk.d.ts +1 -1
package/README.md
CHANGED
|
@@ -4,9 +4,9 @@ OpenClaude is an open-source coding-agent CLI for cloud and local model provider
|
|
|
4
4
|
|
|
5
5
|
Use OpenAI-compatible APIs, Gemini, GitHub Models, Codex OAuth, Codex, Ollama, Atomic Chat, and other supported backends while keeping one terminal-first workflow: prompts, tools, agents, MCP, slash commands, and streaming output.
|
|
6
6
|
|
|
7
|
-
[](https://github.com/
|
|
7
|
+
[](https://github.com/AndersonBY/openclaude/actions/workflows/pr-checks.yml)
|
|
8
|
+
[](https://github.com/AndersonBY/openclaude/tags)
|
|
9
|
+
[](https://github.com/AndersonBY/openclaude/discussions)
|
|
10
10
|
[](SECURITY.md)
|
|
11
11
|
[](LICENSE)
|
|
12
12
|
|
|
@@ -65,7 +65,7 @@ OpenClaude is also mirrored to GitLawb:
|
|
|
65
65
|
### Install
|
|
66
66
|
|
|
67
67
|
```bash
|
|
68
|
-
npm install -g @
|
|
68
|
+
npm install -g @makerbi/openclaude
|
|
69
69
|
```
|
|
70
70
|
|
|
71
71
|
If the install later reports `ripgrep not found`, install ripgrep system-wide and confirm `rg --version` works in the same terminal before starting OpenClaude.
|
|
@@ -347,8 +347,8 @@ If you believe you found a security issue, see [SECURITY.md](SECURITY.md).
|
|
|
347
347
|
|
|
348
348
|
## Community
|
|
349
349
|
|
|
350
|
-
- Use [GitHub Discussions](https://github.com/
|
|
351
|
-
- Use [GitHub Issues](https://github.com/
|
|
350
|
+
- Use [GitHub Discussions](https://github.com/AndersonBY/openclaude/discussions) for Q&A, ideas, and community conversation
|
|
351
|
+
- Use [GitHub Issues](https://github.com/AndersonBY/openclaude/issues) for confirmed bugs and actionable feature work
|
|
352
352
|
|
|
353
353
|
## Contributing
|
|
354
354
|
|
package/dist/cli.mjs
CHANGED
|
@@ -148392,7 +148392,7 @@ async function _executeApiKeyHelper(isNonInteractiveSession) {
|
|
|
148392
148392
|
if (isApiKeyHelperFromProjectOrLocalSettings()) {
|
|
148393
148393
|
const hasTrust = checkHasTrustDialogAccepted();
|
|
148394
148394
|
if (!hasTrust && !isNonInteractiveSession) {
|
|
148395
|
-
const error41 = new Error(`Security: apiKeyHelper executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/
|
|
148395
|
+
const error41 = new Error(`Security: apiKeyHelper executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/AndersonBY/openclaude/issues"}.`);
|
|
148396
148396
|
logAntError("apiKeyHelper invoked before trust check", error41);
|
|
148397
148397
|
logEvent("tengu_apiKeyHelper_missing_trust11", {});
|
|
148398
148398
|
return null;
|
|
@@ -148436,7 +148436,7 @@ async function runAwsAuthRefresh() {
|
|
|
148436
148436
|
if (isAwsAuthRefreshFromProjectSettings()) {
|
|
148437
148437
|
const hasTrust = checkHasTrustDialogAccepted();
|
|
148438
148438
|
if (!hasTrust && !getIsNonInteractiveSession()) {
|
|
148439
|
-
const error41 = new Error(`Security: awsAuthRefresh executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/
|
|
148439
|
+
const error41 = new Error(`Security: awsAuthRefresh executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/AndersonBY/openclaude/issues"}.`);
|
|
148440
148440
|
logAntError("awsAuthRefresh invoked before trust check", error41);
|
|
148441
148441
|
logEvent("tengu_awsAuthRefresh_missing_trust", {});
|
|
148442
148442
|
return false;
|
|
@@ -148496,7 +148496,7 @@ async function getAwsCredsFromCredentialExport() {
|
|
|
148496
148496
|
if (isAwsCredentialExportFromProjectSettings()) {
|
|
148497
148497
|
const hasTrust = checkHasTrustDialogAccepted();
|
|
148498
148498
|
if (!hasTrust && !getIsNonInteractiveSession()) {
|
|
148499
|
-
const error41 = new Error(`Security: awsCredentialExport executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/
|
|
148499
|
+
const error41 = new Error(`Security: awsCredentialExport executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/AndersonBY/openclaude/issues"}.`);
|
|
148500
148500
|
logAntError("awsCredentialExport invoked before trust check", error41);
|
|
148501
148501
|
logEvent("tengu_awsCredentialExport_missing_trust", {});
|
|
148502
148502
|
return null;
|
|
@@ -148581,7 +148581,7 @@ async function runGcpAuthRefresh() {
|
|
|
148581
148581
|
if (isGcpAuthRefreshFromProjectSettings()) {
|
|
148582
148582
|
const hasTrust = checkHasTrustDialogAccepted();
|
|
148583
148583
|
if (!hasTrust && !getIsNonInteractiveSession()) {
|
|
148584
|
-
const error41 = new Error("Security: gcpAuthRefresh executed before workspace trust is confirmed. If you see this message, post in https://github.com/
|
|
148584
|
+
const error41 = new Error("Security: gcpAuthRefresh executed before workspace trust is confirmed. If you see this message, post in https://github.com/AndersonBY/openclaude/issues.");
|
|
148585
148585
|
logAntError("gcpAuthRefresh invoked before trust check", error41);
|
|
148586
148586
|
logEvent("tengu_gcpAuthRefresh_missing_trust", {});
|
|
148587
148587
|
return false;
|
|
@@ -149962,7 +149962,7 @@ var init_metadata = __esm(() => {
|
|
|
149962
149962
|
isClaudeAiAuth: isClaudeAISubscriber(),
|
|
149963
149963
|
version: "99.0.0",
|
|
149964
149964
|
versionBase: getVersionBase(),
|
|
149965
|
-
buildTime: "2026-05-
|
|
149965
|
+
buildTime: "2026-05-26T06:37:11.139Z",
|
|
149966
149966
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
149967
149967
|
...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
|
|
149968
149968
|
githubEventName: process.env.GITHUB_EVENT_NAME,
|
|
@@ -164779,7 +164779,7 @@ function getClaudeCodeGuideBasePrompt() {
|
|
|
164779
164779
|
Complete the user's request by providing accurate, documentation-based guidance.`;
|
|
164780
164780
|
}
|
|
164781
164781
|
function getFeedbackGuideline() {
|
|
164782
|
-
return `- When you cannot find an answer or the feature doesn't exist, direct the user to ${"report the issue at https://github.com/
|
|
164782
|
+
return `- When you cannot find an answer or the feature doesn't exist, direct the user to ${"report the issue at https://github.com/AndersonBY/openclaude/issues"}`;
|
|
164783
164783
|
}
|
|
164784
164784
|
var CLAUDE_CODE_DOCS_MAP_URL = "https://code.claude.com/docs/en/claude_code_docs_map.md", CDP_DOCS_MAP_URL = "https://platform.claude.com/llms.txt", CLAUDE_CODE_GUIDE_AGENT_TYPE = "claude-code-guide", CLAUDE_CODE_GUIDE_AGENT;
|
|
164785
164785
|
var init_claudeCodeGuideAgent = __esm(() => {
|
|
@@ -185552,7 +185552,7 @@ function getMCPUserAgent() {
|
|
|
185552
185552
|
return `claude-code/${"99.0.0"}${suffix}`;
|
|
185553
185553
|
}
|
|
185554
185554
|
function getWebFetchUserAgent() {
|
|
185555
|
-
const supportUrl = getAPIProvider() === "firstParty" ? "https://support.anthropic.com/" : "https://github.com/
|
|
185555
|
+
const supportUrl = getAPIProvider() === "firstParty" ? "https://support.anthropic.com/" : "https://github.com/AndersonBY/openclaude";
|
|
185556
185556
|
return `Claude-User (${getClaudeCodeUserAgent()}; +${supportUrl})`;
|
|
185557
185557
|
}
|
|
185558
185558
|
function getAuthHeaders() {
|
|
@@ -226559,7 +226559,7 @@ async function getMcpHeadersFromHelper(serverName, config2) {
|
|
|
226559
226559
|
if ("scope" in config2 && isMcpServerFromProjectOrLocalSettings(config2) && !getIsNonInteractiveSession()) {
|
|
226560
226560
|
const hasTrust = checkHasTrustDialogAccepted();
|
|
226561
226561
|
if (!hasTrust) {
|
|
226562
|
-
const error42 = new Error(`Security: headersHelper for MCP server '${serverName}' executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/
|
|
226562
|
+
const error42 = new Error(`Security: headersHelper for MCP server '${serverName}' executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/AndersonBY/openclaude/issues"}.`);
|
|
226563
226563
|
logAntError("MCP headersHelper invoked before trust check", error42);
|
|
226564
226564
|
logEvent("tengu_mcp_headersHelper_missing_trust", {});
|
|
226565
226565
|
return null;
|
|
@@ -282964,7 +282964,7 @@ async function getLatestVersion() {
|
|
|
282964
282964
|
async function getNpmDistTags() {
|
|
282965
282965
|
return { latest: null, stable: null };
|
|
282966
282966
|
}
|
|
282967
|
-
async function
|
|
282967
|
+
async function getLatestVersionFromGitHubReleases() {
|
|
282968
282968
|
return null;
|
|
282969
282969
|
}
|
|
282970
282970
|
async function getGcsDistTags() {
|
|
@@ -283038,7 +283038,7 @@ async function installOrUpdateClaudePackage(channel, specificVersion) {
|
|
|
283038
283038
|
return "install_failed";
|
|
283039
283039
|
}
|
|
283040
283040
|
const versionSpec = specificVersion ? specificVersion : channel === "stable" ? "stable" : "latest";
|
|
283041
|
-
const result = await execFileNoThrowWithCwd("npm", ["install", `${"@
|
|
283041
|
+
const result = await execFileNoThrowWithCwd("npm", ["install", `${"@makerbi/openclaude"}@${versionSpec}`], { cwd: getLocalInstallDir(), maxBuffer: 1e6 });
|
|
283042
283042
|
if (result.code !== 0) {
|
|
283043
283043
|
const error42 = new Error(`Failed to install Claude CLI package: ${result.stderr}`);
|
|
283044
283044
|
logError2(error42);
|
|
@@ -283471,7 +283471,7 @@ async function detectMultipleInstallations() {
|
|
|
283471
283471
|
}
|
|
283472
283472
|
const packagesToCheck = ["@anthropic-ai/claude-code"];
|
|
283473
283473
|
if (true) {
|
|
283474
|
-
packagesToCheck.push("@
|
|
283474
|
+
packagesToCheck.push("@makerbi/openclaude");
|
|
283475
283475
|
}
|
|
283476
283476
|
const npmResult = await execFileNoThrow("npm", [
|
|
283477
283477
|
"-g",
|
|
@@ -283667,7 +283667,7 @@ async function getDoctorDiagnostic() {
|
|
|
283667
283667
|
if (install.type === "npm-global") {
|
|
283668
283668
|
let uninstallCmd = "npm -g uninstall @anthropic-ai/claude-code";
|
|
283669
283669
|
if (true) {
|
|
283670
|
-
uninstallCmd += ` && npm -g uninstall ${"@
|
|
283670
|
+
uninstallCmd += ` && npm -g uninstall ${"@makerbi/openclaude"}`;
|
|
283671
283671
|
}
|
|
283672
283672
|
warnings.push({
|
|
283673
283673
|
issue: `Leftover npm global installation at ${install.path}`,
|
|
@@ -283774,6 +283774,18 @@ var init_xdg = () => {};
|
|
|
283774
283774
|
import { createHash as createHash12 } from "crypto";
|
|
283775
283775
|
import { chmod as chmod4, writeFile as writeFile12 } from "fs/promises";
|
|
283776
283776
|
import { join as join60 } from "path";
|
|
283777
|
+
function normalizeReleaseTag(version2) {
|
|
283778
|
+
return version2.startsWith("v") ? version2 : `v${version2}`;
|
|
283779
|
+
}
|
|
283780
|
+
function normalizeReleaseVersion(tagName) {
|
|
283781
|
+
return tagName.startsWith("v") ? tagName.slice(1) : tagName;
|
|
283782
|
+
}
|
|
283783
|
+
function getGitHubReleaseAssetName(platform4) {
|
|
283784
|
+
return platform4.startsWith("win32") ? `claude-${platform4}.exe` : `claude-${platform4}`;
|
|
283785
|
+
}
|
|
283786
|
+
function isReleaseVersion(value) {
|
|
283787
|
+
return typeof value === "string" && /^v?\d+\.\d+\.\d+(-\S+)?$/.test(value);
|
|
283788
|
+
}
|
|
283777
283789
|
async function getLatestVersionFromArtifactory(tag2 = "latest") {
|
|
283778
283790
|
if (!ARTIFACTORY_REGISTRY_URL) {
|
|
283779
283791
|
throw new Error("Internal artifactory registry URL is not configured");
|
|
@@ -283809,19 +283821,23 @@ async function getLatestVersionFromArtifactory(tag2 = "latest") {
|
|
|
283809
283821
|
const latestVersion = stdout.trim();
|
|
283810
283822
|
return latestVersion;
|
|
283811
283823
|
}
|
|
283812
|
-
async function
|
|
283824
|
+
async function getLatestVersionFromGitHubReleases2(channel = "latest") {
|
|
283813
283825
|
const startTime = Date.now();
|
|
283826
|
+
const releaseUrl = channel === "latest" ? `${GITHUB_RELEASES_API_URL}/latest` : `${GITHUB_RELEASES_API_URL}?per_page=20`;
|
|
283814
283827
|
try {
|
|
283815
|
-
const response = await axios_default.get(
|
|
283828
|
+
const response = await axios_default.get(releaseUrl, {
|
|
283816
283829
|
timeout: 30000,
|
|
283817
|
-
responseType: "
|
|
283818
|
-
...authConfig
|
|
283830
|
+
responseType: "json"
|
|
283819
283831
|
});
|
|
283820
283832
|
const latencyMs = Date.now() - startTime;
|
|
283833
|
+
const tagName = channel === "latest" ? response.data?.tag_name : Array.isArray(response.data) ? response.data.find((release) => release && !release.draft && !release.prerelease && isReleaseVersion(release.tag_name))?.tag_name : null;
|
|
283834
|
+
if (!isReleaseVersion(tagName)) {
|
|
283835
|
+
throw new Error(`GitHub ${channel} release response did not include a valid tag_name`);
|
|
283836
|
+
}
|
|
283821
283837
|
logEvent("tengu_version_check_success", {
|
|
283822
283838
|
latency_ms: latencyMs
|
|
283823
283839
|
});
|
|
283824
|
-
return
|
|
283840
|
+
return normalizeReleaseVersion(tagName.trim());
|
|
283825
283841
|
} catch (error42) {
|
|
283826
283842
|
const latencyMs = Date.now() - startTime;
|
|
283827
283843
|
const errorMessage2 = error42 instanceof Error ? error42.message : String(error42);
|
|
@@ -283834,7 +283850,7 @@ async function getLatestVersionFromBinaryRepo(channel = "latest", baseUrl, authC
|
|
|
283834
283850
|
http_status: httpStatus,
|
|
283835
283851
|
is_timeout: errorMessage2.includes("timeout")
|
|
283836
283852
|
});
|
|
283837
|
-
const fetchError = new Error(`Failed to fetch
|
|
283853
|
+
const fetchError = new Error(`Failed to fetch ${channel} GitHub release from ${releaseUrl}: ${errorMessage2}`);
|
|
283838
283854
|
logError2(fetchError);
|
|
283839
283855
|
throw fetchError;
|
|
283840
283856
|
}
|
|
@@ -283855,7 +283871,7 @@ async function getLatestVersion2(channelOrVersion) {
|
|
|
283855
283871
|
const npmTag = channel === "stable" ? "stable" : "latest";
|
|
283856
283872
|
return getLatestVersionFromArtifactory(npmTag);
|
|
283857
283873
|
}
|
|
283858
|
-
return
|
|
283874
|
+
return getLatestVersionFromGitHubReleases2(channel);
|
|
283859
283875
|
}
|
|
283860
283876
|
async function downloadVersionFromArtifactory(version2, stagingPath) {
|
|
283861
283877
|
if (!ARTIFACTORY_REGISTRY_URL) {
|
|
@@ -283990,18 +284006,19 @@ async function downloadAndVerifyBinary(binaryUrl, expectedChecksum, binaryPath,
|
|
|
283990
284006
|
}
|
|
283991
284007
|
throw lastError ?? new Error("Download failed after all retries");
|
|
283992
284008
|
}
|
|
283993
|
-
async function
|
|
284009
|
+
async function downloadVersionFromGitHubRelease(version2, stagingPath) {
|
|
283994
284010
|
const fs2 = getFsImplementation();
|
|
283995
284011
|
await fs2.rm(stagingPath, { recursive: true, force: true });
|
|
283996
284012
|
const platform4 = getPlatform2();
|
|
284013
|
+
const tag2 = normalizeReleaseTag(version2);
|
|
283997
284014
|
const startTime = Date.now();
|
|
283998
284015
|
logEvent("tengu_binary_download_attempt", {});
|
|
283999
284016
|
let manifest;
|
|
284017
|
+
const manifestUrl = `${GITHUB_RELEASE_DOWNLOAD_BASE_URL}/${tag2}/manifest.json`;
|
|
284000
284018
|
try {
|
|
284001
|
-
const manifestResponse = await axios_default.get(
|
|
284019
|
+
const manifestResponse = await axios_default.get(manifestUrl, {
|
|
284002
284020
|
timeout: 1e4,
|
|
284003
|
-
responseType: "json"
|
|
284004
|
-
...authConfig
|
|
284021
|
+
responseType: "json"
|
|
284005
284022
|
});
|
|
284006
284023
|
manifest = manifestResponse.data;
|
|
284007
284024
|
} catch (error42) {
|
|
@@ -284016,7 +284033,7 @@ async function downloadVersionFromBinaryRepo(version2, stagingPath, baseUrl, aut
|
|
|
284016
284033
|
http_status: httpStatus,
|
|
284017
284034
|
is_timeout: errorMessage2.includes("timeout")
|
|
284018
284035
|
});
|
|
284019
|
-
logError2(new Error(`Failed to fetch manifest from ${
|
|
284036
|
+
logError2(new Error(`Failed to fetch manifest from ${manifestUrl}: ${errorMessage2}`));
|
|
284020
284037
|
throw error42;
|
|
284021
284038
|
}
|
|
284022
284039
|
const platformInfo = manifest.platforms[platform4];
|
|
@@ -284025,12 +284042,13 @@ async function downloadVersionFromBinaryRepo(version2, stagingPath, baseUrl, aut
|
|
|
284025
284042
|
throw new Error(`Platform ${platform4} not found in manifest for version ${version2}`);
|
|
284026
284043
|
}
|
|
284027
284044
|
const expectedChecksum = platformInfo.checksum;
|
|
284045
|
+
const assetName = platformInfo.asset ?? getGitHubReleaseAssetName(platform4);
|
|
284046
|
+
const binaryUrl = `${GITHUB_RELEASE_DOWNLOAD_BASE_URL}/${tag2}/${encodeURIComponent(assetName)}`;
|
|
284028
284047
|
const binaryName = getBinaryName(platform4);
|
|
284029
|
-
const binaryUrl = `${baseUrl}/${version2}/${platform4}/${binaryName}`;
|
|
284030
284048
|
await fs2.mkdir(stagingPath);
|
|
284031
284049
|
const binaryPath = join60(stagingPath, binaryName);
|
|
284032
284050
|
try {
|
|
284033
|
-
await downloadAndVerifyBinary(binaryUrl, expectedChecksum, binaryPath
|
|
284051
|
+
await downloadAndVerifyBinary(binaryUrl, expectedChecksum, binaryPath);
|
|
284034
284052
|
const latencyMs = Date.now() - startTime;
|
|
284035
284053
|
logEvent("tengu_binary_download_success", {
|
|
284036
284054
|
latency_ms: latencyMs
|
|
@@ -284058,10 +284076,10 @@ async function downloadVersion(version2, stagingPath) {
|
|
|
284058
284076
|
await downloadVersionFromArtifactory(version2, stagingPath);
|
|
284059
284077
|
return "npm";
|
|
284060
284078
|
}
|
|
284061
|
-
await
|
|
284079
|
+
await downloadVersionFromGitHubRelease(version2, stagingPath);
|
|
284062
284080
|
return "binary";
|
|
284063
284081
|
}
|
|
284064
|
-
var
|
|
284082
|
+
var GITHUB_RELEASES_API_URL = "https://api.github.com/repos/AndersonBY/openclaude/releases", GITHUB_RELEASE_DOWNLOAD_BASE_URL = "https://github.com/AndersonBY/openclaude/releases/download", ARTIFACTORY_REGISTRY_URL, DEFAULT_STALL_TIMEOUT_MS = 60000, MAX_DOWNLOAD_RETRIES = 3, StallTimeoutError;
|
|
284065
284083
|
var init_download = __esm(() => {
|
|
284066
284084
|
init_axios2();
|
|
284067
284085
|
init_debug();
|
|
@@ -285349,7 +285367,7 @@ async function cleanupNpmInstallations() {
|
|
|
285349
285367
|
errors4.push(codePackageResult.error);
|
|
285350
285368
|
}
|
|
285351
285369
|
if (true) {
|
|
285352
|
-
const macroPackageResult = await attemptNpmUninstall("@
|
|
285370
|
+
const macroPackageResult = await attemptNpmUninstall("@makerbi/openclaude");
|
|
285353
285371
|
if (macroPackageResult.success) {
|
|
285354
285372
|
removed++;
|
|
285355
285373
|
if (macroPackageResult.warning) {
|
|
@@ -381682,7 +381700,7 @@ function getAttributionTexts() {
|
|
|
381682
381700
|
apiProvider,
|
|
381683
381701
|
isInternalRepo: isInternalModelRepoCached()
|
|
381684
381702
|
});
|
|
381685
|
-
const defaultAttribution = "\uD83E\uDD16 Generated with [OpenClaude](https://github.com/
|
|
381703
|
+
const defaultAttribution = "\uD83E\uDD16 Generated with [OpenClaude](https://github.com/AndersonBY/openclaude)";
|
|
381686
381704
|
const coAuthorEmail = getDefaultCommitCoAuthorEmail(apiProvider);
|
|
381687
381705
|
const defaultCommit = isEnvTruthy(process.env.OPENCLAUDE_DISABLE_CO_AUTHORED_BY) ? "" : `Co-Authored-By: ${modelName} <${coAuthorEmail}>`;
|
|
381688
381706
|
const settings = getInitialSettings();
|
|
@@ -381812,7 +381830,7 @@ async function getEnhancedPRAttribution(getAppState) {
|
|
|
381812
381830
|
if (settings.includeCoAuthoredBy === false) {
|
|
381813
381831
|
return "";
|
|
381814
381832
|
}
|
|
381815
|
-
const defaultAttribution = "\uD83E\uDD16 Generated with [OpenClaude](https://github.com/
|
|
381833
|
+
const defaultAttribution = "\uD83E\uDD16 Generated with [OpenClaude](https://github.com/AndersonBY/openclaude)";
|
|
381816
381834
|
const appState = getAppState();
|
|
381817
381835
|
logForDebugging(`PR Attribution: appState.attribution exists: ${!!appState.attribution}`);
|
|
381818
381836
|
if (appState.attribution) {
|
|
@@ -381835,7 +381853,7 @@ async function getEnhancedPRAttribution(getAppState) {
|
|
|
381835
381853
|
return defaultAttribution;
|
|
381836
381854
|
}
|
|
381837
381855
|
const memSuffix = memoryAccessCount > 0 ? `, ${memoryAccessCount} ${memoryAccessCount === 1 ? "memory" : "memories"} recalled` : "";
|
|
381838
|
-
const summary = `\uD83E\uDD16 Generated with [OpenClaude](https://github.com/
|
|
381856
|
+
const summary = `\uD83E\uDD16 Generated with [OpenClaude](https://github.com/AndersonBY/openclaude) (${claudePercent}% ${promptCount}-shotted by ${shortModelName}${memSuffix})`;
|
|
381839
381857
|
if (false) {}
|
|
381840
381858
|
logForDebugging(`PR Attribution: returning summary: ${summary}`);
|
|
381841
381859
|
return summary;
|
|
@@ -389329,7 +389347,7 @@ function getAnthropicEnvMetadata() {
|
|
|
389329
389347
|
function getBuildAgeMinutes() {
|
|
389330
389348
|
if (false)
|
|
389331
389349
|
;
|
|
389332
|
-
const buildTime = new Date("2026-05-
|
|
389350
|
+
const buildTime = new Date("2026-05-26T06:37:11.139Z").getTime();
|
|
389333
389351
|
if (isNaN(buildTime))
|
|
389334
389352
|
return;
|
|
389335
389353
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -405856,7 +405874,7 @@ function getAssistantMessageFromError(error42, model2, options2) {
|
|
|
405856
405874
|
if (process.env.USER_TYPE === "ant") {
|
|
405857
405875
|
const baseMessage = `API Error: 400 ${error42.message}
|
|
405858
405876
|
|
|
405859
|
-
Run /share and post the JSON file to ${"https://github.com/
|
|
405877
|
+
Run /share and post the JSON file to ${"https://github.com/AndersonBY/openclaude/issues"}.`;
|
|
405860
405878
|
const rewindInstruction = getIsNonInteractiveSession() ? "" : " Then, use /rewind to recover the conversation.";
|
|
405861
405879
|
return createAssistantAPIErrorMessage({
|
|
405862
405880
|
content: baseMessage + rewindInstruction,
|
|
@@ -405892,7 +405910,7 @@ Run /share and post the JSON file to ${"https://github.com/Gitlawb/openclaude/is
|
|
|
405892
405910
|
if (process.env.USER_TYPE === "ant" && !process.env.ANTHROPIC_MODEL && error42 instanceof Error && error42.message.toLowerCase().includes("invalid model name")) {
|
|
405893
405911
|
const orgId = getOauthAccountInfo()?.organizationUuid;
|
|
405894
405912
|
const baseMsg = `[internal] Your org isn't gated into the \`${model2}\` model. Either run \`claude\` with \`ANTHROPIC_MODEL=${getDefaultMainLoopModelSetting()}\``;
|
|
405895
|
-
const msg = orgId ? `${baseMsg} or share your orgId (${orgId}) in ${"https://github.com/
|
|
405913
|
+
const msg = orgId ? `${baseMsg} or share your orgId (${orgId}) in ${"https://github.com/AndersonBY/openclaude/issues"} for help getting access.` : `${baseMsg} or reach out in ${"https://github.com/AndersonBY/openclaude/issues"} for help getting access.`;
|
|
405896
405914
|
return createAssistantAPIErrorMessage({
|
|
405897
405915
|
content: msg,
|
|
405898
405916
|
error: "invalid_request"
|
|
@@ -414310,7 +414328,7 @@ async function submitFeedback(data, signal) {
|
|
|
414310
414328
|
};
|
|
414311
414329
|
}
|
|
414312
414330
|
}
|
|
414313
|
-
var import_react97, jsx_dev_runtime166, GITHUB_URL_LIMIT = 7250, GITHUB_ISSUES_REPO_URL = "https://github.com/
|
|
414331
|
+
var import_react97, jsx_dev_runtime166, GITHUB_URL_LIMIT = 7250, GITHUB_ISSUES_REPO_URL = "https://github.com/AndersonBY/openclaude/issues";
|
|
414314
414332
|
var init_Feedback = __esm(() => {
|
|
414315
414333
|
init_axios2();
|
|
414316
414334
|
init_state();
|
|
@@ -417468,7 +417486,7 @@ function buildPrimarySection() {
|
|
|
417468
417486
|
}, undefined, false, undefined, this);
|
|
417469
417487
|
return [{
|
|
417470
417488
|
label: "Version",
|
|
417471
|
-
value: "0.14.
|
|
417489
|
+
value: "0.14.3"
|
|
417472
417490
|
}, {
|
|
417473
417491
|
label: "Session name",
|
|
417474
417492
|
value: nameValue
|
|
@@ -432363,9 +432381,9 @@ function getReleaseTagUrl(version2 = publicBuildVersion) {
|
|
|
432363
432381
|
return `${OPENCLAUDE_RELEASES_URL}/tag/v${normalizePublicVersion(version2)}`;
|
|
432364
432382
|
}
|
|
432365
432383
|
function getPublicBuildVersion() {
|
|
432366
|
-
return "0.14.
|
|
432384
|
+
return "0.14.3";
|
|
432367
432385
|
}
|
|
432368
|
-
var import_semver9, OPENCLAUDE_RELEASES_URL = "https://github.com/
|
|
432386
|
+
var import_semver9, OPENCLAUDE_RELEASES_URL = "https://github.com/AndersonBY/openclaude/releases", fallbackBuildVersion, publicBuildVersion;
|
|
432369
432387
|
var init_version = __esm(() => {
|
|
432370
432388
|
import_semver9 = __toESM(require_semver2(), 1);
|
|
432371
432389
|
fallbackBuildVersion = (() => {
|
|
@@ -433229,7 +433247,7 @@ function HelpV2(t0) {
|
|
|
433229
433247
|
"For more help:",
|
|
433230
433248
|
" ",
|
|
433231
433249
|
/* @__PURE__ */ jsx_dev_runtime213.jsxDEV(Link, {
|
|
433232
|
-
url: "https://github.com/
|
|
433250
|
+
url: "https://github.com/AndersonBY/openclaude"
|
|
433233
433251
|
}, undefined, false, undefined, this)
|
|
433234
433252
|
]
|
|
433235
433253
|
}, undefined, true, undefined, this)
|
|
@@ -444561,7 +444579,7 @@ function MCPSettings(t0) {
|
|
|
444561
444579
|
return;
|
|
444562
444580
|
}
|
|
444563
444581
|
if (servers.length === 0 && agentMcpServers.length === 0) {
|
|
444564
|
-
onComplete("No MCP servers configured. Please run /doctor if this is unexpected. Otherwise, run `openclaude mcp --help` or visit https://github.com/
|
|
444582
|
+
onComplete("No MCP servers configured. Please run /doctor if this is unexpected. Otherwise, run `openclaude mcp --help` or visit https://github.com/AndersonBY/openclaude to learn more.");
|
|
444565
444583
|
}
|
|
444566
444584
|
};
|
|
444567
444585
|
t8 = [servers.length, filteredClients.length, agentMcpServers.length, onComplete];
|
|
@@ -459401,7 +459419,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = publicBuil
|
|
|
459401
459419
|
releaseNotes
|
|
459402
459420
|
};
|
|
459403
459421
|
}
|
|
459404
|
-
var import_semver10, MAX_RELEASE_NOTES_SHOWN = 5, RELEASES_API_URL = "https://api.github.com/repos/
|
|
459422
|
+
var import_semver10, MAX_RELEASE_NOTES_SHOWN = 5, RELEASES_API_URL = "https://api.github.com/repos/AndersonBY/openclaude/releases?per_page=10", SECTION_HEADER_PREFIX = "__section__:", changelogMemoryCache = null;
|
|
459405
459423
|
var init_releaseNotes = __esm(() => {
|
|
459406
459424
|
init_axios2();
|
|
459407
459425
|
init_state();
|
|
@@ -489376,7 +489394,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
489376
489394
|
var call66 = async () => {
|
|
489377
489395
|
return {
|
|
489378
489396
|
type: "text",
|
|
489379
|
-
value: `${"99.0.0"} (built ${"2026-05-
|
|
489397
|
+
value: `${"99.0.0"} (built ${"2026-05-26T06:37:11.139Z"})`
|
|
489380
489398
|
};
|
|
489381
489399
|
}, version2, version_default;
|
|
489382
489400
|
var init_version2 = __esm(() => {
|
|
@@ -512527,7 +512545,7 @@ function getSimpleDoingTasksSection() {
|
|
|
512527
512545
|
];
|
|
512528
512546
|
const userHelpSubitems = [
|
|
512529
512547
|
`/help: Get help with using OpenClaude`,
|
|
512530
|
-
`To give feedback, users should ${"report the issue at https://github.com/
|
|
512548
|
+
`To give feedback, users should ${"report the issue at https://github.com/AndersonBY/openclaude/issues"}`
|
|
512531
512549
|
];
|
|
512532
512550
|
const items = [
|
|
512533
512551
|
`The user will primarily request you to perform software engineering tasks. These may include solving bugs, adding new functionality, refactoring code, explaining code, and more. When given an unclear or generic instruction, consider it in the context of these software engineering tasks and the current working directory. For example, if the user asks you to change "methodName" to snake case, do not reply with just "method_name", instead find the method in the code and modify the code.`,
|
|
@@ -512860,7 +512878,7 @@ function getFunctionResultClearingSection(model2) {
|
|
|
512860
512878
|
|
|
512861
512879
|
Old tool results will be automatically cleared from context to free up space. The ${config3.keepRecent} most recent results are always kept.`;
|
|
512862
512880
|
}
|
|
512863
|
-
var getCachedMCConfigForFRC, DISCOVER_SKILLS_TOOL_NAME = null, CLAUDE_CODE_DOCS_MAP_URL2 = "https://github.com/
|
|
512881
|
+
var getCachedMCConfigForFRC, DISCOVER_SKILLS_TOOL_NAME = null, CLAUDE_CODE_DOCS_MAP_URL2 = "https://github.com/AndersonBY/openclaude", SYSTEM_PROMPT_DYNAMIC_BOUNDARY = "__SYSTEM_PROMPT_DYNAMIC_BOUNDARY__", FRONTIER_MODEL_NAME = "Claude Opus 4.7", DEFAULT_AGENT_PROMPT = `You are an agent for OpenClaude, an open-source coding agent and CLI. Given the user's message, you should use the tools available to complete the task. Complete the task fully—don't gold-plate, but don't leave it half-done. When you complete the task, respond with a concise report covering what was done and any key findings — the caller will relay this to the user, so it only needs the essentials.`, SUMMARIZE_TOOL_RESULTS_SECTION = `When working with tool results, write down any important information you might need later in your response, as the original tool result may be cleared later.`;
|
|
512864
512882
|
var init_prompts4 = __esm(() => {
|
|
512865
512883
|
init_env();
|
|
512866
512884
|
init_git();
|
|
@@ -519100,7 +519118,7 @@ function detectStubLeaks() {
|
|
|
519100
519118
|
];
|
|
519101
519119
|
for (const { name, mod } of criticalImports) {
|
|
519102
519120
|
if ("__stub" in mod && mod.__stub === true) {
|
|
519103
|
-
throw new Error(`SDK init error: "${name}" resolved to a build stub at runtime. ` + `This means a TUI/CLI dependency leaked into the SDK bundle. ` + `Report this at https://github.com/
|
|
519121
|
+
throw new Error(`SDK init error: "${name}" resolved to a build stub at runtime. ` + `This means a TUI/CLI dependency leaked into the SDK bundle. ` + `Report this at https://github.com/AndersonBY/openclaude/issues`);
|
|
519104
519122
|
}
|
|
519105
519123
|
}
|
|
519106
519124
|
}
|
|
@@ -521834,7 +521852,7 @@ function printStartupScreen(modelOverride) {
|
|
|
521834
521852
|
const sLen = ` ● ${sL} Ready — type /help to begin`.length;
|
|
521835
521853
|
out.push(boxRow(sRow, W2, sLen, BORDER));
|
|
521836
521854
|
out.push(`${ansiRgb(...BORDER)}╚${"═".repeat(W2 - 2)}╝${RESET2}`);
|
|
521837
|
-
out.push(` ${DIM2}${ansiRgb(...DIMCOL)}openclaude ${RESET2}${ansiRgb(...ACCENT)}v${"0.14.
|
|
521855
|
+
out.push(` ${DIM2}${ansiRgb(...DIMCOL)}openclaude ${RESET2}${ansiRgb(...ACCENT)}v${"0.14.3"}${RESET2}`);
|
|
521838
521856
|
out.push("");
|
|
521839
521857
|
process.stdout.write(out.join(`
|
|
521840
521858
|
`) + `
|
|
@@ -540619,7 +540637,7 @@ function AutoUpdater({
|
|
|
540619
540637
|
" ",
|
|
540620
540638
|
/* @__PURE__ */ jsx_dev_runtime407.jsxDEV(ThemedText, {
|
|
540621
540639
|
bold: true,
|
|
540622
|
-
children: hasLocalInstall ? `cd ~/.openclaude/local && npm update ${"@
|
|
540640
|
+
children: hasLocalInstall ? `cd ~/.openclaude/local && npm update ${"@makerbi/openclaude"}` : `npm i -g ${"@makerbi/openclaude"}`
|
|
540623
540641
|
}, undefined, false, undefined, this)
|
|
540624
540642
|
]
|
|
540625
540643
|
}, undefined, true, undefined, this)
|
|
@@ -540830,7 +540848,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
540830
540848
|
}
|
|
540831
540849
|
const [channel, pm] = await Promise.all([Promise.resolve(getInitialSettings()?.autoUpdatesChannel ?? "latest"), getPackageManager()]);
|
|
540832
540850
|
setPackageManager(pm);
|
|
540833
|
-
let latest = await
|
|
540851
|
+
let latest = await getLatestVersionFromGitHubReleases(channel);
|
|
540834
540852
|
const maxVersion = await getMaxVersion();
|
|
540835
540853
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
540836
540854
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
@@ -566248,7 +566266,7 @@ async function _temp224() {
|
|
|
566248
566266
|
priority: "high"
|
|
566249
566267
|
};
|
|
566250
566268
|
}
|
|
566251
|
-
var NPM_DEPRECATION_MESSAGE = "OpenClaude has switched from npm to the native installer. Run `openclaude install` or see https://github.com/
|
|
566269
|
+
var NPM_DEPRECATION_MESSAGE = "OpenClaude has switched from npm to the native installer. Run `openclaude install` or see https://github.com/AndersonBY/openclaude#quick-start for more options.";
|
|
566252
566270
|
var init_useNpmDeprecationNotification = __esm(() => {
|
|
566253
566271
|
init_doctorDiagnostic();
|
|
566254
566272
|
init_envUtils();
|
|
@@ -573145,7 +573163,7 @@ function WelcomeV2() {
|
|
|
573145
573163
|
dimColor: true,
|
|
573146
573164
|
children: [
|
|
573147
573165
|
"v",
|
|
573148
|
-
"0.14.
|
|
573166
|
+
"0.14.3",
|
|
573149
573167
|
" "
|
|
573150
573168
|
]
|
|
573151
573169
|
}, undefined, true, undefined, this)
|
|
@@ -573345,7 +573363,7 @@ function WelcomeV2() {
|
|
|
573345
573363
|
dimColor: true,
|
|
573346
573364
|
children: [
|
|
573347
573365
|
"v",
|
|
573348
|
-
"0.14.
|
|
573366
|
+
"0.14.3",
|
|
573349
573367
|
" "
|
|
573350
573368
|
]
|
|
573351
573369
|
}, undefined, true, undefined, this)
|
|
@@ -573571,7 +573589,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
573571
573589
|
dimColor: true,
|
|
573572
573590
|
children: [
|
|
573573
573591
|
"v",
|
|
573574
|
-
"0.14.
|
|
573592
|
+
"0.14.3",
|
|
573575
573593
|
" "
|
|
573576
573594
|
]
|
|
573577
573595
|
}, undefined, true, undefined, this);
|
|
@@ -573825,7 +573843,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
573825
573843
|
dimColor: true,
|
|
573826
573844
|
children: [
|
|
573827
573845
|
"v",
|
|
573828
|
-
"0.14.
|
|
573846
|
+
"0.14.3",
|
|
573829
573847
|
" "
|
|
573830
573848
|
]
|
|
573831
573849
|
}, undefined, true, undefined, this);
|
|
@@ -591370,10 +591388,10 @@ __export(exports_update, {
|
|
|
591370
591388
|
async function update() {
|
|
591371
591389
|
if (getAPIProvider() !== "firstParty") {
|
|
591372
591390
|
writeToStdout(source_default.yellow(`Auto-update is not available for third-party provider builds.
|
|
591373
|
-
`) + `Current version: ${"0.14.
|
|
591391
|
+
`) + `Current version: ${"0.14.3"}
|
|
591374
591392
|
|
|
591375
591393
|
` + `To update, reinstall from npm:
|
|
591376
|
-
` + source_default.bold(` npm install -g ${"@
|
|
591394
|
+
` + source_default.bold(` npm install -g ${"@makerbi/openclaude"}@latest`) + `
|
|
591377
591395
|
|
|
591378
591396
|
` + `Or, if you built from source, pull and rebuild:
|
|
591379
591397
|
` + source_default.bold(" git pull && bun install && bun run build") + `
|
|
@@ -591381,7 +591399,7 @@ async function update() {
|
|
|
591381
591399
|
await gracefulShutdown(0);
|
|
591382
591400
|
}
|
|
591383
591401
|
logEvent("tengu_update_check", {});
|
|
591384
|
-
writeToStdout(`Current version: ${"0.14.
|
|
591402
|
+
writeToStdout(`Current version: ${"0.14.3"}
|
|
591385
591403
|
`);
|
|
591386
591404
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
591387
591405
|
writeToStdout(`Checking for updates to ${channel} version...
|
|
@@ -591454,7 +591472,7 @@ async function update() {
|
|
|
591454
591472
|
`);
|
|
591455
591473
|
writeToStdout(`Or reinstall from npm:
|
|
591456
591474
|
`);
|
|
591457
|
-
writeToStdout(source_default.bold(` npm install -g ${"@
|
|
591475
|
+
writeToStdout(source_default.bold(` npm install -g ${"@makerbi/openclaude"}@latest`) + `
|
|
591458
591476
|
`);
|
|
591459
591477
|
await gracefulShutdown(0);
|
|
591460
591478
|
}
|
|
@@ -591466,8 +591484,8 @@ async function update() {
|
|
|
591466
591484
|
writeToStdout(`Claude is managed by Homebrew.
|
|
591467
591485
|
`);
|
|
591468
591486
|
const latest = await getLatestVersion(channel);
|
|
591469
|
-
if (latest && !gte("0.14.
|
|
591470
|
-
writeToStdout(`Update available: ${"0.14.
|
|
591487
|
+
if (latest && !gte("0.14.3", latest)) {
|
|
591488
|
+
writeToStdout(`Update available: ${"0.14.3"} → ${latest}
|
|
591471
591489
|
`);
|
|
591472
591490
|
writeToStdout(`
|
|
591473
591491
|
`);
|
|
@@ -591483,8 +591501,8 @@ async function update() {
|
|
|
591483
591501
|
writeToStdout(`Claude is managed by winget.
|
|
591484
591502
|
`);
|
|
591485
591503
|
const latest = await getLatestVersion(channel);
|
|
591486
|
-
if (latest && !gte("0.14.
|
|
591487
|
-
writeToStdout(`Update available: ${"0.14.
|
|
591504
|
+
if (latest && !gte("0.14.3", latest)) {
|
|
591505
|
+
writeToStdout(`Update available: ${"0.14.3"} → ${latest}
|
|
591488
591506
|
`);
|
|
591489
591507
|
writeToStdout(`
|
|
591490
591508
|
`);
|
|
@@ -591500,8 +591518,8 @@ async function update() {
|
|
|
591500
591518
|
writeToStdout(`Claude is managed by apk.
|
|
591501
591519
|
`);
|
|
591502
591520
|
const latest = await getLatestVersion(channel);
|
|
591503
|
-
if (latest && !gte("0.14.
|
|
591504
|
-
writeToStdout(`Update available: ${"0.14.
|
|
591521
|
+
if (latest && !gte("0.14.3", latest)) {
|
|
591522
|
+
writeToStdout(`Update available: ${"0.14.3"} → ${latest}
|
|
591505
591523
|
`);
|
|
591506
591524
|
writeToStdout(`
|
|
591507
591525
|
`);
|
|
@@ -591566,11 +591584,11 @@ async function update() {
|
|
|
591566
591584
|
`);
|
|
591567
591585
|
await gracefulShutdown(1);
|
|
591568
591586
|
}
|
|
591569
|
-
if (result.latestVersion === "0.14.
|
|
591570
|
-
writeToStdout(source_default.green(`OpenClaude is up to date (${"0.14.
|
|
591587
|
+
if (result.latestVersion === "0.14.3") {
|
|
591588
|
+
writeToStdout(source_default.green(`OpenClaude is up to date (${"0.14.3"})`) + `
|
|
591571
591589
|
`);
|
|
591572
591590
|
} else {
|
|
591573
|
-
writeToStdout(source_default.green(`Successfully updated from ${"0.14.
|
|
591591
|
+
writeToStdout(source_default.green(`Successfully updated from ${"0.14.3"} to version ${result.latestVersion}`) + `
|
|
591574
591592
|
`);
|
|
591575
591593
|
await regenerateCompletionCache();
|
|
591576
591594
|
}
|
|
@@ -591589,9 +591607,9 @@ async function update() {
|
|
|
591589
591607
|
await removeInstalledSymlink();
|
|
591590
591608
|
}
|
|
591591
591609
|
logForDebugging("update: Checking npm registry for latest version");
|
|
591592
|
-
logForDebugging(`update: Package URL: ${"@
|
|
591610
|
+
logForDebugging(`update: Package URL: ${"@makerbi/openclaude"}`);
|
|
591593
591611
|
const npmTag = channel === "stable" ? "stable" : "latest";
|
|
591594
|
-
const npmCommand = `npm view ${"@
|
|
591612
|
+
const npmCommand = `npm view ${"@makerbi/openclaude"}@${npmTag} version`;
|
|
591595
591613
|
logForDebugging(`update: Running: ${npmCommand}`);
|
|
591596
591614
|
const latestVersion = await getLatestVersion(channel);
|
|
591597
591615
|
logForDebugging(`update: Latest version from npm: ${latestVersion || "FAILED"}`);
|
|
@@ -591611,7 +591629,7 @@ async function update() {
|
|
|
591611
591629
|
`);
|
|
591612
591630
|
process.stderr.write(` • Corporate proxy/firewall blocking npm
|
|
591613
591631
|
`);
|
|
591614
|
-
if (!"@
|
|
591632
|
+
if (!"@makerbi/openclaude".startsWith("@anthropic")) {
|
|
591615
591633
|
process.stderr.write(` • Internal/development build not published to npm
|
|
591616
591634
|
`);
|
|
591617
591635
|
}
|
|
@@ -591623,19 +591641,19 @@ async function update() {
|
|
|
591623
591641
|
`);
|
|
591624
591642
|
process.stderr.write(` • Run with --debug flag for more details
|
|
591625
591643
|
`);
|
|
591626
|
-
const packageName = "@
|
|
591644
|
+
const packageName = "@makerbi/openclaude";
|
|
591627
591645
|
process.stderr.write(` • Manually check: npm view ${packageName} version
|
|
591628
591646
|
`);
|
|
591629
591647
|
process.stderr.write(` • Check if you need to login: npm whoami
|
|
591630
591648
|
`);
|
|
591631
591649
|
await gracefulShutdown(1);
|
|
591632
591650
|
}
|
|
591633
|
-
if (latestVersion === "0.14.
|
|
591634
|
-
writeToStdout(source_default.green(`OpenClaude is up to date (${"0.14.
|
|
591651
|
+
if (latestVersion === "0.14.3") {
|
|
591652
|
+
writeToStdout(source_default.green(`OpenClaude is up to date (${"0.14.3"})`) + `
|
|
591635
591653
|
`);
|
|
591636
591654
|
await gracefulShutdown(0);
|
|
591637
591655
|
}
|
|
591638
|
-
writeToStdout(`New version available: ${latestVersion} (current: ${"0.14.
|
|
591656
|
+
writeToStdout(`New version available: ${latestVersion} (current: ${"0.14.3"})
|
|
591639
591657
|
`);
|
|
591640
591658
|
writeToStdout(`Installing update...
|
|
591641
591659
|
`);
|
|
@@ -591680,7 +591698,7 @@ async function update() {
|
|
|
591680
591698
|
logForDebugging(`update: Installation status: ${status2}`);
|
|
591681
591699
|
switch (status2) {
|
|
591682
591700
|
case "success":
|
|
591683
|
-
writeToStdout(source_default.green(`Successfully updated from ${"0.14.
|
|
591701
|
+
writeToStdout(source_default.green(`Successfully updated from ${"0.14.3"} to version ${latestVersion}`) + `
|
|
591684
591702
|
`);
|
|
591685
591703
|
await regenerateCompletionCache();
|
|
591686
591704
|
break;
|
|
@@ -591690,7 +591708,7 @@ async function update() {
|
|
|
591690
591708
|
if (useLocalUpdate) {
|
|
591691
591709
|
process.stderr.write(`Try manually updating with:
|
|
591692
591710
|
`);
|
|
591693
|
-
process.stderr.write(` cd ~/.openclaude/local && npm update ${"@
|
|
591711
|
+
process.stderr.write(` cd ~/.openclaude/local && npm update ${"@makerbi/openclaude"}
|
|
591694
591712
|
`);
|
|
591695
591713
|
} else {
|
|
591696
591714
|
process.stderr.write(`Try running with sudo or fix npm permissions
|
|
@@ -591706,7 +591724,7 @@ async function update() {
|
|
|
591706
591724
|
if (useLocalUpdate) {
|
|
591707
591725
|
process.stderr.write(`Try manually updating with:
|
|
591708
591726
|
`);
|
|
591709
|
-
process.stderr.write(` cd ~/.openclaude/local && npm update ${"@
|
|
591727
|
+
process.stderr.write(` cd ~/.openclaude/local && npm update ${"@makerbi/openclaude"}
|
|
591710
591728
|
`);
|
|
591711
591729
|
} else {
|
|
591712
591730
|
process.stderr.write(`Or consider using native installation with: openclaude install
|
|
@@ -593733,7 +593751,7 @@ Usage: openclaude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
593733
593751
|
pendingHookMessages
|
|
593734
593752
|
}, renderAndRun);
|
|
593735
593753
|
}
|
|
593736
|
-
}).version("0.14.
|
|
593754
|
+
}).version("0.14.3 (OpenClaude)", "-v, --version", "Output the version number");
|
|
593737
593755
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
593738
593756
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
593739
593757
|
if (canUserConfigureAdvisor()) {
|
|
@@ -594310,7 +594328,7 @@ if (false) {}
|
|
|
594310
594328
|
async function main2() {
|
|
594311
594329
|
const args = process.argv.slice(2);
|
|
594312
594330
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
594313
|
-
console.log(`${"0.14.
|
|
594331
|
+
console.log(`${"0.14.3"} (OpenClaude)`);
|
|
594314
594332
|
return;
|
|
594315
594333
|
}
|
|
594316
594334
|
if (args.includes("--provider")) {
|
|
@@ -594463,4 +594481,4 @@ async function main2() {
|
|
|
594463
594481
|
}
|
|
594464
594482
|
main2();
|
|
594465
594483
|
|
|
594466
|
-
//# debugId=
|
|
594484
|
+
//# debugId=8DBCEB0A9576171064756E2164756E21
|
package/dist/sdk.mjs
CHANGED
|
@@ -35454,7 +35454,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
35454
35454
|
if (!isAttributionHeaderEnabled()) {
|
|
35455
35455
|
return "";
|
|
35456
35456
|
}
|
|
35457
|
-
const version = `${"0.14.
|
|
35457
|
+
const version = `${"0.14.3"}.${fingerprint}`;
|
|
35458
35458
|
const entrypoint = process.env.CLAUDE_CODE_ENTRYPOINT ?? "unknown";
|
|
35459
35459
|
const cch = "";
|
|
35460
35460
|
const workload = getWorkload();
|
|
@@ -108025,7 +108025,7 @@ async function _executeApiKeyHelper(isNonInteractiveSession) {
|
|
|
108025
108025
|
if (isApiKeyHelperFromProjectOrLocalSettings()) {
|
|
108026
108026
|
const hasTrust = checkHasTrustDialogAccepted();
|
|
108027
108027
|
if (!hasTrust && !isNonInteractiveSession) {
|
|
108028
|
-
const error40 = new Error(`Security: apiKeyHelper executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/
|
|
108028
|
+
const error40 = new Error(`Security: apiKeyHelper executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/AndersonBY/openclaude/issues"}.`);
|
|
108029
108029
|
logAntError("apiKeyHelper invoked before trust check", error40);
|
|
108030
108030
|
logEvent("tengu_apiKeyHelper_missing_trust11", {});
|
|
108031
108031
|
return null;
|
|
@@ -108069,7 +108069,7 @@ async function runAwsAuthRefresh() {
|
|
|
108069
108069
|
if (isAwsAuthRefreshFromProjectSettings()) {
|
|
108070
108070
|
const hasTrust = checkHasTrustDialogAccepted();
|
|
108071
108071
|
if (!hasTrust && !getIsNonInteractiveSession()) {
|
|
108072
|
-
const error40 = new Error(`Security: awsAuthRefresh executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/
|
|
108072
|
+
const error40 = new Error(`Security: awsAuthRefresh executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/AndersonBY/openclaude/issues"}.`);
|
|
108073
108073
|
logAntError("awsAuthRefresh invoked before trust check", error40);
|
|
108074
108074
|
logEvent("tengu_awsAuthRefresh_missing_trust", {});
|
|
108075
108075
|
return false;
|
|
@@ -108129,7 +108129,7 @@ async function getAwsCredsFromCredentialExport() {
|
|
|
108129
108129
|
if (isAwsCredentialExportFromProjectSettings()) {
|
|
108130
108130
|
const hasTrust = checkHasTrustDialogAccepted();
|
|
108131
108131
|
if (!hasTrust && !getIsNonInteractiveSession()) {
|
|
108132
|
-
const error40 = new Error(`Security: awsCredentialExport executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/
|
|
108132
|
+
const error40 = new Error(`Security: awsCredentialExport executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/AndersonBY/openclaude/issues"}.`);
|
|
108133
108133
|
logAntError("awsCredentialExport invoked before trust check", error40);
|
|
108134
108134
|
logEvent("tengu_awsCredentialExport_missing_trust", {});
|
|
108135
108135
|
return null;
|
|
@@ -108214,7 +108214,7 @@ async function runGcpAuthRefresh() {
|
|
|
108214
108214
|
if (isGcpAuthRefreshFromProjectSettings()) {
|
|
108215
108215
|
const hasTrust = checkHasTrustDialogAccepted();
|
|
108216
108216
|
if (!hasTrust && !getIsNonInteractiveSession()) {
|
|
108217
|
-
const error40 = new Error("Security: gcpAuthRefresh executed before workspace trust is confirmed. If you see this message, post in https://github.com/
|
|
108217
|
+
const error40 = new Error("Security: gcpAuthRefresh executed before workspace trust is confirmed. If you see this message, post in https://github.com/AndersonBY/openclaude/issues.");
|
|
108218
108218
|
logAntError("gcpAuthRefresh invoked before trust check", error40);
|
|
108219
108219
|
logEvent("tengu_gcpAuthRefresh_missing_trust", {});
|
|
108220
108220
|
return false;
|
|
@@ -110698,7 +110698,7 @@ var init_metadata = __esm(() => {
|
|
|
110698
110698
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
110699
110699
|
WHITESPACE_REGEX = /\s+/;
|
|
110700
110700
|
getVersionBase = memoize_default(() => {
|
|
110701
|
-
const match = "0.14.
|
|
110701
|
+
const match = "0.14.3".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
110702
110702
|
return match ? match[0] : undefined;
|
|
110703
110703
|
});
|
|
110704
110704
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -110738,9 +110738,9 @@ var init_metadata = __esm(() => {
|
|
|
110738
110738
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
110739
110739
|
isClaudeCodeAction: isEnvTruthy(process.env.CLAUDE_CODE_ACTION),
|
|
110740
110740
|
isClaudeAiAuth: isClaudeAISubscriber(),
|
|
110741
|
-
version: "0.14.
|
|
110741
|
+
version: "0.14.3",
|
|
110742
110742
|
versionBase: getVersionBase(),
|
|
110743
|
-
buildTime: "2026-05-
|
|
110743
|
+
buildTime: "2026-05-26T06:37:12.710Z",
|
|
110744
110744
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
110745
110745
|
...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
|
|
110746
110746
|
githubEventName: process.env.GITHUB_EVENT_NAME,
|
|
@@ -118949,7 +118949,7 @@ var init_effort = __esm(() => {
|
|
|
118949
118949
|
|
|
118950
118950
|
// src/utils/userAgent.ts
|
|
118951
118951
|
function getClaudeCodeUserAgent() {
|
|
118952
|
-
return `claude-code/${"0.14.
|
|
118952
|
+
return `claude-code/${"0.14.3"}`;
|
|
118953
118953
|
}
|
|
118954
118954
|
|
|
118955
118955
|
// src/utils/http.ts
|
|
@@ -118958,7 +118958,7 @@ function getUserAgent() {
|
|
|
118958
118958
|
const clientApp = process.env.CLAUDE_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}` : "";
|
|
118959
118959
|
const workload = getWorkload();
|
|
118960
118960
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
118961
|
-
return `claude-cli/${"0.14.
|
|
118961
|
+
return `claude-cli/${"0.14.3"} (${process.env.USER_TYPE}, ${process.env.CLAUDE_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
118962
118962
|
}
|
|
118963
118963
|
function getMCPUserAgent() {
|
|
118964
118964
|
const parts = [];
|
|
@@ -118972,10 +118972,10 @@ function getMCPUserAgent() {
|
|
|
118972
118972
|
parts.push(`client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}`);
|
|
118973
118973
|
}
|
|
118974
118974
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
118975
|
-
return `claude-code/${"0.14.
|
|
118975
|
+
return `claude-code/${"0.14.3"}${suffix}`;
|
|
118976
118976
|
}
|
|
118977
118977
|
function getWebFetchUserAgent() {
|
|
118978
|
-
const supportUrl = getAPIProvider() === "firstParty" ? "https://support.anthropic.com/" : "https://github.com/
|
|
118978
|
+
const supportUrl = getAPIProvider() === "firstParty" ? "https://support.anthropic.com/" : "https://github.com/AndersonBY/openclaude";
|
|
118979
118979
|
return `Claude-User (${getClaudeCodeUserAgent()}; +${supportUrl})`;
|
|
118980
118980
|
}
|
|
118981
118981
|
var init_http2 = __esm(() => {
|
|
@@ -151379,7 +151379,7 @@ async function getMcpHeadersFromHelper(serverName, config2) {
|
|
|
151379
151379
|
if ("scope" in config2 && isMcpServerFromProjectOrLocalSettings(config2) && !getIsNonInteractiveSession()) {
|
|
151380
151380
|
const hasTrust = checkHasTrustDialogAccepted();
|
|
151381
151381
|
if (!hasTrust) {
|
|
151382
|
-
const error40 = new Error(`Security: headersHelper for MCP server '${serverName}' executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/
|
|
151382
|
+
const error40 = new Error(`Security: headersHelper for MCP server '${serverName}' executed before workspace trust is confirmed. If you see this message, post in ${"https://github.com/AndersonBY/openclaude/issues"}.`);
|
|
151383
151383
|
logAntError("MCP headersHelper invoked before trust check", error40);
|
|
151384
151384
|
logEvent("tengu_mcp_headersHelper_missing_trust", {});
|
|
151385
151385
|
return null;
|
|
@@ -154378,7 +154378,7 @@ function computeFingerprint(messageText, version2) {
|
|
|
154378
154378
|
}
|
|
154379
154379
|
function computeFingerprintFromMessages(messages) {
|
|
154380
154380
|
const firstMessageText = extractFirstMessageText(messages);
|
|
154381
|
-
return computeFingerprint(firstMessageText, "0.14.
|
|
154381
|
+
return computeFingerprint(firstMessageText, "0.14.3");
|
|
154382
154382
|
}
|
|
154383
154383
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
154384
154384
|
var init_fingerprint = () => {};
|
|
@@ -154420,7 +154420,7 @@ async function sideQuery(opts) {
|
|
|
154420
154420
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
154421
154421
|
}
|
|
154422
154422
|
const messageText = extractFirstUserMessageText(messages);
|
|
154423
|
-
const fingerprint = computeFingerprint(messageText, "0.14.
|
|
154423
|
+
const fingerprint = computeFingerprint(messageText, "0.14.3");
|
|
154424
154424
|
const attributionHeader = getAttributionHeader(fingerprint);
|
|
154425
154425
|
const systemBlocks = [
|
|
154426
154426
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -155665,7 +155665,7 @@ var init_client2 = __esm(() => {
|
|
|
155665
155665
|
const client = new Client({
|
|
155666
155666
|
name: "claude-code",
|
|
155667
155667
|
title: "OpenClaude",
|
|
155668
|
-
version: "0.14.
|
|
155668
|
+
version: "0.14.3",
|
|
155669
155669
|
description: "OpenClaude — coding-agent CLI for any LLM provider",
|
|
155670
155670
|
websiteUrl: PRODUCT_URL
|
|
155671
155671
|
}, {
|
|
@@ -164707,7 +164707,7 @@ function getAttributionTexts() {
|
|
|
164707
164707
|
apiProvider,
|
|
164708
164708
|
isInternalRepo: isInternalModelRepoCached()
|
|
164709
164709
|
});
|
|
164710
|
-
const defaultAttribution = "\uD83E\uDD16 Generated with [OpenClaude](https://github.com/
|
|
164710
|
+
const defaultAttribution = "\uD83E\uDD16 Generated with [OpenClaude](https://github.com/AndersonBY/openclaude)";
|
|
164711
164711
|
const coAuthorEmail = getDefaultCommitCoAuthorEmail(apiProvider);
|
|
164712
164712
|
const defaultCommit = isEnvTruthy(process.env.OPENCLAUDE_DISABLE_CO_AUTHORED_BY) ? "" : `Co-Authored-By: ${modelName} <${coAuthorEmail}>`;
|
|
164713
164713
|
const settings = getInitialSettings();
|
|
@@ -230973,7 +230973,7 @@ function getAnthropicEnvMetadata() {
|
|
|
230973
230973
|
function getBuildAgeMinutes() {
|
|
230974
230974
|
if (false)
|
|
230975
230975
|
;
|
|
230976
|
-
const buildTime = new Date("2026-05-
|
|
230976
|
+
const buildTime = new Date("2026-05-26T06:37:12.710Z").getTime();
|
|
230977
230977
|
if (isNaN(buildTime))
|
|
230978
230978
|
return;
|
|
230979
230979
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -239267,7 +239267,7 @@ function getClaudeCodeGuideBasePrompt() {
|
|
|
239267
239267
|
Complete the user's request by providing accurate, documentation-based guidance.`;
|
|
239268
239268
|
}
|
|
239269
239269
|
function getFeedbackGuideline() {
|
|
239270
|
-
return `- When you cannot find an answer or the feature doesn't exist, direct the user to ${"report the issue at https://github.com/
|
|
239270
|
+
return `- When you cannot find an answer or the feature doesn't exist, direct the user to ${"report the issue at https://github.com/AndersonBY/openclaude/issues"}`;
|
|
239271
239271
|
}
|
|
239272
239272
|
var CLAUDE_CODE_DOCS_MAP_URL = "https://code.claude.com/docs/en/claude_code_docs_map.md", CDP_DOCS_MAP_URL = "https://platform.claude.com/llms.txt", CLAUDE_CODE_GUIDE_AGENT_TYPE = "claude-code-guide", CLAUDE_CODE_GUIDE_AGENT;
|
|
239273
239273
|
var init_claudeCodeGuideAgent = __esm(() => {
|
|
@@ -253771,7 +253771,7 @@ function getAssistantMessageFromError(error41, model2, options2) {
|
|
|
253771
253771
|
if (process.env.USER_TYPE === "ant") {
|
|
253772
253772
|
const baseMessage = `API Error: 400 ${error41.message}
|
|
253773
253773
|
|
|
253774
|
-
Run /share and post the JSON file to ${"https://github.com/
|
|
253774
|
+
Run /share and post the JSON file to ${"https://github.com/AndersonBY/openclaude/issues"}.`;
|
|
253775
253775
|
const rewindInstruction = getIsNonInteractiveSession() ? "" : " Then, use /rewind to recover the conversation.";
|
|
253776
253776
|
return createAssistantAPIErrorMessage({
|
|
253777
253777
|
content: baseMessage + rewindInstruction,
|
|
@@ -253807,7 +253807,7 @@ Run /share and post the JSON file to ${"https://github.com/Gitlawb/openclaude/is
|
|
|
253807
253807
|
if (process.env.USER_TYPE === "ant" && !process.env.ANTHROPIC_MODEL && error41 instanceof Error && error41.message.toLowerCase().includes("invalid model name")) {
|
|
253808
253808
|
const orgId = getOauthAccountInfo()?.organizationUuid;
|
|
253809
253809
|
const baseMsg = `[internal] Your org isn't gated into the \`${model2}\` model. Either run \`claude\` with \`ANTHROPIC_MODEL=${getDefaultMainLoopModelSetting()}\``;
|
|
253810
|
-
const msg = orgId ? `${baseMsg} or share your orgId (${orgId}) in ${"https://github.com/
|
|
253810
|
+
const msg = orgId ? `${baseMsg} or share your orgId (${orgId}) in ${"https://github.com/AndersonBY/openclaude/issues"} for help getting access.` : `${baseMsg} or reach out in ${"https://github.com/AndersonBY/openclaude/issues"} for help getting access.`;
|
|
253811
253811
|
return createAssistantAPIErrorMessage({
|
|
253812
253812
|
content: msg,
|
|
253813
253813
|
error: "invalid_request"
|
|
@@ -264876,7 +264876,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
264876
264876
|
init_settings2();
|
|
264877
264877
|
init_slowOperations();
|
|
264878
264878
|
init_uuid();
|
|
264879
|
-
VERSION3 = typeof MACRO !== "undefined" ? "0.14.
|
|
264879
|
+
VERSION3 = typeof MACRO !== "undefined" ? "0.14.3" : "unknown";
|
|
264880
264880
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
264881
264881
|
SKIP_FIRST_PROMPT_PATTERN2 = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
264882
264882
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -266178,7 +266178,7 @@ var init_filesystem = __esm(() => {
|
|
|
266178
266178
|
});
|
|
266179
266179
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
266180
266180
|
const nonce = randomBytes7(16).toString("hex");
|
|
266181
|
-
return join80(getClaudeTempDir(), "bundled-skills", "0.14.
|
|
266181
|
+
return join80(getClaudeTempDir(), "bundled-skills", "0.14.3", nonce);
|
|
266182
266182
|
});
|
|
266183
266183
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
266184
266184
|
});
|
|
@@ -272100,7 +272100,7 @@ function getSimpleDoingTasksSection() {
|
|
|
272100
272100
|
];
|
|
272101
272101
|
const userHelpSubitems = [
|
|
272102
272102
|
`/help: Get help with using OpenClaude`,
|
|
272103
|
-
`To give feedback, users should ${"report the issue at https://github.com/
|
|
272103
|
+
`To give feedback, users should ${"report the issue at https://github.com/AndersonBY/openclaude/issues"}`
|
|
272104
272104
|
];
|
|
272105
272105
|
const items = [
|
|
272106
272106
|
`The user will primarily request you to perform software engineering tasks. These may include solving bugs, adding new functionality, refactoring code, explaining code, and more. When given an unclear or generic instruction, consider it in the context of these software engineering tasks and the current working directory. For example, if the user asks you to change "methodName" to snake case, do not reply with just "method_name", instead find the method in the code and modify the code.`,
|
|
@@ -281352,7 +281352,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
281352
281352
|
slash_commands: inputs.commands.filter((c7) => c7.userInvocable !== false).map((c7) => c7.name),
|
|
281353
281353
|
apiKeySource: getAnthropicApiKeyWithSource().source,
|
|
281354
281354
|
betas: getSdkBetas2(),
|
|
281355
|
-
claude_code_version: "0.14.
|
|
281355
|
+
claude_code_version: "0.14.3",
|
|
281356
281356
|
output_style: outputStyle,
|
|
281357
281357
|
agents: inputs.agents.map((agent2) => agent2.agentType),
|
|
281358
281358
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
|
|
@@ -285344,7 +285344,7 @@ function detectStubLeaks() {
|
|
|
285344
285344
|
];
|
|
285345
285345
|
for (const { name, mod } of criticalImports) {
|
|
285346
285346
|
if ("__stub" in mod && mod.__stub === true) {
|
|
285347
|
-
throw new Error(`SDK init error: "${name}" resolved to a build stub at runtime. ` + `This means a TUI/CLI dependency leaked into the SDK bundle. ` + `Report this at https://github.com/
|
|
285347
|
+
throw new Error(`SDK init error: "${name}" resolved to a build stub at runtime. ` + `This means a TUI/CLI dependency leaked into the SDK bundle. ` + `Report this at https://github.com/AndersonBY/openclaude/issues`);
|
|
285348
285348
|
}
|
|
285349
285349
|
}
|
|
285350
285350
|
}
|
|
@@ -285404,4 +285404,4 @@ export {
|
|
|
285404
285404
|
AbortError
|
|
285405
285405
|
};
|
|
285406
285406
|
|
|
285407
|
-
//# debugId=
|
|
285407
|
+
//# debugId=ADF8CD9634C6302564756E2164756E21
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@makerbi/openclaude",
|
|
3
|
-
"version": "0.14.
|
|
3
|
+
"version": "0.14.3",
|
|
4
4
|
"description": "OpenClaude opens coding-agent workflows to any LLM — OpenAI, Gemini, DeepSeek, Ollama, and 200+ models",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
],
|
|
25
25
|
"scripts": {
|
|
26
26
|
"build": "bun run scripts/build.ts",
|
|
27
|
+
"build:native:manifest": "bun run scripts/native-release-manifest.ts native-dist",
|
|
27
28
|
"integrations:generate": "bun run scripts/generate-integrations-artifacts.ts",
|
|
28
29
|
"integrations:check": "bun run scripts/generate-integrations-artifacts.ts --check",
|
|
29
30
|
"dev": "bun run build && node dist/cli.mjs",
|
package/src/entrypoints/sdk.d.ts
CHANGED