ft-scout 6.0.5 → 6.0.8
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/.firebase/hosting.d2Vi.cache +2 -2
- package/README.md +61 -38
- package/bin/ft.js +1 -1
- package/bin/src/commands/agent.d.ts.map +1 -1
- package/bin/src/commands/agent.js +198 -27
- package/bin/src/commands/agent.js.map +1 -1
- package/bin/src/commands/audit.js.map +1 -1
- package/bin/src/commands/authCommand.js.map +1 -1
- package/bin/src/commands/brief.js.map +1 -1
- package/bin/src/commands/configCommand.d.ts.map +1 -1
- package/bin/src/commands/configCommand.js.map +1 -1
- package/bin/src/commands/dashboard.js.map +1 -1
- package/bin/src/commands/history.js.map +1 -1
- package/bin/src/commands/init.js.map +1 -1
- package/bin/src/commands/login.d.ts.map +1 -1
- package/bin/src/commands/login.js.map +1 -1
- package/bin/src/commands/logout.js.map +1 -1
- package/bin/src/commands/owners.js.map +1 -1
- package/bin/src/commands/quota.js.map +1 -1
- package/bin/src/commands/recommend.js.map +1 -1
- package/bin/src/commands/risky.d.ts.map +1 -1
- package/bin/src/commands/risky.js.map +1 -1
- package/bin/src/commands/setup.js.map +1 -1
- package/bin/src/commands/signup.d.ts.map +1 -1
- package/bin/src/commands/signup.js.map +1 -1
- package/bin/src/commands/undo.js.map +1 -1
- package/bin/src/commands/web.js.map +1 -1
- package/bin/src/discovery/config.d.ts.map +1 -1
- package/bin/src/discovery/config.js.map +1 -1
- package/bin/src/discovery/display.js.map +1 -1
- package/bin/src/discovery/messages.js.map +1 -1
- package/bin/src/discovery/signals.d.ts.map +1 -1
- package/bin/src/discovery/signals.js.map +1 -1
- package/bin/src/engine/agentEngine.d.ts.map +1 -1
- package/bin/src/engine/agentEngine.js +369 -33
- package/bin/src/engine/agentEngine.js.map +1 -1
- package/bin/src/engine/git.d.ts.map +1 -1
- package/bin/src/engine/git.js.map +1 -1
- package/bin/src/engine/llm.d.ts.map +1 -1
- package/bin/src/engine/llm.js +57 -6
- package/bin/src/engine/llm.js.map +1 -1
- package/bin/src/engine/verifier.d.ts.map +1 -1
- package/bin/src/engine/verifier.js.map +1 -1
- package/bin/src/engine/web.d.ts.map +1 -1
- package/bin/src/engine/web.js.map +1 -1
- package/bin/src/index.js +4 -4
- package/bin/src/index.js.map +1 -1
- package/bin/src/server/server.js.map +1 -1
- package/bin/src/utils/auth.d.ts.map +1 -1
- package/bin/src/utils/auth.js.map +1 -1
- package/bin/src/utils/branding.js +7 -7
- package/bin/src/utils/branding.js.map +1 -1
- package/bin/src/utils/config.d.ts.map +1 -1
- package/bin/src/utils/config.js.map +1 -1
- package/bin/src/utils/email.d.ts.map +1 -1
- package/bin/src/utils/email.js.map +1 -1
- package/bin/src/utils/firebaseAuth.d.ts.map +1 -1
- package/bin/src/utils/firebaseAuth.js.map +1 -1
- package/bin/src/utils/holoseneAuth.d.ts.map +1 -1
- package/bin/src/utils/holoseneAuth.js.map +1 -1
- package/bin/src/utils/language.d.ts.map +1 -1
- package/bin/src/utils/language.js.map +1 -1
- package/bin/src/utils/markdown.js.map +1 -1
- package/bin/src/utils/updateCheck.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
styles.css,1786204910943,fe2eddb0ceda69648e303dd15d177d897a09709b9762c2642a77983e34bbcfe8
|
|
2
2
|
ScoutFavicon.png,1786186569805,41a9ca9abf7acd2976e78c72a72285b49cc0e64b2b5eeb2c2b88c69628fc618a
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
index.html,1788596486237,ec8226afef8a16537189dd912cd5adb786bd62fcd557860366c230a7a48f20b9
|
|
4
|
+
app.js,1788596486243,fd2d07d0c1332e6687680809c62f602842518c61bfb207dac80cdc5718315793
|
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# scout (FrontTerrain CLI v6.0.
|
|
1
|
+
# scout (FrontTerrain CLI v6.0.8)
|
|
2
2
|
|
|
3
3
|
**FrontTerrain (`scout`)** — The Autonomous AI Principal Software Engineer & Codebase Co-Pilot in your terminal.
|
|
4
4
|
|
|
@@ -20,38 +20,32 @@ npm install -g ft-scout@latest
|
|
|
20
20
|
|
|
21
21
|
Once installed, use `scout` or `ft` in any project directory:
|
|
22
22
|
|
|
23
|
-
###
|
|
23
|
+
### Autonomous AI Agent & Interactive Sessions
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
|
-
# Autonomous Multi-Step AI Agent (Direct
|
|
26
|
+
# Autonomous Multi-Step AI Agent (Direct goal execution, context inspection, automated test/build verification)
|
|
27
27
|
scout agent "Build a responsive snake game in HTML and JS with smooth animations"
|
|
28
|
-
scout agent "Add
|
|
28
|
+
scout agent "Add persistent score tracking and level progression"
|
|
29
29
|
scout task "Fix typescript build errors in src/utils" -v "npm run build"
|
|
30
30
|
scout goal "Refactor database query logic" -y
|
|
31
31
|
|
|
32
32
|
# Interactive Scout Agent Session (Persistent chat loop with Slash Commands & full ReAct tool execution)
|
|
33
33
|
scout agent
|
|
34
|
+
|
|
34
35
|
# Inside session:
|
|
35
36
|
# Agent Prompt: Add dark mode toggle button
|
|
36
|
-
# Slash commands: /help /
|
|
37
|
+
# Slash commands: /help /tree /stats /test /explain /export /diff /undo /clear /scan /plan /history /exit
|
|
37
38
|
|
|
38
39
|
# Generate and create a new source code file
|
|
39
|
-
scout create src/utils/math.ts "Create helper functions for sum, average, and array chunking"
|
|
40
|
-
scout gen src/components/Header.tsx "Create a responsive React navigation header"
|
|
41
|
-
|
|
42
|
-
# Prompt-Driven Auto-Fix & Debugging
|
|
43
|
-
scout fix "Fix null pointer check in calculateTotal function"
|
|
44
|
-
scout fix -f src/sampleBug.ts "Handle optional prices defensively" -y
|
|
45
|
-
scout fix -i 1
|
|
40
|
+
scout agent --create src/utils/math.ts "Create helper functions for sum, average, and array chunking"
|
|
46
41
|
|
|
47
42
|
# Run terminal/shell commands with automated AI error diagnosis & self-healing
|
|
48
|
-
scout run npm test
|
|
49
|
-
scout
|
|
50
|
-
scout run python main.py
|
|
43
|
+
scout agent --run npm test
|
|
44
|
+
scout agent --run tsc
|
|
51
45
|
|
|
52
|
-
#
|
|
53
|
-
scout
|
|
54
|
-
scout
|
|
46
|
+
# Feasibility roadmap & bug scan
|
|
47
|
+
scout agent --scan
|
|
48
|
+
scout agent --plan "Add rate limiting to API endpoints"
|
|
55
49
|
|
|
56
50
|
# Revert Scout's last action & restore backed-up file contents
|
|
57
51
|
scout undo
|
|
@@ -71,23 +65,17 @@ scout init [repoUrl] -l hi
|
|
|
71
65
|
scout brief
|
|
72
66
|
|
|
73
67
|
# Bug & code quality scan report (read-only)
|
|
74
|
-
scout
|
|
68
|
+
scout risky
|
|
75
69
|
|
|
76
|
-
#
|
|
77
|
-
scout
|
|
70
|
+
# Security & dependency / supply-chain audit
|
|
71
|
+
scout audit
|
|
78
72
|
|
|
79
73
|
# Architecture, performance, and DSA-level suggestions
|
|
80
74
|
scout recommend
|
|
81
75
|
|
|
82
|
-
# Security & dependency / supply-chain audit
|
|
83
|
-
scout audit
|
|
84
|
-
|
|
85
76
|
# Show knowledge holders of a specific directory or file (from git history)
|
|
86
77
|
scout owners <path>
|
|
87
78
|
|
|
88
|
-
# Show a code fragility map based on churn and hotfixes
|
|
89
|
-
scout risky
|
|
90
|
-
|
|
91
79
|
# Live internet search for live web context & up-to-date documentation
|
|
92
80
|
scout search "Next.js 15 App Router"
|
|
93
81
|
scout web "Tailwind CSS v4" --ask --lang french
|
|
@@ -101,17 +89,52 @@ scout upgrade
|
|
|
101
89
|
|
|
102
90
|
---
|
|
103
91
|
|
|
104
|
-
##
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
92
|
+
## 🛠️ Scout Autonomous ReAct Tools (14 Tools Available)
|
|
93
|
+
|
|
94
|
+
| Tool | Description |
|
|
95
|
+
|---|---|
|
|
96
|
+
| `read_file` | Read content & line ranges of workspace files |
|
|
97
|
+
| `write_file` | Create new files or overwrite existing source code |
|
|
98
|
+
| `edit_file` | Search & replace exact target code snippets |
|
|
99
|
+
| `multi_edit_file` | Apply batch snippet replacements in a single atomic tool call |
|
|
100
|
+
| `run_command` | Execute live terminal commands (`npm test`, `tsc`, `pytest`) |
|
|
101
|
+
| `tree_view` | Generate visual ASCII directory tree structures for workspace paths |
|
|
102
|
+
| `file_info` | Get file metadata, exact line counts, size, & modification timestamps |
|
|
103
|
+
| `grep_search` | String/regex pattern search across entire codebase |
|
|
104
|
+
| `glob_search` | Filter workspace files by file glob patterns |
|
|
105
|
+
| `fetch_url` | Fetch web API documentation, specs, or external web URLs |
|
|
106
|
+
| `git_diff` | Query uncommitted workspace git diff directly inside execution loop |
|
|
107
|
+
| `ask_user` | Request missing secret credentials or API keys |
|
|
108
|
+
| `task_completed` | Conclude autonomous goal execution with structured teardown report |
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## 🚀 Interactive Slash Commands in Session
|
|
113
|
+
|
|
114
|
+
Inside an active `scout agent` interactive session, type any slash command to trigger agent actions:
|
|
115
|
+
|
|
116
|
+
- `/help` — Display comprehensive guide to all 14 tools and interactive slash commands.
|
|
117
|
+
- `/tree [dir]` — Render an interactive visual directory tree of any workspace folder.
|
|
118
|
+
- `/status` or `/stats` — View real-time session telemetry (steps executed, tool call count, modified files, elapsed time, branch info).
|
|
119
|
+
- `/test [cmd]` — Auto-detect and run project verification test suite directly inside session context.
|
|
120
|
+
- `/explain <file>` — Request a deep architectural breakdown and code explanation of a specific file.
|
|
121
|
+
- `/export` or `/save-session` — Export full session report and action history to `.ft/session-<timestamp>.md`.
|
|
122
|
+
- `/diff` — Display colorized git diff of uncommitted workspace changes.
|
|
123
|
+
- `/clear` or `/compact` — Clear session conversation context window.
|
|
124
|
+
- `/undo` — Instant 1-command revert of file modifications applied by Scout.
|
|
125
|
+
- `/history` — View recent Scout action logs.
|
|
126
|
+
- `/exit` — Quit Scout Agent session gracefully.
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## 🌟 Overhauled Features & Performance
|
|
131
|
+
|
|
132
|
+
- **High-Agency Multi-File Scaffolding**: Automatically creates, implements, tests, and verifies multi-file codebases from scratch.
|
|
133
|
+
- **Atomic Multi-Snippet Editing (`multi_edit_file`)**: Executes multiple code replacements in a single turn for complex multi-point refactoring.
|
|
134
|
+
- **Session Telemetry & Analytics**: Live step counter, tool call counter, and elapsed time estimation during ReAct loop execution.
|
|
135
|
+
- **Automated Verification & Self-Healing**: Validates JS, TS, Python, Rust, Go, JSON, and embedded `<script>` HTML tags. Auto-diagnoses compiler errors and applies self-healing code fixes before finishing.
|
|
136
|
+
- **Post-Execution Review Menu**: Choose from **Keep Changes**, **Run Verification Tests**, **Create Pull Request**, **Export Session Report**, or **Revert Changes** after goal completion.
|
|
137
|
+
- **1-Command Rollback (`scout undo`)**: Every file modification is backed up with timestamped history for zero-risk experimentation.
|
|
115
138
|
|
|
116
139
|
---
|
|
117
140
|
|
package/bin/ft.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["agent.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;CACvB;AAKD,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,QAIpD;AAED,wBAAgB,cAAc,IAAI,YAAY,EAAE,CAO/C;AAED,MAAM,WAAW,YAAY;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACpC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;IACpC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7B;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAsDlE;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG3E;AAED,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IACvE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACtC;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,gBAAgB,CAoF5F;AAED,wBAAgB,yBAAyB,CACrC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,SAAS,EAAE,MAAM,EAAE,GACpB,MAAM,EAAE,CAgGV;AAID,wBAAsB,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,iBA4yB3E"}
|
|
@@ -3,14 +3,14 @@ import path from 'path';
|
|
|
3
3
|
import { spinner, text, isCancel, select, confirm } from '@clack/prompts';
|
|
4
4
|
import chalk from 'chalk';
|
|
5
5
|
import { simpleGit } from 'simple-git';
|
|
6
|
-
import { generateMultiCodeFix, identifyTargetFiles, analyzeCommandError, generateCodeScanReport, generateFeaturePlan, generateCodeFile, askRepoQuestion, } from '../engine/llm.js';
|
|
6
|
+
import { generateMultiCodeFix, identifyTargetFiles, analyzeCommandError, generateCodeScanReport, generateFeaturePlan, generateCodeFile, askRepoQuestion, getActiveModelInfo, } from '../engine/llm.js';
|
|
7
7
|
import { loadContext, recordHistoryAction, getDirectoryFiles } from '../utils/config.js';
|
|
8
8
|
import { renderMarkdown, safeNote } from '../utils/markdown.js';
|
|
9
9
|
import { normalizeLanguage } from '../utils/language.js';
|
|
10
10
|
import { createPullRequest } from '../engine/git.js';
|
|
11
11
|
import { handleUndo } from './undo.js';
|
|
12
|
-
import { AgentExecutionLoop } from '../engine/agentEngine.js';
|
|
13
|
-
import { verifyAndSelfHealFiles, executeSmartCommand } from '../engine/verifier.js';
|
|
12
|
+
import { AgentExecutionLoop, buildDirectoryTree } from '../engine/agentEngine.js';
|
|
13
|
+
import { verifyAndSelfHealFiles, executeSmartCommand, runProjectVerification } from '../engine/verifier.js';
|
|
14
14
|
import { exec } from 'child_process';
|
|
15
15
|
import { promisify } from 'util';
|
|
16
16
|
const execAsync = promisify(exec);
|
|
@@ -267,17 +267,26 @@ export async function handleAgent(goalInput, options) {
|
|
|
267
267
|
language: targetLang,
|
|
268
268
|
projectName,
|
|
269
269
|
});
|
|
270
|
+
const modelInfo = getActiveModelInfo();
|
|
271
|
+
const fallbackPipeline = modelInfo.fallbackChain.slice(1).join(' ➔ ');
|
|
270
272
|
const welcomeBanner = `
|
|
271
273
|
${chalk.bold.cyan('Scout Autonomous AI Agent')} ${targetLang ? `(${targetLang})` : ''}
|
|
274
|
+
${chalk.bold('Active Model:')} ${chalk.bold.green(modelInfo.currentActiveModel)}
|
|
275
|
+
${chalk.bold('Fallback Pipeline:')} ${chalk.dim(fallbackPipeline)}
|
|
276
|
+
|
|
272
277
|
${chalk.dim('Type your goal, or use slash commands:')}
|
|
273
|
-
${chalk.cyan('/help')}
|
|
274
|
-
${chalk.cyan('/
|
|
275
|
-
${chalk.cyan('/
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
278
|
+
${chalk.cyan('/help')} - Show agent tools & commands (14 tools)
|
|
279
|
+
${chalk.cyan('/tree')} - View workspace directory tree
|
|
280
|
+
${chalk.cyan('/stats')} - View real-time session & model telemetry
|
|
281
|
+
${chalk.cyan('/test')} - Run automated project test suite
|
|
282
|
+
${chalk.cyan('/diff')} - Show git diff of uncommitted changes
|
|
283
|
+
${chalk.cyan('/export')} - Save session report to .ft/
|
|
284
|
+
${chalk.cyan('/undo')} - Revert last file modifications
|
|
285
|
+
${chalk.cyan('/clear')} - Reset conversation context
|
|
286
|
+
${chalk.cyan('/scan')} - Run vulnerability scan
|
|
287
|
+
${chalk.cyan('/plan')} - Generate implementation roadmap
|
|
288
|
+
${chalk.cyan('/exit')} - Exit session
|
|
289
|
+
`.trim();
|
|
281
290
|
safeNote(welcomeBanner, 'Scout Agent Active Session');
|
|
282
291
|
while (true) {
|
|
283
292
|
let rawGoal = undefined;
|
|
@@ -304,27 +313,146 @@ ${chalk.cyan('/clear')} - Reset conversation context.
|
|
|
304
313
|
}
|
|
305
314
|
if (trimmedInput.toLowerCase() === '/help') {
|
|
306
315
|
const helpText = `
|
|
307
|
-
###
|
|
308
|
-
- **read_file**: Read content & line ranges of
|
|
309
|
-
- **write_file**: Create new files or overwrite
|
|
310
|
-
- **edit_file**: Search
|
|
311
|
-
- **
|
|
312
|
-
- **
|
|
313
|
-
- **
|
|
316
|
+
### 🛠️ Scout Autonomous Agent Tools (14 Available)
|
|
317
|
+
- **read_file**: Read content & line ranges of workspace files.
|
|
318
|
+
- **write_file**: Create new files or overwrite code directly.
|
|
319
|
+
- **edit_file**: Search & replace exact target code snippets.
|
|
320
|
+
- **multi_edit_file**: Apply batch snippet replacements in a single step.
|
|
321
|
+
- **run_command**: Execute live terminal commands (\`npm test\`, \`build\`).
|
|
322
|
+
- **tree_view**: Generate visual ASCII directory tree structures.
|
|
323
|
+
- **file_info**: Get file statistics, size, lines, & modification time.
|
|
324
|
+
- **grep_search**: String/regex pattern search across codebase.
|
|
325
|
+
- **glob_search**: Filter workspace files by file pattern.
|
|
326
|
+
- **fetch_url**: Fetch web API documentation or URL content.
|
|
327
|
+
- **git_diff**: Retrieve uncommitted workspace git diff.
|
|
328
|
+
- **ask_user**: Request missing secret credentials or API keys.
|
|
329
|
+
- **task_completed**: Conclude autonomous goal execution with teardown.
|
|
314
330
|
|
|
315
|
-
### Slash Commands
|
|
316
|
-
- \`/help\`:
|
|
317
|
-
- \`/
|
|
318
|
-
- \`/
|
|
319
|
-
- \`/
|
|
320
|
-
- \`/
|
|
321
|
-
- \`/
|
|
322
|
-
- \`/
|
|
323
|
-
- \`/
|
|
331
|
+
### 🚀 Interactive Slash Commands
|
|
332
|
+
- \`/help\`: Show this tools & commands guide.
|
|
333
|
+
- \`/tree [dir]\`: Display workspace directory tree structure.
|
|
334
|
+
- \`/status\` or \`/stats\`: Show session telemetry & statistics.
|
|
335
|
+
- \`/test [cmd]\`: Run project verification test suite.
|
|
336
|
+
- \`/explain <file>\`: Get deep architectural breakdown of a file.
|
|
337
|
+
- \`/export\` or \`/save-session\`: Save session report to \`.ft/session-<timestamp>.md\`.
|
|
338
|
+
- \`/diff\`: Display colorized git diff of uncommitted changes.
|
|
339
|
+
- \`/clear\` or \`/compact\`: Reset agent conversation context.
|
|
340
|
+
- \`/undo\`: Revert last file modifications.
|
|
341
|
+
- \`/history\`: View recent Scout action logs.
|
|
342
|
+
- \`/exit\`: End Scout Agent session.
|
|
324
343
|
`.trim();
|
|
325
344
|
safeNote(renderMarkdown(helpText), ' Scout Slash Commands & Tools');
|
|
326
345
|
continue;
|
|
327
346
|
}
|
|
347
|
+
if (trimmedInput.toLowerCase().startsWith('/tree')) {
|
|
348
|
+
const parts = trimmedInput.split(/\s+/);
|
|
349
|
+
const targetDir = parts[1] || '.';
|
|
350
|
+
const fullDir = path.resolve(process.cwd(), targetDir);
|
|
351
|
+
if (!fs.existsSync(fullDir) || !fs.statSync(fullDir).isDirectory()) {
|
|
352
|
+
safeNote(chalk.yellow(`Directory not found: "${targetDir}"`), '️ Directory Tree Error');
|
|
353
|
+
}
|
|
354
|
+
else {
|
|
355
|
+
const treeStr = buildDirectoryTree(fullDir, '', 0, 3);
|
|
356
|
+
safeNote(`Directory Tree for "${targetDir}":\n${targetDir}/\n${treeStr}`, ' Workspace Directory Tree');
|
|
357
|
+
}
|
|
358
|
+
continue;
|
|
359
|
+
}
|
|
360
|
+
if (['/status', '/stats'].includes(trimmedInput.toLowerCase())) {
|
|
361
|
+
const stats = agentLoop.getStats();
|
|
362
|
+
const modifiedFiles = agentLoop.getModifiedFiles();
|
|
363
|
+
const backups = agentLoop.getBackups();
|
|
364
|
+
const git = simpleGit();
|
|
365
|
+
let currentBranch = 'main';
|
|
366
|
+
try {
|
|
367
|
+
const branchSummary = await git.branch();
|
|
368
|
+
currentBranch = branchSummary.current || 'main';
|
|
369
|
+
}
|
|
370
|
+
catch { }
|
|
371
|
+
const elapsedSec = Math.round(stats.elapsedMs / 1000);
|
|
372
|
+
const activeModel = getActiveModelInfo();
|
|
373
|
+
const fallbackStatus = activeModel.lastFallbackInfo
|
|
374
|
+
? `Switched from \`${activeModel.lastFallbackInfo.previousModel}\` ➔ \`${activeModel.lastFallbackInfo.fallbackModel}\` (${activeModel.lastFallbackInfo.reason})`
|
|
375
|
+
: 'None (Primary model actively responding)';
|
|
376
|
+
const statsMd = `
|
|
377
|
+
### 📊 Scout Session & AI Model Telemetry
|
|
378
|
+
- **Active AI Model**: \`${activeModel.currentActiveModel}\`
|
|
379
|
+
- **Primary AI Model**: \`${activeModel.primaryModel}\`
|
|
380
|
+
- **Fallback Chain**: \`${activeModel.fallbackChain.join(' ➔ ')}\`
|
|
381
|
+
- **Last Fallback Event**: ${fallbackStatus}
|
|
382
|
+
- **Active Branch**: \`${currentBranch}\`
|
|
383
|
+
- **Elapsed Session Time**: \`${elapsedSec}s\`
|
|
384
|
+
- **Steps Executed**: \`${stats.totalSteps}\`
|
|
385
|
+
- **Total Tool Calls**: \`${stats.totalToolCalls}\`
|
|
386
|
+
- **Modified Files**: \`${modifiedFiles.length}\` (${modifiedFiles.map(f => `\`${f}\``).join(', ') || 'None'})
|
|
387
|
+
- **Stored File Backups**: \`${backups.length}\`
|
|
388
|
+
`.trim();
|
|
389
|
+
safeNote(renderMarkdown(statsMd), ' Scout Session & Model Telemetry');
|
|
390
|
+
continue;
|
|
391
|
+
}
|
|
392
|
+
if (trimmedInput.toLowerCase().startsWith('/test')) {
|
|
393
|
+
const parts = trimmedInput.split(/\s+/);
|
|
394
|
+
const customCmd = parts.slice(1).join(' ') || options?.verifyCmd;
|
|
395
|
+
const testSpin = spinner();
|
|
396
|
+
testSpin.start(`Running project verification test suite ${customCmd ? `(\`${customCmd}\`)` : ''}...`);
|
|
397
|
+
const testRes = await runProjectVerification(process.cwd(), customCmd);
|
|
398
|
+
if (testRes.valid) {
|
|
399
|
+
testSpin.stop(chalk.green('Project verification tests passed cleanly!'));
|
|
400
|
+
safeNote(`${chalk.green(' Verification Passed:')}\n\`\`\`\n${testRes.output.slice(0, 3000)}\n\`\`\``, ' Test Suite Clean');
|
|
401
|
+
}
|
|
402
|
+
else {
|
|
403
|
+
testSpin.stop(chalk.red('Project verification test suite failed.'));
|
|
404
|
+
safeNote(`${chalk.red('️ Verification Failed:')}\n${testRes.errors.join('\n')}\n\`\`\`\n${testRes.output.slice(0, 3000)}\n\`\`\``, ' Test Failure Warning');
|
|
405
|
+
}
|
|
406
|
+
continue;
|
|
407
|
+
}
|
|
408
|
+
if (trimmedInput.toLowerCase().startsWith('/explain')) {
|
|
409
|
+
const parts = trimmedInput.split(/\s+/);
|
|
410
|
+
const targetPath = parts[1];
|
|
411
|
+
if (!targetPath) {
|
|
412
|
+
safeNote(chalk.yellow('Usage: /explain <filePath> (e.g. /explain bin/src/index.ts)'), ' Explain Command');
|
|
413
|
+
continue;
|
|
414
|
+
}
|
|
415
|
+
const fullP = path.resolve(process.cwd(), targetPath);
|
|
416
|
+
if (!fs.existsSync(fullP)) {
|
|
417
|
+
safeNote(chalk.yellow(`File not found: ${targetPath}`), ' Explain Error');
|
|
418
|
+
continue;
|
|
419
|
+
}
|
|
420
|
+
const explainSpin = spinner();
|
|
421
|
+
explainSpin.start(`Analyzing architecture and structure of ${targetPath}...`);
|
|
422
|
+
const content = fs.readFileSync(fullP, 'utf-8');
|
|
423
|
+
const explanation = await askRepoQuestion(`Provide a deep architectural breakdown, primary purpose, component breakdown, and code explanation for file "${targetPath}":\n\`\`\`\n${content.slice(0, 6000)}\n\`\`\``, projectName, filesList, '', [], { language: targetLang });
|
|
424
|
+
explainSpin.stop('Analysis complete.');
|
|
425
|
+
safeNote(renderMarkdown(explanation), ` Architectural Breakdown: ${targetPath}`);
|
|
426
|
+
continue;
|
|
427
|
+
}
|
|
428
|
+
if (['/export', '/save-session'].includes(trimmedInput.toLowerCase())) {
|
|
429
|
+
const ftDir = path.join(process.cwd(), '.ft');
|
|
430
|
+
if (!fs.existsSync(ftDir))
|
|
431
|
+
fs.mkdirSync(ftDir, { recursive: true });
|
|
432
|
+
const timeStamp = new Date().toISOString().replace(/[:.]/g, '-');
|
|
433
|
+
const sessionPath = path.join(ftDir, `session-${timeStamp}.md`);
|
|
434
|
+
const stats = agentLoop.getStats();
|
|
435
|
+
const modifiedFiles = agentLoop.getModifiedFiles();
|
|
436
|
+
const history = (await import('../utils/config.js')).loadHistory();
|
|
437
|
+
const exportContent = `# Scout Agent Session Report
|
|
438
|
+
Date: ${new Date().toLocaleString()}
|
|
439
|
+
Project: ${projectName}
|
|
440
|
+
|
|
441
|
+
## Session Statistics
|
|
442
|
+
- Total Steps: ${stats.totalSteps}
|
|
443
|
+
- Tool Calls: ${stats.totalToolCalls}
|
|
444
|
+
- Modified Files Count: ${modifiedFiles.length}
|
|
445
|
+
|
|
446
|
+
## Modified Files
|
|
447
|
+
${modifiedFiles.map(f => `- ${f}`).join('\n') || 'None'}
|
|
448
|
+
|
|
449
|
+
## Action History
|
|
450
|
+
${history.slice(0, 15).map(h => `- [${h.timestamp}] ${h.command}: ${h.description}`).join('\n')}
|
|
451
|
+
`;
|
|
452
|
+
fs.writeFileSync(sessionPath, exportContent, 'utf-8');
|
|
453
|
+
safeNote(chalk.green(`Session report saved to: ${chalk.bold.cyan(path.relative(process.cwd(), sessionPath))}`), ' Session Exported');
|
|
454
|
+
continue;
|
|
455
|
+
}
|
|
328
456
|
if (trimmedInput.toLowerCase() === '/diff') {
|
|
329
457
|
try {
|
|
330
458
|
const { execSync } = await import('child_process');
|
|
@@ -665,7 +793,9 @@ ${execResult.summary}
|
|
|
665
793
|
message: chalk.bold('Review Scout Agent result. What would you like to do?'),
|
|
666
794
|
options: [
|
|
667
795
|
{ value: 'keep', label: ' Keep Changes', hint: `Retain agent changes on current branch (${currentBranch})` },
|
|
796
|
+
{ value: 'test', label: ' Run Verification Tests', hint: 'Execute test suite to confirm zero regressions' },
|
|
668
797
|
{ value: 'pr', label: ' Create Pull Request', hint: 'Push fix to a new branch & open a Pull Request' },
|
|
798
|
+
{ value: 'export', label: ' Export Session Report', hint: 'Save detailed session teardown report to .ft/' },
|
|
669
799
|
{ value: 'revert', label: '️ Revert Changes', hint: 'Restore original code immediately' },
|
|
670
800
|
],
|
|
671
801
|
});
|
|
@@ -676,6 +806,47 @@ ${execResult.summary}
|
|
|
676
806
|
revSpinner.stop('Changes reverted successfully.');
|
|
677
807
|
continue;
|
|
678
808
|
}
|
|
809
|
+
if (actionChoice === 'test') {
|
|
810
|
+
const testSpin = spinner();
|
|
811
|
+
testSpin.start('Running project verification test suite...');
|
|
812
|
+
const testRes = await runProjectVerification(process.cwd(), options?.verifyCmd);
|
|
813
|
+
if (testRes.valid) {
|
|
814
|
+
testSpin.stop(chalk.green('Project verification tests passed cleanly!'));
|
|
815
|
+
safeNote(`${chalk.green(' Verification Passed:')}\n\`\`\`\n${testRes.output.slice(0, 3000)}\n\`\`\``, ' Test Suite Clean');
|
|
816
|
+
}
|
|
817
|
+
else {
|
|
818
|
+
testSpin.stop(chalk.red('Project verification test suite failed.'));
|
|
819
|
+
safeNote(`${chalk.red('️ Verification Failed:')}\n${testRes.errors.join('\n')}\n\`\`\`\n${testRes.output.slice(0, 3000)}\n\`\`\``, ' Test Failure Warning');
|
|
820
|
+
}
|
|
821
|
+
continue;
|
|
822
|
+
}
|
|
823
|
+
if (actionChoice === 'export') {
|
|
824
|
+
const ftDir = path.join(process.cwd(), '.ft');
|
|
825
|
+
if (!fs.existsSync(ftDir))
|
|
826
|
+
fs.mkdirSync(ftDir, { recursive: true });
|
|
827
|
+
const timeStamp = new Date().toISOString().replace(/[:.]/g, '-');
|
|
828
|
+
const sessionPath = path.join(ftDir, `session-${timeStamp}.md`);
|
|
829
|
+
const stats = agentLoop.getStats();
|
|
830
|
+
const exportContent = `# Scout Agent Session Report
|
|
831
|
+
Date: ${new Date().toLocaleString()}
|
|
832
|
+
Project: ${projectName}
|
|
833
|
+
Goal: ${finalGoal}
|
|
834
|
+
|
|
835
|
+
## Session Statistics
|
|
836
|
+
- Total Steps: ${stats.totalSteps}
|
|
837
|
+
- Tool Calls: ${stats.totalToolCalls}
|
|
838
|
+
- Modified Files Count: ${modifiedFiles.length}
|
|
839
|
+
|
|
840
|
+
## Modified Files
|
|
841
|
+
${modifiedFiles.map(f => `- ${f}`).join('\n') || 'None'}
|
|
842
|
+
|
|
843
|
+
## Execution Summary
|
|
844
|
+
${execResult.summary}
|
|
845
|
+
`;
|
|
846
|
+
fs.writeFileSync(sessionPath, exportContent, 'utf-8');
|
|
847
|
+
safeNote(chalk.green(`Session report saved to: ${chalk.bold.cyan(path.relative(process.cwd(), sessionPath))}`), ' Session Exported');
|
|
848
|
+
continue;
|
|
849
|
+
}
|
|
679
850
|
if (actionChoice === 'pr') {
|
|
680
851
|
const prSpinner = spinner();
|
|
681
852
|
prSpinner.start('Creating Pull Request...');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["agent.ts"],"names":[],"mappings":"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"}
|