SatQuery turns Earth-observation questions and satellite imagery into inspectable results, evidence, maps and scientific exports. Earth supports location-based investigations; Scientific supports uploaded images; Compare supports temporal and optical/SAR pairs.
AgentScope and GLM interpret the request, select tools and synthesize evidence. Remote-sensing specialists and deterministic GIS tools produce imagery observations and measurements.
| Capability | Frozen method |
|---|---|
| Attribute/counting VQA | RSCoVLM |
| Infrastructure/spatial VQA | RSThinker |
| Scene/presence/land-use/general VQA | VRSBench-finetuned GeoChat |
| Caption | GeoChat |
| Grounding | RSThinker + consensus and crop verification |
| Building change | TinyCD |
| Generic surface change | Deterministic SatQuery pipeline |
| Optical/SAR | CROMA |
| Data discovery | Bhoonidhi |
| Science | CRS, reprojection, registration, nodata, vegetation/flood and area tools |
Scientific rejection, technical failure, unknown confidence and NOT_ANALYZED support remain distinct. Judge Mode offers LIVE and VALIDATED REPLAY explicitly. PDF, CSV, GeoJSON and GeoTIFF are available only when a stored result supports their scientific meaning.
Password-protected accounts and the Earth map's + polygon tool, administrative
outlines and per-account cache glow are documented in
Accounts and map selection. Initial setup
reserves account 1 for Aditya Singh (aditya); choose its password in the UI.
Requirements: Python 3.12+ (accepted local profile uses 3.13), Node.js 22+, npm and disk space for bounded raster/model caches. Run from this repository root:
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
python -m pip install torch==2.9.1 einops==0.8.2
Copy-Item .env.example .env
python -m uvicorn app.main:app --reload --port 8765
Copy the environment file only on first setup. Linux/macOS use source .venv/bin/activate and cp. Configure live credentials using environment documentation. Live reasoning needs Bedrock GLM access, remote perception needs SatQuery's Modal apps, and acquisition needs Bhoonidhi. CROMA runs locally with its separately installed dependencies.
In a second terminal:
cd frontend
npm ci
Copy-Item .env.example .env.local
npm run dev
Use Vite's printed URL; the development backend is on port 8765. No PostgreSQL is required. Results and evidence are file-backed, with one production worker.
This repository excludes credentials, downloaded satellite imagery, model weights,
benchmark image assets, generated screenshots, runtime evidence, and local outputs.
Environment examples contain placeholders; supply your own values in an ignored
.env file. Live investigations acquire their required data at runtime.
Historical replay and visual-fixture scenarios need their separately prepared
evidence. Docker starts without a replay seed; mount one and set
SATQUERY_EVIDENCE_SEED explicitly when replay is needed. The download and
benchmark preparation scripts are included, but their generated data is not.
Deployment covers built same-origin serving, portable replay evidence, Docker and health. The accepted local production target is http://127.0.0.1:8765; no public hosting domain is claimed.
python -m pytest -q
python -m compileall -q app scripts
cd frontend
npm run verify
See testing. Step 6B.4B passed real Chrome, 464 backend tests, 137 frontend tests and four browser download formats. Final release evidence is in submission.
Open /judge for six registered scenarios. Choose live execution or a checksum-verified prior result. Replay is never labeled live. V1–V4 remain frozen; no V5 exists. The later private VQA diagnostic is separate from locked V4.
app/: API, agent, science, providers, exports and Judge. frontend/: workspace. services/: isolated model services. tests/ and scripts/: verification. benchmarks/: benchmark code and manifests; image assets are excluded. deploy/runtime-evidence/: optional local evidence seed, excluded from Git. docs/ and submission/: release documentation. tmp/: local runtime/research storage, excluded from Git.
This release targets a trusted SIH/research demonstration. VQA remains imperfect, external services can fail, and some sensors remain AMBER. Original SatQuery code has no owner-selected open-source license grant; third-party model/data rights are separate. Consult NOTICE before redistribution.
1 commits
Python
78.1%
TypeScript
13.5%
JavaScript
4.7%
CSS
3.5%
SatQuery turns Earth-observation questions and satellite imagery into inspectable results, evidence, maps and scientific exports. Earth supports location-based investigations; Scientific supports uploaded images; Compare supports temporal and optical/SAR pairs.
AgentScope and GLM interpret the request, select tools and synthesize evidence. Remote-sensing specialists and deterministic GIS tools produce imagery observations and measurements.
| Capability | Frozen method |
|---|---|
| Attribute/counting VQA | RSCoVLM |
| Infrastructure/spatial VQA | RSThinker |
| Scene/presence/land-use/general VQA | VRSBench-finetuned GeoChat |
| Caption | GeoChat |
| Grounding | RSThinker + consensus and crop verification |
| Building change | TinyCD |
| Generic surface change | Deterministic SatQuery pipeline |
| Optical/SAR | CROMA |
| Data discovery | Bhoonidhi |
| Science | CRS, reprojection, registration, nodata, vegetation/flood and area tools |
Scientific rejection, technical failure, unknown confidence and NOT_ANALYZED support remain distinct. Judge Mode offers LIVE and VALIDATED REPLAY explicitly. PDF, CSV, GeoJSON and GeoTIFF are available only when a stored result supports their scientific meaning.
Password-protected accounts and the Earth map's + polygon tool, administrative
outlines and per-account cache glow are documented in
Accounts and map selection. Initial setup
reserves account 1 for Aditya Singh (aditya); choose its password in the UI.
Requirements: Python 3.12+ (accepted local profile uses 3.13), Node.js 22+, npm and disk space for bounded raster/model caches. Run from this repository root:
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
python -m pip install torch==2.9.1 einops==0.8.2
Copy-Item .env.example .env
python -m uvicorn app.main:app --reload --port 8765
Copy the environment file only on first setup. Linux/macOS use source .venv/bin/activate and cp. Configure live credentials using environment documentation. Live reasoning needs Bedrock GLM access, remote perception needs SatQuery's Modal apps, and acquisition needs Bhoonidhi. CROMA runs locally with its separately installed dependencies.
In a second terminal:
cd frontend
npm ci
Copy-Item .env.example .env.local
npm run dev
Use Vite's printed URL; the development backend is on port 8765. No PostgreSQL is required. Results and evidence are file-backed, with one production worker.
This repository excludes credentials, downloaded satellite imagery, model weights,
benchmark image assets, generated screenshots, runtime evidence, and local outputs.
Environment examples contain placeholders; supply your own values in an ignored
.env file. Live investigations acquire their required data at runtime.
Historical replay and visual-fixture scenarios need their separately prepared
evidence. Docker starts without a replay seed; mount one and set
SATQUERY_EVIDENCE_SEED explicitly when replay is needed. The download and
benchmark preparation scripts are included, but their generated data is not.
Deployment covers built same-origin serving, portable replay evidence, Docker and health. The accepted local production target is http://127.0.0.1:8765; no public hosting domain is claimed.
python -m pytest -q
python -m compileall -q app scripts
cd frontend
npm run verify
See testing. Step 6B.4B passed real Chrome, 464 backend tests, 137 frontend tests and four browser download formats. Final release evidence is in submission.
Open /judge for six registered scenarios. Choose live execution or a checksum-verified prior result. Replay is never labeled live. V1–V4 remain frozen; no V5 exists. The later private VQA diagnostic is separate from locked V4.
app/: API, agent, science, providers, exports and Judge. frontend/: workspace. services/: isolated model services. tests/ and scripts/: verification. benchmarks/: benchmark code and manifests; image assets are excluded. deploy/runtime-evidence/: optional local evidence seed, excluded from Git. docs/ and submission/: release documentation. tmp/: local runtime/research storage, excluded from Git.
This release targets a trusted SIH/research demonstration. VQA remains imperfect, external services can fail, and some sensors remain AMBER. Original SatQuery code has no owner-selected open-source license grant; third-party model/data rights are separate. Consult NOTICE before redistribution.
1 commits
Python
78.1%
TypeScript
13.5%
JavaScript
4.7%
CSS
3.5%