本文へスキップ
MCP ThesaurusMCP Thesaurus

Flameox

コミュニティIncomplete39/100申請する

pypi flameoxstdioMITupdated 8d ago

Bounded local runtime evidence for coding agents.

ソースウェブサイト52

Flameox で何ができる?

Flameox coordinates profilers, benchmark tools, trace processors, and direct local targets. It gives an agent a short path from an explicit native artifact or live command to bounded evidence, while keeping preservation optional.

Version 0.2 is a clean break. There is no workspace to initialize, no flameox.toml, no SQLite control plane, no durable job to poll, and no parent directory discovery. Existing artifacts remain usable by passing their exact paths and formats to analyze; old .diagnostics state is not migrated.

Quick start

uv sync --extra dev --extra memory --extra trace --extra cpu
uv run flameox capabilities discover --intent "CPU hotspots"
uv run flameox analyze artifact.preview /absolute/path/to/artifact.json
uv run flameox capture --provider direct -- python benchmark.py

The MCP server fixes its project root at startup. Manual launches default to the startup working directory:

uv run flameox mcp serve --project-root "$PWD"

flameox setup prints the equivalent stdio client configuration. Explicit --provider selections install the matching Python extras into a persistent uv tool environment; system and vendor tools are diagnosed with external install guidance. Setup never initializes the project or creates .flameox.

Authority model

explicit artifact paths / typed direct target
                    │
                    ▼
         bounded process-lifespan runtime
             │                │
             ▼                ▼
       inline evidence   session scratch/cache
                              │
                       explicit preservation
                              │
                              ▼
                    <project>/.flameox

Analysis and unpreserved capture make no durable Flameox writes. Capture artifacts stay in bounded session scratch until preservation or server shutdown. The first preserve_evidence call creates .flameox, stores native bytes and a canonical evidence bundle by SHA-256, and adds .flameox/ to the repository-local .git/info/exclude when applicable.

The agent owns hypotheses and narrative findings in its own notes. Flameox owns only observed inputs, effective requests, execution provenance, typed evidence, coverage, truncation, limitations, and optional immutable preservation.

MCP interface

The server exposes exactly six tools:

  • discover_capabilities
  • inspect_capabilities
  • analyze
  • capture_and_analyze
  • preserve_evidence
  • query_evidence

It exposes one resource template, flameox://evidence/{evidence_id}, for the canonical immutable manifest. Native artifact bytes are deliberately not available as MCP resources.

Direct capture accepts an argv array, a project-contained cwd, bounded environment overrides, provider and analysis arguments, and limits. Shell strings are never accepted. Work remains owned by the live MCP request, so SDK progress and cancellation apply directly; there are no detached or restart-surviving tasks.

Evidence quality

An investigation still follows:

symptom → capture or explicit artifact → bounded evidence → hypothesis
        → discriminating experiment → supported, refuted, or inconclusive finding

A profile supports exploration, not causality. Confirmatory claims require a representative target, declared metric and estimand, compatible identities, preserved samples, a practical threshold, and an appropriate semantic oracle.

See architecture, storage and evidence, interfaces, runtime safety, and investigations for the contracts.

Development

Flameox requires Python 3.12 or newer and uses the committed uv.lock.

uv run ruff check src tests tools
uv run ruff format --check src tests tools
uv run mypy src tests tools
uv run lint-imports
uv run pytest -q

The project is licensed under the MIT License.