NanoTeams 1.7.1 — Autovisor Presets: hands-off repo audits
✨ Highlights
Point NanoTeams' autonomous manager — the Autovisor — at your repo and it sweeps the whole thing for bugs, security holes, missing tests, or stale docs, then hands back a triaged findings report. New in 1.7.1: pick its mission from five ready-made presets instead of writing a prompt.
And whether or not you touch the Autovisor: this release fixes the tool-call failures that make small local models flaky — quoted numbers that failed as "Missing required argument," silent wrong-branch runs, and list_files output bloating your context window.
🆕 Added
Autovisor Presets — a hands-off code auditor, one preset away. Pick a mission and the Autovisor sweeps your repo and hands you a triaged findings report — no prompt-writing, no fixes. Every preset is find-and-record only: the manager works through your repo incrementally, spawns worker tasks that read and report, and the findings pile up in reports/<topic>-findings.md. The manager itself carries only management and read-only file/git tools — write_file, edit_file, delete_file and git-write are excluded by construction — and every preset instructs its workers to write nothing but the report. You triage every finding and decide each fix. Never turned the Autovisor on? These presets are the easiest way to start. They appear in both the first-enable Setup pane and Settings → Autovisor; pick one and tweak it, or write your own.
- ✦ Bug Hunter — a severity-tagged list of defects (crashes, wrong behavior, edge cases) in
reports/bug-findings.md. - ✦ Test Coverage Guardian — every untested behavior and weak suite, each with a suggested test name to write next.
- ✦ Code Quality Janitor — duplication, dead code, and structural debt, reported module by module.
- ✦ Docs Maintainer — cross-checks the docs against the code and reports drift, gaps, and stale guides.
- ✦ Security Auditor — hardcoded secrets, injection (shell, SQL, path traversal), unsafe deserialization, and missing validation. Secrets are recorded by location only — their values are never copied into the report.
🛠 Improved
-
Sloppy tool arguments no longer break valid calls. If you've watched a local model fail a call for no obvious reason, this was often why. Local models routinely quote their numbers and booleans (
"501","false") or send a one-item list as a bare string. NanoTeams now coerces string-encoded integers, booleans, and string arrays at one shared seam. A valid call no longer fails with "Missing required argument" — and no longer silently runs the wrong branch (edit_filerewriting one match instead of all,searchscanning the whole tree). -
list_filesis leaner and correct.- Leaner results: the redundant per-entry
nameandtypefields are gone, leaving bare path strings — roughly 30% smaller on a subdirectory listing and 55% from the repo root, wherepathandnameused to be identical. Real context-window headroom on a local model where every token counts. - Entry paths are now relative to the work-folder root, so a listed file feeds straight into
read_file/edit_file. depthis 0-indexed (depth: 0= this folder's contents), the way models actually spell it.
Fixes a case where a fresh folder's very first listing reported "empty."
- Leaner results: the redundant per-entry
-
Addressing the work folder as
/now works. Models often address the work folder chroot-style, andlist_files(path: "/")used to fail with a permission error and burn an LLM round trip. Any root-style path now resolves to the work-folder root. -
Long model names no longer blow out the UI. Long LM Studio slugs had stretched the status bar edge-to-edge and pushed the Refresh button off every LLM-override row.
🐛 Fixed
- Autovisor stuck-task detection — a clock mismatch let genuinely hung tasks slip under the "stuck" threshold, so a wedged task could sit there burning time and tokens while the manager never noticed. Now caught on schedule.
- Update checks — the same clock bug delayed NanoTeams' periodic check for a newer release on GitHub. It now runs on its interval.
- Reliability — corrected loop-detection timing and sandbox root-path handling, with expanded test coverage.
System Requirements
- macOS 15.0 or later
- LM Studio 0.4.0 or later
- Apple Silicon recommended
- macOS 26 or later required for private voice dictation
Install
- Download
NanoTeams.app.zipand extract it. - Drag
NanoTeams.appinto/Applications. - If macOS blocks the app on first launch: System Settings → Privacy & Security → Open Anyway.
- Launch LM Studio, load a recommended model, then launch NanoTeams.
Build from Source
git clone https://github.com/jmstajim/NanoTeams.git
cd NanoTeams
xcodebuild -project NanoTeams.xcodeproj -scheme NanoTeams -configuration Release buildLinks
- Repository: https://github.com/jmstajim/NanoTeams
- All releases: https://github.com/jmstajim/NanoTeams/releases
- Latest
.app.zip: https://github.com/jmstajim/NanoTeams/releases/latest/download/NanoTeams.app.zip - Issues & feature requests: https://github.com/jmstajim/NanoTeams/issues
- LM Studio: https://lmstudio.ai