quackstack 1.0.27 → 1.0.29

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 CHANGED
@@ -165,9 +165,20 @@ quack --list-models
165
165
 
166
166
  ```bash
167
167
  $ quack
168
- Welcome to QuackStack!
168
+ …………………………………………………………………………………………………………………………………………………………………………
169
169
 
170
- Using: OpenAI - gpt-4o
170
+ ██████╗ ██╗ ██╗ █████╗ ██████╗██╗ ██╗███████╗████████╗ █████╗ ██████╗██╗ ██╗
171
+ ██╔═══██╗██║ ██║██╔══██╗██╔════╝██║ ██╔╝██╔════╝╚══██╔══╝██╔══██╗██╔════╝██║ ██╔╝
172
+ ██║ ██║██║ ██║███████║██║ █████╔╝ ███████╗ ██║ ███████║██║ █████╔╝
173
+ ██║▄▄██║██║ ██║██╔══██║██║ ██╔═██╗ ╚════██║ ██║ ██╔══██║██║ ██╔═██╗
174
+ ╚██████╔╝╚██████╔╝██║ ██║╚██████╗██║ ██╗███████║ ██║ ██║ ██║╚██████╗██║ ██╗
175
+ ╚══▀▀═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝
176
+
177
+ …………………………………………………………………………………………………………………………………………………………………………
178
+ ✨ Let's get started.
179
+
180
+ Using: OpenAI - gpt-5.3-codex
181
+ 💡 Tip: Type '/help' for commands or 'quack --list-models' to see all options
171
182
  Press Ctrl+C to exit
172
183
 
173
184
  Indexing your codebase...
package/dist/cli.cjs CHANGED
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  };
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  const commander_1 = require("commander");
8
- const chalk_animation_1 = __importDefault(require("chalk-animation"));
9
8
  const chalk_1 = __importDefault(require("chalk"));
10
9
  const repl_js_1 = require("./repl.js");
11
10
  const context_generator_js_1 = require("./lib/context-generator.js");
@@ -55,9 +54,6 @@ program
55
54
  console.log(chalk_1.default.white(" quack -p grok -m grok-4\n"));
56
55
  process.exit(0);
57
56
  }
58
- const title = chalk_animation_1.default.rainbow("QuackStack\n");
59
- await new Promise(res => setTimeout(res, 1500));
60
- title.stop();
61
57
  if (options.agent) {
62
58
  await (0, agents_js_1.generateAgentMd)(PROJECT_NAME);
63
59
  process.exit(0);
@@ -93,6 +93,7 @@ export class AIClient {
93
93
  provider: "anthropic",
94
94
  name: "Anthropic",
95
95
  models: [
96
+ "claude-sonnet-4-6-20260218",
96
97
  "claude-opus-4.6",
97
98
  "claude-opus-4-5-20251124",
98
99
  "claude-opus-4-1-20250805",
@@ -103,7 +104,7 @@ export class AIClient {
103
104
  "claude-3-7-sonnet-20250219",
104
105
  "claude-3-5-haiku-20241022"
105
106
  ],
106
- defaultModel: "claude-opus-4.6"
107
+ defaultModel: "claude-sonnet-4-6-20260218"
107
108
  });
108
109
  }
109
110
  if (process.env.QUACKSTACK_GEMINI_KEY) {
@@ -172,7 +173,7 @@ export class AIClient {
172
173
  getDefaultModel(provider) {
173
174
  const defaults = {
174
175
  openai: "gpt-5.2",
175
- anthropic: "claude-sonnet-4-5-20250929",
176
+ anthropic: "claude-sonnet-4-6-20260218",
176
177
  gemini: "gemini-3-pro",
177
178
  deepseek: "deepseek-chat",
178
179
  mistral: "mistral-large-latest",
package/dist/repl.js CHANGED
@@ -6,6 +6,24 @@ import { client } from "./lib/database.js";
6
6
  import path from "path";
7
7
  import { detectFileChanges, formatChangeMessage } from "./lib/file-change-detector.js";
8
8
  import { getAIClient, resetAIClient } from "./lib/ai-provider.js";
9
+ function displayGrandiosWelcome() {
10
+ const colors = [chalk.red, chalk.yellow, chalk.green, chalk.cyan, chalk.blue, chalk.magenta];
11
+ console.log("\n" + chalk.cyan("…".repeat(100)));
12
+ const asciiLines = [
13
+ " ██████╗ ██╗ ██╗ █████╗ ██████╗██╗ ██╗███████╗████████╗ █████╗ ██████╗██╗ ██╗",
14
+ " ██╔═══██╗██║ ██║██╔══██╗██╔════╝██║ ██╔╝██╔════╝╚══██╔══╝██╔══██╗██╔════╝██║ ██╔╝",
15
+ " ██║ ██║██║ ██║███████║██║ █████╔╝ ███████╗ ██║ ███████║██║ █████╔╝ ",
16
+ " ██║▄▄██║██║ ██║██╔══██║██║ ██╔═██╗ ╚════██║ ██║ ██╔══██║██║ ██╔═██╗ ",
17
+ " ╚██████╔╝╚██████╔╝██║ ██║╚██████╗██║ ██╗███████║ ██║ ██║ ██║╚██████╗██║ ██╗",
18
+ " ╚══▀▀═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝",
19
+ ];
20
+ console.log("");
21
+ asciiLines.forEach((line, idx) => {
22
+ console.log(colors[idx % colors.length].bold(line));
23
+ });
24
+ console.log("\n" + chalk.cyan("…".repeat(100)));
25
+ console.log(chalk.bold.white(" ✨ Let's get started.\n"));
26
+ }
9
27
  function wrapText(text, width = process.stdout.columns || 80) {
10
28
  const lines = [];
11
29
  const paragraphs = text.split('\n');
@@ -33,7 +51,7 @@ function wrapText(text, width = process.stdout.columns || 80) {
33
51
  }
34
52
  const PROJECT_NAME = path.basename(process.cwd());
35
53
  export async function startREPL(forceReindex = false, provider, model) {
36
- console.log(chalk.cyan("\n🐥 Welcome to QuackStack!\n"));
54
+ displayGrandiosWelcome();
37
55
  try {
38
56
  const aiClient = getAIClient(provider, model);
39
57
  console.log(chalk.cyan(`Using: ${aiClient.getProviderName()} - ${aiClient.getModel()}`));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "quackstack",
3
- "version": "1.0.27",
3
+ "version": "1.0.29",
4
4
  "description": "Your cracked unpaid intern for all things codebase related! AI-powered codebase search and Q&A.",
5
5
  "type": "module",
6
6
  "main": "dist/cli.cjs",