@jait/gateway 0.1.485 → 0.1.487
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/channels/manager.d.ts +56 -6
- package/dist/channels/manager.d.ts.map +1 -1
- package/dist/channels/manager.js +207 -12
- package/dist/channels/manager.js.map +1 -1
- package/dist/db/connection.d.ts.map +1 -1
- package/dist/db/connection.js +1 -0
- package/dist/db/connection.js.map +1 -1
- package/dist/db/schema.d.ts +19 -0
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +1 -0
- package/dist/db/schema.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +51 -15
- package/dist/index.js.map +1 -1
- package/dist/routes/auth.d.ts.map +1 -1
- package/dist/routes/auth.js +7 -0
- package/dist/routes/auth.js.map +1 -1
- package/dist/services/users.d.ts +2 -0
- package/dist/services/users.d.ts.map +1 -1
- package/dist/services/users.js +7 -0
- package/dist/services/users.js.map +1 -1
- package/package.json +1 -1
- package/web-dist/assets/{_basePickBy-DyIN4qve.js → _basePickBy-Cfju-wKG.js} +1 -1
- package/web-dist/assets/{_baseUniq-nuNp_ZDG.js → _baseUniq-CexraFju.js} +1 -1
- package/web-dist/assets/{arc-DIrGvMOS.js → arc-Ds0U54hA.js} +1 -1
- package/web-dist/assets/{architectureDiagram-2XIMDMQ5-DXqVqRgD.js → architectureDiagram-2XIMDMQ5-CPD_Hzjr.js} +1 -1
- package/web-dist/assets/{blockDiagram-WCTKOSBZ-DwtfBpBB.js → blockDiagram-WCTKOSBZ-BzhXCJpA.js} +1 -1
- package/web-dist/assets/{c4Diagram-IC4MRINW-D6W2i2Ca.js → c4Diagram-IC4MRINW-CjqmTytu.js} +1 -1
- package/web-dist/assets/channel-ThjSNIuP.js +1 -0
- package/web-dist/assets/{chunk-4BX2VUAB-DiFJ-rdO.js → chunk-4BX2VUAB-lun_o9YE.js} +1 -1
- package/web-dist/assets/{chunk-55IACEB6-BaQ2J5qV.js → chunk-55IACEB6-fK2d8U6_.js} +1 -1
- package/web-dist/assets/{chunk-FMBD7UC4-CKpbFa6r.js → chunk-FMBD7UC4-DID8JjLm.js} +1 -1
- package/web-dist/assets/{chunk-JSJVCQXG-C9iT3S_G.js → chunk-JSJVCQXG-Cu3bHVb2.js} +1 -1
- package/web-dist/assets/{chunk-KX2RTZJC-BXw8-zUX.js → chunk-KX2RTZJC-DJohxAjJ.js} +1 -1
- package/web-dist/assets/{chunk-NQ4KR5QH-DYC_22M_.js → chunk-NQ4KR5QH-8pOllf1l.js} +1 -1
- package/web-dist/assets/{chunk-QZHKN3VN-D0VM1fXz.js → chunk-QZHKN3VN-tj1Tqu6r.js} +1 -1
- package/web-dist/assets/{chunk-WL4C6EOR-BdTDfszd.js → chunk-WL4C6EOR-C5wjFMGJ.js} +1 -1
- package/web-dist/assets/classDiagram-VBA2DB6C-C8TJ6L_8.js +1 -0
- package/web-dist/assets/classDiagram-v2-RAHNMMFH-C8TJ6L_8.js +1 -0
- package/web-dist/assets/clone-CAME_5kl.js +1 -0
- package/web-dist/assets/{cose-bilkent-S5V4N54A-DS1ZVVu1.js → cose-bilkent-S5V4N54A-CoI7QOLX.js} +1 -1
- package/web-dist/assets/{dagre-KLK3FWXG-B3D0kfsZ.js → dagre-KLK3FWXG-EKLS1DTo.js} +1 -1
- package/web-dist/assets/{diagram-E7M64L7V-Dx9vKa0I.js → diagram-E7M64L7V-BmRbRGIN.js} +1 -1
- package/web-dist/assets/{diagram-IFDJBPK2-BRrYTTMU.js → diagram-IFDJBPK2-B4CD1IcR.js} +1 -1
- package/web-dist/assets/{diagram-P4PSJMXO-BnKTNbr0.js → diagram-P4PSJMXO-DUH_m6mV.js} +1 -1
- package/web-dist/assets/{erDiagram-INFDFZHY-BVTmzkaD.js → erDiagram-INFDFZHY-DKZU5jCd.js} +1 -1
- package/web-dist/assets/{flowDiagram-PKNHOUZH-Dmx06hxo.js → flowDiagram-PKNHOUZH-Bwxc-eHx.js} +1 -1
- package/web-dist/assets/{ganttDiagram-A5KZAMGK-C42lw8sD.js → ganttDiagram-A5KZAMGK-9ZT4Y8pE.js} +1 -1
- package/web-dist/assets/{gitGraphDiagram-K3NZZRJ6-edx9tuIF.js → gitGraphDiagram-K3NZZRJ6-CRAyBHre.js} +1 -1
- package/web-dist/assets/{graph-CHSFefEi.js → graph-Ck-1TtGO.js} +1 -1
- package/web-dist/assets/{index-Crcb3fxD.js → index-3S90qk5k.js} +1 -1
- package/web-dist/assets/{index-F9jIjXpV.js → index-BWQ1J-lO.js} +1 -1
- package/web-dist/assets/{index-DMwDdyzl.js → index-rE6elX_B.js} +26 -26
- package/web-dist/assets/{infoDiagram-LFFYTUFH-DHZVpOBK.js → infoDiagram-LFFYTUFH-fIse5W2t.js} +1 -1
- package/web-dist/assets/{ishikawaDiagram-PHBUUO56-DUECtdZX.js → ishikawaDiagram-PHBUUO56-BrVGxkXZ.js} +1 -1
- package/web-dist/assets/{journeyDiagram-4ABVD52K-DsJZfSyN.js → journeyDiagram-4ABVD52K-BdHwQAS2.js} +1 -1
- package/web-dist/assets/{kanban-definition-K7BYSVSG-BufyvHP-.js → kanban-definition-K7BYSVSG-Dd15xFF9.js} +1 -1
- package/web-dist/assets/{layout-CU3LULB2.js → layout-s2BRZOOm.js} +1 -1
- package/web-dist/assets/{linear-BEer2r-q.js → linear-B70tAYpL.js} +1 -1
- package/web-dist/assets/{mindmap-definition-YRQLILUH-C0_OllT-.js → mindmap-definition-YRQLILUH-BgN4U584.js} +1 -1
- package/web-dist/assets/{pieDiagram-SKSYHLDU-B7ePcbjv.js → pieDiagram-SKSYHLDU-BUTCOwPD.js} +1 -1
- package/web-dist/assets/{quadrantDiagram-337W2JSQ-DjCvFqay.js → quadrantDiagram-337W2JSQ-DLYGZWES.js} +1 -1
- package/web-dist/assets/{requirementDiagram-Z7DCOOCP-BUP0LpDa.js → requirementDiagram-Z7DCOOCP-vkim8y1r.js} +1 -1
- package/web-dist/assets/{sankeyDiagram-WA2Y5GQK-D0S2AsyJ.js → sankeyDiagram-WA2Y5GQK-DYqrl-08.js} +1 -1
- package/web-dist/assets/{sequenceDiagram-2WXFIKYE-DL_pX6qe.js → sequenceDiagram-2WXFIKYE-CjUVKedT.js} +1 -1
- package/web-dist/assets/{stateDiagram-RAJIS63D-DnbTcmJ8.js → stateDiagram-RAJIS63D-BWZY-s75.js} +1 -1
- package/web-dist/assets/stateDiagram-v2-FVOUBMTO-qtGvvTGN.js +1 -0
- package/web-dist/assets/{timeline-definition-YZTLITO2-C5ZkP-QO.js → timeline-definition-YZTLITO2-BmN5COTT.js} +1 -1
- package/web-dist/assets/{treemap-KZPCXAKY-DbqXjUBz.js → treemap-KZPCXAKY-hnP8aEE4.js} +1 -1
- package/web-dist/assets/{vennDiagram-LZ73GAT5-C4VkcwHn.js → vennDiagram-LZ73GAT5-C-uLCIlV.js} +1 -1
- package/web-dist/assets/{xychartDiagram-JWTSCODW-RqBcb5lT.js → xychartDiagram-JWTSCODW-DIymryKn.js} +1 -1
- package/web-dist/index.html +1 -1
- package/web-dist/assets/channel-Br156KjP.js +0 -1
- package/web-dist/assets/classDiagram-VBA2DB6C-K4_5k-1u.js +0 -1
- package/web-dist/assets/classDiagram-v2-RAHNMMFH-K4_5k-1u.js +0 -1
- package/web-dist/assets/clone-BzDoXm8a.js +0 -1
- package/web-dist/assets/stateDiagram-v2-FVOUBMTO-DYiFxPL4.js +0 -1
|
@@ -9,7 +9,18 @@ import type { SqliteDatabase } from "../db/sqlite-shim.js";
|
|
|
9
9
|
import type { ToolRegistry } from "../tools/registry.js";
|
|
10
10
|
import type { AuditWriter } from "../services/audit.js";
|
|
11
11
|
import { type LLMConfig, type AgentMessage } from "../tools/agent-loop.js";
|
|
12
|
+
import type { Skill } from "../skills/index.js";
|
|
13
|
+
import type { ConsentManager, ConsentRequest, ConsentDecision } from "../security/consent-manager.js";
|
|
12
14
|
import type { ChannelConfig, ChannelConnector, ChannelStatus, ChannelStatusDetail, InboundMessage } from "./types.js";
|
|
15
|
+
/** Owner user context for channel agent turns — keys, backend, picked model, disabled tools. */
|
|
16
|
+
export interface ChannelAuthContext {
|
|
17
|
+
userId?: string;
|
|
18
|
+
apiKeys?: Record<string, string>;
|
|
19
|
+
jaitBackend?: string;
|
|
20
|
+
model?: string;
|
|
21
|
+
/** Tools the owner has disabled in settings — never sent to the LLM, never executed. */
|
|
22
|
+
disabledTools?: Set<string>;
|
|
23
|
+
}
|
|
13
24
|
/** Produces an assistant reply for a conversation. Injectable for testing. */
|
|
14
25
|
export interface ReplyGenerator {
|
|
15
26
|
generate(history: AgentMessage[], ctx: {
|
|
@@ -26,12 +37,27 @@ export interface ChannelManagerDeps {
|
|
|
26
37
|
audit?: AuditWriter;
|
|
27
38
|
projectRoot?: string;
|
|
28
39
|
/** Auth context for tool execution (per-user keys, backend, model). */
|
|
29
|
-
auth?:
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
40
|
+
auth?: ChannelAuthContext;
|
|
41
|
+
/**
|
|
42
|
+
* Resolves the owner user context (keys, backend, picked model, disabled
|
|
43
|
+
* tools) for each turn. Preferred over the static `auth` — channels run
|
|
44
|
+
* without request context, so this reads the owner's persisted settings live
|
|
45
|
+
* so replies use the same provider/model/tool surface as the web chat.
|
|
46
|
+
*/
|
|
47
|
+
resolveAuth?: () => ChannelAuthContext | undefined;
|
|
48
|
+
/**
|
|
49
|
+
* Resolves the enabled skills to inject into the channel agent's system
|
|
50
|
+
* prompt — gives WhatsApp et al. the same skill catalogue as the web chat.
|
|
51
|
+
*/
|
|
52
|
+
resolveSkills?: () => Skill[];
|
|
53
|
+
/**
|
|
54
|
+
* Consent manager — when present, mutating tools require an in-band yes/no
|
|
55
|
+
* approval from the user before they run (the channel sends a prompt and waits
|
|
56
|
+
* for the reply). Without it, channel tools auto-execute.
|
|
57
|
+
*/
|
|
58
|
+
consentManager?: ConsentManager;
|
|
59
|
+
/** Approval timeout (ms) before a consent prompt auto-denies. Default 5 min. */
|
|
60
|
+
consentTimeoutMs?: number;
|
|
35
61
|
/** System prompt for the channel agent. */
|
|
36
62
|
systemPrompt?: string;
|
|
37
63
|
/** Max conversation messages to retain (excluding the system prompt). */
|
|
@@ -56,6 +82,12 @@ export declare class ChannelManager {
|
|
|
56
82
|
private readonly histories;
|
|
57
83
|
/** Per-conversation serialization so messages are answered in order. */
|
|
58
84
|
private readonly locks;
|
|
85
|
+
/** sessionId → conversation target, so consent prompts reach the right chat. */
|
|
86
|
+
private readonly sessionTargets;
|
|
87
|
+
/** conversationKey → pending consent requestId (one outstanding approval per chat). */
|
|
88
|
+
private readonly consentByConversation;
|
|
89
|
+
/** requestId → conversation, to clear mappings once a decision lands. */
|
|
90
|
+
private readonly consentTargets;
|
|
59
91
|
private readonly replyGenerator;
|
|
60
92
|
constructor(deps: ChannelManagerDeps);
|
|
61
93
|
private log;
|
|
@@ -83,6 +115,24 @@ export declare class ChannelManager {
|
|
|
83
115
|
dispose(): Promise<void>;
|
|
84
116
|
private handleInbound;
|
|
85
117
|
private replyTo;
|
|
118
|
+
/**
|
|
119
|
+
* Called (via the ConsentManager `onRequest` bridge) when a tool in a channel
|
|
120
|
+
* session needs approval. Sends an in-band yes/no prompt to the originating
|
|
121
|
+
* chat and records the pending request so a reply can resolve it.
|
|
122
|
+
*/
|
|
123
|
+
handleConsentRequest(request: ConsentRequest): void;
|
|
124
|
+
/**
|
|
125
|
+
* Called (via the ConsentManager `onDecision` bridge) when any consent
|
|
126
|
+
* request resolves. Clears channel-side mappings and, on timeout, lets the
|
|
127
|
+
* user know the action was skipped.
|
|
128
|
+
*/
|
|
129
|
+
handleConsentDecision(decision: ConsentDecision): void;
|
|
130
|
+
/**
|
|
131
|
+
* If the conversation has an outstanding approval, interpret this inbound
|
|
132
|
+
* message as the yes/no answer and resolve the consent request. Returns true
|
|
133
|
+
* when the message was consumed as a consent reply (and must NOT start a turn).
|
|
134
|
+
*/
|
|
135
|
+
private tryResolveConsent;
|
|
86
136
|
}
|
|
87
137
|
export declare class AgentLoopReplyGenerator implements ReplyGenerator {
|
|
88
138
|
private readonly deps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/channels/manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/channels/manager.ts"],"names":[],"mappings":"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"}
|
package/dist/channels/manager.js
CHANGED
|
@@ -5,12 +5,27 @@
|
|
|
5
5
|
* config, decides which inbound messages warrant a reply, runs the agent loop to
|
|
6
6
|
* produce that reply, and sends it back through the connector.
|
|
7
7
|
*/
|
|
8
|
-
import { runAgentLoop,
|
|
8
|
+
import { runAgentLoop, buildTieredToolSchemas, toOpenAIName, SteeringController, } from "../tools/agent-loop.js";
|
|
9
|
+
import { buildSystemPrompt } from "../tools/prompts/index.js";
|
|
10
|
+
import { MUTATING_TOOLS } from "../tools/chat-modes.js";
|
|
9
11
|
import { uuidv7 } from "../db/uuidv7.js";
|
|
10
12
|
const DEFAULT_SYSTEM_PROMPT = "You are Jait, a helpful AI assistant replying over a messaging channel (e.g. WhatsApp). " +
|
|
11
13
|
"Keep replies concise and conversational — they are read on a phone. " +
|
|
12
14
|
"Do not use markdown headings or code fences unless explicitly asked.";
|
|
15
|
+
/**
|
|
16
|
+
* Channel-style guidance appended to the full agent system prompt. The base
|
|
17
|
+
* prompt grants the same tools/skills as the web chat; this note just adapts
|
|
18
|
+
* tone/format for a messaging surface.
|
|
19
|
+
*/
|
|
20
|
+
const CHANNEL_STYLE_NOTE = "You are replying over a messaging channel (e.g. WhatsApp), read on a phone, so keep replies " +
|
|
21
|
+
"concise and conversational and avoid markdown headings or code fences unless explicitly asked. " +
|
|
22
|
+
"You have the same tools and skills as the desktop app — use them to actually perform tasks " +
|
|
23
|
+
"(run commands, search, read/edit files, manage skills, etc.) instead of only describing them.";
|
|
13
24
|
const DEFAULT_MAX_HISTORY = 20;
|
|
25
|
+
/** Max tool-calling rounds for a channel reply — matches the web chat budget. */
|
|
26
|
+
const CHANNEL_MAX_TOOL_ROUNDS = 15;
|
|
27
|
+
/** Default approval window for an in-band consent prompt before auto-deny. */
|
|
28
|
+
const DEFAULT_CONSENT_TIMEOUT_MS = 5 * 60_000;
|
|
14
29
|
/** Normalize a WhatsApp-style id to its bare number for allowlist comparison. */
|
|
15
30
|
export function normalizeSenderId(id) {
|
|
16
31
|
// "<number>@s.whatsapp.net" / "<number>:<device>@..." / "+<number>" → "<number>"
|
|
@@ -43,6 +58,12 @@ export class ChannelManager {
|
|
|
43
58
|
histories = new Map();
|
|
44
59
|
/** Per-conversation serialization so messages are answered in order. */
|
|
45
60
|
locks = new Map();
|
|
61
|
+
/** sessionId → conversation target, so consent prompts reach the right chat. */
|
|
62
|
+
sessionTargets = new Map();
|
|
63
|
+
/** conversationKey → pending consent requestId (one outstanding approval per chat). */
|
|
64
|
+
consentByConversation = new Map();
|
|
65
|
+
/** requestId → conversation, to clear mappings once a decision lands. */
|
|
66
|
+
consentTargets = new Map();
|
|
46
67
|
replyGenerator;
|
|
47
68
|
constructor(deps) {
|
|
48
69
|
this.deps = deps;
|
|
@@ -181,6 +202,12 @@ export class ChannelManager {
|
|
|
181
202
|
if (!shouldRespond(msg, config))
|
|
182
203
|
return;
|
|
183
204
|
const key = `${msg.channelId}:${msg.conversationId}`;
|
|
205
|
+
// If we're awaiting a yes/no approval in this conversation, this message is
|
|
206
|
+
// the answer to it. Handle it OUTSIDE the per-conversation lock — the reply
|
|
207
|
+
// turn that requested consent is holding the lock while it blocks on this
|
|
208
|
+
// very message, so queuing behind the lock would deadlock.
|
|
209
|
+
if (await this.tryResolveConsent(managed, msg, key))
|
|
210
|
+
return;
|
|
184
211
|
// Serialize replies per conversation.
|
|
185
212
|
const prev = this.locks.get(key) ?? Promise.resolve();
|
|
186
213
|
const next = prev
|
|
@@ -200,10 +227,13 @@ export class ChannelManager {
|
|
|
200
227
|
history.push({ role: "user", content: msg.text });
|
|
201
228
|
// Resolve allowed tools (filtered to those that actually exist).
|
|
202
229
|
const allowedTools = new Set((config.tools ?? []).filter((t) => this.deps.toolRegistry?.has(t)));
|
|
230
|
+
// Record where this session lives so consent prompts reach the right chat.
|
|
231
|
+
const sessionId = `channel:${key}`;
|
|
232
|
+
this.sessionTargets.set(sessionId, { channelId: msg.channelId, conversationId: msg.conversationId, key });
|
|
203
233
|
try {
|
|
204
234
|
const reply = (await this.replyGenerator.generate(history, {
|
|
205
235
|
channelId: msg.channelId,
|
|
206
|
-
sessionId
|
|
236
|
+
sessionId,
|
|
207
237
|
allowedTools,
|
|
208
238
|
})).trim();
|
|
209
239
|
if (reply) {
|
|
@@ -226,8 +256,100 @@ export class ChannelManager {
|
|
|
226
256
|
}
|
|
227
257
|
catch { /* connector may be down */ }
|
|
228
258
|
}
|
|
259
|
+
finally {
|
|
260
|
+
this.sessionTargets.delete(sessionId);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
/* ── In-band tool approval (consent over the chat) ──────────────── */
|
|
264
|
+
/**
|
|
265
|
+
* Called (via the ConsentManager `onRequest` bridge) when a tool in a channel
|
|
266
|
+
* session needs approval. Sends an in-band yes/no prompt to the originating
|
|
267
|
+
* chat and records the pending request so a reply can resolve it.
|
|
268
|
+
*/
|
|
269
|
+
handleConsentRequest(request) {
|
|
270
|
+
const target = this.sessionTargets.get(request.sessionId);
|
|
271
|
+
if (!target)
|
|
272
|
+
return; // not a channel session (e.g. web chat) — ignore.
|
|
273
|
+
const managed = this.channels.get(target.channelId);
|
|
274
|
+
if (!managed)
|
|
275
|
+
return;
|
|
276
|
+
this.consentByConversation.set(target.key, request.id);
|
|
277
|
+
this.consentTargets.set(request.id, target);
|
|
278
|
+
const text = buildConsentPrompt(request);
|
|
279
|
+
void managed.connector.send({ conversationId: target.conversationId, text }).catch((err) => {
|
|
280
|
+
this.log(`failed to send consent prompt for ${target.key}:`, err);
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
/**
|
|
284
|
+
* Called (via the ConsentManager `onDecision` bridge) when any consent
|
|
285
|
+
* request resolves. Clears channel-side mappings and, on timeout, lets the
|
|
286
|
+
* user know the action was skipped.
|
|
287
|
+
*/
|
|
288
|
+
handleConsentDecision(decision) {
|
|
289
|
+
const target = this.consentTargets.get(decision.requestId);
|
|
290
|
+
if (!target)
|
|
291
|
+
return; // not a channel consent.
|
|
292
|
+
this.consentTargets.delete(decision.requestId);
|
|
293
|
+
if (this.consentByConversation.get(target.key) === decision.requestId) {
|
|
294
|
+
this.consentByConversation.delete(target.key);
|
|
295
|
+
}
|
|
296
|
+
if (decision.decidedVia === "timeout") {
|
|
297
|
+
const managed = this.channels.get(target.channelId);
|
|
298
|
+
void managed?.connector
|
|
299
|
+
.send({ conversationId: target.conversationId, text: "⌛ No reply — skipped that action." })
|
|
300
|
+
.catch(() => { });
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* If the conversation has an outstanding approval, interpret this inbound
|
|
305
|
+
* message as the yes/no answer and resolve the consent request. Returns true
|
|
306
|
+
* when the message was consumed as a consent reply (and must NOT start a turn).
|
|
307
|
+
*/
|
|
308
|
+
async tryResolveConsent(managed, msg, key) {
|
|
309
|
+
const requestId = this.consentByConversation.get(key);
|
|
310
|
+
if (!requestId || !this.deps.consentManager)
|
|
311
|
+
return false;
|
|
312
|
+
const verdict = parseYesNo(msg.text);
|
|
313
|
+
if (verdict === "yes") {
|
|
314
|
+
this.deps.consentManager.approve(requestId, "click", "Approved over channel");
|
|
315
|
+
return true;
|
|
316
|
+
}
|
|
317
|
+
if (verdict === "no") {
|
|
318
|
+
this.deps.consentManager.reject(requestId, "click", "Declined over channel");
|
|
319
|
+
return true;
|
|
320
|
+
}
|
|
321
|
+
// Ambiguous — keep the request pending and re-prompt.
|
|
322
|
+
try {
|
|
323
|
+
await managed.connector.send({
|
|
324
|
+
conversationId: msg.conversationId,
|
|
325
|
+
text: "Please reply *yes* to proceed or *no* to skip.",
|
|
326
|
+
});
|
|
327
|
+
}
|
|
328
|
+
catch { /* connector may be down */ }
|
|
329
|
+
return true;
|
|
229
330
|
}
|
|
230
331
|
}
|
|
332
|
+
/** Classify a free-text reply as a yes/no/unknown approval verdict. */
|
|
333
|
+
function parseYesNo(text) {
|
|
334
|
+
const t = text.trim().toLowerCase().replace(/[!.,]+$/, "");
|
|
335
|
+
if (/^(y|yes|yeah|yep|yup|ok|okay|sure|go|do it|proceed|approve|approved|ja|👍|✅)$/.test(t))
|
|
336
|
+
return "yes";
|
|
337
|
+
if (/^(n|no|nope|nah|stop|cancel|skip|deny|denied|don'?t|nein|👎|🚫|❌)$/.test(t))
|
|
338
|
+
return "no";
|
|
339
|
+
return "unknown";
|
|
340
|
+
}
|
|
341
|
+
/** Render an in-band approval prompt for a pending tool execution. */
|
|
342
|
+
function buildConsentPrompt(request) {
|
|
343
|
+
const preview = request.preview ?? {};
|
|
344
|
+
let detail = "";
|
|
345
|
+
if (typeof preview.command === "string")
|
|
346
|
+
detail = `\n\`${preview.command}\``;
|
|
347
|
+
else if (typeof preview.path === "string")
|
|
348
|
+
detail = `\n${preview.path}`;
|
|
349
|
+
else if (typeof preview.package === "string")
|
|
350
|
+
detail = `\n${preview.package}`;
|
|
351
|
+
return `⚠️ I'd like to run *${request.toolName}*${detail}\nReply *yes* to proceed or *no* to skip. (auto-skips in 5 min)`;
|
|
352
|
+
}
|
|
231
353
|
/* ------------------------------------------------------------------ */
|
|
232
354
|
/* Default reply generator — runs the agent loop */
|
|
233
355
|
/* ------------------------------------------------------------------ */
|
|
@@ -237,21 +359,90 @@ export class AgentLoopReplyGenerator {
|
|
|
237
359
|
this.deps = deps;
|
|
238
360
|
}
|
|
239
361
|
async generate(history, ctx) {
|
|
240
|
-
const { toolRegistry, audit
|
|
241
|
-
const
|
|
242
|
-
const
|
|
243
|
-
|
|
362
|
+
const { toolRegistry, audit } = this.deps;
|
|
363
|
+
const auth = this.deps.resolveAuth?.() ?? this.deps.auth;
|
|
364
|
+
const llm = this.deps.resolveLLM();
|
|
365
|
+
const disabledTools = auth?.disabledTools;
|
|
366
|
+
// Tools: the channel agent gets the same tiered registry as the web chat
|
|
367
|
+
// (respecting the owner's disabled tools). The per-channel `tools` allowlist,
|
|
368
|
+
// when non-empty, narrows further; empty/undefined → full access.
|
|
369
|
+
const restrictTo = ctx.allowedTools.size > 0 ? ctx.allowedTools : undefined;
|
|
370
|
+
const isOllama = (auth?.jaitBackend ?? "") === "ollama";
|
|
371
|
+
let toolSchemas = toolRegistry
|
|
372
|
+
? buildTieredToolSchemas(toolRegistry, disabledTools, { ollamaEssentials: isOllama })
|
|
244
373
|
: [];
|
|
374
|
+
if (restrictTo) {
|
|
375
|
+
const allowedOpenAiNames = new Set([...restrictTo].map(toOpenAIName));
|
|
376
|
+
toolSchemas = toolSchemas.filter((s) => allowedOpenAiNames.has(s.function.name));
|
|
377
|
+
}
|
|
245
378
|
const hasTools = toolSchemas.length > 0;
|
|
246
379
|
const abort = new AbortController();
|
|
247
380
|
const steering = new SteeringController();
|
|
381
|
+
// Refresh the system prompt each turn with the full agent capabilities +
|
|
382
|
+
// skill catalogue, so the channel agent knows about (and can use) the same
|
|
383
|
+
// tools and skills as the desktop chat.
|
|
384
|
+
if (hasTools) {
|
|
385
|
+
const modelEndpoint = {
|
|
386
|
+
model: llm.openaiModel,
|
|
387
|
+
baseUrl: llm.openaiBaseUrl,
|
|
388
|
+
backend: auth?.jaitBackend,
|
|
389
|
+
};
|
|
390
|
+
const promptCtx = {
|
|
391
|
+
projectRoot: this.deps.projectRoot ?? process.cwd(),
|
|
392
|
+
skills: this.deps.resolveSkills?.(),
|
|
393
|
+
backend: auth?.jaitBackend,
|
|
394
|
+
};
|
|
395
|
+
const channelNote = this.deps.systemPrompt ?? CHANNEL_STYLE_NOTE;
|
|
396
|
+
const systemPrompt = `${buildSystemPrompt("agent", modelEndpoint, promptCtx)}\n\n${channelNote}`;
|
|
397
|
+
if (history[0]?.role === "system")
|
|
398
|
+
history[0] = { role: "system", content: systemPrompt };
|
|
399
|
+
else
|
|
400
|
+
history.unshift({ role: "system", content: systemPrompt });
|
|
401
|
+
}
|
|
248
402
|
const executor = async (name, args, sid, _auth, onChunk, signal) => {
|
|
249
|
-
if (!
|
|
403
|
+
if (!toolRegistry || !toolRegistry.has(name)) {
|
|
404
|
+
return { ok: false, message: `Tool '${name}' is not available` };
|
|
405
|
+
}
|
|
406
|
+
if (restrictTo && !restrictTo.has(name)) {
|
|
250
407
|
return { ok: false, message: `Tool '${name}' is not available to this channel` };
|
|
251
408
|
}
|
|
409
|
+
if (disabledTools?.has(name)) {
|
|
410
|
+
return { ok: false, message: `Tool '${name}' is disabled` };
|
|
411
|
+
}
|
|
412
|
+
const actionId = uuidv7();
|
|
413
|
+
// In-band approval: mutating tools require a yes/no reply from the user
|
|
414
|
+
// before running. The ConsentManager `onRequest` bridge sends the prompt
|
|
415
|
+
// to the chat; this awaits the decision (or the timeout).
|
|
416
|
+
const consent = this.deps.consentManager;
|
|
417
|
+
if (consent && MUTATING_TOOLS.has(name)) {
|
|
418
|
+
const decision = await consent.requestConsent({
|
|
419
|
+
actionId,
|
|
420
|
+
toolName: name,
|
|
421
|
+
summary: `Run ${name}`,
|
|
422
|
+
preview: args ?? {},
|
|
423
|
+
risk: "high",
|
|
424
|
+
policy: {
|
|
425
|
+
consentLevel: "always",
|
|
426
|
+
description: "Mutating tool invoked over a messaging channel",
|
|
427
|
+
knownTool: true,
|
|
428
|
+
source: "profile",
|
|
429
|
+
},
|
|
430
|
+
sessionId: sid,
|
|
431
|
+
timeoutMs: this.deps.consentTimeoutMs ?? DEFAULT_CONSENT_TIMEOUT_MS,
|
|
432
|
+
});
|
|
433
|
+
if (!decision.approved) {
|
|
434
|
+
return {
|
|
435
|
+
ok: false,
|
|
436
|
+
message: decision.decidedVia === "timeout"
|
|
437
|
+
? `Approval for ${name} timed out — skipped.`
|
|
438
|
+
: `User declined to run ${name}.`,
|
|
439
|
+
data: { consentRejected: true, decidedVia: decision.decidedVia },
|
|
440
|
+
};
|
|
441
|
+
}
|
|
442
|
+
}
|
|
252
443
|
return toolRegistry.execute(name, args, {
|
|
253
444
|
sessionId: sid,
|
|
254
|
-
actionId
|
|
445
|
+
actionId,
|
|
255
446
|
projectRoot: this.deps.projectRoot ?? process.cwd(),
|
|
256
447
|
requestedBy: `channel:${ctx.channelId}`,
|
|
257
448
|
userId: auth?.userId,
|
|
@@ -263,7 +454,7 @@ export class AgentLoopReplyGenerator {
|
|
|
263
454
|
}, audit);
|
|
264
455
|
};
|
|
265
456
|
const result = await runAgentLoop({
|
|
266
|
-
llm
|
|
457
|
+
llm,
|
|
267
458
|
history,
|
|
268
459
|
toolSchemas,
|
|
269
460
|
hasTools,
|
|
@@ -272,11 +463,15 @@ export class AgentLoopReplyGenerator {
|
|
|
272
463
|
? { userId: auth.userId, apiKeys: auth.apiKeys, jaitBackend: auth.jaitBackend, model: auth.model }
|
|
273
464
|
: undefined,
|
|
274
465
|
abort,
|
|
275
|
-
maxRounds: hasTools ?
|
|
466
|
+
maxRounds: hasTools ? CHANNEL_MAX_TOOL_ROUNDS : 1,
|
|
276
467
|
maxRetries: 1,
|
|
277
|
-
|
|
468
|
+
// Sequential so at most one approval prompt is outstanding per chat —
|
|
469
|
+
// a messaging surface can only field one yes/no at a time.
|
|
470
|
+
parallel: false,
|
|
278
471
|
toolRegistry,
|
|
279
|
-
|
|
472
|
+
disabledTools,
|
|
473
|
+
mode: "agent",
|
|
474
|
+
allowedTools: restrictTo,
|
|
280
475
|
}, executor, steering);
|
|
281
476
|
return result.content ?? "";
|
|
282
477
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/channels/manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/channels/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/db/connection.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAOlE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,MAAM,MAAM,MAAM,GAAG,SAAS,CAAC;AAE/B,wDAAwD;AACxD,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAAC,CAoBnG;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,QA8CrD;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/db/connection.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAOlE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,MAAM,MAAM,MAAM,GAAG,SAAS,CAAC;AAE/B,wDAAwD;AACxD,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAAC,CAoBnG;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,QA8CrD;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,cAAc,QAqElD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAO/D"}
|
package/dist/db/connection.js
CHANGED
|
@@ -102,6 +102,7 @@ export function verifySchema(sqlite) {
|
|
|
102
102
|
disabled_tools: "TEXT",
|
|
103
103
|
stt_provider: "TEXT NOT NULL DEFAULT 'simulated'",
|
|
104
104
|
chat_provider: "TEXT NOT NULL DEFAULT 'jait'",
|
|
105
|
+
selected_model: "TEXT",
|
|
105
106
|
project_picker_path: "TEXT",
|
|
106
107
|
project_picker_node_id: "TEXT",
|
|
107
108
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/db/connection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/db/connection.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAKlC,wDAAwD;AACxD,MAAM,UAAU,aAAa;IAC3B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AACrD,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAe;IAChD,MAAM,YAAY,GAAG,MAAM,IAAI,aAAa,EAAE,CAAC;IAE/C,mDAAmD;IACnD,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACrB,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,CAAC;IAEjD,yDAAyD;IACzD,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACzC,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IAExC,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;IAEvC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;AACxB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,MAAsB;IACpD,8CAA8C;IAC9C,MAAM,CAAC,IAAI,CAAC;;;;;;GAMX,CAAC,CAAC;IAEH,kDAAkD;IAClD,MAAM,OAAO,GAAG,IAAI,GAAG,CACpB,MAAM,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC,GAAG,EAAuB;SACrE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACpB,CAAC;IAEF,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAAE,SAAS;QAExC,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,uBAAuB,SAAS,CAAC,EAAE,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YACtE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAEtB,8CAA8C;YAC9C,MAAM,CAAC,OAAO,CACZ,iEAAiE,CAClE,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YAC9D,GAAG,EAAE,CAAC;QACR,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,MAAM,IAAI,KAAK,CACb,sBAAsB,SAAS,CAAC,EAAE,KAAK,SAAS,CAAC,IAAI,aAAa,MAAM,IAAI;gBAC5E,sGAAsG,EACtG,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,yCAAyC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;IACtF,CAAC;IAED,oEAAoE;IACpE,wDAAwD;IACxD,YAAY,CAAC,MAAM,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,MAAsB;IACjD,4DAA4D;IAC5D,MAAM,eAAe,GAA2C;QAC9D,aAAa,EAAE;YACb,IAAI,EAAE,kCAAkC;YACxC,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,SAAS;YACpB,QAAQ,EAAE,MAAM;YAChB,cAAc,EAAE,MAAM;YACtB,QAAQ,EAAE,MAAM;YAChB,iBAAiB,EAAE,MAAM;YACzB,mBAAmB,EAAE,MAAM;YAC3B,SAAS,EAAE,MAAM;YACjB,YAAY,EAAE,MAAM;YACpB,YAAY,EAAE,SAAS;YACvB,iBAAiB,EAAE,SAAS;YAC5B,gBAAgB,EAAE,SAAS;SAC5B;QACD,aAAa,EAAE;YACb,cAAc,EAAE,MAAM;YACtB,YAAY,EAAE,mCAAmC;YACjD,aAAa,EAAE,8BAA8B;YAC7C,cAAc,EAAE,MAAM;YACtB,mBAAmB,EAAE,MAAM;YAC3B,sBAAsB,EAAE,MAAM;SAC/B;QACD,QAAQ,EAAE;YACR,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,MAAM;SACjB;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,MAAM;SACnB;QACD,uBAAuB,EAAE;YACvB,SAAS,EAAE,MAAM;YACjB,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,MAAM;SACjB;KACF,CAAC;IAEF,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QAC/D,yDAAyD;QACzD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAChC,2DAA2D,CAC5D,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,WAAW;YAAE,SAAS;QAE3B,MAAM,QAAQ,GAAG,IAAI,GAAG,CACrB,MAAM,CAAC,OAAO,CAAC,qBAAqB,KAAK,GAAG,CAAC,CAAC,GAAG,EAAyB;aACxE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CACtB,CAAC;QAEF,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAChC,IAAI,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,eAAe,KAAK,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,yCAAyC,KAAK,IAAI,GAAG,EAAE,CAAC,CAAC;gBACrE,QAAQ,EAAE,CAAC;YACb,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,uDAAuD;gBACvD,OAAO,CAAC,KAAK,CAAC,8BAA8B,KAAK,IAAI,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,sBAAsB,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAsB;IACrD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC,GAAG,EAAiC,CAAC;QACxG,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC"}
|
package/dist/db/schema.d.ts
CHANGED
|
@@ -612,6 +612,25 @@ export declare const userSettings: import("drizzle-orm/sqlite-core").SQLiteTable
|
|
|
612
612
|
}, {}, {
|
|
613
613
|
length: number | undefined;
|
|
614
614
|
}>;
|
|
615
|
+
selectedModel: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
616
|
+
name: "selected_model";
|
|
617
|
+
tableName: "user_settings";
|
|
618
|
+
dataType: "string";
|
|
619
|
+
columnType: "SQLiteText";
|
|
620
|
+
data: string;
|
|
621
|
+
driverParam: string;
|
|
622
|
+
notNull: false;
|
|
623
|
+
hasDefault: false;
|
|
624
|
+
isPrimaryKey: false;
|
|
625
|
+
isAutoincrement: false;
|
|
626
|
+
hasRuntimeDefault: false;
|
|
627
|
+
enumValues: [string, ...string[]];
|
|
628
|
+
baseColumn: never;
|
|
629
|
+
identity: undefined;
|
|
630
|
+
generated: undefined;
|
|
631
|
+
}, {}, {
|
|
632
|
+
length: number | undefined;
|
|
633
|
+
}>;
|
|
615
634
|
projectPickerPath: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
616
635
|
name: "project_picker_path";
|
|
617
636
|
tableName: "user_settings";
|
package/dist/db/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBpB,CAAC;AAGF,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUnB,CAAC;AAGH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYjB,CAAC;AAGF,eAAO,MAAM,YAAY
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/db/schema.js
CHANGED
|
@@ -52,6 +52,7 @@ export const userSettings = sqliteTable("user_settings", {
|
|
|
52
52
|
chatProvider: text("chat_provider").notNull().default("jait"), // 'jait' | 'codex' | 'claude-code'
|
|
53
53
|
jaitBackend: text("jait_backend").notNull().default("openai"), // 'openai' | 'openrouter'
|
|
54
54
|
recentModels: text("recent_models"), // JSON string[] of recently used model ids
|
|
55
|
+
selectedModel: text("selected_model"), // last model id picked in the UI; used by background channels (e.g. WhatsApp)
|
|
55
56
|
projectPickerPath: text("project_picker_path"),
|
|
56
57
|
projectPickerNodeId: text("project_picker_node_id"),
|
|
57
58
|
updatedAt: text("updated_at").notNull(),
|