@devboxer/cli 0.3.0 → 0.3.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 +1 -1
- package/dist/index.js +17 -10
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -153,5 +153,5 @@ The MCP server acts as a bridge between Claude Code and DevBoxer, allowing you t
|
|
|
153
153
|
|
|
154
154
|
## Support
|
|
155
155
|
|
|
156
|
-
- **Documentation**: [https://
|
|
156
|
+
- **Documentation**: [https://www.devboxer.com/docs](https://www.devboxer.com/docs)
|
|
157
157
|
- **Website**: [https://devboxer.com](https://devboxer.com)
|
package/dist/index.js
CHANGED
|
@@ -562,13 +562,16 @@ async function processSessionData(data, setProcessingStatus, onComplete, session
|
|
|
562
562
|
const cwd = process.cwd();
|
|
563
563
|
const cwdWithHyphens = cwd.replace(/\//g, "-");
|
|
564
564
|
setProcessingStatus(`Project directory: ${cwdWithHyphens}`);
|
|
565
|
-
|
|
565
|
+
const hasJsonl = !!(data.jsonl && data.jsonl.length > 0);
|
|
566
|
+
if (hasJsonl) {
|
|
566
567
|
const jsonlPath = await saveSessionData(
|
|
567
568
|
data.sessionId,
|
|
568
569
|
cwdWithHyphens,
|
|
569
570
|
data.jsonl
|
|
570
571
|
);
|
|
571
572
|
setProcessingStatus(`Saved session data to: ${jsonlPath}`);
|
|
573
|
+
} else {
|
|
574
|
+
setProcessingStatus(`No conversation history available for this session`);
|
|
572
575
|
}
|
|
573
576
|
setProcessingStatus(`Session ready: ${data.sessionId}`);
|
|
574
577
|
setTimeout(() => {
|
|
@@ -578,7 +581,8 @@ async function processSessionData(data, setProcessingStatus, onComplete, session
|
|
|
578
581
|
success: true,
|
|
579
582
|
gitRoot,
|
|
580
583
|
cwdWithHyphens,
|
|
581
|
-
sessionId: data.sessionId
|
|
584
|
+
sessionId: data.sessionId,
|
|
585
|
+
hasJsonl
|
|
582
586
|
};
|
|
583
587
|
} catch (err) {
|
|
584
588
|
return {
|
|
@@ -601,6 +605,7 @@ function PullCommand({
|
|
|
601
605
|
const [completedSessionId, setCompletedSessionId] = useState3(
|
|
602
606
|
null
|
|
603
607
|
);
|
|
608
|
+
const [jsonlAvailable, setJsonlAvailable] = useState3(true);
|
|
604
609
|
const repoQuery = useCurrentGitHubRepo();
|
|
605
610
|
const currentRepo = repoQuery.data;
|
|
606
611
|
const {
|
|
@@ -618,15 +623,17 @@ function PullCommand({
|
|
|
618
623
|
(sessionId) => {
|
|
619
624
|
setCompletedSessionId(sessionId);
|
|
620
625
|
setIsProcessing(false);
|
|
621
|
-
if (resume) {
|
|
622
|
-
setTimeout(() => {
|
|
623
|
-
launchClaude(sessionId);
|
|
624
|
-
}, 100);
|
|
625
|
-
}
|
|
626
626
|
},
|
|
627
627
|
sessionOnly
|
|
628
628
|
);
|
|
629
|
-
if (
|
|
629
|
+
if (result.success) {
|
|
630
|
+
setJsonlAvailable(!!result.hasJsonl);
|
|
631
|
+
if (resume && result.hasJsonl && result.sessionId) {
|
|
632
|
+
setTimeout(() => {
|
|
633
|
+
launchClaude(result.sessionId);
|
|
634
|
+
}, 1100);
|
|
635
|
+
}
|
|
636
|
+
} else {
|
|
630
637
|
setProcessingError(result.error || "Unknown error during processing");
|
|
631
638
|
setIsProcessing(false);
|
|
632
639
|
}
|
|
@@ -648,7 +655,7 @@ function PullCommand({
|
|
|
648
655
|
if (sessionFetchError) {
|
|
649
656
|
return /* @__PURE__ */ React3.createElement(Box3, { flexDirection: "column" }, /* @__PURE__ */ React3.createElement(Text3, { color: "red" }, "Error:", " ", sessionFetchError instanceof Error ? sessionFetchError.message : String(sessionFetchError)));
|
|
650
657
|
}
|
|
651
|
-
return /* @__PURE__ */ React3.createElement(Box3, { flexDirection: "column" }, /* @__PURE__ */ React3.createElement(Box3, null, isLoading ? /* @__PURE__ */ React3.createElement(React3.Fragment, null, /* @__PURE__ */ React3.createElement(Text3, null, /* @__PURE__ */ React3.createElement(Spinner2, { type: "dots" })), /* @__PURE__ */ React3.createElement(Text3, null, " Fetching session for task ", selectedThreadId, "...")) : sessionData ? /* @__PURE__ */ React3.createElement(Text3, { color: "green" }, "\u2713 Session fetched successfully") : /* @__PURE__ */ React3.createElement(Text3, { color: "red" }, "Error: No session data")), sessionData && !isLoading && /* @__PURE__ */ React3.createElement(Box3, { marginTop: 1, flexDirection: "column" }, /* @__PURE__ */ React3.createElement(Box3, null, /* @__PURE__ */ React3.createElement(Box3, { width: 15 }, /* @__PURE__ */ React3.createElement(Text3, { dimColor: true }, "Name")), /* @__PURE__ */ React3.createElement(Text3, null, sessionData.name)), /* @__PURE__ */ React3.createElement(Box3, null, /* @__PURE__ */ React3.createElement(Box3, { width: 15 }, /* @__PURE__ */ React3.createElement(Text3, { dimColor: true }, "Branch")), /* @__PURE__ */ React3.createElement(Text3, null, sessionData.branchName || "N/A")), /* @__PURE__ */ React3.createElement(Box3, null, /* @__PURE__ */ React3.createElement(Box3, { width: 15 }, /* @__PURE__ */ React3.createElement(Text3, { dimColor: true }, "Repository")), /* @__PURE__ */ React3.createElement(Text3, null, sessionData.githubRepoFullName || "N/A")), /* @__PURE__ */ React3.createElement(Box3, null, /* @__PURE__ */ React3.createElement(Box3, { width: 15 }, /* @__PURE__ */ React3.createElement(Text3, { dimColor: true }, "PR Number")), /* @__PURE__ */ React3.createElement(Text3, null, sessionData.githubPRNumber ? `#${sessionData.githubPRNumber}` : "N/A"))), processingError && /* @__PURE__ */ React3.createElement(Box3, { marginTop: 1, flexDirection: "column" }, /* @__PURE__ */ React3.createElement(Text3, { color: "red" }, "Error: ", processingError)), completedSessionId ? /* @__PURE__ */ React3.createElement(Box3, { marginTop: 1, flexDirection: "column" }, /* @__PURE__ */ React3.createElement(Text3, null, " "), resume ? /* @__PURE__ */ React3.createElement(Text3, { color: "green" }, "Launching Claude...") : sessionData?.agent === "claudeCode" ? /* @__PURE__ */ React3.createElement(React3.Fragment, null, /* @__PURE__ */ React3.createElement(Text3, { color: "yellow" }, "To continue this session, run:"), /* @__PURE__ */ React3.createElement(
|
|
658
|
+
return /* @__PURE__ */ React3.createElement(Box3, { flexDirection: "column" }, /* @__PURE__ */ React3.createElement(Box3, null, isLoading ? /* @__PURE__ */ React3.createElement(React3.Fragment, null, /* @__PURE__ */ React3.createElement(Text3, null, /* @__PURE__ */ React3.createElement(Spinner2, { type: "dots" })), /* @__PURE__ */ React3.createElement(Text3, null, " Fetching session for task ", selectedThreadId, "...")) : sessionData ? /* @__PURE__ */ React3.createElement(Text3, { color: "green" }, "\u2713 Session fetched successfully") : /* @__PURE__ */ React3.createElement(Text3, { color: "red" }, "Error: No session data")), sessionData && !isLoading && /* @__PURE__ */ React3.createElement(Box3, { marginTop: 1, flexDirection: "column" }, /* @__PURE__ */ React3.createElement(Box3, null, /* @__PURE__ */ React3.createElement(Box3, { width: 15 }, /* @__PURE__ */ React3.createElement(Text3, { dimColor: true }, "Name")), /* @__PURE__ */ React3.createElement(Text3, null, sessionData.name)), /* @__PURE__ */ React3.createElement(Box3, null, /* @__PURE__ */ React3.createElement(Box3, { width: 15 }, /* @__PURE__ */ React3.createElement(Text3, { dimColor: true }, "Branch")), /* @__PURE__ */ React3.createElement(Text3, null, sessionData.branchName || "N/A")), /* @__PURE__ */ React3.createElement(Box3, null, /* @__PURE__ */ React3.createElement(Box3, { width: 15 }, /* @__PURE__ */ React3.createElement(Text3, { dimColor: true }, "Repository")), /* @__PURE__ */ React3.createElement(Text3, null, sessionData.githubRepoFullName || "N/A")), /* @__PURE__ */ React3.createElement(Box3, null, /* @__PURE__ */ React3.createElement(Box3, { width: 15 }, /* @__PURE__ */ React3.createElement(Text3, { dimColor: true }, "PR Number")), /* @__PURE__ */ React3.createElement(Text3, null, sessionData.githubPRNumber ? `#${sessionData.githubPRNumber}` : "N/A"))), processingError && /* @__PURE__ */ React3.createElement(Box3, { marginTop: 1, flexDirection: "column" }, /* @__PURE__ */ React3.createElement(Text3, { color: "red" }, "Error: ", processingError)), completedSessionId ? /* @__PURE__ */ React3.createElement(Box3, { marginTop: 1, flexDirection: "column" }, /* @__PURE__ */ React3.createElement(Text3, null, " "), resume && !jsonlAvailable ? /* @__PURE__ */ React3.createElement(Text3, { color: "yellow" }, "No conversation history available \u2014 cannot resume session") : resume && jsonlAvailable ? /* @__PURE__ */ React3.createElement(Text3, { color: "green" }, "Launching Claude...") : sessionData?.agent === "claudeCode" ? /* @__PURE__ */ React3.createElement(React3.Fragment, null, /* @__PURE__ */ React3.createElement(Text3, { color: "yellow" }, "To continue this session, run:"), /* @__PURE__ */ React3.createElement(
|
|
652
659
|
Box3,
|
|
653
660
|
{
|
|
654
661
|
marginLeft: 2,
|
|
@@ -809,7 +816,7 @@ import updateNotifier from "update-notifier";
|
|
|
809
816
|
// package.json
|
|
810
817
|
var package_default = {
|
|
811
818
|
name: "@devboxer/cli",
|
|
812
|
-
version: "0.3.
|
|
819
|
+
version: "0.3.1",
|
|
813
820
|
type: "module",
|
|
814
821
|
bin: {
|
|
815
822
|
devboxer: "./dist/index.js"
|