@johpaz/hive 1.1.3 → 1.1.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/package.json +5 -6
- package/packages/cli/dist/commands/agent-run.d.ts +1 -0
- package/packages/cli/dist/commands/agent-run.js +178 -0
- package/packages/cli/dist/commands/agents.d.ts +1 -0
- package/packages/cli/dist/commands/agents.js +372 -0
- package/packages/cli/dist/commands/chat.d.ts +1 -0
- package/packages/cli/dist/commands/chat.js +152 -0
- package/packages/cli/dist/commands/config.d.ts +1 -0
- package/packages/cli/dist/commands/config.js +49 -0
- package/packages/cli/dist/commands/cron.d.ts +1 -0
- package/packages/cli/dist/commands/cron.js +166 -0
- package/packages/cli/dist/commands/dev.d.ts +1 -0
- package/packages/cli/dist/commands/dev.js +120 -0
- package/packages/cli/dist/commands/doctor.d.ts +1 -0
- package/packages/cli/dist/commands/doctor.js +161 -0
- package/packages/cli/dist/commands/gateway.d.ts +4 -0
- package/packages/cli/dist/commands/gateway.js +444 -0
- package/packages/cli/dist/commands/logs.d.ts +1 -0
- package/packages/cli/dist/commands/logs.js +87 -0
- package/packages/cli/dist/commands/mcp.d.ts +1 -0
- package/packages/cli/dist/commands/mcp.js +175 -0
- package/packages/cli/dist/commands/message.d.ts +1 -0
- package/packages/cli/dist/commands/message.js +65 -0
- package/packages/cli/dist/commands/onboard.d.ts +1 -0
- package/packages/cli/dist/commands/onboard.js +1715 -0
- package/packages/cli/dist/commands/security.d.ts +1 -0
- package/packages/cli/dist/commands/security.js +155 -0
- package/packages/cli/dist/commands/service.d.ts +1 -0
- package/packages/cli/dist/commands/service.js +77 -0
- package/packages/cli/dist/commands/sessions.d.ts +1 -0
- package/packages/cli/dist/commands/sessions.js +132 -0
- package/packages/cli/dist/commands/skills.d.ts +1 -0
- package/packages/cli/dist/commands/skills.js +190 -0
- package/packages/cli/dist/commands/update.d.ts +1 -0
- package/packages/cli/dist/commands/update.js +27 -0
- package/packages/cli/dist/hive-binary +0 -0
- package/packages/cli/dist/index.d.ts +2 -0
- package/packages/cli/dist/index.js +184 -0
- package/packages/cli/dist/utils/token.d.ts +1 -0
- package/packages/cli/dist/utils/token.js +8 -0
- package/packages/cli/package.json +3 -1
- package/packages/core/package.json +9 -1
- package/packages/core/src/config/loader.d.ts +298 -0
- package/packages/core/src/config/loader.js +513 -0
- package/packages/core/src/storage/schema.d.ts +3 -0
- package/packages/core/src/storage/schema.js +541 -0
- package/packages/core/src/storage/sqlite.d.ts +51 -0
- package/packages/core/src/storage/sqlite.js +350 -0
- package/packages/core/src/utils/logger.d.ts +84 -0
- package/packages/core/src/utils/logger.js +352 -0
- package/packages/cli/src/commands/agent-run.ts +0 -168
- package/packages/cli/src/commands/agents.ts +0 -398
- package/packages/cli/src/commands/chat.ts +0 -142
- package/packages/cli/src/commands/config.ts +0 -50
- package/packages/cli/src/commands/cron.ts +0 -161
- package/packages/cli/src/commands/dev.ts +0 -95
- package/packages/cli/src/commands/doctor.ts +0 -133
- package/packages/cli/src/commands/gateway.ts +0 -443
- package/packages/cli/src/commands/logs.ts +0 -57
- package/packages/cli/src/commands/mcp.ts +0 -175
- package/packages/cli/src/commands/message.ts +0 -77
- package/packages/cli/src/commands/onboard.ts +0 -1868
- package/packages/cli/src/commands/security.ts +0 -144
- package/packages/cli/src/commands/service.ts +0 -50
- package/packages/cli/src/commands/sessions.ts +0 -116
- package/packages/cli/src/commands/skills.ts +0 -187
- package/packages/cli/src/commands/update.ts +0 -25
- package/packages/cli/src/index.ts +0 -185
- package/packages/cli/src/utils/token.ts +0 -6
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
#!/usr/bin/env bun
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const onboard_1 = require("./commands/onboard");
|
|
5
|
+
const gateway_1 = require("./commands/gateway");
|
|
6
|
+
const dev_1 = require("./commands/dev");
|
|
7
|
+
const agents_1 = require("./commands/agents");
|
|
8
|
+
const mcp_1 = require("./commands/mcp");
|
|
9
|
+
const skills_1 = require("./commands/skills");
|
|
10
|
+
const config_1 = require("./commands/config");
|
|
11
|
+
const logs_1 = require("./commands/logs");
|
|
12
|
+
const chat_1 = require("./commands/chat");
|
|
13
|
+
const sessions_1 = require("./commands/sessions");
|
|
14
|
+
const cron_1 = require("./commands/cron");
|
|
15
|
+
const doctor_1 = require("./commands/doctor");
|
|
16
|
+
const security_1 = require("./commands/security");
|
|
17
|
+
const service_1 = require("./commands/service");
|
|
18
|
+
const update_1 = require("./commands/update");
|
|
19
|
+
const message_1 = require("./commands/message");
|
|
20
|
+
const agent_run_1 = require("./commands/agent-run");
|
|
21
|
+
const VERSION = "1.1.0";
|
|
22
|
+
const HELP = `
|
|
23
|
+
🐝 Hive — Personal Swarm AI Gateway v${VERSION}
|
|
24
|
+
|
|
25
|
+
Usage: hive <command> [subcommand] [options]
|
|
26
|
+
|
|
27
|
+
Commands:
|
|
28
|
+
onboard Wizard de configuración inicial
|
|
29
|
+
dev Modo desarrollo (onboard + start)
|
|
30
|
+
start [--daemon] Arrancar el Gateway
|
|
31
|
+
stop Detener el Gateway
|
|
32
|
+
reload Recargar config sin reiniciar
|
|
33
|
+
status Estado del Gateway y agentes
|
|
34
|
+
chat [--agent <id>] Chat directo en terminal
|
|
35
|
+
logs [--follow] [--level] Ver logs del Gateway
|
|
36
|
+
|
|
37
|
+
message send --to <id> --content <text>
|
|
38
|
+
Enviar mensaje por canal
|
|
39
|
+
agent run --message <text> Ejecutar agente con mensaje
|
|
40
|
+
|
|
41
|
+
agents add <id> Crear nuevo agente
|
|
42
|
+
agents list [--bindings] Listar agentes
|
|
43
|
+
agents remove <id> Eliminar agente
|
|
44
|
+
|
|
45
|
+
mcp list Listar servidores MCP
|
|
46
|
+
mcp add Añadir servidor MCP
|
|
47
|
+
mcp test <nombre> Verificar servidor MCP
|
|
48
|
+
mcp tools <nombre> Listar tools de un servidor
|
|
49
|
+
mcp remove <nombre> Eliminar servidor MCP
|
|
50
|
+
|
|
51
|
+
skills list Listar skills instaladas
|
|
52
|
+
skills search <query> Buscar skills
|
|
53
|
+
skills install <slug> Instalar skill
|
|
54
|
+
skills remove <nombre> Eliminar skill
|
|
55
|
+
skills update Actualizar skills
|
|
56
|
+
|
|
57
|
+
config get <key> Leer valor de config
|
|
58
|
+
config set <key> <value> Escribir valor de config
|
|
59
|
+
config show Mostrar config completa
|
|
60
|
+
|
|
61
|
+
sessions list Listar sesiones
|
|
62
|
+
sessions view <id> Ver transcripción
|
|
63
|
+
sessions prune Eliminar sesiones inactivas
|
|
64
|
+
|
|
65
|
+
cron list Listar cron jobs
|
|
66
|
+
cron add Añadir cron job
|
|
67
|
+
cron remove <id> Eliminar cron job
|
|
68
|
+
cron logs Ver logs de cron
|
|
69
|
+
|
|
70
|
+
doctor Diagnóstico y auto-reparación
|
|
71
|
+
security audit Auditoría de seguridad
|
|
72
|
+
install-service Instalar servicio systemd
|
|
73
|
+
update Actualizar Hive
|
|
74
|
+
|
|
75
|
+
Options:
|
|
76
|
+
--help, -h Mostrar ayuda
|
|
77
|
+
--version, -v Mostrar versión
|
|
78
|
+
|
|
79
|
+
Examples:
|
|
80
|
+
hive onboard Configurar Hive por primera vez
|
|
81
|
+
hive start Arrancar el Gateway
|
|
82
|
+
hive chat Chatear con el agente en terminal
|
|
83
|
+
hive message send --to 123 --content "Hola"
|
|
84
|
+
hive agent run --message "Analiza README.md" --wait
|
|
85
|
+
hive agents add work Crear agente "work"
|
|
86
|
+
hive mcp add Añadir servidor MCP
|
|
87
|
+
hive doctor Diagnosticar problemas
|
|
88
|
+
|
|
89
|
+
Documentation:
|
|
90
|
+
English: https://github.com/johpaz/hive/docs
|
|
91
|
+
Español: https://github.com/johpaz/hive/docs/es
|
|
92
|
+
`;
|
|
93
|
+
async function main() {
|
|
94
|
+
const args = process.argv.slice(2);
|
|
95
|
+
const command = args[0];
|
|
96
|
+
const subcommand = args[1];
|
|
97
|
+
const flags = args.filter((a) => a.startsWith("--"));
|
|
98
|
+
switch (command) {
|
|
99
|
+
case "onboard":
|
|
100
|
+
await (0, onboard_1.onboard)();
|
|
101
|
+
break;
|
|
102
|
+
case "dev":
|
|
103
|
+
await (0, dev_1.dev)();
|
|
104
|
+
break;
|
|
105
|
+
case "start":
|
|
106
|
+
await (0, gateway_1.start)(flags);
|
|
107
|
+
break;
|
|
108
|
+
case "stop":
|
|
109
|
+
await (0, gateway_1.stop)();
|
|
110
|
+
break;
|
|
111
|
+
case "reload":
|
|
112
|
+
await (0, gateway_1.reload)();
|
|
113
|
+
break;
|
|
114
|
+
case "status":
|
|
115
|
+
await (0, gateway_1.status)(flags);
|
|
116
|
+
break;
|
|
117
|
+
case "chat":
|
|
118
|
+
await (0, chat_1.chat)(flags);
|
|
119
|
+
break;
|
|
120
|
+
case "logs":
|
|
121
|
+
await (0, logs_1.logs)(flags);
|
|
122
|
+
break;
|
|
123
|
+
case "message":
|
|
124
|
+
await (0, message_1.message)(subcommand, args.slice(2));
|
|
125
|
+
break;
|
|
126
|
+
case "agent":
|
|
127
|
+
await (0, agent_run_1.agent)(subcommand, args.slice(2));
|
|
128
|
+
break;
|
|
129
|
+
case "agents":
|
|
130
|
+
await (0, agents_1.agents)(subcommand, args.slice(2));
|
|
131
|
+
break;
|
|
132
|
+
case "mcp":
|
|
133
|
+
await (0, mcp_1.mcp)(subcommand, args.slice(2));
|
|
134
|
+
break;
|
|
135
|
+
case "skills":
|
|
136
|
+
await (0, skills_1.skills)(subcommand, args.slice(2));
|
|
137
|
+
break;
|
|
138
|
+
case "config":
|
|
139
|
+
await (0, config_1.config)(subcommand, args.slice(2));
|
|
140
|
+
break;
|
|
141
|
+
case "sessions":
|
|
142
|
+
await (0, sessions_1.sessions)(subcommand, args.slice(2));
|
|
143
|
+
break;
|
|
144
|
+
case "cron":
|
|
145
|
+
await (0, cron_1.cron)(subcommand, args.slice(2));
|
|
146
|
+
break;
|
|
147
|
+
case "doctor":
|
|
148
|
+
await (0, doctor_1.doctor)();
|
|
149
|
+
break;
|
|
150
|
+
case "security":
|
|
151
|
+
if (subcommand === "audit") {
|
|
152
|
+
await (0, security_1.securityAudit)();
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
console.log("Usage: hive security audit");
|
|
156
|
+
}
|
|
157
|
+
break;
|
|
158
|
+
case "install-service":
|
|
159
|
+
await (0, service_1.installService)();
|
|
160
|
+
break;
|
|
161
|
+
case "update":
|
|
162
|
+
await (0, update_1.update)();
|
|
163
|
+
break;
|
|
164
|
+
case "--version":
|
|
165
|
+
case "-v":
|
|
166
|
+
case "version":
|
|
167
|
+
console.log(`Hive v${VERSION}`);
|
|
168
|
+
break;
|
|
169
|
+
case "--help":
|
|
170
|
+
case "-h":
|
|
171
|
+
case "help":
|
|
172
|
+
case undefined:
|
|
173
|
+
console.log(HELP);
|
|
174
|
+
break;
|
|
175
|
+
default:
|
|
176
|
+
console.error(`❌ Comando desconocido: "${command}"\n`);
|
|
177
|
+
console.log(HELP);
|
|
178
|
+
process.exit(1);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
main().catch((error) => {
|
|
182
|
+
console.error("Fatal error:", error.message);
|
|
183
|
+
process.exit(1);
|
|
184
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function generateAuthToken(): string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateAuthToken = generateAuthToken;
|
|
4
|
+
const node_crypto_1 = require("node:crypto");
|
|
5
|
+
function generateAuthToken() {
|
|
6
|
+
// 32 bytes → 43 caracteres base64url seguros
|
|
7
|
+
return (0, node_crypto_1.randomBytes)(32).toString("base64url");
|
|
8
|
+
}
|
|
@@ -4,14 +4,16 @@
|
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "Hive CLI — Command line interface for the Hive AI Gateway",
|
|
6
6
|
"bin": {
|
|
7
|
-
"hive": "
|
|
7
|
+
"hive": "dist/hive-binary"
|
|
8
8
|
},
|
|
9
9
|
"main": "./src/index.ts",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"files": [
|
|
12
|
+
"dist/",
|
|
12
13
|
"src/"
|
|
13
14
|
],
|
|
14
15
|
"scripts": {
|
|
16
|
+
"build": "bun build src/index.ts --compile --outfile dist/hive-binary",
|
|
15
17
|
"test": "bun test"
|
|
16
18
|
},
|
|
17
19
|
"dependencies": {
|
|
@@ -40,7 +40,15 @@
|
|
|
40
40
|
"./agent": "./src/agent/index.ts",
|
|
41
41
|
"./channels": "./src/channels/index.ts",
|
|
42
42
|
"./config": "./src/config/loader.ts",
|
|
43
|
+
"./config/loader": "./src/config/loader.ts",
|
|
43
44
|
"./utils": "./src/utils/logger.ts",
|
|
44
|
-
"./
|
|
45
|
+
"./utils/logger": "./src/utils/logger.ts",
|
|
46
|
+
"./storage/sqlite": "./src/storage/sqlite.ts",
|
|
47
|
+
"./storage/onboarding": "./src/storage/onboarding.ts",
|
|
48
|
+
"./storage/crypto": "./src/storage/crypto.ts",
|
|
49
|
+
"./integrations": "./src/integrations/index.ts",
|
|
50
|
+
"./integrations/catalog": "./src/integrations/catalog.ts",
|
|
51
|
+
"./integrations/env": "./src/integrations/env.ts",
|
|
52
|
+
"./voice": "./src/voice/index.ts"
|
|
45
53
|
}
|
|
46
54
|
}
|
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
import * as z from "zod";
|
|
2
|
+
export declare function loadEnv(hiveDir: string): void;
|
|
3
|
+
export declare function getHiveDir(): string;
|
|
4
|
+
declare const expandPath: (p: string) => string;
|
|
5
|
+
declare const ProviderConfigSchema: z.ZodObject<{
|
|
6
|
+
apiKey: z.ZodOptional<z.ZodString>;
|
|
7
|
+
baseUrl: z.ZodOptional<z.ZodString>;
|
|
8
|
+
rateLimit: z.ZodOptional<z.ZodNumber>;
|
|
9
|
+
retries: z.ZodOptional<z.ZodNumber>;
|
|
10
|
+
retryDelayMs: z.ZodOptional<z.ZodNumber>;
|
|
11
|
+
}, z.core.$strip>;
|
|
12
|
+
declare const AgentEntrySchema: z.ZodObject<{
|
|
13
|
+
id: z.ZodString;
|
|
14
|
+
default: z.ZodOptional<z.ZodBoolean>;
|
|
15
|
+
workspace: z.ZodString;
|
|
16
|
+
description: z.ZodOptional<z.ZodString>;
|
|
17
|
+
}, z.core.$strip>;
|
|
18
|
+
declare const BindingSchema: z.ZodObject<{
|
|
19
|
+
agentId: z.ZodString;
|
|
20
|
+
match: z.ZodObject<{
|
|
21
|
+
channel: z.ZodOptional<z.ZodString>;
|
|
22
|
+
accountId: z.ZodOptional<z.ZodString>;
|
|
23
|
+
peer: z.ZodOptional<z.ZodObject<{
|
|
24
|
+
kind: z.ZodOptional<z.ZodEnum<{
|
|
25
|
+
group: "group";
|
|
26
|
+
direct: "direct";
|
|
27
|
+
}>>;
|
|
28
|
+
id: z.ZodOptional<z.ZodString>;
|
|
29
|
+
}, z.core.$strip>>;
|
|
30
|
+
guildId: z.ZodOptional<z.ZodString>;
|
|
31
|
+
teamId: z.ZodOptional<z.ZodString>;
|
|
32
|
+
roles: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
33
|
+
}, z.core.$strip>;
|
|
34
|
+
}, z.core.$strip>;
|
|
35
|
+
declare const MCPServerConfigSchema: z.ZodObject<{
|
|
36
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
37
|
+
transport: z.ZodEnum<{
|
|
38
|
+
stdio: "stdio";
|
|
39
|
+
sse: "sse";
|
|
40
|
+
websocket: "websocket";
|
|
41
|
+
}>;
|
|
42
|
+
command: z.ZodOptional<z.ZodString>;
|
|
43
|
+
args: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
44
|
+
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
45
|
+
url: z.ZodOptional<z.ZodString>;
|
|
46
|
+
headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
47
|
+
reconnect: z.ZodOptional<z.ZodObject<{
|
|
48
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
49
|
+
maxRetries: z.ZodOptional<z.ZodNumber>;
|
|
50
|
+
delayMs: z.ZodOptional<z.ZodNumber>;
|
|
51
|
+
backoffMultiplier: z.ZodOptional<z.ZodNumber>;
|
|
52
|
+
}, z.core.$strip>>;
|
|
53
|
+
}, z.core.$strip>;
|
|
54
|
+
declare const UserConfigSchema: z.ZodObject<{
|
|
55
|
+
id: z.ZodString;
|
|
56
|
+
name: z.ZodString;
|
|
57
|
+
channels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
58
|
+
}, z.core.$strip>;
|
|
59
|
+
declare const ConfigSchema: z.ZodObject<{
|
|
60
|
+
gateway: z.ZodOptional<z.ZodObject<{
|
|
61
|
+
host: z.ZodOptional<z.ZodString>;
|
|
62
|
+
port: z.ZodOptional<z.ZodNumber>;
|
|
63
|
+
authToken: z.ZodOptional<z.ZodString>;
|
|
64
|
+
pidFile: z.ZodOptional<z.ZodString>;
|
|
65
|
+
tools: z.ZodOptional<z.ZodObject<{
|
|
66
|
+
allow: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
67
|
+
deny: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
68
|
+
}, z.core.$strip>>;
|
|
69
|
+
}, z.core.$strip>>;
|
|
70
|
+
logging: z.ZodOptional<z.ZodObject<{
|
|
71
|
+
level: z.ZodOptional<z.ZodEnum<{
|
|
72
|
+
debug: "debug";
|
|
73
|
+
info: "info";
|
|
74
|
+
warn: "warn";
|
|
75
|
+
error: "error";
|
|
76
|
+
}>>;
|
|
77
|
+
dir: z.ZodOptional<z.ZodString>;
|
|
78
|
+
maxSizeMB: z.ZodOptional<z.ZodNumber>;
|
|
79
|
+
maxFiles: z.ZodOptional<z.ZodNumber>;
|
|
80
|
+
redactSensitive: z.ZodOptional<z.ZodBoolean>;
|
|
81
|
+
console: z.ZodOptional<z.ZodBoolean>;
|
|
82
|
+
}, z.core.$strip>>;
|
|
83
|
+
user: z.ZodOptional<z.ZodObject<{
|
|
84
|
+
id: z.ZodString;
|
|
85
|
+
name: z.ZodString;
|
|
86
|
+
channels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
87
|
+
}, z.core.$strip>>;
|
|
88
|
+
agent: z.ZodOptional<z.ZodObject<{
|
|
89
|
+
defaultAgentId: z.ZodOptional<z.ZodString>;
|
|
90
|
+
baseDir: z.ZodOptional<z.ZodString>;
|
|
91
|
+
context: z.ZodOptional<z.ZodObject<{
|
|
92
|
+
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
93
|
+
compactionThreshold: z.ZodOptional<z.ZodNumber>;
|
|
94
|
+
minMessagesAfterCompaction: z.ZodOptional<z.ZodNumber>;
|
|
95
|
+
maxCompactionRetries: z.ZodOptional<z.ZodNumber>;
|
|
96
|
+
}, z.core.$strip>>;
|
|
97
|
+
}, z.core.$strip>>;
|
|
98
|
+
models: z.ZodOptional<z.ZodObject<{
|
|
99
|
+
defaultProvider: z.ZodOptional<z.ZodEnum<{
|
|
100
|
+
openai: "openai";
|
|
101
|
+
anthropic: "anthropic";
|
|
102
|
+
gemini: "gemini";
|
|
103
|
+
mistral: "mistral";
|
|
104
|
+
kimi: "kimi";
|
|
105
|
+
ollama: "ollama";
|
|
106
|
+
openrouter: "openrouter";
|
|
107
|
+
deepseek: "deepseek";
|
|
108
|
+
}>>;
|
|
109
|
+
defaults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
110
|
+
providers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
111
|
+
apiKey: z.ZodOptional<z.ZodString>;
|
|
112
|
+
baseUrl: z.ZodOptional<z.ZodString>;
|
|
113
|
+
rateLimit: z.ZodOptional<z.ZodNumber>;
|
|
114
|
+
retries: z.ZodOptional<z.ZodNumber>;
|
|
115
|
+
retryDelayMs: z.ZodOptional<z.ZodNumber>;
|
|
116
|
+
}, z.core.$strip>>>;
|
|
117
|
+
}, z.core.$strip>>;
|
|
118
|
+
sessions: z.ZodOptional<z.ZodObject<{
|
|
119
|
+
dir: z.ZodOptional<z.ZodString>;
|
|
120
|
+
pruneAfterHours: z.ZodOptional<z.ZodNumber>;
|
|
121
|
+
maxTranscriptSizeMB: z.ZodOptional<z.ZodNumber>;
|
|
122
|
+
}, z.core.$strip>>;
|
|
123
|
+
agents: z.ZodOptional<z.ZodObject<{
|
|
124
|
+
list: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
125
|
+
id: z.ZodString;
|
|
126
|
+
default: z.ZodOptional<z.ZodBoolean>;
|
|
127
|
+
workspace: z.ZodString;
|
|
128
|
+
description: z.ZodOptional<z.ZodString>;
|
|
129
|
+
}, z.core.$strip>>>;
|
|
130
|
+
}, z.core.$strip>>;
|
|
131
|
+
bindings: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
132
|
+
agentId: z.ZodString;
|
|
133
|
+
match: z.ZodObject<{
|
|
134
|
+
channel: z.ZodOptional<z.ZodString>;
|
|
135
|
+
accountId: z.ZodOptional<z.ZodString>;
|
|
136
|
+
peer: z.ZodOptional<z.ZodObject<{
|
|
137
|
+
kind: z.ZodOptional<z.ZodEnum<{
|
|
138
|
+
group: "group";
|
|
139
|
+
direct: "direct";
|
|
140
|
+
}>>;
|
|
141
|
+
id: z.ZodOptional<z.ZodString>;
|
|
142
|
+
}, z.core.$strip>>;
|
|
143
|
+
guildId: z.ZodOptional<z.ZodString>;
|
|
144
|
+
teamId: z.ZodOptional<z.ZodString>;
|
|
145
|
+
roles: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
146
|
+
}, z.core.$strip>;
|
|
147
|
+
}, z.core.$strip>>>;
|
|
148
|
+
channels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
149
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
150
|
+
accounts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
151
|
+
botToken: z.ZodOptional<z.ZodString>;
|
|
152
|
+
applicationId: z.ZodOptional<z.ZodString>;
|
|
153
|
+
appToken: z.ZodOptional<z.ZodString>;
|
|
154
|
+
signingSecret: z.ZodOptional<z.ZodString>;
|
|
155
|
+
dmPolicy: z.ZodOptional<z.ZodEnum<{
|
|
156
|
+
open: "open";
|
|
157
|
+
pairing: "pairing";
|
|
158
|
+
allowlist: "allowlist";
|
|
159
|
+
}>>;
|
|
160
|
+
allowFrom: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
161
|
+
}, z.core.$strip>>>;
|
|
162
|
+
dmPolicy: z.ZodOptional<z.ZodEnum<{
|
|
163
|
+
open: "open";
|
|
164
|
+
pairing: "pairing";
|
|
165
|
+
allowlist: "allowlist";
|
|
166
|
+
}>>;
|
|
167
|
+
allowFrom: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
168
|
+
groups: z.ZodOptional<z.ZodBoolean>;
|
|
169
|
+
guilds: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
170
|
+
experimental: z.ZodOptional<z.ZodBoolean>;
|
|
171
|
+
}, z.core.$strip>>>;
|
|
172
|
+
tools: z.ZodOptional<z.ZodObject<{
|
|
173
|
+
allow: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
174
|
+
deny: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
175
|
+
exec: z.ZodOptional<z.ZodObject<{
|
|
176
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
177
|
+
allowlist: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
178
|
+
denylist: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
179
|
+
timeoutSeconds: z.ZodOptional<z.ZodNumber>;
|
|
180
|
+
workDir: z.ZodOptional<z.ZodString>;
|
|
181
|
+
}, z.core.$strip>>;
|
|
182
|
+
web: z.ZodOptional<z.ZodObject<{
|
|
183
|
+
allowlist: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
184
|
+
denylist: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
185
|
+
timeoutSeconds: z.ZodOptional<z.ZodNumber>;
|
|
186
|
+
}, z.core.$strip>>;
|
|
187
|
+
browser: z.ZodOptional<z.ZodObject<{
|
|
188
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
189
|
+
browserPath: z.ZodOptional<z.ZodString>;
|
|
190
|
+
headless: z.ZodOptional<z.ZodBoolean>;
|
|
191
|
+
timeoutSeconds: z.ZodOptional<z.ZodNumber>;
|
|
192
|
+
}, z.core.$strip>>;
|
|
193
|
+
canvas: z.ZodOptional<z.ZodObject<{
|
|
194
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
195
|
+
port: z.ZodOptional<z.ZodNumber>;
|
|
196
|
+
}, z.core.$strip>>;
|
|
197
|
+
sandbox: z.ZodOptional<z.ZodObject<{
|
|
198
|
+
dm: z.ZodOptional<z.ZodObject<{
|
|
199
|
+
allow: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
200
|
+
deny: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
201
|
+
}, z.core.$strip>>;
|
|
202
|
+
group: z.ZodOptional<z.ZodObject<{
|
|
203
|
+
allow: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
204
|
+
deny: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
205
|
+
}, z.core.$strip>>;
|
|
206
|
+
}, z.core.$strip>>;
|
|
207
|
+
}, z.core.$strip>>;
|
|
208
|
+
skills: z.ZodOptional<z.ZodObject<{
|
|
209
|
+
allowBundled: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
210
|
+
managedDir: z.ZodOptional<z.ZodString>;
|
|
211
|
+
extraDirs: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
212
|
+
hotReload: z.ZodOptional<z.ZodBoolean>;
|
|
213
|
+
maxSkillSizeKB: z.ZodOptional<z.ZodNumber>;
|
|
214
|
+
}, z.core.$strip>>;
|
|
215
|
+
mcp: z.ZodOptional<z.ZodObject<{
|
|
216
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
217
|
+
servers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
218
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
219
|
+
transport: z.ZodEnum<{
|
|
220
|
+
stdio: "stdio";
|
|
221
|
+
sse: "sse";
|
|
222
|
+
websocket: "websocket";
|
|
223
|
+
}>;
|
|
224
|
+
command: z.ZodOptional<z.ZodString>;
|
|
225
|
+
args: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
226
|
+
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
227
|
+
url: z.ZodOptional<z.ZodString>;
|
|
228
|
+
headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
229
|
+
reconnect: z.ZodOptional<z.ZodObject<{
|
|
230
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
231
|
+
maxRetries: z.ZodOptional<z.ZodNumber>;
|
|
232
|
+
delayMs: z.ZodOptional<z.ZodNumber>;
|
|
233
|
+
backoffMultiplier: z.ZodOptional<z.ZodNumber>;
|
|
234
|
+
}, z.core.$strip>>;
|
|
235
|
+
}, z.core.$strip>>>;
|
|
236
|
+
healthCheck: z.ZodOptional<z.ZodObject<{
|
|
237
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
238
|
+
intervalSeconds: z.ZodOptional<z.ZodNumber>;
|
|
239
|
+
}, z.core.$strip>>;
|
|
240
|
+
}, z.core.$strip>>;
|
|
241
|
+
memory: z.ZodOptional<z.ZodObject<{
|
|
242
|
+
dbPath: z.ZodOptional<z.ZodString>;
|
|
243
|
+
notesDir: z.ZodOptional<z.ZodString>;
|
|
244
|
+
episodic: z.ZodOptional<z.ZodObject<{
|
|
245
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
246
|
+
provider: z.ZodOptional<z.ZodEnum<{
|
|
247
|
+
openai: "openai";
|
|
248
|
+
local: "local";
|
|
249
|
+
}>>;
|
|
250
|
+
maxEpisodesPerSession: z.ZodOptional<z.ZodNumber>;
|
|
251
|
+
}, z.core.$strip>>;
|
|
252
|
+
}, z.core.$strip>>;
|
|
253
|
+
cron: z.ZodOptional<z.ZodObject<{
|
|
254
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
255
|
+
dbPath: z.ZodOptional<z.ZodString>;
|
|
256
|
+
maxConcurrentJobs: z.ZodOptional<z.ZodNumber>;
|
|
257
|
+
timezone: z.ZodOptional<z.ZodString>;
|
|
258
|
+
}, z.core.$strip>>;
|
|
259
|
+
retry: z.ZodOptional<z.ZodObject<{
|
|
260
|
+
maxAttempts: z.ZodOptional<z.ZodNumber>;
|
|
261
|
+
initialDelayMs: z.ZodOptional<z.ZodNumber>;
|
|
262
|
+
backoffMultiplier: z.ZodOptional<z.ZodNumber>;
|
|
263
|
+
maxDelayMs: z.ZodOptional<z.ZodNumber>;
|
|
264
|
+
}, z.core.$strip>>;
|
|
265
|
+
security: z.ZodOptional<z.ZodObject<{
|
|
266
|
+
maxMessageLength: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
|
|
267
|
+
skillScanning: z.ZodOptional<z.ZodBoolean>;
|
|
268
|
+
warnOnInsecureConfig: z.ZodOptional<z.ZodBoolean>;
|
|
269
|
+
allowedUsers: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
270
|
+
}, z.core.$strip>>;
|
|
271
|
+
hooks: z.ZodOptional<z.ZodObject<{
|
|
272
|
+
scripts: z.ZodOptional<z.ZodObject<{
|
|
273
|
+
before_model_resolve: z.ZodOptional<z.ZodString>;
|
|
274
|
+
before_prompt_build: z.ZodOptional<z.ZodString>;
|
|
275
|
+
before_tool_call: z.ZodOptional<z.ZodString>;
|
|
276
|
+
after_tool_call: z.ZodOptional<z.ZodString>;
|
|
277
|
+
tool_result_persist: z.ZodOptional<z.ZodString>;
|
|
278
|
+
before_compaction: z.ZodOptional<z.ZodString>;
|
|
279
|
+
after_compaction: z.ZodOptional<z.ZodString>;
|
|
280
|
+
message_received: z.ZodOptional<z.ZodString>;
|
|
281
|
+
message_sending: z.ZodOptional<z.ZodString>;
|
|
282
|
+
message_sent: z.ZodOptional<z.ZodString>;
|
|
283
|
+
session_start: z.ZodOptional<z.ZodString>;
|
|
284
|
+
session_end: z.ZodOptional<z.ZodString>;
|
|
285
|
+
gateway_start: z.ZodOptional<z.ZodString>;
|
|
286
|
+
gateway_stop: z.ZodOptional<z.ZodString>;
|
|
287
|
+
}, z.core.$strip>>;
|
|
288
|
+
}, z.core.$strip>>;
|
|
289
|
+
}, z.core.$strip>;
|
|
290
|
+
export type Config = z.infer<typeof ConfigSchema>;
|
|
291
|
+
export type ProviderConfig = z.infer<typeof ProviderConfigSchema>;
|
|
292
|
+
export type MCPServerConfig = z.infer<typeof MCPServerConfigSchema>;
|
|
293
|
+
export type AgentEntry = z.infer<typeof AgentEntrySchema>;
|
|
294
|
+
export type Binding = z.infer<typeof BindingSchema>;
|
|
295
|
+
export type UserConfig = z.infer<typeof UserConfigSchema>;
|
|
296
|
+
export declare function loadConfig(): Config;
|
|
297
|
+
export declare function expandConfigPath(p: string | undefined): string | undefined;
|
|
298
|
+
export { expandPath };
|