Simaic – AI back end with memory, 90s setup for Cursor/Windsurf
Memory + structured outputs for AI projects, but Supabase+LangChain already solve both pieces.
A terminal-native, agent-first web search CLI
Adapter protocol routes queries to DuckDuckGo, Brave, or Exa—JSON piping done right.
Terminal users, LLM engineers, automation enthusiasts needing scriptable search
ddgr (interactive DDG CLI) · googler (now unmaintained) · SerpAPI (paid web search API)
So I built qry. It's a hub binary that routes queries to adapter binaries via stdin/stdout JSON. The hub knows nothing about search engines. Adapters know nothing about routing. You swap adapters in a config file.
Four adapters today, three require no API key:
- DDG Lite scraping
- Brave Search HTML scraping
- Exa AI via the public MCP endpoint
- Brave Search API (requires key)
``` $ qry "numpy latest version"
[{"title":"...","url":"...","snippet":"..."}]
```
Install:
```
mise use -g go:github.com/justestif/qry@latest
mise use -g go:github.com/justestif/qry/adapters/qry-adapter-ddg-scrape@latest
mise reshim ```
The adapter protocol is plain stdin/stdout JSON so adapters can be written in any language. Docs on building one are in the repo.
Memory + structured outputs for AI projects, but Supabase+LangChain already solve both pieces.
Schema-to-IR compiler beats Hasura's GraphQL lock-in with framework-agnostic REST.
Every tool here exists in browser DevTools or CyberChef with more features.
jq for tables: pipe-based querying across CSV, JSON, Avro, Parquet in one tool.
JSON repair middleware; several alternatives (Outlines, instructor, Marvin) already solve this better.
Zero-config single-file persistence plus two query styles (Mongo-like dicts or a Pythonic Q builder) makes everyday prototyping painless. The built-in Studio UI and auto-index hints are thoughtful extras for inspecting data and nudging performance, though this competes with established tiny DBs and SQLite/JSON patterns — great for side projects, but check concurrency and durability needs first.