agdi 2.6.3 → 2.6.4

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
@@ -224,13 +224,17 @@ Your code is reviewed by AI before delivery.
224
224
 
225
225
  ## 🌐 AI Providers
226
226
 
227
- ### Free Models (No API Key)
227
+ ### Free Models via OpenRouter
228
+
229
+ > **Note:** These models are free but require an [OpenRouter API key](https://openrouter.ai/keys) (free to create).
228
230
 
229
231
  | Model | ID | Best For |
230
232
  |-------|-----|----------|
231
233
  | GPT-OSS 120B | `openai/gpt-oss-120b:free` | General |
232
234
  | Qwen3 Coder | `qwen/qwen3-coder:free` | Code |
233
235
  | Kimi K2 | `moonshotai/kimi-k2:free` | General |
236
+ | Gemma 3n | `google/gemma-3n-e2b-it:free` | Lightweight |
237
+ | Devstral | `mistralai/devstral-2512:free` | Code |
234
238
 
235
239
  ### Bring Your Own Key
236
240
 
package/dist/index.js CHANGED
@@ -1750,66 +1750,6 @@ function detectEnvironment(overrides) {
1750
1750
  ...overrides
1751
1751
  };
1752
1752
  }
1753
- function formatBackend(backend) {
1754
- switch (backend) {
1755
- case "windows-host":
1756
- return "Windows host";
1757
- case "linux-host":
1758
- return "Linux host";
1759
- case "macos-host":
1760
- return "macOS host";
1761
- case "wsl":
1762
- return "WSL (Windows Subsystem for Linux)";
1763
- case "container":
1764
- return "Container sandbox";
1765
- }
1766
- }
1767
- function formatNetwork(policy, domains) {
1768
- switch (policy) {
1769
- case "off":
1770
- return "off";
1771
- case "allowlist":
1772
- return `allowlist (${domains.slice(0, 2).join(", ")}${domains.length > 2 ? "..." : ""})`;
1773
- case "on":
1774
- return "unrestricted";
1775
- }
1776
- }
1777
- function formatTrust(trust) {
1778
- switch (trust) {
1779
- case "untrusted":
1780
- return chalk9.red("untrusted (read-only mode)");
1781
- case "session":
1782
- return chalk9.yellow("session trusted");
1783
- case "persistent":
1784
- return chalk9.green("trusted");
1785
- }
1786
- }
1787
- function displaySessionHeader(env) {
1788
- const boxWidth = 54;
1789
- const topBorder = "\u256D\u2500 Agdi Terminal Session " + "\u2500".repeat(boxWidth - 25) + "\u256E";
1790
- const bottomBorder = "\u2570" + "\u2500".repeat(boxWidth) + "\u256F";
1791
- const lines = [
1792
- `Exec env: ${formatBackend(env.backend)}`,
1793
- `Workspace: ${truncatePath(env.workspaceRoot, 40)}`,
1794
- `cwd: ${truncatePath(env.cwd, 40)}`,
1795
- `Network: ${formatNetwork(env.networkPolicy, env.allowedDomains)}`,
1796
- `Trust: ${formatTrust(env.trustLevel)}`
1797
- ];
1798
- console.log(chalk9.cyan(topBorder));
1799
- for (const line of lines) {
1800
- const padding = " ".repeat(Math.max(0, boxWidth - stripAnsi(line).length - 2));
1801
- console.log(chalk9.cyan("\u2502 ") + line + padding + chalk9.cyan(" \u2502"));
1802
- }
1803
- console.log(chalk9.cyan(bottomBorder));
1804
- console.log("");
1805
- }
1806
- function truncatePath(path4, maxLen) {
1807
- if (path4.length <= maxLen) return path4;
1808
- return "..." + path4.slice(-(maxLen - 3));
1809
- }
1810
- function stripAnsi(str) {
1811
- return str.replace(/\u001b\[[0-9;]*m/g, "");
1812
- }
1813
1753
  var currentEnvironment = null;
1814
1754
  function initSession(overrides) {
1815
1755
  currentEnvironment = detectEnvironment(overrides);
@@ -4249,7 +4189,6 @@ async function startCodingMode() {
4249
4189
  const { provider, apiKey, model } = activeConfig;
4250
4190
  const config = loadConfig();
4251
4191
  const env = initSession();
4252
- displaySessionHeader(env);
4253
4192
  const isTrusted = await ensureTrusted(env.workspaceRoot);
4254
4193
  if (!isTrusted) {
4255
4194
  process.exit(0);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agdi",
3
- "version": "2.6.3",
3
+ "version": "2.6.4",
4
4
  "description": "AI-powered app generator - build full-stack apps from natural language in your terminal",
5
5
  "type": "module",
6
6
  "bin": {