@autonsh/cli 0.16.5 → 0.17.2
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/dist/chat.d.ts +3 -0
- package/dist/chat.js +350 -0
- package/dist/chat.js.map +1 -0
- package/dist/config.d.ts +25 -0
- package/dist/config.js +104 -0
- package/dist/config.js.map +1 -0
- package/dist/index.js +579 -106
- package/dist/index.js.map +1 -1
- package/dist/login.d.ts +4 -11
- package/dist/login.js +47 -40
- package/dist/login.js.map +1 -1
- package/dist/model.d.ts +24 -0
- package/dist/model.js +195 -0
- package/dist/model.js.map +1 -0
- package/dist/picker.d.ts +8 -0
- package/dist/picker.js +52 -0
- package/dist/picker.js.map +1 -0
- package/dist/prompts.d.ts +8 -1
- package/dist/prompts.js +51 -1
- package/dist/prompts.js.map +1 -1
- package/package.json +1 -1
package/dist/model.js
ADDED
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
// model.ts — `auton model`: seletor de modelos estilo `ollama list`/`ollama run`.
|
|
2
|
+
// TTY: seletor com setas (local ollama + providers configurados + ações).
|
|
3
|
+
// Pipe/CI: subcomandos explícitos (ls/set/test) — nunca trava em prompt.
|
|
4
|
+
import { select, text, log, isCancel } from "@clack/prompts";
|
|
5
|
+
import pc from "picocolors";
|
|
6
|
+
import { dim, table, isTTY, ok, info } from "./ui.js";
|
|
7
|
+
import { loadConfig, saveConfig, getDefaultModel, setDefaultModel, } from "./config.js";
|
|
8
|
+
/** tags locais do ollama (OLLAMA_API ou localhost:11434). null = offline. */
|
|
9
|
+
export async function ollamaTags() {
|
|
10
|
+
const base = process.env.OLLAMA_API ?? "http://localhost:11434";
|
|
11
|
+
const res = await fetch(`${base}/api/tags`).catch(() => null);
|
|
12
|
+
if (!res?.ok)
|
|
13
|
+
return null;
|
|
14
|
+
const body = (await res.json().catch(() => null));
|
|
15
|
+
return body?.models ?? [];
|
|
16
|
+
}
|
|
17
|
+
export function fmtSize(n) {
|
|
18
|
+
if (n === undefined)
|
|
19
|
+
return "?";
|
|
20
|
+
const gb = n / 1e9;
|
|
21
|
+
return gb >= 1 ? `${gb.toFixed(1)}GB` : `${Math.round(n / 1e6)}MB`;
|
|
22
|
+
}
|
|
23
|
+
/** rótulo amigável de um provider configurado. */
|
|
24
|
+
export function providerLabel(p) {
|
|
25
|
+
const [prov, model] = p.model.split(":", 2);
|
|
26
|
+
return `${p.label} — ${pc.cyan(p.model)}` + (prov === "ollama" && !p.key ? dim(" (local)") : "");
|
|
27
|
+
}
|
|
28
|
+
async function manualSpec() {
|
|
29
|
+
const spec = await text({
|
|
30
|
+
message: "spec do modelo (provider:modelo)",
|
|
31
|
+
placeholder: "ollama:qwen3 → openai:gpt-4o-mini → gemini:gemini-2.0-flash",
|
|
32
|
+
validate: (v) => !v || !v.includes(":") ? "formato: provider:modelo (ex: ollama:qwen3)" : undefined,
|
|
33
|
+
});
|
|
34
|
+
if (isCancel(spec))
|
|
35
|
+
return undefined;
|
|
36
|
+
return spec.trim();
|
|
37
|
+
}
|
|
38
|
+
/** seletor interativo completo: local + providers + ações. Retorna spec escolhida ou undefined. */
|
|
39
|
+
export async function pickModel() {
|
|
40
|
+
const cfg = loadConfig();
|
|
41
|
+
const tags = await ollamaTags();
|
|
42
|
+
const current = getDefaultModel();
|
|
43
|
+
for (;;) {
|
|
44
|
+
const localGroup = tags?.map((t) => ({ value: `ollama:${t.name}`, label: `${t.name} ${dim(fmtSize(t.size))}`, hint: t.details?.parameter_size ?? undefined })) ?? [];
|
|
45
|
+
const provGroup = cfg.providers.map((p) => ({
|
|
46
|
+
value: p.model,
|
|
47
|
+
label: providerLabel(p),
|
|
48
|
+
}));
|
|
49
|
+
const chosen = (await select({
|
|
50
|
+
message: current ? `modelo default atual: ${pc.cyan(current)}` : "escolha o modelo default",
|
|
51
|
+
options: [
|
|
52
|
+
...(localGroup.length > 0
|
|
53
|
+
? [{ value: "__local__", label: dim("LOCAL (ollama)"), disabled: true }, ...localGroup]
|
|
54
|
+
: [{ value: "__local__", label: dim("nenhum modelo local — rode `ollama pull <nome>`"), disabled: true }]),
|
|
55
|
+
...(provGroup.length > 0
|
|
56
|
+
? [{ value: "__prov__", label: dim("CONFIGURADOS (login)"), disabled: true }, ...provGroup]
|
|
57
|
+
: []),
|
|
58
|
+
{ value: "__login__", label: current ? "adicionar/editar provider (login)" : "conectar provider (login)" },
|
|
59
|
+
{ value: "__manual__", label: "especificar modelo manualmente" },
|
|
60
|
+
],
|
|
61
|
+
}));
|
|
62
|
+
if (isCancel(chosen) || chosen === "__local__" || chosen === "__prov__")
|
|
63
|
+
return undefined;
|
|
64
|
+
if (chosen === "__manual__") {
|
|
65
|
+
const spec = await manualSpec();
|
|
66
|
+
if (spec)
|
|
67
|
+
return spec;
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
if (chosen === "__login__") {
|
|
71
|
+
log.message(dim("rode `auton login` para conectar um provider — depois volte aqui"));
|
|
72
|
+
return undefined;
|
|
73
|
+
}
|
|
74
|
+
return chosen; // spec real (ollama:x, provider configurado)
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
/** `auton model ls` — tabela local + configurados. */
|
|
78
|
+
export async function modelLs(json) {
|
|
79
|
+
const cfg = loadConfig();
|
|
80
|
+
const tags = await ollamaTags();
|
|
81
|
+
const local = tags ?? [];
|
|
82
|
+
const defaultModel = getDefaultModel();
|
|
83
|
+
if (json) {
|
|
84
|
+
console.log(JSON.stringify({
|
|
85
|
+
defaultModel,
|
|
86
|
+
local: local.map((t) => ({
|
|
87
|
+
name: t.name,
|
|
88
|
+
sizeBytes: t.size,
|
|
89
|
+
parameterSize: t.details?.parameter_size,
|
|
90
|
+
})),
|
|
91
|
+
providers: cfg.providers,
|
|
92
|
+
offline: tags === null,
|
|
93
|
+
}, null, 2));
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
if (cfg.providers.length > 0) {
|
|
97
|
+
console.log(boldProviders());
|
|
98
|
+
console.log(table(["ID", "PROVIDER", "MODEL", "KEY", "DEFAULT"], cfg.providers.map((p) => [
|
|
99
|
+
p.id,
|
|
100
|
+
p.provider,
|
|
101
|
+
p.model,
|
|
102
|
+
p.key ? "sim" : "-",
|
|
103
|
+
p.model === defaultModel ? pc.green("✓") : "-",
|
|
104
|
+
])));
|
|
105
|
+
}
|
|
106
|
+
if (local.length === 0) {
|
|
107
|
+
console.log(tags === null
|
|
108
|
+
? dim("(ollama offline — rode `ollama serve` ou exporte OLLAMA_API)")
|
|
109
|
+
: dim("(nenhum modelo local — rode `ollama pull <nome>`)"));
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
console.log(boldLocal());
|
|
113
|
+
console.log(table(["MODELO LOCAL", "TAMANHO", "PARAMS"], local.map((t) => [
|
|
114
|
+
t.name,
|
|
115
|
+
fmtSize(t.size),
|
|
116
|
+
t.details?.parameter_size ?? "-",
|
|
117
|
+
])));
|
|
118
|
+
}
|
|
119
|
+
if (!defaultModel)
|
|
120
|
+
console.log(info("nenhum default — rode `auton model` pra escolher"));
|
|
121
|
+
}
|
|
122
|
+
function boldProviders() {
|
|
123
|
+
return pc.bold("PROVIDERS CONFIGURADOS");
|
|
124
|
+
}
|
|
125
|
+
function boldLocal() {
|
|
126
|
+
return pc.bold("\nMODELOS LOCAIS (ollama)");
|
|
127
|
+
}
|
|
128
|
+
/** `auton model set <spec>` — não-interativo, grava default. */
|
|
129
|
+
export async function modelSet(spec) {
|
|
130
|
+
if (!spec.includes(":")) {
|
|
131
|
+
throw new Error("uso: auton model set <provider:modelo> (ex: ollama:qwen3)");
|
|
132
|
+
}
|
|
133
|
+
setDefaultModel(spec.trim());
|
|
134
|
+
console.log(ok(`modelo default: ${pc.cyan(spec.trim())}`));
|
|
135
|
+
}
|
|
136
|
+
/** `auton model test` — ping em cada provider, tabela latência. */
|
|
137
|
+
export async function modelTest() {
|
|
138
|
+
const cfg = loadConfig();
|
|
139
|
+
const base = process.env.OLLAMA_API ?? "http://localhost:11434";
|
|
140
|
+
const results = [];
|
|
141
|
+
const t0 = Date.now();
|
|
142
|
+
const lok = await fetch(`${base}/api/tags`).then((r) => r.ok).catch(() => false);
|
|
143
|
+
results.push([
|
|
144
|
+
"ollama-local",
|
|
145
|
+
base,
|
|
146
|
+
lok ? ok(`${Date.now() - t0}ms`) : dim("offline"),
|
|
147
|
+
]);
|
|
148
|
+
for (const p of cfg.providers) {
|
|
149
|
+
const [prov] = p.model.split(":", 2);
|
|
150
|
+
if (prov === "ollama")
|
|
151
|
+
continue; // já testado acima
|
|
152
|
+
const t1 = Date.now();
|
|
153
|
+
let okv = false;
|
|
154
|
+
try {
|
|
155
|
+
if (p.base) {
|
|
156
|
+
okv = await fetch(`${p.base}/models`).then((r) => r.ok).catch(() => false);
|
|
157
|
+
}
|
|
158
|
+
else if (prov === "gemini") {
|
|
159
|
+
okv = await fetch("https://generativelanguage.googleapis.com/v1beta/models").then((r) => r.ok).catch(() => false);
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
okv = await fetch("https://api.openai.com/v1/models").then((r) => r.ok).catch(() => false);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
catch {
|
|
166
|
+
okv = false;
|
|
167
|
+
}
|
|
168
|
+
results.push([p.id, p.model, okv ? ok(`${Date.now() - t1}ms`) : dim("offline")]);
|
|
169
|
+
}
|
|
170
|
+
console.log(table(["PROVIDER", "ENDPOINT/MODEL", "LATÊNCIA"], results));
|
|
171
|
+
}
|
|
172
|
+
/** `auton model` sem sub — seletor interativo (TTY). Pipe: avisa subcomandos. */
|
|
173
|
+
export async function cmdModel() {
|
|
174
|
+
if (!isTTY) {
|
|
175
|
+
console.log(dim("interativo requer TTY — use: auton model ls | set <spec> | test"));
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
const spec = await pickModel();
|
|
179
|
+
if (!spec) {
|
|
180
|
+
console.log(dim("cancelado"));
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
const cfg = loadConfig();
|
|
184
|
+
const provider = cfg.providers.find((p) => p.model === spec);
|
|
185
|
+
const isLocal = spec.startsWith("ollama:");
|
|
186
|
+
if (!provider && !isLocal) {
|
|
187
|
+
log.warn("provider não cadastrado — credenciais não serão injetadas. Rode `auton login`.");
|
|
188
|
+
}
|
|
189
|
+
const before = cfg.defaultModel;
|
|
190
|
+
const after = spec;
|
|
191
|
+
saveConfig({ ...cfg, defaultModel: after });
|
|
192
|
+
console.log(ok(`modelo default: ${pc.cyan(after)}` +
|
|
193
|
+
(before && before !== after ? dim(` (era ${before})`) : "")));
|
|
194
|
+
}
|
|
195
|
+
//# sourceMappingURL=model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,0EAA0E;AAC1E,yEAAyE;AACzE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EACL,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,GAEzD,MAAM,aAAa,CAAC;AAQrB,6EAA6E;AAC7E,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,wBAAwB,CAAC;IAChE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,GAAG,EAAE,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAoC,CAAC;IACrF,OAAO,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAqB;IAC3C,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAChC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;IACnB,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;AACrE,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,aAAa,CAAC,CAAiB;IAC7C,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAiC,CAAC;IAC5E,OAAO,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACnG,CAAC;AAED,KAAK,UAAU,UAAU;IACvB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;QACtB,OAAO,EAAE,kCAAkC;QAC3C,WAAW,EAAE,6DAA6D;QAC1E,QAAQ,EAAE,CAAC,CAAU,EAAE,EAAE,CACvB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,6CAA6C,CAAC,CAAC,CAAC,SAAS;KACrF,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACrC,OAAQ,IAAe,CAAC,IAAI,EAAE,CAAC;AACjC,CAAC;AAED,mGAAmG;AACnG,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,MAAM,UAAU,EAAE,CAAC;IAChC,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC;IAElC,SAAS,CAAC;QACR,MAAM,UAAU,GACd,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,cAAc,IAAI,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACpJ,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1C,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;SACxB,CAAC,CAAC,CAAC;QACJ,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,yBAAyB,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,0BAA0B;YAC3F,OAAO,EAAE;gBACP,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;oBACvB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,CAAC,gBAAgB,CAAC,EAAE,QAAQ,EAAE,IAAa,EAAE,EAAE,GAAG,UAAU,CAAC;oBAChG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,CAAC,iDAAiD,CAAC,EAAE,QAAQ,EAAE,IAAa,EAAE,CAAC,CAAC;gBACrH,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;oBACtB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,sBAAsB,CAAC,EAAE,QAAQ,EAAE,IAAa,EAAE,EAAE,GAAG,SAAS,CAAC;oBACpG,CAAC,CAAC,EAAE,CAAC;gBACP,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,2BAA2B,EAAE;gBAC1G,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,gCAAgC,EAAE;aACjE;SACF,CAAC,CAAW,CAAC;QAEd,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,UAAU;YAAE,OAAO,SAAS,CAAC;QAC1F,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,UAAU,EAAE,CAAC;YAChC,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC;YACtB,SAAS;QACX,CAAC;QACD,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC,CAAC;YACrF,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,MAAM,CAAC,CAAC,6CAA6C;IAC9D,CAAC;AACH,CAAC;AAED,sDAAsD;AACtD,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAa;IACzC,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,MAAM,UAAU,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;IACzB,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IAEvC,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ;YACE,YAAY;YACZ,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACvB,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,SAAS,EAAE,CAAC,CAAC,IAAI;gBACjB,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,cAAc;aACzC,CAAC,CAAC;YACH,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,OAAO,EAAE,IAAI,KAAK,IAAI;SACvB,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC;QAC7B,OAAO,CAAC,GAAG,CACT,KAAK,CACH,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,EAC7C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG;YACnB,CAAC,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG;SAC/C,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CACT,IAAI,KAAK,IAAI;YACX,CAAC,CAAC,GAAG,CAAC,8DAA8D,CAAC;YACrE,CAAC,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAC7D,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;QACzB,OAAO,CAAC,GAAG,CACT,KAAK,CACH,CAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,CAAC,EACrC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACf,CAAC,CAAC,IAAI;YACN,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YACf,CAAC,CAAC,OAAO,EAAE,cAAc,IAAI,GAAG;SACjC,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,YAAY;QAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC,CAAC;AAC3F,CAAC;AAED,SAAS,aAAa;IACpB,OAAO,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;AAC3C,CAAC;AACD,SAAS,SAAS;IAChB,OAAO,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;AAC9C,CAAC;AAED,gEAAgE;AAChE,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAY;IACzC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IACD,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,mEAAmE;AACnE,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,wBAAwB,CAAC;IAChE,MAAM,OAAO,GAAe,EAAE,CAAC;IAE/B,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IACjF,OAAO,CAAC,IAAI,CAAC;QACX,cAAc;QACd,IAAI;QACJ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;KAClD,CAAC,CAAC;IAEH,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAiC,CAAC;QACrE,IAAI,IAAI,KAAK,QAAQ;YAAE,SAAS,CAAC,mBAAmB;QACpD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,IAAI,GAAG,GAAG,KAAK,CAAC;QAChB,IAAI,CAAC;YACH,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;gBACX,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YAC7E,CAAC;iBAAM,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,GAAG,GAAG,MAAM,KAAK,CAAC,yDAAyD,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YACpH,CAAC;iBAAM,CAAC;gBACN,GAAG,GAAG,MAAM,KAAK,CAAC,kCAAkC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,GAAG,GAAG,KAAK,CAAC;QACd,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,gBAAgB,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,iFAAiF;AACjF,MAAM,CAAC,KAAK,UAAU,QAAQ;IAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC,CAAC;QACpF,OAAO;IACT,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,SAAS,EAAE,CAAC;IAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IACD,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC;IACnB,UAAU,CAAC,EAAE,GAAG,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CACT,EAAE,CACA,mBAAmB,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QACjC,CAAC,MAAM,IAAI,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAC9D,CACF,CAAC;AACJ,CAAC"}
|
package/dist/picker.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface AgentRow {
|
|
2
|
+
name: string;
|
|
3
|
+
status: string;
|
|
4
|
+
cron: boolean;
|
|
5
|
+
model?: string;
|
|
6
|
+
}
|
|
7
|
+
/** pega o nome do agente: arg explícito > task.yaml do cwd > seletor TTY > erro (pipe). */
|
|
8
|
+
export declare function resolveAgent(cmd: string, name: string | undefined): Promise<string>;
|
package/dist/picker.js
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// picker.ts — seletor interativo de agente (setas). TTY: clack select.
|
|
2
|
+
// Pipe/CI: erro claro pedindo nome (exit 2) — nunca trava.
|
|
3
|
+
import { select, isCancel } from "@clack/prompts";
|
|
4
|
+
import { dim, isTTY, statusColor } from "./ui.js";
|
|
5
|
+
import { EXIT, ExitError } from "./task.js";
|
|
6
|
+
async function fetchAgents() {
|
|
7
|
+
const api = process.env.AUTON_API ?? "http://localhost:8080";
|
|
8
|
+
const res = await fetch(`${api}/v1/agents`, {
|
|
9
|
+
headers: process.env.AUTON_TOKEN ? { Authorization: `Bearer ${process.env.AUTON_TOKEN}` } : {},
|
|
10
|
+
});
|
|
11
|
+
if (!res.ok) {
|
|
12
|
+
throw new Error(`control plane ${res.status}: ${await res.text()}`);
|
|
13
|
+
}
|
|
14
|
+
const list = (await res.json());
|
|
15
|
+
return list.map((a) => ({ name: a.name, status: a.status, cron: a.cron === true, model: a.model }));
|
|
16
|
+
}
|
|
17
|
+
/** pega o nome do agente: arg explícito > task.yaml do cwd > seletor TTY > erro (pipe). */
|
|
18
|
+
export async function resolveAgent(cmd, name) {
|
|
19
|
+
if (name)
|
|
20
|
+
return name;
|
|
21
|
+
// cwd é agente? (task.yaml) — fallback silencioso preserva fluxo em projeto
|
|
22
|
+
try {
|
|
23
|
+
const { loadTaskManifest } = await import("./task.js");
|
|
24
|
+
const manifest = await loadTaskManifest(process.cwd());
|
|
25
|
+
if (manifest?.name)
|
|
26
|
+
return manifest.name;
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
/* sem task.yaml no cwd → segue pro seletor */
|
|
30
|
+
}
|
|
31
|
+
if (!isTTY) {
|
|
32
|
+
throw new ExitError(EXIT.USAGE, `uso: auton ${cmd} <nome> (pipe) — ou rode sem nome num TTY pra escolher`);
|
|
33
|
+
}
|
|
34
|
+
const agents = await fetchAgents();
|
|
35
|
+
if (agents.length === 0) {
|
|
36
|
+
throw new ExitError(EXIT.USAGE, `nenhum agente deployado — rode \`auton agent <dir>\` primeiro`);
|
|
37
|
+
}
|
|
38
|
+
const chosen = (await select({
|
|
39
|
+
message: `qual agente? (${cmd})`,
|
|
40
|
+
options: agents.map((a) => ({
|
|
41
|
+
value: a.name,
|
|
42
|
+
label: a.name,
|
|
43
|
+
hint: `${statusColor(a.status)}${a.model ? dim(` · ${a.model}`) : ""}`,
|
|
44
|
+
})),
|
|
45
|
+
}));
|
|
46
|
+
if (isCancel(chosen) || chosen === undefined) {
|
|
47
|
+
console.log(dim("cancelado"));
|
|
48
|
+
process.exit(0);
|
|
49
|
+
}
|
|
50
|
+
return chosen;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"picker.js","sourceRoot":"","sources":["../src/picker.ts"],"names":[],"mappings":"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"}
|
package/dist/prompts.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export declare const TEMPLATES: readonly ["support", "cron-digester", "webhook-echo", "with-approval", "api-json", "multi-agent"];
|
|
2
2
|
export type Template = (typeof TEMPLATES)[number];
|
|
3
3
|
export declare function promptCanceled(): never;
|
|
4
|
-
/** init sem argumentos: pergunta template + nome (
|
|
4
|
+
/** init sem argumentos: pergunta template + nome (+ modelo default opcional). */
|
|
5
5
|
export declare function promptInit(): Promise<{
|
|
6
6
|
name: string;
|
|
7
7
|
template: Template;
|
|
@@ -10,3 +10,10 @@ export declare function promptInit(): Promise<{
|
|
|
10
10
|
export declare function promptConfirmUndeploy(name: string): Promise<boolean>;
|
|
11
11
|
/** Gate de aprovação (0.12): TTY pergunta — true = aprove, false = rejeita. */
|
|
12
12
|
export declare function promptGateApproval(reason: string): Promise<boolean>;
|
|
13
|
+
/** 0.17.0 — gate de pergunta (ctx.ask): TTY pergunta por TEXTO livre. */
|
|
14
|
+
export declare function promptGateQuestion(question: string): Promise<string | undefined>;
|
|
15
|
+
/** Parseia um marker de gate ([APPROVAL:REQ]|[QUESTION:REQ]) → {kind, payload}. */
|
|
16
|
+
export declare function parseGateLine(line: string): {
|
|
17
|
+
kind: "approval" | "question";
|
|
18
|
+
payload: Record<string, unknown>;
|
|
19
|
+
} | undefined;
|
package/dist/prompts.js
CHANGED
|
@@ -4,12 +4,14 @@ import { confirm, intro, isCancel, outro, select, text } from "@clack/prompts";
|
|
|
4
4
|
import pc from "picocolors";
|
|
5
5
|
import { basename } from "node:path";
|
|
6
6
|
import { dim } from "./ui.js";
|
|
7
|
+
import { getDefaultModel, setDefaultModel } from "./config.js";
|
|
8
|
+
import { pickModel } from "./model.js";
|
|
7
9
|
export const TEMPLATES = ["support", "cron-digester", "webhook-echo", "with-approval", "api-json", "multi-agent"];
|
|
8
10
|
export function promptCanceled() {
|
|
9
11
|
outro("cancelado");
|
|
10
12
|
process.exit(0);
|
|
11
13
|
}
|
|
12
|
-
/** init sem argumentos: pergunta template + nome (
|
|
14
|
+
/** init sem argumentos: pergunta template + nome (+ modelo default opcional). */
|
|
13
15
|
export async function promptInit() {
|
|
14
16
|
intro(pc.bold("criar novo agente"));
|
|
15
17
|
const template = await select({
|
|
@@ -25,6 +27,19 @@ export async function promptInit() {
|
|
|
25
27
|
});
|
|
26
28
|
if (isCancel(name))
|
|
27
29
|
promptCanceled();
|
|
30
|
+
// 0.17: passo modelo — seta default global (config.json), não o task.yaml
|
|
31
|
+
const setModel = await confirm({
|
|
32
|
+
message: getDefaultModel()
|
|
33
|
+
? `modelo default atual: ${pc.cyan(getDefaultModel())} — mudar?`
|
|
34
|
+
: "escolher modelo default agora? (auton model)",
|
|
35
|
+
active: "sim",
|
|
36
|
+
inactive: "não",
|
|
37
|
+
});
|
|
38
|
+
if (!isCancel(setModel) && setModel === true) {
|
|
39
|
+
const spec = await pickModel();
|
|
40
|
+
if (spec)
|
|
41
|
+
setDefaultModel(spec);
|
|
42
|
+
}
|
|
28
43
|
outro("tudo pronto");
|
|
29
44
|
return { name: name.trim(), template: template };
|
|
30
45
|
}
|
|
@@ -52,4 +67,39 @@ export async function promptGateApproval(reason) {
|
|
|
52
67
|
promptCanceled();
|
|
53
68
|
return answer === true;
|
|
54
69
|
}
|
|
70
|
+
/** 0.17.0 — gate de pergunta (ctx.ask): TTY pergunta por TEXTO livre. */
|
|
71
|
+
export async function promptGateQuestion(question) {
|
|
72
|
+
const answer = await text({
|
|
73
|
+
message: pc.bold(question),
|
|
74
|
+
placeholder: "sua resposta...",
|
|
75
|
+
validate: (v) => (v && v.trim().length > 0 ? undefined : "resposta vazia"),
|
|
76
|
+
});
|
|
77
|
+
if (isCancel(answer)) {
|
|
78
|
+
console.log(dim("cancelado — agente segue pausado"));
|
|
79
|
+
return undefined;
|
|
80
|
+
}
|
|
81
|
+
return answer.trim();
|
|
82
|
+
}
|
|
83
|
+
/** Parseia um marker de gate ([APPROVAL:REQ]|[QUESTION:REQ]) → {kind, payload}. */
|
|
84
|
+
export function parseGateLine(line) {
|
|
85
|
+
if (line.startsWith("[APPROVAL:REQ]")) {
|
|
86
|
+
const raw = line.slice("[APPROVAL:REQ]".length).trim();
|
|
87
|
+
try {
|
|
88
|
+
return { kind: "approval", payload: JSON.parse(raw) };
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
return { kind: "approval", payload: { reason: raw } };
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
if (line.startsWith("[QUESTION:REQ]")) {
|
|
95
|
+
const raw = line.slice("[QUESTION:REQ]".length).trim();
|
|
96
|
+
try {
|
|
97
|
+
return { kind: "question", payload: JSON.parse(raw) };
|
|
98
|
+
}
|
|
99
|
+
catch {
|
|
100
|
+
return { kind: "question", payload: { question: raw } };
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
return undefined;
|
|
104
|
+
}
|
|
55
105
|
//# sourceMappingURL=prompts.js.map
|
package/dist/prompts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,uDAAuD;AACvD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC/E,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"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"}
|