@nehanahmed/forge 0.1.0 → 0.1.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/README.MD +4 -3
- package/dist/cli/agent-cli.d.ts +1 -1
- package/dist/cli/agent-cli.d.ts.map +1 -1
- package/dist/cli/agent-cli.js +4 -3
- package/dist/cli/agent-cli.js.map +1 -1
- package/dist/cli/app.d.ts.map +1 -1
- package/dist/cli/app.js +54 -16
- package/dist/cli/app.js.map +1 -1
- package/dist/cli/components/ModelPickerModal.d.ts +12 -0
- package/dist/cli/components/ModelPickerModal.d.ts.map +1 -0
- package/dist/cli/components/ModelPickerModal.js +95 -0
- package/dist/cli/components/ModelPickerModal.js.map +1 -0
- package/dist/core/client.d.ts.map +1 -1
- package/dist/core/client.js +2 -0
- package/dist/core/client.js.map +1 -1
- package/dist/core/index.d.ts +2 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +2 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/models.d.ts +10 -0
- package/dist/core/models.d.ts.map +1 -0
- package/dist/core/models.js +30 -0
- package/dist/core/models.js.map +1 -0
- package/dist/core/state.d.ts +3 -1
- package/dist/core/state.d.ts.map +1 -1
- package/dist/core/state.js +13 -4
- package/dist/core/state.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +5 -4
package/README.MD
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
# Forge
|
|
1
|
+
# Forge [](https://www.npmjs.com/package/@nehanahmed/forge)
|
|
2
|
+
Forge is a terminal-based AI coding agent that works in your current project directory. It can inspect and search a codebase, run shell commands, edit files, and delegate read-only investigations to a read-only sub-agent.
|
|
2
3
|
|
|
3
|
-
Forge
|
|
4
|
+

|
|
4
5
|
|
|
5
6
|
Forge uses OpenRouter and saves conversation sessions locally so you can resume work later.
|
|
6
7
|
|
|
@@ -97,7 +98,7 @@ Shell commands run with your operating-system permissions and are not sandboxed.
|
|
|
97
98
|
|
|
98
99
|
## Local data
|
|
99
100
|
|
|
100
|
-
Conversation state is stored in `.agent-sessions/` under the working directory. Session titles and metadata are stored in `.forge/meta/` under that directory. The API key saved by `forge config set-key` is
|
|
101
|
+
Conversation state is stored in `.agent-sessions/` under the working directory. Session titles and metadata are stored in `.forge/meta/` under that directory. The API key saved by `forge config set-key` is saved in `~/.forge/config.json`.
|
|
101
102
|
|
|
102
103
|
## Development
|
|
103
104
|
|
package/dist/cli/agent-cli.d.ts
CHANGED
|
@@ -25,5 +25,5 @@ export type Callbacks = {
|
|
|
25
25
|
onConfirm: (description: string) => Promise<boolean>;
|
|
26
26
|
onUsage: (inputTokens: number, outputTokens: number, cost: number | undefined) => void;
|
|
27
27
|
};
|
|
28
|
-
export declare function runAgent(sessionId: string, userMessage: string, callbacks: Callbacks): Promise<ConversationState>;
|
|
28
|
+
export declare function runAgent(sessionId: string, userMessage: string, callbacks: Callbacks, modelId?: string): Promise<ConversationState>;
|
|
29
29
|
//# sourceMappingURL=agent-cli.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-cli.d.ts","sourceRoot":"","sources":["../../src/cli/agent-cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAe,KAAK,iBAAiB,EAAsB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-cli.d.ts","sourceRoot":"","sources":["../../src/cli/agent-cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAe,KAAK,iBAAiB,EAAsB,MAAM,mBAAmB,CAAC;AAQ5F,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3C,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;IACjC,SAAS,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,OAAO,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,KACxE,IAAI,CAAC;CACX,CAAC;AAMF,wBAAsB,QAAQ,CAC5B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,SAAS,EACpB,OAAO,GAAE,MAAyB,GACjC,OAAO,CAAC,iBAAiB,CAAC,CAoE5B"}
|
package/dist/cli/agent-cli.js
CHANGED
|
@@ -5,10 +5,11 @@ import { getClient } from '../core/client.js';
|
|
|
5
5
|
import { buildSystemPrompt, MAX_ITERATIONS, MODEL, SYSTEM_PROMPT } from '../core/constants.js';
|
|
6
6
|
import { createStateAccessor, saveSessionTitle } from '../core/state.js';
|
|
7
7
|
import { deriveSessionTitle } from '../tools/helpers.js';
|
|
8
|
+
import { DEFAULT_MODEL_ID } from '../core/models.js';
|
|
8
9
|
function generateId() {
|
|
9
10
|
return `msg_${Date.now()}_${Math.random().toString(36).slice(2, 9)}`;
|
|
10
11
|
}
|
|
11
|
-
export async function runAgent(sessionId, userMessage, callbacks) {
|
|
12
|
+
export async function runAgent(sessionId, userMessage, callbacks, modelId = DEFAULT_MODEL_ID) {
|
|
12
13
|
const tools = createTools(callbacks.onConfirm);
|
|
13
14
|
const stateAccessor = createStateAccessor(sessionId);
|
|
14
15
|
const priorState = await stateAccessor.load();
|
|
@@ -16,7 +17,7 @@ export async function runAgent(sessionId, userMessage, callbacks) {
|
|
|
16
17
|
let result;
|
|
17
18
|
try {
|
|
18
19
|
result = getClient().callModel({
|
|
19
|
-
model:
|
|
20
|
+
model: modelId,
|
|
20
21
|
instructions: buildSystemPrompt(process.cwd()),
|
|
21
22
|
input: userMessage,
|
|
22
23
|
tools,
|
|
@@ -33,7 +34,7 @@ export async function runAgent(sessionId, userMessage, callbacks) {
|
|
|
33
34
|
throw err;
|
|
34
35
|
}
|
|
35
36
|
if (isNewSession) {
|
|
36
|
-
saveSessionTitle(sessionId, deriveSessionTitle(userMessage));
|
|
37
|
+
saveSessionTitle(sessionId, deriveSessionTitle(userMessage), modelId);
|
|
37
38
|
}
|
|
38
39
|
const reasoningTask = (async () => {
|
|
39
40
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-cli.js","sourceRoot":"","sources":["../../src/cli/agent-cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAA0B,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-cli.js","sourceRoot":"","sources":["../../src/cli/agent-cli.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/app.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":";AACA,OAAO,eAAe,CAAC;AAIvB,OAAO,
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":";AACA,OAAO,eAAe,CAAC;AAIvB,OAAO,KAAsC,MAAM,OAAO,CAAC;AAkH3D,iBAAS,GAAG,sBAsMX;AAID,OAAO,EAAE,GAAG,EAAE,CAAC"}
|
package/dist/cli/app.js
CHANGED
|
@@ -4,16 +4,17 @@ import 'dotenv/config';
|
|
|
4
4
|
import path from 'path';
|
|
5
5
|
import os from 'os';
|
|
6
6
|
import fs from 'fs';
|
|
7
|
-
import React, { useState, useRef } from 'react';
|
|
7
|
+
import React, { useState, useRef, useEffect } from 'react';
|
|
8
8
|
import { render, Box, Text, useInput } from 'ink';
|
|
9
9
|
import TextInput from 'ink-text-input';
|
|
10
10
|
import Spinner from 'ink-spinner';
|
|
11
11
|
import Gradient from 'ink-gradient';
|
|
12
12
|
import { randomUUID } from 'crypto';
|
|
13
13
|
import { runAgent } from './agent-cli.js';
|
|
14
|
-
import {
|
|
15
|
-
import { getLatestSessionId, listSessions } from '../core/index.js';
|
|
14
|
+
import { AGENT_NAME } from '../core/constants.js';
|
|
15
|
+
import { getLatestSessionId, listSessions, saveSessionTitle, getSessionModel, CODING_MODELS, DEFAULT_MODEL_ID, getModelName } from '../core/index.js';
|
|
16
16
|
import { listSessionMeta } from '../core/state.js';
|
|
17
|
+
import { ModelPickerModal } from './components/ModelPickerModal.js';
|
|
17
18
|
// --- config command: runs before anything else, exits early if matched ---
|
|
18
19
|
const cliArgs = process.argv.slice(2);
|
|
19
20
|
if (cliArgs[0] === 'config' && cliArgs[1] === 'set-key') {
|
|
@@ -29,8 +30,8 @@ if (cliArgs[0] === 'config' && cliArgs[1] === 'set-key') {
|
|
|
29
30
|
process.exit(0);
|
|
30
31
|
}
|
|
31
32
|
let entryId = 0;
|
|
32
|
-
function Header({ sessionId, title }) {
|
|
33
|
-
return (_jsx(Box, { flexDirection: "column", padding: 1, children: _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Gradient, { name: "pastel", children: _jsxs(Text, { bold: true, children: ["\u25B2 ", AGENT_NAME] }) }), _jsxs(Text, { dimColor: true, children: ["model: ",
|
|
33
|
+
function Header({ sessionId, title, modelName }) {
|
|
34
|
+
return (_jsx(Box, { flexDirection: "column", padding: 1, children: _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Gradient, { name: "pastel", children: _jsxs(Text, { bold: true, children: ["\u25B2 ", AGENT_NAME] }) }), _jsxs(Text, { dimColor: true, children: ["model: ", modelName, " | session: ", sessionId.slice(0, 8)] }), _jsxs(Text, { dimColor: true, children: ["title: ", title || 'Unnamed', " | dir: ", process.cwd()] })] }) }));
|
|
34
35
|
}
|
|
35
36
|
function EntryLine({ entry }) {
|
|
36
37
|
switch (entry.kind) {
|
|
@@ -71,6 +72,15 @@ function App() {
|
|
|
71
72
|
const [entries, setEntries] = useState([]);
|
|
72
73
|
const [usage, setUsage] = useState({ inputTokens: 0, outputTokens: 0, cost: 0 });
|
|
73
74
|
const [title, setTitle] = useState(null);
|
|
75
|
+
const [currentModelId, setCurrentModelId] = useState(DEFAULT_MODEL_ID);
|
|
76
|
+
const [showModelPicker, setShowModelPicker] = useState(false);
|
|
77
|
+
// Load saved model for resumed session
|
|
78
|
+
useEffect(() => {
|
|
79
|
+
const savedModel = getSessionModel(sessionId);
|
|
80
|
+
if (savedModel) {
|
|
81
|
+
setCurrentModelId(savedModel);
|
|
82
|
+
}
|
|
83
|
+
}, [sessionId]);
|
|
74
84
|
function pushEntry(kind, text) {
|
|
75
85
|
setEntries(prev => [...prev, { id: entryId++, kind, text }]);
|
|
76
86
|
}
|
|
@@ -102,31 +112,40 @@ function App() {
|
|
|
102
112
|
resolver?.(lower === 'y');
|
|
103
113
|
}
|
|
104
114
|
});
|
|
115
|
+
function handleModelSelect(modelId) {
|
|
116
|
+
setCurrentModelId(modelId);
|
|
117
|
+
saveSessionTitle(sessionId, title ?? '', modelId);
|
|
118
|
+
setShowModelPicker(false);
|
|
119
|
+
pushEntry('info', `Model switched to ${getModelName(modelId)}`);
|
|
120
|
+
}
|
|
105
121
|
async function handleSubmit(value) {
|
|
106
|
-
|
|
122
|
+
const trimmed = value.trim();
|
|
123
|
+
if (!trimmed || isProcessing)
|
|
107
124
|
return;
|
|
108
|
-
|
|
125
|
+
const lower = trimmed.toLowerCase();
|
|
126
|
+
if (lower === '/exit') {
|
|
109
127
|
process.exit(0);
|
|
110
128
|
}
|
|
111
|
-
if (
|
|
129
|
+
if (lower === '/clear') {
|
|
112
130
|
setEntries([]);
|
|
113
131
|
setUsage({ inputTokens: 0, outputTokens: 0, cost: 0 });
|
|
114
132
|
setInput('');
|
|
115
133
|
return;
|
|
116
134
|
}
|
|
117
|
-
if (
|
|
135
|
+
if (lower === '/new') {
|
|
118
136
|
sessionIdRef.current = randomUUID();
|
|
119
137
|
setEntries([]);
|
|
120
138
|
setUsage({ inputTokens: 0, outputTokens: 0, cost: 0 });
|
|
139
|
+
setCurrentModelId(DEFAULT_MODEL_ID);
|
|
121
140
|
setInput('');
|
|
122
141
|
return;
|
|
123
142
|
}
|
|
124
|
-
if (
|
|
125
|
-
pushEntry('info', 'Available commands:\n/clear - Clear the chat history\n/help - Show this help message\n/exit - Exit the application');
|
|
143
|
+
if (lower === '/help') {
|
|
144
|
+
pushEntry('info', 'Available commands:\n/clear - Clear the chat history\n/help - Show this help message\n/exit - Exit the application\n/models - Open model picker\n/model <id> - Quick switch model');
|
|
126
145
|
setInput('');
|
|
127
146
|
return;
|
|
128
147
|
}
|
|
129
|
-
if (
|
|
148
|
+
if (lower === '/sessions') {
|
|
130
149
|
const sessions = listSessionMeta().sort((a, b) => b.createdAt - a.createdAt);
|
|
131
150
|
const lines = sessions.map(s => `${s.title} (${s.id.slice(0, 8)})`);
|
|
132
151
|
pushEntry('info', sessions.length ? `Sessions:\n${lines.join('\n')}` : 'No sessions yet.');
|
|
@@ -134,7 +153,26 @@ function App() {
|
|
|
134
153
|
setTitle(sessions.find(s => s.id === sessionId)?.title ?? null);
|
|
135
154
|
return;
|
|
136
155
|
}
|
|
137
|
-
|
|
156
|
+
if (lower === '/models') {
|
|
157
|
+
setShowModelPicker(true);
|
|
158
|
+
setInput('');
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
if (lower.startsWith('/model ')) {
|
|
162
|
+
const modelId = trimmed.slice(7).trim();
|
|
163
|
+
const model = CODING_MODELS.find(m => m.id === modelId);
|
|
164
|
+
if (model) {
|
|
165
|
+
setCurrentModelId(model.id);
|
|
166
|
+
saveSessionTitle(sessionId, title ?? '', model.id);
|
|
167
|
+
pushEntry('info', `Model switched to ${model.name}`);
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
pushEntry('info', `Unknown model: ${modelId}. Use /models to see available models.`);
|
|
171
|
+
}
|
|
172
|
+
setInput('');
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
pushEntry('user', trimmed);
|
|
138
176
|
setInput('');
|
|
139
177
|
setIsProcessing(true);
|
|
140
178
|
const usageLimit = (inputTokens, outputTokens, cost) => {
|
|
@@ -162,14 +200,14 @@ function App() {
|
|
|
162
200
|
break;
|
|
163
201
|
}
|
|
164
202
|
};
|
|
165
|
-
await runAgent(sessionId,
|
|
203
|
+
await runAgent(sessionId, trimmed, {
|
|
166
204
|
onLog,
|
|
167
205
|
onConfirm: handleConfirm,
|
|
168
206
|
onUsage: usageLimit,
|
|
169
|
-
});
|
|
207
|
+
}, currentModelId);
|
|
170
208
|
setIsProcessing(false);
|
|
171
209
|
}
|
|
172
|
-
return (_jsxs(Box, { flexDirection: "column", padding: 1, children: [_jsx(Header, { sessionId: sessionId, title: title }), _jsx(Box, { flexDirection: "column", children: entries.map(entry => (_jsx(EntryLine, { entry: entry }, entry.id))) }), pendingConfirm && (_jsxs(Box, { marginTop: 1, paddingX: 1, borderStyle: "round", borderColor: "red", children: [_jsx(Text, { color: "redBright", bold: true, children: '⚠ ' }), _jsxs(Text, { color: "red", children: ["Allow: ", pendingConfirm, "? "] }), _jsx(Text, { dimColor: true, children: "(y/n)" })] })), !pendingConfirm && (_jsxs(Box, { marginTop: 1, paddingX: 1, borderStyle: "round", borderColor: isProcessing ? 'gray' : 'cyan', children: [_jsx(Text, { color: "cyanBright", bold: true, children: '❯ ' }), _jsx(TextInput, { value: input, onChange: setInput, onSubmit: handleSubmit, focus: !isProcessing })] })), isProcessing && (_jsxs(Box, { marginTop: 1, children: [_jsx(Text, { color: "cyan", children: _jsx(Spinner, { type: "dots" }) }), _jsx(Text, { dimColor: true, children: " thinking..." })] })), _jsxs(Box, { marginTop: 1, children: [_jsx(Text, { dimColor: true, children: "type \"/exit\" to quit" }), _jsxs(Text, { dimColor: true, children: [" | Input tokens used: ", usage.inputTokens, " | Output tokens used: ", usage.outputTokens, " | estimated cost: $", usage.cost.toFixed(4)] })] })] }));
|
|
210
|
+
return (_jsxs(Box, { flexDirection: "column", padding: 1, children: [_jsx(Header, { sessionId: sessionId, title: title, modelName: getModelName(currentModelId) }), _jsx(Box, { flexDirection: "column", children: entries.map(entry => (_jsx(EntryLine, { entry: entry }, entry.id))) }), pendingConfirm && (_jsxs(Box, { marginTop: 1, paddingX: 1, borderStyle: "round", borderColor: "red", children: [_jsx(Text, { color: "redBright", bold: true, children: '⚠ ' }), _jsxs(Text, { color: "red", children: ["Allow: ", pendingConfirm, "? "] }), _jsx(Text, { dimColor: true, children: "(y/n)" })] })), !pendingConfirm && (_jsxs(Box, { marginTop: 1, paddingX: 1, borderStyle: "round", borderColor: isProcessing ? 'gray' : 'cyan', children: [_jsx(Text, { color: "cyanBright", bold: true, children: '❯ ' }), _jsx(TextInput, { value: input, onChange: setInput, onSubmit: handleSubmit, focus: !isProcessing && !showModelPicker })] })), isProcessing && (_jsxs(Box, { marginTop: 1, children: [_jsx(Text, { color: "cyan", children: _jsx(Spinner, { type: "dots" }) }), _jsx(Text, { dimColor: true, children: " thinking..." })] })), _jsxs(Box, { marginTop: 1, children: [_jsx(Text, { dimColor: true, children: "type \"/exit\" to quit" }), _jsxs(Text, { dimColor: true, children: [" | Input tokens used: ", usage.inputTokens, " | Output tokens used: ", usage.outputTokens, " | estimated cost: $", usage.cost.toFixed(4)] })] }), _jsx(ModelPickerModal, { isOpen: showModelPicker, onClose: () => setShowModelPicker(false), onSelect: handleModelSelect, currentModelId: currentModelId, models: CODING_MODELS })] }));
|
|
173
211
|
}
|
|
174
212
|
render(_jsx(App, {}));
|
|
175
213
|
export { App };
|
package/dist/cli/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/cli/app.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ModelInfo } from '../../core/models.js';
|
|
3
|
+
interface ModelPickerModalProps {
|
|
4
|
+
isOpen: boolean;
|
|
5
|
+
onClose: () => void;
|
|
6
|
+
onSelect: (modelId: string) => void;
|
|
7
|
+
currentModelId: string;
|
|
8
|
+
models: ModelInfo[];
|
|
9
|
+
}
|
|
10
|
+
export declare function ModelPickerModal({ isOpen, onClose, onSelect, currentModelId, models, }: ModelPickerModalProps): React.JSX.Element | null;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=ModelPickerModal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelPickerModal.d.ts","sourceRoot":"","sources":["../../../src/cli/components/ModelPickerModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAE3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtD,UAAU,qBAAqB;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAiBD,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,OAAO,EACP,QAAQ,EACR,cAAc,EACd,MAAM,GACP,EAAE,qBAAqB,4BAuKvB"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React, { useState, useEffect, useRef } from 'react';
|
|
3
|
+
import { Box, Text, useInput } from 'ink';
|
|
4
|
+
const ITEM_HEIGHT = 2; // paddingY + content
|
|
5
|
+
const CHROME_HEIGHT = 8; // header + filter + description + footer + borders + padding
|
|
6
|
+
const MIN_WIDTH = 50;
|
|
7
|
+
const MAX_WIDTH = 90;
|
|
8
|
+
const FALLBACK_COLUMNS = 80;
|
|
9
|
+
const FALLBACK_ROWS = 24;
|
|
10
|
+
function getTermDimensions() {
|
|
11
|
+
try {
|
|
12
|
+
return { columns: process.stdout.columns ?? FALLBACK_COLUMNS, rows: process.stdout.rows ?? FALLBACK_ROWS };
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
return { columns: FALLBACK_COLUMNS, rows: FALLBACK_ROWS };
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export function ModelPickerModal({ isOpen, onClose, onSelect, currentModelId, models, }) {
|
|
19
|
+
const [selectedIndex, setSelectedIndex] = useState(0);
|
|
20
|
+
const [filter, setFilter] = useState('');
|
|
21
|
+
const isOpenRef = useRef(isOpen);
|
|
22
|
+
isOpenRef.current = isOpen;
|
|
23
|
+
const [dimensions, setDimensions] = useState(getTermDimensions());
|
|
24
|
+
// Update dimensions on resize
|
|
25
|
+
useEffect(() => {
|
|
26
|
+
const handleResize = () => setDimensions(getTermDimensions());
|
|
27
|
+
process.stdout.on('resize', handleResize);
|
|
28
|
+
return () => {
|
|
29
|
+
process.stdout.off('resize', handleResize);
|
|
30
|
+
};
|
|
31
|
+
}, []);
|
|
32
|
+
const filteredModels = models.filter(m => m.name.toLowerCase().includes(filter.toLowerCase()) ||
|
|
33
|
+
m.description.toLowerCase().includes(filter.toLowerCase()) ||
|
|
34
|
+
m.id.toLowerCase().includes(filter.toLowerCase()));
|
|
35
|
+
// Reset selection when filter changes
|
|
36
|
+
useEffect(() => {
|
|
37
|
+
setSelectedIndex(0);
|
|
38
|
+
}, [filter]);
|
|
39
|
+
// Clamp selected index to filtered models
|
|
40
|
+
useEffect(() => {
|
|
41
|
+
setSelectedIndex(prev => Math.min(prev, Math.max(0, filteredModels.length - 1)));
|
|
42
|
+
}, [filteredModels.length]);
|
|
43
|
+
const handleKeyPress = (input, key) => {
|
|
44
|
+
if (!isOpenRef.current)
|
|
45
|
+
return;
|
|
46
|
+
if (key.upArrow) {
|
|
47
|
+
setSelectedIndex(prev => Math.max(0, prev - 1));
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
if (key.downArrow) {
|
|
51
|
+
setSelectedIndex(prev => Math.min(filteredModels.length - 1, prev + 1));
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
if (key.return) {
|
|
55
|
+
if (filteredModels[selectedIndex]) {
|
|
56
|
+
onSelect(filteredModels[selectedIndex].id);
|
|
57
|
+
}
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (key.escape) {
|
|
61
|
+
onClose();
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
if (key.backspace) {
|
|
65
|
+
setFilter(prev => prev.slice(0, -1));
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
if (input && input.length === 1 && !key.upArrow && !key.downArrow && !key.return && !key.escape && !key.backspace) {
|
|
69
|
+
setFilter(prev => prev + input);
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
useInput(handleKeyPress);
|
|
73
|
+
if (!isOpen)
|
|
74
|
+
return null;
|
|
75
|
+
const currentModel = filteredModels[selectedIndex];
|
|
76
|
+
// Responsive dimensions
|
|
77
|
+
const termWidth = dimensions.columns;
|
|
78
|
+
const termHeight = dimensions.rows;
|
|
79
|
+
const modalWidth = Math.min(Math.max(Math.floor(termWidth * 0.7), MIN_WIDTH), MAX_WIDTH, termWidth - 4);
|
|
80
|
+
const maxListHeight = Math.max(3, termHeight - CHROME_HEIGHT - 4);
|
|
81
|
+
const listHeight = Math.min(filteredModels.length * ITEM_HEIGHT, maxListHeight);
|
|
82
|
+
const modalHeight = Math.min(CHROME_HEIGHT + listHeight, termHeight - 2);
|
|
83
|
+
// Scroll logic for long lists
|
|
84
|
+
const scrollTop = selectedIndex >= Math.floor(listHeight / ITEM_HEIGHT)
|
|
85
|
+
? selectedIndex - Math.floor(listHeight / ITEM_HEIGHT) + 1
|
|
86
|
+
: 0;
|
|
87
|
+
const visibleModels = filteredModels.slice(scrollTop, scrollTop + Math.ceil(listHeight / ITEM_HEIGHT));
|
|
88
|
+
return (_jsx(Box, { position: "absolute", top: 0, left: 0, right: 0, bottom: 0, flexDirection: "column", justifyContent: "center", alignItems: "center", children: _jsxs(Box, { flexDirection: "column", width: modalWidth, height: modalHeight, borderStyle: "round", borderColor: "cyan", padding: 1, backgroundColor: "black", children: [_jsxs(Box, { flexDirection: "row", alignItems: "center", marginBottom: 1, children: [_jsx(Text, { bold: true, color: "cyanBright", children: " Select Model " }), _jsx(Text, { dimColor: true, children: " (\u2191/\u2193 Enter Esc type:filter) " })] }), _jsxs(Box, { marginBottom: 1, borderStyle: "single", borderColor: "gray", paddingX: 1, children: [_jsx(Text, { children: "Filter: " }), _jsx(Text, { color: "white", children: filter }), _jsx(Text, { dimColor: true, children: filter.length < 30 ? '_' : '' })] }), _jsx(Box, { flexDirection: "column", height: listHeight, children: filteredModels.length === 0 ? (_jsx(Box, { flexDirection: "column", justifyContent: "center", alignItems: "center", flexGrow: 1, children: _jsxs(Text, { dimColor: true, children: ["No models match \"", filter, "\""] }) })) : (visibleModels.map((model, idx) => {
|
|
89
|
+
const absoluteIndex = scrollTop + idx;
|
|
90
|
+
const isSelected = absoluteIndex === selectedIndex;
|
|
91
|
+
const isCurrent = currentModelId === model.id;
|
|
92
|
+
return (_jsxs(Box, { flexDirection: "row", paddingX: 1, paddingY: 1, backgroundColor: isSelected ? 'blue' : 'transparent', children: [_jsx(Text, { color: isSelected ? 'white' : isCurrent ? 'green' : 'gray', children: isSelected ? '► ' : ' ' }), _jsxs(Text, { bold: isSelected, color: isCurrent ? 'green' : isSelected ? 'white' : 'white', children: [model.name, isCurrent && _jsx(Text, { color: "green", dimColor: true, children: " \u25CF" })] })] }, model.id));
|
|
93
|
+
})) }), currentModel && (_jsx(Box, { marginTop: 1, paddingX: 1, borderStyle: "single", borderColor: "gray", flexDirection: "column", children: _jsx(Text, { dimColor: true, children: currentModel.description }) })), filteredModels.length > Math.ceil(listHeight / ITEM_HEIGHT) && (_jsxs(Box, { marginTop: 1, flexDirection: "row", justifyContent: "space-between", paddingX: 1, children: [_jsxs(Text, { dimColor: true, children: ["\u25B2 ", scrollTop + 1, "-", Math.min(scrollTop + visibleModels.length, filteredModels.length), " of ", filteredModels.length] }), _jsxs(Text, { dimColor: true, children: [selectedIndex + 1, "/", filteredModels.length] })] })), _jsxs(Box, { marginTop: 1, flexDirection: "row", justifyContent: "space-between", children: [_jsxs(Text, { dimColor: true, children: [filteredModels.length, " model(s)"] }), _jsxs(Text, { dimColor: true, children: ["W:", modalWidth, " H:", modalHeight] })] })] }) }));
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=ModelPickerModal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelPickerModal.js","sourceRoot":"","sources":["../../../src/cli/components/ModelPickerModal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"AACA,OAAO,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"AACA,OAAO,eAAe,CAAC;AAMvB,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAmB/C,wBAAgB,SAAS,IAAI,UAAU,CAatC"}
|
package/dist/core/client.js
CHANGED
package/dist/core/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,SAAS,aAAa;IACpB,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAE1E,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC1E,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;YACtE,IAAI,MAAM,CAAC,MAAM;gBAAE,OAAO,MAAM,CAAC,MAAM,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,IAAI,OAAO,GAAsB,IAAI,CAAC;AAEtC,MAAM,UAAU,SAAS;IACvB,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CACX,gCAAgC;YAChC,iDAAiD;YACjD,qDAAqD,CACtD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,GAAG,IAAI,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACrC,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,0EAA0E;AACtG,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,SAAS,aAAa;IACpB,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAE1E,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC1E,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;YACtE,IAAI,MAAM,CAAC,MAAM;gBAAE,OAAO,MAAM,CAAC,MAAM,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,IAAI,OAAO,GAAsB,IAAI,CAAC;AAEtC,MAAM,UAAU,SAAS;IACvB,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CACX,gCAAgC;YAChC,iDAAiD;YACjD,qDAAqD,CACtD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,GAAG,IAAI,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACrC,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
package/dist/core/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { getClient } from './client.js';
|
|
2
2
|
export { AGENT_NAME, MODEL, MAX_ITERATIONS, RISKY_TOOLS, SYSTEM_PROMPT, COMPACTION_THRESHOLD_TOKENS, COMPACTION_KEEP_RECENT, FALLBACK_MODELS, SUBAGENT_MAX_ITERATIONS, SUBAGENT_TOOLS, } from './constants.js';
|
|
3
3
|
export { compactIfNeeded, DEFAULT_COMPACTION_CONFIG, type CompactionConfig } from './compaction.js';
|
|
4
|
-
export { createStateAccessor, listSessions, getLatestSessionId, stateToMessages } from './state.js';
|
|
4
|
+
export { createStateAccessor, listSessions, getLatestSessionId, stateToMessages, saveSessionTitle, getSessionTitle, getSessionModel, listSessionMeta } from './state.js';
|
|
5
5
|
export type { SessionSummary } from './state.js';
|
|
6
|
+
export { CODING_MODELS, DEFAULT_MODEL_ID, getModelById, getModelName, type ModelInfo } from './models.js';
|
|
6
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,UAAU,EACV,KAAK,EACL,cAAc,EACd,WAAW,EACX,aAAa,EACb,2BAA2B,EAC3B,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,cAAc,GACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,UAAU,EACV,KAAK,EACL,cAAc,EACd,WAAW,EACX,aAAa,EACb,2BAA2B,EAC3B,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,cAAc,GACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACzK,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/core/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { getClient } from './client.js';
|
|
2
2
|
export { AGENT_NAME, MODEL, MAX_ITERATIONS, RISKY_TOOLS, SYSTEM_PROMPT, COMPACTION_THRESHOLD_TOKENS, COMPACTION_KEEP_RECENT, FALLBACK_MODELS, SUBAGENT_MAX_ITERATIONS, SUBAGENT_TOOLS, } from './constants.js';
|
|
3
3
|
export { compactIfNeeded, DEFAULT_COMPACTION_CONFIG } from './compaction.js';
|
|
4
|
-
export { createStateAccessor, listSessions, getLatestSessionId, stateToMessages } from './state.js';
|
|
4
|
+
export { createStateAccessor, listSessions, getLatestSessionId, stateToMessages, saveSessionTitle, getSessionTitle, getSessionModel, listSessionMeta } from './state.js';
|
|
5
|
+
export { CODING_MODELS, DEFAULT_MODEL_ID, getModelById, getModelName } from './models.js';
|
|
5
6
|
//# sourceMappingURL=index.js.map
|
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,UAAU,EACV,KAAK,EACL,cAAc,EACd,WAAW,EACX,aAAa,EACb,2BAA2B,EAC3B,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,cAAc,GACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAyB,MAAM,iBAAiB,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,UAAU,EACV,KAAK,EACL,cAAc,EACd,WAAW,EACX,aAAa,EACb,2BAA2B,EAC3B,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,cAAc,GACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAyB,MAAM,iBAAiB,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEzK,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAkB,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface ModelInfo {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
description: string;
|
|
5
|
+
}
|
|
6
|
+
export declare const CODING_MODELS: ModelInfo[];
|
|
7
|
+
export declare const DEFAULT_MODEL_ID: string;
|
|
8
|
+
export declare function getModelById(id: string): ModelInfo | undefined;
|
|
9
|
+
export declare function getModelName(id: string): string;
|
|
10
|
+
//# sourceMappingURL=models.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/core/models.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,aAAa,EAAE,SAAS,EAqBpC,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAA0E,CAAC;AAExG,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAE9D;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAE/C"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export const CODING_MODELS = [
|
|
2
|
+
{
|
|
3
|
+
id: 'nvidia/nemotron-3-ultra-550b-a55b:free',
|
|
4
|
+
name: 'Nemotron 3 Ultra (550B)',
|
|
5
|
+
description: "NVIDIA's largest Nemotron model, best for complex reasoning",
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
id: 'nvidia/nemotron-3-super-120b-a12b:free',
|
|
9
|
+
name: 'Nemotron 3 Super (120B)',
|
|
10
|
+
description: 'Strong coding and reasoning, faster than Ultra',
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
id: 'nvidia/nemotron-3.5-lightning:free',
|
|
14
|
+
name: 'Nemotron 3.5 Lightning',
|
|
15
|
+
description: 'Optimized for speed, good for quick coding tasks',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
id: 'qwen/qwen3.8-27b:free',
|
|
19
|
+
name: 'Qwen 3.8 27B',
|
|
20
|
+
description: 'Balanced coding and general reasoning (current default)',
|
|
21
|
+
},
|
|
22
|
+
];
|
|
23
|
+
export const DEFAULT_MODEL_ID = CODING_MODELS[3]?.id ?? CODING_MODELS[0]?.id ?? 'qwen/qwen3.8-27b:free';
|
|
24
|
+
export function getModelById(id) {
|
|
25
|
+
return CODING_MODELS.find(m => m.id === id);
|
|
26
|
+
}
|
|
27
|
+
export function getModelName(id) {
|
|
28
|
+
return getModelById(id)?.name ?? id;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=models.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/core/models.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,aAAa,GAAgB;IACxC;QACE,EAAE,EAAE,wCAAwC;QAC5C,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE,6DAA6D;KAC3E;IACD;QACE,EAAE,EAAE,wCAAwC;QAC5C,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE,gDAAgD;KAC9D;IACD;QACE,EAAE,EAAE,oCAAoC;QACxC,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,kDAAkD;KAChE;IACD;QACE,EAAE,EAAE,uBAAuB;QAC3B,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,yDAAyD;KACvE;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,uBAAuB,CAAC;AAExG,MAAM,UAAU,YAAY,CAAC,EAAU;IACrC,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,EAAU;IACrC,OAAO,YAAY,CAAC,EAAE,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;AACtC,CAAC"}
|
package/dist/core/state.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ type SessionMetaEntry = {
|
|
|
4
4
|
id: string;
|
|
5
5
|
title: string;
|
|
6
6
|
createdAt: number;
|
|
7
|
+
modelId?: string;
|
|
7
8
|
};
|
|
8
9
|
export type SessionSummary = {
|
|
9
10
|
id: string;
|
|
@@ -16,7 +17,8 @@ export declare function listSessions(): SessionSummary[];
|
|
|
16
17
|
export declare function getLatestSessionId(): string | null;
|
|
17
18
|
export declare function stateToMessages(state: ConversationState): Message[];
|
|
18
19
|
export { compactIfNeeded, DEFAULT_COMPACTION_CONFIG, type CompactionConfig } from './compaction.js';
|
|
19
|
-
export declare function saveSessionTitle(sessionId: string, title: string): void;
|
|
20
|
+
export declare function saveSessionTitle(sessionId: string, title: string, modelId?: string): void;
|
|
20
21
|
export declare function getSessionTitle(sessionId: string): string | null;
|
|
22
|
+
export declare function getSessionModel(sessionId: string): string | null;
|
|
21
23
|
export declare function listSessionMeta(): SessionMetaEntry[];
|
|
22
24
|
//# sourceMappingURL=state.d.ts.map
|
package/dist/core/state.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/core/state.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD,KAAK,gBAAgB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/core/state.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD,KAAK,gBAAgB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAU3F,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAcF,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,gBAAgB,6CAA4B,GAC3C,aAAa,CAmBf;AAED,wBAAgB,YAAY,IAAI,cAAc,EAAE,CAoB/C;AAED,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAGlD;AA+DD,wBAAgB,eAAe,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,EAAE,CAcnE;AAED,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAapG,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,QAUlF;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAEhE;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAEhE;AAED,wBAAgB,eAAe,IAAI,gBAAgB,EAAE,CAEpD"}
|
package/dist/core/state.js
CHANGED
|
@@ -137,16 +137,25 @@ function readMeta() {
|
|
|
137
137
|
return [];
|
|
138
138
|
}
|
|
139
139
|
}
|
|
140
|
-
export function saveSessionTitle(sessionId, title) {
|
|
140
|
+
export function saveSessionTitle(sessionId, title, modelId) {
|
|
141
141
|
const meta = readMeta();
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
142
|
+
const existingIndex = meta.findIndex(m => m.id === sessionId);
|
|
143
|
+
if (existingIndex === -1) {
|
|
144
|
+
meta.push({ id: sessionId, title, createdAt: Date.now(), modelId });
|
|
145
145
|
}
|
|
146
|
+
else if (modelId) {
|
|
147
|
+
const entry = meta[existingIndex];
|
|
148
|
+
if (entry)
|
|
149
|
+
entry.modelId = modelId;
|
|
150
|
+
}
|
|
151
|
+
fs.writeFileSync(META_FILE, JSON.stringify(meta, null, 2));
|
|
146
152
|
}
|
|
147
153
|
export function getSessionTitle(sessionId) {
|
|
148
154
|
return readMeta().find(m => m.id === sessionId)?.title ?? null;
|
|
149
155
|
}
|
|
156
|
+
export function getSessionModel(sessionId) {
|
|
157
|
+
return readMeta().find(m => m.id === sessionId)?.modelId ?? null;
|
|
158
|
+
}
|
|
150
159
|
export function listSessionMeta() {
|
|
151
160
|
return readMeta();
|
|
152
161
|
}
|
package/dist/core/state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/core/state.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/core/state.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAA;AACtB,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAA;AACtB,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nehanahmed/forge",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "A Terminal-based AI agent that can perform tasks and interact with the user.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
"build": "tsc && npm run postbuild",
|
|
10
10
|
"postbuild": "node ./scripts/add-shebang.js",
|
|
11
11
|
"prepare": "npm run build",
|
|
12
|
-
"eval": "tsx evals/runner.ts"
|
|
12
|
+
"eval": "tsx evals/runner.ts",
|
|
13
|
+
"dev": "tsx watch src/cli/app.tsx --onSuccess \"node ./scripts/add-shebang.js\""
|
|
13
14
|
},
|
|
14
15
|
"bin": {
|
|
15
16
|
"forge": "./dist/cli/app.js"
|
|
@@ -22,7 +23,7 @@
|
|
|
22
23
|
"agent",
|
|
23
24
|
"cli",
|
|
24
25
|
"coding-agent",
|
|
25
|
-
"
|
|
26
|
+
"multi-model"
|
|
26
27
|
],
|
|
27
28
|
"repository": {
|
|
28
29
|
"type": "git",
|
|
@@ -52,4 +53,4 @@
|
|
|
52
53
|
"@types/node": "^26.2.0",
|
|
53
54
|
"@types/react": "^19.2.18"
|
|
54
55
|
}
|
|
55
|
-
}
|
|
56
|
+
}
|