Skip to main content

A local AI adoption radar for tools, MCP servers, agent frameworks, and model drops.

Project description

Frontier Scout — try-before-trust radar

Frontier Scout

The radar for latest AI releases that fit your repo. Local-first try-before-trust for AI tools, agents, MCP servers, models, and risky engineering changes.

Quickstart  ·  Demo  ·  Roadmap  ·  Bug report  ·  Feature request  ·  Releases

Latest release Python 3.11+ License: MIT CI last commit local-first

📑 Table of contents

🔭 About the project

Frontier Scout answers the question technical teams now hit every week:

Should this AI tool, agent, MCP server, model, or engineering change get any access to our code, shell, browser, network, or credentials?

Three compatible surfaces ship in one CLI:

  • Tool Test Lab / Adoption Firewall — one-link evaluate, trial, and guard workflows that record permission manifests and try-before-trust receipts before a tool touches a real project.
  • AI Tool Radar — a local adoption radar that turns public AI-tool signals into ADOPT / TRIAL / ASSESS / HOLD verdicts with source evidence.
  • Incident Change Scout — a graph-aware engineering workflow that turns an incident ticket into cited context, a bounded remediation plan, approval interrupts, trace/audit logs, and an eval result.

The posture is deliberately boring in the good way: CLI first, SQLite/local files by default, static reports, no hosted telemetry, no hidden auto-installs, and explicit approval before risky actions.

Why not just use newsletters or GitHub Trending?

Option What it gives you What is missing
Newsletters Good awareness Not repo-aware, not source-verifiable, rarely actionable.
GitHub Trending Popularity signal No risk/fit/adoption-cost judgment.
Manual research Highest nuance Slow, inconsistent, easy to skip when busy.
Frontier Scout Source-backed verdicts and lab next steps Requires your API key for live scans.

🧰 Built with

Python Textual tree-sitter Pydantic SQLite


⚡ Quickstart

Prerequisites: Python 3.11+.

Install from PyPI with pipx (recommended) or pip:

pipx install frontier-scout
# or, no install:
uvx frontier-scout demo
# or, plain pip:
pip install frontier-scout

Open Mission Control:

frontier-scout setup --repo .

Mission Control lands on the Scout tab — the radar that ranks the latest AI releases that fit your repo. Tab keys 19 cycle through Scout, Trials, Receipts, Guard, Reports, Packs, Deps, Incident, and Settings — every CLI capability is one keystroke away. The import-evidence scanner reads ASTs locally, provider availability shows up as cards, and nothing reads secrets, logs into services, installs tools, or sends repo content to an LLM. Limited terminals can use frontier-scout setup --plain; automation can use frontier-scout setup --json.

Develop locally

git clone https://github.com/ajaysurya1221/frontier-scout
cd frontier-scout
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
frontier-scout --help

⏱ 60-second demo

No API key. No Slack workspace. No cloud setup.

make demo
open .scratch/incident-demo/answer.md

The incident demo writes:

  • .scratch/incident-demo/answer.md — cited remediation answer.
  • .scratch/incident-demo/trace.jsonl — local OpenTelemetry-shaped spans.
  • .scratch/incident-demo/audit.jsonl — Cloudflare-style audit records.
  • .scratch/incident-demo/eval.json — golden eval score.

Then run the AI tool radar demo:

frontier-scout demo
open demo/briefing.html

The radar demo writes demo/briefing.html, demo/briefing.md, demo/verdicts.json, demo/cost-breakdown.md, and demo/judge-trace.md.


🛰 Usage — killer workflow

Someone drops a GitHub repo, MCP server, plugin, model, or agent framework in a newsletter or team chat. Frontier Scout turns that link into a local adoption decision instead of a vibes-based "looks safe" answer:

frontier-scout init --repo .
frontier-scout evaluate <tool-url>
frontier-scout trial <tool-or-url> --dry-run
frontier-scout guard --repo .
frontier-scout report
  • init writes a local stack profile under ~/.frontier-scout (languages, package managers, container files, agent configs, and v0.4 import evidence from a tree-sitter pass).
  • evaluate records source-backed local evidence and a permission manifest for one URL — capability map included.
  • trial --dry-run writes an adoption receipt without installing anything; full trials use the hermetic lab.
  • guard checks the local evidence ledger for risky tools that still need a stored trial receipt; CI-friendly exit codes.
  • report renders the static HTML executive radar.

Inspect living packs and repo-relevant dependency upgrades:

frontier-scout packs list
frontier-scout packs show mcp
frontier-scout profile --repo . --dependencies
frontier-scout deps scan --repo .

🔒 Safety model

Frontier Scout handles untrusted public content and can optionally execute untrusted packages in the lab, so the safety rails are load-bearing:

  • Source text is treated as untrusted data, not instructions.
  • Tool names are checked against the source pool to reduce hallucinated verdicts.
  • Source URLs must pass a domain allowlist.
  • Incident and breach headlines are blocked from becoming tool recommendations.
  • ADOPT requires enough readiness evidence or gets demoted.
  • Adoption Firewall fails closed on unknown MCP/tool capability surfaces.
  • guard never modifies the repo; it only reads local evidence and policy.
  • Lab subprocesses receive a stripped environment, wall-clock timeout, size caps, and generated-script secret scanning.
  • The import-evidence scanner is deterministic, local, and offline. It parses ASTs via tree-sitter, never sends source content to an LLM, and never reaches the network.

See SECURITY.md for the threat model.


💸 Cost

The offline demo is free. A normal live weekly scan is designed to stay cheap:

Component Typical cost
Sonnet score pass ~$0.15
Sonnet verdict pass ~$0.04
Optional Opus judge ~$0.12
Weekly scan ~$0.30

Set JUDGE_ENABLED=false to skip the Opus judge when you want the cheapest possible run.


🗺 Roadmap

  • v0.1 — CLI scaffold, local demo, SQLite store, public docs.
  • v0.2 — Living Scout Packs, dependency intelligence, Adoption Firewall (evaluate/trial/guard/policy), Incident Change Scout.
  • v0.3 — Mission Control terminal setup, provider detection, Scout Pack multi-select, plain/JSON outputs.
  • v0.4.0 — Monorepo profile walker + tree-sitter import-evidence scanner (Python and JS/TS), repo-relative manifest_path, --no-imports fast path, .understand-anything/ detection.
  • v0.4.1 — Mission Control v2 redesign: branded splash, designer palette, focus borders, modal quit/help/repo-path, RichLog result, sticky status banner, README v2.
  • v1.0.0 — Mission Control complete: nine tabs (Scout / Trials / Receipts / Guard / Reports / Packs / Deps / Incident / Settings), scout-first landing with a verdict DataTable and per-verdict actions, every CLI capability has a TUI surface, --tab / --no-scout flags, dismiss persistence.
  • v1.1 — Live discovery wiring (Scout l, Packs + discover, Deps live feed), streaming subprocess output in Trials.
  • v1.2 — Multi-repo workspace, tree-sitter Go/Rust/Ruby, PyPI publish on tag.

See ROADMAP.md for the longer view.


🤝 Contributing

The fastest useful PRs improve the CLI/report path, validator coverage, source quality, or lab isolation.

Development loop:

make setup
make demo
make test
make eval
make audit
python -m compileall scripts outputs tests frontier_scout
PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 python -m pytest -q

CI runs compile checks, non-live tests, and a tracked-file secret scan.

Releasing a tagged version

  1. Bump project.version in pyproject.toml and frontier_scout/__init__.py.
  2. Append a matching ## X.Y.Z - YYYY-MM-DD section to CHANGELOG.md.
  3. Merge to main.
  4. Push annotated tag vX.Y.Z.

Tag pushes trigger .github/workflows/release.yml, which builds distributions, creates a GitHub Release from the matching changelog section, and (via manual workflow_dispatch) publishes to PyPI via trusted publishing.


📄 License

Distributed under the MIT License.


🙏 Acknowledgments

↑ back to top

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

frontier_scout-1.0.0.tar.gz (166.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

frontier_scout-1.0.0-py3-none-any.whl (172.9 kB view details)

Uploaded Python 3

File details

Details for the file frontier_scout-1.0.0.tar.gz.

File metadata

  • Download URL: frontier_scout-1.0.0.tar.gz
  • Upload date:
  • Size: 166.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for frontier_scout-1.0.0.tar.gz
Algorithm Hash digest
SHA256 f098f58ea38e91ec173d63949da562fddb1a7ed6a2afa0a0fd0410d499396813
MD5 062367ee804b75f168621ab74c5a6fab
BLAKE2b-256 9bff85c0f96c413175ceb76dd5445ea026021182cec73e6dc748afd2b1dba318

See more details on using hashes here.

Provenance

The following attestation bundles were made for frontier_scout-1.0.0.tar.gz:

Publisher: release.yml on ajaysurya1221/frontier-scout

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file frontier_scout-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: frontier_scout-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 172.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for frontier_scout-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c1a509e8021e3c8e8d23805a9ee0d5ebc6ac12c1b7a9ac4aeb573985f31fffe5
MD5 b2f39dc601a330a606d43f21c722b6c4
BLAKE2b-256 62c6872ff4182b81bfc39d6e241313472cc11dc33486bda91084d855ac7c9f8e

See more details on using hashes here.

Provenance

The following attestation bundles were made for frontier_scout-1.0.0-py3-none-any.whl:

Publisher: release.yml on ajaysurya1221/frontier-scout

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page