neuron-explorer
Qwen3.5‑4B 전용 조향형 뉴런 탐색기, 모든 MLP 뉴런을 밀어 결과를 보관·탐색
AWS·GCP·Azure·K8s·50여 클라우드 제공자를 하나의 데스크톱·웹 앱에서 관리하고, SSH·SQL·스토리지 등을 지원합니다
Manage AWS, GCP, Azure, Kubernetes, and 50+ cloud providers from one unified desktop and web app. SSH terminals, SQL editor, K8s exec, storage browser, and more.
개발 도구TypeScript · GoGitHub @Infrawrench온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
One tool to manage all your infrastructure.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Infrastructure management for the cloud and your servers — desktop, web, mobile and CLI, sharing one plugin system.README 전문 보기 ↗Infrastructure management for the cloud and your servers — desktop, web, mobile and CLI, sharing one plugin system.
infrawrench …) — the desktop app doubles as a terminal tool: an interactive TUI dashboard with charts, plus scriptable --json/text output over the same local accounts, cloud session, and organizations.Connect provider accounts once, then browse and edit every resource behind them from one place — with the things a provider console makes you leave for:
/api/mcp for Claude Desktop, Cursor, or any other MCP client.One self-contained package per provider, 152 of them, loaded in full by both the desktop app and the server (mobile renders what the cloud sends it):
Aiven, Algolia, Alibaba Cloud, Amazon Web Services, Anthropic, Anyscale, AssemblyAI, Auth0, Axiom, Backblaze B2, Baseten, Better Stack, Bitbucket, Buildkite, bunny.net, Cartesia, Cerebras, Checkly, Chronosphere, CircleCI, Civo, Clerk, ClickHouse, Cloudflare, Cloudinary, CockroachDB Cloud, Cohere, Confluent Cloud, Convex, Coralogix, CoreWeave, Couchbase Capella, Crusoe Cloud, Cursor, Databricks, Datadog, DataStax Astra, Deepgram, DeepSeek, Depot, Devin, DigitalOcean, Docker, Docker Hub, Doppler, Dynatrace, Elastic Cloud, ElevenLabs, Exoscale, fal, Fastly, Fireworks AI, Fly.io, GitHub, GitLab, Gladia, Google Cloud, Google Gemini, Grafana Cloud, Groq, HashiCorp Consul, HashiCorp Nomad, HashiCorp Vault, HCP Terraform, Heroku, Hetzner Cloud, Honeycomb, Hugging Face, IBM Cloud, incident.io, Infisical, InfluxDB Cloud, JFrog, Kafka, Koyeb, Kubernetes, Lambda Cloud, Linode (Akamai Cloud), Mailgun, Memcached, Metronome, Microsoft Azure, Mistral AI, Modal, MongoDB, MongoDB Atlas, MySQL, NATS, Neon, Netlify, New Relic, Northflank, Okta, OpenAI, OpenRouter, OpenSearch, OpenStack, Oracle Cloud, OVHcloud, PagerDuty, Paperspace, Perplexity, Pinecone, PlanetScale, PostgreSQL, PostHog, Postmark, Prometheus, Proxmox VE, Pulumi Cloud, Qdrant Cloud, RabbitMQ, Railway, Redis, Redis Cloud, Render, Replicate, Resend, Rev AI, Runpod, S3-Compatible Storage, SambaNova, Scaleway, SendGrid, Sentry, Snowflake, Spacelift, Speechmatics, Splunk Observability Cloud, SQL Server, SSH, Stripe, Supabase, Tailscale, Temporal Cloud, Tiger Cloud, Together AI, Turso, Twilio, UpCloud, UploadThing, Upstash, Vast.ai, Vercel, VMware vSphere, Voyage AI, Vultr, Wasabi, Weaviate Cloud, WorkOS, xAI, Xata.
The Electron and Hono hosts are deliberately generic — all provider-specific logic (API calls, field shapes, SQL strings, credentials) lives in the plugin packages under plugin-architecture/packages/. Plugins return schema data; the hosts render it.
infrawrench/
├── plugin-architecture/packages/ # plugin-base + 28 provider plugins,
│ # plus shared sftp-host and ssh-tunnel-core
├── app/packages/
│ ├── desktop/ # Electron app (and the `infrawrench` CLI)
│ ├── web/ # Hono + Vite/React SaaS
│ ├── mobile/ # Expo iOS/Android app
│ ├── ui/ # shared React components (web + desktop)
│ ├── client-core/ # host-agnostic cloud client — tokens, fetch, SSE, chat, push
│ ├── server-core/ # db, schema, plugin loader, sync (shared by the backend services)
│ ├── workflow-runtime/ # QuickJS-WASM workflow sandbox and host bridge
│ ├── poller/ # background resource poller
│ ├── github-watcher/ # polls GitHub App installs, fires git-triggered workflows
│ ├── bastion-agent/ # self-hosted agent that dials out, so calls exit your own IP
│ ├── egress-proxy/ # Cloudflare Worker running workflow fetch() off-cluster
│ ├── telemetry/ # Cloudflare Worker for anonymous desktop pings
│ └── website/ # Astro landing site + docs
├── infra/ # Terraform, k8s manifests, service Dockerfile, container registry
└── patches/ # pnpm patchedDependencies
pnpm workspaces + Turborepo. All cross-package references use workspace:*.
Requirements: Node >= 20, pnpm >= 9.
pnpm install
pnpm dev # run all apps in dev
pnpm build # build everything
pnpm typecheck
pnpm test
pnpm lint
pnpm format # prettier --write .
To run a single app:
pnpm --filter @infrawrench/desktop dev
pnpm --filter @infrawrench/web dev
pnpm --filter @infrawrench/mobile dev # Expo; add ios / android to build natively
pnpm --filter @infrawrench/website dev
The whole server-side stack (web, poller, github-watcher, Postgres, ClickHouse, WorkOS emulator) can run containerized with hot reload — no WorkOS account or .env needed:
docker compose -f docker-compose.dev.yml watch
Then open http://localhost:3000 and log in as [email protected] / devpassword1! (seeded in infra/docker/workos-emulate/seed.yaml). Migrations run automatically on up. Source edits sync into the containers and hot-reload; dependency changes (pnpm-lock.yaml) trigger an image rebuild.
Stripe uses a real test-mode account: put STRIPE_SECRET_KEY=sk_test_... (plus STRIPE_PRICE_ID, and STRIPE_WEBHOOK_SECRET from stripe listen --print-secret) in a gitignored .env at the repo root, and optionally forward webhooks with docker compose -f docker-compose.dev.yml --profile stripe up stripe-cli. Details in the header of docker-compose.dev.yml.
The desktop app installs an infrawrench shell command (Install shell command in the app's sidebar footer, or infrawrench cli install). It launches the app headlessly and shares its data — local accounts, cloud session, all orgs.
infrawrench # interactive TUI dashboard
infrawrench accounts # local + every org
infrawrench resources -a prod --json
infrawrench metrics <resource-id> --last 6h
infrawrench costs --group-by provider
Docs: features/cli.md. Implementation: app/packages/desktop/electron/cli/.
The cloud API is described by app/packages/web/openapi.json, generated from Zod route definitions in app/packages/web/src/api/openapi/. Client SDKs for nine languages — TypeScript, Python, Go, Rust, Ruby, PHP, Java, C#, Swift — are generated from that spec and published on release.
API_VERSION in src/api/openapi/version.ts is the single version number for all of it; bump it in the same change as any user-visible API change, then run pnpm --filter @infrawrench/web generate:openapi. Nothing publishes until that number changes.
User-facing docs live in app/packages/website/src/content/docs/ and are published with the website. Architecture, conventions and gotchas for contributors are in KNOWLEDGE.md; hard rules for code changes are in CLAUDE.md.