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 +5 -1
- package/dist/index.js +0 -61
- package/package.json +1 -1
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
|
|
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);
|