lupacode 0.2.3 → 0.2.5
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/lupacode +1 -0
- package/dist/index.js +104 -29
- package/package.json +1 -1
package/bin/lupacode
CHANGED
package/dist/index.js
CHANGED
|
@@ -97260,6 +97260,57 @@ function InputBar({ onSubmit, disabled = false }) {
|
|
|
97260
97260
|
}, undefined, false, undefined, this)
|
|
97261
97261
|
}, undefined, false, undefined, this);
|
|
97262
97262
|
}
|
|
97263
|
+
// package.json
|
|
97264
|
+
var package_default2 = {
|
|
97265
|
+
name: "lupacode",
|
|
97266
|
+
version: "0.2.5",
|
|
97267
|
+
description: "AI-powered terminal coding assistant",
|
|
97268
|
+
type: "module",
|
|
97269
|
+
bin: {
|
|
97270
|
+
lupacode: "bin/lupacode"
|
|
97271
|
+
},
|
|
97272
|
+
files: [
|
|
97273
|
+
"bin/",
|
|
97274
|
+
"dist/",
|
|
97275
|
+
"README.md"
|
|
97276
|
+
],
|
|
97277
|
+
scripts: {
|
|
97278
|
+
dev: "bun run --watch src/index.tsx",
|
|
97279
|
+
build: 'bun build src/index.tsx --outdir dist --target bun --external "@opentui/core-*"',
|
|
97280
|
+
prepublishOnly: "bun run build",
|
|
97281
|
+
typecheck: "tsc -p tsconfig.json --noEmit"
|
|
97282
|
+
},
|
|
97283
|
+
engines: {
|
|
97284
|
+
bun: ">=1.0.0"
|
|
97285
|
+
},
|
|
97286
|
+
devDependencies: {
|
|
97287
|
+
"@types/bun": "latest",
|
|
97288
|
+
"@types/react": "^19.2.17"
|
|
97289
|
+
},
|
|
97290
|
+
peerDependencies: {
|
|
97291
|
+
typescript: "^5"
|
|
97292
|
+
},
|
|
97293
|
+
peerDependenciesMeta: {
|
|
97294
|
+
typescript: {
|
|
97295
|
+
optional: true
|
|
97296
|
+
}
|
|
97297
|
+
},
|
|
97298
|
+
dependencies: {
|
|
97299
|
+
"@ai-sdk/react": "^4.0.4",
|
|
97300
|
+
"@opentui/core": "^0.3.4",
|
|
97301
|
+
"@opentui/react": "^0.3.4",
|
|
97302
|
+
ai: "^7.0.3",
|
|
97303
|
+
"date-fns": "^4.4.0",
|
|
97304
|
+
dotenv: "^16.4.7",
|
|
97305
|
+
hono: "^4.12.26",
|
|
97306
|
+
open: "^11.0.0",
|
|
97307
|
+
"opentui-spinner": "^0.0.7",
|
|
97308
|
+
"pretty-ms": "^9.3.0",
|
|
97309
|
+
react: "^19.2.6",
|
|
97310
|
+
"react-router": "^8.0.1",
|
|
97311
|
+
zod: "^4.4.3"
|
|
97312
|
+
}
|
|
97313
|
+
};
|
|
97263
97314
|
|
|
97264
97315
|
// src/screens/home.tsx
|
|
97265
97316
|
function Home() {
|
|
@@ -97289,27 +97340,40 @@ function Home() {
|
|
|
97289
97340
|
}, undefined, false, undefined, this),
|
|
97290
97341
|
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("box", {
|
|
97291
97342
|
flexDirection: "row",
|
|
97292
|
-
|
|
97293
|
-
|
|
97294
|
-
marginLeft: "auto",
|
|
97343
|
+
justifyContent: "space-between",
|
|
97344
|
+
width: "100%",
|
|
97295
97345
|
children: [
|
|
97296
|
-
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
97297
|
-
children: "tab"
|
|
97298
|
-
}, undefined, false, undefined, this),
|
|
97299
|
-
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
97300
|
-
attributes: TextAttributes.DIM,
|
|
97301
|
-
children: "agents"
|
|
97302
|
-
}, undefined, false, undefined, this),
|
|
97303
|
-
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
97304
|
-
children: "\xB7"
|
|
97305
|
-
}, undefined, false, undefined, this),
|
|
97306
|
-
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
97307
|
-
children: "ctrl+d"
|
|
97308
|
-
}, undefined, false, undefined, this),
|
|
97309
97346
|
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
97310
97347
|
attributes: TextAttributes.DIM,
|
|
97311
|
-
children:
|
|
97312
|
-
|
|
97348
|
+
children: [
|
|
97349
|
+
"v",
|
|
97350
|
+
package_default2.version
|
|
97351
|
+
]
|
|
97352
|
+
}, undefined, true, undefined, this),
|
|
97353
|
+
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("box", {
|
|
97354
|
+
flexDirection: "row",
|
|
97355
|
+
gap: 1,
|
|
97356
|
+
flexShrink: 0,
|
|
97357
|
+
children: [
|
|
97358
|
+
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
97359
|
+
children: "tab"
|
|
97360
|
+
}, undefined, false, undefined, this),
|
|
97361
|
+
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
97362
|
+
attributes: TextAttributes.DIM,
|
|
97363
|
+
children: "agents"
|
|
97364
|
+
}, undefined, false, undefined, this),
|
|
97365
|
+
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
97366
|
+
children: "\xB7"
|
|
97367
|
+
}, undefined, false, undefined, this),
|
|
97368
|
+
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
97369
|
+
children: "ctrl+d"
|
|
97370
|
+
}, undefined, false, undefined, this),
|
|
97371
|
+
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
97372
|
+
attributes: TextAttributes.DIM,
|
|
97373
|
+
children: "domains"
|
|
97374
|
+
}, undefined, false, undefined, this)
|
|
97375
|
+
]
|
|
97376
|
+
}, undefined, true, undefined, this)
|
|
97313
97377
|
]
|
|
97314
97378
|
}, undefined, true, undefined, this)
|
|
97315
97379
|
]
|
|
@@ -97541,6 +97605,8 @@ function groupConsecutiveParts(parts) {
|
|
|
97541
97605
|
const groups = [];
|
|
97542
97606
|
for (let i = 0;i < parts.length; i++) {
|
|
97543
97607
|
const part = parts[i];
|
|
97608
|
+
if (part.type === "step-start")
|
|
97609
|
+
continue;
|
|
97544
97610
|
const lastGroup = groups[groups.length - 1];
|
|
97545
97611
|
if (lastGroup && isToolPart(part) && isToolPart(lastGroup.parts[0])) {
|
|
97546
97612
|
lastGroup.parts.push(part);
|
|
@@ -99747,17 +99813,26 @@ function SessionShell({
|
|
|
99747
99813
|
flexDirection: "row",
|
|
99748
99814
|
alignItems: "center",
|
|
99749
99815
|
gap: 2,
|
|
99750
|
-
children:
|
|
99751
|
-
|
|
99752
|
-
|
|
99753
|
-
|
|
99754
|
-
|
|
99755
|
-
|
|
99756
|
-
|
|
99757
|
-
|
|
99758
|
-
|
|
99759
|
-
|
|
99760
|
-
|
|
99816
|
+
children: [
|
|
99817
|
+
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
99818
|
+
attributes: TextAttributes.DIM,
|
|
99819
|
+
children: [
|
|
99820
|
+
"v",
|
|
99821
|
+
package_default2.version
|
|
99822
|
+
]
|
|
99823
|
+
}, undefined, true, undefined, this),
|
|
99824
|
+
loading ? /* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV(import_jsx_dev_runtime2.Fragment, {
|
|
99825
|
+
children: [
|
|
99826
|
+
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV(Spinner, {
|
|
99827
|
+
mode
|
|
99828
|
+
}, undefined, false, undefined, this),
|
|
99829
|
+
interruptible ? /* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("text", {
|
|
99830
|
+
children: "esc to interrupt"
|
|
99831
|
+
}, undefined, false, undefined, this) : null
|
|
99832
|
+
]
|
|
99833
|
+
}, undefined, true, undefined, this) : null
|
|
99834
|
+
]
|
|
99835
|
+
}, undefined, true, undefined, this),
|
|
99761
99836
|
/* @__PURE__ */ import_jsx_dev_runtime2.jsxDEV("box", {
|
|
99762
99837
|
flexDirection: "row",
|
|
99763
99838
|
gap: 1,
|